Agent skill
api-contract-generator
Generates OpenAPI/Swagger schemas for API endpoints. Creates comprehensive API contracts from endpoint implementations, ensuring consistency between code and documentation.
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/other/api-contract-generator
SKILL.md
API Contract Generator Skill
Generates OpenAPI/Swagger schemas for API endpoints, creating comprehensive API contracts from endpoint implementations.
When to Use
- After creating new API endpoints
- When updating existing endpoints
- To ensure API documentation matches implementation
- To generate client SDKs from contracts
Instructions
Step 1: Analyze Endpoint Implementation
-
Read endpoint code:
- Identify route handlers (Next.js App Router, FastAPI, Express, etc.)
- Extract HTTP methods (GET, POST, PUT, DELETE, etc.)
- Identify request/response types
-
Extract route information:
- Path parameters (e.g.,
/api/users/{id}) - Query parameters (e.g.,
?page=1&limit=10) - Request body structure
- Response structure
- Path parameters (e.g.,
-
Identify data models:
- Find TypeScript interfaces or Python Pydantic models
- Extract field types and validation rules
- Identify nested objects and arrays
Step 2: Generate OpenAPI Schema
-
Create OpenAPI 3.0 structure:
yamlopenapi: 3.0.0 info: title: API Name version: 1.0.0 paths: /api/endpoint: get: summary: Endpoint description parameters: [...] responses: { ... } -
Map request/response types:
- Convert TypeScript interfaces to JSON Schema
- Convert Pydantic models to JSON Schema
- Handle nested types and arrays
- Include validation constraints (min, max, pattern, etc.)
-
Add endpoint documentation:
- Extract JSDoc/Python docstrings for descriptions
- Include parameter descriptions
- Document response codes and error cases
Step 3: Validate Schema
-
Schema validation:
- Verify OpenAPI schema is valid
- Check all referenced schemas exist
- Ensure required fields are marked
-
Implementation validation:
- Verify schema matches actual implementation
- Check all endpoints are documented
- Ensure response types match
Step 4: Save Contract
-
Save OpenAPI schema:
- Location:
.claude/context/artifacts/api-contract-{endpoint}.yaml - Or:
docs/api/openapi.yaml(project convention) - Include in artifact registry
- Location:
-
Generate documentation (optional):
- Use Swagger UI or Redoc for visualization
- Generate HTML documentation
- Include in project docs
Supported Frameworks
- Next.js App Router: Analyzes
app/api/**/route.tsfiles - FastAPI: Analyzes Pydantic models and route decorators
- Express: Analyzes route handlers and middleware
- Django REST Framework: Analyzes serializers and viewsets
Example Output
openapi: 3.0.0
info:
title: User API
version: 1.0.0
paths:
/api/users/{id}:
get:
summary: Get user by ID
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: User found
content:
application/json:
schema:
$ref: '#/components/schemas/User'
'404':
description: User not found
components:
schemas:
User:
type: object
properties:
id:
type: string
name:
type: string
email:
type: string
format: email
Related Documentation
- CUJ-010 - API Endpoint Development
- OpenAPI Specification
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
Didn't find tool you were looking for?