MCPBundler Docs
MCPBundler Docs
Back to marketplaceGetting StartedAuthenticationTutorial - Bundle to Connected Agent
API Reference
Agent A2A Tools
Agent Channels
Agent Configuration (Staging)
Agent Configuration (Versions)
Agent Tools
agents
Agents
Attachments
Auth
Billing
bundler
Bundler
Bundler Tool
Bundles
Call Campaigns
Catalog
Conversations
Export Conversations as CSVGet Conversation DetailList ConversationsStream Call Recording Track
Credentials
Deployments
Discover
Fleet
Genesys
Insights
internal
Knowledge Base Website Sources
Knowledge Bases
MCP Listings
Media
OAuth Clients
OAuth2
Observability
Organisation roles
Organisations
Providers
Reviews
Roadmap
SCIM
Simulation Tests
Suppression
Triggers
TTS
Users
Utils
Visitors
Voices
Webhooks
Workflows
API ReferenceConversations

Stream Call Recording Track

GET
/v1/conversations/{conversation_id}/recording/{track}

Stream one track as FLAC, decrypting segment by segment. A single Range is answered with 206 and maps onto the segments it covers; a multi-range request is answered with the whole track.

The conversation must be visible to the caller under the conversation detail rule (own with conversations:read, any with conversations:read_all), and access requires recordings:play in its organisation, which no platform bypass grants: platform admins get no access to customer audio. Every request re-checks that the recording's key exists and its retention has not elapsed, independently of the nightly expiry job.

The access row is an attempt audit: it is written and committed before the stored header is opened and the range parsed, so a request answered 503 or 416 is still logged. One row per playback session; its further range requests add none.

Every value the stream needs is read before that commit, and no ORM attribute is touched after it, so the session holds no database connection while the body is sent. A consequence is that the checks happen once per request: a revocation or storage failure after streaming has started does not stop the response already under way, which ends early (storage failure) or runs to its end (revocation). A player's next range request is refused.

Authorization

OAuth2AuthorizationCodeBearer
AuthorizationBearer <token>

In: header

Path Parameters

conversation_id*Conversation Id
Formatuuid
track*Track

Value in

  • "caller"
  • "agent"

Query Parameters

playback_id*Playback Id

Identifies one playback session; its range requests log one access

Formatuuid
verify_locally?Verify Locally
Defaulttrue

Header Parameters

Range?string|null

Response Body

audio/flac

audio/flac

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/v1/conversations/497f6eca-6276-4993-bfeb-53cbbbba6f08/recording/caller?playback_id=497f6eca-6276-4993-bfeb-53cbbbba6f08"
Empty
Empty
{  "detail": "string",  "code": "string"}
{  "detail": "string",  "code": "string"}
{  "detail": "string",  "code": "string"}
{  "detail": "string",  "code": "string"}
{  "detail": "string",  "code": "string"}
{  "detail": [    {      "loc": [        "string"      ],      "msg": "string",      "type": "string"    }  ]}
{  "detail": "string",  "code": "string"}

List Conversations

Previous Page

Credentials

Endpoints in the Credentials group.