Chilkat Online Tools

VB.NET / Zoom API / Get a webinar registrant

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 Chilkat.Http
Dim success As Boolean

Dim queryParams As New Chilkat.JsonObject
queryParams.UpdateString("occurrence_id","quis officia in reprehenderit")

' Adds the "Authorization: Bearer <access_token>" header.
http.AuthToken = "<access_token>"


Dim resp As Chilkat.HttpResponse = http.QuickRequestParams("GET","https://api.zoom.us/v2/webinars/:webinarId/registrants/:registrantId",queryParams)
If (http.LastMethodSuccess = False) Then
    Debug.WriteLine(http.LastErrorText)
    Exit Sub
End If


Dim sbResponseBody As New Chilkat.StringBuilder
resp.GetBodySb(sbResponseBody)

Dim jResp As New Chilkat.JsonObject
jResp.LoadSb(sbResponseBody)
jResp.EmitCompact = False

Debug.WriteLine("Response Body:")
Debug.WriteLine(jResp.Emit())

Dim respStatusCode As Integer = resp.StatusCode
Debug.WriteLine("Response Status Code = " & respStatusCode)
If (respStatusCode >= 400) Then
    Debug.WriteLine("Response Header:")
    Debug.WriteLine(resp.Header)
    Debug.WriteLine("Failed.")

    Exit Sub
End If



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

' {
'   "page_count": "1",
'   "page_number": "1",
'   "page_size": "30",
'   "total_records": "1",
'   "registrants": [
'     {
'       "id": "24000002122",
'       "email": "example@example.com",
'       "first_name": "Jill",
'       "last_name": "Chill",
'       "address": "1800 Amphibious Blvd.",
'       "city": "Mountain View",
'       "country": "US",
'       "zip": "94045",
'       "state": "CA",
'       "phone": "5550100",
'       "industry": "Food",
'       "org": "Cooking Org",
'       "job_title": "Chef",
'       "purchasing_time_frame": "1-3 months",
'       "role_in_purchase_process": "Influencer",
'       "no_of_employees": "10",
'       "comments": "Looking forward to the Webinar",
'       "custom_questions": [
'         {
'           "title": "What do you hope to learn from this Webinar?",
'           "value": "Look forward to learning how you come up with new recipes and what other services you offer."
'         }
'       ],
'       "status": "approved",
'       "create_time": "2019-02-26T23:01:16.899Z",
'       "join_url": "https://zoom.us/webinar/mywebinarissocooldighdghodghodg"
'     }
'   ]
' }

' 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 email As String
Dim first_name As String
Dim last_name 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 join_url As String
Dim j As Integer
Dim count_j As Integer
Dim title As String
Dim value As String

Dim page_count As String = jResp.StringOf("page_count")
Dim page_number As String = jResp.StringOf("page_number")
Dim page_size As String = jResp.StringOf("page_size")
Dim total_records As String = jResp.StringOf("total_records")
Dim i As Integer = 0
Dim count_i As Integer = jResp.SizeOfArray("registrants")
While i < count_i
    jResp.I = i
    id = jResp.StringOf("registrants[i].id")
    email = jResp.StringOf("registrants[i].email")
    first_name = jResp.StringOf("registrants[i].first_name")
    last_name = jResp.StringOf("registrants[i].last_name")
    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")
    join_url = jResp.StringOf("registrants[i].join_url")
    j = 0
    count_j = jResp.SizeOfArray("registrants[i].custom_questions")
    While j < count_j
        jResp.J = j
        title = jResp.StringOf("registrants[i].custom_questions[j].title")
        value = jResp.StringOf("registrants[i].custom_questions[j].value")
        j = j + 1
    End While
    i = i + 1
End While

Curl Command

curl -G -d "occurrence_id=quis%20officia%20in%20reprehenderit"
	-H "Authorization: Bearer <access_token>"
https://api.zoom.us/v2/webinars/:webinarId/registrants/:registrantId

Postman Collection Item JSON

{
  "name": "Get a webinar registrant",
  "request": {
    "auth": {
      "type": "oauth2"
    },
    "method": "GET",
    "header": [
    ],
    "url": {
      "raw": "{{baseUrl}}/webinars/:webinarId/registrants/:registrantId?occurrence_id=quis officia in reprehenderit",
      "host": [
        "{{baseUrl}}"
      ],
      "path": [
        "webinars",
        ":webinarId",
        "registrants",
        ":registrantId"
      ],
      "query": [
        {
          "key": "occurrence_id",
          "value": "quis officia in reprehenderit",
          "description": "The meeting or webinar occurrence ID."
        }
      ],
      "variable": [
        {
          "key": "webinarId",
          "value": "68423085",
          "description": "(Required) The webinar's ID."
        },
        {
          "key": "registrantId",
          "value": "quis officia in reprehenderit",
          "description": "(Required) The registrant ID."
        }
      ]
    },
    "description": "Zoom users with a [Webinar Plan](https://zoom.us/webinar) have access to creating and managing Webinars. Webinar allows a host to broadcast a Zoom meeting to up to 10,000 attendees. Scheduling a [Webinar with registration](https://support.zoom.us/hc/en-us/articles/204619915-Scheduling-a-Webinar-with-Registration) requires your registrants to complete a brief form before receiving the link to join the Webinar.<br>Use this API to get details on a specific user who has registered for the Webinar.<br><br>\n**Scopes:** `webinar:read:admin` `webinar:read`<br>\n \n **[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `Light`<br>\n**Prerequisites:**<br>\n* The account must have a Webinar plan."
  },
  "response": [
    {
      "name": "Success.",
      "originalRequest": {
        "method": "GET",
        "header": [
          {
            "description": "Added as a part of security scheme: oauth2",
            "key": "Authorization",
            "value": "<token>"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/webinars/:webinarId/registrants/:registrantId?occurrence_id=quis officia in reprehenderit",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "webinars",
            ":webinarId",
            "registrants",
            ":registrantId"
          ],
          "query": [
            {
              "key": "occurrence_id",
              "value": "quis officia in reprehenderit"
            }
          ],
          "variable": [
            {
              "key": "webinarId",
              "value": "68423085",
              "description": "(Required) The webinar's ID."
            },
            {
              "key": "registrantId",
              "value": "quis officia in reprehenderit",
              "description": "(Required) The registrant ID."
            }
          ]
        }
      },
      "status": "OK",
      "code": 200,
      "_postman_previewlanguage": "json",
      "header": [
        {
          "key": "Content-Type",
          "value": "application/json"
        }
      ],
      "cookie": [
      ],
      "body": "{\n \"page_count\": \"1\",\n \"page_number\": \"1\",\n \"page_size\": \"30\",\n \"total_records\": \"1\",\n \"registrants\": [\n  {\n   \"id\": \"24000002122\",\n   \"email\": \"example@example.com\",\n   \"first_name\": \"Jill\",\n   \"last_name\": \"Chill\",\n   \"address\": \"1800 Amphibious Blvd.\",\n   \"city\": \"Mountain View\",\n   \"country\": \"US\",\n   \"zip\": \"94045\",\n   \"state\": \"CA\",\n   \"phone\": \"5550100\",\n   \"industry\": \"Food\",\n   \"org\": \"Cooking Org\",\n   \"job_title\": \"Chef\",\n   \"purchasing_time_frame\": \"1-3 months\",\n   \"role_in_purchase_process\": \"Influencer\",\n   \"no_of_employees\": \"10\",\n   \"comments\": \"Looking forward to the Webinar\",\n   \"custom_questions\": [\n    {\n     \"title\": \"What do you hope to learn from this Webinar?\",\n     \"value\": \"Look forward to learning how you come up with new recipes and what other services you offer.\"\n    }\n   ],\n   \"status\": \"approved\",\n   \"create_time\": \"2019-02-26T23:01:16.899Z\",\n   \"join_url\": \"https://zoom.us/webinar/mywebinarissocooldighdghodghodg\"\n  }\n ]\n}"
    },
    {
      "name": "Invalid webinar ID.",
      "originalRequest": {
        "method": "GET",
        "header": [
          {
            "description": "Added as a part of security scheme: oauth2",
            "key": "Authorization",
            "value": "<token>"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/webinars/:webinarId/registrants/:registrantId?occurrence_id=quis officia in reprehenderit",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "webinars",
            ":webinarId",
            "registrants",
            ":registrantId"
          ],
          "query": [
            {
              "key": "occurrence_id",
              "value": "quis officia in reprehenderit"
            }
          ],
          "variable": [
            {
              "key": "webinarId",
              "value": "68423085",
              "description": "(Required) The webinar's ID."
            },
            {
              "key": "registrantId",
              "value": "quis officia in reprehenderit",
              "description": "(Required) The registrant ID."
            }
          ]
        }
      },
      "status": "Multiple Choices",
      "code": 300,
      "_postman_previewlanguage": "text",
      "header": [
        {
          "key": "Content-Type",
          "value": "text/plain"
        }
      ],
      "cookie": [
      ],
      "body": ""
    },
    {
      "name": "**HTTP Status Code:** `400`<br>\nBad request<br>\n**Error Code:** `1010`<br>\nUser does not belong to this account:{accountId}.<br>",
      "originalRequest": {
        "method": "GET",
        "header": [
          {
            "description": "Added as a part of security scheme: oauth2",
            "key": "Authorization",
            "value": "<token>"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/webinars/:webinarId/registrants/:registrantId?occurrence_id=quis officia in reprehenderit",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "webinars",
            ":webinarId",
            "registrants",
            ":registrantId"
          ],
          "query": [
            {
              "key": "occurrence_id",
              "value": "quis officia in reprehenderit"
            }
          ],
          "variable": [
            {
              "key": "webinarId",
              "value": "68423085",
              "description": "(Required) The webinar's ID."
            },
            {
              "key": "registrantId",
              "value": "quis officia in reprehenderit",
              "description": "(Required) The registrant ID."
            }
          ]
        }
      },
      "status": "Bad Request",
      "code": 400,
      "_postman_previewlanguage": "text",
      "header": [
        {
          "key": "Content-Type",
          "value": "text/plain"
        }
      ],
      "cookie": [
      ],
      "body": ""
    },
    {
      "name": "**HTTP Status Code:** `404`<br>\nWebinar not found.<br>\n**Error Code:** `1001`<br>\nUser {userId} does not exist or does not belong to this account.<br>\n**Error Code:** `3001`<br>\nWebinar {webinarId} not found or has expired.<br>",
      "originalRequest": {
        "method": "GET",
        "header": [
          {
            "description": "Added as a part of security scheme: oauth2",
            "key": "Authorization",
            "value": "<token>"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/webinars/:webinarId/registrants/:registrantId?occurrence_id=quis officia in reprehenderit",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "webinars",
            ":webinarId",
            "registrants",
            ":registrantId"
          ],
          "query": [
            {
              "key": "occurrence_id",
              "value": "quis officia in reprehenderit"
            }
          ],
          "variable": [
            {
              "key": "webinarId",
              "value": "68423085",
              "description": "(Required) The webinar's ID."
            },
            {
              "key": "registrantId",
              "value": "quis officia in reprehenderit",
              "description": "(Required) The registrant ID."
            }
          ]
        }
      },
      "status": "Not Found",
      "code": 404,
      "_postman_previewlanguage": "text",
      "header": [
        {
          "key": "Content-Type",
          "value": "text/plain"
        }
      ],
      "cookie": [
      ],
      "body": ""
    }
  ]
}