Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

API 명세서

comment CRUD(단, 로그인 시 가능)

BaseURL = "/api/schedules/{scheduleId}/comments"

기능 Method URL request response 상태코드
댓글 등록 POST body: 댓글생성요청 DTO 등록 정보 200: 정상등록
403: 오류
댓글 조회 GET /{commentsId} - 단건 응답 정보 200: 정상조회
404: 오류
목록 조회 GET param: 페이지 번호
페이지 크기
다건 응답 정보 200: 정상조회
400: 오류
댓글 수정 PUT /{commentsId} body: 일정수정요청 DTO 수정 정보 200: 정상수정
403: 오류
댓글 삭제 DELETE /{commentsId} - - 200: 정상삭제
403: 오류
댓글 등록
  • 요청 정보

    메소드 요청 URL
    POST /api/schedules/{scheduleId}/comments
  • 예시

    • 요청: POST /api/schedules/{scheduleId}/comments
    {     
          "contents" : "댓글1"
    }
    • 응답: HTTP/1.1 200 OK
    {
          "id" : 1,
          "contents" : "댓글1",
          "createdAt" : "2024-11-15:00:00:00",
          "modifiedAt" : "2024-11-15:00:00:00"
    }
  • 본문

    • 요청
      이름 타입 설명 필수
      contents 문자열 필수
    • 응답
      이름 타입 설명 필수
      id int 필수
      contents 문자열 필수
      createdAt DATETIME 필수
      modifiedAt DATETIME 필수
목록 조회
  • 요청 정보

    메소드 요청 URL
    GET /api/schedules/{scheduleId}/comments?pageNumber=XX&pageSize=XX
  • 예시

    • 요청: GET /api/schedules/{scheduleId}/comments?pageNumber=1&pageSize=2

    • 응답: HTTP/1.1 200 OK

    "schedules" : [
      {
          "id" : 1
          "contents" : "댓글1",
          "createdAt" : "2024-11-15",
    },
    {
          "id" : 2
          "contents" : "댓글2",
          "createdAt" : "2024-11-16",
    }
    ]
    
  • 본문

    • 요청 x

    • 응답

      이름 타입 설명 필수
      id int 필수
      contents 문자열 필수
      createdAt DATETIME 필수
댓글 조회
  • 요청 정보
    메소드 요청 URL
    GET /api/schedules/{scheduleId}/comments/{commentsId}
  • 예시
    • 요청: GET /api/schedules/1/comments/1

    • 응답: HTTP/1.1 200 OK

    {
          "id" : 1
          "contents" : "댓글1",
          "createdAt" : "2024-11-15",
    }
    
  • 본문
    • 요청 x

    • 응답

      이름 타입 설명 필수
      id int 필수
      contents 문자열 필수
      createdAt DATETIME 필수
댓글 수정
  • 요청 정보

    메소드 요청 URL
    PUT /api/schedules/{scheduleId}/comments/{commentsId}
  • 예시

    • 요청: PUT /api/schedules/1/comments/1
    {
          "contents" : "수정 댓글1"
    }
    • 응답: HTTP/1.1 200 OK
    {
          "id" : 1,
          "contents" : "수정 댓글1",
          "modifiedAt" : "2024-11-15"
    }
  • 본문

    • 요청
      이름 타입 설명 필수
      contents 문자열 필수
    • 응답
      이름 타입 설명 필수
      id int 필수
      contents 문자열 필수
      modifiedAt DATETIME 필수
댓글 삭제
  • 요청 정보

    메소드 요청 URL
    DELETE /api/schedules/{scheduleId}/comments/{commentsId}
  • 예시

    • 요청: DELETE /api/schedules/1/comments/1

    • 응답: HTTP/1.1 200 OK

schedule CRUD(단, 로그인 시 가능)

기능 Method URL request response 상태코드
일정 등록 POST /api/schedules body: 일정생성요청 DTO 등록 정보 201: 정상등록
400: 오류
일정 조회 GET /api/schedules/{scheduleId} - 단건 응답 정보 200: 정상조회
404: 오류
일정 목록 조회 GET /api/schedules param: 페이지 번호
페이지 크기
작성자명
수정날짜
다건 응답 정보 200: 정상조회
400: 오류
일정 수정 PUT /api/schedules/{scheduleId} body: 일정수정요청 DTO 수정 정보 200: 정상수정
406: 오류
일정 삭제 DELETE /api/schedules/{scheduleId} - - 200: 정상삭제
406: 오류
일정 등록
  • 요청 정보

    메소드 요청 URL
    POST /api/schedules
  • 예시

    • 요청: POST /api/schedules
    {     
          "title" : "일정제목",
          "contents" : "일정내용"
    }
    • 응답: HTTP/1.1 201 Created
    {
          "scheduleId" : 3,
          "title" : "일정제목",
          "contents" : "일정내용",
          "createdAt" : "2024-11-13"
    }
  • 본문

    • 요청
      이름 타입 설명 필수
      title 문자열 필수
      contents 문자열 필수
    • 응답
      이름 타입 설명 필수
      scheduleId int 필수
      title 문자열 필수
      contents 문자열 필수
      createdAt 문자열->DATETIME 필수
일정 목록 조회
  • 요청 정보

    메소드 요청 URL
    GET /api/schedules?pageNumber=XX&pageSize=XX&&writer=XX&date=XX
  • 예시

    • 요청: GET /api/schedules?pageNumber=1&pageSize=2

    • 응답: HTTP/1.1 200 OK

    "schedules" : [
      {
          "title" : "일정제목1",
          "contents" : "일정내용1" 
          "totalComments" : 5,
          "createdAt" : "2024-10-31",
          "modifiedAt" : "2024-11-14",
          "username" : "홍길동"
    },
    {
          "title" : "일정제목2",
          "contents" : "일정내용2" 
          "totalComments" : 3,
          "createdAt" : "2024-10-31",
          "modifiedAt" : "2024-11-13",
          "username" : "홍길동"
    }]
    
  • 본문

    • 요청 x

    • 응답

      이름 타입 설명 필수
      title 문자열 필수
      contents 문자열 필수
      totalComments int 필수
      createdAt DATETIME 필수
      modifiedAt DATETIME 필수
      username 문자열 필수
일정 단건 조회
  • 요청 정보
    메소드 요청 URL
    GET /api/schedules/{scheduleId}
  • 예시
    • 요청: GET /api/schedules/2

    • 응답: HTTP/1.1 200 OK

    {
          "title" : "일정제목2",
          "contents" : "일정내용2" 
          "totalComments" : 3,
          "createdAt" : "2024-10-31",
          "modifiedAt" : "2024-11-13",
          "username" : "홍길동"
    }
    
  • 본문
    • 요청 x

    • 응답

      이름 타입 설명 필수
      title 문자열 필수
      contents 문자열 필수
      totalComments int 필수
      createdAt DATETIME 필수
      modifiedAt DATETIME 필수
      username 문자열 필수
일정 수정
  • 요청 정보

    메소드 요청 URL
    PUT /api/schedules/{scheduleId}
  • 예시

    • 요청: PUT /api/schedules/{scheduleId}
    {
          "title" : "수정된 일정 제목2",
          "contents" : "수정된 일정 내용2"
    }
    • 응답: HTTP/1.1 200 OK
    {
          "scheduleId" : 2,
          "title" : "수정된 일정 제목2",
          "contents" : "수정된 일정 내용2"
          "modifiedAt" : "2024-11-15"
    }
  • 본문

    • 요청
      이름 타입 설명 필수
      title 문자열 필수
      contents 문자열 필수
    • 응답
      이름 타입 설명 필수
      scheduleId int 필수
      title 문자열 필수
      contents 문자열 필수
      modifiedAt DATETIME 필수
일정 삭제
  • 요청 정보

    메소드 요청 URL
    DELETE /api/schedules/{scheduleId}
  • 예시

    • 요청: DELETE /api/schedules/13

    • 응답: HTTP/1.1 200 OK

user CRUD

기능 Method URL request response 상태코드
유저 가입 POST /api/users/signup body: 유저생성요청 DTO 작성자 정보 201: 정상등록
400: 오류
로그인 POST /api/users/login body: 로그인 DTO 작성자 정보 200: 정상로그인
400: 오류
유저 조회 GET /api/users/{userId} - 작성자 정보 200: 정상조회
404: 오류
유저 수정 PUT /api/users body: 유저수정요청 DTO 수정된 정보 200: 정상조회
406: 오류
유저 삭제 DELETE /api/users - - 200: 정상삭제
로그 아웃 GET /api/users/logout - - 200: 정상 로그아웃
유저 가입
  • 요청 정보

    메소드 요청 URL
    POST /api/users/signup
  • 예시

    • 요청: POST /api/users/signup
    {     
          "email" : "a@b.com",
          "username" : "홍길동",
          "password" : "1234"
    }
    • 응답: HTTP/1.1 201 Created
    {
          "userId" : 1,
          "email" : "a@b.com",
          "username" : "홍길동",
          "createdAt" : "2024-11-15"
    }
  • 본문

    • 요청
      이름 타입 설명 필수
      email 문자열 필수
      username 문자열 필수
      password 문자열 필수
    • 응답
      이름 타입 설명 필수
      userId int 필수
      email 문자열 필수
      username 문자열 필수
      createdAt DATETIME 필수
유저 로그인
  • 요청 정보

    메소드 요청 URL
    POST /api/users/login
  • 예시

    • 요청: POST /api/users/login
    {     
          "email" : "a@b.com",
          "password" : "1234"
    }
    • 응답: HTTP/1.1 200 OK
  • 본문

    • 요청
      이름 타입 설명 필수
      email 문자열 필수
      password 문자열 필수
    • 응답: HTTP/1.1 200 OK
유저 단건 조회
  • 요청 정보

    메소드 요청 URL
    GET /api/users/{userId}
  • 예시

    • 요청: GET /api/writers/1

    • 응답: HTTP/1.1 200 OK

    {
          "userId" : 1,
          "email" : "a@b.com",
          "username" : "홍길동"
    }
  • 본문

    • 요청 x
    • 응답
      이름 타입 설명 필수
      userId int 필수
      email 문자열 필수
      username 문자열 필수
유저 수정
  • 요청 정보

    메소드 요청 URL
    PUT /api/users
  • 예시

    • 요청: PUT /api/users
    {
          "email": "b@c.com", -> 수정된 이메일
          "username" : "김길동" -> 수정된 이름
    }
    • 응답: HTTP/1.1 200 OK
    {
          "userId" : 1,
          "email": "b@c.com",
          "username" : "아무개1",
          "modifiedAt" : "2024-11-15"
    }
  • 본문

    • 요청
      이름 타입 설명 필수
      email 문자열 필수
      username 문자열 필수
    • 응답
      이름 타입 설명 필수
      userId int 필수
      email 문자열 필수
      username 문자열 필수
      modifiedAt DATETIME 필수
유저 삭제
  • 요청 정보

    메소드 요청 URL
    DELETE /api/users
  • 예시

    • 요청: DELETE /api/users
    • 응답: HTTP/1.1 200 OK
로그 아웃
  • 요청 정보

    메소드 요청 URL
    GET /api/users/logout
  • 예시

    • 요청: GET /api/users
    • 응답: HTTP/1.1 200 OK

ERD


ERD 그림

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages