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

# Introduction

> Overview of the Sayvy AI REST API architecture and developer platform

# Sayvy AI API Reference

Welcome to the Sayvy AI REST API reference. The Sayvy AI API enables developers to programmatically create and configure conversational AI voice agents, dispatch outbound calling campaigns, manage multi-channel messaging (WhatsApp & SMS), stream real-time WebRTC audio, and configure webhook delivery.

<CardGroup cols={2}>
  <Card title="Authentication" icon="key" href="/api-reference/authentication">
    Generate and manage scoped API keys to secure your requests.
  </Card>

  <Card title="Pagination" icon="ellipsis" href="/api-reference/pagination">
    Learn how list endpoints handle cursor-based and offset pagination.
  </Card>

  <Card title="Rate Limiting" icon="gauge-high" href="/api-reference/rate-limiting">
    Understand concurrency limits, request quotas, and backoff headers.
  </Card>

  <Card title="Errors & Status Codes" icon="triangle-exclamation" href="/api-reference/errors">
    Standard error payloads and HTTP status code reference.
  </Card>
</CardGroup>

## Base URLs

The Sayvy AI API is served over secure HTTPS. All requests must use TLS 1.3 or higher.

| Environment           | Base URL                              | Usage                       |
| :-------------------- | :------------------------------------ | :-------------------------- |
| **Production**        | `https://api.sayvy.ai/api/v1`         | Live production workloads   |
| **Staging / Sandbox** | `https://sandbox-api.sayvy.ai/api/v1` | Pre-production testing      |
| **Local Development** | `http://localhost:8000/api/v1`        | Self-hosted backend testing |

```bash theme={null}
# Health check endpoint
curl -X GET https://api.sayvy.ai/api/v1/health \
  -H "Authorization: Bearer sayvy_sk_live_your_api_key"
```

## Content Types & Character Encoding

* **Request Format**: All `POST`, `PUT`, and `PATCH` request bodies must be JSON encoded with the header `Content-Type: application/json`.
* **Response Format**: All responses are returned as `application/json; charset=utf-8`.
* **Timestamps**: All timestamps in requests and responses adhere to ISO 8601 UTC standard (`YYYY-MM-DDTHH:MM:SSZ`).

```json theme={null}
{
  "id": "call_9f82a1b7e",
  "status": "completed",
  "agent_id": "ag_4d98a2f1c",
  "duration_seconds": 142,
  "created_at": "2026-09-03T12:00:00Z"
}
```

## Core Resources

The API is structured around predictable REST resources:

* **Voice Agents**: Configure system prompts, TTS voices (ElevenLabs, Cartesia, Deepgram), tools, and interruption rules.
* **Calls & Telephony**: Dispatch real-time telephony calls via Twilio / SIP trunks or spin up ephemeral WebRTC rooms.
* **Campaigns**: Batch-dispatch outbound calls or messages across lead lists with concurrency pacing.
* **Webhooks**: Subscribe to real-time events (`call.started`, `call.transcribed`, `call.ended`, `campaign.completed`).

<Tip>
  Need to create your first API key? Continue to the [Authentication](/api-reference/authentication) guide.
</Tip>
