-
Notifications
You must be signed in to change notification settings - Fork 1
API Map
박태진 edited this page Mar 5, 2026
·
2 revisions
- API Base URL:
NEXT_PUBLIC_API_BASE_URL(기본값:https://dev.api.swkoreatech.io) - 공통 호출 함수:
-
apiClient: 서버/공용 호출 -
clientApiClient: 브라우저 호출, 401 시 토큰 갱신 + 1회 재시도
-
- 공통 예외:
ApiException(status, message)
| 파일 | 주요 책임 | 대표 함수 |
|---|---|---|
src/lib/api/auth.ts |
인증/검증/비밀번호 재설정 |
login, loginWithGithub, reissueToken
|
src/lib/api/user.ts |
회원가입/프로필/활동 |
signup, getUserProfile, updateUser
|
src/lib/api/article.ts |
게시글 CRUD/좋아요/북마크/신고 |
getArticles, createArticle, toggleArticleLike
|
src/lib/api/comment.ts |
댓글 CRUD/좋아요 |
getComments, createComment, toggleCommentLike
|
src/lib/api/recruit.ts |
모집공고/지원/상태 |
getRecruits, applyRecruit, decideApplication
|
src/lib/api/team.ts |
팀 생성/조회/수정/초대 |
createTeam, getTeam, inviteTeamMember
|
src/lib/api/challenge.ts |
챌린지 조회 | getChallenges |
src/lib/api/board.ts |
게시판 목록 | getBoards |
src/lib/api/notification.ts |
알림 조회/읽음/삭제 |
getNotifications, markAllNotificationsAsRead
|
src/lib/api/admin.ts |
관리자 권한/정책/역할/콘텐츠/포인트 |
getPermissions, getRoles, getAdminReports
|
src/lib/api/search.ts |
통합 검색 | searchGlobal |
src/lib/api/upload.ts |
파일 업로드 | uploadFile |
| 엔드포인트 | 동작 |
|---|---|
GET /api/auth/session |
쿠키 기반 세션 조회, 필요 시 refresh 수행 |
POST /api/auth/session |
credentials/github/tokens 방식 로그인 처리 |
DELETE /api/auth/session |
백엔드 로그아웃 호출 후 쿠키 삭제 |
POST /api/auth/refresh |
refresh token으로 access/refresh 재발급 |
- 401: 인증 만료 처리 후 로그인 유도
- 403: 권한 없음 메시지
- 5xx/네트워크 오류:
serverDown이벤트 발생, 서버 상태 오버레이 표시
- API 스펙 변경: 이 문서 +
docs/troubleshooting.md - 인증 계약 변경: 이 문서 +
docs/auth.md