---
title: "Provision a phone number"
method: POST
path: "/phone-numbers"
tags: ["Phone Numbers"]
---

# Provision a phone number

`POST /phone-numbers`

## Request

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

Provisions a new phone number for the account and routes its inbound calls to an AI voice agent. Pass `country` (ISO 3166-1 alpha-2, default `US`) for a number in any country Crevio sells; prices differ by country. Most countries provision instantly (201). Regulated countries first need the business verified: the response is 202 with `status: awaiting_verification` and a `verification_url` to send the business owner to (pass `verification_return_url` to bring them back). The number then moves to `in_review`, and becomes `active` (or `declined`, with a `review_note`) once the carrier decides, usually within 1-3 days. The first month is charged in credits when the number becomes active, and each month it is kept after that; a number the balance cannot renew is released.

## Headers

- `Idempotency-Key` string

## Request body

- PhoneNumberRequest
  - `inbound_objective` string, nullable
  - `status` 'active' | 'inactive' | 'awaiting_verification' | 'in_review' | 'declined' | 'cancelled'
  - `country` string
  - `forward_to` string, nullable
  - `call_routing` 'agent' | 'forward'

## Response `201`

Phone number provisioned

- PhoneNumber
  - `id` string, required
  - `object` string, required
  - `e164` string, nullable, required
  - `status` 'active' | 'inactive' | 'awaiting_verification' | 'in_review' | 'declined' | 'cancelled', required
  - `country` string, required
  - `inbound_objective` string, nullable, required
  - `forward_to` string, nullable, required
  - `call_routing` 'agent' | 'forward', required
  - `verification_url` string, nullable, required
  - `review_note` string, nullable, required
  - `created_at` string, date-time, required
  - `updated_at` string, date-time, required
  - `monthly_credits` integer, required

## Other responses

- `202`: Verification needed before the number is issued
- `400`: Bad request
- `401`: Authentication required
- `402`: The balance cannot pay for the number's first month
- `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

## Changes

- **2026-10-19** `2219f18ad651`: 6 info
  - added the new optional request property `call_routing`
  - added the new optional request property `forward_to`
  - added the required property `call_routing` to the response with the `201` status
  - added the required property `call_routing` to the response with the `202` status
  - …2 more

[Operation history](https://skmtc.dev/crevio/apis/crevio-api-v1/changes/phone-numbers/post.md)

---

[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)
