Back to list
dralgorhythm

designing-apis

by dralgorhythm

A More Effective Agent Harness for Claude

4🍴 0📅 Jan 22, 2026

SKILL.md


name: designing-apis description: Design clean, consistent APIs. Use when creating new endpoints, defining contracts, or improving API ergonomics. Covers REST, versioning, and error handling. allowed-tools: Read, Write, Glob, Grep

Designing APIs

Workflows

  • Resources: Identify resources and relationships
  • Endpoints: Define URL structure and methods
  • Request/Response: Define payloads and schemas
  • Errors: Define error responses
  • Document: Create OpenAPI spec

REST Principles

Resource Naming

  • Use nouns, not verbs: /users not /getUsers
  • Use plural: /users not /user
  • Use kebab-case: /user-profiles not /userProfiles
  • Nest for relationships: /users/{id}/orders

HTTP Methods

MethodPurposeIdempotent
GETReadYes
POSTCreateNo
PUTReplaceYes
PATCHUpdateYes
DELETERemoveYes

Status Codes

CodeMeaning
200Success
201Created
204No Content
400Bad Request
401Unauthorized
403Forbidden
404Not Found
409Conflict
422Unprocessable Entity
500Internal Server Error

Error Response Format

{
  "error": {
    "code": "VALIDATION_ERROR",
    "message": "Request validation failed",
    "details": [
      {
        "field": "email",
        "message": "Invalid email format"
      }
    ]
  }
}

Versioning

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

Header Versioning

GET /api/users
Accept: application/vnd.api+json;version=1

Pagination

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

OpenAPI Example

openapi: 3.0.0
info:
  title: Users API
  version: 1.0.0
paths:
  /users:
    get:
      summary: List users
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/User'

Score

Total Score

55/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

0/10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

1ヶ月以内に更新

+10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

+5

Reviews

💬

Reviews coming soon