generated from osamhack2021/Repo_Sample-Technology_ProjectName_TeamName
-
Notifications
You must be signed in to change notification settings - Fork 4
API Reference
์ค์งํ edited this page Sep 24, 2021
·
18 revisions
๋ฉ์๋ | ์์ฒญ URL | ์ค๋ช |
---|---|---|
POST | /login | Handover ๋ก๊ทธ์ธ |
๋ณ์๋ช | ํ์ | ํ์์ฌ๋ถ | ์ค๋ช |
---|---|---|---|
serviceNumber | String | Y | ์ฌ์ฉ์ ๊ตฐ๋ฒ |
password | String | Y | ์ฌ์ฉ์ ๋น๋ฐ๋ฒํธ |
ํ๋ | ํ์ | ์ค๋ช |
---|---|---|
result | String | |
token | String | JWT ํ ํฐ |
HTTP ์ฝ๋ | ์๋ฌ ๋ฉ์ธ์ง | ์กฐ์น๋ฐฉ์ |
---|---|---|
401 | Authentication Failed: ์ธ์ฆ์ ์คํจํ์ต๋๋ค. | ๋ก๊ทธ์ธ ์ธ์ ์ ํ์ธํด์ฃผ์ธ์. |
500 | Interner Server Error | ์๋ฒ ๋ด๋ถ ์ค๋ฅ์ ๋๋ค. ๊ฐ๋ฐ์์๊ฒ ๋ฌธ์ํ์ธ์. |
๋ฉ์๋ | ์์ฒญ URL | ์ค๋ช |
---|---|---|
GET | /user | Handover ํ์ ์กฐํ |
๋ณ์๋ช | ํ์ | ํ์์ฌ๋ถ | ์ค๋ช |
---|---|---|---|
serviceNumber | String | N | ์ฌ์ฉ์ ๊ตฐ๋ฒ |
name | String | N | ์ฌ์ฉ์ ์ด๋ฆ |
groupName | String | N | ์ฌ์ฉ์๊ฐ ์์๋ ๊ทธ๋ฃน ์ด๋ฆ |
ํ๋ | ํ์ | ์ค๋ช |
---|---|---|
name | String | ์ฌ์ฉ์ ์ด๋ฆ |
rank | String | ์ฌ์ฉ์ ๊ณ๊ธ |
title | String | ์ฌ์ฉ์ ์ง์ |
group | String | ์ฌ์ฉ์๊ฐ ์ํ ๋ถ์ |
String | ์ฌ์ฉ์ ์ด๋ฉ์ผ | |
tel | String | ์ฌ์ฉ์ ์ ํ๋ฒํธ |
HTTP ์ฝ๋ | ์๋ฌ ๋ฉ์ธ์ง | ์กฐ์น๋ฐฉ์ |
---|---|---|
401 | Authentication Failed: ์ธ์ฆ์ ์คํจํ์ต๋๋ค. | ๋ก๊ทธ์ธ ์ธ์ ์ ํ์ธํด์ฃผ์ธ์. |
403 | Forbidden: ๊ถํ์ด ์์ต๋๋ค. | |
404 | Not Found: ๊ฒ์ ๊ฒฐ๊ณผ๊ฐ ์์ต๋๋ค. | |
500 | Interner Server Error: ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค๋ฅ์ ๋๋ค. |
๋ฉ์๋ | ์์ฒญ URL | ์ค๋ช |
---|---|---|
POST | /user | Handover ์ฌ์ฉ์ ์์ฑ |
๋ณ์๋ช | ํ์ | ํ์์ฌ๋ถ | ์ค๋ช |
---|---|---|---|
serviceNumber | String | Y | ์ฌ์ฉ์ ๊ตฐ๋ฒ |
password | String | Y | ์ฌ์ฉ์ ๋น๋ฐ๋ฒํธ |
name | String | Y | ์ฌ์ฉ์ ์ด๋ฆ |
rank | String | Y | ์ฌ์ฉ์ ๊ณ๊ธ |
title | String | Y | ์ฌ์ฉ์ ์ง์ |
groupId | String | Y | ์ฌ์ฉ์ ์์ ๋ถ์ |
String | Y | ์ฌ์ฉ์ ์ด๋ฉ์ผ | |
tel | String | Y | ์ฌ์ฉ์ ์ ํ๋ฒํธ |
์ถ๋ ฅ๊ฒฐ๊ณผ๋ ๋ณ๋๋ก ์์ผ๋ฉฐ, ์์ฑ์ด ์๋ฃ๋ ๊ฒฝ์ฐ HTTP ์ฝ๋๊ฐ 201
๋ก ๋ฐํ๋ฉ๋๋ค.
HTTP ์ฝ๋ | ์๋ฌ ๋ฉ์ธ์ง | ์กฐ์น๋ฐฉ์ |
---|---|---|
400 | ์๋ชป๋ ์์ฒญ | ํ์ ์์ฒญ ๋ณ์๋ค์ ๋ชจ๋ ์ ๋ ฅํ๋์ง ํ์ธํด์ฃผ์ธ์. |
400 | Duplicated Key Error: serviceNumber is already exists. | |
500 | Interner Server Error | ์๋ฒ ๋ด๋ถ ์ค๋ฅ์ ๋๋ค. ๊ฐ๋ฐ์์๊ฒ ๋ฌธ์ํด์ฃผ์ธ์. |
๋ฉ์๋ | ์์ฒญ URL | ์ค๋ช |
---|---|---|
UPDATE | /user | Handover ์ฌ์ฉ์ ์ ๋ณด ๊ฐฑ์ |
๋ณ์๋ช | ํ์ | ํ์์ฌ๋ถ | ์ค๋ช |
---|---|---|---|
serviceNumber | String | Y | ์ฌ์ฉ์ ๊ตฐ๋ฒ |
password | String | N | ์ฌ์ฉ์ ๋น๋ฐ๋ฒํธ |
name | String | N | ์ฌ์ฉ์ ์ด๋ฆ |
rank | String | N | ์ฌ์ฉ์ ๊ณ๊ธ |
title | String | N | ์ฌ์ฉ์ ์ง์ |
groupId | String | N | ์ฌ์ฉ์ ์์ ๋ถ์ |
String | N | ์ฌ์ฉ์ ์ด๋ฉ์ผ | |
tel | String | N | ์ฌ์ฉ์ ์ ํ๋ฒํธ |
์ถ๋ ฅ๊ฒฐ๊ณผ๋ ๋ณ๋๋ก ์์ผ๋ฉฐ, ๋ณ๊ฒฝ์ด ์๋ฃ๋ ๊ฒฝ์ฐ HTTP ์ฝ๋๊ฐ 204
๋ก ๋ฐํ๋ฉ๋๋ค.
HTTP ์ฝ๋ | ์๋ฌ ๋ฉ์ธ์ง | ์กฐ์น๋ฐฉ์ |
---|---|---|
400 | ์๋ชป๋ ์์ฒญ | ํ์ ์์ฒญ ๋ณ์๋ค์ ๋ชจ๋ ์ ๋ ฅํ๋์ง ํ์ธํด์ฃผ์ธ์. |
401 | Authentication Failed: ์ธ์ฆ์ ์คํจํ์ต๋๋ค. | ๋ก๊ทธ์ธ ์ธ์ ์ ํ์ธํด์ฃผ์ธ์. |
403 | Forbidden: ๊ถํ์ด ์์ต๋๋ค. | |
404 | Not Found: ์์ฒญํ ๊ตฐ๋ฒ์ ์ฐพ์ ์ ์์ต๋๋ค. | |
500 | Interner Server Error | ์๋ฒ ๋ด๋ถ ์ค๋ฅ์ ๋๋ค. ๊ฐ๋ฐ์์๊ฒ ๋ฌธ์ํด์ฃผ์ธ์. |
๋ฉ์๋ | ์์ฒญ URL | ์ค๋ช |
---|---|---|
DELETE | /user | Handover ์ฌ์ฉ์ ์ญ์ |
๋ณ์๋ช | ํ์ | ํ์์ฌ๋ถ | ์ค๋ช |
---|---|---|---|
serviceNumber | String | Y | ์ฌ์ฉ์ ๊ตฐ๋ฒ |
์ถ๋ ฅ๊ฒฐ๊ณผ๋ ๋ณ๋๋ก ์์ผ๋ฉฐ, ์ญ์ ๊ฐ ์๋ฃ๋ ๊ฒฝ์ฐ HTTP ์ฝ๋๊ฐ 204
๋ก ๋ฐํ๋ฉ๋๋ค.
HTTP ์ฝ๋ | ์๋ฌ ๋ฉ์ธ์ง | ์กฐ์น๋ฐฉ์ |
---|---|---|
400 | ์๋ชป๋ ์์ฒญ | ํ์ ์์ฒญ ๋ณ์๋ค์ ๋ชจ๋ ์ ๋ ฅํ๋์ง ํ์ธํด์ฃผ์ธ์. |
401 | Authentication Failed: ์ธ์ฆ์ ์คํจํ์ต๋๋ค. | ๋ก๊ทธ์ธ ์ธ์ ์ ํ์ธํด์ฃผ์ธ์. |
403 | Forbidden: ๊ถํ์ด ์์ต๋๋ค. | |
404 | Not Found: ์์ฒญํ ๊ตฐ๋ฒ์ ์ฐพ์ ์ ์์ต๋๋ค. | |
500 | Interner Server Error | ์๋ฒ ๋ด๋ถ ์ค๋ฅ์ ๋๋ค. ๊ฐ๋ฐ์์๊ฒ ๋ฌธ์ํด์ฃผ์ธ์. |
๋ฉ์๋ | ์์ฒญ URL | ์ค๋ช |
---|---|---|
GET | /item | Handover ์๋ ์กฐํ |
๋ณ์๋ช | ํ์ | ํ์์ฌ๋ถ | ์ค๋ช |
---|---|---|---|
id | String | N | ์๋ ID |
ํ๋ | ํ์ | ์ค๋ช |
---|---|---|
title | String | ์๋ ์ด๋ฆ |
content | String | ์๋ ๋ด์ฉ |
ownerServiceNumber | Object | ์์ ์ |
contributors | [ Object, ] | ๊ธฐ์ฌ์๋ค |
accessGroups | { read, edit } | ์ ๊ทผ ๊ถํ ๊ทธ๋ฃน๋ค |
history | [ Object, ] | ์์ ๊ธฐ๋ก |
lastModified | String | ์ต์ข ์์ ์ผ์ |
status | String | ์ํ { draft: ์์์ ์ฅ, archived: ๋ณด๊ด, published: ๊ฒ์ } |
inspection | Object | ๋ณด์ ๊ฒ์ ๊ฒฐ๊ณผ |
comments | [ Object, ] | ๋๊ธ๋ค |
tags | [ String, ] | ํ๊ทธ๋ค |
์์ฒญ๋ณ์ ๋ฏธ ์ ๋ ฅ์
[
{
title: "์๋01",
owner: {
name: "์กฐ๋๋จ",
rank: "๋์",
groupName: "ํด๊ตฐ ๊ตฐ์์ฌ๋ น๋ถ"
},
contibutors: [
{ name: "์ค์งํ", rank: "์ค์ฌ", groupName: "ํด๊ตฐ ๊ตฐ์์ฌ๋ น๋ถ" }
],
accessGroups: {
read: [ "ํด๊ตฐ ๊ตฐ์์ฌ๋ น๋ถ", "ํด๊ตฐ ๊ตฐ์์ฌ๋ น๋ถ ์ ๋ณดํต์ ์ ๋" ],
edit: [ "ํด๊ตฐ ๊ตฐ์์ฌ๋ น๋ถ" ]
},
lastModified: "2021-09-14 14:00:00",
status: "published",
inspection: {
result: "true",
by: { name: "๋ฐํ์ค", "rank": "์ค๋ น", groupName: "ํด๊ตฐ ๊ตฐ์์ฌ๋ น๋ถ" },
date: "2021-09-14 14:00:00"
},
tags: [ "์ธ์์ธ๊ณ" ]
},
{
title: "์๋02",
...
}
]
์์ฒญ๋ณ์ ์ ๋ ฅ์
{
title: "์๋01",
content: "์๋์ ๋ฌธ์๋ค์ ๋ด์ ์ ์๋ ๊ณต๊ฐ์
๋๋ค.",
owner: {
name: "์กฐ๋๋จ",
rank: "๋์",
groupName: "ํด๊ตฐ ๊ตฐ์์ฌ๋ น๋ถ"
},
contibutors: [
{ name: "์ค์งํ", rank: "์ค์ฌ", groupName: "ํด๊ตฐ ๊ตฐ์์ฌ๋ น๋ถ" }
],
accessGroups: {
read: [ "ํด๊ตฐ ๊ตฐ์์ฌ๋ น๋ถ", "ํด๊ตฐ ๊ตฐ์์ฌ๋ น๋ถ ์ ๋ณดํต์ ์ ๋" ],
edit: [ "ํด๊ตฐ ๊ตฐ์์ฌ๋ น๋ถ" ]
},
history: {
{ date: "2021-08-31 10:00:00", user: { name: "์กฐ๋๋จ", rank: "๋์", groupName: "ํด๊ตฐ ๊ตฐ์์ฌ๋ น๋ถ" } }
},
status: "published",
inspection: {
result: "true",
by: { name: "๋ฐํ์ค", "rank": "์ค๋ น", groupName: "ํด๊ตฐ ๊ตฐ์์ฌ๋ น๋ถ" },
date: "2021-09-14 14:00:00"
},
comments: [
{ content: "๋๊ธ์
๋๋ค.", user: { name: "์ค์งํ", rank: "์ค์ฌ", groupName: "ํด๊ตฐ ๊ตฐ์์ฌ๋ น๋ถ" } }
],
tags: [ "์ธ์์ธ๊ณ" ]
}
HTTP ์ฝ๋ | ์๋ฌ ๋ฉ์ธ์ง | ์กฐ์น๋ฐฉ์ |
---|---|---|
401 | Authentication Failed: ์ธ์ฆ์ ์คํจํ์ต๋๋ค. | ๋ก๊ทธ์ธ ์ธ์ ์ ํ์ธํด์ฃผ์ธ์. |
404 | Not Found: ๊ฒ์ ๊ฒฐ๊ณผ๊ฐ ์์ต๋๋ค. | |
500 | Interner Server Error: ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค๋ฅ์ ๋๋ค. |
๋ฉ์๋ | ์์ฒญ URL | ์ค๋ช |
---|---|---|
POST | /item | Handover ์๋ ์์ฑ |
ํ๋ | ํ์ | ํ์์ฌ๋ถ | ์ค๋ช |
---|---|---|---|
title | String | Y | ์๋ ์ด๋ฆ |
content | String | N | ์๋ ๋ด์ฉ |
accessGroups | { read, edit } | N | ๊ฐ ๋ฏธ์ง์ ์ ์์๋ถ๋๋ก ์ค์ |
status | String | Y | ์ํ { draft: ์์์ ์ฅ, archived: ๋ณด๊ด, published: ๊ฒ์ } |
tags | [ String, ] | N | ํ๊ทธ๋ค |
{
title: "์ฐ๋ฆฌ๋ถ์ ์๋",
content: "์๋์ ๋ง๋ค๊ณ ๊ด๋ฆฌํ ์ ์์ด์.",
accessGroups: {
read: [ groupId ],
},
status: "draft",
tags: [ "์ฐ๋ฆฌ๋ถ๋", "ํ์ดํ
" ]
}
์ถ๋ ฅ๊ฒฐ๊ณผ๋ ๋ณ๋๋ก ์์ผ๋ฉฐ, ์์ฑ์ด ์๋ฃ๋ ๊ฒฝ์ฐ HTTP ์ฝ๋๊ฐ 201
๋ก ๋ฐํ๋ฉ๋๋ค.
HTTP ์ฝ๋ | ์๋ฌ ๋ฉ์ธ์ง | ์กฐ์น๋ฐฉ์ |
---|---|---|
400 | ์๋ชป๋ ์์ฒญ | ํ์ ์์ฒญ ๋ณ์๋ค์ ๋ชจ๋ ์ ๋ ฅํ๋์ง ํ์ธํด์ฃผ์ธ์. |
401 | Authentication Failed: ์ธ์ฆ์ ์คํจํ์ต๋๋ค. | ๋ก๊ทธ์ธ ์ธ์ ์ ํ์ธํด์ฃผ์ธ์. |
500 | Interner Server Error: ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค๋ฅ์ ๋๋ค. |
๋ฉ์๋ | ์์ฒญ URL | ์ค๋ช |
---|---|---|
UPDATE | /item/:{์๋ID} | Handover ์๋ ์ ๋ณด ๊ฐฑ์ |
๋ฉ์๋ | ์์ฒญ URL | ์ค๋ช |
---|---|---|
DELETE | /item/:{์๋ID} | Handover ์๋ ์ญ์ |
๋ฉ์๋ | ์์ฒญ URL | ์ค๋ช |
---|---|---|
POST | /item/:{์๋ID} | Handover ๋ฌธ์ ์์ฑ |