Get the conversation transcript
Separate from `/telemetry` on purpose. `available: false` means the session has no stored transcript. Contains what the caller and the bot said — personal data, including sensitive data. Required scope: `bot-calls.read`.
/bot-sessions/{dispatchId}/transcriptAuthorization
ApiKeyAuth An external API key, sent as Authorization: Bearer mflo_…. Scopes are checked per route; see each operation’s description.
In: header
Path Parameters
uuidResponse Body
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/bot-sessions/497f6eca-6276-4993-bfeb-53cbbbba6f08/transcript"{ "data": { "dispatchId": "a1a7028f-f483-4bbb-b8e5-fe878bddb1ae", "available": true, "message": "string", "rawFormat": true, "items": [ null ], "segments": [ { "id": "string", "speakerId": "assistant", "text": "string", "startTime": 0, "endTime": 0, "interrupted": true, "confidence": 0, "createdAt": 0, "metrics": { "property1": null, "property2": null }, "toolName": "string", "toolArguments": "string", "toolResult": "string", "toolIsError": true, "toolErrorKind": "tool_error" } ], "metadata": { "property1": null, "property2": null } }}Get per-call diagnostics GET
Why the call closed, what errored, how the pipeline performed. Deliberately serves NO conversation content: the transcript is a separate call, so an integration that only debugs never receives caller speech. `other` carries a curated set of further diagnostics, and runtime error messages are summarised to their type — short classified messages such as SIP statuses pass as written, and Mediflo support sees the full text; treat the named fields as the contract. Required scope: `bot-calls.read`.
Get a bot session GET
Adds the bot’s own structured `outcome` for the call, plus links to the telemetry, transcript and recording sub-resources. Required scope: `bot-calls.read`.