"Update a webinar" endpoint's start_time changes are ignored if the webinar was scheduled to be currently running

An example Meeting ID we’re seeing this behavior is for [REDACTED] — this meeting is only used for testing purposes and can be freely modified. For future redaction purposes, there are 4 instances of this meeting ID in this post.

The following are the extracted calls and timestamps from the API Call Logs.

Initial PATCH call to set the start time a few minutes into the future = call at 09:31:27 AM Sep 28, 2021 (Eastern time, UTC -04:00):

{
"endpoint":  "https://api.zoom.us/v2/meetings/[REDACTED]",
"response_headers": [
 "Set-Cookie: zm_aid=""; Domain=.zoom.us; Expires=Thu, 01-Jan-1970 00:00:10 GMT; Path=/; Secure; HttpOnly"
],
"date_time":  "2021-09-28 09:31:27",
"method":  "PATCH",
"request_body":  "{"type":8,"start_time":"2021-09-28T13:33:00Z","duration":120,"recurrence":{"type":3,"repeat_interval":3,"monthly_day":28,"end_times":1}}",
"response":  "N/A",
"request_headers": [
 "authorization: ******",
 "connection: close",
 "content-type: application/json; charset=utf-8"
],
"request_params": [
],
"http_status":  "204"
}

Time elapses so that the start time arrives; subsequent PATCH call to move the start time back an hour later = call at 09:33:59 AM Sep 28, 2021 (Eastern time, UTC -04:00):

{
"endpoint":  "https://api.zoom.us/v2/meetings/[REDACTED]",
"response_headers": [
 "Set-Cookie: zm_aid=""; Domain=.zoom.us; Expires=Thu, 01-Jan-1970 00:00:10 GMT; Path=/; Secure; HttpOnly"
],
"date_time":  "2021-09-28 09:33:59",
"method":  "PATCH",
"request_body":  "{"type":8,"start_time":"2021-09-28T14:33:00Z","duration":120,"recurrence":{"type":3,"repeat_interval":3,"monthly_day":28,"end_times":1}}",
"response":  "N/A",
"request_headers": [
 "authorization: ******",
 "connection: close",
 "content-type: application/json; charset=utf-8"
],
"request_params": [
],
"http_status":  "204"
}

Additional PATCH call to try and get the changed time recognized again = call at 09:34:00 AM Sep 28, 2021 (Eastern time, UTC -04:00):

{
"endpoint":  "https://api.zoom.us/v2/meetings/[REDACTED]",
"response_headers": [
 "Set-Cookie: zm_aid=""; Domain=.zoom.us; Expires=Thu, 01-Jan-1970 00:00:10 GMT; Path=/; Secure; HttpOnly"
],
"date_time":  "2021-09-28 09:34:00",
"method":  "PATCH",
"request_body":  "{"type":8,"start_time":"2021-09-28T14:33:00Z","duration":120,"recurrence":{"type":3,"repeat_interval":3,"monthly_day":28,"end_times":1}}",
"response":  "N/A",
"request_headers": [
 "authorization: ******",
 "connection: close",
 "content-type: application/json; charset=utf-8"
],
"request_params": [
],
"http_status":  "204"
}

Inspecting this meeting from the Zoom web site or retrieving meeting details from the API still shows the start time as 9:33 AM (Eastern time, UTC -04:00) instead of 10:33 AM (Eastern time, UTC -04:00) requested by the subsequent calls.

Hey @MultiplayerSession,

Thank you for following up on this. After looking into these requests, I’m thinking this is happening because this is a recurring meeting and the Meeting ID is being used to access the meeting without an occurrence ID.

When the meeting start_time passes, I expect the API the defaults to updating the next instance of the meeting. We should be able to avoid this by using the occurrence_id parameter when calling the API:

I was also able to find those requests in our logs thanks to your detailed information. I’ve forwarded this to our team so they can confirm the behavior around the requests that you provided.

Thanks,
Max

Thanks for the update. Just to emphasize (since this wasn’t identified in the original post), the behavior varies depending on how distant is the new start time. From rough testing, if the new start time is within about 6 hours of the current time, the timing change has no effect. If the new start time is around a day or more later, the timing change does get applied. I haven’t narrowed the threshold further, but this information might aid the investigation.

To be clear, our intention is to overwrite all existing occurrences with a single occurrence in a single API call. We are using recurring meetings to allow future reuse of the Meeting ID.

Hey @MultiplayerSession,

Thank you for adding more detail here, we’ll take this into consideration. I’ll let you know when I have a significant update on this.

Thanks,
Max

Do we have a sense of what range of start_time values are affected? This will help improve the guidance we tell our users so they have a better sense of what will happen if they need to make a last-minute edit.

Hey @MultiplayerSession,

Thank you for your patience here. Our team got back to me and indicated that this happened because the meeting was initially a No Fixed Time meeting and then was converted, via an API call, to a recurring meeting with an end_times of 1 (one occurrence).

According to our team, the subsequent API calls didn’t work because the initial call to create a recurring meeting with one occurrence was successful.

With that being said, are you seeing this only happens when you first create a meeting with No Fixed Time or are you able to reproduce the issue by just creating a meeting and attempting to update it after the scheduled start time?

Any information you can provide should help to understand the cause.

Thanks,
Max

Thanks for the hint about the historical meeting type having an impact. It looks like if the meeting was initially scheduled via the API as type 8, then rescheduling after the start time with type 8 fails, regardless of the originally created meeting type. Here are the testing steps I took:

  1. Create or reuse a meeting interactively via the web site with the specified meeting type as defined in Create a meeting.
  2. Optionally, change the meeting type interactively via the web site.
  3. Call the API to initially schedule the meeting in a few minutes with the specified meeting type.
  4. Wait for the start time to arrive.
  5. Call the API to reschedule the meeting an hour later from the original start time with the specified meeting type.

The following table shows the rescheduling results and the timestamps for the corresponding API call logs (use a Find feature to jump to the date_time timestamp in the logs following the table). Timestamps are US Eastern time (UTC -0500).

Zoom Meeting Rescheduling After Start
Meeting ID Web Site Creation Type Web Site Revision Type API Initial Scheduling Type API Rescheduling Type Rescheduling Outcome API Initial Scheduling Log Time API Rescheduling Log Time
83349822023 2 N/A 2 2 success 2021-11-09 10:29:34 2021-11-09 10:31:24
83349822023 2 8 8 8 failure 2021-11-09 10:37:45 2021-11-09 10:44:41
85925695828 8 N/A 8 8 failure 2021-11-09 10:48:54 2021-11-09 10:51:08
83828925747 2 N/A 2 8 success 2021-11-09 10:58:28 2021-11-09 11:03:23
87574906546 3 N/A 8 8 failure 2021-11-09 11:09:06 2021-11-09 11:11:11

For future redaction purposes, there are 15 instances of meeting IDs in this post.

{
"endpoint":  "https://api.zoom.us/v2/meetings/83349822023",
"response_headers": [
 "Set-Cookie: zm_aid=""; Domain=.zoom.us; Expires=Thu, 01-Jan-1970 00:00:10 GMT; Path=/; Secure; HttpOnly"
],
"date_time":  "2021-11-09 10:29:34",
"method":  "PATCH",
"request_body":  "{"type":2,"start_time":"2021-11-09T15:30:00Z","duration":30}",
"response":  "N/A",
"request_headers": [
 "authorization: ******",
 "connection: close",
 "content-type: application/json; charset=utf-8"
],
"request_params": [
],
"http_status":  "204"
}
{
"endpoint":  "https://api.zoom.us/v2/meetings/83349822023",
"response_headers": [
 "Set-Cookie: zm_aid=""; Domain=.zoom.us; Expires=Thu, 01-Jan-1970 00:00:10 GMT; Path=/; Secure; HttpOnly"
],
"date_time":  "2021-11-09 10:31:24",
"method":  "PATCH",
"request_body":  "{"type":2,"start_time":"2021-11-09T16:30:00Z","duration":30}",
"response":  "N/A",
"request_headers": [
 "authorization: ******",
 "connection: close",
 "content-type: application/json; charset=utf-8"
],
"request_params": [
],
"http_status":  "204"
}
{
"endpoint":  "https://api.zoom.us/v2/meetings/83349822023",
"response_headers": [
 "Set-Cookie: zm_aid=""; Domain=.zoom.us; Expires=Thu, 01-Jan-1970 00:00:10 GMT; Path=/; Secure; HttpOnly"
],
"date_time":  "2021-11-09 10:37:45",
"method":  "PATCH",
"request_body":  "{"type":8,"start_time":"2021-11-09T15:40:00Z","duration":30,"recurrence":{"type":3,"repeat_interval":3,"monthly_day":"09","end_times":1}}",
"response":  "N/A",
"request_headers": [
 "authorization: ******",
 "connection: close",
 "content-type: application/json; charset=utf-8"
],
"request_params": [
],
"http_status":  "204"
}
{
"endpoint":  "https://api.zoom.us/v2/meetings/83349822023",
"response_headers": [
 "Set-Cookie: zm_aid=""; Domain=.zoom.us; Expires=Thu, 01-Jan-1970 00:00:10 GMT; Path=/; Secure; HttpOnly"
],
"date_time":  "2021-11-09 10:44:41",
"method":  "PATCH",
"request_body":  "{"type":8,"start_time":"2021-11-09T16:40:00Z","duration":30,"recurrence":{"type":3,"repeat_interval":3,"monthly_day":"09","end_times":1}}",
"response":  "N/A",
"request_headers": [
 "authorization: ******",
 "connection: close",
 "content-type: application/json; charset=utf-8"
],
"request_params": [
],
"http_status":  "204"
}
{
"endpoint":  "https://api.zoom.us/v2/meetings/85925695828",
"response_headers": [
 "Set-Cookie: zm_aid=""; Domain=.zoom.us; Expires=Thu, 01-Jan-1970 00:00:10 GMT; Path=/; Secure; HttpOnly"
],
"date_time":  "2021-11-09 10:48:54",
"method":  "PATCH",
"request_body":  "{"type":8,"start_time":"2021-11-09T16:50:00Z","duration":30,"recurrence":{"type":3,"repeat_interval":3,"monthly_day":"09","end_times":1}}",
"response":  "N/A",
"request_headers": [
 "authorization: ******",
 "connection: close",
 "content-type: application/json; charset=utf-8"
],
"request_params": [
],
"http_status":  "204"
}
{
"endpoint":  "https://api.zoom.us/v2/meetings/85925695828",
"response_headers": [
 "Set-Cookie: zm_aid=""; Domain=.zoom.us; Expires=Thu, 01-Jan-1970 00:00:10 GMT; Path=/; Secure; HttpOnly"
],
"date_time":  "2021-11-09 10:51:08",
"method":  "PATCH",
"request_body":  "{"type":8,"start_time":"2021-11-09T17:50:00Z","duration":30,"recurrence":{"type":3,"repeat_interval":3,"monthly_day":"09","end_times":1}}",
"response":  "N/A",
"request_headers": [
 "authorization: ******",
 "connection: close",
 "content-type: application/json; charset=utf-8"
],
"request_params": [
],
"http_status":  "204"
}
{
"endpoint":  "https://api.zoom.us/v2/meetings/83828925747",
"response_headers": [
 "Set-Cookie: zm_aid=""; Domain=.zoom.us; Expires=Thu, 01-Jan-1970 00:00:10 GMT; Path=/; Secure; HttpOnly"
],
"date_time":  "2021-11-09 10:58:28",
"method":  "PATCH",
"request_body":  "{"type":2,"start_time":"2021-11-09T16:00:00Z","duration":30}",
"response":  "N/A",
"request_headers": [
 "authorization: ******",
 "connection: close",
 "content-type: application/json; charset=utf-8"
],
"request_params": [
],
"http_status":  "204"
}
{
"endpoint":  "https://api.zoom.us/v2/meetings/83828925747",
"response_headers": [
 "Set-Cookie: zm_aid=""; Domain=.zoom.us; Expires=Thu, 01-Jan-1970 00:00:10 GMT; Path=/; Secure; HttpOnly"
],
"date_time":  "2021-11-09 11:03:23",
"method":  "PATCH",
"request_body":  "{"type":8,"start_time":"2021-11-09T17:00:00Z","duration":30,"recurrence":{"type":3,"repeat_interval":3,"monthly_day":"09","end_times":1}}",
"response":  "N/A",
"request_headers": [
 "authorization: ******",
 "connection: close",
 "content-type: application/json; charset=utf-8"
],
"request_params": [
],
"http_status":  "204"
}
{
"endpoint":  "https://api.zoom.us/v2/meetings/87574906546",
"response_headers": [
 "Set-Cookie: zm_aid=""; Domain=.zoom.us; Expires=Thu, 01-Jan-1970 00:00:10 GMT; Path=/; Secure; HttpOnly"
],
"date_time":  "2021-11-09 11:09:06",
"method":  "PATCH",
"request_body":  "{"type":8,"start_time":"2021-11-09T16:10:00Z","duration":30,"recurrence":{"type":3,"repeat_interval":3,"monthly_day":"09","end_times":1}}",
"response":  "N/A",
"request_headers": [
 "authorization: ******",
 "connection: close",
 "content-type: application/json; charset=utf-8"
],
"request_params": [
],
"http_status":  "204"
}
{
"endpoint":  "https://api.zoom.us/v2/meetings/87574906546",
"response_headers": [
 "Set-Cookie: zm_aid=""; Domain=.zoom.us; Expires=Thu, 01-Jan-1970 00:00:10 GMT; Path=/; Secure; HttpOnly"
],
"date_time":  "2021-11-09 11:11:11",
"method":  "PATCH",
"request_body":  "{"type":8,"start_time":"2021-11-09T17:10:00Z","duration":30,"recurrence":{"type":3,"repeat_interval":3,"monthly_day":"09","end_times":1}}",
"response":  "N/A",
"request_headers": [
 "authorization: ******",
 "connection: close",
 "content-type: application/json; charset=utf-8"
],
"request_params": [
],
"http_status":  "204"
}

Hey @MultiplayerSession,

Thank you for following up on this! I’m following up with our team to see if there is any further information they can provide here. I’ll get back to you ASAP.

Thanks,
Max

Our team got back to me and saw that the requests were indeed working on the backend as the meeting changed to a recurring meeting with one occurrence.

I would try making calls to the Get a Webinar API to make sure the changes are going through and make sure that you aren’t changing the meeting type along with the initial API calls to update the meeting.

Thanks,
Max

Here is a fresh step-by-step walkthrough of the rescheduling failing to change the meeting time if the meeting recently started and the new meeting time is in the near future. The meeting type remains as type 8 throughout the following steps.

Initial call to schedule the meeting at 11:30:58 AM Nov 17, 2021 (API Call Logs time, UTC -0500):

{
"endpoint":  "https://api.zoom.us/v2/meetings/85925695828",
"response_headers": [
 "Set-Cookie: zm_aid=""; Domain=.zoom.us; Expires=Thu, 01-Jan-1970 00:00:10 GMT; Path=/; Secure; HttpOnly"
],
"date_time":  "2021-11-17 11:30:58",
"method":  "PATCH",
"request_body":  "{"type":8,"start_time":"2021-11-17T16:32:00Z","duration":60,"recurrence":{"type":3,"repeat_interval":3,"monthly_day":"17","end_times":1}}",
"response":  "N/A",
"request_headers": [
 "authorization: ******",
 "connection: close",
 "content-type: application/json; charset=utf-8"
],
"request_params": [
],
"http_status":  "204"
}

Retrieval call to confirm the meeting at 11:30:59 AM Nov 17, 2021 (API Call Logs time, UTC -0500):

{
"endpoint":  "https://api.zoom.us/v2/meetings/85925695828",
"response_headers": [
 "Set-Cookie: zm_aid=""; Domain=.zoom.us; Expires=Thu, 01-Jan-1970 00:00:10 GMT; Path=/; Secure; HttpOnly"
],
"date_time":  "2021-11-17 11:30:59",
"method":  "GET",
"request_body":  "N/A",
"response":  "{"uuid":"KYTug+8IQUauABx4rWsFAQ==","id":85925695828,"host_id":"yeTuQ0NkS0W1ftH0ZdRqbQ","host_email":"****","assistant_id":"","topic":"Sample Recurring Meeting","type":8,"status":"waiting","timezone":"America/New_York","agenda":"","created_at":"2021-11-09T15:47:53Z","start_url":"https://us02web.zoom.us/s/85925695828?zak=...",
"request_headers": [
 "authorization: ******",
 "connection: close"
],
"request_params": [
],
"http_status":  "200"
}

Screenshot of the meeting overview page to show the start time succeeded, since the start time is truncated from the call log:

Time passes a few minutes for the start time to arrive, then we make a call to reschedule the meeting one hour later at 11:34:14 AM Nov 17, 2021 (API Call Logs time, UTC -0500):

{
"endpoint":  "https://api.zoom.us/v2/meetings/85925695828",
"response_headers": [
 "Set-Cookie: zm_aid=""; Domain=.zoom.us; Expires=Thu, 01-Jan-1970 00:00:10 GMT; Path=/; Secure; HttpOnly"
],
"date_time":  "2021-11-17 11:34:14",
"method":  "PATCH",
"request_body":  "{"type":8,"start_time":"2021-11-17T17:32:00Z","duration":60,"recurrence":{"type":3,"repeat_interval":3,"monthly_day":"17","end_times":1}}",
"response":  "N/A",
"request_headers": [
 "authorization: ******",
 "connection: close",
 "content-type: application/json; charset=utf-8"
],
"request_params": [
],
"http_status":  "204"
}

Retrieval call to show the meeting time failed to change at 11:34:16 AM Nov 17, 2021 (API Call Logs time, UTC -0500):

{
"endpoint":  "https://api.zoom.us/v2/meetings/85925695828",
"response_headers": [
 "Set-Cookie: zm_aid=""; Domain=.zoom.us; Expires=Thu, 01-Jan-1970 00:00:10 GMT; Path=/; Secure; HttpOnly"
],
"date_time":  "2021-11-17 11:34:16",
"method":  "GET",
"request_body":  "N/A",
"response":  "{"uuid":"KYTug+8IQUauABx4rWsFAQ==","id":85925695828,"host_id":"yeTuQ0NkS0W1ftH0ZdRqbQ","host_email":"****","assistant_id":"","topic":"Sample Recurring Meeting","type":8,"status":"waiting","timezone":"America/New_York","agenda":"","created_at":"2021-11-09T15:47:53Z","start_url":"https://us02web.zoom.us/s/85925695828?zak=eyJ0eXAiOiJKV1QiLCJzdiI6IjAwMDAwMSIsInptX3NrbSI6InptX28ybSIsImFsZyI6IkhTMjU2In0.eyJhdWQiOiJjbGllbnRzbSIsInVpZCI6InllVHVRME5rUzBXMWZ0SDBaZFJxYlEiLCJpc3MiOiJ3ZWIiLCJzdHkiOjEwMCwid2NkIjoidXMwMiIsImNsdCI6MCwibW51bSI6Ijg1OTI1Njk1ODI4Iiwic3RrIjoiQUZ4d2IzdHVnMG85S0NMNU1WZG9ZUmxsOHJxdE91OEdSbzFuQi1YaDhady5CZ1lnUVM5c09EQXpZbkZ6ZDB0UFRFMUtjVWh6TmtSelVtTkVPV293UVZCSmMwbEFNVEV4TXpJMllUVmxZVEF6TW1VMVkyVXhNRFU0TVdObVpXTmlaREpsTmpKbE9HUmlaVEkyTUdaaU9ESmxPREEzWVdGbE1UWTVOak00TVRWaFpXRTNOd0FnVDNGd2VsSnZVa1p4ZVROUWJDOTNVR2M0UjNoRU9XVlpXbWhLY1hoblkxY0FCSFZ6TURJQUFBRjlMci0zUUFBU2RRQUFBQSIsImV4cCI6MTYzNzE3NDA1NiwiaWF0IjoxNjM3MTY2ODU2LCJhaWQiOiJVcF9Ncjk4N1J5aUhSdzJoaVZuN053IiwiY2lkIjoiIn0.i4rPVSvzLJcJf ...",
"request_headers": [
 "authorization: ******",
 "connection: close"
],
"request_params": [
],
"http_status":  "200"
}

Screenshot of the meeting details page to show that the page has changed but the meeting time failed to update:


Then we make a call to set the start time to a day later which is distant enough to succeed (to show that this has an effect on the outcome) at 11:57:01 AM Nov 17, 2021 (API Call Logs time, UTC -0500):

{
"endpoint":  "https://api.zoom.us/v2/meetings/85925695828",
"response_headers": [
 "Set-Cookie: zm_aid=""; Domain=.zoom.us; Expires=Thu, 01-Jan-1970 00:00:10 GMT; Path=/; Secure; HttpOnly"
],
"date_time":  "2021-11-17 11:57:01",
"method":  "PATCH",
"request_body":  "{"type":8,"start_time":"2021-11-18T17:32:00Z","duration":60,"recurrence":{"type":3,"repeat_interval":3,"monthly_day":"18","end_times":1}}",
"response":  "N/A",
"request_headers": [
 "authorization: ******",
 "connection: close",
 "content-type: application/json; charset=utf-8"
],
"request_params": [
],
"http_status":  "204"
}

We retrieve the meeting to confirm the time successfully updated at 11:57:02 AM Nov 17, 2021 (API Call Logs time, UTC -0500):

{
"endpoint":  "https://api.zoom.us/v2/meetings/85925695828",
"response_headers": [
 "Set-Cookie: zm_aid=""; Domain=.zoom.us; Expires=Thu, 01-Jan-1970 00:00:10 GMT; Path=/; Secure; HttpOnly"
],
"date_time":  "2021-11-17 11:57:02",
"method":  "GET",
"request_body":  "N/A",
"response":  "{"uuid":"KYTug+8IQUauABx4rWsFAQ==","id":85925695828,"host_id":"yeTuQ0NkS0W1ftH0ZdRqbQ","host_email":"****","assistant_id":"","topic":"Sample Recurring Meeting","type":8,"status":"waiting","timezone":"America/New_York","agenda":"","created_at":"2021-11-09T15:47:53Z","start_url":"https://us02web.zoom.us/s/85925695828?zak=",
"request_headers": [
 "authorization: ******",
 "connection: close"
],
"request_params": [
],
"http_status":  "200"
}

And this time is reflected on the web site:


What other evidence do you need?

Email addresses are redacted in the log extracts.

Hey @MultiplayerSession,

My apologies for the delay here. I’m still working to reproduce this and investigating on my end. I’ll reach back out with what I find ASAP.

Thanks,
Max

It does sound like there is a discrepancy between the production environment and the approximately-production environment, so one side needs to cross over to the other side to narrow down the cause (say, by cloning account data or adding logging information).

From a customer perspective:

  1. Is there anything our application can do to help ensure consistency from one API call to another? For example, one platform I’ve used had a concept of “waypoints” where each manipulation API call would return a unique identification header, and if we needed to have a follow-up call depend on a previous call being committed, we’d pass back the dependent identification header(s) and the platform would pause to ensure those operations fully completed and propagated before continuing with the API call. The thinking here is maybe the calls to manipulate a specific meeting need to be linked together.
  2. Would providing the calling code for the specific API calls be helpful? I could extract the calling code for the API calls into a standalone PHP file and supply that, but the exact API call patterns are tied to a complicated WordPress instance.

Hey @MultiplayerSession,

My apologies for the delay here. In my testing, I haven’t been able to reproduce the same issue but I think you’re right about this being account specific. I’ve created a new ticket with an internal resource so that we can investigate those calls.

If you have an example of a meeting where this happened recently that should help to continue the investigation as well. (ZOOM-331849)

Thanks,
Max

Here is a recent recreation using meeting ID 81842374348. The Initial scheduling call was made at 02:07:52 PM Dec 15, 2021 (Eastern time, UTC -0500):

{
"endpoint":  "https://api.zoom.us/v2/meetings/81842374348",
"response_headers": [
 "Set-Cookie: zm_aid=""; Domain=.zoom.us; Expires=Thu, 01-Jan-1970 00:00:10 GMT; Path=/; Secure; HttpOnly"
],
"date_time":  "2021-12-15 14:07:52",
"method":  "PATCH",
"request_body":  "{"type":8,"start_time":"2021-12-15T19:09:00Z","duration":60,"recurrence":{"type":3,"repeat_interval":3,"monthly_day":"15","end_times":1}}",
"response":  "N/A",
"request_headers": [
 "authorization: ******",
 "connection: close",
 "content-type: application/json; charset=utf-8"
],
"request_params": [
],
"http_status":  "204"
}

Time passes and the meeting start time elapses, then we reschedule it one hour later with a call at 02:10:13 PM Dec 15, 2021 (Eastern time, UTC -0500):

{
"endpoint":  "https://api.zoom.us/v2/meetings/81842374348",
"response_headers": [
 "Set-Cookie: zm_aid=""; Domain=.zoom.us; Expires=Thu, 01-Jan-1970 00:00:10 GMT; Path=/; Secure; HttpOnly"
],
"date_time":  "2021-12-15 14:10:13",
"method":  "PATCH",
"request_body":  "{"type":8,"start_time":"2021-12-15T20:09:00Z","duration":60,"recurrence":{"type":3,"repeat_interval":3,"monthly_day":"15","end_times":1}}",
"response":  "N/A",
"request_headers": [
 "authorization: ******",
 "connection: close",
 "content-type: application/json; charset=utf-8"
],
"request_params": [
],
"http_status":  "204"
}

One second later, we retrieve the meeting details (although that is truncated from the API call logs) and find that the start time is unchanged with a call at 02:10:14 PM Dec 15, 2021 (Eastern time, UTC -0500):

{
"endpoint":  "https://api.zoom.us/v2/meetings/81842374348",
"response_headers": [
 "Set-Cookie: zm_aid=""; Domain=.zoom.us; Expires=Thu, 01-Jan-1970 00:00:10 GMT; Path=/; Secure; HttpOnly"
],
"date_time":  "2021-12-15 14:10:14",
"method":  "GET",
"request_body":  "N/A",
"response":  "{"uuid":"Q2hQLcBnQRO+Cei7MGEXwQ==","id":81842374348,"host_id":"yeTuQ0NkS0W1ftH0ZdRqbQ","host_email":"****","assistant_id":"","topic":"Normal Session for Test Committee","type":8,"status":"waiting","timezone":"America/New_York","agenda":"","created_at":"2021-03-04T22:21:18Z","start_url":"https://us02web.zoom.us/s/81842374348?zak=eyJ0eXAiOiJKV1QiLCJzdiI6IjAwMDAwMSIsInptX3NrbSI6InptX28ybSIsImFsZyI6IkhTMjU2In0.eyJhdWQiOiJjbGllbnRzbSIsInVpZCI6InllVHVRME5rUzBXMWZ0SDBaZFJxYlEiLCJpc3MiOiJ3ZWIiLCJzdHkiOjEwMCwid2NkIjoidXMwMiIsImNsdCI6MCwibW51bSI6IjgxODQyMzc0MzQ4Iiwic3RrIjoiSzRPU3UxMWhBZGJ5ZEpvZ3VjcFFaQW96T0M4NDg3elpyVlJyajdxcXJ1OC5CZ1lnUVM5c09EQXpZbkZ6ZDB0UFRFMUtjVWh6TmtSelVtTkVPV293UVZCSmMwbEFNVEV4TXpJMllUVmxZVEF6TW1VMVkyVXhNRFU0TVdObVpXTmlaREpsTmpKbE9HUmlaVEkyTUdaaU9ESmxPREEzWVdGbE1UWTVOak00TVRWaFpXRTNOd0FnVDNGd2VsSnZVa1p4ZVROUWJDOTNVR2M0UjNoRU9XVlpXbWhLY1hoblkxY0FCSFZ6TURJQUFBRjl2NENVcFFBU2RRQUFBQSIsImV4cCI6MTYzOTYwMjYxNCwiaWF0IjoxNjM5NTk1NDE0LCJhaWQiOiJVcF9Ncjk4N1J5aUhSdzJoaVZuN053IiwiY2lkIjoiIn0.Q87T ...",
"request_headers": [
 "authorization: ******",
 "connection: close"
],
"request_params": [
],
"http_status":  "200"
}

So we send another attempt to change the start time within the same second at 02:10:14 PM Dec 15, 2021 (Eastern time, UTC -0500):

{
"endpoint":  "https://api.zoom.us/v2/meetings/81842374348",
"response_headers": [
 "Set-Cookie: zm_aid=""; Domain=.zoom.us; Expires=Thu, 01-Jan-1970 00:00:10 GMT; Path=/; Secure; HttpOnly"
],
"date_time":  "2021-12-15 14:10:14",
"method":  "PATCH",
"request_body":  "{"type":8,"start_time":"2021-12-15T20:09:00Z","duration":60,"recurrence":{"type":3,"repeat_interval":3,"monthly_day":"15","end_times":1}}",
"response":  "N/A",
"request_headers": [
 "authorization: ******",
 "connection: close",
 "content-type: application/json; charset=utf-8"
],
"request_params": [
],
"http_status":  "204"
}

Hey @MultiplayerSession,

Thank you for following up with that information! Our engineering team was able to identify the behavior that causes this. Essentially, it has to do with a mix up between UTC and Meeting Time where the backend should be converting the values before comparing.

Thanks,
Max

1 Like

We’re still observing this behavior where the meeting time updates aren’t being applied, so it sounds like this is still in the pipeline, possibly for the next monthly release for the APIs.

@MultiplayerSession Thanks for following up on this! We released an update to the API today, are you still seeing this issue?

Yes, this problem is resolved for meetings and webinars as described in the Meeting API changelog for January 24, 2022. Thank you!

@MultiplayerSession Awesome! I’m glad to hear everything is working now. I’ll go ahead and close this topic now but feel free to open a new topic if you encounter any further issues or questions.