Method: GET
URL: "/dashboard"
req:
header:
body:
res:
header:
body: {
todayUser : Long,
totalUser : Long,
updatedAt : Timestamp
aiList: [{
name : String,
responseTime : Double,
accuracy : Double,
},
...
{}]
}
비고 -> 회원 || 비회원
Method: POST
URL: "/signup"
req:
header:
body: {
email : String,
password : String
}
res:
header:
body: {
authorization : String
isAdmin: Boolean
}
error: 409 conflict {
message: "이미 존재하는 이메일입니다."
}
Method: POST
URL: "/signin"
req:
header:
body: {
email : String,
password : String
}
res:
header:
body: {
authorization : String
isAdmin: Boolean
}
error: 409 conflict {
message: "존재하지 않거나 비밀번호가 다릅니다."
}
Method: POST
URL: "/login/oauth/naver"
req:
header: {
Authorization: String
}
body:
res:
header:
body: {
email : String
authorization : String
isAdmin: Boolean
}
Method: GET
URL: "/mypage"
req:
header: {
Authorization : String
}
body:
res:
header:
body: {
email : String,
createdAt : String,
secretKey: String
}
Method: GET
URL: "/reissuance"
req:
header: {
Authorization : String
}
body:
res:
header:
body: {
email : String,
createdAt : String,
secretKey: String
}
err: 401 unauthorized {
message: 'unauthorized'
}
Method: PUT
URL: "/user"
req:
header: {
Authorization : String
}
body: {
password : String
}
res:
header:
body:
err: 401 unauthorized {
message: 'unauthorized'
}
Method: DELETE
URL: "/user"
req:
header: {
Authorization : String
}
body:
res:
header:
body:
err: 401 unauthorized {
message: 'unauthorized'
}
Method: GET
URL: "/qna/list/{id}"
req:
header: {
Authorization : `Bearer $(token}`
}
body:
res:
header:
body: {
lastPage: Long,
qnas :
[
{
id: Long,
title: String,
updateAt: Timestamp,
email : String
},
{
}
...
]
}
Method: POST
URL: "/qna"
req:
header: {
Authorization : `Bearer $(token}`
}
body: {
title: String,
content: String
}
res:
header:
body:
err: 401 unauthorized {
message: 'unauthorized'
}
Method: GET
URL: "/qna/{qnaId}"
req:
header: {
Authorization : `Bearer $(token}`
}
body:
res:
header:
body: {
title: String,
content: String
}
err: 401 unauthorized {
message: 'unauthorized'
}
err: 404 Not Found {
message: '존재하지 않는 게시글입니다'
}
Method: PUT
URL: "/qna/{qnaId}"
req:
header: {
Authorization : `Bearer $(token}`
}
body: {
title: String,
content: String
}
res:
header:
body:
err: 401 unauthorized {
message: 'unauthorized'
}
Method: DELETE
URL: "/qna/{qnaId}"
req:
header: {
Authorization : `Bearer $(token}`
}
body:
res:
header:
body:
err: 401 unauthorized {
message: 'unauthorized'
}
Method: GET
URL: "/notice/list/{noticeId}"
req:
header: {
Authorization : `Bearer $(token}`
}
body:
res:
header:
body: {
lastPage: Long,
notices :
[
{
id: Long,
title: String,
updateAt: Timestamp,
email : String
},
{
}
...
]
}
Method: POST
URL: "/notice"
req:
header: {
Authorization : `Bearer $(token}`
}
body: {
title: String,
content: String
}
res:
header:
body:
err: 401 unauthorized {
message: 'unauthorized'
}
Method: GET
URL: "/notice/{noticeId}"
req:
header: {
Authorization : `Bearer $(token}`
}
body:
res:
header:
body: {
title: String,
content: String
}
err: 401 unauthorized {
message: 'unauthorized'
}
err: 404 Not Found {
message: '존재하지 않는 게시글입니다.'
}
Method: PUT
URL: "/notice/{noticeId}"
req:
header: {
Authorization : `Bearer $(token}`
}
body: {
title: String,
content: String
}
res:
header:
body:
err: 401 unauthorized {
message: 'unauthorized'
}
Method: DELETE
URL: "/notice/{noticeId}"
req:
header: {
Authorization : `Bearer $(token}`
}
body:
res:
header:
body:
err: 401 unauthorized {
message: 'unauthorized'
}
Method: GET
URL: "/ais"
req:
header: {
Authorization : `Bearer $(token}`
}
body:
res:
header:
body: {
aiList: [
{
field: String (vision || nlp),
name: String,
responseTime: Double,
accuracy: Double
},
{},
...
]
}
Method: GET
URL: "/ai/{name}"
req:
header: {
Authorization : `Bearer $(token}`
}
body:
res:
header:
body: {
name: String,
responseTime: Double,
accuracy: Double,
requestURI : String,
method: String,
req: String,
res: String
}
err: 404 Not Found {
message: '존재하지 않는 서비스입니다.'
}
<<<< 여기서 부터는 Only 백엔드 >>>>>
Method: POST
URL: "/ai/VGG19?email={email}&secretKey={secretKey}"
req:
header: {
content-type: "multipart/form-data"
}
body: {
images: form-data
}
res:
header:
body: {
category: String,
accuracy: Doubld
}
Method: POST
URL: "/ai/gname"
req:
header: {
accessKey: String
}
body: {
content: String
}
res:
header:
body: {
gName: String
}