What You Can Do with the SS7 Platform APIs
The HORISEN SS7 Platform APIs let you control which SMS traffic is allowed through the SS7 layer, and configure how inbound Mobile Terminated (MT) traffic is routed once it's accepted. With them, you can:
- Manage allowlist and blocklist filter rule values for SMS MO Inbound, MT Inbound, and MT Outbound traffic, matched against GSM MAP/TPDU parameters (sender/destination MSISDN, home SMSC Global Title, IMSI) with wildcard support.
- Look up existing filter rules — including advanced rule groups that combine multiple parameters (e.g., sender + destination + SCCP Calling GT + IMSI) for more precise filtering.
- Configure inbound MT routing connections between Sigtran, SMSC, and ESME endpoints.
- Maintain vHLR and numbering plan reference data (countries, operators, CCNDC) used to resolve inbound MT routing.
Typical Use Cases
- Traffic control — block unwanted senders or destinations (spam, fraud, unauthorized sources) before they reach downstream systems, by adding values to an existing blocklist rule.
- Selective allowlisting — restrict a specific traffic domain (MO inbound, MT inbound, or MT outbound) to only pre-approved senders, destinations, or Global Titles.
- Inbound MT routing — direct inbound Mobile Terminated SMS to the correct SMSC or ESME connection based on Sigtran routing configuration.
- Numbering plan maintenance — keep vHLR, country, operator, and CCNDC reference data current so inbound routing and resolution stay accurate.
Authentication
Both APIs use the OAuth 2.0 Authorization Code flow. Your application redirects the user to the authorization endpoint, exchanges the returned code for an access token, and sends that token with every subsequent request. See the OAuth2 Authentication Guidelines for the full flow.
Quick Examples
List Filter Rules for a Traffic Domain
curl "https://api{separator}{platform_domain}/ss7/filter-rule-api/v1/filter-rules?trafficTypeCname=SMSMTINBOUND" \
-H "Authorization: Bearer ACCESS_TOKEN"
Add a Blocklist Value to an Existing Rule
curl -X POST "https://api{separator}{platform_domain}/ss7/filter-rule-api/v1/filter-rules/12/values?trafficTypeCname=SMSMTINBOUND" \
-H "Authorization: Bearer ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"value": "4179*",
"allow": "no"
}'
Wildcards are supported in the value: ? matches exactly one character, * matches zero or more.
Create an Inbound MT Routing Connection
curl -X POST "https://api{separator}{platform_domain}/ss7/sms-mt-in-api/v1/smsmtin-routings" \
-H "Authorization: Bearer ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"sigtranConnectId": 1,
"smscConnectId": 3,
"esmeConnectId": 0
}'
Technical Characteristics
- REST HTTP APIs with JSON payloads
- OAuth 2.0 Authorization Code flow for authentication
- Filter rules scoped per traffic domain via
trafficTypeCname(SMSMOINBOUND,SMSMTINBOUND,SMSMTOUTBOUND) - Basic (single-parameter) and advanced (combined-parameter) filter rule groups, evaluated blocklist-before-allowlist
- Wildcard matching on filter rule values (
?for one character,*for zero or more) - Inbound MT routing configuration across Sigtran, SMSC, and ESME connections, backed by vHLR and numbering plan (country/operator/CCNDC) reference data