← ClaudeAtlas

api-designlisted

REST API design conventions for TypeScript/Node services — resource naming, HTTP method/status-code semantics, success/error response envelopes, offset vs cursor pagination, filtering/sorting/sparse-fieldsets, versioning strategy, and zod boundary validation. Use when designing or reviewing API endpoints and contracts.
SilantevBitcoin/Base-system-Claude · ★ 1 · AI & Automation · score 74
Install: claude install-skill SilantevBitcoin/Base-system-Claude
# REST API Design Patterns Conventions for designing consistent, developer-friendly REST APIs in TypeScript/Node. ## When to Activate - Designing new API endpoints - Reviewing existing API contracts - Adding pagination, filtering, or sorting - Planning an API versioning strategy - Building public or partner-facing APIs > Auth depth (JWT/sessions/OAuth/RBAC) and rate-limiting implementation live in the > dedicated auth and rate-limiting skills — this skill only covers how they appear in > the API contract (status codes, headers). ## Resource Design ### URL Structure ``` # Resources are nouns, plural, lowercase, kebab-case GET /api/v1/users GET /api/v1/users/:id POST /api/v1/users PUT /api/v1/users/:id PATCH /api/v1/users/:id DELETE /api/v1/users/:id # Sub-resources for relationships GET /api/v1/users/:id/orders # Actions that don't map to CRUD (use verbs sparingly) POST /api/v1/orders/:id/cancel POST /api/v1/auth/login ``` ### Naming Rules ``` # GOOD /api/v1/team-members # kebab-case for multi-word resources /api/v1/orders?status=active # query params for filtering /api/v1/users/123/orders # nested resources for ownership # BAD /api/v1/getUsers # verb in URL /api/v1/user # singular (use plural) /api/v1/team_members # snake_case in URLs ``` ## HTTP Methods and Status Codes | Method | Idempotent | Safe | Use For | |--------|-----------|------|---------| | GET | Yes | Yes | Retrieve resources |