> ## Documentation Index
> Fetch the complete documentation index at: https://docs.videodb.io/llms.txt
> Use this file to discover all available pages before exploring further.

# API Reference

> REST API for video processing, AI generation, and semantic search

Complete REST API for VideoDB - the serverless video database.

**Base URL:** `https://api.videodb.io`

## Authentication

All requests require an API key in the `x-access-token` header.

```bash theme={null}
curl -H "x-access-token: your_api_key" https://api.videodb.io/collection
```

## API Groups

<CardGroup cols={3}>
  <Card icon="key" title="Authentication" href="/api-reference/authentication/index">
    API keys and user account
  </Card>

  <Card icon="folder" title="Collections" href="/api-reference/collections/index">
    Organize media content
  </Card>

  <Card icon="video" title="Videos" href="/api-reference/videos/index">
    Core video operations
  </Card>

  <Card icon="play" title="Streaming & Playback" href="/api-reference/videos/streaming/index">
    Generate streams and thumbnails
  </Card>

  <Card icon="book" title="Transcription" href="/api-reference/videos/transcription/index">
    Speech-to-text transcripts
  </Card>

  <Card icon="search" title="Indexing & Search" href="/api-reference/videos/indexing/index">
    Semantic search capabilities
  </Card>

  <Card icon="eye" title="Scene & Frame Analysis" href="/api-reference/videos/scenes/index">
    Computer vision analysis
  </Card>

  <Card icon="wrench" title="Advanced Operations" href="/api-reference/videos/advanced/index">
    Video clipping and workflows
  </Card>

  <Card icon="music" title="Audio" href="/api-reference/audio/index">
    Audio file management
  </Card>

  <Card icon="image" title="Images" href="/api-reference/images/index">
    Image management
  </Card>

  <Card icon="wand" title="AI Generation" href="/api-reference/generation/index">
    Generate media with AI
  </Card>

  <Card icon="clock" title="Timeline & Compilation" href="/api-reference/timeline/index">
    Programmatic video editing
  </Card>

  <Card icon="credit-card" title="Billing" href="/api-reference/billing/index">
    Usage and billing
  </Card>

  <Card icon="download" title="Downloads" href="/api-reference/downloads/index">
    Export video files
  </Card>

  <Card icon="wrench" title="Utilities" href="/api-reference/utilities/index">
    System utilities
  </Card>

  <Card icon="database" title="Assets" href="/api-reference/assets/index">
    Browse all media assets
  </Card>

  <Card icon="film" title="Editor" href="/api-reference/editor/index">
    Visual editor compilation
  </Card>

  <Card icon="bolt" title="Transcode" href="/api-reference/transcode/index">
    Video format conversion
  </Card>

  <Card icon="users" title="Meeting" href="/api-reference/meeting/index">
    Meeting recording
  </Card>

  <Card icon="video" title="Capture" href="/api-reference/capture/index">
    Real-time media capture
  </Card>

  <Card icon="play" title="RTStream" href="/api-reference/rtstream/index">
    Live stream processing
  </Card>

  <Card icon="volume" title="RTStream Transcription" href="/api-reference/rtstream/transcription/index">
    Real-time transcription
  </Card>

  <Card icon="eye" title="RTStream Scene Indexing" href="/api-reference/rtstream/scene-indexing/index">
    Real-time visual analysis
  </Card>

  <Card icon="bell" title="RTStream Events & Alerts" href="/api-reference/rtstream/events-alerts/index">
    Event detection and alerts
  </Card>
</CardGroup>

## Response Format

All responses follow this structure:

```json theme={null}
{
  "success": true,
  "data": { }
}
```

## Error Codes

| Code  | Description                |
| ----- | -------------------------- |
| `400` | Invalid request parameters |
| `401` | Invalid or missing API key |
| `404` | Resource not found         |
| `429` | Rate limit exceeded        |
| `500` | Internal server error      |

## SDKs

<CardGroup cols={2}>
  <Card icon="python" title="Python SDK" href="https://github.com/video-db/videodb-python">
    ```bash theme={null}
    pip install videodb
    ```
  </Card>

  <Card icon="node-js" title="Node.js SDK" href="https://github.com/video-db/videodb-node">
    ```bash theme={null}
    npm install videodb
    ```
  </Card>
</CardGroup>
