API v3
GET /port_requests/{id}
One transfer request with its history.
Addresshttps://api.voicepro.plus/v3/port_requests/{id}
Key permissionread
Fields
| Name | In | Type | |
|---|---|---|---|
| id * | path | string |
* required
Example
curl -X GET "https://api.voicepro.plus/v3/port_requests/port_4F9K2A" \ -H "Authorization: Bearer vpkey_YOUR_KEY"
Response
{
"object": "port_request",
"id": "port_4F9K2A",
"numbers": [
"+442079460188"
],
"current_provider": "Previous provider plc",
"account_reference": "ACC-558120",
"authorised_name": "Jordan Lee",
"status": "accepted",
"transfer_date": "2026-10-30",
"action_needed": null,
"history": [
{
"at": "2026-10-20T09:00:00Z",
"status": "submitted",
"note": null
},
{
"at": "2026-10-23T14:12:00Z",
"status": "accepted",
"note": "Transfer date confirmed."
}
],
"created_at": "2026-10-20T09:00:00Z"
}Errors
Every error has the same shape: { "error": { "type", "code", "message", "param", "request_id" } }.
missing_api_key401: No Authorization header, or not a Bearer key.
invalid_api_key401: The key is not recognised.
api_key_revoked401: The key was revoked in the portal.
api_key_expired401: The key passed the expiry date set on it.
missing_scope403: The key lacks the scope this endpoint needs; param names the scope.
ip_not_allowed403: The key has an IP allowlist and this request came from elsewhere.
account_not_active403: The workspace is suspended or closed.
route_not_found404: No such path in v3.
resource_not_found404: No object with that id on this account.
service_not_enabled404: The account does not have this service (voice trunk, IoT, numbers); param names it.
rate_limited429: Too many requests for this key or for the whole account (the message says which); wait Retry-After seconds.
internal_error500: Our fault. Quote the request_id to support.