REST 계약

RESTful API 리소스 계약

URI, HTTP method, status code, DTO, 예외 응답을 같은 리소스 모델 위에 놓으면 NestJS 구현과 문서가 흔들리지 않습니다.

Resource

명사형 URI

/users, /posts/:id처럼 행위보다 리소스를 드러내고 중첩은 필요한 깊이까지만 둡니다.

Method

HTTP 의미

GET은 조회, POST는 생성, PATCH는 부분 변경, DELETE는 삭제처럼 멱등성과 캐시 가능성을 맞춥니다.

Status

응답 코드

201, 204, 400, 404, 409를 성공과 실패의 도메인 의미에 맞춰 일관되게 씁니다.

계약

입출력 DTO

CreateDto, UpdateDto, ResponseDto로 요청 검증과 응답 노출 필드를 분리합니다.