Calendar Item to Zoom Meeting Connection?

I have searched for days but cannot find a solid solution. I want to pull calendar events from either google or office 365 and then pull the zoom id from it. All I can see is the body content from the calendar events and parsing the URL String to the meeting, but I wanted to confirm this is the only way? I would have thought zoom would have an extended property or open extension (or google equivalent) which would link the two (calendar event to zoom meeting). Before I go a coding, it would sure help to be sure the direction is correct.

Which Endpoint/s?

How To Reproduce (If applicable)

Screenshots (If applicable)

Additional context

Hey @klhdevone, thanks for reaching out.

Can you describe your use case so I can understand what you are trying to accomplish?

Also when you say “zoom id” do you mean the “zoom meeting id/number”?


Thanks so much for the reply @tommy. MY app is currently integrated with Microsoft Graph for calendar items. I want to be able to link the office 365 calendar event to a zoom meeting (if there is one) without having to parse the text of the office 365 calendar event to pull the zoom meeting id from the URL contained in the html body of the office 365 calendar event. I know office 365 calendar events can use custom extensions and was hoping those were exposed for zoom.

So in ideal case, I could retrieve an office 365 event, it would contain the zoom meeting id, then i could continue to link the two together for various functions.

Thanks for the details @klhdevone,

Are you looking to use our API to complete this, or would the Office 365 integration work for you?

Let me know!


Thank you for the reply, but I know about those tools I’m trying to figure out how you link (programmatically) a calendar event in office 365 to a zoom meeting. Let’s say I have a program and all it has is access to the office 365 calendar event item from microsoft graph. Is there a way to pull the zoom meeting id from it (aside from just the body text or matching dates/times)? I understand I’d need to use zoom api calls to pull the zoom meeting details. I want to know quickly and easily if an office 365 calendar event has a zoom meeting without having to parse the the body field of html text looking for a URL. HOpe I’m making sense.

Thanks @klhdevone for the clarification.

Unfortunately these seems like a question for the Office 365 API. We do not have an endpoint to query an Office 365 calendar event for a Zoom Meeting.

Try this Microsoft endpoint which has the onlineMeetingUrl in the response.


Thanks Tommy. So one more question and I’ll leave it. But when using zoom outlook add in (whether desktop or web) and I create an outlook meeting, then use the zoom add in to add a zoom meeting to that outlook calendar event, does zoom store anything in that outlook calendar record that relates to the zoom meeting or does it just update the body text with the invitation details of the outlook calendar event and then create a zoom meeting back at zoom?

Another question that may help. If I delete an event in outlook calendar, how does the zoom add in know which zoom meeting to cancel? Does it just pick up the zoom meeting id from the outlook calendar body text or is there a hidden field in the outlook calendar event that contains the zoom meeting id?

The meeting join url is stored so when you click on it, you will join the meeting.

Zoom knows what meeting to cancel because when you create the meeting it stores the meeting id.

The Zoom add on handles all this logic behind the scenes.

Does that answer your questions?

Thanks Tommy. I know zoom add on handles that logic…I’m trying to figure out how it handles that logic. When you say zoom knows what meeting to cancel because when you create the meeting it stores the meeting id. are you referring to the zoom or office 365 meeting id? And were does it store it?

When a user deletes a meeting from within outlook, the zoom add in has to match that outlook calendar event to a zoom meeting. I still don’t understand how it does that. The only thing I see is simply a zoom meeting id contained within the body text of the outlook event. IS that what it uses? That seems odd to parse that text for an id and not store it within the outlook calendar event somehow.

Appreciate your continued help

Hey @klhdevone,

I am referring to the Zoom Meeting ID.
The integration itself has a database that knows what meetingID each calendar event has.

The meeting ID is stored in a database. Then the database data is used to render the data on the frontend of the calendar event.

Let me know if that helps!


Perfect. Is it possible for my app to get access to that database? All I need is the zoom meeting id that is linked to the outlook calendar event id. My goal is to build an office 365 add-in that can pull the zoom meeting id without having to parse the outlook event description. Likewise, I’m building an app connected to zoom and I’d love to be able to pull the outlook meeting id from the zoom apis.

i.e. is there a way for a third party app (mine) to get access to the same data set that your zoom plug in uses.

Hey @klhdevone,

Zoom does not give access to the data from any of our integrations, and we don’t have an endpoint to do so.

What is the use case of the app you want to create? Seems like you will have to pull the zoom meeting id from the calendar event.


I have an outlook add in and want to link teh outlook event to the zoom meeting id so our users can download the video later. It all starts with an outlook meeting and there may or may not be a zoom meeting linked. The only way I can see to do it now is one of hte following:

  1. parse the outlook event body text looking for the zoom meeting id within the hyperlink
  2. search zoom for the same time period of the meeting to see if a zoom meeting exists (then its not really 100% that its for that outlook calendar meeting.

I don’t think item 2 will be 100% accurate and parsing the body text seems overkill. I was hoping there would be an easier way to pull the zoom meeting id from within outlook.

I could (if needed) do it in reverse,which is pull zoom meetings from the users account, but I’d need something in the zoom meeting record that linked back to an outlook event.

I REALLY don’t want to parse the body text if I can keep from it. Hoping there is a simpler approach.

Hey @klhdevone,

Thanks for sharing your use case.

If you want to grab the recorded video, you can use theZoom API to do so.

We have an endpoint that returns recordings for a meeting id or recordings for a user id.

We also have a Webhook event that sends you the meeting recording download url upon recording completion.

Let me know if this helps!


1 Like

Thanks @tommy and sorry to keep going round and round. I understand I can get the meeting recordings, but in order to do so I have to have the zoom meeting ID. How do I get that Zoom meeting id if all i have is the outlook meeting id?

Hey @klhdevone, I am not sure what the outlook meeting id is.

You can list all scheduled and upcoming meetings here to get a list of zoom meeting ID’s to use to get recordings.

Make sure to pass in the type query param of scheduled or upcoming.


When a user creates a meeting through outlook and uses the zoom plug in to connect a zoom meeting to that outlook calendar event, I am referring to the outlook event id. Is there no connection between the outlook meeting and the zoom meeting other than the contents of the outlook meeting body?

The connection is at the Zoom Plug In level in which we do not give public access to the data.

The only way for you to get the meeting ID would be to strap it off the frontend of the calendar event as you have stated.


I was afraid of that…thank you for your great support. I’d love to see this opened up.

From a different angle, is there any access to the outlook event id from teh zoom apis? i.e. if I start with the zoom meeting id, is there a way to determine if it was generated by outlook and get the outlook event id?

Happy to help!

Not with the Zoom API, but I am sure this is possible with the Outlook API.