Chilkat Online Tools

DataFlex / Zoom API / Get meeting archived files

Back to Collection Items

Use ChilkatAx-9.5.0-win32.pkg

Procedure Test
    Handle hoHttp
    Boolean iSuccess
    Variant vSbResponseBody
    Handle hoSbResponseBody
    Handle hoJResp
    Integer iRespStatusCode
    String sId_str
    String sFile_type
    String sFile_extension
    Integer iFile_size
    String sDownload_url
    String sStatus
    String sRecording_type
    Boolean iIndividual
    String sParticipant_email
    String sParticipant_join_time
    String sParticipant_leave_time
    String sUuid
    Integer iId
    String sHost_id
    String sTopic
    Integer iV_type
    String sStart_time
    String sTimezone
    Integer iDuration
    Integer iTotal_size
    Integer iRecording_count
    String sMeeting_type
    String sAccount_name
    String sComplete_time
    Boolean iIs_breakout_room
    Integer i
    Integer iCount_i
    String sTemp1

    // This example assumes the Chilkat API to have been previously unlocked.
    // See Global Unlock Sample for sample code.

    Get Create (RefClass(cComChilkatHttp)) To hoHttp
    If (Not(IsComObjectCreated(hoHttp))) Begin
        Send CreateComObject of hoHttp
    End

    // Adds the "Authorization: Bearer <access_token>" header.
    Set ComAuthToken Of hoHttp To "<access_token>"

    Get Create (RefClass(cComChilkatStringBuilder)) To hoSbResponseBody
    If (Not(IsComObjectCreated(hoSbResponseBody))) Begin
        Send CreateComObject of hoSbResponseBody
    End
    Get pvComObject of hoSbResponseBody to vSbResponseBody
    Get ComQuickGetSb Of hoHttp "https://api.zoom.us/v2/past_meetings/:meetingUUID/archive_files" vSbResponseBody To iSuccess
    If (iSuccess = False) Begin
        Get ComLastErrorText Of hoHttp To sTemp1
        Showln sTemp1
        Procedure_Return
    End

    Get Create (RefClass(cComChilkatJsonObject)) To hoJResp
    If (Not(IsComObjectCreated(hoJResp))) Begin
        Send CreateComObject of hoJResp
    End
    Get pvComObject of hoSbResponseBody to vSbResponseBody
    Get ComLoadSb Of hoJResp vSbResponseBody To iSuccess
    Set ComEmitCompact Of hoJResp To False

    Showln "Response Body:"
    Get ComEmit Of hoJResp To sTemp1
    Showln sTemp1

    Get ComLastStatus Of hoHttp To iRespStatusCode
    Showln "Response Status Code = " iRespStatusCode
    If (iRespStatusCode >= 400) Begin
        Showln "Response Header:"
        Get ComLastHeader Of hoHttp To sTemp1
        Showln sTemp1
        Showln "Failed."
        Procedure_Return
    End

    // Sample JSON response:
    // (Sample code for parsing the JSON response is shown below)

    // {
    //   "uuid": "yVaEafxxRN+tiOZUSWKJVw==",
    //   "id": 4554919265,
    //   "host_id": "7pTFNV2SS0i0LKfQhmMyHQ",
    //   "topic": "ZOOM_API Test's Personal Meeting Room",
    //   "type": 4,
    //   "start_time": "2021-04-26T05:23:18Z",
    //   "timezone": "Asia/Shanghai",
    //   "duration": 1,
    //   "total_size": 2676453,
    //   "recording_count": 2,
    //   "meeting_type": "internal",
    //   "account_name": "account_01",
    //   "complete_time": "2021-03-12T02:57:27Z",
    //   "is_breakout_room": false,
    //   "archive_files": [
    //     {
    //       "id": "20d04c59-df9a-442b-9a3d-570884bede07",
    //       "file_type": "MP4",
    //       "file_extension": "MP4",
    //       "file_size": 1434664,
    //       "download_url": "https://example.com/recording/download/Qg75t7xZBtEbAkjdlgbfdngBBBB",
    //       "status": "completed",
    //       "recording_type": "shared_screen_with_speaker_view",
    //       "individual": true,
    //       "participant_email": "user@example.com",
    //       "participant_join_time": "2021-03-12T02:07:27Z",
    //       "participant_leave_time": "2021-03-12T02:12:27Z"
    //     },
    //     {
    //       "id": "83cc23a5-3a35-44e2-87b3-a2b5a4dac6f8",
    //       "file_type": "M4A",
    //       "file_extension": "M4A",
    //       "file_size": 1241789,
    //       "download_url": "https://example.com/recording/download/Qg75t7xZBtEbAkjdlgbfdngCCCC",
    //       "status": "completed",
    //       "recording_type": "audio_only",
    //       "individual": true,
    //       "participant_email": "user1@example.com",
    //       "participant_join_time": "2021-03-12T02:07:27Z",
    //       "participant_leave_time": "2021-03-12T02:12:27Z"
    //     }
    //   ]
    // }

    // Sample code for parsing the JSON response...
    // Use this online tool to generate parsing code from sample JSON: Generate JSON Parsing Code

    Get ComStringOf Of hoJResp "uuid" To sUuid
    Get ComIntOf Of hoJResp "id" To iId
    Get ComStringOf Of hoJResp "host_id" To sHost_id
    Get ComStringOf Of hoJResp "topic" To sTopic
    Get ComIntOf Of hoJResp "type" To iV_type
    Get ComStringOf Of hoJResp "start_time" To sStart_time
    Get ComStringOf Of hoJResp "timezone" To sTimezone
    Get ComIntOf Of hoJResp "duration" To iDuration
    Get ComIntOf Of hoJResp "total_size" To iTotal_size
    Get ComIntOf Of hoJResp "recording_count" To iRecording_count
    Get ComStringOf Of hoJResp "meeting_type" To sMeeting_type
    Get ComStringOf Of hoJResp "account_name" To sAccount_name
    Get ComStringOf Of hoJResp "complete_time" To sComplete_time
    Get ComBoolOf Of hoJResp "is_breakout_room" To iIs_breakout_room
    Move 0 To i
    Get ComSizeOfArray Of hoJResp "archive_files" To iCount_i
    While (i < iCount_i)
        Set ComI Of hoJResp To i
        Get ComStringOf Of hoJResp "archive_files[i].id" To sId_str
        Get ComStringOf Of hoJResp "archive_files[i].file_type" To sFile_type
        Get ComStringOf Of hoJResp "archive_files[i].file_extension" To sFile_extension
        Get ComIntOf Of hoJResp "archive_files[i].file_size" To iFile_size
        Get ComStringOf Of hoJResp "archive_files[i].download_url" To sDownload_url
        Get ComStringOf Of hoJResp "archive_files[i].status" To sStatus
        Get ComStringOf Of hoJResp "archive_files[i].recording_type" To sRecording_type
        Get ComBoolOf Of hoJResp "archive_files[i].individual" To iIndividual
        Get ComStringOf Of hoJResp "archive_files[i].participant_email" To sParticipant_email
        Get ComStringOf Of hoJResp "archive_files[i].participant_join_time" To sParticipant_join_time
        Get ComStringOf Of hoJResp "archive_files[i].participant_leave_time" To sParticipant_leave_time
        Move (i + 1) To i
    Loop



End_Procedure

Curl Command

curl -X GET
	-H "Authorization: Bearer <access_token>"
https://api.zoom.us/v2/past_meetings/:meetingUUID/archive_files

Postman Collection Item JSON

{
  "name": "Get meeting archived files",
  "request": {
    "method": "GET",
    "header": [
    ],
    "url": {
      "raw": "{{baseUrl}}/past_meetings/:meetingUUID/archive_files",
      "host": [
        "{{baseUrl}}"
      ],
      "path": [
        "past_meetings",
        ":meetingUUID",
        "archive_files"
      ],
      "variable": [
        {
          "key": "meetingUUID",
          "value": "quis officia in reprehenderit",
          "description": "(Required) The meeting's universally unique identifier (UUID). Each meeting instance generates a UUID. For example, after a meeting ends, a new UUID is generated for the next meeting instance.\n\nIf the meeting UUID begins with a `/` character or contains a `//` character, you **must** double-encode the meeting UUID when using the meeting UUID for other API calls."
        }
      ]
    },
    "description": "List the archived recording files of the specific meeting instance. For more information, read our [Managing archiving of meeting and webinar data](https://support.zoom.us/hc/en-us/articles/360050431572-Archiving-Meeting-and-Webinar-data) documentation.\n\n**Scopes:** `recording:read`<br>**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `Light`\n\n**Prerequisites:** \n* Follow the [enablement process](https://support.zoom.us/hc/en-us/articles/360050431572-Archiving-Meeting-and-Webinar-data#h_01ENPBD3WR68D7FAKTBY92SG45) to access the archiving feature."
  },
  "response": [
    {
      "name": "**HTTP Status Code:** `200` **OK**\nMeeting with Archived files returned.\n",
      "originalRequest": {
        "method": "GET",
        "header": [
          {
            "description": "Added as a part of security scheme: oauth2",
            "key": "Authorization",
            "value": "<token>"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/past_meetings/:meetingUUID/archive_files",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "past_meetings",
            ":meetingUUID",
            "archive_files"
          ],
          "variable": [
            {
              "key": "meetingUUID",
              "value": "quis officia in reprehenderit",
              "description": "(Required) The meeting's universally unique identifier (UUID). Each meeting instance generates a UUID. For example, after a meeting ends, a new UUID is generated for the next meeting instance.\n\nIf the meeting UUID begins with a `/` character or contains a `//` character, you **must** double-encode the meeting UUID when using the meeting UUID for other API calls."
            }
          ]
        }
      },
      "status": "OK",
      "code": 200,
      "_postman_previewlanguage": "json",
      "header": [
        {
          "key": "Content-Type",
          "value": "application/json"
        }
      ],
      "cookie": [
      ],
      "body": "{\n \"uuid\": \"yVaEafxxRN+tiOZUSWKJVw==\",\n \"id\": 4554919265,\n \"host_id\": \"7pTFNV2SS0i0LKfQhmMyHQ\",\n \"topic\": \"ZOOM_API Test's Personal Meeting Room\",\n \"type\": 4,\n \"start_time\": \"2021-04-26T05:23:18Z\",\n \"timezone\": \"Asia/Shanghai\",\n \"duration\": 1,\n \"total_size\": 2676453,\n \"recording_count\": 2,\n \"meeting_type\": \"internal\",\n \"account_name\": \"account_01\",\n \"complete_time\": \"2021-03-12T02:57:27Z\",\n \"is_breakout_room\": false,\n \"archive_files\": [\n  {\n   \"id\": \"20d04c59-df9a-442b-9a3d-570884bede07\",\n   \"file_type\": \"MP4\",\n   \"file_extension\": \"MP4\",\n   \"file_size\": 1434664,\n   \"download_url\": \"https://example.com/recording/download/Qg75t7xZBtEbAkjdlgbfdngBBBB\",\n   \"status\": \"completed\",\n   \"recording_type\": \"shared_screen_with_speaker_view\",\n   \"individual\": true,\n   \"participant_email\": \"user@example.com\",\n   \"participant_join_time\": \"2021-03-12T02:07:27Z\",\n   \"participant_leave_time\": \"2021-03-12T02:12:27Z\"\n  },\n  {\n   \"id\": \"83cc23a5-3a35-44e2-87b3-a2b5a4dac6f8\",\n   \"file_type\": \"M4A\",\n   \"file_extension\": \"M4A\",\n   \"file_size\": 1241789,\n   \"download_url\": \"https://example.com/recording/download/Qg75t7xZBtEbAkjdlgbfdngCCCC\",\n   \"status\": \"completed\",\n   \"recording_type\": \"audio_only\",\n   \"individual\": true,\n   \"participant_email\": \"user1@example.com\",\n   \"participant_join_time\": \"2021-03-12T02:07:27Z\",\n   \"participant_leave_time\": \"2021-03-12T02:12:27Z\"\n  }\n ]\n}"
    },
    {
      "name": "**HTTP Status Code:** `404`<br>\nMeeting recording not found.<br>\n**Error Code:** `3001`<br>\nMeeting {meetingUUId} does not exist.",
      "originalRequest": {
        "method": "GET",
        "header": [
          {
            "description": "Added as a part of security scheme: oauth2",
            "key": "Authorization",
            "value": "<token>"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/past_meetings/:meetingUUID/archive_files",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "past_meetings",
            ":meetingUUID",
            "archive_files"
          ],
          "variable": [
            {
              "key": "meetingUUID",
              "value": "quis officia in reprehenderit",
              "description": "(Required) The meeting's universally unique identifier (UUID). Each meeting instance generates a UUID. For example, after a meeting ends, a new UUID is generated for the next meeting instance.\n\nIf the meeting UUID begins with a `/` character or contains a `//` character, you **must** double-encode the meeting UUID when using the meeting UUID for other API calls."
            }
          ]
        }
      },
      "status": "Not Found",
      "code": 404,
      "_postman_previewlanguage": "text",
      "header": [
        {
          "key": "Content-Type",
          "value": "text/plain"
        }
      ],
      "cookie": [
      ],
      "body": ""
    }
  ]
}