auviaGateway
Developers

An SMS API next to SMPP, with the same rules behind it

Customers who do not run SMPP send over HTTPS. Every message goes through the same validation, routing, pricing and balance checks as SMPP traffic, and the outcome comes back as a signed webhook.

POST /v1/smsIdempotency-KeySigned webhooksREST data API
POST /v1/sms
# one request, up to 1,000 messages
curl -X POST https://API_HOST/v1/sms \
  -H "X-API-Key: $KEY" \
  -H "Idempotency-Key: batch-2026-10-26-001" \
  -d '{"messages":[{"to":"+393331234567","from":"ACME",
        "text":"Your code is 482913","reference":"order-8812"}]}'

HTTP 202
{ "messages": [ { "id": "01M5T6BDECJR8XHX3Y5N2J1Y59",
    "to": "+393331234567", "status": "queued",
    "parts": 1, "reference": "order-8812" } ] }
Sending

Request and response

FieldRules
toDestination in international format, up to 32 characters
fromSender ID, up to 20 characters; the account's sender rules apply
textGSM-7 or Unicode detected automatically, up to 10 parts
referenceOptional, your own ID up to 64 characters, echoed in the delivery webhook
messagesBatch form: 1 to 1,000 objects with the fields above

202, one result per message

Each message is queued or rejected with its own code; one refusal never fails the batch.

Stable error codes

The same validation codes as SMPP, such as INVALID_PHONE_FORMAT or INSUFFICIENT_BALANCE.

Scoped keys

sms.send keys with optional IP allowlists, created by you or by the customer in the portal.

Webhooks

Receipts and inbound messages pushed to you

Delivery receipts

One event per message, delivered only when all parts are, otherwise the worst outcome.

Inbound messages

Multipart MO reassembled and sent as one event; falls back to SMPP if your endpoint stays down.

Signed and retried

HMAC-SHA256 signature with timestamp, 5-second timeout, up to 8 attempts over about 6 hours.

REST API for external systems

Connect your ERP and BI

EndpointScopeReturns
GET /external/v1/balance/:customerIdfinancial.readBalance, credit limit, available amount and currency
POST /external/v1/usagefinancial.readMessages, delivered, failed, parts and amounts per period
POST /external/v1/cdrfinancial.readCall detail records, paginated
GET /external/v1/invoices/:customerIdfinancial.readInvoices with number, dates, total, paid and status
/external/v1/virtual-numbersnumbers.read / numbers.writeList, add and remove numbers and ranges
FAQ

API questions

Is there an HTTP API as well as SMPP?
Yes. POST /v1/sms sends up to 1,000 messages per request with optional idempotency, and delivery receipts and inbound messages are pushed to your HTTPS endpoint as signed webhooks.
How do I avoid sending the same batch twice?
Send an Idempotency-Key header. The same request within 24 hours returns the saved response and sends nothing again; a retry after an interrupted batch sends only the messages without a result.
How are webhooks secured?
Each webhook carries X-Signature with a timestamp and an HMAC-SHA256 of the raw body. Reject signatures older than 5 minutes; X-Webhook-Id stays the same across retries so you can drop duplicates.
Is there an API for balances and invoices?
Yes. A REST API with scoped keys returns balance, usage, CDRs and invoices, and manages virtual numbers.
Talk to us

Let’s talk about your traffic.

Tell us your business type, the protocols towards customers and suppliers, cloud or on-premise, and the capabilities you care about. Our team comes back with a demo on the console or a technical evaluation on your scenario.