If your platform is not on the list, you can send events to Rankly directly from your own code. Post one JSON object per request (or an array of objects) to the custom ingest endpoint.
Prerequisites. A verified domain in Rankly and your ingest token from Settings.

Send an event

curl -X POST 'https://ingest.tryrankly.com/ingest/custom?tenant=tnt_your_token' \
  -H 'content-type: application/json' \
  -d '{
    "ts": 1719745496000,
    "method": "GET",
    "url": "https://your-domain.com/some-page",
    "userAgent": "GPTBot/1.0 (+https://openai.com/gptbot)",
    "ip": "203.0.113.42",
    "referer": "",
    "status": 200
  }'

Field names

Field names are forgiving. Any of the aliases below work:
MeaningAccepted field names
Timestampts, timestamp (epoch ms or ISO 8601)
HTTP methodmethod
URLurl, or host + path
User-agentuserAgent, user_agent, ua
Client IPip, client_ip, clientIp
Refererreferer, referrer
Statusstatus, statusCode, sc-status
Bytesbytes, responseSize
Countrycountry

What to send

For full coverage, send a record whenever your server handles a request from:
  • A known AI bot user-agent (see Bot coverage).
  • A request to /favicon.ico or /apple-touch-icon from any user-agent (the humanity signal).
  • A human visit whose referer is an LLM domain such as chatgpt.com, perplexity.ai, or claude.ai (an LLM referral).
You can also send every request and let Rankly classify them; it keeps what matters and ignores the rest.
Backfilling history? Use the batch endpoint POST /ingest/_batch?tenant=tnt_your_token with a body of { "events": [ ... ] }, up to 5,000 events per request. See the Ingest API reference.