api-patterns

api-patterns

Popular

API design principles and decision-making. REST vs GraphQL vs tRPC selection, response formats, versioning, pagination.

1.1Kstars
196forks
Updated 1/21/2026
SKILL.md
readonlyread-only
name
api-patterns
description

API design principles and decision-making. REST vs GraphQL vs tRPC selection, response formats, versioning, pagination.

API Patterns

API design principles and decision-making for 2025.
Learn to THINK, not copy fixed patterns.

🎯 Selective Reading Rule

Read ONLY files relevant to the request! Check the content map, find what you need.


πŸ“‘ Content Map

File Description When to Read
api-style.md REST vs GraphQL vs tRPC decision tree Choosing API type
rest.md Resource naming, HTTP methods, status codes Designing REST API
response.md Envelope pattern, error format, pagination Response structure
graphql.md Schema design, when to use, security Considering GraphQL
trpc.md TypeScript monorepo, type safety TS fullstack projects
versioning.md URI/Header/Query versioning API evolution planning
auth.md JWT, OAuth, Passkey, API Keys Auth pattern selection
rate-limiting.md Token bucket, sliding window API protection
documentation.md OpenAPI/Swagger best practices Documentation
security-testing.md OWASP API Top 10, auth/authz testing Security audits

πŸ”— Related Skills

Need Skill
API implementation @[skills/backend-development]
Data structure @[skills/database-design]
Security details @[skills/security-hardening]

βœ… Decision Checklist

Before designing an API:

  • [ ] Asked user about API consumers?
  • [ ] Chosen API style for THIS context? (REST/GraphQL/tRPC)
  • [ ] Defined consistent response format?
  • [ ] Planned versioning strategy?
  • [ ] Considered authentication needs?
  • [ ] Planned rate limiting?
  • [ ] Documentation approach defined?

❌ Anti-Patterns

DON'T:

  • Default to REST for everything
  • Use verbs in REST endpoints (/getUsers)
  • Return inconsistent response formats
  • Expose internal errors to clients
  • Skip rate limiting

DO:

  • Choose API style based on context
  • Ask about client requirements
  • Document thoroughly
  • Use appropriate status codes

Script

Script Purpose Command
scripts/api_validator.py API endpoint validation python scripts/api_validator.py <project_path>

You Might Also Like

Related Skills

gog

gog

169Kdev-api

Google Workspace CLI for Gmail, Calendar, Drive, Contacts, Sheets, and Docs.

openclaw avataropenclaw
Get
weather

weather

169Kdev-api

Get current weather and forecasts (no API key required).

openclaw avataropenclaw
Get

Guide for implementing oRPC contract-first API patterns in Dify frontend. Triggers when creating new API contracts, adding service endpoints, integrating TanStack Query with typed contracts, or migrating legacy service calls to oRPC. Use for all API layer work in web/contract and web/service directories.

langgenius avatarlanggenius
Get
blucli

blucli

92Kdev-api

BluOS CLI (blu) for discovery, playback, grouping, and volume.

moltbot avatarmoltbot
Get
ordercli

ordercli

92Kdev-api

Foodora-only CLI for checking past orders and active order status (Deliveroo WIP).

moltbot avatarmoltbot
Get
gifgrep

gifgrep

92Kdev-api

Search GIF providers with CLI/TUI, download results, and extract stills/sheets.

moltbot avatarmoltbot
Get