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.