Bright Pattern Multichannel Call Recordings API

These methods are used to extract individual segments of multichannel call recordings (i.e., recordings where voice of each paricipating party is recorded into a separate audio file). The Get Multichannel Recording Structure method should be used first to obtain the Interaction IDs, Party IDs, and optionally segments, to be used in the subsequent Get Multichannel Recording Segment Audio File requests. Segments of multichannel recordings are available for export immediately upon call termination. Segments of multichannel recordings are exported in uncompressed PCM format for maximun speech quality. Note that because of the large size of multichannel PCM recording files, they are typically stored in the system for a limited amount of time. Check with your service provider about your limits, and consider overnight export of selected recordings for the previous working day.

OpenAPI Specification

bright-pattern-multichannel-call-recordings-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: BPCC Interaction Content Multichannel Call Recordings API
  version: 1.0.0
  description: 'With the BPCC Interaction Content API you currently can:


    Obtain general metadata for a service voice call.


    Obtain a regular audio recording of a service voice call in GSM format (a regular recording includes all call segments and voices of all call participants).


    Obtain audio recordings of individual participants in uncompressed PCM format (such recordings will be available if the multichannel call recording capability is enabled for your contact center).


    This document specifies the corresponding REST API methods, with example requests and responses. You can load this API into the Postman API Development Environment to interact with the API with your own access tokens.'
  contact:
    name: Bright Pattern
    url: https://www.brightpattern.com/contact/
  x-origin:
  - format: postman
    url: https://documenter.getpostman.com/view/6711197/S1EUtb1f
    version: '2.1'
  x-evidence:
    fetched: '2026-08-08'
    source: https://documenter.gw.postman.com/api/collections/6711197/S1EUtb1f?segregateAuth=true&versionTag=latest
    http_status: 200
    method: derived-from-published-postman-collection
    note: Mechanically converted from the Postman collection Bright Pattern publishes as its public API reference. No operations, paths, parameters or examples were invented.
servers:
- url: https://{tenant_url}
  description: Bright Pattern is multi-tenant; the base host is the customer contact-center tenant domain.
  variables:
    tenant_url:
      default: example.brightpattern.com
      description: Your Bright Pattern Contact Center tenant hostname.
security:
- bearerAuth: []
tags:
- name: Multichannel Call Recordings
  description: "These methods are used to extract individual segments of multichannel call recordings (i.e., recordings where voice of each paricipating party is recorded into a separate audio file).\n\nThe Get Multichannel Recording Structure method should be used first to obtain the Interaction IDs, Party IDs, and optionally segments, to be used in the subsequent Get Multichannel Recording Segment Audio File requests.\n\nSegments of multichannel recordings are available for export immediately upon call termination. \n\nSegments of multichannel recordings are exported in uncompressed PCM format for maximun speech quality. Note that because of the large  size of multichannel PCM recording files, they are typically stored in the system for a limited amount of time. Check with your service provider about your limits, and consider overnight export of selected recordings for the previous working day."
paths:
  /configapi/v2/multi_channel_recordings:
    get:
      operationId: getMultichannelRecordingStructure
      summary: Get Multichannel Recording Structure
      description: "This method is used to get information about the structure of a specific multichannel call recording. The call is identified by the Global Interaction Identifier (GIID). This article describes the various ways the GIID of a call can be obtained.\n\nThe API response is an array of objects, where each object contains the metadata for a specific interaction related to the GIID.\n\nResponse Body\n\nAttribute\nDescription\n\n_id\nInternal use only.\n\ntenant_id\nInternal use only.\n\nglobal_interaction_id\nThe GIID of this interaction. (The same GIID that was used to get this metadata.)\n\ninteraction_id\nThe GIID may refer to several related interactions (for example, a primary customer-agent call and a related consult call). Thus, in addition to the GIID, each interaction has a globally unique interaction_id. Each interaction has a list of parties.\n\nparties\nAn array of Party Objects, where each object contains information about a participant in the call. See the Party Object structure below.\n\nParty Object\n\nThe parties array contains one or more Party Objects.\n\nAttribute\nDescription\n\nparty_id\nIdentifier of a party within the interaction identified by the interaction_id. Note that this identifier is used exclusively for retrieval of the party's audio via the Get Party Audio File method and is not intended to be used for any other purposes.\n\nparty_type\nUSER - the given party is a configured BPCC user (typically, an agent);  \nCONTACT - the given party is a known customer;  \nUNIDENTIFIED - the given party could not be identified as either a BPCC user or a known customer.\n\nfirst_name\nParty's first name if available.\n\nlast_name\nParty's last name if available.\n\nphone\nParty's phone number used for the given call if available.\n\nuser_id\nInternal use only.\n\nrecordings\nAn array of Recording Segment Objects. Because call recording can be stopped and started, each party can have multiple segments. See the Recording Segment Object structure below.\n\nRecording Segment Object\n\nThe recordings array contains one or more Recording Segment Objects.\n\nAttribute\nDescription\n\nduration\nThe duration of this specific recording segment, in seconds (returned as a string).\n\nstart_time\nThe UTC timestamp for when the recording segment began, in ISO 8601 format."
      tags:
      - Multichannel Call Recordings
      parameters:
      - name: giid
        in: query
        required: false
        schema:
          type: string
      responses:
        '200':
          description: Multichannel recording description for a simple call
          content:
            application/json:
              example:
              - _id: 685a29343a36e54583e5952c
                tenant_id: C809D1F5-84C2-447E-AA03-E3D5000BA779
                global_interaction_id: 6F5D2671-0574-46F8-8417-EB0EA985A751
                interaction_id: 0FABD496-A231-4411-82BD-C68262862F36
                parties:
                - first_name: Susan
                  last_name: Mallorie
                  party_id: 6C631399-D74A-4F6E-AF17-523A286817DA
                  party_type: USER
                  phone: '1000'
                  recordings:
                  - duration: '37'
                    start_time: '2025-06-24T04:26:32.427Z'
                  user_id: 0EB98877-9517-4CB6-87C3-4A46EF6E6087
                - first_name: Allen
                  last_name: Hartzell
                  party_id: AB694080-1C65-4C5D-B893-0FEEE9CBCFDA
                  party_type: USER
                  phone: '2042'
                  recordings:
                  - duration: '37'
                    start_time: '2025-06-24T04:26:32.427Z'
                  user_id: 390FE1FC-1FBE-43C2-A527-32B39BD63036
      security:
      - bearerAuth: []
  /configapi/v2/multi_channel_recordings/audio:
    get:
      operationId: getMultichannelRecordingSegmentAudioFile
      summary: Get Multichannel Recording Segment Audio File
      description: Gets the desired segment of a multichannel recording identified by the GIID, interaction ID, party ID, and optionally the ordinal number of the desired segement. The latter is essential only if according to your practices recording may be stopped and started again while a call is in progress.
      tags:
      - Multichannel Call Recordings
      parameters:
      - name: giid
        in: query
        required: false
        schema:
          type: string
      - name: iid
        in: query
        required: false
        schema:
          type: string
      - name: party
        in: query
        required: false
        schema:
          type: string
      - name: recid
        in: query
        required: false
        schema:
          type: string
      responses:
        '200':
          description: Successful response
      security:
      - bearerAuth: []
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: 'OAuth 2.0 access token issued by the Bright Pattern token endpoint, sent as `Authorization: Bearer <token>`.'
    oauth2ClientCredentials:
      type: oauth2
      description: OAuth 2.0 client-credentials grant against the Bright Pattern tenant token endpoint.
      flows:
        clientCredentials:
          tokenUrl: https://{tenant_url}/configapi/v2/oauth/token
          scopes: {}