Google Meet API

The Google Meet REST API enables creating and managing meeting spaces, retrieving conference records with participant and session data, accessing meeting recordings and transcripts, and controlling active conferences.

OpenAPI Specification

openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Google Meet API
  description: >-
    The Google Meet REST API enables creating and managing meeting spaces,
    retrieving conference records with participant and session details, and
    accessing meeting recordings and transcripts.
  version: v2
  contact:
    name: Google
    url: https://developers.google.com/workspace/meet/api/guides/overview
servers:
  - url: https://meet.googleapis.com
paths:
  /v2/spaces:
    post:
      operationId: createSpace
      summary: Google Meet Create meeting space
      description: Creates a new meeting space.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Space'
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Space'
      tags:
        - Spaces
  /v2/{name}:
    get:
      operationId: getSpace
      summary: Google Meet Get meeting space
      description: Gets a meeting space by resource name.
      parameters:
        - name: name
          in: path
          required: true
          description: 'Format: spaces/{space}'
          schema:
            type: string
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Space'
    patch:
      operationId: updateSpace
      summary: Google Meet Update meeting space
      description: Updates a meeting space.
      parameters:
        - name: name
          in: path
          required: true
          description: 'Format: spaces/{space}'
          schema:
            type: string
        - name: updateMask
          in: query
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Space'
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Space'
  /v2/{name}:endActiveConference:
    post:
      operationId: endActiveConference
      summary: Google Meet End active conference
      description: Ends an active conference in a space.
      parameters:
        - name: name
          in: path
          required: true
          description: 'Format: spaces/{space}'
          schema:
            type: string
      responses:
        '200':
          description: Successful response
  /v2/conferenceRecords:
    get:
      operationId: listConferenceRecords
      summary: Google Meet List conference records
      description: Lists the conference records.
      parameters:
        - name: pageSize
          in: query
          schema:
            type: integer
        - name: pageToken
          in: query
          schema:
            type: string
        - name: filter
          in: query
          schema:
            type: string
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListConferenceRecordsResponse'
      tags:
        - conferenceRecords
  /v2/conferenceRecords/{conferenceRecordId}:
    get:
      operationId: getConferenceRecord
      summary: Google Meet Get conference record
      description: Gets a conference record by conference ID.
      parameters:
        - name: conferenceRecordId
          in: path
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConferenceRecord'
      tags:
        - conferenceRecords
  /v2/conferenceRecords/{conferenceRecordId}/participants:
    get:
      operationId: listParticipants
      summary: Google Meet List participants
      description: Lists the participants in a conference record.
      parameters:
        - name: conferenceRecordId
          in: path
          required: true
          schema:
            type: string
        - name: pageSize
          in: query
          schema:
            type: integer
        - name: pageToken
          in: query
          schema:
            type: string
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListParticipantsResponse'
      tags:
        - conferenceRecords
  /v2/conferenceRecords/{conferenceRecordId}/participants/{participantId}:
    get:
      operationId: getParticipant
      summary: Google Meet Get participant
      description: Gets a participant by participant ID.
      parameters:
        - name: conferenceRecordId
          in: path
          required: true
          schema:
            type: string
        - name: participantId
          in: path
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Participant'
      tags:
        - conferenceRecords
  /v2/conferenceRecords/{conferenceRecordId}/recordings:
    get:
      operationId: listRecordings
      summary: Google Meet List recordings
      description: Lists the recordings from a conference record.
      parameters:
        - name: conferenceRecordId
          in: path
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListRecordingsResponse'
      tags:
        - conferenceRecords
  /v2/conferenceRecords/{conferenceRecordId}/transcripts:
    get:
      operationId: listTranscripts
      summary: Google Meet List transcripts
      description: Lists the transcripts from a conference record.
      parameters:
        - name: conferenceRecordId
          in: path
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListTranscriptsResponse'
      tags:
        - conferenceRecords
  /v2/conferenceRecords/{conferenceRecordId}/transcripts/{transcriptId}/entries:
    get:
      operationId: listTranscriptEntries
      summary: Google Meet List transcript entries
      description: Lists the transcript entries from a transcript.
      parameters:
        - name: conferenceRecordId
          in: path
          required: true
          schema:
            type: string
        - name: transcriptId
          in: path
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListTranscriptEntriesResponse'
      tags:
        - conferenceRecords
components:
  schemas:
    Space:
      type: object
      properties:
        name:
          type: string
        meetingUri:
          type: string
        meetingCode:
          type: string
        config:
          type: object
          properties:
            accessType:
              type: string
              enum: [ACCESS_TYPE_UNSPECIFIED, OPEN, TRUSTED, RESTRICTED]
            entryPointAccess:
              type: string
              enum: [ENTRY_POINT_ACCESS_UNSPECIFIED, ALL, CREATOR_APP_ONLY]
        activeConference:
          type: object
          properties:
            conferenceRecord:
              type: string
    ConferenceRecord:
      type: object
      properties:
        name:
          type: string
        startTime:
          type: string
          format: date-time
        endTime:
          type: string
          format: date-time
        expireTime:
          type: string
          format: date-time
        space:
          type: string
    ListConferenceRecordsResponse:
      type: object
      properties:
        conferenceRecords:
          type: array
          items:
            $ref: '#/components/schemas/ConferenceRecord'
        nextPageToken:
          type: string
    Participant:
      type: object
      properties:
        name:
          type: string
        earliestStartTime:
          type: string
          format: date-time
        latestEndTime:
          type: string
          format: date-time
    ListParticipantsResponse:
      type: object
      properties:
        participants:
          type: array
          items:
            $ref: '#/components/schemas/Participant'
        nextPageToken:
          type: string
        totalSize:
          type: integer
    Recording:
      type: object
      properties:
        name:
          type: string
        state:
          type: string
          enum: [STATE_UNSPECIFIED, STARTED, ENDED, FILE_GENERATED]
        startTime:
          type: string
          format: date-time
        endTime:
          type: string
          format: date-time
    ListRecordingsResponse:
      type: object
      properties:
        recordings:
          type: array
          items:
            $ref: '#/components/schemas/Recording'
        nextPageToken:
          type: string
    Transcript:
      type: object
      properties:
        name:
          type: string
        state:
          type: string
          enum: [STATE_UNSPECIFIED, STARTED, ENDED, FILE_GENERATED]
        startTime:
          type: string
          format: date-time
        endTime:
          type: string
          format: date-time
    ListTranscriptsResponse:
      type: object
      properties:
        transcripts:
          type: array
          items:
            $ref: '#/components/schemas/Transcript'
        nextPageToken:
          type: string
    TranscriptEntry:
      type: object
      properties:
        name:
          type: string
        participant:
          type: string
        text:
          type: string
        startTime:
          type: string
          format: date-time
        endTime:
          type: string
          format: date-time
        languageCode:
          type: string
    ListTranscriptEntriesResponse:
      type: object
      properties:
        transcriptEntries:
          type: array
          items:
            $ref: '#/components/schemas/TranscriptEntry'
        nextPageToken:
          type: string
tags:
  - name: conferenceRecords
  - name: Spaces