A meeting space represents a virtual place or a persistent object (such as a meeting room) where conferences are held. A meeting space also helps users meet and find shared resources.
When you create a meeting space using the
spaces.create
method,
it returns an instance of a
spaces
resource. The resource
includes the
SpaceConfig
object
that's the configuration for the meeting space. It also contains the
ActiveConference
object that's a link to the current
conferenceRecords
resource within the meeting space. For more information on managing a meeting
space, see Create and manage meeting
spaces.
The following sections detail how to configure a meeting space using these objects and methods.
Set moderation and meeting access
You can set how users join a meeting, the moderation modes, the feature
restrictions, and the permissions users receive when they join a meeting, through
the SpaceConfig
object.
Access meeting spaces
To determine who can join a meeting space without knocking, set the accessType
field using the
AccessType
object.
You can choose from multiple settings on whether to automatically allow
attendees to join. The field defaults to the user's default access settings.
To define the entry points that can be used to join meetings hosted in a meeting
space, set the entryPointAccess
field using the
EntryPointAccess
object. Set to ALL
to allow all entry points or CREATOR_APP_ONLY
to scope
the entry points to only those owned by the Google Cloud project that created the
meeting space.
Generate attendance report
To create an attendance report for the meeting space, set the boolean
attendanceReportGenerationType
field using the
AttendanceReportGenerationType
object. If a report is requested, Google Meet saves the attendance report to
the meeting organizer's Google Drive and an email is also sent.
Moderate meeting spaces
To moderate a meeting, you can set the boolean moderation
field using the
Moderation
object.
When the moderation
mode is on
, the meeting organizer has control over the
meeting with features such as co-host management (see
spaces.members
)
and feature restrictions using the moderationRestrictions
field. For more
information on members, see Manage space members.
To define feature restrictions when the meeting is moderated (moderation
is
on
), set the moderationRestrictions
field using the
ModerationRestrictions
object. The restrictions define who has permission within the meeting space to
send chat messages or reactions, or to share their screen.
To set the feature restrictions on the moderationRestrictions
field, use the
RestrictionType
enum to apply the chatRestriction
, reactionRestriction
,
presentRestriction
. Set to HOSTS_ONLY
to apply the permissions to both the
meeting organizer and co-host, or NO_RESTRICTION
to apply to all participants.
To restrict the default role assigned to users as viewer, set the boolean
defaultJoinAsViewerType
field using the
DefaultJoinAsViewerType
enum. If defaultJoinAsViewerType
is on
, users join as viewers. If off
,
users join as contributors. Default is off
. If an explicit role is set for a
user in spaces.members
, the user joins as that role.
Manage auto artifacts
Meeting organizers, but not co-hosts, can pre-configure auto-recording, auto-transcripts, and "take notes for me" within the meeting space. When these settings are enabled, the meeting space is recorded, transcripts are generated, and meeting notes are captured and organized into Google Docs automatically. Each feature is independent and is set per meeting space. Recording captions are only available in English.
You can pre-configure the auto artifacts either when you create a meeting
space or once
the meeting space is created. This feature also lets you set up auto-artifacts
for meetings created from Google Calendar. Both methods require the
meetings.space.settings
OAuth scope. For more information, see OAuth scopes
for settings.
To set auto artifacts, use the
ArtifactConfig
object, under the
SpaceConfig
object. ArtifactConfig
is made up of the recordingConfig
,
transcriptionConfig
, and smartNotesConfig
fields.
Each field is mapped to a similar object such as
RecordingConfig
,
TranscriptionConfig
, and
SmartNotesConfig
. To set each object, use the
AutoGenerationType
boolean enum to toggle the config object on
or off
.
OAuth scopes for settings
Setting or accessing meetings settings requires the following OAuth scopes:
Use case | Scope code |
---|---|
Set auto artifact generation for spaces created by other apps. | https://www.googleapis.com/auth/meetings.space.settings |
Get or list artifacts from conferences created by other apps. | https://www.googleapis.com/auth/meetings.space.readonly |
Get or list other pre-meeting settings of a meeting space created by a third-party app. | https://www.googleapis.com/auth/meetings.space.created https://www.googleapis.com/auth/meetings.space.readonly |
Read and edit the settings for all meeting spaces a user can access through any other app, such as Calendar. | https://www.googleapis.com/auth/meetings.space.settings |
For more information on OAuth scopes, see Meet REST API scopes.
Manage space members
While meeting organizers can always enter the meeting without knocking, you can
also configure additional members to join the meeting without knocking.
Additionally, members can be configured to have a role in the meeting, such as
COHOST
which gives them the same abilities to manage the meeting as the
meeting organizer. For more information about accessing a meeting space without
knocking, see
AccessType
.
The
spaces.members
resource includes the name
, user
, and role
fields.
Note that a member is different from a
participant. A participant is a
person joined to a call or that uses Companion
mode, watching as a viewer, or
a room device connected to a call. There's one
conferenceRecords.participants
resource for each person.
You can manage space members using the following methods:
Each method takes a path parameter with the create and list methods using the
parent
field to denote the meeting space, and the delete and get methods using
the name
field to filter the results based on the meeting space and the member
name.
All methods, except delete, support the fields
parameter in
SystemParameterContext.
When the fields
parameter is omitted, the API response defaults to
"name,email,role,user"
.
The fields
parameter relies on a
FieldMask
for response filtering. A FieldMask is a way for API callers to list fields a
request should return. It's a comma-delimited list of fields to specify only
certain fields in an object are used while leaving the other fields unchanged.
Using a FieldMask allows the API to avoid unnecessary work and improves
performance. A field mask is used for create, get, and list methods. For more
information on field masks, see Google Sheets API's Use field
masks.