VB6 / Zoom API / List recording registrants
Back to Collection Items
' This example assumes the Chilkat API to have been previously unlocked.
' See Global Unlock Sample for sample code.
Dim http As New ChilkatHttp
Dim success As Long
Dim queryParams As New ChilkatJsonObject
success = queryParams.UpdateString("status","approved")
success = queryParams.UpdateInt("page_size",30)
success = queryParams.UpdateInt("page_number",1)
success = queryParams.UpdateString("next_page_token","quis officia in reprehenderit")
' Adds the "Authorization: Bearer <access_token>" header.
http.AuthToken = "<access_token>"
Dim resp As ChilkatHttpResponse
Set resp = http.QuickRequestParams("GET","https://api.zoom.us/v2/meetings/:meetingId/recordings/registrants",queryParams)
If (http.LastMethodSuccess = 0) Then
Debug.Print http.LastErrorText
Exit Sub
End If
Dim sbResponseBody As New ChilkatStringBuilder
success = resp.GetBodySb(sbResponseBody)
Dim jResp As New ChilkatJsonObject
success = jResp.LoadSb(sbResponseBody)
jResp.EmitCompact = 0
Debug.Print "Response Body:"
Debug.Print jResp.Emit()
Dim respStatusCode As Long
respStatusCode = resp.StatusCode
Debug.Print "Response Status Code = " & respStatusCode
If (respStatusCode >= 400) Then
Debug.Print "Response Header:"
Debug.Print resp.Header
Debug.Print "Failed."
Exit Sub
End If
' Sample JSON response:
' (Sample code for parsing the JSON response is shown below)
' {
' "page_count": 0,
' "page_number": 1,
' "page_size": 30,
' "total_records": 1,
' "registrants": [
' {
' "id": "sskldsbdABBBBBBBB",
' "first_name": "Shri",
' "last_name": "Shree",
' "email": "example@example.com",
' "address": "1800 Amphibious Blvd.",
' "city": "Mountain View",
' "country": "US",
' "zip": "94045",
' "state": "CA",
' "phone": "5550100",
' "industry": "sfsdf",
' "org": "dsadsfsf",
' "job_title": "sfsdfsdf",
' "purchasing_time_frame": "Within a month",
' "role_in_purchase_process": "Influencer",
' "no_of_employees": "40",
' "comments": "Amazing!",
' "custom_questions": [
' ],
' "status": "approved",
' "create_time": "2019-08-29T23:04:08Z",
' "share_url": "https://zoom.us/recording/share/IlA1ABCDDJHKNDkkkkkkkTziMw"
' }
' ]
' }
' Sample code for parsing the JSON response...
' Use this online tool to generate parsing code from sample JSON: Generate JSON Parsing Code
Dim id As String
Dim first_name As String
Dim last_name As String
Dim email As String
Dim address As String
Dim city As String
Dim country As String
Dim zip As String
Dim state As String
Dim phone As String
Dim industry As String
Dim org As String
Dim job_title As String
Dim purchasing_time_frame As String
Dim role_in_purchase_process As String
Dim no_of_employees As String
Dim comments As String
Dim status As String
Dim create_time As String
Dim share_url As String
Dim j As Long
Dim count_j As Long
Dim page_count As Long
page_count = jResp.IntOf("page_count")
Dim page_number As Long
page_number = jResp.IntOf("page_number")
Dim page_size As Long
page_size = jResp.IntOf("page_size")
Dim total_records As Long
total_records = jResp.IntOf("total_records")
Dim i As Long
i = 0
Dim count_i As Long
count_i = jResp.SizeOfArray("registrants")
Do While i < count_i
jResp.I = i
id = jResp.StringOf("registrants[i].id")
first_name = jResp.StringOf("registrants[i].first_name")
last_name = jResp.StringOf("registrants[i].last_name")
email = jResp.StringOf("registrants[i].email")
address = jResp.StringOf("registrants[i].address")
city = jResp.StringOf("registrants[i].city")
country = jResp.StringOf("registrants[i].country")
zip = jResp.StringOf("registrants[i].zip")
state = jResp.StringOf("registrants[i].state")
phone = jResp.StringOf("registrants[i].phone")
industry = jResp.StringOf("registrants[i].industry")
org = jResp.StringOf("registrants[i].org")
job_title = jResp.StringOf("registrants[i].job_title")
purchasing_time_frame = jResp.StringOf("registrants[i].purchasing_time_frame")
role_in_purchase_process = jResp.StringOf("registrants[i].role_in_purchase_process")
no_of_employees = jResp.StringOf("registrants[i].no_of_employees")
comments = jResp.StringOf("registrants[i].comments")
status = jResp.StringOf("registrants[i].status")
create_time = jResp.StringOf("registrants[i].create_time")
share_url = jResp.StringOf("registrants[i].share_url")
j = 0
count_j = jResp.SizeOfArray("registrants[i].custom_questions")
Do While j < count_j
jResp.J = j
j = j + 1
Loop
i = i + 1
Loop
Curl Command
curl -G -d "status=approved"
-d "page_size=30"
-d "page_number=1"
-d "next_page_token=quis%20officia%20in%20reprehenderit"
-H "Authorization: Bearer <access_token>"
https://api.zoom.us/v2/meetings/:meetingId/recordings/registrants
Postman Collection Item JSON
{
"name": "List recording registrants",
"request": {
"auth": {
"type": "oauth2"
},
"method": "GET",
"header": [
],
"url": {
"raw": "{{baseUrl}}/meetings/:meetingId/recordings/registrants?status=approved&page_size=30&page_number=1&next_page_token=quis officia in reprehenderit",
"host": [
"{{baseUrl}}"
],
"path": [
"meetings",
":meetingId",
"recordings",
"registrants"
],
"query": [
{
"key": "status",
"value": "approved",
"description": "Query by the registrant's status: \n* `pending` — The registration is pending. \n* `approved` — The registrant is approved. \n* `denied` — The registration is denied."
},
{
"key": "page_size",
"value": "30",
"description": "The number of records returned within a single API call."
},
{
"key": "page_number",
"value": "1",
"description": "**Deprecated.** We will no longer support this field in a future release. Instead, use the `next_page_token` for pagination."
},
{
"key": "next_page_token",
"value": "quis officia in reprehenderit",
"description": "The next page token is used to paginate through large result sets. A next page token will be returned whenever the set of available results exceeds the current page size. The expiration period for this token is 15 minutes."
}
],
"variable": [
{
"key": "meetingId",
"value": "68423085",
"description": "(Required) The meeting's ID. \n\n When storing this value in your database, you must store it as a **long** format integer and **not** an integer. Meeting IDs can exceed 10 digits."
}
]
},
"description": "Use this API to list registrants of a past meeting's [on-demand cloud recordings](https://support.zoom.us/hc/en-us/articles/360000488283-On-demand-recordings). Users must [register](https://marketplace.zoom.us/docs/api-reference/zoom-api/cloud-recording/meetingrecordingregistrantcreate) to view the recordings. \n\n **Scopes:** `recording:read:admin`, `recording:read` <br> **[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `Medium`"
},
"response": [
{
"name": "**HTTP Status Code:** `200` <br>\n Registrants returned.",
"originalRequest": {
"method": "GET",
"header": [
{
"description": "Added as a part of security scheme: oauth2",
"key": "Authorization",
"value": "<token>"
}
],
"url": {
"raw": "{{baseUrl}}/meetings/:meetingId/recordings/registrants?status=approved&page_size=30&page_number=1&next_page_token=quis officia in reprehenderit",
"host": [
"{{baseUrl}}"
],
"path": [
"meetings",
":meetingId",
"recordings",
"registrants"
],
"query": [
{
"key": "status",
"value": "approved"
},
{
"key": "page_size",
"value": "30"
},
{
"key": "page_number",
"value": "1"
},
{
"key": "next_page_token",
"value": "quis officia in reprehenderit"
}
],
"variable": [
{
"key": "meetingId",
"value": "68423085",
"description": "(Required) The meeting's ID. \n\n When storing this value in your database, you must store it as a **long** format integer and **not** an integer. Meeting IDs can exceed 10 digits."
}
]
}
},
"status": "OK",
"code": 200,
"_postman_previewlanguage": "json",
"header": [
{
"key": "Content-Type",
"value": "application/json"
}
],
"cookie": [
],
"body": "{\n \"page_count\": 0,\n \"page_number\": 1,\n \"page_size\": 30,\n \"total_records\": 1,\n \"registrants\": [\n {\n \"id\": \"sskldsbdABBBBBBBB\",\n \"first_name\": \"Shri\",\n \"last_name\": \"Shree\",\n \"email\": \"example@example.com\",\n \"address\": \"1800 Amphibious Blvd.\",\n \"city\": \"Mountain View\",\n \"country\": \"US\",\n \"zip\": \"94045\",\n \"state\": \"CA\",\n \"phone\": \"5550100\",\n \"industry\": \"sfsdf\",\n \"org\": \"dsadsfsf\",\n \"job_title\": \"sfsdfsdf\",\n \"purchasing_time_frame\": \"Within a month\",\n \"role_in_purchase_process\": \"Influencer\",\n \"no_of_employees\": \"40\",\n \"comments\": \"Amazing!\",\n \"custom_questions\": [],\n \"status\": \"approved\",\n \"create_time\": \"2019-08-29T23:04:08Z\",\n \"share_url\": \"https://zoom.us/recording/share/IlA1ABCDDJHKNDkkkkkkkTziMw\"\n }\n ]\n}"
},
{
"name": "**HTTP Status Code:** `404` <br>\n Meeting recording not found.",
"originalRequest": {
"method": "GET",
"header": [
{
"description": "Added as a part of security scheme: oauth2",
"key": "Authorization",
"value": "<token>"
}
],
"url": {
"raw": "{{baseUrl}}/meetings/:meetingId/recordings/registrants?status=approved&page_size=30&page_number=1&next_page_token=quis officia in reprehenderit",
"host": [
"{{baseUrl}}"
],
"path": [
"meetings",
":meetingId",
"recordings",
"registrants"
],
"query": [
{
"key": "status",
"value": "approved"
},
{
"key": "page_size",
"value": "30"
},
{
"key": "page_number",
"value": "1"
},
{
"key": "next_page_token",
"value": "quis officia in reprehenderit"
}
],
"variable": [
{
"key": "meetingId",
"value": "68423085",
"description": "(Required) The meeting's ID. \n\n When storing this value in your database, you must store it as a **long** format integer and **not** an integer. Meeting IDs can exceed 10 digits."
}
]
}
},
"status": "Not Found",
"code": 404,
"_postman_previewlanguage": "text",
"header": [
{
"key": "Content-Type",
"value": "text/plain"
}
],
"cookie": [
],
"body": ""
}
]
}