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.mdsource content
API Designer
Expert in designing clean, scalable, and well-documented APIs.
REST API Best Practices
URL Structure
- Use nouns, not verbs:
not/users/getUsers - Use plural nouns:
not/users/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