Dashboard API List Meetings Participants returns blank user_name for users not logged in

Description: I’m using the List Meeting Participants under Dashboard API to return a list of all participants in meetings (paid account). Some of the users do not log into their account and just join using a display name. As i understand the API, it is returning no UUID for the user (expected) but a participant id for that user. It should also be returning the user_name as the display name but it’s all coming up blank. Email is also blank but i’m assuming that’s a security thing for people not part of the account.

The question is how to do i get the display name used for the meeting for all participants? I’ve tried the dashboard API’s and it always returns blank for everyone, including account members. I’ve tried the reports APIs and it returns the user_name or name depending on which one i use but it’s hashed out (i.e. the return values are “name”:“", “user_email”:"”).

Here’s a screenshot of the code i am using to test this out. I loop through the results list for entry into the database and get entries for each participant, but am having to attribute the “not logged in” users as a generic name. I need a list of display names for those people.

Hi @jwalker,

Thanks for reaching out about this. Is it possible to share this example request and the full API response with us at developersupport@zoom.us? I do believe the display name should be returned, and we’ll be happy to further investigate.

Thanks,
Will

Forgive me. I’m not actually a coder – just an engineer with some coding history that got tasked with finishing the development of this little app a prior coder developed.

I should be able to share anything (except the key) without issue. Just need to know what all you need to see. Below is the API call I’m using (one of them – I’ve tried several).

////Api call uses meeting uuid to find participants of a specific meeting instance.

RestClient clientListOfParticipants = new RestClient(“https://api.zoom.us/v2/past_meetings/fcpfVzlHRr+VNFgFXdUCCQ==/participants?page_size=300&type=past”);

RestRequest requestListOfParticipants = new RestRequest(Method.GET);

requestListOfParticipants.AddHeader(“authorization”, "Bearer " + ZoomToken.GetZoomToken());

IRestResponse responseListOfParticipants = clientListOfParticipants.Execute(requestListOfParticipants);

string responseList = responseListOfParticipants.Content;

Console.WriteLine(responseList);

This is the output to the window.

{“page_count”:1,“page_size”:300,“total_records”:3,“next_page_token”:"",“participants”:[{“id”:"",“name”:“",“user_email”:"”},{“id”:“QgNqwfz8Tw6zdLmgipkATg”,“name”:“",“user_email”:"”},{“id”:“gUKRx9I5Q0at4on4yQCDXA”,“name”:“",“user_email”:"”}]}

If I change the url to …v2/metrics/meetings/…. I get this output:

{“page_count”:1,“page_size”:300,“total_records”:3,“next_page_token”:"",“participants”:[{“user_id”:“16778240”,“user_name”:"",“device”:“Unknown”,“ip_address”:"",“location”:"",“network_type”:“Wired”,“data_center”:“United States (Cloud Top)”,“connection_type”:“UDP”,“join_time”:“2021-04-13T14:27:42Z”,“leave_time”:“2021-04-13T15:01:40Z”,“share_application”:false,“share_desktop”:true,“share_whiteboard”:false,“recording”:false,“pc_name”:"",“domain”:"",“mac_addr”:"",“harddisk_id”:"",“version”:“5.6.1.617”,“leave_reason”:" left the meeting.
Reason: Host ended the meeting.",“status”:“in_meeting”},{“id”:“QgNqwfz8Tw6zdLmgipkATg”,“user_id”:“16779264”,“user_name”:"",“device”:“Windows”,“ip_address”:"",“location”:"",“network_type”:“Wired”,“microphone”:“Microphone (2- HyperX Cloud Stinger Wireless)”,“speaker”:“Speakers (2- HyperX Cloud Stinger Wireless)”,“data_center”:“United States (Cloud Top)”,“connection_type”:“UDP”,“join_time”:“2021-04-13T14:29:21Z”,“leave_time”:“2021-04-13T14:58:53Z”,“share_application”:false,“share_desktop”:false,“share_whiteboard”:false,“recording”:false,“pc_name”:"",“domain”:"",“mac_addr”:"",“harddisk_id”:"",“version”:“5.6.1.617”,“leave_reason”:" left the meeting.
Reason: left the meeting.",“status”:“in_meeting”},{“id”:“gUKRx9I5Q0at4on4yQCDXA”,“user_id”:“16780288”,“user_name”:"",“device”:“Windows”,“ip_address”:"",“location”:"",“network_type”:“Wired”,“microphone”:“Headset (Bose QuietComfort 35 Hands-Free)”,“speaker”:“Headset (Bose QuietComfort 35 Hands-Free)”,“data_center”:“United States (Cloud Top)”,“connection_type”:“UDP”,“join_time”:“2021-04-13T14:34:09Z”,“leave_time”:“2021-04-13T14:52:00Z”,“share_application”:true,“share_desktop”:false,“share_whiteboard”:false,“recording”:false,“pc_name”:"",“domain”:"",“mac_addr”:"",“harddisk_id”:"",“version”:“5.6.1.617”,“leave_reason”:" left the meeting.
Reason: left the meeting.",“status”:“in_meeting”}]}

Hard to read yes, but if you look at the first line, “user_id” for that first user is 16778240. The user is actually supposed to show the name Ryan D***** (blanked out his last name myself just to be safe). I’ve verified that’s his display name but it shows up blank here. He has a legit account under our account as he shows up in our user list, but he joins as a guest. HIPPAA protects PII such as names on medical records, but this isn’t exactly the same situation. These aren’t medical records and even though we may have a HIPPAA account, I would think display name would not be a protected aspect of that as the host can see the display name and the host would have to be a member of our account for me to see the meeting info.

I’ve used every URL for participants or participant history. Reports and Meetings URLs show asterisks for the name. Dashboards URLs show blanks. Email addresses, per HIPPAA would be and probably should be blocked, account holder name also, but display name I would think is not a protected value.

Please let me know if this is sufficient or if you need more of the code.

Hi @jwalker,

I can see you’ve since written into our email alias, so I will continue the conversation there.

Thanks!
Will