Developer API · Long-term & temporary numbers
Buy Virtual Numbers and Receive SMS with the API
Use the API to browse the catalog, buy numbers, check orders and retrieve incoming verification SMS. Vozira provides numbers that receive codes; this API does not send OTPs to your customers.
An API for numbers that receive verification SMS
Select a number from Vozira and retrieve SMS received for your own order. The destination service decides whether it accepts the number and sends a message. Vozira provides incoming number access; this API does not send OTP messages to your customers.
The API base URL is https://vozirasms.com/api/v1. Generate a key in your Vozira account's API Access area, and send it in the X-Api-Key header from server-side code. Number selection, purchases and SMS queries use Vozira's domain.
Choose the workflow you need
Long-term numbers
Read the catalog → confirm the current price → purchase with a saved idempotency key → query the order and received SMS. Use the selected service while the number remains valid. Check standard renewal eligibility before extending an existing order.
Long-term API workflow →
Temporary numbers
Select a listed service and country → obtain a quote → confirm that quote with a saved idempotency key → query the order for SMS, expiry and refund status. Temporary-number purchases require a regular Vozira account.
Temporary API workflow →
One website wallet
Read the balance before buying. Successful API purchases spend real Vozira wallet funds. Add funds through the website recharge page; adding balance does not buy a number. There is no public sandbox.
Price confirmation and safe retries
For a long-term purchase, send expected_total from the current catalog. For a temporary purchase, review and confirm the returned quote_id before it expires. Save a distinct Idempotency-Key before each purchase and reuse it only for the same request.
After a timeout or uncertain response, query the original operation with its saved key. Do not start a new purchase with a different key merely because a response was lost. Follow the status and retry guidance in the complete documentation.
Start with read-only requests
Replace YOUR_KEY with your own API key in server-side code. These examples read the balance and catalogs; they do not buy or renew a number.
Read the balance
curl https://vozirasms.com/api/v1/balance \
-H "X-Api-Key: YOUR_KEY"
Read long-term options
curl https://vozirasms.com/api/v1/apps \
-H "X-Api-Key: YOUR_KEY"
Read temporary services
curl 'https://vozirasms.com/api/v1/one-time/catalog?service=Telegram' \
-H "X-Api-Key: YOUR_KEY"
Purchase, order, SMS and refund examples →
Keep your key private
Use HTTPS and the X-Api-Key header. Keep the key out of browser JavaScript, query strings, shared screenshots and public repositories. Rotate or revoke it in API Access.
Poll for received SMS
There are no developer callback webhooks in v1. Query orders for incoming messages and status. Leave at least five seconds between SMS polls; slow to 10–15 seconds when no message arrives. Respect Retry-After on HTTP 429.
Temporary cancellation and refunds
Temporary numbers are for one verification with the selected service and have a 20-minute session. Two minutes after number activation, if Vozira has received no SMS and the order offers a cancellation option, you can request cancellation. The original charge returns to your Vozira balance only when cancellation is confirmed. If Vozira has received no SMS by the order’s 20-minute expiry, the original charge is automatically returned to your balance. The same purchase is refunded at most once. Processing and balance updates may be delayed. No refund is available after Vozira has received an SMS for the order. If the outcome is unclear, check the original order or contact support before buying again. Read the original order’s cancellation and refund status; a cancellation request is not a completed refund.
Cancellation and refund details →
Long-term validity and renewal
Long-term access lasts for the actual order's validity. Standard renewal requires an eligible regular-account order: check eligibility, obtain a quote, confirm with the saved idempotency key and query the result. Renewal is a separate purchase. Long-term purchases and renewals are non-refundable once paid.
Validity and renewal details →
Existing integrations
Existing /api/reseller long-term integrations and reseller accounts remain available. Use /api/v1 for new integrations. Temporary numbers, wallet transactions and standard renewal require a regular account; legacy reseller recharge stays in its existing portal.
Existing integrations can consult the legacy interface reference. New integrations should use the v1 documentation.
Connect through Vozira SMS
Open API Access in your Vozira account, generate a key and follow the workflow for your number type. The detailed documentation includes request fields, status handling, error responses and Python and Node.js examples.