{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/webex/json-schema/webex-download-multiple-interactions-response-schema.json",
  "title": "DownloadMultipleInteractionsResponse",
  "x-generated": "2026-11-04",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/webex-captures-api-openapi.yml#/components/schemas/DownloadMultipleInteractionsResponse",
  "required": [
    "data",
    "meta"
  ],
  "type": "object",
  "properties": {
    "meta": {
      "$ref": "#/$defs/RecordingMetaData"
    },
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/MultipleInteractionsRecording"
      }
    }
  },
  "$defs": {
    "MultipleInteractionsRecording": {
      "required": [
        "recording",
        "transcription"
      ],
      "type": "object",
      "properties": {
        "taskId": {
          "type": "string",
          "description": "The ID of the task.",
          "format": "uuid"
        },
        "recording": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/RecordingMulti"
          }
        },
        "transcription": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/TranscriptMulti"
          }
        },
        "screenRecordings": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ScreenRecordingMulti"
          }
        }
      }
    },
    "RecordingAttributes": {
      "type": "object",
      "properties": {
        "fileName": {
          "type": "string",
          "description": "The file name of the recording."
        },
        "filePath": {
          "type": "string",
          "description": "Capture download url."
        },
        "startTime": {
          "type": "integer",
          "description": "Begin time of capture(epoch timestamp)",
          "format": "int64"
        },
        "stopTime": {
          "type": "integer",
          "description": "End time of capture(epoch timestamp).",
          "format": "int64"
        },
        "participants": {
          "type": "array",
          "description": "Comma separated list of CI user Id (UUID) of agents, masked customer contact email/phone details and virtual agent id if any involved in the recording.",
          "items": {
            "type": "string"
          }
        },
        "channel1": {
          "type": "string",
          "description": "Caller - channel contains caller audio only, Agent - channel contains agent audio only for main call and its segments, VA - channel contains virtual agent audio only."
        },
        "channel2": {
          "type": "string",
          "description": "Agent if callType is consult. For main callType, Agent/Caller/VA/Others based on number of participants."
        },
        "callType": {
          "type": "string",
          "description": "main if recording belongs to main call; consult if recording belongs to consult call; va-main if recording belongs to virtual agent in main call; va-consult if recording belongs to virtual agent in consult call."
        },
        "sensitive": {
          "type": "boolean",
          "description": "Applicable only to virtual agent recordings. Flag; (true) indicates the virtual agent recording may contain sensitive information, (false) otherwise."
        }
      }
    },
    "RecordingMetaData": {
      "type": "object",
      "properties": {
        "orgId": {
          "type": "string",
          "description": "Organization ID used for this operation.",
          "format": "uuid"
        },
        "urlExpiration": {
          "type": "integer",
          "description": "Number of minutes (from now) when the signed url expires.",
          "format": "int32"
        }
      }
    },
    "RecordingMulti": {
      "required": [
        "attributes"
      ],
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "description": "The ID of the recording."
        },
        "segment": {
          "type": "boolean",
          "description": "Flag; Indicates if this is the entire recording or only a segment of main recording. This flag will be always false for consult callType."
        },
        "attributes": {
          "$ref": "#/$defs/RecordingAttributes"
        }
      }
    },
    "ScreenRecordingAttributes": {
      "required": [
        "fileName",
        "filePath",
        "startTime",
        "stopTime",
        "agentId",
        "screenId"
      ],
      "type": "object",
      "properties": {
        "fileName": {
          "type": "string",
          "description": "The file name of the screen recording."
        },
        "filePath": {
          "type": "string",
          "description": "Screen recording download URL."
        },
        "startTime": {
          "type": "integer",
          "description": "Begin time of screen recording (epoch timestamp)",
          "format": "int64"
        },
        "stopTime": {
          "type": "integer",
          "description": "End time of screen recording (epoch timestamp).",
          "format": "int64"
        },
        "agentId": {
          "type": "string",
          "description": "The ID of the agent whose screen was recorded."
        },
        "screenId": {
          "type": "string",
          "description": "The ID of the screen being recorded."
        }
      }
    },
    "ScreenRecordingMulti": {
      "required": [
        "id",
        "attributes"
      ],
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "description": "The ID of the screen recording."
        },
        "attributes": {
          "$ref": "#/$defs/ScreenRecordingAttributes"
        }
      }
    },
    "TranscriptMulti": {
      "type": "object",
      "properties": {
        "Source": {
          "type": "string",
          "description": "Source of the transcription"
        },
        "Provider": {
          "type": "string",
          "description": "Provider of the generated transcription"
        },
        "id": {
          "type": "string",
          "description": "Voice Channel Transcript: Ccai ConfigId, Digital Channel Transcript: Conversation Id"
        },
        "fileName": {
          "type": "string",
          "description": "The file name of the transcript."
        },
        "filePath": {
          "type": "string",
          "description": "Capture download url. Please refer [Transcript Details Guide](/docs/digital-transcript-json-details) for more details."
        },
        "startTime": {
          "type": "string",
          "description": "Begin time of capture(epoch timestamp)"
        },
        "languageCode": {
          "type": "string",
          "description": "Language of the transcript"
        },
        "createTime": {
          "type": "string",
          "description": "Create time of capture(epoch timestamp)"
        }
      }
    }
  }
}