Developer API · Personal Beta & reseller workflows

Build virtual-number and SMS workflows with Vozira

Use one REST API to check account balance, search the current catalog, buy available numbers, list orders, retrieve received SMS, and extend eligible local sessions. Current catalog data and the actual order response remain authoritative.

One API, seven focused operations

The API follows the same account balance and current catalog used by Vozira’s web product. It is designed for server-side integrations and lawful testing or automation workflows.

GET

Account

Read the authenticated account identity and basic API account information.

GET

Balance

Read the current Vozira wallet balance before planning a purchase.

GET

Apps

Search current service, country, number-type, stock, and price options.

POST

Buy

Purchase a currently available option with an explicit idempotency key.

GET

Orders

List recent API orders and their returned number details.

GET

SMS

Read SMS for an owned item without exposing another account’s records.

POST

Extend

Extend an eligible local-session item; supplier-governed expiry remains authoritative.

Quick start

Generate an API key from Dashboard → API Access. Send it only in the X-Api-Key request header from server-side code.

curl -H "X-Api-Key: YOUR_KEY" \ https://vozirasms.com/api/reseller/balance

Never place a full key in browser JavaScript, query strings, shared screenshots, or public repositories.

Reliable Buy retries

Every Buy request requires an Idempotency-Key. Reuse the same key only when retrying the same request body. A changed body with the same key is a conflict.

Idempotency-Key: purchase-unique-0001

Review the complete request fields, quantity limits, and retry behavior in the authoritative documentation.

Stable errors and responsible polling

Structured errors

API errors use stable machine-readable codes with a message and request ID. Handle HTTP 400, 401, 403, 404, 409, 429, and 500 according to the detailed documentation.

Rate-limit response

When HTTP 429 is returned, respect Retry-After. Do not immediately replay a burst of Buy or SMS requests.

SMS polling

Poll no faster than every five seconds. After empty results, back off to roughly 10–15 seconds instead of increasing frequency.

Validity and end_time

Do not assume one universal validity period. Supplier-governed items return an end_time; eligible locally governed items can use session_end. Your integration should preserve and display the value returned for the actual order.

Current data is authoritative

Service availability, stock, country options, number type, and price can change. Read the current Apps response before Buy and treat the completed order response as the source for charged amount and item validity.

Choose the right API path

Signed-in Vozira users can open Dashboard → API Access for a key and Quick Start. Reseller accounts use the dedicated portal. The detailed documentation is maintained in one place.