Headline counts for a window
Matched and relevant mentions, distinct posts and people, sentiment, buying intent and questions, estimated reach, and where the matches stand in triage. The window is `range` (7d, 30d, 90d, 365d, ending today) or `from` and `to`, cut into days in `timezone` (UTC by default); `keywordIds` and `platforms` narrow it; `compare=true` adds the period of the same length right before it. Time axis is the publish date.
API key minted via POST /v1/api-keys (format mk_live_...)
In: header
Query Parameters
Preset window ending today. Ignored when from or to is given. Default 30d.
"7d" | "30d" | "90d" | "365d"First day, YYYY-MM-DD, inclusive, in timezone.
^\d{4}-\d{2}-\d{2}$Last day, YYYY-MM-DD, inclusive, in timezone. Default today.
^\d{4}-\d{2}-\d{2}$Only these keyword ids. Repeatable, or comma-separated; omit for every keyword.
items <= 50Only these platforms. Repeatable, or comma-separated; omit for every platform.
items <= 20true adds the period of the same length right before the window as previous.
IANA zone the days are cut in (Europe/Madrid). Default UTC. One offset, the zone's at the end of the window, applies to the whole window.
length <= 64Response Body
application/json
application/json
application/json
curl -X GET "https://api.mentio.dev/v1/analytics/summary"{
"window": {
"from": "string",
"to": "string",
"days": 0,
"timezone": "string"
},
"matched": 0,
"relevant": 0,
"posts": 0,
"people": 0,
"sentiment": {
"positive": 0,
"neutral": 0,
"negative": 0,
"unclassified": 0
},
"buyIntent": 0,
"questions": 0,
"reach": {
"followers": 0,
"people": 0
},
"triage": {
"open": 0,
"ignored": 0,
"done": 0,
"waiting": 0,
"handledRate": 0,
"medianTimeToDoneMs": 0
},
"previous": {
"matched": 0,
"relevant": 0,
"posts": 0,
"people": 0,
"sentiment": {
"positive": 0,
"neutral": 0,
"negative": 0,
"unclassified": 0
},
"buyIntent": 0,
"questions": 0,
"reach": {
"followers": 0,
"people": 0
},
"triage": {
"open": 0,
"ignored": 0,
"done": 0,
"waiting": 0,
"handledRate": 0,
"medianTimeToDoneMs": 0
}
}
}{
"error": {
"code": "unauthorized",
"message": "string",
"requestId": "string",
"retryAfterSeconds": 0
}
}{
"error": {
"code": "unauthorized",
"message": "string",
"requestId": "string",
"retryAfterSeconds": 0
}
}Mentions over time GET
Matched, relevant and sentiment counts per day or week across the window, as one total series or split per platform or per keyword with `by`. The window is `range` (7d, 30d, 90d, 365d, ending today) or `from` and `to`, cut into days in `timezone` (UTC by default); `keywordIds` and `platforms` narrow it; `compare=true` adds the period of the same length right before it. Time axis is the publish date.
Reviews: stars over a window, per review page GET
The reviews a keyword collects (App Store, Google Play, Trustpilot, Google Maps): count, average stars, distribution, replies and open 1-2 star reviews, for the workspace and per review page with a series of average stars per `bucket`, plus the tags the unhappy reviews carry. A review matched by two keywords counts once. The window is `range` (7d, 30d, 90d, 365d, ending today) or `from` and `to`, cut into days in `timezone` (UTC by default); `keywordIds` and `platforms` narrow it; `compare=true` adds the period of the same length right before it. Time axis is the publish date.