Skip to content

Tracker postbacks & conversions

Copy page

Conversions close the loop between an SMS and a business result: a recipient clicked your link, registered, deposited — and your tracker reports it back.

Public action/conversion ingestion requires the X-Api-Token header on every request:

EndpointNotes
GET /api/v1/trackPrimary tracker endpoint
POST /api/v1/callback/actionJSON callback variant
GET /api/v1/action/trackDeprecated
POST /actionLegacy

Missing or invalid tokens return HTTP 401 before any side effect — no postback, webhook or database write happens. Tokens are validated against your current tracker token (and the unexpired previous one, so rotation is safe).

When 23 Telecom calls your tracker (conversion/delivery postbacks), you can embed dynamic values in the configured URL:

https://tracker.example.com/postback?phone={phone}&status={status}&cost={cost}

Becomes:

https://tracker.example.com/postback?phone=%2B14155551234&status=DELIVRD&cost=0.0085

Available placeholders:

{message_id} {phone} {recipient} {sender_id} {cost}
{status} {status_code} {num_parts} {timestamp} {telecom_message_id}

The JSON body is still POSTed regardless of URL placeholders — placeholders exist for trackers that only read query strings.

Recorded conversions also fire the conversion webhook to your conversion_url, with your selected conversion_fields. Use this to mirror conversion data into your own analytics in real time.