Skip to main content

api-design

REST API design best practices. Use when designing APIs, choosing status codes, or creating endpoints.

소스 정보

저장소
Tibsfox/gsd-skill-creator
최근 소스 활동
2026년 4월 25일 21:14
감지된 SKILL.md 언어
영어
스타
70
포크
10

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
api-design
description
REST API design best practices. Use when designing APIs, choosing status codes, or creating endpoints.
version
1.0.0
format
2025-10-02T00:00:00.000Z
triggers
["designing APIs, choosing status codes, or creating endpoints"]
updated
2026-04-25T00:00:00.000Z
status
ACTIVE
# REST API Design ## Endpoint Rules - **Nouns, not verbs:** `/users` not `/getUsers` — HTTP method is the verb - **Plural nouns:** `/users`, `/orders` — consistent collections - **Kebab-case:** `/user-profiles` not `/user_profiles` - **Max 2 levels nesting:** `/users/{id}/orders` — deeper use query params - **No trailing slashes, no extensions** ## HTTP Methods | Method | Purpose | Idempotent | |--------|---------|------------| | GET | Retrieve | Yes | | POST | Create | No | | PUT | Replace entire resource | Yes | | PATCH | Partial update | No | | DELETE | Remove | Yes | ## Status Codes | Code | Use When | |------|----------| | 200 | Success with body | | 201 | Resource created (+ Location header) | | 204 | Success, no body (DELETE) | | 400 | Malformed request | | 401 | Not authenticated | | 403 | Authenticated but forbidden | | 404 | Not found | | 409 | Conflict (duplicate) | | 422 | Valid syntax, invalid semantics | | 429 | Rate limited | ## Error Format ```json {"error": {"code": "VALIDATION_ERROR", "message": "...", "details": [], "request_id": "req_..."}} ``` ## Key Rules - Always paginate lists (cursor-based preferred, max page size enforced) - Never expose sequential IDs — use UUIDs - Auth credentials in headers, never URLs - Return 400 for unknown parameters (catch typos) - Include request_id in every response
GitHub에서 보기