Skip to main content

What You Can Do with the Messaging APIs

The HORISEN Messaging APIs let you submit SMS traffic (over HTTPS, SMPP, or Binary-Safe), receive inbound (MO) messages in real time, and understand how MNP and SMS data move through the platform internally.

Send SMS (HTTPS, SMPP, or Binary-Safe)​

  • Use the HTTPS MT API for simple, JSON-based server-to-server submission.
  • Use the SMPP API (v3.4 / v5.0) for high-throughput binds.
  • Use the Binary-Safe API when you need direct control over raw SMPP submit_sm/deliver_sm PDU fields (UDH, data coding, ESM class) beyond what the standard HTTPS API exposes.

Receive Inbound SMS (MO)​

  • Use the Inbound SMS API for real-time MO forwarding via GET/POST callback (URL parameters) or a JSON webhook.
  • Use the Premium Transit API for premium/short-code MO-MT services with keyword and session handling, and per-message pricing.

Understand the Platform's Internal Data Flow​

  • The Data Flow diagrams document how MNP resolution (over SS7, ENUM, and the HTTP API) and SMS routing (SMPP delivery, MO forwarding, SS7 MT/MO cases, retries) work internally. These are architecture references, not callable endpoints — for actual MNP lookups, see the separate MNP API section.

Messaging API Modules​

API ModuleDescription
HTTPS MT APIJSON-over-HTTPS SMS submission (text, binary, or WSI), authenticated via API Key or OAuth2, with configurable DLR webhooks.
Binary-Safe SMS HTTP APIExtension of the HTTPS API exposing raw SMPP submit_sm/deliver_sm PDU fields for full protocol control.
SMPP APISMPP v3.4 (compatible with v5.0) binds; this section documents unified DLR error codes and custom NACK statuses.
Inbound SMS APIReal-time MO forwarding via GET/POST callback (URL parameters) or JSON webhook.
Premium Transit APIMO-MT premium/short-code SMS over HTTP, with keyword, session, and per-message pricing support.

Authentication​

Each API uses its own authentication method:

  • HTTPS MT API — an X-API-Key header, or an OAuth2 Bearer token obtained via the client_credentials grant. If both are present, X-API-Key takes precedence.
  • Binary-Safe API — username/password or OAuth2 token, optionally combined with mTLS and IP whitelisting.
  • Premium Transit API — account, username, and password sent as MT submission parameters; both sides exchange static IP addresses for MO/MT delivery.

Quick Examples​

Send an SMS (HTTPS MT API)​

curl -X POST "https://sms.example.org/bulk/v5/send" \
-H "X-API-Key: <YOUR_API_KEY>" \
-H "Content-Type: application/json" \
-d '{
"sender": "MyCompany",
"receiver": "41790000000",
"text": "Hello from MyCompany!",
"dlrUrl": "https://yourapp.com/dlr"
}'

Inbound SMS Webhook Example (JSON payload)​

{
"id": "d1ec69e2-bcfd-11ed-afa1-0242ac120002",
"src": "41781234567",
"dst": "41587000000",
"text": "This is an MO",
"received": "2006-01-02T15:04:05Z07:00"
}

SMPP DLR Error Reference​

The SMPP API documents unified DLR error codes and custom NACK statuses returned for MT submissions, for example:

ValueDescription
0No error.
29Absent subscriber.
990HLR failure.
999Repeated submission (possible looping).

See the full list on the SMPP API page.

Typical Integrations​

Customer Portals​

Send MT messages over the HTTPS MT API, receive DLRs as webhooks or via query, and display traffic/routing stats.

Chatbots & Automation Systems​

Receive MO messages via the Inbound SMS API webhook and reply in real time over the HTTPS MT API.

Premium / Short-Code Services​

Run keyword-based, session-aware premium SMS services with per-message pricing via the Premium Transit API.

Enterprise Notification Systems​

Send OTPs, alerts, and transactional messages over HTTPS or SMPP, with delivery confirmed via DLRs.