{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/RecordingObjectWithDirectDownloadLinks",
  "title": "RecordingObjectWithDirectDownloadLinks",
  "type": "object",
  "required": [
    "id",
    "meetingId",
    "topic",
    "createTime",
    "timeRecorded",
    "siteUrl",
    "downloadUrl",
    "playbackUrl",
    "password",
    "format",
    "serviceType",
    "durationSeconds",
    "sizeBytes",
    "shareToMe",
    "status"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "7ee40776779243b4b3da448d941b34dc",
      "description": "A unique identifier for recording."
    },
    "meetingId": {
      "type": "string",
      "example": "f91b6edce9864428af084977b7c68291_I_166641849979635652",
      "description": "Unique identifier for the recording's ended meeting instance."
    },
    "scheduledMeetingId": {
      "type": "string",
      "example": "f91b6edce9864428af084977b7c68291_I_166641849979635652",
      "description": "Unique identifier for the recording's scheduled meeting instance."
    },
    "meetingSeriesId": {
      "type": "string",
      "example": "f91b6edce9864428af084977b7c68291",
      "description": "Unique identifier for the recording's meeting series."
    },
    "topic": {
      "type": "string",
      "example": "John's Meeting",
      "description": "The recording's topic."
    },
    "createTime": {
      "type": "string",
      "example": "2019-01-27T17:43:24Z",
      "description": "The date and time recording was created in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. Please note that it's not the time the record button was clicked in meeting but the time the recording file was generated offline."
    },
    "timeRecorded": {
      "type": "string",
      "example": "2019-01-27T17:40:20Z",
      "description": "The date and time recording started in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format. It indicates when the record button was clicked in the meeting."
    },
    "siteUrl": {
      "type": "string",
      "example": "site4-example.webex.com",
      "description": "Site URL for the recording."
    },
    "downloadUrl": {
      "type": "string",
      "example": "https://site4-example.webex.com/site4/lsr.php?RCID=60b864cc80aa5b44fc9769c8305b98b7",
      "description": "The download link for the recording. This attribute is not available if `prevent downloading` has been turned on for the recording being requested. The `prevent downloading` option can be viewed and set on page when editing a recording."
    },
    "playbackUrl": {
      "type": "string",
      "example": "https://site4-example.webex.com/site4/ldr.php?RCID=7a8a476b29a32cd1e06dfa6c81970f19",
      "description": "The playback link for recording."
    },
    "password": {
      "type": "string",
      "example": "********",
      "description": "The recording's password."
    },
    "format": {
      "type": "string",
      "enum": [
        "MP4",
        "ARF",
        "UPLOADED"
      ],
      "description": " * `MP4` - Recording file format is MP4.\n * `ARF` - Recording file format is ARF, a proprietary Webex recording format.\n * `UPLOADED` - The recording file is uploaded manually.\n"
    },
    "serviceType": {
      "type": "string",
      "enum": [
        "MeetingCenter",
        "EventCenter",
        "TrainingCenter",
        "SupportCenter"
      ],
      "description": " * `MeetingCenter` - The service type for the recording is meeting.\n * `EventCenter` - The service type for the recording is the event.\n * `TrainingCenter` - The service type for the recording is the training session.\n * `SupportCenter` - The service type for the recording is the support meeting.\n"
    },
    "durationSeconds": {
      "type": "number",
      "example": 4472,
      "description": "The duration of the recording in seconds."
    },
    "sizeBytes": {
      "type": "number",
      "example": 248023188,
      "description": "The size of the recording file in bytes."
    },
    "shareToMe": {
      "type": "boolean",
      "description": "Whether or not the recording has been shared to the current user."
    },
    "temporaryDirectDownloadLinks": {
      "type": "object",
      "properties": {
        "recordingDownloadLink": {
          "type": "string",
          "description": "The download link for recording MP4/ARF file without HTML page rendering in browser or HTTP redirect. Expires 3 hours after the API request."
        },
        "audioDownloadLink": {
          "type": "string",
          "description": "The download link for recording audio file without HTML page rendering in browser or HTTP redirect. This attribute is not available if **Prevent Downloading** has been turned on for the recording being requested. Expires 3 hours after the API request."
        },
        "transcriptDownloadLink": {
          "type": "string",
          "description": "The download link for recording transcript file without HTML page rendering in browser or HTTP redirect. This attribute is not available if **Prevent Downloading** has been turned on for the recording being requested. Expires 3 hours after the API request."
        },
        "expiration": {
          "type": "string",
          "description": "The date and time when `recordingDownloadLink`, `audioDownloadLink`, and `transcriptDownloadLink` expire in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compliant format."
        }
      },
      "description": "The download links for MP4/ARF, audio, and transcript of the recording without HTML page rendering in browser or HTTP redirect. This attribute is not available if the user is not a [Compliance Officer](/docs/compliance#compliance) and **Prevent Downloading** has been turned on for the recording being requested. The Prevent Downloading option can be viewed and set on page when editing a recording. Note that there are various products in [Webex Suite](https://www.cisco.com/c/en/us/products/conferencing/product_comparison.html) such as \"Webex Meetings\", \"Webex Training\" and \"Webex Events\"."
    },
    "integrationTags": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "External keys of the parent meeting created by an integration application. The key can be Zendesk ticket IDs, Jira IDs, Salesforce Opportunity IDs, etc. The integration application queries recordings by a key in its own domain."
    },
    "status": {
      "type": "string",
      "enum": [
        "available",
        "deleted",
        "purged"
      ],
      "description": " * `available` - Recording is available.\n * `deleted` - Recording has been moved to the recycle bin.\n * `purged` - Recording has been purged from the recycle bin. Please note that only a compliance officer can access recordings with a `purged` status.\n"
    }
  }
}