Skip to main content

What You Can Do with the Test System API

The HORISEN Test System API lets you send test SMS messages through your gate routes and verify, with real delivery data, that everything behaves as expected before relying on a route for live traffic.

With the API, you can:

  • Send a test SMS through one or more gates, to one or more MCC/MCC-MNC destinations, with sender behavior set to fixed, random, or same-as-template.
  • Receive the full test result asynchronously — delivery status, content and sender match, SMSC used — pushed to your own callback URL.
  • Look up available operators, operator countries, and test SMS languages to know what can be targeted.
  • Manage reusable test route configurations: list and add routes, and list or delete route categories, suppliers, and gates.

Typical Use Cases

  • Pre-launch route validation — confirm a new gate, supplier, or route configuration delivers correctly before opening it to live traffic.
  • Content and encoding checks — verify sender ID, text content, and GSM/UCS encoding arrive unchanged across different operators and countries.
  • Delivery and DLR monitoring — detect fake DLRs, delivery delays, or failures on routes you already run.
  • SMSC verification — confirm which SMSC actually handled the message for a given destination.

Authentication

The Test System API uses the OAuth 2.0 client credentials flow. Exchange your client_id and client_secret for an access token, then send it as a Bearer token with every request.

Quick Examples

Get an Access Token

curl -X POST "https://api.horisen.pro/gate/testsystem/v1/oauth2/token" \
-d 'grant_type=client_credentials&client_id=CLIENT_ID&client_secret=CLIENT_SECRET'

Send a Test SMS

curl -X POST "https://api.horisen.pro/gate/testsystem/v1/test/sms" \
-H "Authorization: Bearer ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"username": "testsms@fb.com",
"test": "FB API",
"gate_id": [6],
"mcc_mnc": [26202],
"sender": "fb",
"text_lang": "en",
"text_type": "gsm",
"callback_api": "https://your-domain.com/api/test-results"
}'

The request is accepted immediately and returns a session ID; the actual test results are delivered later to your callback_api URL:

{
"test_session": 1539686679146599395
}

List Routes for a Gate

curl "https://api.horisen.pro/gate/testsystem/v1/test/route?gate_name=Mach" \
-H "Authorization: Bearer ACCESS_TOKEN"

Receiving Test Results

Since a test SMS can take time to route and deliver, the result isn't returned in the initial response. Instead, the platform posts a TestResult payload to the callback_api URL you supplied, once the message has been processed — including dlr_status, fake_dlr, sender_match, text_match, encoding_match, and national_smsc, among other fields, so you can confirm exactly what was delivered and how.

Technical Characteristics

  • REST HTTP API with JSON payloads, served under /gate/testsystem/v1
  • OAuth 2.0 client credentials (application) flow for authentication
  • Asynchronous test results delivered to a customer-provided callback URL
  • Rate-limited test SMS submissions, with X-Ratelimit-* response headers
  • Manage reusable test routes, categories, suppliers, and gates