Get a phone number order
Retrieve the current state of a phone number order. The order outcome (assigned numbers on success, or the rejection reason) can be fetched here if you cannot accept the webhook callback, and it also lets you inspect a past order's audit trail.
HTTP:
IntegrationApiKey
API key created on the Cockpit Integrations page (an "API key" integration).
It is a bearer token owned by the customer's PBX and limited to the scopes
selected when the key was created (e.g. phone-numbers, push-configuration).
Send it in the Authorization header:
Authorization: Bearer <api_key>
Manage keys (create / reveal / revoke) from Integrations → New integration → API key.
- HTTP Authorization Scheme
bearer
id
path · string · uuid
*
Order UUID returned by `POST /numbers/orders`.
Responses
Response schema
idstring · uuid
Internal order id assigned by us. Use this with `GET /numbers/orders/{id}`
to fetch the latest state. NOT the value echoed in the asynchronous
webhook payload - that one is `order_id` (your own reference).
example:
550e8400-e29b-41d4-a716-446655440000order_idstring | null
Your customer reference, supplied via the `order_id` field in
`POST /numbers/orders` (or `POST /numbers/orders/{id}`). Echoed back here,
in `GET /numbers/orders/{id}`, and at the top level of the asynchronous
webhook payload (which is this same object) as `order_id`.
length: 0–64
example:
po-2026-00042customer_namestring
Legal name of the customer the numbers were ordered for, as supplied on
create (and editable on retry).
example:
ACME GmbHstatusstring
Lifecycle state of this order.
* `requested`: sent upstream, awaiting fulfilment.
* `submission_failed`: rejected during synchronous submission; editable + retryable.
* `processing`: async success callback received; provisioning in progress.
* `success`: provisioning complete; `numbers` is populated.
* `error`: async rejection; terminal.
* `processing_failed`: internal processing exhausted retries; admin-only retry.
enum:
created requested submission_failed processing success error processing_failedexample:
requestedaddressobject
streetstring
example:
Adenaueralleestreet_numberstring
example:
1postal_codestring
example:
53113citystring
example:
Bonnarea_codestring | null
Country-conditional (e.g. set for CH); null otherwise.
countrystring
example:
DEformatted_addressstring | null
Single-line, comma-separated address derived from the persisted
components (street + number, postal code + city, country). Empty
components are dropped.
example:
Adenauerallee 1, 53113 Bonn, DEquantityinteger
example:
1prefixstring | null
Dial prefix in E.164 (country + area code if applicable).
example:
+49228numbersarray<string>
E.164-formatted numbers assigned to this order. Empty (`[]`) until the
order reaches `success` - they are never returned synchronously by
`POST /numbers/orders` (which only ever returns `requested`); they arrive
later via the webhook and then appear here on `GET /numbers/orders/{id}`.
[]string
phone_numbersarray<object>
The assigned numbers, in the same shape as `GET /numbers`
(id, number, name, is_active, call_flow), so you can read each number's id
and current call flow and act on it directly (e.g. `PUT /numbers/{id}/call-flow`).
Populated once the order reaches `success`.
idstring · uuid
example:
550e8400-e29b-41d4-a716-446655440000numberstring
Phone number in E.164 format.
example:
+12125550100namestring | null
example:
Customer Supportis_activeboolean
example:
1call_flow_idstring | null · uuid
example:
550e8400-e29b-41d4-a716-446655440100call_flowobject | null
idstring · uuid
namestring
enabledboolean
error_messagestring | null
Short error reason when status is `error` or `submission_failed`.
webhook_urlstring | null
The webhook URL we will POST the final outcome to.
webhook_statusstring
enum:
not_required pending retrying delivered failed cancelledwebhook_next_retry_atstring | null · date-time
created_atstring · date-time
updated_atstring · date-time
Authorization Token Missing. This error is returned when the authorization token is missing.
Response schema
errorstring
Error message
example:
Authorization Token is missingOrder not found in the caller's PBX.
Response schema
No response body.
get
https://cockpit.voxbi.com/api/v1/numbers/orders/{id}
Base URL
Request sample
curl -X GET 'https://cockpit.voxbi.com/api/v1/numbers/orders/{id}' \
-H 'Authorization: Bearer YOUR_TOKEN'
const response = await fetch('https://cockpit.voxbi.com/api/v1/numbers/orders/{id}', {
method: 'GET',
headers: {
'Content-Type': 'application/json',
'Authorization': `Bearer ${YOUR_TOKEN}`,
},
});
const data = await response.json();
console.log(data);
import requests
response = requests.get('https://cockpit.voxbi.com/api/v1/numbers/orders/{id}',
headers={'Authorization': f'Bearer {YOUR_TOKEN}'}
)
response.raise_for_status()
data = response.json()
print(data)
<?php
$context = stream_context_create([
'http' => [
'method' => 'GET',
'header' => "Content-Type: application/json\r\nAuthorization: Bearer YOUR_TOKEN",
],
]);
$response = file_get_contents('https://cockpit.voxbi.com/api/v1/numbers/orders/{id}', false, $context);
$data = json_decode($response, true);
print_r($data);
No example for this status.
{ … }
"error": "Authorization Token is missing"
}
Cache-Control
string
example:
private, must-revalidate
Connection
string
example:
keep-alive
Content-Type
string
example:
application/json
Vary
string
example:
Origin
X-RateLimit-Limit
integer
Max requests allowed in the current rate-limit window.
example:
60
X-RateLimit-Remaining
integer
Requests remaining in the current rate-limit window.
example:
57No example for this status.