Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsCommunityBlog
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

Back to skills

Api Documentation Writer

ASecurity

Generate comprehensive API documentation including endpoint descriptions, request/response examples, authentication guides, error codes, and SDKs. Creates OpenAPI/Swagger specs, REST API docs, and developer-friendly reference materials. Use when users need to document APIs, create technical references, or write developer documentation.

282 stars
0 votes
0 copies
0 views
Added 6/6/2026
ai-agentsjavascriptpythongojavabashnodetestingapisecuritydocumentation

Works with

cliapi

Security Analysis

A100/100

Scanned 6/6/2026

Install to Claude Code

$npx -y skills add OneWave-AI/claude-skills --skill api-documentation-writer --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Api Documentation Writer?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Api Documentation Writer
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/onewave-ai-api-documentation-writer/badge)](https://www.skillsdirectory.com/skills/onewave-ai-api-documentation-writer)

More formats (shields.io, HTML) on the badges page.

Download Zip
Files
SKILL.md
---
name: api-documentation-writer
description: Generate comprehensive API documentation including endpoint descriptions, request/response examples, authentication guides, error codes, and SDKs. Creates OpenAPI/Swagger specs, REST API docs, and developer-friendly reference materials. Use when users need to document APIs, create technical references, or write developer documentation.
---

# API Documentation Writer

Create comprehensive, developer-friendly API documentation.

## Instructions

When a user needs API documentation:

1. **Gather API Information**:
   - API type (REST, GraphQL, WebSocket, gRPC)?
   - Authentication method (API key, OAuth, JWT)?
   - Base URL and versioning strategy?
   - Available endpoints and their purposes?
   - Request/response formats?
   - Rate limiting or usage restrictions?

2. **Generate Complete Documentation Structure**:

   **Overview Section**:
   - What the API does (1-2 sentences)
   - Key capabilities
   - Getting started checklist
   - Support and resources

   **Authentication**:
   - How to obtain credentials
   - Where to include auth tokens
   - Example authenticated request
   - Token refresh process (if applicable)

   **Base URL & Versioning**:
   - Production and sandbox URLs
   - Version format (path, header, query param)
   - Current version and changelog link

   **Endpoints** (for each endpoint):
   - HTTP method and path
   - Description of what it does
   - Path parameters
   - Query parameters
   - Request headers
   - Request body schema
   - Response codes and meanings
   - Response body schema
   - Example request (curl, JavaScript, Python)
   - Example response (formatted JSON)

   **Error Handling**:
   - Standard error response format
   - Common error codes and meanings
   - Troubleshooting guide

   **Rate Limiting**:
   - Limits and windows
   - Headers to check
   - How to handle rate limit errors

   **SDKs & Libraries**:
   - Official client libraries
   - Community libraries
   - Installation instructions

   **Webhooks** (if applicable):
   - Available webhook events
   - Setup process
   - Payload examples
   - Security verification

3. **Format Output** (REST API example):
   ```markdown
   # [API Name] Documentation

   ## Overview

   [Brief description of what the API does]

   **Base URL**: `https://api.example.com/v1`

   **Authentication**: API Key via `Authorization` header

   ## Quick Start

   1. [Step 1]
   2. [Step 2]
   3. [Step 3]

   ## Authentication

   All requests require an API key in the `Authorization` header:

   ```
   Authorization: Bearer YOUR_API_KEY
   ```

   Get your API key from [dashboard link].

   ## Endpoints

   ### GET /resource

   Retrieve a list of resources.

   **Parameters**:
   - `limit` (optional, integer): Number of results (max 100, default 10)
   - `offset` (optional, integer): Pagination offset (default 0)
   - `filter` (optional, string): Filter by field

   **Request Example**:
   ```bash
   curl -X GET "https://api.example.com/v1/resource?limit=10" \
     -H "Authorization: Bearer YOUR_API_KEY"
   ```

   **Response** (200 OK):
   ```json
   {
     "data": [
       {
         "id": "123",
         "name": "Example",
         "created_at": "2024-01-15T10:00:00Z"
       }
     ],
     "total": 100,
     "limit": 10,
     "offset": 0
   }
   ```

   **Response Codes**:
   - `200` - Success
   - `400` - Bad request (invalid parameters)
   - `401` - Unauthorized (invalid API key)
   - `429` - Rate limit exceeded
   - `500` - Server error

   ### POST /resource

   Create a new resource.

   **Request Body**:
   ```json
   {
     "name": "string (required)",
     "description": "string (optional)",
     "metadata": "object (optional)"
   }
   ```

   **Request Example**:
   ```bash
   curl -X POST "https://api.example.com/v1/resource" \
     -H "Authorization: Bearer YOUR_API_KEY" \
     -H "Content-Type: application/json" \
     -d '{
       "name": "My Resource",
       "description": "A test resource"
     }'
   ```

   **Response** (201 Created):
   ```json
   {
     "id": "124",
     "name": "My Resource",
     "description": "A test resource",
     "created_at": "2024-01-15T10:30:00Z"
   }
   ```

   ## Error Handling

   All errors follow this format:

   ```json
   {
     "error": {
       "code": "invalid_request",
       "message": "The 'name' field is required",
       "details": {
         "field": "name"
       }
     }
   }
   ```

   **Common Error Codes**:
   - `invalid_request` - Malformed request
   - `authentication_failed` - Invalid API key
   - `not_found` - Resource doesn't exist
   - `rate_limit_exceeded` - Too many requests
   - `internal_error` - Server error

   ## Rate Limiting

   **Limits**: 1000 requests per hour

   **Headers**:
   - `X-RateLimit-Limit`: Total requests allowed
   - `X-RateLimit-Remaining`: Requests remaining
   - `X-RateLimit-Reset`: Timestamp when limit resets

   When rate limited, you'll receive a `429` status code.

   ## Code Examples

   ### JavaScript (Node.js)
   ```javascript
   const response = await fetch('https://api.example.com/v1/resource', {
     headers: {
       'Authorization': 'Bearer YOUR_API_KEY'
     }
   });
   const data = await response.json();
   ```

   ### Python
   ```python
   import requests

   response = requests.get(
     'https://api.example.com/v1/resource',
     headers={'Authorization': 'Bearer YOUR_API_KEY'}
   )
   data = response.json()
   ```

   ## Support

   - Documentation: https://docs.example.com
   - Support: support@example.com
   - Status: https://status.example.com
   ```

4. **For GraphQL APIs**, adapt to show:
   - Schema definitions
   - Query examples
   - Mutation examples
   - Subscription examples
   - Variables and directives

5. **Documentation Best Practices**:
   - Start with working example (copy-paste ready)
   - Show both request and response
   - Use realistic example data
   - Include error cases
   - Explain every parameter
   - Provide code examples in multiple languages
   - Use consistent formatting
   - Add "Try it" interactive examples when possible
   - Link related endpoints
   - Include changelog and versioning

6. **Developer Experience Tips**:
   - Include a "Quick Start" with working example in 60 seconds
   - Provide Postman collection or OpenAPI spec
   - Show common use cases and workflows
   - Include troubleshooting section
   - Add testing/sandbox environment
   - Provide SDKs with installation instructions
   - Include rate limiting details upfront
   - Show pagination patterns
   - Explain filtering and sorting options

## Example Triggers

- "Write API documentation for my REST endpoints"
- "Create OpenAPI spec for my API"
- "Document this GraphQL schema"
- "Generate developer docs for my webhook API"
- "Write authentication guide for API"

## Output Quality

Ensure documentation:
- Starts with working example
- Explains every parameter and field
- Shows realistic request/response examples
- Includes error handling
- Provides code samples in multiple languages
- Uses consistent formatting
- Is organized logically (most common operations first)
- Includes authentication clearly
- Covers edge cases and limitations
- Follows REST/GraphQL best practices
- Is scannable with good use of headers
- Includes interactive examples when possible

Generate comprehensive, developer-friendly API documentation that makes integration effortless.

Attribution

OneWave-AIOneWave-AI
View sourceMore from OneWave-AI →
SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Related Skills

Caveman

Ultra-compressed communication mode that cuts output tokens while keeping technical accuracy. Levels: lite, full, ultra and the wenyan variants. Use for /caveman, "caveman mode", "talk like caveman", "be brief" or "less tokens".

1066601 votes

Hyperplan

Adversarial multi-agent planning skill. Self-orchestrates 5 hostile category members (unspecified-low, unspecified-high, deep, ultrabrain, artistry) via team-mode for ruthless cross-critique debate, distills only the defensible insights, then MANDATORILY hands the distilled insight bundle to the `plan` agent for executable plan formalization. Use when planning needs maximum rigor and surfacing of weak assumptions, blind spots, and over-engineering. Triggers: 'hyperplan', 'hpp', '/hyperplan', ...

686011 votes

Mcp Code Execution

Routes multi-tool workflows through MCP servers for large datasets and pipelines. Use when Bash tool overhead is limiting throughput on data-heavy tasks.

3351 votes

catchup

Recovers the conversation and failed tool calls of a previous Codex, Claude Code, Antigravity, Cline, Copilot CLI, Cursor, DeepSeek Harness, Kimi, OpenCode, Pi Agent, or ZCode session. Use when the user says "catch up", "what did the last session do", "get me up to speed", "I switched agents", asks to recover/summarize a previous session before continuing, or asks to diagnose or report a catchup failure. Do NOT use for the current conversation, git history, or any non-agent log.

651 votes

math-skill

A comprehensive mathematical reasoning skill for AI assistants — handles arithmetic to research-level problems with rigorous step-by-step reasoning, systematic verification, and transparent uncertainty handling

381 votes
View all in ai-agents →