Create and manage meeting spaces

This guide explains how to create, get, and update a meeting space plus end an active conference on the spaces resource of the Google Meet REST API.

Create a meeting space

To create a meeting space, use the create method on the spaces resource.

The method returns an instance of a spaces resource, which 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.

The following code sample shows how to create a meeting space:

Java

java-meet/samples/snippets/generated/com/google/apps/meet/v2/spacesservice/createspace/AsyncCreateSpace.java
import com.google.api.core.ApiFuture; import com.google.apps.meet.v2.CreateSpaceRequest; import com.google.apps.meet.v2.Space; import com.google.apps.meet.v2.SpacesServiceClient; public class AsyncCreateSpace {  public static void main(String[] args) throws Exception {  asyncCreateSpace();  }  public static void asyncCreateSpace() throws Exception {  // This snippet has been automatically generated and should be regarded as a code template only.  // It will require modifications to work:  // - It may require correct/in-range values for request initialization.  // - It may require specifying regional endpoints when creating the service client as shown in  // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library  try (SpacesServiceClient spacesServiceClient = SpacesServiceClient.create()) {  CreateSpaceRequest request =  CreateSpaceRequest.newBuilder().setSpace(Space.newBuilder().build()).build();  ApiFuture<Space> future = spacesServiceClient.createSpaceCallable().futureCall(request);  // Do something.  Space response = future.get();  }  } }

Node.js

packages/google-apps-meet/samples/generated/v2/spaces_service.create_space.js
/**  * This snippet has been automatically generated and should be regarded as a code template only.  * It will require modifications to work.  * It may require correct/in-range values for request initialization.  * TODO(developer): Uncomment these variables before running the sample.  */ /**  * Space to be created. As of May 2023, the input space can be empty. Later on  * the input space can be non-empty when space configuration is introduced.  */ // const space = {} // Imports the Meet library const {SpacesServiceClient} = require('@google-apps/meet').v2; // Instantiates a client const meetClient = new SpacesServiceClient(); async function callCreateSpace() {  // Construct request  const request = {  };  // Run request  const response = await meetClient.createSpace(request);  console.log(response); } callCreateSpace();

Python

packages/google-apps-meet/samples/generated_samples/meet_v2_generated_spaces_service_create_space_async.py
# This snippet has been automatically generated and should be regarded as a # code template only. # It will require modifications to work: # - It may require correct/in-range values for request initialization. # - It may require specifying regional endpoints when creating the service # client as shown in: # https://googleapis.dev/python/google-api-core/latest/client_options.html from google.apps import meet_v2 async def sample_create_space(): # Create a client client = meet_v2.SpacesServiceAsyncClient() # Initialize request argument(s) request = meet_v2.CreateSpaceRequest( ) # Make the request response = await client.create_space(request=request) # Handle the response print(response)

Get details about a meeting space

To get details about an active meeting space and its settings, use the get method on the spaces resource with a specified name. For more information, see How Meet identifies a meeting space.

The method returns a meeting space as an instance of the spaces resource. To determine if an active conference exists, examine the activeConference field.

The following code sample shows how to retrieve a meeting space:

Java

java-meet/samples/snippets/generated/com/google/apps/meet/v2/spacesservice/getspace/AsyncGetSpace.java
import com.google.api.core.ApiFuture; import com.google.apps.meet.v2.GetSpaceRequest; import com.google.apps.meet.v2.Space; import com.google.apps.meet.v2.SpaceName; import com.google.apps.meet.v2.SpacesServiceClient; public class AsyncGetSpace {  public static void main(String[] args) throws Exception {  asyncGetSpace();  }  public static void asyncGetSpace() throws Exception {  // This snippet has been automatically generated and should be regarded as a code template only.  // It will require modifications to work:  // - It may require correct/in-range values for request initialization.  // - It may require specifying regional endpoints when creating the service client as shown in  // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library  try (SpacesServiceClient spacesServiceClient = SpacesServiceClient.create()) {  GetSpaceRequest request =  GetSpaceRequest.newBuilder().setName(SpaceName.of("[SPACE]").toString()).build();  ApiFuture<Space> future = spacesServiceClient.getSpaceCallable().futureCall(request);  // Do something.  Space response = future.get();  }  } }

Node.js

packages/google-apps-meet/samples/generated/v2/spaces_service.get_space.js
/**  * This snippet has been automatically generated and should be regarded as a code template only.  * It will require modifications to work.  * It may require correct/in-range values for request initialization.  * TODO(developer): Uncomment these variables before running the sample.  */ /**  * Required. Resource name of the space.  * Format: `spaces/{space}` or `spaces/{meetingCode}`.  * `{space}` is the resource identifier for the space. It's a unique,  * server-generated ID and is case sensitive. For example, `jQCFfuBOdN5z`.  * `{meetingCode}` is an alias for the space. It's a typeable, unique  * character string and is non-case sensitive. For example, `abc-mnop-xyz`.  * The maximum length is 128 characters.  * A `meetingCode` shouldn't be stored long term as it can become  * dissociated from a meeting space and can be reused for different meeting  * spaces in the future. Generally, a `meetingCode` expires 365 days after  * last use. For more information, see Learn about meeting codes in Google  * Meet (https://support.google.com/meet/answer/10710509).  * For more information, see How Meet identifies a meeting  * space (https://developers.google.com/meet/api/guides/meeting-spaces#identify-meeting-space).  */ // const name = 'abc123' // Imports the Meet library const {SpacesServiceClient} = require('@google-apps/meet').v2; // Instantiates a client const meetClient = new SpacesServiceClient(); async function callGetSpace() {  // Construct request  const request = {  name,  };  // Run request  const response = await meetClient.getSpace(request);  console.log(response); } callGetSpace();

Python

packages/google-apps-meet/samples/generated_samples/meet_v2_generated_spaces_service_get_space_async.py
# This snippet has been automatically generated and should be regarded as a # code template only. # It will require modifications to work: # - It may require correct/in-range values for request initialization. # - It may require specifying regional endpoints when creating the service # client as shown in: # https://googleapis.dev/python/google-api-core/latest/client_options.html from google.apps import meet_v2 async def sample_get_space(): # Create a client client = meet_v2.SpacesServiceAsyncClient() # Initialize request argument(s) request = meet_v2.GetSpaceRequest( name="name_value", ) # Make the request response = await client.get_space(request=request) # Handle the response print(response)

Replace the space name value with the unique server-generated ID for the meeting space.

Update a meeting space

To update the details of a meeting space, use the patch method on the spaces resource with a specified name. For more information, see How Meet identifies a meeting space.

The patch method also takes an optional updateMask query parameter. The field is of type FieldMask. This is a comma-delimited list of fields you want to update in the space.

The method returns a meeting space as an instance of the spaces resource.

The following code sample shows how to update a meeting space:

Java

java-meet/samples/snippets/generated/com/google/apps/meet/v2/spacesservice/updatespace/AsyncUpdateSpace.java
import com.google.api.core.ApiFuture; import com.google.apps.meet.v2.Space; import com.google.apps.meet.v2.SpacesServiceClient; import com.google.apps.meet.v2.UpdateSpaceRequest; import com.google.protobuf.FieldMask; public class AsyncUpdateSpace {  public static void main(String[] args) throws Exception {  asyncUpdateSpace();  }  public static void asyncUpdateSpace() throws Exception {  // This snippet has been automatically generated and should be regarded as a code template only.  // It will require modifications to work:  // - It may require correct/in-range values for request initialization.  // - It may require specifying regional endpoints when creating the service client as shown in  // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library  try (SpacesServiceClient spacesServiceClient = SpacesServiceClient.create()) {  UpdateSpaceRequest request =  UpdateSpaceRequest.newBuilder()  .setSpace(Space.newBuilder().build())  .setUpdateMask(FieldMask.newBuilder().build())  .build();  ApiFuture<Space> future = spacesServiceClient.updateSpaceCallable().futureCall(request);  // Do something.  Space response = future.get();  }  } }

Node.js

packages/google-apps-meet/samples/generated/v2/spaces_service.update_space.js
/**  * This snippet has been automatically generated and should be regarded as a code template only.  * It will require modifications to work.  * It may require correct/in-range values for request initialization.  * TODO(developer): Uncomment these variables before running the sample.  */ /**  * Required. Space to be updated.  */ // const space = {} /**  * 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.  */ // const updateMask = {} // Imports the Meet library const {SpacesServiceClient} = require('@google-apps/meet').v2; // Instantiates a client const meetClient = new SpacesServiceClient(); async function callUpdateSpace() {  // Construct request  const request = {  space,  };  // Run request  const response = await meetClient.updateSpace(request);  console.log(response); } callUpdateSpace();

Python

packages/google-apps-meet/samples/generated_samples/meet_v2_generated_spaces_service_update_space_async.py
# This snippet has been automatically generated and should be regarded as a # code template only. # It will require modifications to work: # - It may require correct/in-range values for request initialization. # - It may require specifying regional endpoints when creating the service # client as shown in: # https://googleapis.dev/python/google-api-core/latest/client_options.html from google.apps import meet_v2 async def sample_update_space(): # Create a client client = meet_v2.SpacesServiceAsyncClient() # Initialize request argument(s) request = meet_v2.UpdateSpaceRequest( ) # Make the request response = await client.update_space(request=request) # Handle the response print(response)

Replace the space name value with the unique server-generated ID for the meeting space.

End active conference

To end an active conference within a meeting space (if there's one), use the endActiveConference method on the spaces resource. Both the request and response body are empty. For more information, see How Meet identifies a meeting space.

The following code sample shows how to end an active conference:

Java

java-meet/samples/snippets/generated/com/google/apps/meet/v2/spacesservice/endactiveconference/AsyncEndActiveConference.java
import com.google.api.core.ApiFuture; import com.google.apps.meet.v2.EndActiveConferenceRequest; import com.google.apps.meet.v2.SpaceName; import com.google.apps.meet.v2.SpacesServiceClient; import com.google.protobuf.Empty; public class AsyncEndActiveConference {  public static void main(String[] args) throws Exception {  asyncEndActiveConference();  }  public static void asyncEndActiveConference() throws Exception {  // This snippet has been automatically generated and should be regarded as a code template only.  // It will require modifications to work:  // - It may require correct/in-range values for request initialization.  // - It may require specifying regional endpoints when creating the service client as shown in  // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library  try (SpacesServiceClient spacesServiceClient = SpacesServiceClient.create()) {  EndActiveConferenceRequest request =  EndActiveConferenceRequest.newBuilder()  .setName(SpaceName.of("[SPACE]").toString())  .build();  ApiFuture<Empty> future =  spacesServiceClient.endActiveConferenceCallable().futureCall(request);  // Do something.  future.get();  }  } }

Node.js

packages/google-apps-meet/samples/generated/v2/spaces_service.end_active_conference.js
/**  * This snippet has been automatically generated and should be regarded as a code template only.  * It will require modifications to work.  * It may require correct/in-range values for request initialization.  * TODO(developer): Uncomment these variables before running the sample.  */ /**  * Required. 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/meet/api/guides/meeting-spaces#identify-meeting-space).  */ // const name = 'abc123' // Imports the Meet library const {SpacesServiceClient} = require('@google-apps/meet').v2; // Instantiates a client const meetClient = new SpacesServiceClient(); async function callEndActiveConference() {  // Construct request  const request = {  name,  };  // Run request  const response = await meetClient.endActiveConference(request);  console.log(response); } callEndActiveConference();

Python

packages/google-apps-meet/samples/generated_samples/meet_v2_generated_spaces_service_end_active_conference_async.py
# This snippet has been automatically generated and should be regarded as a # code template only. # It will require modifications to work: # - It may require correct/in-range values for request initialization. # - It may require specifying regional endpoints when creating the service # client as shown in: # https://googleapis.dev/python/google-api-core/latest/client_options.html from google.apps import meet_v2 async def sample_end_active_conference(): # Create a client client = meet_v2.SpacesServiceAsyncClient() # Initialize request argument(s) request = meet_v2.EndActiveConferenceRequest( name="name_value", ) # Make the request await client.end_active_conference(request=request)

Replace the space name value with the unique server-generated ID for the meeting space.