Need to access Tracking field on my meeting start

Im trying to access my trackingfields on my webhooks it order to relate the meeting with my db datas.

As we are using PMI all meeting id generated were converted to PMI on meeting start and my titles were changed so i have no clue to how to connect the meeting with my db records while meeting started, completed etc.

On Creating a meeting via api we got this reponse and we are saving this response for accessing future webhooks

{
“uuid”: “w5bO3d/1TwqyDjpGU6qb+A==”,
“id”: 87208319728,
“host_id”: “YWoevYvYRryD5QosBp6QEw”,
“host_email”: “zoomtest@test.v-tutor.com.au”,
“topic”: “Meeting for VT0000052”,
“type”: 2,
“status”: “waiting”,
“start_time”: “2025-10-19T05:00:00Z”,
“duration”: 60,
“timezone”: “Australia/Sydney”,
“created_at”: “2025-10-18T17:59:10Z”,
“start_url”: “Launc Meeting - Zoom”,
“join_url”: “Launc Meeting - Zoom”,
“password”: “123456”,
“h323_password”: “123456”,
“pstn_password”: “123456”,
“encrypted_password”: “xgHF52Eey9XWZ0ZmnL5svSFvWQ0aw5.1”,
“pmi”: “7302078518”,
“settings”: {
“host_video”: true,
“participant_video”: true,
“cn_meeting”: false,
“in_meeting”: false,
“join_before_host”: false,
“jbh_time”: 0,
“mute_upon_entry”: true,
“watermark”: false,
“use_pmi”: true,
“approval_type”: 2,
“audio”: “voip”,
“auto_recording”: “none”,
“auto_add_recording_to_video_management”: {
“enable”: false
},
“enforce_login”: false,
“enforce_login_domains”: “”,
“alternative_hosts”: “”,
“alternative_host_update_polls”: false,
“alternative_host_manage_meeting_summary”: false,
“alternative_host_manage_cloud_recording”: false,
“close_registration”: false,
“show_share_button”: false,
“allow_multiple_devices”: false,
“registrants_confirmation_email”: true,
“waiting_room”: true,
“waiting_room_options”: {
“mode”: “follow_setting”
},
“request_permission_to_unmute_participants”: false,
“registrants_email_notification”: true,
“meeting_authentication”: false,
“encryption_type”: “enhanced_encryption”,
“approved_or_denied_countries_or_regions”: {
“enable”: false
},
“question_and_answer”: {
“enable”: false
},
“breakout_room”: {
“enable”: false
},
“internal_meeting”: false,
“continuous_meeting_chat”: {
“enable”: false,
“auto_add_invited_external_users”: false,
“auto_add_meeting_participants”: false
},
“participant_focused_meeting”: false,
“push_change_to_calendar”: false,
“resources”: ,
“auto_start_meeting_summary”: false,
“auto_start_ai_companion_questions”: false,
“allow_host_control_participant_mute_state”: false,
“alternative_hosts_email_notification”: true,
“show_join_info”: false,
“device_testing”: false,
“focus_mode”: false,
“meeting_invitees”: ,
“private_meeting”: false,
“email_notification”: true,
“host_save_video_order”: false,
“sign_language_interpretation”: {
“enable”: false
},
“email_in_attendee_report”: false
},
“tracking_fields”: [
{
“field”: “booking_id”,
“value”: “52”,
“visible”: true
}
],
“creation_source”: “open_api”,
“pre_schedule”: false
}

While trying to connect to webhook meeting.started

{
“event”: “meeting.started”,
“payload”: {
“event”: “meeting.started”,
“payload”: {
“account_id”: “qaUdcHVeRyq1wAkQSm76Hg”,
“object”: {
“duration”: 0,
“start_time”: “2025-10-19T05:58:24Z”,
“timezone”: “Asia/Calcutta”,
“topic”: “ZoomTutor Test’s Personal Meeting Room”,
“id”: “7302078518”,
“type”: 4,
“uuid”: “ksdPVY1eStSE+cjieVGZoA==”,
“host_id”: “YWoevYvYRryD5QosBp6QEw”
}
},
“event_ts”: 1760853504583
}
} which was completely different. Please suggest me how to have a unique value on creating and on accessing meeting related webhooks.

Thanks

Hi @GKD, I had one quick question about your current method, why are you using PMI for these programmatic meetings?

With PMI, Zoom turns everything into a type 4 meeting, the webhook id becomes the PMI, and the topic changes, which makes reliable mapping way harder.

If you can, switch to scheduled meetings (use_pmi: false) and key off the meeting UUID; if you must keep PMI, store host_id + pmi as your composite key.

Hi Amanda,

Thank you for your reply and for highlighting the limitations of using PMI for programmatic meetings.

We currently have centralised account management where we onboard guest users, allocate licences and assign them a PMI to host sessions. Our reasoning was that this approach would give us a consistent way to capture and track meeting details through the webhooks, since the PMI is tied to the host account.

We understand from your note that this may not be the most reliable method, as the webhook IDs become the PMI and topic changes can complicate mapping. Given our setup, we’d like to confirm whether there is a more effective alternate approach you recommend that still allows us to:

  • Track meetings and confirm their completion status through webhooks.

  • Reliably map webhook events back to our internal session records.

  • Maintain a centralised way to provision meetings for multiple guest hosts.

Would shifting to scheduled meetings (use_pmi: false) and keying off the meeting UUID be the best practice in our scenario? Or do you see a hybrid approach that might work better without losing the centralised management benefits of PMI?

We appreciate your guidance on the most robust way to achieve this.

Regards,

GKD