HomeAboutMeBlogGuest
© 2025 Sejin Cha. All rights reserved.
Built with Next.js, deployed on Vercel
🤎
프론트엔드 데브코스 5기 교육생
/
💻
이세희팀
/
🚀
팀프로젝트 : Styled
/
📌
공용 API 문서
📌

공용 API 문서

공식 API 문서

  • api 요청에 사용자 정의 JSON으로 커스텀하여 데이터 넣기 가능
const json = { "title": "제목", "body": "내용" }; API.createPost(JSON.stringify(json), ...);
어드민 계정
email: admin@programmers.co.kr password: programmers

API 명세서

Domain
Method
URL
Description
Request parameters
Request data
Response data
비고
User
POST
/login
로그인
Body
{ "email": String, "password": String}
{ "user": User, "token": String }
-
ㅤ
POST
/signup
회원가입
Body
{ "email": String, "fullName": String, "password": String }
{ "user": User, "token": String }
-
ㅤ
POST
/logout
-
-
-
-
-
ㅤ
GET
/auth-user
사용자 인증 확인
Header
Authorization: bearer JWT토큰
User
-
ㅤ
GET
/users/get-users
사용자 목록 조회
Params
offset: Optional limit: Optional
User[]
-
ㅤ
GET
/users/online-users
현재 접속 중인 사용자 목록 조회
-
-
User[]
-
ㅤ
GET
/users/{userId}
특정 사용자 정보 조회
-
-
User
-
ㅤ
POST
/users/upload-photo
나의 프로필 이미지를 변경
Header, Body
Authorization: bearer JWT토큰isCover: false image: Binary
User
isCover를 반드시 false로 기입
ㅤ
POST
/users/upload-photo
나의 커버 이미지를 변경
Header, Body
Authorization: bearer JWT토큰isCover: true image: Binary
User
isCover를 반드시 true로 기입
ㅤ
PUT
/settings/update-user
나의 정보를 변경
Header, Body
Authorization: bearer JWT토큰{ "fullName": String, "username": String }
User
-
ㅤ
PUT
/settings/update-password
내 계정 비밀번호를 변경
Header, Body
Authorization: bearer JWT토큰{ "password": String }
-
-
Channel
GET
/channels
채널 목록 조회
-
-
Channel[]
-
ㅤ
GET
/channel/{channelName}
특정 채널 정보 조회
-
-
Channel
채널 이름이 한글일 때, 인코딩 필요
Post
GET
/posts/channel/{channelId}
특정 채널의 포스트 목록 조회
Params
offset: Optional<Number> limit: Optional<Number>
Post[]
-
ㅤ
GET
/posts/author/{authorId}
특정 사용자의 포스트 목록 조회
Params
offset: Optional<Number> limit: Optional<Number>
Post[]
-
ㅤ
POST
/posts/create
특정 채널에 포스트를 작성
Header, Body
Authorization: bearer JWT토큰title: String, image: Binary | null, channelId: String
-
-
ㅤ
GET
/posts/{postId}
특정 포스트의 상세 정보 조회
-
-
Post
-
ㅤ
PUT
/posts/update
내가 작성한 포스트를 수정
Header, Body
Authorization: bearer JWT토큰postId: String title: String image: Binary | null imageToDeletePublicId: Optional channelId: String
-
이미지를 삭제하려면 imageToDeletePublicId에 imagePublicId를 기입
ㅤ
DELETE
/posts/delete
내가 작성한 포스트를 삭제
Header, Body
Authorization: bearer JWT토큰{ "id": String }
-
-
ㅤ
POST
/likes/create
특정 포스트에 좋아요
Header, Body
Authorization: bearer JWT토큰{ "postId": String }
Like
-
ㅤ
DELETE
/likes/delete
특정 포스트에 좋아요한 것을 취소
Header, Body
Authorization: bearer JWT토큰{ "id": String }
Like
-
ㅤ
POST
/comments/create
특정 포스트에 댓글을 작성
Header, Body
Authorization: bearer JWT토큰{ "comment": String, "postId": String}
Comment
-
ㅤ
DELETE
/comments/delete
특정 포스트에 작성한 내 댓글을 삭제
Header, Body
Authorization: bearer JWT토큰{ "id": String }
Comment
-
Alarm
GET
/notifications
나의 알림 목록 조회
Header
Authorization: bearer JWT토큰
Notification[]
-
ㅤ
PUT
/notifications/seen
나에게 온 알림을 읽음처리
Header
Authorization: bearer JWT토큰
-
-
ㅤ
POST
/notifications/create
상대방에게 알림 보냄
Header, Body
Authorization: bearer JWT토큰{ "notificationType": "COMMENT" | "FOLLOW" | "LIKE" | "MESSAGE", "notificationTypeId": String, "userId": String, "postId": Nullable<String> }
Notification
notificationTypeId는 type에 해당하는 객체의 id를 넣어주세요.COMMENT일 경우엔 댓글 idFOLLOW일 경우엔 팔로우 idLIKE일 경우엔 좋아요 idMESSAGE일 경우엔 메시지 idpostId는 type이 FOLLOW일 경우엔 null로 보내주세요.
Follow
POST
/follow/create
특정 유저를 팔로우
Header, Body
Authorization: bearer JWT토큰{ "userId": String}
Follow
-
ㅤ
DELETE
/follow/delete
특정 유저를 언팔
Header, Body
Authorization: bearer JWT토큰{ "id": String}
Follow
-
Message
GET
/messages/conversations
나와 메시지함 조회
Header
Authorization: bearer JWT토큰
Conversation[]
-
ㅤ
GET
/messages
특정 사용자와 소통한 메시지 목록 조회
Header, Params
Authorization: bearer JWT토큰userId: String
Message[]
-
ㅤ
PUT
/messages/update-seen
특정 사용자와 나눈 메시지를 읽음처리
Header, Body
Authorization: bearer JWT토큰{ "sender": String // 사용자 id }
-
-
ㅤ
POST
/messages/create
특정 사용자에게 메시지를 전송
Header, Body
Authorization: bearer JWT토큰{ "message": String, "receiver": String // 사용자 id}
Message
-
Search
GET
/search/users/{query}
사용자를 검색
-
-
User[]
-
ㅤ
GET
/search/all/{query}
포스트와 사용자를 검색
-
-
(User | Post)[]
-