github-docs-arabic-enhanced / content /copilot /tutorials /customization-library /prompt-files /document-api.md
| title: Document API | |
| intro: 'Generate comprehensive API documentation from your code.' | |
| versions: | |
| feature: copilot | |
| category: | |
| - Prompt files | |
| - Development workflows | |
| - Configure Copilot | |
| complexity: | |
| - Advanced | |
| octicon: copilot | |
| topics: | |
| - Copilot | |
| contentType: tutorials | |
| {% data reusables.copilot.prompt-files-preview-note %} | |
| This prompt file generates OpenAPI 3.0 specifications for REST API endpoints by analyzing your API code and creating standardized, machine-readable documentation. | |
| ## OpenAPI specification prompt | |
| ```text copy | |
| --- | |
| mode: 'agent' | |
| description: 'Generate OpenAPI 3.0 specification for API endpoints' | |
| --- | |
| ## Task | |
| Analyze the API endpoint code and generate a valid OpenAPI 3.0 specification in YAML format. | |
| ## OpenAPI Structure | |
| Generate a complete OpenAPI spec including: | |
| 1. **OpenAPI Header** | |
| - OpenAPI version (3.0.3) | |
| - API info (title, description, version) | |
| - Server configuration | |
| 2. **Path Definitions** | |
| - HTTP method and path | |
| - Operation summary and description | |
| - Tags for organization | |
| 3. **Parameters Schema** | |
| - Path parameters with type validation | |
| - Query parameters with constraints and defaults | |
| - Request body schema using proper JSON Schema | |
| - Required vs optional parameters | |
| 4. **Response Schemas** | |
| - Success responses (200, 201, etc.) with schema definitions | |
| - Error responses (400, 401, 404, 500) with error schema | |
| - Content-Type specifications | |
| - Realistic example values | |
| 5. **Components Section** | |
| - Reusable schemas for request/response models | |
| - Security schemes (Bearer token, API key, etc.) | |
| - Common parameter definitions | |
| ## Requirements | |
| - Generate valid OpenAPI 3.0.3 YAML that passes validation | |
| - Use proper JSON Schema for all data models | |
| - Include realistic example values, not placeholders | |
| - Define reusable components to avoid duplication | |
| - Add appropriate data validation (required fields, formats, constraints) | |
| - Include security requirements where applicable | |
| Focus on: ${input:endpoint_focus:Which specific endpoint or endpoints should be documented?} | |
| Generate production-ready OpenAPI specification that can be used with Swagger UI, Postman, and code generators. | |
| ``` | |
| ## How to use this prompt file | |
| 1. Save the above content as `document-api.prompt.md` in your `.github/prompts` folder. | |
| 1. In {% data variables.product.prodname_vscode %}, display the {% data variables.copilot.copilot_chat_short %} view and enter `/document-api`. Optionally, you can also specify what specific endpoint you want documentation for by typing `endpoint_focus=GET /activities`, for example. | |
| {% data reusables.copilot.prompt-files-further-reading %} | |