Compliance
The Compliance API allows third-party suppliers to verify whether their contact lists are compliant with your campaign’s targeting rules before sending messages. This ensures that sends respect opt-outs and campaign restrictions.
Check a List of Cell Numbers
Endpoint:
POST /compliance/send
Description:
Checks a list of cell numbers against a campaign’s targeting criteria and global opt-out list. Useful for suppliers who need to confirm compliance before sending.
Permissions Required:
["compliance:send.create"]
Billing:
💵 Paid endpoint — 0.14 credits per cell queried
Request
URL Parameters:
Field | Type | Required | Description |
|---|---|---|---|
campaign_id | string | No | If provided, checks compliance against a specific campaign’s targeting criteria. If omitted, only global opt-outs will be checked. |
Body:
Field | Type | Required | Description |
|---|---|---|---|
cells | string[] | Yes | List of MSISDNs to check. |
country | string | Yes | Country code of the numbers. |
Example Request:
{
"country": "ZA",
"cell": ["1234567890", "1234567234"]
}Response
Success (200):
{
ok: true;
data: {
/** Propagate the campaign_id param */
campaign_id?: string;
/** The number of credits used for the check */
credits_used: number;
/** The results of the query */
results: {
cell: string;
/** Whether the cell number is authorised to be sent to */
can_send: boolean;
}
[];
}
} Error (402 – Insufficient Balance):
{
ok: false;
error: "Insufficient balance";
} Notes
Each compliance check consumes 0.14 credits per cell number.
If
campaign_idis not supplied, only global opt-outs are validated.The
can_sendflag indicates whether a given MSISDN is authorised for sending.Ensure your balance is topped up before calling this endpoint to avoid
402errors.