# Participation tracking

**URL:** <https://devforum.zoom.us/t/participation-tracking/97319>\
**Category:** API and Webhooks\
**Created:** [October 24, 2023, 10:29pm UTC](https://devforum.zoom.us/t/participation-tracking/97319 "2023-10-24T22:29:03Z")\
**Posts on this page:** 13\
**Page:** 1

<div class="post-metadata">

**Author:** ![bornasm](https://avatars.discourse-cdn.com/v4/letter/b/d9b06d/32.png) [@bornasm](https://devforum.zoom.us/u/bornasm)\
**Post date:** [October 24, 2023, 10:29pm UTC](https://devforum.zoom.us/t/participation-tracking/97319/1 "2023-10-24T22:29:03Z")

</div>

* * *

**API Endpoint(s) and/or Zoom API Event(s)**  
[Add Registrant - REST](https://developers.zoom.us/docs/api/rest/reference/zoom-api/methods/#operation/meetingRegistrantCreate)  
[Participant Joined - Webhook](https://developers.zoom.us/docs/api/rest/reference/zoom-api/events/#operation/meeting.participant_joined)

**Description**  
Our users register to our meetings using our internal registration tool. We are not using Zoom’s registration, but rather we call the “Add Meeting Registrant” endpoint to add our users to meetings. This means that currently we can only track users which join by the participant\_url which we get in response to “Add Meeting Registrant” endpoint, but some of our users join by typing in the Meeting Id/Passcode manually or through a phone call, and in those cases the participant joined/left webhooks don’t provide a registrant id that we can link back to the users of our platform.

We are looking for solutions on how to increase coverage of the tracking so we can make sure certain users of our platform attend the meetings without having a human have to validate it manually.

One of the potential solutions we thought of, but haven’t managed to test is using participant\_pin\_code as the meeting join password which is supposed to be provided by Add Registrant endpoint (it’s in the response in the docs) and we haven’t found a way to provide that participant\_pin\_code ourselves either.

All help is greatly appreicated.

---

<div class="post-metadata">

**Author:** ![gianni.zoom](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/gianni.zoom/32/32523_2.png) [@gianni.zoom](https://devforum.zoom.us/u/gianni.zoom)\
**Post date:** [October 26, 2023, 11:10pm UTC](https://devforum.zoom.us/t/participation-tracking/97319/2 "2023-10-26T23:10:30Z")

</div>

Hi @bornasm ,

If you require only authenticated (logged in) users join your meetings, you would be able to get more consistency with registrant id values. Is that possible for you to implement?

---

<div class="post-metadata">

**Author:** ![bornasm](https://avatars.discourse-cdn.com/v4/letter/b/d9b06d/32.png) [@bornasm](https://devforum.zoom.us/u/bornasm)\
**Post date:** [October 27, 2023, 9:01am UTC](https://devforum.zoom.us/t/participation-tracking/97319/4 "2023-10-27T09:01:42Z")

</div>

Hi @gianni.zoom, we are already using registrant id values and that works great for users which use the URL which gets returned by the registration endpoint. The problem is we don’t get them for users joining by phone number, or those joining by typing in the meeting id and password manually.

---

<div class="post-metadata">

**Author:** ![gianni.zoom](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/gianni.zoom/32/32523_2.png) [@gianni.zoom](https://devforum.zoom.us/u/gianni.zoom)\
**Post date:** [October 27, 2023, 1:19pm UTC](https://devforum.zoom.us/t/participation-tracking/97319/5 "2023-10-27T13:19:53Z")

</div>

Hi @bornasm ,

That’s what I mean to suggest: to disable those options and allow only authenticated (logged into client) users to join the meeting to be able to better track via registrant id. Currently, I don’t believe there’s another way to go around dialed in or users who enter the meeting info via the web ui to join.

---

<div class="post-metadata">

**Author:** ![bornasm](https://avatars.discourse-cdn.com/v4/letter/b/d9b06d/32.png) [@bornasm](https://devforum.zoom.us/u/bornasm)\
**Post date:** [October 27, 2023, 2:00pm UTC](https://devforum.zoom.us/t/participation-tracking/97319/6 "2023-10-27T14:00:16Z")

</div>

Thanks for the answer @gianni.zoom. Yeah, that won’t work for us, we have quite a few users who use both those options. Do you maybe know how to get the participant\_pin so we could maybe try using that as a password when joining from a phone? I am thinking that the registrant id might be sent then, but we were unable to test it as we can’t get the pin.

---

<div class="post-metadata">

**Author:** ![gianni.zoom](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/gianni.zoom/32/32523_2.png) [@gianni.zoom](https://devforum.zoom.us/u/gianni.zoom)\
**Post date:** [October 30, 2023, 9:02pm UTC](https://devforum.zoom.us/t/participation-tracking/97319/7 "2023-10-30T21:02:52Z")

</div>

Hi @bornasm ,

I am unfamiliar with `participant_pin` – where did you see that? I don’t think I’ve come across that before.

---

<div class="post-metadata">

**Author:** ![bornasm](https://avatars.discourse-cdn.com/v4/letter/b/d9b06d/32.png) [@bornasm](https://devforum.zoom.us/u/bornasm)\
**Post date:** [October 30, 2023, 10:57pm UTC](https://devforum.zoom.us/t/participation-tracking/97319/8 "2023-10-30T22:57:52Z")

</div>

Hi @gianni.zoom  
It’s in Zoom’s documentation for add registrant endpoint, it’s supposed to come back as a response. Here’s the link: [Zoom Meeting API](https://developers.zoom.us/docs/api/rest/reference/zoom-api/methods/#operation/meetingRegistrantCreate)

---

<div class="post-metadata">

**Author:** ![gianni.zoom](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/gianni.zoom/32/32523_2.png) [@gianni.zoom](https://devforum.zoom.us/u/gianni.zoom)\
**Post date:** [November 1, 2023, 12:59am UTC](https://devforum.zoom.us/t/participation-tracking/97319/9 "2023-11-01T00:59:09Z")

</div>

Hi @bornasm ahh I see! When you list registrants, the `participant_pin_code` is returned in the response body. Since it’s used to “authenticate audio participants before they join the meeting”, would this allow you to enable only authenticated participants to join so you can still track them?

While this Dashboard endpoint doesn’t include `participant_pin_code`, it does have `registrant_id` and `audio_call` object information at the bottom of the response body: [Zoom Meeting API](https://developers.zoom.us/docs/api/rest/reference/zoom-api/methods/#operation/dashboardMeetingParticipants)

---

<div class="post-metadata">

**Author:** ![bornasm](https://avatars.discourse-cdn.com/v4/letter/b/d9b06d/32.png) [@bornasm](https://devforum.zoom.us/u/bornasm)\
**Post date:** [November 3, 2023, 8:57am UTC](https://devforum.zoom.us/t/participation-tracking/97319/10 "2023-11-03T08:57:23Z")

</div>

Hi @gianni.zoom, I tested the [list registrants endpoint](https://developers.zoom.us/docs/api/rest/reference/zoom-api/methods/#operation/meetingRegistrants) , but there’s no `participant_pin_code` in the response. Do I have to somehow provide it to Zoom and if yes how?

---

<div class="post-metadata">

**Author:** ![gianni.zoom](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/gianni.zoom/32/32523_2.png) [@gianni.zoom](https://devforum.zoom.us/u/gianni.zoom)\
**Post date:** [November 7, 2023, 5:08pm UTC](https://devforum.zoom.us/t/participation-tracking/97319/11 "2023-11-07T17:08:28Z")

</div>

Hi @bornasm ,

It should be returned if you require authentication:

 ![image](https://us1.discourse-cdn.com/flex016/uploads/zoomdeveloper/original/3X/0/0/009ae9a685a9880ca7d04cf8bd9e8792701878ad.png)

Can you please verify with an authentication required meeting and check this endpoint again?

---

<div class="post-metadata">

**Author:** ![katosadchuk](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/katosadchuk/32/47415_2.png) [@katosadchuk](https://devforum.zoom.us/u/katosadchuk)\
**Post date:** [November 27, 2023, 5:53pm UTC](https://devforum.zoom.us/t/participation-tracking/97319/12 "2023-11-27T17:53:21Z")

</div>

> [@gianni.zoom](#):
>
> authentication required meeting

Hi,  
I am running into a similar issue when using the Zoom connector in Tray. I am trying to register participants for a meeting using the batch\_registrants endpoint and it seems to succeed, but the `participant_pin_code` is not returned:

 ![Screenshot 2023-11-27 at 12.51.40 PM](https://us1.discourse-cdn.com/flex016/uploads/zoomdeveloper/original/3X/8/3/8344cd65d58bb735ca641bf7d0bb7ea12105f772.png)  
our meeting is configured to require login - not sure if there is some other setting we need to specify?  
 ![Screenshot 2023-11-27 at 12.53.03 PM](https://us1.discourse-cdn.com/flex016/uploads/zoomdeveloper/original/3X/5/4/5417b02e6a6cd179c90b0a219053eeee9432f6c3.png)

---

<div class="post-metadata">

**Author:** ![gianni.zoom](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/gianni.zoom/32/32523_2.png) [@gianni.zoom](https://devforum.zoom.us/u/gianni.zoom)\
**Post date:** [December 1, 2023, 12:42am UTC](https://devforum.zoom.us/t/participation-tracking/97319/13 "2023-12-01T00:42:42Z")

</div>

@katosadchuk please test by updating the meeting to require authentication:

> **[Zoom Meeting API](https://developers.zoom.us/docs/api/rest/reference/zoom-api/methods/#operation/meetingUpdate)**
>
> API Reference for /docs/api/rest/reference/zoom-api/methods

Add a new registrant then list registrants to see if behavior returns participant\_pin\_code:

> **[Zoom Meeting API](https://developers.zoom.us/docs/api/rest/reference/zoom-api/methods/#operation/meetingRegistrants)**
>
> API Reference for /docs/api/rest/reference/zoom-api/methods

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/flex016/uploads/zoomdeveloper/original/3X/6/1/614bdd549b610bbaa46ff934617683a02bdaa03c.png) [@system](https://devforum.zoom.us/u/system)\
**Post date:** [December 8, 2023, 3:29pm UTC](https://devforum.zoom.us/t/participation-tracking/97319/14 "2023-12-08T15:29:19Z")

</div>

Closed on December 8, 2023, 3:29pm UTC

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