We are processing several meetings daily, near 200.
Each day, info from a couple of meetings cannot be retrieved using API https://api.zoom.us/v2/past_meetings/{meetingId}/instances
We cycle between all instances from a meeting, to get all the unique UUIDs, to retrieve the recordings.
Also I receive with no problems the webhook “meeting.ended”…
Going to the control panel in ZOOM admin account, NO info is displayed in past meetings.
but… several meeting recordings are available en zoom control panel (one for each instance)
For Example, ended meeting 97610971982 is not available in zoom control panel, cannot get any results, but 4 instances are available in the Recording Admin page…
Using JWT Tokens with PHP and CURL…Lot of integrations made with API works flawleslly…
I cannot figure out the error… of if it’s a bug in API.
Thanks for reaching out about this, and happy to take a closer look.
Can you please provide an example Meeting ID that returns the empty meetings object when calling https://api.zoom.us/v2/past_meetings/{meetingId}/instances?
You can debug for example my meeting ID 97610971982, which ended yesterday.
No info in Control Panel, no info from API using https://api.zoom.us/v2/past_meetings/{meetingId}/instances
meeting.ended received from webhook and 2 videos recorded in recording control panel.
Thanks for sharing these IDs. In taking a look, I can see that all of the instances under these meetings had only 1 attendee. Meetings with just 1 attendee will not be returned by this endpoint, as they’ll need to have 2 or more attendees to be considered a past instance of a meeting.
Currently, only our List Meeting Participants (with query parameter pastOne) will return meetings with 1 participant:
cycling any uuid coming from api.zoom.us/v2/past_meetings/ID/instances, I can delete all possible recordings from one meeting ID
So, now I know instances are not working for meetings with only one participant… Any other approach you can suggest? I’m still interested on delete those recordings…
Good question—the only endpoint that returns the UUID for past instances of a meeting that had 1 user would be this one (again, with pastOne query parameter):
You can use this to retrieve UUIDs for those meetings.
Ok, not an easy task, but it works…
I found another way.
Keeping a webhook working, I can store all meeting.recording events in my database.
A daily CRON do the rest…