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_id is not supplied, only global opt-outs are validated.

  • The can_send flag indicates whether a given MSISDN is authorised for sending.

  • Ensure your balance is topped up before calling this endpoint to avoid 402 errors.