Buy a number
Buys a number from a search and makes it a working line, optionally answered by agent_id. Send an Idempotency-Key. Returns 201 when live, or 202 while it is still being connected (it finishes on its own). Countries that need paperwork need an approved verification (bundle_id); when_approved saves an order to buy later, which only a signed-in teammate can do.
Scopes: number:write
Authorizations
An API key from Settings → API keys, sent as Authorization: Bearer kb_live_…. A workspace key starts kb_; a personal key starts kbp_ and acts as its owner.
Headers
A unique key (a UUID works) for this request. Retrying with the same key returns the first answer instead of running twice.
255The API version to answer as, a date (YYYY-MM-DD). Leave it out for the current version (2026-11-07). An unknown version is refused with 400 unsupported_api_version.
2026-11-07 "2026-11-07"
Body
The number to buy, from a search.
^\+[1-9][0-9]{7,14}$Its country, ISO 3166 alpha-2.
^[A-Z]{2}$Its type.
local, mobile, national, toll_free A label for the line.
80The agent that answers it.
^[0-9a-fA-F-]{36}$The search result's address_requirements.
none, any, local, foreign The verification to use; omit for the one approved match.
^[0-9a-fA-F-]{36}$The address to file, when the number needs one.
^AD[0-9a-f]{32}$The verification is still being checked: save the number and buy it on approval.
The search result's city.
120Response
Successful Response
- NumberLine
- SavedNumberOrder
The number id.
The number in E.164 form.
Its label (the number itself when unlabelled).
Bought or moved in here, or on your own carrier.
kallabot, sip kallabot, ported, ops or byoc.
The stored status: provisioning, active, suspended, releasing, failed.
What it means for callers.
live, getting_ready, releasing, not_answering, failed The state in plain words.
Agents can call out from it.
How calls to it are answered.
ISO 3166 alpha-2.
The number type.
Your SIP connection's name, for a number on one.
Why a purchase failed, in plain words.
Who answers it.
The current route; send as expected_route_id.
The verification it uses.
ISO 8601 time it was added.