chatgpt

ChatGPT API 엔드포인트 설계 프롬프트 - RESTful/GraphQL API

ChatGPT로 RESTful API와 GraphQL API 엔드포인트를 설계하는 프롬프트입니다. HTTP 메서드, 상태 코드, 인증까지 체계적인 API 설계 방법을 안내합니다.

수정
💡

프롬프트 사용 방법

  1. 1단계: 아래 입력 칸에 각 항목에 맞는 정보를 적어주세요
  2. 2단계: 입력하면 아래 프롬프트가 자동으로 업데이트됩니다
  3. 3단계: '프롬프트 복사' 버튼을 눌러 ChatGPT/Claude에 붙여넣으세요

💡 입력 칸의 회색 글씨는 예시입니다. 참고해서 작성해보세요!

📝 필요한 정보를 입력해주세요 (총 7개)

서비스 또는 프로젝트 이름

서비스가 속한 산업 분야

API가 제공할 핵심 기능들

API 아키텍처에 대한 값을 입력하세요

사용자 인증 방식

예상 트래픽 규모

준수해야 할 보안 규정

📋 완성된 프롬프트 (복사해서 사용하세요)

당신은 10년 이상의 실무 경력을 보유한 시니어 API 아키텍트입니다. OpenAPI 3.0 표준을 준수하여 확장 가능하고 유지보수가 용이한 API를 설계해 주세요.


## 서비스 정보
- 서비스명: {{서비스명}} (예: 사용자 관리 API, 주문 처리 시스템)
- 도메인/산업: {{도메인}} (예: 이커머스, 핀테크, SaaS)
- 핵심 기능: {{핵심_기능}} (예: 사용자 CRUD, 로그인, 검색)
- API 아키텍처: {{API_아키텍처}} (REST / GraphQL / gRPC 중 선택)
- 인증 방식: {{인증_방식}} (예: JWT, OAuth2, API Key)

## 비기능 요구사항
- 예상 트래픽 규모: {{예상_트래픽}} (예: 일 10만 요청, 1000 RPS)
- 보안 요구사항: {{보안_요구사항}} (예: GDPR 준수, PCI-DSS, 일반 보안)

## 출력 형식
1. OpenAPI 3.0 스펙 (YAML 형식)
2. 엔드포인트 요약표 (메서드, 경로, 용도, 인증 여부)
3. 요청/응답 예시 (JSON 스키마 포함)
4. 표준 에러 처리 포맷 (에러 코드 체계)
5. 버전 관리 전략 권장사항

입력하지 않은 항목은 원래 표시를 유지합니다.

간단 버전

{{서비스명}} 서비스의 API 엔드포인트를 설계하세요.

- 핵심 기능: {{핵심_기능}}
- 인증 방식: {{인증_방식}}
- API 스타일: {{API_아키텍처}}

다음을 포함하여 출력해 주세요: 엔드포인트 목록, 요청/응답 예시, 표준 에러 포맷.

입력값 가이드

입력 항목 한국어 설명 placeholder 예시
서비스명 만들 API의 이름을 입력해주세요 예: 사용자 관리 API 사용자 관리 API, 주문 처리 시스템, 결제 게이트웨이
도메인 서비스가 속한 산업 분야를 선택해주세요 예: 이커머스 이커머스, SaaS, 핀테크, 헬스케어
핵심_기능 API가 제공할 핵심 기능들을 입력해주세요 예: 사용자 CRUD, 로그인, 검색 사용자 CRUD, 로그인, 검색, 상품 관리, 주문 처리
API_아키텍처 API 설계 방식을 선택해주세요 REST, GraphQL, gRPC 중 선택 REST, GraphQL, gRPC
인증_방식 사용자 인증 방식을 선택해주세요 JWT, OAuth2, API Key 중 선택 JWT, OAuth2, API Key, Session
예상_트래픽 예상 트래픽 규모를 입력해주세요 예: 일 10만 요청 일 10만 요청, 1000 RPS, 소규모
보안_요구사항 준수해야 할 보안 규정을 선택해주세요 예: GDPR, 없음 GDPR, PCI-DSS, ISO 27001, 없음

인풋 필드

[서비스명]
▼ 선택하거나 직접 입력
placeholder: "예: 사용자 관리 API"
설명: 만들 API의 이름을 입력해주세요

[도메인]
▼ 드롭다운 선택
옵션: 이커머스, SaaS, 핀테크, 헬스케어, 게임, 교육, 기타
placeholder: "예: 이커머스"
설명: 서비스가 속한 산업 분야를 선택해주세요

[핵심_기능]
▼ 텍스트 입력
placeholder: "예: 사용자 CRUD, 로그인, 검색"
설명: API가 제공할 핵심 기능들을 쉼표로 구분해서 입력해주세요

[API_아키텍처]
▼ 라디오 버튼 선택
옵션: ☐ REST  ☐ GraphQL  ☐ gRPC
설명: API 설계 방식을 선택해주세요 (REST가 가장 일반적입니다)

[인증_방식]
▼ 드롭다운 선택
옵션: JWT, OAuth2, API Key, Session, 없음
placeholder: "JWT"
설명: 사용자 인증 방식을 선택해주세요

[예상_트래픽]
▼ 텍스트 입력
placeholder: "예: 일 10만 요청"
설명: 예상되는 트래픽 규모를 입력해주세요 (소규모/중규모/대규모로도 입력 가능)

[보안_요구사항]
▼ 드롭다운 선택
옵션: 없음, GDPR, PCI-DSS, ISO 27001, 기타
placeholder: "없음"
설명: 준수해야 할 보안 규정이 있으면 선택해주세요

HTTP 메서드

메서드 용도 멱등성
GET 리소스 조회 O
POST 리소스 생성 X
PUT 전체 교체 O
PATCH 부분 수정 X
DELETE 삭제 O

상태 코드

코드 의미 사용 시점
200 OK 성공
201 Created 생성 성공
204 No Content 삭제 성공
400 Bad Request 잘못된 요청
401 Unauthorized 인증 필요
403 Forbidden 권한 없음
404 Not Found 리소스 없음
409 Conflict 충돌
429 Too Many Requests 제한 초과
500 Internal Error 서버 오류

RESTful 네이밍

✅ 좋은 예:
GET  /api/v1/users
GET  /api/v1/users/{id}
POST /api/v1/orders
PATCH /api/v1/orders/{id}

❌ 나쁜 예:
GET /api/v1/getUsers
POST /api/v1/createOrder

응답 포맷

// 성공
{
  "data": { /* 응답 데이터 */ },
  "meta": { "timestamp": "...", "requestId": "..." }
}

// 에러
{
  "error": {
    "code": "VALIDATION_ERROR",
    "message": "요청 데이터가 유효하지 않습니다."
  }
}

// 페이지네이션
{
  "data": [...],
  "pagination": { "page": 1, "limit": 20, "total": 150 }
}

자주 하는 실수

실수 해결책
동사 사용 명사로 변경 (getUsers → users)
잘못된 상태 코드 HTTP 표준 준수
과도한 중첩 최대 2-3단계로 제한
문서화 부족 OpenAPI 스펙 작성

자주 묻는 질문 (FAQ)

Q: REST API와 GraphQL 중 어떤 것을 선택해야 하나요?

A: 서비스 특성에 따라 다릅니다:

  • REST: 표준적이고 캐싱이 중요한 경우, 공개 API에 적합
  • GraphQL: 유연한 데이터 조회가 필요한 경우, 복잡한 관계형 데이터에 적합
  • gRPC: 마이크로서비스 간 통신, 높은 성능이 필요한 내부 API에 적합

Q: API 버전 관리는 어떻게 하나요?

A: 세 가지 주요 방식이 있습니다:

  1. URL 경로 방식: /api/v1/users (가장 널리 사용)
  2. 헤더 방식: Accept: application/vnd.api+json;version=1
  3. 쿼리 파라미터: /api/users?version=1

Q: JWT와 OAuth2의 차이는 무엇인가요?

A:

  • JWT: 토큰 기반 인증 포맷으로, 상태가 없고 확장성이 좋습니다
  • OAuth2: 제3자 인가 프레임워크로, 소셜 로그인 등에 사용됩니다
  • 실제로는 JWT를 OAuth2의 액세스 토큰으로 함께 사용하는 경우가 많습니다

Q: 페이지네이션은 어떻게 구현하나요?

A:

{
  "data": [...],
  "pagination": {
    "page": 1,
    "limit": 20,
    "total": 150,
    "totalPages": 8
  }
}

커서 기반 페이지네이션은 대용량 데이터셋에서 더 효율적입니다.

🚀 AI 바로 열기

🔗 관련 프롬프트

chatgpt

ChatGPT 데이터베이스 설계 프롬프트 - DB 스키마 모델링

ChatGPT로 관계형 데이터베이스와 NoSQL 스키마를 설계하는 프롬프트입니다. 정규화, ERD, 인덱스 최적화까지 체계적인 DB 설계 방법을 안내합니다.

데이터베이스설계DB설계
프롬프트와 사용 가이드
chatgpt

ChatGPT 시스템 설계 프롬프트 - 대규모 시스템 아키텍처 설계 가이드

ChatGPT로 확장 가능한 대규모 시스템 아키텍처를 설계하는 프롬프트입니다. 마이크로서비스, 분산 시스템, 캐싱, 로드밸런싱까지 체계적인 시스템 설계 방법을 안내합니다.

시스템설계아키텍처
프롬프트와 사용 가이드
chatgpt

ChatGPT 코드 품질 검토 프롬프트 - 전문가 수준 코드 리뷰 가이드

ChatGPT로 코드 품질을 체계적으로 검토하는 프롬프트입니다. 코딩 표준 준수, 보안 취약점 탐지, 성능 최적화, 리팩토링 제안까지 제공합니다.

코드리뷰코드품질
프롬프트와 사용 가이드
claude

클로드 API 개발 프롬프트 - RESTful API 설계 및 구현 가이드

Claude로 RESTful API를 설계하고 구현하는 개발 프롬프트입니다. API 엔드포인트 설계, 요청/응답 스키마 정의, 인증/보안 구현, 에러 처리, API 문서화 등 전체 API 개발 라이프사이클을 지원합니다.

API개발RESTful
프롬프트와 사용 가이드