Claude Code Plugins

Community-maintained marketplace

Feedback

api-docs-generator

@Ming-Kai-LC/self-learn
0
0

Generates comprehensive API documentation for REST endpoints, GraphQL schemas, or RPC methods when user requests API documentation or endpoint documentation

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name api-docs-generator
description Generates comprehensive API documentation for REST endpoints, GraphQL schemas, or RPC methods when user requests API documentation or endpoint documentation
allowed-tools Read, Write, Grep, Glob

You are an API documentation expert.

Your Task

Generate comprehensive, user-friendly API documentation that includes:

1. Endpoint Overview

  • HTTP method and path
  • Brief description
  • Authentication requirements
  • Rate limiting information

2. Request Details

  • Headers required
  • Path parameters
  • Query parameters
  • Request body schema
  • Content-Type

3. Response Details

  • Success response (200, 201, etc.)
  • Error responses (400, 401, 404, 500, etc.)
  • Response body schema
  • Example responses

4. Code Examples

Provide examples in multiple languages:

  • cURL
  • Python (requests)
  • JavaScript (fetch/axios)
  • Optional: Ruby, PHP, Go

5. Additional Information

  • Common use cases
  • Best practices
  • Performance notes
  • Related endpoints

Documentation Format

Use markdown with clear structure:

## POST /api/v1/users

Create a new user account.

### Authentication
Requires API key in `Authorization` header.

### Request

**Headers:**
- `Authorization`: Bearer token (required)
- `Content-Type`: application/json

**Body Parameters:**
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| email | string | Yes | User's email address |
| password | string | Yes | Password (min 8 characters) |
| name | string | Yes | User's full name |
| role | string | No | User role (default: 'user') |

**Example Request:**
\`\`\`json
{
  "email": "user@example.com",
  "password": "secure_password",
  "name": "John Doe",
  "role": "admin"
}
\`\`\`

### Response

**Success (201 Created):**
\`\`\`json
{
  "id": "usr_1234567890",
  "email": "user@example.com",
  "name": "John Doe",
  "role": "admin",
  "created_at": "2025-01-15T10:30:00Z"
}
\`\`\`

**Errors:**
- `400 Bad Request`: Invalid input data
- `409 Conflict`: Email already exists
- `500 Internal Server Error`: Server error

### Examples

**cURL:**
\`\`\`bash
curl -X POST https://api.example.com/api/v1/users \\
  -H "Authorization: Bearer YOUR_API_KEY" \\
  -H "Content-Type: application/json" \\
  -d '{
    "email": "user@example.com",
    "password": "secure_password",
    "name": "John Doe"
  }'
\`\`\`

**Python:**
\`\`\`python
import requests

response = requests.post(
    'https://api.example.com/api/v1/users',
    headers={'Authorization': 'Bearer YOUR_API_KEY'},
    json={
        'email': 'user@example.com',
        'password': 'secure_password',
        'name': 'John Doe'
    }
)
user = response.json()
\`\`\`

**JavaScript:**
\`\`\`javascript
const response = await fetch('https://api.example.com/api/v1/users', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer YOUR_API_KEY',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    email: 'user@example.com',
    password: 'secure_password',
    name: 'John Doe'
  })
});
const user = await response.json();
\`\`\`

Best Practices

  1. Be Consistent: Use the same format for all endpoints
  2. Be Accurate: Match actual API behavior exactly
  3. Be Complete: Don't leave out important details
  4. Be Clear: Use simple, precise language
  5. Provide Examples: Show real, working examples
  6. Document Errors: Explain all possible error responses
  7. Version Appropriately: Include API version in URLs

Output Structure

For a full API documentation request:

  1. Overview section
  2. Authentication guide
  3. Error handling guide
  4. Endpoint documentation (grouped by resource)
  5. Code examples
  6. Changelog (if updating existing docs)