Webinar APIs - Get Participants/Get Registrants

I have questions around Webinar APIs

Question 1:
API for getting webinar registrants is not returning constant output.
“/v2/webinars/webinar_id /registrants?page_size=30”

When I run this API for the webinar which happened on Dec 18, 2019, I am getting the expected output mentioned in the API documentation https://marketplace.zoom.us/docs/api-reference/zoom-api/webinars/webinarregistrants

However when I execute the same API for Webinar that happened on Dec 16, 2019 I do not get last_name field in my output. That field is missing all together and rest all fields are present. I also saw that first_name is the concatenation of first_name and last_name for this particular API call.
Why am I getting different output structure?
I can share the webinar_ids over email if you need for debugging.

Question 2:
I am trying to generate the report using Zoom APIs which we can currently download from Zoom UI
via Reports > Usage Reports > Webinar > Attendee Report

There is no single API that helps me get all the below information in the report
The fields under this report are as follows:
Attended - Can you help what would be a good approach for generating this field?
First Name -
Last Name -
Email -
Registration Time -
Approval Status -
Join Time -
Leave Time -
Time in Session (minutes)
Attentiveness Score
Country/Region Name
Source Name - How to get this value via API?

Hey @nsoni,

Please share the payload you received. Feel free to private message it to me. (ZOOM-132994)

What is Attended and Source Name?

We do not have one single endpoint to get all of that data. However you can get all the data using the following endpoints:

The Webinar Participant Report endpoint gets you close.

You can get the location from the Get Webinar Participants endpoint.

You can get the Registration Time and Status from the List Webinar Registrants endpoint, or our Registrant Created and Registrant Approved Webhooks.


Hey @nsoni,

If a user joins a webinar via the Zoom App like this:


There is only one name field, which is then set as first name in the payload. The functionality you are describing is intended.


Hi …i am facing issue with “join_time” & “leave_time” time zone in WebinarParticipantsReports API Reponse…

While Creating Webinar i am setting “timezone” key to “Asia/Calcutta” and Webinar is created with correct timezone…We hosted the webinar around 24 april 2020 Noon 3:00 pm - 4:00 pm. …And our members attended it…

Once the webinar is completed,while fetching participants report data we get as follows

“attentiveness_score”: “”,
“duration”: 728,
“id”: “ZG-Zm0oeTruD-B-JEyHmkA”,
“join_time”: “2020-04-24T10:09:21Z”,
“leave_time”: “2020-04-24T10:21:29Z”,
“name”: “XXXX”,
“user_email”: “XXXXXXX@gmail.com”,
“user_id”: “445455456”

Why it is showing wrong (hope it shows time in another timezone) time for join & leave time…
How to Resolve this?..Pls help…

thank you

Hey @myknowledgeparkapp,

The API always returns times in UTC time. You can tell by the Z on the end.

Simply convert the timezone on the client side to your local timezone.