---
name: API Reference Documentation
slug: api-reference-documentation
category: Writing
description: API Reference Documentation creates developer-facing API docs from OpenAPI specs, including endpoints, auth, errors, and examples. Use it for REST API references, SDK docs, and developer portals.
github: "https://github.com/secondsky/claude-skills/tree/main/plugins/api-reference-documentation/skills/api-reference-documentation"
language: TypeScript
stars: 214
forks: 31
install: "npx degit https://github.com/secondsky/claude-skills/tree/main/plugins/api-reference-documentation/skills/api-reference-documentation ~/.claude/skills/api-reference-documentation"
installs_to: ~/.claude/skills/api-reference-documentation
source_path: plugins/api-reference-documentation/skills/api-reference-documentation/SKILL.md
collection_size: 24
category_size: 1144
collection_url: "https://dirskills.com/collections/secondsky/claude-skills"
added: 2026-09-04T05:25:54.521Z
last_synced: 2026-09-04T05:25:54.521Z
canonical_url: "https://dirskills.com/skills/api-reference-documentation"
---

# API Reference Documentation

API Reference Documentation creates developer-facing API docs from OpenAPI specs, including endpoints, auth, errors, and examples. Use it for REST API references, SDK docs, and developer portals.

**Install:**

```bash
npx degit https://github.com/secondsky/claude-skills/tree/main/plugins/api-reference-documentation/skills/api-reference-documentation ~/.claude/skills/api-reference-documentation
```

## README

# API Reference Documentation

Create comprehensive API documentation for developer integration.

## OpenAPI 3.0 Specification

```yaml
openapi: 3.0.3
info:
  title: E-Commerce API
  version: 1.0.0
  description: API for managing products and orders
  contact:
    email: api@example.com

servers:
  - url: https://api.example.com/v1
    description: Production
  - url: https://staging-api.example.com/v1
    description: Staging

security:
  - bearerAuth: []

paths:
  /products:
    get:
      summary: List products
      tags: [Products]
      parameters:
        - name: limit
          in: query
          schema: { type: integer, default: 20 }
        - name: category
          in: query
          schema: { type: string }
      responses:
        '200':
          description: Product list
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductList'

components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

  schemas:
    Product:
      type: object
      required: [id, name, price]
      properties:
        id: { type: string, format: uuid }
        name: { type: string, maxLength: 200 }
        price: { type: number, minimum: 0 }
        description: { type: string }
```

## Documentation Checklist

- [ ] All endpoints documented with examples
- [ ] Authentication methods explained
- [ ] Error responses specified
- [ ] Rate limits documented
- [ ] Pagination explained
- [ ] Webhooks documented (if applicable)
- [ ] SDK examples in multiple languages

## Best Practices

- Use OpenAPI 3.0+ specification
- Include request/response examples
- Document all parameters and headers
- Provide authentication examples
- Enable interactive API exploration
- Maintain version documentation
- Include migration guides for breaking changes

## Tools

- Swagger Editor / Swagger UI
- Redoc
- Postman Documentation
- Stoplight
