개발일기
프론트와 백엔드 협업 시 API 명세 잘 만드는 법: 실무에서 바로 쓰는 작성 팁
뱅우
2025. 5. 27. 10:55
반응형
프론트와 백엔드 협업 시 API 명세 잘 만드는 법: 실무에서 바로 쓰는 작성 팁
“프론트에서 어떤 파라미터 주면 돼요?”
“백엔드에서 응답 형식 어떻게 와요?”
개발 프로젝트에서 이런 질문이 반복된다면, API 명세가 부족한 것일 수 있습니다.
이번 글에서는 실무에서 효과적인 협업을 위한 API 문서 작성 팁과 실제 예시를 정리해드립니다.

✅ API 명세란?
API 명세는 프론트와 백엔드가 “무엇을 어떻게 주고받는지” 약속하는 문서입니다.
예상 가능한 결과, 빠른 개발, 오류 감소를 위해 필수입니다.
📋 명세서에 꼭 들어가야 하는 항목
항목 | 설명 |
---|---|
API URL | 요청 주소 (ex: /api/users/login) |
Method | GET / POST / PUT / DELETE 등 |
Request Parameter | 요청 시 전달할 데이터 (ex: JSON Body, QueryString) |
Response | 응답 형식 (성공/실패 시 JSON 구조) |
Status Code | 200 / 400 / 401 / 403 / 500 등 |
🧾 실제 예시: 로그인 API 명세
[POST] /api/users/login 📨 Request Body { "email": "user@example.com", "password": "12345678" } ✅ Success Response (200 OK) { "userId": 1, "nickname": "개발자", "token": "eyJhbGciOiJIUzI1NiIsInR5cCI..." } ❌ Error Response (401 Unauthorized) { "error": "INVALID_PASSWORD", "message": "비밀번호가 일치하지 않습니다." }
💡 요청과 응답의 구조를 예시와 함께 적는 것이 가장 중요합니다.
🧠 실무에서의 API 명세 팁
- 가능하면 Postman, Swagger 등으로 공유
- API마다 성공/실패 응답 예시 꼭 작성
- 상태 코드 의미 통일 (ex: 400은 파라미터 오류, 401은 인증 실패)
- 프론트/백 모두 사용하는
🛠 API 명세 작성 도구 추천
- Swagger / SpringDoc: Spring 프로젝트 자동화 도구
- Postman: 팀 협업용 명세 공유 및 테스트
- Stoplight / Insomnia: UI 기반 API 작성 도구
- Google Docs or Notion: 경량 텍스트 기반 협업에 적합
📌 마무리 정리
항목 | 팁 |
---|---|
Request | 필드 이름/타입/필수 여부 명확히 작성 |
Response | 성공/실패 구조 구분 + 상태 코드 |
공통 에러 정의 | 프론트에서도 공통 처리 가능하도록 코드/메시지 정의 |
도구 | Swagger, Postman 활용해 자동화 또는 협업 공유 |
반응형