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