Get a brand's analytics
Visibility, share of voice, the per-model breakdown and the citation totals for one window, in one request. The long lists — cited domains and URLs, sub-queries, per-prompt results — are endpoints of their own. Everything else is always included.
Visibility, share of voice, the per-model breakdown and the citation totals for one window, in one request.
The long lists — cited domains and URLs, sub-queries, per-prompt results — are endpoints of their own. Everything else is always included.
Authorization
BearerAuth An instance admin key from ADMIN_API_KEYS, or an organization key (elmo_…) issued from the dashboard.
In: header
Path Parameters
Brand identifier.
Query Parameters
Inclusive lower bound of the window, an ISO 8601 timestamp such as 2026-01-01T00:00:00Z. A bare YYYY-MM-DD is rejected: that is /prompts/{promptId}/snapshot's spelling and means a local calendar day there.
date-timeExclusive upper bound of the window, an ISO 8601 timestamp. The window is half-open: a run at exactly end is outside it.
date-timeRestrict to one model, e.g. chatgpt. See GET /models.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/brands/string/analytics?start=2019-08-24T14%3A15%3A22Z&end=2019-08-24T14%3A15%3A22Z"{ "brandId": "string", "brandName": "string", "range": { "start": "2019-08-24T14:15:22Z", "end": "2019-08-24T14:15:22Z" }, "visibility": { "current": 0, "series": [ { "date": "2019-08-24", "visibility": 0 } ] }, "shareOfVoice": { "brand": 0, "entries": [ { "name": "string", "isBrand": true, "mentions": 0, "prompts": 0, "share": 0 } ], "series": [ { "date": "2019-08-24", "share": 0 } ] }, "models": [ { "model": "string", "label": "string", "runs": 0, "brandMentions": 0, "visibility": 0, "citations": 0 } ], "totals": { "runs": 0, "prompts": 0, "citations": 0, "uniqueDomains": 0, "uniqueUrls": 0 }}