기술 설계 · 양식
API 명세서 양식
엔드포인트별 요청·응답, 공통 에러 코드와 인증 규칙을 계약 수준으로 명세한다.
이럴 때 써요
- 기술 설계서의 개략적인 API 표로는 부족해 요청·응답 필드까지 확정해야 할 때
- 외부(화주사·파트너) 개발자에게 연동 문서를 내줘야 할 때
- API 가 이미 구현된 뒤 문서만 뒤늦게 맞출 때
양식 구성
8개 절로 이루어져 있습니다.
- 문서 정보
- 버전 · API 버전 · 서비스 · Base URL · 작성자 · 검토자 · 승인자 · 최종 수정일
- 1 공통 규칙
- 인증 방식·공통 헤더·페이지네이션처럼 모든 API 에 걸리는 약속을 먼저 적는다.
- 2 공통 에러 코드
- 에러 응답의 모양과 코드 체계를 적는다. 클라이언트가 무엇을 해야 하는지까지 적어야 쓸모가 있다.
- 3 엔드포인트 목록
- 엔드포인트를 한눈에 모은다. 자세한 규격은 아래 절에 두고 여기서는 목록으로만 본다.
- 4 요청 파라미터 상세
- 엔드포인트마다 절을 나누지 않고, 표 첫 열에 엔드포인트를 적어 한 표로 관리합니다.
- 5 응답 필드 상세
- 응답 필드의 타입과 뜻을 적는다. null 이 올 수 있는 필드는 그 사실을 분명히 적는다.
- 6 이벤트 · Webhook
- Webhook 이 없으면 이 절은 비워 둡니다.
- 7 변경 이력
- API 변경은 남의 코드를 깨뜨린다. 깨지는 변경(breaking)인지 반드시 표시한다.
바로 써 보기
로그인 없이 바로 쓸 수 있습니다. 다 쓰면 PDF·Word·한글(HWPX)·Markdown 으로 내보냅니다.
기술 설계 단계의 다른 양식
- 상태 전이도 — 상태와 전이 규칙, 금지 전이와 알림 발송까지 표로 확정한다.
- 아키텍처 다이어그램 — 서버·DB·연동 구성 등 시스템 아키텍처를 외부 도구에서 그린 그대로 붙여 보관한다.
- 도메인 모델 정의서 — 엔티티·관계·상태를 개발자 기준으로 정의한다. 엔티티가 수십 개로 늘어도 모듈로 나눠 훑을 수 있게 한다.
- 데이터 정의서 — 화면·API 가 공통으로 참조하는 필드의 타입·정의·허용값을 한곳에 고정한다.
- 기술 설계서 (Tech Spec) — 아키텍처, 데이터 모델, API 설계를 개발 착수 전에 합의한다.
- 에러 코드 정의서 — 서비스 전체에서 쓰는 에러 코드 체계를 한곳에 고정해, API·배치·화면이 같은 코드를 같은 뜻으로 쓰게 한다.
- 배치 정의서 — 정기적으로 도는 배치·스케줄러 작업의 주기, 처리 로직, 실패 시 대응을 한곳에 정의한다.
- 연동 명세서 — 외부 시스템(파트너사·택배사·PG 등)과 주고받는 데이터의 방식·필드·인증·에러 처리를 계약 수준으로 명세한다.