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

# Voice API

> Place and supervise calls, read transcripts and latency, run automations — 65 tenant endpoints on api.voice.stateset.com, generated from the server's own OpenAPI.

The Voice API drives StateSet Voice for one tenant: place calls, supervise live sessions,
read what happened on each call, and run the automations that follow up on it.

|          |                                                                            |
| -------- | -------------------------------------------------------------------------- |
| Base URL | `https://api.voice.stateset.com/api/v1`                                    |
| Auth     | `Authorization: Bearer stsk_<tenant>_<key-id>_<secret>` — a tenant API key |
| Spec     | `GET /api-docs/openapi.json` — the server publishes its own document       |

<Note>
  This reference is the **tenant surface**: the 65 operations a tenant API key can call, read from
  the document the server publishes. The server also exposes an admin surface (60 operations behind
  an admin key or console session) and the Twilio-signed webhook receivers; those are operated by
  StateSet, not called by integrators, and are not listed here. Agent and phone-number management
  is documented under [Voice API](/stateset-voice/api) and the [MCP server](/stateset-voice/mcp-server).
</Note>

## Where to start

<CardGroup cols={2}>
  <Card title="Place a call" icon="phone-outgoing" href="/api-reference/voice/calls/make-call-create">
    A real outbound PSTN call. DNC and quiet-hours policy apply; a blocked call returns `403`.
  </Card>

  <Card title="Read the transcript" icon="file-lines" href="/api-reference/voice/call_logs/call-logs-by-get">
    One call in full — status, duration, transcript, summary, outcome.
  </Card>

  <Card title="Watch latency" icon="gauge" href="/api-reference/voice/call_logs/call-logs-latency-list">
    p50/p95 voice response latency. The first place to look when a call feels slow.
  </Card>

  <Card title="Supervise a live session" icon="headset" href="/api-reference/voice/sessions/sessions-by-actions-by-create">
    Monitor, whisper, barge, escalate or end a call in progress.
  </Card>
</CardGroup>

## How the pieces fit

1. **Calls** start a conversation — outbound (`POST /make-call`), inbound SIP, or a translation
   call that interprets between two languages live.
2. **Sessions** are the live leg. Supervisor actions act on a session by its stream id.
3. **Voice outcomes** are what the model concluded per session — read them by session, by stream,
   as stats, or as a time series.
4. **Call logs** are the durable record: transcript, summary, outcome, and the latency statistics
   across a tenant's calls.
5. **Automations** run afterwards — an SMS or email follow-up, an escalation call, a callback
   task for a human.

<Tip>
  `POST /voice/calls` (documented under [Voice API](/stateset-voice/api)) is the hardened form of
  `POST /make-call`: it takes an `Idempotency-Key`, so a retry within 24 hours replays the stored
  outcome instead of dialling again. Prefer it for anything automated.
</Tip>

## Related

* [Voice MCP server](/stateset-voice/mcp-server) — the same tenant surface as 24 agent tools
* [Voice webhooks](/stateset-voice/webhooks) — events the platform sends you
* [Voice operations](/stateset-voice/operations) — latency, alerts, and what to do about them
