Skip to main content

Analytics

Every call needs Authorization: Bearer <key>. 5 calls:

Per-line and per-pool sends, delivery and replies​

GET /v1/analytics/lines

Sandbox lines are left out. Agents, who see only their own conversations, are refused, and so are test-mode API keys.

Query parameters

NameTypeRequiredDescription
fromstring (date-time)NoDefaults to the start of the organisation's day, 29 days before to.
tostring (date-time)NoDefaults to now.
intervalenumNoOne of: hour, day, week. Default "day".
line_idstringNoLine id (ln_...).
team_idstring (uuid)No
pool_idstringNoPool id (pool_...).

Headers

NameTypeRequiredDescription
x-workspace-idstringNoWorkspace for session (JWT) callers. API keys carry their own workspace.

Response 200

FieldTypeDescription
linesobject[]
lines[].deliveredintegerFrom 0 to 9007199254740991.
lines[].delivery_ratenumberFraction from 0 to 1. From 0 to 1.
lines[].display_namestring or null
lines[].failedintegerFrom 0 to 9007199254740991.
lines[].health_scoreintegerFrom 0 to 100.
lines[].line_idstringLine id (ln_...).
lines[].new_contactsintegerFrom 0 to 9007199254740991.
lines[].phonestring
lines[].pool_idstring or nullPool id (pool_...).
lines[].reply_ratenumberFraction from 0 to 1. From 0 to 1.
lines[].sendsintegerFrom 0 to 9007199254740991.
lines[].stateenumOne of: provisioning, ready, warming, active, throttled, paused, quarantined, retired.
poolsobject[]
pools[].deliveredintegerFrom 0 to 9007199254740991.
pools[].delivery_ratenumberFraction from 0 to 1. From 0 to 1.
pools[].failedintegerFrom 0 to 9007199254740991.
pools[].line_countintegerFrom 0 to 9007199254740991.
pools[].namestring
pools[].new_contactsintegerFrom 0 to 9007199254740991.
pools[].pool_idstringPool id (pool_...).
pools[].reply_ratenumberFraction from 0 to 1. From 0 to 1.
pools[].sendsintegerFrom 0 to 9007199254740991.
rangeobject
range.fromstring (date-time)ISO 8601 timestamp.
range.intervalenumOne of: hour, day, week.
range.timezonestringIANA time zone. Up to 64 characters.
range.tostring (date-time)ISO 8601 timestamp.
statesobject

Errors: 400, 401, 403, 404, 409, 413, 415, 429, 500. See errors for the shape and codes.

Messages by channel, status and failure code​

GET /v1/analytics/messages

Agents see only conversations assigned to them. Sandbox traffic is left out, and test-mode API keys are refused.

Query parameters

NameTypeRequiredDescription
fromstring (date-time)NoDefaults to the start of the organisation's day, 29 days before to.
tostring (date-time)NoDefaults to now.
intervalenumNoOne of: hour, day, week. Default "day".
line_idstringNoLine id (ln_...).
team_idstring (uuid)No
pool_idstringNoPool id (pool_...).

Headers

NameTypeRequiredDescription
x-workspace-idstringNoWorkspace for session (JWT) callers. API keys carry their own workspace.

Response 200

FieldTypeDescription
by_channelobject[]
by_channel[].channelenumOne of: imessage, sms.
by_channel[].deliveredintegerFrom 0 to 9007199254740991.
by_channel[].sentintegerFrom 0 to 9007199254740991.
by_statusobject[]
by_status[].countintegerFrom 0 to 9007199254740991.
by_status[].statusstring
failures_by_codeobject[]
failures_by_code[].countintegerFrom 0 to 9007199254740991.
failures_by_code[].error_codestring
rangeobject
range.fromstring (date-time)ISO 8601 timestamp.
range.intervalenumOne of: hour, day, week.
range.timezonestringIANA time zone. Up to 64 characters.
range.tostring (date-time)ISO 8601 timestamp.
seriesobject[]
series[].failedintegerFrom 0 to 9007199254740991.
series[].imessageintegerFrom 0 to 9007199254740991.
series[].inboundintegerFrom 0 to 9007199254740991.
series[].smsintegerFrom 0 to 9007199254740991.
series[].tstring (date-time)Bucket start.

Errors: 400, 401, 403, 404, 409, 413, 415, 429, 500. See errors for the shape and codes.

Message volume, delivery, replies and opt-outs​

GET /v1/analytics/overview

Totals and a series for the range. Agents see only conversations assigned to them. Sandbox traffic is left out, and test-mode API keys are refused.

Query parameters

NameTypeRequiredDescription
fromstring (date-time)NoDefaults to the start of the organisation's day, 29 days before to.
tostring (date-time)NoDefaults to now.
intervalenumNoOne of: hour, day, week. Default "day".
line_idstringNoLine id (ln_...).
team_idstring (uuid)No
pool_idstringNoPool id (pool_...).

Headers

NameTypeRequiredDescription
x-workspace-idstringNoWorkspace for session (JWT) callers. API keys carry their own workspace.

Response 200

FieldTypeDescription
rangeobject
range.fromstring (date-time)ISO 8601 timestamp.
range.intervalenumOne of: hour, day, week.
range.timezonestringIANA time zone. Up to 64 characters.
range.tostring (date-time)ISO 8601 timestamp.
seriesobject[]
series[].deliveredintegerFrom 0 to 9007199254740991.
series[].failedintegerFrom 0 to 9007199254740991.
series[].opt_outsintegerFrom 0 to 9007199254740991.
series[].receivedintegerFrom 0 to 9007199254740991.
series[].reply_ratenumber or nullNull when nobody was messaged in the bucket. From 0 to 1.
series[].sentintegerFrom 0 to 9007199254740991.
series[].tstring (date-time)Bucket start.
totalsobject
totals.deliveredintegerFrom 0 to 9007199254740991.
totals.delivery_ratenumberFraction from 0 to 1. From 0 to 1.
totals.failedintegerFrom 0 to 9007199254740991.
totals.median_first_response_secondsnumber or null
totals.messaged_contactsintegerFrom 0 to 9007199254740991.
totals.new_contactsintegerFrom 0 to 9007199254740991.
totals.open_conversationsintegerFrom 0 to 9007199254740991.
totals.opt_outsintegerFrom 0 to 9007199254740991.
totals.receivedintegerFrom 0 to 9007199254740991.
totals.replied_contactsintegerFrom 0 to 9007199254740991.
totals.reply_ratenumberFraction from 0 to 1. From 0 to 1.
totals.sentintegerFrom 0 to 9007199254740991.

Errors: 400, 401, 403, 404, 409, 413, 415, 429, 500. See errors for the shape and codes.

Messages, conversations and response times per member​

GET /v1/analytics/team

Active members of the workspace, with their names. Signed-in users only: API keys never reach team details. Agents see only their own row.

Query parameters

NameTypeRequiredDescription
fromstring (date-time)NoDefaults to the start of the organisation's day, 29 days before to.
tostring (date-time)NoDefaults to now.
intervalenumNoOne of: hour, day, week. Default "day".
line_idstringNoLine id (ln_...).
team_idstring (uuid)No
pool_idstringNoPool id (pool_...).

Headers

NameTypeRequiredDescription
x-workspace-idstringNoWorkspace for session (JWT) callers. API keys carry their own workspace.

Response 200

FieldTypeDescription
membersobject[]
members[].closedintegerFrom 0 to 9007199254740991.
members[].conversations_handledintegerFrom 0 to 9007199254740991.
members[].full_namestring or null
members[].median_first_response_secondsnumber or null
members[].messages_sentintegerFrom 0 to 9007199254740991.
members[].roleenumOne of: owner, admin, billing, manager, agent, developer, analyst.
members[].user_idstring (uuid)
rangeobject
range.fromstring (date-time)ISO 8601 timestamp.
range.intervalenumOne of: hour, day, week.
range.timezonestringIANA time zone. Up to 64 characters.
range.tostring (date-time)ISO 8601 timestamp.

Errors: 400, 401, 403, 404, 409, 413, 415, 429, 500. See errors for the shape and codes.

Runs, completions, failures, handoffs and reply rate per workflow​

GET /v1/analytics/workflows

Runs started in the range, by workflow, busiest first. A handoff is a run that assigned the conversation to a person or team. The reply rate is the share of contacts the workflow messaged in the range who wrote back after its first message to them. Test-mode API keys are refused.

Query parameters

NameTypeRequiredDescription
fromstring (date-time)NoDefaults to the start of the organisation's day, 29 days before to.
tostring (date-time)NoDefaults to now.

Headers

NameTypeRequiredDescription
x-workspace-idstringNoWorkspace for session (JWT) callers. API keys carry their own workspace.

Response 200

FieldTypeDescription
rangeobject
range.fromstring (date-time)ISO 8601 timestamp.
range.intervalenumOne of: hour, day, week.
range.timezonestringIANA time zone. Up to 64 characters.
range.tostring (date-time)ISO 8601 timestamp.
workflowsobject[]
workflows[].completedintegerFrom 0 to 9007199254740991.
workflows[].failedintegerFrom 0 to 9007199254740991.
workflows[].handoffsintegerFrom 0 to 9007199254740991.
workflows[].messaged_contactsintegerFrom 0 to 9007199254740991.
workflows[].namestring
workflows[].replied_contactsintegerFrom 0 to 9007199254740991.
workflows[].reply_ratenumber or nullNull when the workflow messaged nobody in the range. From 0 to 1.
workflows[].runsintegerFrom 0 to 9007199254740991.
workflows[].workflow_idstring (uuid)

Errors: 400, 401, 403, 404, 409, 413, 415, 429, 500. See errors for the shape and codes.