Google Meet Spaces API
The Spaces API from Google Meet — 1 operation(s) for spaces.
The Spaces API from Google Meet — 1 operation(s) for spaces.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/google-meet:google-meet-spaces-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Google Meet Spaces API
version: v2
description: Generated from Google's published Discovery document for Google Meet API (meet v2, revision 20261109). 10 operation(s).
contact:
name: Google
url: https://developers.google.com/
termsOfService: https://developers.google.com/terms
servers:
- url: https://meet.googleapis.com
tags:
- name: Spaces
paths:
/v2/spaces:
post:
operationId: meet.spaces.create
summary: Create spaces
description: Creates a space. For more information, see Manage meeting spaces.
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/Space'
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/Space'
4XX:
content:
application/json:
schema:
$ref: '#/components/schemas/GoogleRpcError'
description: 'Client error (google.rpc.Status: INVALID_ARGUMENT, PERMISSION_DENIED, NOT_FOUND ...)'
default:
content:
application/json:
schema:
$ref: '#/components/schemas/GoogleRpcError'
description: Error response (google.rpc.Status)
security:
- oauth2:
- https://www.googleapis.com/auth/meetings.space.created
- apiKey: []
tags:
- Spaces
/v2/spaces/{spacesId}:endActiveConference:
post:
operationId: meet.spaces.endActiveConference
summary: End active conference spaces
description: Ends an active conference (if there's one). For more information, see Manage meeting spaces.
parameters:
- name: spacesId
in: path
required: true
description: Resource name segment (spacesId).
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/EndActiveConferenceRequest'
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/Empty'
4XX:
content:
application/json:
schema:
$ref: '#/components/schemas/GoogleRpcError'
description: 'Client error (google.rpc.Status: INVALID_ARGUMENT, PERMISSION_DENIED, NOT_FOUND ...)'
default:
content:
application/json:
schema:
$ref: '#/components/schemas/GoogleRpcError'
description: Error response (google.rpc.Status)
security:
- oauth2:
- https://www.googleapis.com/auth/meetings.space.created
- apiKey: []
tags:
- Spaces
/v2/spaces/{spacesId}:
patch:
operationId: meet.spaces.patch
summary: Patch spaces
description: Updates details about a meeting space. For more information, see Manage meeting spaces.
parameters:
- name: spacesId
in: path
required: true
description: Resource name segment (spacesId).
schema:
type: string
- name: updateMask
in: query
required: false
description: Optional. Field mask used to specify the fields to be updated in the space. If update_mask isn't provided(not set, set with empty paths, or only has "" as paths), it defaults to update all fields provided with values in the request. Using "*" as update_mask will update all fields, including deleting fields not set in the request.
schema:
type: string
format: google-fieldmask
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/Space'
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/Space'
4XX:
content:
application/json:
schema:
$ref: '#/components/schemas/GoogleRpcError'
description: 'Client error (google.rpc.Status: INVALID_ARGUMENT, PERMISSION_DENIED, NOT_FOUND ...)'
default:
content:
application/json:
schema:
$ref: '#/components/schemas/GoogleRpcError'
description: Error response (google.rpc.Status)
security:
- oauth2:
- https://www.googleapis.com/auth/meetings.space.created
- https://www.googleapis.com/auth/meetings.space.settings
- apiKey: []
tags:
- Spaces
get:
operationId: meet.spaces.get
summary: Get spaces
description: Gets details about a meeting space. For more information, see Manage meeting spaces. For an example, see Get a meeting space.
parameters:
- name: spacesId
in: path
required: true
description: Resource name segment (spacesId).
schema:
type: string
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/Space'
4XX:
content:
application/json:
schema:
$ref: '#/components/schemas/GoogleRpcError'
description: 'Client error (google.rpc.Status: INVALID_ARGUMENT, PERMISSION_DENIED, NOT_FOUND ...)'
default:
content:
application/json:
schema:
$ref: '#/components/schemas/GoogleRpcError'
description: Error response (google.rpc.Status)
security:
- oauth2:
- https://www.googleapis.com/auth/meetings.space.created
- https://www.googleapis.com/auth/meetings.space.readonly
- https://www.googleapis.com/auth/meetings.space.settings
- apiKey: []
tags:
- Spaces
/v2/spaces/{spacesId}/members:
get:
operationId: meet.spaces.members.list
summary: List members
description: Lists members. For more information, see Manage meeting space members. This API supports the `fields` parameter in SystemParameterContext. When the `fields` parameter is omitted this API response will default to "name,email,role,user".
parameters:
- name: spacesId
in: path
required: true
description: Resource name segment (spacesId).
schema:
type: string
- name: pageSize
in: query
required: false
description: Optional. Maximum number of members to return. The service might return fewer than this value. If unspecified or set to 0, at most 250 members are returned. The maximum value is 500; values above 500 are coerced to 500. Maximum might change in the future.
schema:
format: int32
type: integer
- name: pageToken
in: query
required: false
description: Optional. Page token returned from previous List Call.
schema:
type: string
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/ListMembersResponse'
4XX:
content:
application/json:
schema:
$ref: '#/components/schemas/GoogleRpcError'
description: 'Client error (google.rpc.Status: INVALID_ARGUMENT, PERMISSION_DENIED, NOT_FOUND ...)'
default:
content:
application/json:
schema:
$ref: '#/components/schemas/GoogleRpcError'
description: Error response (google.rpc.Status)
security:
- oauth2:
- https://www.googleapis.com/auth/meetings.space.created
- https://www.googleapis.com/auth/meetings.space.readonly
- apiKey: []
tags:
- Spaces
post:
operationId: meet.spaces.members.create
summary: Create members
description: Creates a member. For more information, see Manage meeting space members. This API supports the `fields` parameter in SystemParameterContext. When the `fields` parameter is omitted, this API response will default to "name,email,role,user".
parameters:
- name: spacesId
in: path
required: true
description: Resource name segment (spacesId).
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/Member'
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/Member'
4XX:
content:
application/json:
schema:
$ref: '#/components/schemas/GoogleRpcError'
description: 'Client error (google.rpc.Status: INVALID_ARGUMENT, PERMISSION_DENIED, NOT_FOUND ...)'
default:
content:
application/json:
schema:
$ref: '#/components/schemas/GoogleRpcError'
description: Error response (google.rpc.Status)
security:
- oauth2:
- https://www.googleapis.com/auth/meetings.space.created
- apiKey: []
tags:
- Spaces
/v2/spaces/{spacesId}/members/{membersId}:
patch:
operationId: meet.spaces.members.patch
summary: Patch members
description: Updates a member. For more information, see Manage meeting space members.
parameters:
- name: spacesId
in: path
required: true
description: Resource name segment (spacesId).
schema:
type: string
- name: membersId
in: path
required: true
description: Resource name segment (membersId).
schema:
type: string
- name: updateMask
in: query
required: false
description: Optional. Field mask used to specify the fields to be updated in the member. If update_mask isn't provided(not set, set with empty paths, or only has "" as paths), it defaults to update all fields provided with values in the request. Using "*" as update_mask will update all fields, including deleting fields not set in the request. In case of BatchUpdate, it must be absent or the same as the update_mask in BatchUpdateMembersRequest when UpdateMemberRequest is built as a child request of BatchUpdateMembersRequest.
schema:
type: string
format: google-fieldmask
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/Member'
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/Member'
4XX:
content:
application/json:
schema:
$ref: '#/components/schemas/GoogleRpcError'
description: 'Client error (google.rpc.Status: INVALID_ARGUMENT, PERMISSION_DENIED, NOT_FOUND ...)'
default:
content:
application/json:
schema:
$ref: '#/components/schemas/GoogleRpcError'
description: Error response (google.rpc.Status)
security:
- oauth2:
- https://www.googleapis.com/auth/meetings.space.created
- apiKey: []
tags:
- Spaces
delete:
operationId: meet.spaces.members.delete
summary: Delete members
description: Deletes the member who was previously assigned roles in the space. For more information, see Manage meeting space members.
parameters:
- name: spacesId
in: path
required: true
description: Resource name segment (spacesId).
schema:
type: string
- name: membersId
in: path
required: true
description: Resource name segment (membersId).
schema:
type: string
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/Empty'
4XX:
content:
application/json:
schema:
$ref: '#/components/schemas/GoogleRpcError'
description: 'Client error (google.rpc.Status: INVALID_ARGUMENT, PERMISSION_DENIED, NOT_FOUND ...)'
default:
content:
application/json:
schema:
$ref: '#/components/schemas/GoogleRpcError'
description: Error response (google.rpc.Status)
security:
- oauth2:
- https://www.googleapis.com/auth/meetings.space.created
- apiKey: []
tags:
- Spaces
get:
operationId: meet.spaces.members.get
summary: Get members
description: Gets a member. For more information, see Manage meeting space members. This API supports the `fields` parameter in SystemParameterContext. When the `fields` parameter is omitted, this API response will default to "name,email,role,user".
parameters:
- name: spacesId
in: path
required: true
description: Resource name segment (spacesId).
schema:
type: string
- name: membersId
in: path
required: true
description: Resource name segment (membersId).
schema:
type: string
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/Member'
4XX:
content:
application/json:
schema:
$ref: '#/components/schemas/GoogleRpcError'
description: 'Client error (google.rpc.Status: INVALID_ARGUMENT, PERMISSION_DENIED, NOT_FOUND ...)'
default:
content:
application/json:
schema:
$ref: '#/components/schemas/GoogleRpcError'
description: Error response (google.rpc.Status)
security:
- oauth2:
- https://www.googleapis.com/auth/meetings.space.created
- https://www.googleapis.com/auth/meetings.space.readonly
- apiKey: []
tags:
- Spaces
/v2/spaces/{spacesId}/members:batchUpdate:
post:
operationId: meet.spaces.members.batchUpdate
summary: Batch update members
description: Updates members of one space within a batch. For more information, see Manage meeting space members.
parameters:
- name: spacesId
in: path
required: true
description: Resource name segment (spacesId).
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/BatchUpdateMembersRequest'
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/BatchUpdateMembersResponse'
4XX:
content:
application/json:
schema:
$ref: '#/components/schemas/GoogleRpcError'
description: 'Client error (google.rpc.Status: INVALID_ARGUMENT, PERMISSION_DENIED, NOT_FOUND ...)'
default:
content:
application/json:
schema:
$ref: '#/components/schemas/GoogleRpcError'
description: Error response (google.rpc.Status)
security:
- oauth2:
- https://www.googleapis.com/auth/meetings.space.created
- apiKey: []
tags:
- Spaces
components:
schemas:
ModerationRestrictions:
type: object
properties:
presentRestriction:
type: string
enum:
- RESTRICTION_TYPE_UNSPECIFIED
- HOSTS_ONLY
- NO_RESTRICTION
description: Defines who has permission to share their screen in the meeting space.
reactionRestriction:
type: string
enum:
- RESTRICTION_TYPE_UNSPECIFIED
- HOSTS_ONLY
- NO_RESTRICTION
description: Defines who has permission to send reactions in the meeting space.
defaultJoinAsViewerType:
type: string
enum:
- DEFAULT_JOIN_AS_VIEWER_TYPE_UNSPECIFIED
- 'ON'
- 'OFF'
description: Defines whether to restrict the default role assigned to users as viewer.
chatRestriction:
description: Defines who has permission to send chat messages in the meeting space.
type: string
enum:
- RESTRICTION_TYPE_UNSPECIFIED
- HOSTS_ONLY
- NO_RESTRICTION
description: Defines restrictions for features when the meeting is moderated.
PhoneAccess:
properties:
languageCode:
description: 'The BCP 47/LDML language code for the language associated with this phone access. To be parsed by the i18n LanguageCode utility. Examples: "es-419" for Latin American Spanish, "fr-CA" for Canadian French.'
type: string
regionCode:
description: 'The CLDR/ISO 3166 region code for the country associated with this phone access. To be parsed by the i18n RegionCode utility. Example: "SE" for Sweden.'
type: string
phoneNumber:
description: The phone number to dial for this meeting space in E.164 format. Full phone number with a leading '+' character.
type: string
pin:
description: The PIN that users must enter after dialing the given number. The PIN consists of only decimal digits and the length may vary.
type: string
type: object
description: Phone access contains information required to dial into a conference using a regional phone number and a PIN that is specific to that phone number.
SmartNotesConfig:
description: Configuration related to smart notes in a meeting space. For more information about smart notes, see ["Take notes for me" in Google Meet](https://support.google.com/meet/answer/14754931).
properties:
autoSmartNotesGeneration:
description: Defines whether to automatically generate a summary and recap of the meeting for all invitees in the organization when someone with the privilege to enable smart notes joins the meeting.
type: string
enum:
- AUTO_GENERATION_TYPE_UNSPECIFIED
- 'ON'
- 'OFF'
type: object
ListMembersResponse:
properties:
members:
type: array
description: The list of members for the current page.
items:
$ref: '#/components/schemas/Member'
nextPageToken:
type: string
description: Token to be circulated back for further list call if current list doesn't include all the members. Unset if all members are returned.
description: Response of list members.
type: object
EndActiveConferenceRequest:
properties: {}
description: Request to end an ongoing conference of a space.
type: object
SpaceConfig:
type: object
description: The configuration pertaining to a meeting space.
properties:
moderationRestrictions:
$ref: '#/components/schemas/ModerationRestrictions'
description: When moderation.ON, these restrictions go into effect for the meeting. When moderation.OFF, will be reset to default ModerationRestrictions.
attendanceReportGenerationType:
type: string
enum:
- ATTENDANCE_REPORT_GENERATION_TYPE_UNSPECIFIED
- GENERATE_REPORT
- DO_NOT_GENERATE
description: Whether attendance report is enabled for the meeting space.
entryPointAccess:
type: string
enum:
- ENTRY_POINT_ACCESS_UNSPECIFIED
- ALL
- CREATOR_APP_ONLY
description: 'Defines the entry points that can be used to join meetings hosted in this meeting space. Default: EntryPointAccess.ALL'
artifactConfig:
$ref: '#/components/schemas/ArtifactConfig'
description: Configuration pertaining to the auto-generated artifacts that the meeting supports.
accessType:
description: 'Access type of the meeting space that determines who can join without knocking. Default: The user''s default access settings. Controlled by the user''s admin for enterprise users or RESTRICTED.'
type: string
enum:
- ACCESS_TYPE_UNSPECIFIED
- OPEN
- TRUSTED
- RESTRICTED
moderation:
description: 'The pre-configured moderation mode for the Meeting. Default: Controlled by the user''s policies.'
type: string
enum:
- MODERATION_UNSPECIFIED
- 'OFF'
- 'ON'
TranscriptionConfig:
type: object
properties:
autoTranscriptionGeneration:
description: Defines whether the content of a meeting is automatically transcribed when someone with the privilege to transcribe joins the meeting.
type: string
enum:
- AUTO_GENERATION_TYPE_UNSPECIFIED
- 'ON'
- 'OFF'
description: Configuration related to transcription in a meeting space.
BatchUpdateMembersResponse:
properties:
members:
type: array
items:
$ref: '#/components/schemas/Member'
description: Members updated.
description: Response of batch update members.
type: object
Space:
type: object
description: Virtual place where conferences are held. Only one active conference can be held in one space at any given time.
properties:
meetingCode:
description: 'Output only. Type friendly unique string used to join the meeting. Format: `[a-z]+-[a-z]+-[a-z]+`. For example, `abc-mnop-xyz`. The maximum length is 128 characters. Can only be used as an alias of the space name to get the space.'
readOnly: true
type: string
gatewaySipAccess:
type: array
description: Output only. The SIP-based access methods that can be used to join the conference. Can be empty.
items:
$ref: '#/components/schemas/GatewaySipAccess'
readOnly: true
config:
$ref: '#/components/schemas/SpaceConfig'
description: Configuration pertaining to the meeting space.
name:
description: 'Immutable. Resource name of the space. Format: `spaces/{space}`. `{space}` is the resource identifier for the space. It''s a unique, server-generated ID and is case sensitive. For example, `jQCFfuBOdN5z`. For more information, see [How Meet identifies a meeting space](https://developers.google.com/workspace/meet/api/guides/meeting-spaces#identify-meeting-space).'
type: string
activeConference:
$ref: '#/components/schemas/ActiveConference'
description: Active conference, if it exists.
meetingUri:
type: string
description: Output only. URI used to join meetings consisting of `https://meet.google.com/` followed by the `meeting_code`. For example, `https://meet.google.com/abc-mnop-xyz`.
readOnly: true
phoneAccess:
description: Output only. All regional phone access methods for this meeting space. Can be empty.
items:
$ref: '#/components/schemas/PhoneAccess'
readOnly: true
type: array
RecordingConfig:
properties:
autoRecordingGeneration:
description: Defines whether a meeting space is automatically recorded when someone with the privilege to record joins the meeting.
type: string
enum:
- AUTO_GENERATION_TYPE_UNSPECIFIED
- 'ON'
- 'OFF'
description: Configuration related to recording in a meeting space.
type: object
ArtifactConfig:
properties:
recordingConfig:
$ref: '#/components/schemas/RecordingConfig'
description: Configuration for recording.
smartNotesConfig:
$ref: '#/components/schemas/SmartNotesConfig'
description: Configuration for auto-smart-notes.
transcriptionConfig:
$ref: '#/components/schemas/TranscriptionConfig'
description: Configuration for auto-transcript.
type: object
description: Configuration related to meeting artifacts potentially generated by this meeting space.
Empty:
description: 'A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); }'
type: object
properties: {}
GoogleRpcError:
type: object
description: The error envelope every Google API returns.
properties:
error:
type: object
properties:
code:
type: integer
message:
type: string
status:
type: string
details:
type: array
items:
type: object
ActiveConference:
properties:
conferenceRecord:
type: string
readOnly: true
description: 'Output only. Reference to ''ConferenceRecord'' resource. Format: `conferenceRecords/{conference_record}` where `{conference_record}` is a unique ID for each instance of a call within a space.'
description: Active conference.
type: object
Member:
type: object
description: Users who are configured to have a role in the space. These users can join the space without knocking.
properties:
name:
type: string
description: 'Identifier. Resource name of the member. Format: `spaces/{space}/members/{member}`'
role:
description: The meeting role assigned to the member.
type: string
enum:
- ROLE_UNSPECIFIED
- COHOST
email:
type: string
description: Email for the member. This is required for creating the member.
UpdateMemberRequest:
type: object
description: Request to update a member.
properties:
member:
$ref: '#/components/schemas/Member'
description: 'Required. The Member to update. Format: spaces/{space}/members/{member}'
updateMask:
type: string
format: google-fieldmask
description: Optional. Field mask used to specify the fields to be updated in the member. If update_mask isn't provided(not set, set with empty paths, or only has "" as paths), it defaults to update all fields provided with values in the request. Using "*" as update_mask will update all fields, including deleting fields not set in the request. In case of BatchUpdate, it must be absent or the same as the update_mask in BatchUpdateMembersRequest when UpdateMemberRequest is built as a child request of BatchUpdateMembersRequest.
GatewaySipAccess:
properties:
sipAccessCode:
description: The permanent numeric code for manual entry on specially configured devices.
type: string
uri:
description: 'The Session Initiation Protocol (SIP) URI the conference can be reached through. The string is in one of these formats: * "sip:USER_ID@GATEWAY_ADDRESS" * "sips:USER_ID@GATEWAY_ADDRESS" where USER_ID is the 13-digit universal pin (with the future option to support using a Meet meeting code as well), and GATEWAY_ADDRESS is a valid address to be resolved using a DNS SRV lookup, or a dotted quad.'
type: string
type: object
description: Details how to join the conference through a SIP gateway.
BatchUpdateMembersRequest:
type: object
description: Request to update members of one space within a batch.
properties:
requests:
type: array
description: Required. The request message specifying the resources to update. A maximum of 500 members can be modified in a batch.
items:
$ref: '#/components/schemas/UpdateMemberRequest'
updateMask:
description: 'Optional. Top-level field mask used to specify the fields to be updated in the member for all UpdateMemberRequests. There are 4 possible scenarios for top-level and child field mask: 1. top-level and child field mask is absent: All fields provided in the requests are updated, including deleting fields not set in the requests. 2. top-level field mask is present but child field mask is absent: The fields specified in the top-level field mask are updated. 3. top-level and child field mask is present: The child field mask must be the same as the top-level field mask. 4. top-level field mask is absent but child field mask is present: It isn''t supported and will return an error.'
format: google-fieldmask
type: string
securitySchemes:
apiKey:
type: apiKey
in: query
name: key
description: API key; accepted by methods that do not need user data.
oauth2:
type: oauth2
flows:
authorizationCode:
authorizationUrl: https://accounts.google.com/o/oauth2/auth
tokenUrl: https://oauth2.googleapis.com/token
scopes:
https://www.googleapis.com/auth/meetings.space.readonly: Read information about any of your Google Meet conferences
https://www.googleapis.com/auth/meetings.space.created: Create, edit, and see information about your Google Meet conferences created by the app.
https://www.googleapis.com/auth/meetings.space.settings: Edit, and see settings for all of your Google Meet calls.
externalDocs:
url: https://developers.google.com/workspace/meet/api
x-provenance:
method: harvested
publisher: Google
source: https://meet.googleapis.com/$discovery/rest?version=v2
note: converted by discovery-to-openapi.py from Google's Discovery document (revision 20261109)