Get Meeting Participant Reports not getting desired participant "Name" values

Description
Hello,
I’m writing a function in C# that “replicates” the Excel file you can download from zoom.us Reports > Usage Reports > Usage which contains the Meeting Details and Participants with their join_time and leave_time.

Error
When I download the Usage Report from zoom.us, the Usage Report has a column named “Name (Original Name)”, which should contain both the user’s name when it joins and the rename given by the Host (if the Host renamed the user during the Meeting).
On the JSON response I have only a “Name” value, and not the Host’s rename (when there’s one).

Which App Type (OAuth / Chatbot / JWT / Webhook)?
I’m using JWT.

Which Endpoint/s?
/v2/report/meetings/{meetingId}/participants

Screenshots (If applicable)
For example, I have these participants in the Usage Report (and on the Excel that is generated by it):

And this is the JSON Response I get from the API Endpoint:
{
“next_page_token”: “”,
“page_count”: 1,
“page_size”: 100,
“participants”: [
{
“attentiveness_score”: “”,
“duration”: 16,
“id”: “”,
“join_time”: “2020-11-02T07:55:08Z”,
“leave_time”: “2020-11-02T07:55:24Z”,
“name”: “950007”,
“user_email”: “”,
“user_id”: “100664320”
},
{
“attentiveness_score”: “”,
“duration”: 6,
“id”: “SD9IxbOZQIKu9Tjt_lAJ2A”,
“join_time”: “2020-11-02T07:55:09Z”,
“leave_time”: “2020-11-02T07:55:15Z”,
“name”: “Martina Rota”,
“user_email”: “”,
“user_id”: “117441536”
},
{
“attentiveness_score”: “”,
“duration”: 14689,
“id”: “SD9IxbOZQIKu9Tjt_lAJ2A”,
“join_time”: “2020-11-02T07:55:15Z”,
“leave_time”: “2020-11-02T12:00:04Z”,
“name”: “Martina Rota”,
“user_email”: “”,
“user_id”: “117442560”
},
{
“attentiveness_score”: “”,
“duration”: 11201,
“id”: “”,
“join_time”: “2020-11-02T07:55:13Z”,
“leave_time”: “2020-11-02T11:01:54Z”,
“name”: “Jessica Vivaldi”,
“user_email”: “”,
“user_id”: “134218752”
},
{
“attentiveness_score”: “”,
“duration”: 8,
“id”: “MJUSFfBjR7CjT6D_wc2Jig”,
“join_time”: “2020-11-02T07:56:33Z”,
“leave_time”: “2020-11-02T07:56:41Z”,
“name”: “Maietta Elisa”,
“user_email”: “”,
“user_id”: “134219776”
},
{
“attentiveness_score”: “”,
“duration”: 11112,
“id”: “MJUSFfBjR7CjT6D_wc2Jig”,
“join_time”: “2020-11-02T07:56:42Z”,
“leave_time”: “2020-11-02T11:01:54Z”,
“name”: “Maietta Elisa”,
“user_email”: “”,
“user_id”: “134220800”
},
{
“attentiveness_score”: “”,
“duration”: 5,
“id”: “dWJkD84bSLqgN-0Mmu-2YA”,
“join_time”: “2020-11-02T10:45:46Z”,
“leave_time”: “2020-11-02T10:45:51Z”,
“name”: “Alessio”,
“user_email”: “”,
“user_id”: “134221824”
},
{
“attentiveness_score”: “”,
“duration”: 962,
“id”: “dWJkD84bSLqgN-0Mmu-2YA”,
“join_time”: “2020-11-02T10:45:51Z”,
“leave_time”: “2020-11-02T11:01:53Z”,
“name”: “Alessio”,
“user_email”: “”,
“user_id”: “134222848”
},
{
“attentiveness_score”: “”,
“duration”: 3,
“id”: “WGIqRGVLTvyafGsKGBkqrQ”,
“join_time”: “2020-11-02T07:56:33Z”,
“leave_time”: “2020-11-02T07:56:36Z”,
“name”: “edoardoplacidi”,
“user_email”: “”,
“user_id”: “150995968”
},
{
“attentiveness_score”: “”,
“duration”: 14630,
“id”: “WGIqRGVLTvyafGsKGBkqrQ”,
“join_time”: “2020-11-02T07:56:37Z”,
“leave_time”: “2020-11-02T12:00:27Z”,
“name”: “edoardoplacidi”,
“user_email”: “”,
“user_id”: “167773184”
},
{
“attentiveness_score”: “”,
“duration”: 947,
“id”: “EgpqBGbKRBSXd1-52MDUvQ”,
“join_time”: “2020-11-02T07:54:36Z”,
“leave_time”: “2020-11-02T08:10:23Z”,
“name”: “IFOA 06”,
“user_email”: “zoom06@ifoa.it”,
“user_id”: “16778240”
},
{
“attentiveness_score”: “”,
“duration”: 13852,
“id”: “EgpqBGbKRBSXd1-52MDUvQ”,
“join_time”: “2020-11-02T08:10:24Z”,
“leave_time”: “2020-11-02T12:01:16Z”,
“name”: “Deborah Riccio tutor IFOA”,
“user_email”: “zoom06@ifoa.it”,
“user_id”: “16783360”
},
{
“attentiveness_score”: “”,
“duration”: 3499,
“id”: “dWJkD84bSLqgN-0Mmu-2YA”,
“join_time”: “2020-11-02T11:02:07Z”,
“leave_time”: “2020-11-02T12:00:26Z”,
“name”: “Alessio Castellaccio”,
“user_email”: “”,
“user_id”: “16784384”
},
{
“attentiveness_score”: “”,
“duration”: 4,
“id”: “”,
“join_time”: “2020-11-02T07:56:53Z”,
“leave_time”: “2020-11-02T07:56:57Z”,
“name”: “Malavolta Federico”,
“user_email”: “”,
“user_id”: “184550400”
},
{
“attentiveness_score”: “”,
“duration”: 11097,
“id”: “”,
“join_time”: “2020-11-02T07:57:03Z”,
“leave_time”: “2020-11-02T11:02:00Z”,
“name”: “Malavolta Federico”,
“user_email”: “”,
“user_id”: “201327616”
},
{
“attentiveness_score”: “”,
“duration”: 8,
“id”: “l7nHS_jRSrK7QXEfoHyVDg”,
“join_time”: “2020-11-02T07:58:15Z”,
“leave_time”: “2020-11-02T07:58:23Z”,
“name”: “eugenia lazzari”,
“user_email”: “”,
“user_id”: “218104832”
},
{
“attentiveness_score”: “”,
“duration”: 14519,
“id”: “l7nHS_jRSrK7QXEfoHyVDg”,
“join_time”: “2020-11-02T07:58:24Z”,
“leave_time”: “2020-11-02T12:00:23Z”,
“name”: “eugenia lazzari”,
“user_email”: “”,
“user_id”: “234882048”
},
{
“attentiveness_score”: “”,
“duration”: 5,
“id”: “uOwwxVt1TRm68nHqYL4YfA”,
“join_time”: “2020-11-02T07:59:02Z”,
“leave_time”: “2020-11-02T07:59:07Z”,
“name”: “Alice Rossi”,
“user_email”: “”,
“user_id”: “251659264”
},
{
“attentiveness_score”: “”,
“duration”: 14476,
“id”: “uOwwxVt1TRm68nHqYL4YfA”,
“join_time”: “2020-11-02T07:59:07Z”,
“leave_time”: “2020-11-02T12:00:23Z”,
“name”: “Alice Rossi”,
“user_email”: “”,
“user_id”: “251660288”
},
{
“attentiveness_score”: “”,
“duration”: 6,
“id”: “nHqB2M-8RZ2_ypfAaJRwng”,
“join_time”: “2020-11-02T08:01:33Z”,
“leave_time”: “2020-11-02T08:01:39Z”,
“name”: “roberto colella”,
“user_email”: “”,
“user_id”: “268436480”
},
{
“attentiveness_score”: “”,
“duration”: 14300,
“id”: “nHqB2M-8RZ2_ypfAaJRwng”,
“join_time”: “2020-11-02T08:01:39Z”,
“leave_time”: “2020-11-02T11:59:59Z”,
“name”: “roberto colella”,
“user_email”: “”,
“user_id”: “268437504”
},
{
“attentiveness_score”: “”,
“duration”: 6,
“id”: “zDXXukXYR3WuzhhhyBS8CA”,
“join_time”: “2020-11-02T08:13:20Z”,
“leave_time”: “2020-11-02T08:13:26Z”,
“name”: “Alessio”,
“user_email”: “”,
“user_id”: “285213696”
},
{
“attentiveness_score”: “”,
“duration”: 8973,
“id”: “zDXXukXYR3WuzhhhyBS8CA”,
“join_time”: “2020-11-02T08:13:26Z”,
“leave_time”: “2020-11-02T10:42:59Z”,
“name”: “Alessio”,
“user_email”: “”,
“user_id”: “301990912”
},
{
“attentiveness_score”: “”,
“duration”: 2,
“id”: “”,
“join_time”: “2020-11-02T11:02:42Z”,
“leave_time”: “2020-11-02T11:02:44Z”,
“name”: “Alessio Castellaccio”,
“user_email”: “”,
“user_id”: “318768128”
},
{
“attentiveness_score”: “”,
“duration”: 3500,
“id”: “”,
“join_time”: “2020-11-02T11:02:01Z”,
“leave_time”: “2020-11-02T12:00:21Z”,
“name”: “Malavolta Federico”,
“user_email”: “”,
“user_id”: “335545344”
},
{
“attentiveness_score”: “”,
“duration”: 7,
“id”: “”,
“join_time”: “2020-11-02T11:03:11Z”,
“leave_time”: “2020-11-02T11:03:18Z”,
“name”: “Jessica Vivaldi”,
“user_email”: “”,
“user_id”: “335546368”
},
{
“attentiveness_score”: “”,
“duration”: 3419,
“id”: “”,
“join_time”: “2020-11-02T11:03:23Z”,
“leave_time”: “2020-11-02T12:00:22Z”,
“name”: “Jessica Vivaldi”,
“user_email”: “”,
“user_id”: “335547392”
},
{
“attentiveness_score”: “”,
“duration”: 22,
“id”: “eIJo_GhsQbKuxVUQ8bc75g”,
“join_time”: “2020-11-02T07:54:39Z”,
“leave_time”: “2020-11-02T07:55:01Z”,
“name”: “Chiara Maffioli”,
“user_email”: “”,
“user_id”: “33555456”
},
{
“attentiveness_score”: “”,
“duration”: 14720,
“id”: “eIJo_GhsQbKuxVUQ8bc75g”,
“join_time”: “2020-11-02T07:55:01Z”,
“leave_time”: “2020-11-02T12:00:21Z”,
“name”: “Chiara Maffioli”,
“user_email”: “”,
“user_id”: “33556480”
},
{
“attentiveness_score”: “”,
“duration”: 3498,
“id”: “MJUSFfBjR7CjT6D_wc2Jig”,
“join_time”: “2020-11-02T11:02:02Z”,
“leave_time”: “2020-11-02T12:00:20Z”,
“name”: “Maietta Elisa”,
“user_email”: “”,
“user_id”: “352322560”
},
{
“attentiveness_score”: “”,
“duration”: 2,
“id”: “”,
“join_time”: “2020-11-02T11:02:43Z”,
“leave_time”: “2020-11-02T11:02:45Z”,
“name”: “Jessica Vivaldi”,
“user_email”: “”,
“user_id”: “369099776”
},
{
“attentiveness_score”: “”,
“duration”: 17,
“id”: “”,
“join_time”: “2020-11-02T07:54:47Z”,
“leave_time”: “2020-11-02T07:55:04Z”,
“name”: “950007”,
“user_email”: “”,
“user_id”: “50332672”
},
{
“attentiveness_score”: “”,
“duration”: 17,
“id”: “”,
“join_time”: “2020-11-02T07:54:47Z”,
“leave_time”: “2020-11-02T07:55:04Z”,
“name”: “Jessica Vivaldi”,
“user_email”: “”,
“user_id”: “67109888”
},
{
“attentiveness_score”: “”,
“duration”: 15,
“id”: “LEo0Df2TRcKN3GNR4DBZCg”,
“join_time”: “2020-11-02T07:54:49Z”,
“leave_time”: “2020-11-02T07:55:04Z”,
“name”: “Bartosz Miroslaw Wilczek”,
“user_email”: “”,
“user_id”: “83887104”
},
{
“attentiveness_score”: “”,
“duration”: 14724,
“id”: “LEo0Df2TRcKN3GNR4DBZCg”,
“join_time”: “2020-11-02T07:55:05Z”,
“leave_time”: “2020-11-02T12:00:29Z”,
“name”: “Bartosz Miroslaw Wilczek”,
“user_email”: “”,
“user_id”: “83888128”
}
],
“total_records”: 35
}

Additional context
I see that some "ID"s are the same for “different” people (I assume they logged in/out from the same device, hence the same ID but different "Name"s in some cases), but the total number stays the same (35 participants on JSON, 35 participants on the Excel generated from Usage Reports), so “grouping” them by ID wouldn’t work.

Am I missing something in the API or reading the JSON incorrectly?
For example there’s this participant named “edoardoplacidi” and “edoardo placidi (edoardoplacidi)” on the Usage Report, but on the JSON there’s only “edoardoplacidi”.
I was expecting to see a “edoardo placidi” somewhere (possibly with the same ID as “edoardoplacidi”).

On an unrelated note, which value should I pass to the Endpoint: the MeetingId or the UUID? And why? (I’ve been using the MeetingId for now, but I read that the UUID can get more “instances” of the same meeting?)

Thanks a lot,
Adrian

Hey @zoom06,

Good question—the API will return the original name of the user in its response. It does not contain a rename field like the report in the UI.

More specifically, our GET Meeting Participant Reports endpoint will return the name they have set within the Zoom App, or if they are logged in when joining, it will return the name they have on their Zoom account.

In regards to the Meeting ID vs Meeting UUID, this can depend a bit on your use case. The Meeting ID can encompass different instances of 1 meeting (such as the meeting before it was started vs after it is started). If you need to make sure your request is as granular as possible, the UUID will help you accomplish this. You can also find some more details on this here:

Let me know if this helps,
Will

Hello,

Thank you for your response!
On the meetingID vs UUID, I’ll stick to the UUID from now on, as it looks like it covers everything.

On the Original Name, I have a theory: could it be that the Usage Report groups the users by ID (when there’s one) and later by Name?
When it groups by ID, it puts in Name the one with more Duration, and in Original Name the one with less Duration.
And when it groups by Name because it can’t group by ID, it just can’t group the same users as they have different names (in my example there’s Alessio, Alessio Castellaccio that are the same person but on the “unique users” report they are still separated, as they have different IDs/Names).
This theory works for all the names I have in the JSON that have both Name and (Original Name), but it still doesn’t work for edoardoplacidi (who doesn’t have a “edoardo placidi” in the JSON, but still it is shown like that in the Usage Report).

Is there a way to “update” the API so it gives the “rename” for the user in the JSON response?
If there isn’t, is there an API that I can use to get both Name and Original Name like in the Usage Report? I couldn’t find any in the API Reference.

Or is there something I missed in my “theory” and it doesn’t work like that?

Thanks a lot,
Adrian

Hey @zoom06,

While I don’t know the exact structure of how the report in the UI is grouped (this would be a question for our Technical Support team), I would recommend this API endpoint to retrieve users names as they are in the meeting:

And this webhook or the previously mentioned endpoint for their original name:

Let me know if this helps,
Will

Hello,

Thanks for your response.

Sadly the Dashboards API is not available to some of our accounts, as some of them haven’t the dashboard feature enabled because those aren’t Business.
On the accounts we have it, the API works so probably I’ll try to use that and then, in case, go for the Reports API.

For the UI, I’ll ask the technical support, I’m curious as how it works :slight_smile:

Thanks a lot for your time and support,
Adrian

No problem, @zoom06. Glad I could help to clarify.

Best,
Will

Hello,

I’ve tried to use the Dashboards, but sadly it still gives the same result as Meeting Reports API, so no Name (Original Name).

I tried to contact the Technical Support, but I got an automated reply because my ticket wasn’t of high importance (and I guess there are many more tickets more worth to check than mine at the moment, so no problem).

So I think the “best” solution will be to download the reports from Zoom Website manually.
My company doesn’t want to share the passwords of every zoom account we got with our colleagues that use them (as it may cause confusion with all the meetings we do), so I should make a function in VB that opens the Zoom Website on a browser and the user must be already logged in by username and password parameters I set beforehand.

I’m not very experienced on web programming, but I know I should pass a POST Request with username/password values.
Is there any documentation for Zoom that I can use? I searched the internet for some pointers but I’m not sure how the postData string should be passed.
For example if I pass “https://zoom.us/signin?username=uservalue&password=pwdvalue” via a POST request, it should open the https://zoom.us/profile webpage.

Am I asking this in the right forum or should I ask somewhere else, as it is not strictly API correlated?

Thank you,
Adrian

Hi @zoom06,

Thanks for reaching out about this—since you’re trying to download these reports from the Zoom Web Portal, you will want to work with our Support Team directly, as they’re the experts in this area. If you can share your ticket number, I’m happy to help make sure it gets into the right hands!

Thanks,
Will

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.