{"id":9778,"library":"google-apps-meet","title":"Google Apps Meet API Client Library","description":"The `google-apps-meet` library provides a Python client for interacting with the Google Meet API, enabling programmatic creation and management of Meet spaces. It is part of the larger `google-cloud-python` monorepo, currently at version 0.4.0, and receives frequent updates alongside other Google Cloud client libraries.","status":"active","version":"0.4.0","language":"en","source_language":"en","source_url":"https://github.com/googleapis/google-cloud-python/tree/main/packages/google-apps-meet","tags":["google-cloud","api-client","meet","video-conferencing","workspaces"],"install":[{"cmd":"pip install google-apps-meet","lang":"bash","label":"Install stable version"}],"dependencies":[],"imports":[{"note":"The Meet API is currently exposed via the 'v2beta' client for Spaces, not a generic 'meet' or 'v1' client.","wrong":"from google.apps.meet import MeetServiceClient","symbol":"SpacesServiceClient","correct":"from google.apps.meet_v2beta import SpacesServiceClient"},{"note":"Type hints and client methods often require importing specific type definitions from the 'types' submodule.","symbol":"Space","correct":"from google.apps.meet_v2beta.types import Space"}],"quickstart":{"code":"import os\nfrom google.apps.meet_v2beta import SpacesServiceClient\nfrom google.apps.meet_v2beta.types import Space\n\n# --- Authentication Setup ---\n# The client library automatically looks for credentials in the following order:\n# 1. The GOOGLE_APPLICATION_CREDENTIALS environment variable.\n# 2. Credentials from `gcloud auth application-default login`.\n# 3. Credentials from the Google Cloud SDK (e.g., from `gcloud auth login`).\n# For local development, set GOOGLE_APPLICATION_CREDENTIALS or use `gcloud auth application-default login`.\n# Example: export GOOGLE_APPLICATION_CREDENTIALS=\"/path/to/your/keyfile.json\"\n\n# Initialize the client\nclient = SpacesServiceClient()\n\n# Create a new Google Meet space\n# An empty Space object is often sufficient for creation, letting the API fill in defaults.\n# For advanced configuration, populate the Space object with a SpaceConfig.\nnew_space = Space()\n\ntry:\n    created_space = client.create_space(space=new_space)\n\n    print(f\"Successfully created Meet Space.\")\n    print(f\"Space Name: {created_space.name}\")\n    print(f\"Meeting URI: {created_space.meeting_uri}\")\n\nexcept Exception as e:\n    print(f\"An error occurred: {e}\")\n    if \"credentials\" in str(e) or \"Permission denied\" in str(e):\n        print(\"Hint: Check your authentication setup and IAM permissions (e.g., 'Google Meet Admin SDK' role).\")\n","lang":"python","description":"This quickstart demonstrates how to initialize the `SpacesServiceClient` and create a new Google Meet space using default settings. Ensure your environment is authenticated with Google Cloud credentials before running."},"warnings":[{"fix":"Ensure `GOOGLE_APPLICATION_CREDENTIALS` environment variable points to a service account key file, or run `gcloud auth application-default login` for user credentials. Verify the service account or user has the necessary 'Google Meet' API roles (e.g., Google Meet Admin SDK role) on the relevant project/resource.","message":"Authentication is mandatory for all Google Meet API calls. The client library defaults to using Application Default Credentials (ADC).","severity":"gotcha","affected_versions":"All versions"},{"fix":"Always import from `google.apps.meet_v2beta`, e.g., `from google.apps.meet_v2beta import SpacesServiceClient`.","message":"The primary client for Google Meet is currently `SpacesServiceClient` found under the `v2beta` API version. Other versions or a generic `MeetServiceClient` may not exist or function as expected.","severity":"gotcha","affected_versions":"All versions up to 0.4.0"},{"fix":"Refer to the Google Meet API documentation for the exact resource name format. A space name will typically be formatted as 'spaces/AAAA-BBBB-CCCC'.","message":"When making API calls that require a resource name (e.g., retrieving a specific space), ensure the name is in the correct format (`spaces/SPACE_ID`).","severity":"gotcha","affected_versions":"All versions"}],"env_vars":null,"last_verified":"2026-04-17T00:00:00.000Z","next_check":"2026-07-16T00:00:00.000Z","problems":[{"fix":"The correct import path for the client is `from google.apps.meet_v2beta import SpacesServiceClient`.","cause":"Attempting to import the client from an incorrect or non-existent package path.","error":"ImportError: cannot import name 'SpacesServiceClient' from 'google.apps.meet'"},{"fix":"Set the `GOOGLE_APPLICATION_CREDENTIALS` environment variable to your service account key file path or authenticate using `gcloud auth application-default login`.","cause":"The client library could not find valid Google Cloud credentials in the environment or could not infer them.","error":"google.auth.exceptions.DefaultCredentialsError: Could not automatically determine credentials."},{"fix":"Grant the required roles to your service account or user. For creating spaces, roles like 'Google Meet Admin SDK' or 'Owner' might be needed on the relevant project, or specific delegated permissions.","cause":"The authenticated principal (service account or user) lacks the necessary IAM permissions to perform the requested Meet API operation.","error":"403 Permission denied: The caller does not have permission"}]}