Channelsv4

Get purchase status

GET/channels/blooio/purchases/{purchaseId}

Poll the status of an asynchronous number purchase by its purchase_id. Returns pending, completed (every line has a number), or failed. A line awaiting Blooio staff (a custom request, or an out-of-stock area code or ZIP) has phone_number: null and the ticket_id of its provisioning ticket; the purchase stays pending until staff provision it. Requires the numbers:read scope for OAuth apps.

Path parameters

purchaseIdRequiredstring

Headers

AuthorizationRequiredstring

Your API key, sent as a bearer token: Authorization: Bearer <api_key>. Editing this stays in sync with the API key box on the right.

Bearer

Returns

dataoptionalobject
purchase_idoptionalstring
statusoptionalstring
"pending""completed""failed"
allocationsoptionalobject[]

Array of object

binding_idoptionalstring
phone_numberoptionalstring | null

Null until the line has a number.

typeoptionalstring | null
ticket_idoptionalstring | null

The line's provisioning ticket when staff provision it by hand (custom request, or out-of-stock area code or ZIP). Read it with GET /v4/tickets/{ticketId}.

Response codes

200Purchase status
400The request was malformed — check the path, query parameters, and body.
401Your API key is missing or invalid. Pass it as a bearer token.
403Your API key isn't allowed to access this channel (blocked key or plan limit).
404No channel was found with the provided `purchaseId`.

Sends a live request with your values and shows the real response below. Your key is stored only in this browser.

Request
curl -X GET https://api.blooio.com/v4/channels/blooio/purchases/obj_a1b2c3d4 \
Response objectexample
{  "data": {    "purchase_id": "obj_a1b2c3d4",    "status": "pending",    "allocations": [      {        "binding_id": "obj_a1b2c3d4",        "phone_number": "+15551234567",        "type": "string",        "ticket_id": "obj_a1b2c3d4"      }    ]  }}