Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
charon-fan avatar

Api Designer

  • 659 installs
  • 65 repo stars
  • Updated June 21, 2026
  • charon-fan/agent-playbook

api-designer is a Claude Code skill that designs or refines REST and GraphQL APIs with resource-oriented routes, verbs, status codes, and maintainable specs for developers who need robust contracts before coding services

About

api-designer is an agent-playbook skill that acts as a REST and GraphQL API architect for new designs or reviews of existing APIs. It emphasizes resource-oriented routes, correct HTTP verbs, meaningful status codes, and maintainable specifications developers can implement against. The skill allows Read, Write, Edit, Bash, Grep, Glob, WebFetch, and WebSearch, and triggers background hooks for pattern learning and session logging after completion. Reach for api-designer when scaffolding a new service boundary, reviewing an API for scalability, or improving an existing surface before implementation begins.

  • Activates for new API design, API review, improvements, and specification authoring.
  • REST guidance: resource-oriented paths, method safety/idempotency table, and status-code usage.
  • Explicit anti-patterns (e.g., POST /getUsers, redundant /create segments).
  • GraphQL expertise called out alongside REST in the skill description.
  • Playbook hooks suggest post-completion logging and background self-improvement triggers.

Api Designer by the numbers

  • 659 all-time installs (skills.sh)
  • Ranked #542 of 4,386 Backend & APIs skills by installs in the Skillselion catalog
  • Security screen: LOW risk (skills.sh audit)
  • Data as of Jul 28, 2026 (Skillselion catalog sync)
npx skills add https://github.com/charon-fan/agent-playbook --skill api-designer

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs659
repo stars65
Security audit3 / 3 scanners passed
Last updatedJune 21, 2026
Repositorycharon-fan/agent-playbook

How do you design scalable REST and GraphQL APIs?

Design or refine REST and GraphQL APIs with resource-oriented routes, correct HTTP verbs, status codes, and maintainable specs before implementation.

Who is it for?

Backend developers defining or reviewing service APIs who want opinionated REST and GraphQL structure before writing handlers.

Skip if: Teams that only need client SDK generation, database schema design without HTTP surfaces, or automatic OpenAPI codegen from existing code alone.

When should I use this skill?

User asks to design a new API, review REST or GraphQL structure, or improve routes, verbs, and error semantics.

What you get

Resource-oriented route map, HTTP verb matrix, status code guidance, and review notes ready for OpenAPI or schema implementation.

  • API route specification
  • status code matrix
  • design review notes

Files

SKILL.mdMarkdownGitHub ↗

API Designer

Expert in designing REST and GraphQL APIs that are robust, scalable, and maintainable.

When This Skill Activates

Activates when you:

  • Design a new API
  • Review API design
  • Improve existing API
  • Create API specifications

REST API Design Principles

1. Resource-Oriented Design

Good:

GET    /users          # List users
POST   /users          # Create user
GET    /users/{id}     # Get specific user
PATCH  /users/{id}     # Update user
DELETE /users/{id}     # Delete user

Avoid:

POST   /getUsers       # Should be GET
POST   /users/create  # Redundant
GET    /users/get/{id} # Redundant

2. HTTP Methods

MethodSafeIdempotentPurpose
GETRead resource
POSTCreate resource
PUTReplace resource
PATCHUpdate resource
DELETEDelete resource

3. Status Codes

CodeMeaningUsage
200OKSuccessful GET, PATCH, DELETE
201CreatedSuccessful POST
204No ContentSuccessful DELETE with no body
400Bad RequestInvalid input
401UnauthorizedMissing or invalid auth
403ForbiddenAuthenticated but not authorized
404Not FoundResource doesn't exist
409ConflictResource already exists
422UnprocessableValid syntax but semantic errors
429Too Many RequestsRate limit exceeded
500Internal Server ErrorServer error

4. Naming Conventions

  • URLs: kebab-case (/user-preferences)
  • JSON: camelCase ({"userId": "123"})
  • Query params: snake_case or camelCase (?page_size=10)

5. Pagination

GET /users?page=1&page_size=20

Response:
{
  "data": [...],
  "pagination": {
    "page": 1,
    "page_size": 20,
    "total": 100,
    "total_pages": 5
  }
}

6. Filtering and Sorting

GET /users?status=active&sort=-created_at,name

# -created_at = descending
# name = ascending

GraphQL API Design

Schema Design

type Query {
  user(id: ID!): User
  users(limit: Int, offset: Int): UserConnection!
}

type Mutation {
  createUser(input: CreateUserInput!): CreateUserPayload!
  updateUser(id: ID!, input: UpdateUserInput!): UpdateUserPayload!
}

type User {
  id: ID!
  email: String!
  profile: Profile
  posts(first: Int, after: String): PostConnection!
}

type UserConnection {
  edges: [UserEdge!]!
  pageInfo: PageInfo!
}

type UserEdge {
  node: User!
  cursor: String!
}

type PageInfo {
  hasNextPage: Boolean!
  hasPreviousPage: Boolean!
  startCursor: String
  endCursor: String
}

Best Practices

  • Nullability: Default to non-null, nullable only when appropriate
  • Connections: Use cursor-based pagination for lists
  • Payloads: Use mutation payloads for consistent error handling
  • Descriptions: Document all types and fields

API Versioning

Approaches

URL Versioning (Recommended):

/api/v1/users
/api/v2/users

Header Versioning:

GET /users
Accept: application/vnd.myapi.v2+json

Versioning Guidelines

  • Start with v1
  • Maintain backwards compatibility when possible
  • Deprecate old versions with notice
  • Document breaking changes

Authentication & Authorization

Authentication Methods

1. JWT Bearer Token

Authorization: Bearer <token>

2. API Key

X-API-Key: <key>

3. OAuth 2.0

Authorization: Bearer <access_token>

Authorization

  • Use roles/permissions
  • Document required permissions per endpoint
  • Return 403 for authorization failures

Rate Limiting

HTTP/1.1 200 OK
X-RateLimit-Limit: 1000
X-RateLimit-Remaining: 999
X-RateLimit-Reset: 1631234567

Recommended limits:

  • Public APIs: 100-1000 requests/hour
  • Authenticated APIs: 1000-10000 requests/hour
  • Webhooks: 10-100 requests/minute

Documentation Requirements

  • All endpoints documented
  • Request/response examples
  • Authentication requirements
  • Error response formats
  • Rate limits
  • SDK examples (if available)

Scripts

Generate API scaffold:

python scripts/generate_api.py <resource-name>

Validate API design:

python scripts/validate_api.py openapi.yaml

References

Related skills

FAQ

Does api-designer support GraphQL and REST?

api-designer covers both REST and GraphQL API architecture, including resource-oriented routes, HTTP verbs, status codes, and maintainable specifications for new or existing APIs.

When does api-designer activate in agent-playbook?

api-designer activates when designing a new API, reviewing API design, or improving an existing API, with optional background hooks for learning patterns and logging sessions.

Is Api Designer safe to install?

skills.sh reports 3 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.

Backend & APIsbackendintegrations

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.