Skip to main content
api

Track from your backend

draft
Audience: developerUpdated 2026-07-26

The Tracking REST API lets you send identify and track events straight from your own servers with a plain HTTP POST — no SDK to install. Use it for state only your backend can vouch for: completed orders, payments, refunds, or any event your servers own more reliably than the browser or a mobile client.

It's the same identify/track model the Web SDK and Native SDK (Android · iOS) send — just called directly over HTTP.

Before you begin

You need your Binoban source credentials: an apiKey and a sourceIdentifier. New to credentials? See the Quick Start.

Headers

Every request needs two headers:

  • Authorization: Bearer YOUR_API_KEY
  • Content-Type: application/json
info

Replace YOUR_SOURCE_IDENTIFIER in the URL and YOUR_API_KEY in the header with your own values.

Send a Track call

curl --location 'https://api.binoban.io/api/tracker/sdk/YOUR_SOURCE_IDENTIFIER/track' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR_API_KEY' \
--data-raw '{
"userId": "019mr8mf4r",
"event": "item_purchased",
"properties": {
"name": "Leap to Conclusions Mat",
"revenue": 14.99
}
}'
Event names are validated

event must match ^[a-zA-Z0-9_\-.]*$ — no spaces. Use snake_case (item_purchased, not Item Purchased); a space anywhere in the name rejects the whole call. See Track for the full rule.

Send an Identify call

Identify uses the same headers, against the identify endpoint instead:

POST /api/tracker/sdk/YOUR_SOURCE_IDENTIFIER/identify
{
"userId": "019mr8mf4r",
"traits": {
"email": "pgibbons@example.com",
"name": "Peter Gibbons",
"industry": "Technology"
}
}

Call Identify once when the user's account is first created, and again only when their traits change.

Verify it's working

A successful call returns 200. If you get a 401, double-check the Authorization header and apiKey; a 404 means sourceIdentifier in the URL is missing or doesn't match a known source. See Error codes for the full list. From there, the event resolves into your source's profiles in the Binoban workspace.

What you've done

You sent an identify and a track call straight from a server-side curl request, using the same Bearer-token headers any backend language can send.

Next steps