Edit and retry a failed phone number order
Edit selected fields of a submission_failed order and re-submit it
upstream. Same multipart contract as POST /numbers/orders.
Uses POST (not PUT) on purpose: the body is multipart/form-data, and
many server runtimes only parse a multipart body when the method is POST -
on PUT the fields and files arrive empty. Send this edit as a plain POST.
Constraints:
- Only orders with status
submission_failedcan be edited. countryis frozen. You may re-send it with the same value (handy when you echo back the whole order), but changing it returns422- order in a different country by creating a new order. Omitting it is also fine.
customer_name and order_id are editable here: send new values to change
them, or send an empty order_id to clear your reference.
If the edited address yields different KYC requirements upstream, the
response will be 422 carrying the new requirements; resubmit again with
the matching KYC fields.
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
Request body · required
Responses
550e8400-e29b-41d4-a716-446655440000po-2026-00042ACME GmbHcreated requested submission_failed processing success error processing_failedrequestedaddressobject
Adenauerallee153113BonnDEAdenauerallee 1, 53113 Bonn, DE1+49228numbersarray<string>
phone_numbersarray<object>
550e8400-e29b-41d4-a716-446655440000+12125550100Customer Support1550e8400-e29b-41d4-a716-446655440100call_flowobject | null
not_required pending retrying delivered failed cancelledAuthorization Token is missingerrors*object
https://cockpit.voxbi.com/api/v1/numbers/orders/{id}
curl -X POST '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: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': `Bearer ${YOUR_TOKEN}`,
},
});
const data = await response.json();
console.log(data);
import requests
response = requests.post('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' => 'POST',
'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);
{ … }
private, must-revalidatekeep-aliveapplication/jsonOrigin6057