Api documentation generator
Skill bg-szy/TOP-SKILLS/skills/marketplace/api-documentation-generator
全球最大的 Claude Code 技能聚合库 · 收录 3900+ 来自 12+ 来源的技能,提供在线搜索与趋势分析看板 / The world's largest Claude Code skill aggregation hub — 3900+ skills from 12+ sources with online search and trend dashboard
npx -y skills add bg-szy/TOP-SKILLS --skill api-documentation-generatorAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 4 stars4 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Generates OpenAPI/Swagger documentation from API route files. Use when working with REST APIs, Express routes, FastAPI endpoints, or when user requests API documentation.
SKILL.md
3.6 KB, as published. Nobody here has run it
API Documentation Generator
This skill automatically generates OpenAPI 3.0 (Swagger) documentation from API route files in your codebase.
When to Use This Skill
- User asks to generate API documentation
- Working with REST API endpoints
- Need to create or update OpenAPI/Swagger specs
- Setting up API documentation for Express, FastAPI, Flask, NestJS, or similar frameworks
Instructions
1. Discover API Routes
Search the codebase for API route definitions:
- Express/Node.js: Look for
app.get(),app.post(),router.get(), etc. - FastAPI/Python: Look for
@app.get(),@router.post(), decorators - Flask: Look for
@app.route()decorators - NestJS: Look for
@Get(),@Post(),@Controller()decorators - Rails: Look for routes in
config/routes.rb
Use Glob to find route files (e.g., **/*routes*.{js,ts,py}, **/controllers/**/*.{js,ts})
2. Analyze Route Patterns
For each discovered route, extract:
- HTTP Method: GET, POST, PUT, PATCH, DELETE
- Path: The endpoint URL (e.g.,
/api/users/:id) - Parameters: Path params, query params, request body
- Response: Expected response structure
- Authentication: Whether auth is required
- Description: Comments or docstrings near the route
3. Generate OpenAPI Specification
Create or update an OpenAPI 3.0 specification file (typically openapi.yaml or swagger.json):
- Start with the template from
templates/openapi-3.0.yaml - Map each route to an OpenAPI path object
- Define request/response schemas using JSON Schema
- Include parameter definitions (path, query, body)
- Add authentication schemes if detected (Bearer, API Key, OAuth2)
- Group endpoints by tags (e.g., "Users", "Products", "Auth")
4. Validate Completeness
Check that the generated documentation includes:
- All discovered endpoints
- Accurate HTTP methods and paths
- Request/response examples where possible
- Error responses (400, 401, 404, 500, etc.)
- Security requirements
5. Output Location
- Save as
openapi.yamlin the project root, or - Place in
docs/orapi/directory if those exist - Ask user for preferred location if unclear
Framework-Specific Notes
Express/Node.js
- Check for route middleware that might affect auth/validation
- Look for request validators (Joi, express-validator, etc.)
- Extract JSDoc comments for endpoint descriptions
FastAPI
- FastAPI auto-generates OpenAPI docs, but this skill can enhance them
- Extract Pydantic models for request/response schemas
- Check for
response_modelandstatus_codeparameters
NestJS
- Look for DTOs (Data Transfer Objects) for schemas
- Check for Swagger decorators (
@ApiOperation,@ApiResponse) - Extract metadata from controller and method decorators
Best Practices
- Use existing schemas: If the codebase has TypeScript interfaces, Pydantic models, or similar, use them for accurate schemas
- Include examples: Add request/response examples from tests if available
- Group logically: Organize endpoints by resource or feature area using tags
- Version appropriately: Use the API version from the codebase (e.g., "1.0.0")
- Add descriptions: Use code comments/docstrings for endpoint descriptions
Supporting Files
templates/openapi-3.0.yaml: Base OpenAPI templateexamples.md: Framework-specific examples