Overview
The Transactional API is Instasent's SMS wholesale surface: single send, bulk send, delivery reports, inbound, HLR lookup, balance and pricing, over HTTP (REST) or SMPP. It is the evolution of the Legacy API — every new SMS integration should land here.
The Transactional API — also known internally as the SMS API — is Instasent's core SMS surface. It connects your application directly to carrier networks, delivering to handsets in 200+ countries, and covers everything you need around raw SMS: sending (single or batched), receiving DLRs and inbound, querying message history, running HLR lookups and reading price profiles and account balance.
It is the evolution of the Legacy API — same endpoint surface, modernised with DLR webhooks, per-project tokens, SMPP and the api_sms token model. If you are about to write new code, write it against this API.
Two transports expose the same underlying pipeline. Pick the one that fits your stack — most teams start with HTTP and only move to SMPP when volume or session-state requirements justify it.
JSON over HTTPS. Best for application servers, serverless functions and anything that already speaks REST. Webhook-based DLRs.
SMPPPersistent TCP sessions, binary protocol. Best for high-throughput platforms (messaging providers, aggregators) that already operate an SMPP stack.
What you can do
- Send SMS, one at a time —
POST /smsfor triggered traffic (OTPs, alerts, receipts, notifications). - Send SMS in bulk —
POST /sms/bulktakes a collection of messages in a single request. This is the endpoint for API-driven campaigns, marketing fan-outs and any high-volume dispatch. Customers including marketing agencies run entire campaigns on top of it. - Receive delivery reports (DLRs) as carriers report status back through the chain, pushed to your webhook in real time.
- Accept inbound messages when the account has two-way enabled.
- Query message history and per-message status —
GET /sms,GET /sms/{id}. - Run HLR / number lookups —
POST /lookup,GET /lookup/{id}andGET /lookupto check handset presence and routing before sending. - Read account balance —
GET /organization/account. - Read price profiles —
GET /sms/price-profile/me/countriesandGET /lookup/price-profile/me/countriesfor per-country pricing.
When to use this API
Reach for Transactional whenever you need raw SMS capacity — single, batched, or wholesale — without asking Instasent to manage the recipient audience. Typical workloads:
- User-triggered messages — OTPs, password resets, receipts, shipping notifications. One message per event, delivered in seconds, via
POST /sms. - API-driven campaigns and bulk dispatch — marketing sends, notification fan-outs, anything that fires many messages in one go. Use
POST /sms/bulk. - SMS wholesale — aggregators, messaging platforms and resellers pushing their own traffic through Instasent. Use HTTP at moderate rates; use SMPP for carrier-grade throughput with persistent sessions.
- Pre-send validation and pricing — HLR lookup and price profiles to route and cost-check before dispatch.
If you need Instasent to own the audience, personalization, segmentation and attribution, use the Product API instead — it delegates delivery to this one but adds the customer-data layer on top. The Transactional API is the right pick when the caller already manages its recipient list and just needs the full SMS pipe.
What to read next
Send your first SMS over REST in under five minutes.
Bulk sendingUp to 100 messages per request, queue-based dispatch, the endpoint for API-driven campaigns.
HTTP AuthenticationToken types, header vs. query string, rotation.
Receiving DLRsWebhook payload, status list, two-way inbound.
API ReferenceEvery endpoint, every parameter.