api-patterns

xenitV1's avatarfrom xenitV1

REST API design patterns including resource naming, HTTP methods, status codes, versioning, pagination, and response formats. Use when designing or implementing APIs.

62stars🔀15forks📁View on GitHub🕐Updated Jan 2, 2026

When & Why to Use This Skill

This Claude skill provides expert guidance on modern API design patterns, enabling developers to architect scalable and maintainable interfaces. It facilitates critical decision-making between REST, GraphQL, and tRPC protocols while ensuring industry best practices for resource naming, versioning, pagination, and security are strictly followed.

Use Cases

  • Architectural Decision Making: Evaluating project requirements to choose the most suitable API style (REST, GraphQL, or tRPC) for specific use cases and client needs.
  • Standardizing Response Structures: Implementing consistent envelope patterns, error formats, and pagination strategies across microservices to improve developer experience.
  • API Lifecycle & Evolution: Planning robust versioning strategies (URI, Header, or Query) and documentation workflows using OpenAPI/Swagger to ensure long-term maintainability.
  • Security & Performance Optimization: Designing secure authentication patterns (JWT, OAuth) and implementing rate-limiting mechanisms like token buckets to protect API integrity.
nameapi-patterns
descriptionAPI design principles and decision-making. REST vs GraphQL vs tRPC selection, response formats, versioning, pagination.
allowed-toolsRead, Write, Edit, Glob, Grep

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>