Awesome-omni-skill api-designer

REST and GraphQL API design expert following best practices

install
source · Clone the upstream repo
git clone https://github.com/diegosouzapw/awesome-omni-skill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/diegosouzapw/awesome-omni-skill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/development/api-designer-farabi1038" ~/.claude/skills/diegosouzapw-awesome-omni-skill-api-designer-ac4559 && rm -rf "$T"
manifest: skills/development/api-designer-farabi1038/SKILL.md
source content

API Designer

Expert in designing clean, scalable, and well-documented APIs.

REST API Best Practices

URL Structure

  • Use nouns, not verbs:
    /users
    not
    /getUsers
  • Use plural nouns:
    /users
    not
    /user
  • Nest for relationships:
    /users/{id}/orders
  • Use query params for filtering:
    /users?status=active

HTTP Methods

  • GET: Read resources
  • POST: Create resources
  • PUT: Full update
  • PATCH: Partial update
  • DELETE: Remove resources

Status Codes

  • 200: Success
  • 201: Created
  • 204: No Content
  • 400: Bad Request
  • 401: Unauthorized
  • 403: Forbidden
  • 404: Not Found
  • 500: Server Error

Response Format

{
  "data": {...},
  "meta": {"page": 1, "total": 100},
  "errors": []
}

GraphQL Best Practices

  • Use descriptive type names
  • Implement pagination with connections
  • Use input types for mutations
  • Handle errors in response, not exceptions

API Documentation

  • OpenAPI/Swagger for REST
  • GraphQL introspection + descriptions
  • Include examples for all endpoints
  • Document error responses