---
title: "Place a call"
method: POST
path: "/calls"
tags: ["Calls"]
---

# Place a call

`POST /calls`

## Request

- Base URL: `https://api.crevio.co/v1`
- URL: `https://api.crevio.co/v1/calls`
- Auth: API key in header `Authorization`

Places an autonomous outbound phone call. An AI voice agent dials the number and pursues the objective, acting on account data mid-call. Only call numbers that have consented to be contacted.

## Headers

- `Idempotency-Key` string

## Request body

- CallRequest
  - `to_number` string, nullable
  - `objective` string, nullable
  - `first_message` string, nullable
  - `purpose` string, nullable

## Response `201`

Call placed

- Call
  - `id` string, required
  - `object` string, required
  - `direction` 'inbound' | 'outbound', required
  - `status` 'queued' | 'scheduled' | 'ringing' | 'in_progress' | 'ended' | 'failed', required
  - `to_number` string, nullable, required
  - `from_number` string, nullable, required
  - `objective` string, nullable, required
  - `summary` string, nullable, required
  - `transcript` string, nullable, required
  - `recording_url` string, nullable, required
  - `ended_reason` string, nullable, required
  - `duration_seconds` integer, nullable, required
  - `credits_charged` integer, nullable, required
  - `created_at` string, date-time, required
  - `updated_at` string, date-time, required
  - `customer` string, nullable, required

## Other responses

- `400`: Bad request
- `401`: Authentication required
- `403`: Forbidden
- `404`: Resource not found
- `422`: Validation error
- `429`: Rate limit exceeded — 600 requests per minute per credential. Retry after the number of seconds in `Retry-After`.
- `500`: Internal server error

---

[API](https://skmtc.dev/crevio/apis/crevio-api-v1.md) · [All operations](https://skmtc.dev/crevio/apis/crevio-api-v1/llms.txt) · [OpenAPI document](https://skmtc.dev/crevio/apis/crevio-api-v1/revisions/2219f18ad651?raw)
