Skip to main content
Every endpoint is a plain HTTPS request, so curl is the fastest way to try the API. The examples below use curl for requests and jq to parse JSON. Pair them to script anything from a one-off check to a full paginated export.
Create a key on the API keys page, then send it as Authorization: Bearer YOUR_API_KEY. Never paste a key into a shared shell history — export it as an environment variable instead.

Setup

Export your key once per shell session and reuse it across every call.
1

Verify your key

GET /whoami echoes back the organization your key belongs to. Use it to confirm the key is valid before scripting anything heavier.
Response
2

List tracked accounts

GET /accounts returns a page of the accounts your organization tracks. Control page size with limit (1–200).
The response is the standard cursor envelope. See Pagination for the full contract.
Response
3

Track an account

POST /accounts starts tracking a new account. The body requires platform (instagram or tiktok) and username.

More requests

Reading X-Request-ID

Every response carries an X-Request-ID header. Capture it whenever you need to share a request with support. Use --dump-header to keep the headers while still piping the body to jq.

Handling errors

Errors use RFC 9457 problem documents served as application/problem+json. They always include type, title, status, detail, and a machine-readable code. Branch on the HTTP status with --write-out and surface the code plus the request id on failure.

Paginate through every page

The API uses cursor pagination: pass the previous response’s pagination.next_cursor as the cursor query parameter and stop once pagination.has_next is false. This loop collects every account into a single JSON array.
next_cursor is opaque — don’t construct or decode it yourself. Always pass back the exact string the previous page returned.

Next steps