Get inbound Apple Messages for Business statistics by intent
GET
/v1/amb/stats/inbound/intents
const result = await bird.amb.stats.inbound.byIntent({ limit: 2 });
console.log(result);result = client.amb.stats.inbound.by_intent(limit=2)
print(result)result, err := client.Amb.Stats.Inbound.ByIntent(ctx, bird.AmbStatsInboundByIntentParams{Limit: 2})
if err != nil {
log.Fatal(err)
}
fmt.Println(result)$bird->amb->stats->inbound->byIntent(['limit' => '2']);bird amb stats inbound by-intentcurl -X GET "https://us1.platform.bird.com/v1/amb/stats/inbound/intents" \
-H "Authorization: Bearer $TOKEN" \
--url-query "limit=50"Reactie200
{
"period": {
"from": "2026-05-01",
"to": "2026-05-25",
"data_as_of": "2026-05-25T14:03:10Z"
},
"attribution": "accepted_time",
"data": [
{
"intent": "order_support",
"received": 305
}
],
"total": 4
}
Returns inbound received counts grouped by entry-point intent, for the requested period. Rows are ranked by received volume descending and capped at the requested limit (default 50, max 200). Intents are workspace-defined strings configured on the business's entry points and have no fixed vocabulary. Rows are attributed to when the inbound event occurred, not to any earlier outbound message. This channel has no delivery receipt and no derived rate, so each row carries only the raw received count.
The maximum window is 365 days; a longer range returns 422. Historical dates are supported within the maximum window length; the requested dates are not shifted forward. A breakdown is already a single-dimension view and takes no dimension filter; to restrict statistics to a single intent, use the inbound summary, daily, or hourly statistics instead.
Queryparameters
from
string
Inclusive start of the window, a calendar day (YYYY-MM-DD). Interpreted in timezone, or UTC when omitted. Must not be after to. Max window 365 days. Defaults to 30 days before to when omitted.
to
string
Inclusive end of the window, a calendar day (YYYY-MM-DD). Interpreted in timezone, or UTC when omitted. Max window 365 days. Defaults to today in that timezone when omitted.
timezone
string
IANA timezone identifier used to group statistics, for example Asia/Kathmandu. The default is UTC. Day and hour boundaries, including the default window when from and to are omitted, follow this timezone. When this parameter is set, pass from and to as calendar days or Z instants instead of timestamps with explicit UTC offsets.
limit
integer
Maximum number of intent rows to return, ranked by received volume descending.
Response Payload
period
object
verplicht
The window the response covers (echoed back), plus data_as_of.
Onderliggende attributen tonen
period.from
string
verplicht
Inclusive start of the window, as a calendar day (YYYY-MM-DD) or an RFC 3339 hour boundary. Historical starts are preserved; the maximum request length does not impose a historical cutoff.
period.to
string
verplicht
Inclusive end of the window, as a calendar day (YYYY-MM-DD) or an RFC 3339 hour boundary.
period.data_as_of
nullable string
Latest time reflected in the statistics. More recent events might not be included yet. Null when the freshness boundary is unavailable.
attribution
string
verplicht
Always event_time for inbound statistics.
Possible values: accepted_time, event_time
data
array of object
verplicht
Intent rows ranked by received-message volume descending, capped at the requested limit. An intent with no received messages in the period is absent rather than zero-filled, because unlike a time bucket it is not part of a continuous axis.
Onderliggende attributen tonen
data.intent
string
verplicht
The intent these messages arrived under, as configured in the business's entry points. Intents are workspace-defined and have no fixed vocabulary.
data.received
integer
verplicht
Distinct messages received under this intent in the period.
total
integer
verplicht
Total distinct intents with received messages in the period, regardless of limit.
Gerelateerde bronnen
Ga verder met de documentatie, gidsen en voorbeelden voor dit onderwerp. De bronnen zijn in het Engels.
Begrijp het conceptShould I use a Bird SDK or call the API directly?Volg het leerpadBuild your first integrationImplementatiegidsSend your first email
Ontvang een implementatieoverzicht