Get inbox day-of-week × hour-of-day heatmap
Day-of-week × hour-of-day breakdown of inbox messages. Buckets are
sparse — only cells with at least one event are returned; clients
zero-fill the rest to render the full 7×24 grid. The dow field
follows ClickHouse's toDayOfWeek convention (1 = Monday … 7 =
Sunday). Max date range is 365 days.
API key authentication - use your Zernio API key as a Bearer token
In: header
Query Parameters
datedateNarrow to a single event type. "all" or omitted means no filter.
"message.received" | "message.sent" | "message.read" | "all"Response Body
application/json
application/json
application/json
application/json
import Zernio from '@zernio/node';const zernio = new Zernio({ apiKey: process.env.ZERNIO_API_KEY });const { data } = await zernio.inboxanalytics.getInboxHeatmap({ query: { fromDate: '2026-01-15', },});console.log(data);{
"success": true,
"from": "2019-08-24",
"to": "2019-08-24",
"buckets": [
{
"dow": 1,
"hour": 23,
"received": 0,
"sent": 0,
"read": 0
}
]
}{
"error": "string",
"details": {}
}{
"error": "Unauthorized"
}{
"error": "string",
"details": {}
}Get analytics for a single conversation GET
Per-conversation inbox analytics. The inbox analog of /v1/analytics/post-timeline — one conversation, daily totals, source mix. The {conversationId} path param accepts EITHER the Mongo `_id` of the Conversation document OR its `platformConversationId` (the same identity used by metadata.conversationId at ingest time). Ownership is verified in MongoDB against the caller's team before the Tinybird query fires. Max date range is 365 days.
Get inbox response-time stats GET
Time-to-first-response stats. Pairs each received message with the next sent message in the same conversation and reports the delta as both summary statistics and a fixed-bucket histogram suited for the analytics page's TTR chart. `sampleSize` reflects only conversations that received AND got a reply in the window — received-but-never-answered conversations are excluded. Compare against /v1/analytics/inbox/volume's `summary.received` to compute reply rate. Max date range is 365 days.