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

# API Introduction

> Voice Agent API documentation and authentication guide

## Welcome

The Voiceable.dev API provides a comprehensive interface for managing voice agents, integrations, conversations, campaigns, and API keys. This API enables you to build powerful voice-enabled applications with ease.

All endpoints are documented below with interactive examples, request/response schemas, and detailed parameter descriptions. Use the navigation menu to explore endpoints by category.

## Base URLs

The API is available at the following base URLs:

* **Production**: `https://api.example.com/api/v1`
* **Development**: `http://localhost:3000/api/v1`

## Authentication

The Voice Agent API supports two authentication methods:

### JWT Token Authentication

For web applications, use JWT token authentication by including the token in the `Authorization` header:

```bash theme={null}
Authorization: Bearer <jwt_token>
```

### API Key Authentication

For programmatic access, you can use API keys. API keys can be provided in two ways:

**Option 1: X-API-Key header**

```bash theme={null}
X-API-Key: <api_key>
```

**Option 2: Bearer token format**

```bash theme={null}
Authorization: Bearer <api_key>
```

<Warning>
  When using API keys, users can only access their own data. All endpoints automatically filter results to the authenticated user's resources.
</Warning>

## Response Format

All API responses follow a consistent structure:

```json theme={null}
{
  "status": {
    "code": 200,
    "message": "Success"
  },
  "data": {
    // Response data
  }
}
```

## Error Handling

Errors are returned in the following format:

```json theme={null}
{
  "status": {
    "code": 400,
    "message": "Bad Request"
  },
  "error": "Error message",
  "errors": ["Detailed error messages"],
  "details": "Additional error details"
}
```

## Rate Limiting

API rate limits apply to prevent abuse. Rate limit information is included in response headers:

* `X-RateLimit-Limit`: Maximum number of requests allowed
* `X-RateLimit-Remaining`: Number of requests remaining
* `X-RateLimit-Reset`: Time when the rate limit resets

## Getting Started

1. **Get your API key**: Create an API key from your dashboard or use JWT authentication
2. **Make your first request**: Try the [List Agents](#) endpoint in the Agents section
3. **Explore the API**: Browse the available endpoints organized by category in the sidebar

## API Endpoints

All endpoints are organized by category. Click on any endpoint in the navigation menu to view:

* Interactive "Try it" functionality to test endpoints
* Detailed parameter descriptions with examples
* Request/response schemas
* Code examples in multiple languages
* Error response documentation

### Available Endpoint Categories

<CardGroup cols={2}>
  <Card title="Agents" icon="robot" href="#agents">
    Create, manage, and configure voice agents. Includes endpoints for listing, creating, updating, and deleting agents.
  </Card>

  <Card title="Integrations" icon="plug" href="#integrations">
    Configure third-party service integrations like ElevenLabs, OpenAI, and Anthropic.
  </Card>

  <Card title="API Keys" icon="key" href="#api-keys">
    Manage API keys for secure programmatic access with configurable permissions.
  </Card>

  <Card title="Conversations" icon="comments" href="#conversations">
    Access conversation data, transcripts, and metadata with advanced filtering options.
  </Card>

  <Card title="Campaigns" icon="bullhorn" href="#campaigns">
    Create and manage voice campaigns for bulk outreach to multiple recipients.
  </Card>
</CardGroup>

## Interactive API Explorer

Each endpoint includes an interactive API explorer where you can:

* Test endpoints directly from the documentation
* Fill in parameters and see real-time request examples
* View response schemas and examples
* Copy code snippets in your preferred language

Navigate to any endpoint in the sidebar to get started!
