-
Notifications
You must be signed in to change notification settings - Fork 3
API 명세
Seongho Yun edited this page Nov 17, 2022
·
1 revision
-
로그인 과정 중 github 리다이렉트
- 경로: /api/users/redirect
- 메서드: get
- 응답: 301 / redirect : github 인증 페이지
-
로그인
-
경로: /api/users/login
-
메서드: get
-
파라미터:
- query string
{ code: string }
-
응답: 201
- 쿠키
{ accessToken: string, refreshToken: string }
-
-
로그아웃
- 경로: /api/users/logout
- 메서드: delete
- 응답 : 204
- accessToken, refreshToken 쿠키 제거
-
사용자 정보
-
경로: /api/users/
-
메서드: get
-
응답: 200
- JSON
{ userID: string, userName: string }
-
-
빈 설문지 생성
-
경로: /api/forms/
-
메서드: post
-
파라미터:
- JSON
{ userID: number }
-
응답: 201
- JSON
{ formID: string }
-
-
설문지 존재 확인
-
경로: /api/forms/:id
-
메서드: get
-
파라미터:
- path variable
{ id: string }
-
응답: 200
- JSON
{ id: string, userID: number, title: string, description: string, category: string, question: Array<Question>, acceptResponse: boolean, onBoard: boolean } // Question Interface { id: number, page: number, type: string, essential: boolean, etcAdded: boolean, title: string, option: Array<string> }
-
-
설문지 수정
-
경로: /api/forms/:id
-
메서드: PATCH
-
파라미터:
- path variable
{ id: string }
- JSON
{ title?: string, description?: string, category?: string, question?: Array<Question>, acceptResponse?: boolean, onBoard?: boolean, }
-
응답: 200
-
-
설문지 리스트 호출
-
경로: /api/forms/:page
-
메서드: GET
-
파라미터:
- path variable
{ size: number }
-
응답: 200
{ form: Array<FormOnList> } // FormOnList Interface { _id: string, title: string, acceptResponse: boolean, response: number, createdAt: string, onBoard: boolean, category: string }
-
-
설문지 삭제
-
경로: /api/forms/:id
-
메서드: DELETE
-
파라미터:
- path varibale
{ id: string }
-
응답: 204
-
-
응답 전송
-
경로: /api/responses
-
메서드: POST
-
파라미터:
- JSON
{ userID?: number, formID: string, response: Array<Response> } // Response Interface { id: string, answer: Array<string> | string }
-
응답: 201
- JSON
{ responseID: string }
-
-
응답 수정
-
경로: /api/responses
-
메서드: PATCH
-
파라미터:
- JSON
{ userID?: number, formID: string, response: Array<Response> }
-
응답: 200
-
-
중복 응답 방지를 위한 응답 조회
-
경로: /api/responses/:userID/:formID/
-
메서드: GET
-
파라미터:
- path variable
{ userID?: number, formID: string }
-
응답: 200
- JSON
{ responsed: boolean }
-
-
수정 전 지난 응답 조회
-
경로: /api/responses/:responseID
-
메서드: GET
-
파라미터:
- path variable
{ responseID: string, }
-
응답: 200
- JSON
{ userID?: number, formID: string, response: Array<Response> }
-
-
응답으로 설문 결과 조회
-
경로: /api/responses/result/:formID
-
메서드: GET
-
파라미터:
- path variable
{ formID: string }
-
응답: 200
- JSON
{ response: Array<Response> }
-
- 게시판에서의 설문지 리스트 호출
-
경로: /api/board/
-
메서드: GET
-
파라미터:
- query string
{ title?: string, category?: string, page?: number }
-
응답: 200
- JSON
{ form: Array<FormOnBoard> } // FormOnBoard Interface { formID: string, title: string, category: string }
-