Skip to content
Development
Command

/api-design

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

From plugin
gsd-skill-creator
6926 skills64 agents26 commands1 MCP
Install
$ npx -y skills add Tibsfox/gsd-skill-creator --agent claude-code

How it fires

How this command gets triggered: by you, by Claude, or both.

  • Fires itselfClaude auto-loads it when your prompt matches the work.
  • You can call itInvoke it directly when you want it.
  • Slash command/api-design

Context preview

What this command does when you run it.

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

Command definition

api-design.md
name: api-design
description: REST API design best practices. Use when designing APIs, choosing status codes, or creating endpoints.

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

{"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
Read more
Ships withgsd-skill-creator

An adaptive learning and coprocessor architecture for Claude Code, built as an extension to GSD (open-gsd)

Get the whole plugin, auto-invoked
Stats
69
Stars
0
Views
9
Forks
Active
Maintenance
TypeScript
Language
19d ago
Last commit
6mo ago
Created

Repo: Tibsfox/gsd-skill-creator