How to create a new google meet using google calendar api

Vishnu Darshan picture Vishnu Darshan · Oct 26, 2020 · Viewed 7.6k times · Source

I need implement a javascript project that creates a new google meet according to the user signed in and adds the event to the calendar and gets the url of the google meet. How can i create a new google meet using Google Calendar API in JS.

Answer

Answer:

You need to use the conferenceData.createRequest parameter of the Events resource when creating a Calendar.Events: insert request to add a Meet link to a Calendar Event.

More Information:

As per the documention for Events: insert and the Event resource reperesentation:

conferenceDataVersion: integer

Version number of conference data supported by the API client. Version 0 assumes no conference data support and ignores conference data in the event's body. Version 1 enables support for copying of ConferenceData as well as for creating new conferences using the createRequest field of conferenceData. The default is 0. Acceptable values are 0 to 1, inclusive.


conferenceData.createRequest: nested object

A request to generate a new conference and attach it to the event. The data is generated asynchronously. To see whether the data is present check the status field.

Either conferenceSolution and at least one entryPoint, or createRequest is required.


conferenceData.createRequest.conferenceSolutionKey.type: string

The conference solution type.

If a client encounters an unfamiliar or empty type, it should still be able to display the entry points. However, it should disallow modifications.

The possible values are:


conferenceData.createRequest.requestId: string

The client-generated unique ID for this request. Clients should regenerate this ID for every new request. If an ID provided is the same as for the previous request, the request is ignored.

With this information we can generate a Calendar Event creation request with a Meet link as the conference solution.

Example Request:

gapi.client.calendar.events.insert({
  "calendarId": "primary",
  "conferenceDataVersion": 1,
  "resource": {
    "end": {
      "date": "2020-10-24"
    },
    "start": {
      "date": "2020-10-23"
    },
    "conferenceData": {
      "createRequest": {
        "conferenceSolutionKey": {
          "type": "hangoutsMeet"
        },
        "requestId": "some-random-string"
      }
    },
    "summary": "titles are cool"
  }
});

NB: In order for a Meet link to be generated, you must set conferenceData.createRequest.requestId to any random string. For each new meet link you wish to create, you must use a different string in the request.

References: