CINXE.COM
Google Chat developer platform release notes | Google for Developers
<!doctype html> <html lang="en" dir="ltr"> <head> <meta name="google-signin-client-id" content="721724668570-nbkv1cfusk7kk4eni4pjvepaus73b13t.apps.googleusercontent.com"> <meta name="google-signin-scope" content="profile email https://www.googleapis.com/auth/developerprofiles https://www.googleapis.com/auth/developerprofiles.award"> <meta property="og:site_name" content="Google for Developers"> <meta property="og:type" content="website"><meta name="theme-color" content="#fff"><meta charset="utf-8"> <meta content="IE=Edge" http-equiv="X-UA-Compatible"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="manifest" href="/_pwa/developers/manifest.json" crossorigin="use-credentials"> <link rel="preconnect" href="//www.gstatic.com" crossorigin> <link rel="preconnect" href="//fonts.gstatic.com" crossorigin> <link rel="preconnect" href="//fonts.googleapis.com" crossorigin> <link rel="preconnect" href="//apis.google.com" crossorigin> <link rel="preconnect" href="//www.google-analytics.com" crossorigin><link rel="stylesheet" href="//fonts.googleapis.com/css?family=Google+Sans:400,500|Roboto:400,400italic,500,500italic,700,700italic|Roboto+Mono:400,500,700&display=swap"> <link rel="stylesheet" href="//fonts.googleapis.com/css2?family=Material+Icons&family=Material+Symbols+Outlined&display=block"><link rel="stylesheet" href="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/css/app.css"> <link rel="shortcut icon" href="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/images/favicon-new.png"> <link rel="apple-touch-icon" href="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/images/touchicon-180-new.png"><link rel="canonical" href="https://developers.google.com/workspace/chat/docs/release-notes"><link rel="search" type="application/opensearchdescription+xml" title="Google for Developers" href="https://developers.google.com/s/opensearch.xml"> <link rel="alternate" hreflang="en" href="https://developers.google.com/workspace/chat/docs/release-notes" /><link rel="alternate" hreflang="x-default" href="https://developers.google.com/workspace/chat/docs/release-notes" /><title>Google Chat developer platform release notes | Google for Developers</title> <meta property="og:title" content="Google Chat developer platform release notes | Google for Developers"><meta property="og:url" content="https://developers.google.com/workspace/chat/docs/release-notes"><meta property="og:image" content="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/images/opengraph/white.png"> <meta property="og:image:width" content="1200"> <meta property="og:image:height" content="675"><meta property="og:locale" content="en"><meta name="twitter:card" content="summary_large_image"><script type="application/ld+json"> { "@context": "https://schema.org", "@type": "Article", "headline": "Google Chat developer platform release notes" } </script><script type="application/ld+json"> { "@context": "https://schema.org", "@type": "BreadcrumbList", "itemListElement": [{ "@type": "ListItem", "position": 1, "name": "Google Workspace", "item": "https://developers.google.com/workspace" },{ "@type": "ListItem", "position": 2, "name": "Google Chat", "item": "https://developers.google.com/workspace/chat" },{ "@type": "ListItem", "position": 3, "name": "Google Chat developer platform release notes", "item": "https://developers.google.com/workspace/chat/docs/release-notes" }] } </script> <link rel="alternate" type="application/atom+xml" href="https://developers.google.com/feeds/chat-release-notes.xml"/> <meta name="gtm_var" data-key="docType" data-value="release-notes"> <link rel="stylesheet" href="/extras.css"></head> <body class="" template="page" theme="white" type="article" layout="docs" concierge='closed' display-toc pending> <devsite-progress type="indeterminate" id="app-progress"></devsite-progress> <section class="devsite-wrapper"> <devsite-cookie-notification-bar></devsite-cookie-notification-bar><devsite-header role="banner"> <div class="devsite-header--inner nocontent"> <div class="devsite-top-logo-row-wrapper-wrapper"> <div class="devsite-top-logo-row-wrapper"> <div class="devsite-top-logo-row"> <button type="button" id="devsite-hamburger-menu" class="devsite-header-icon-button button-flat material-icons gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Navigation menu button" visually-hidden aria-label="Open menu"> </button> <div class="devsite-product-name-wrapper"> <a href="https://developers.google.com/workspace"> <div class="devsite-product-logo-container" size="medium" > <picture> <img class="devsite-product-logo" alt="Google Workspace" src="https://fonts.gstatic.com/s/i/productlogos/googleg/v6/16px.svg" srcset=" https://fonts.gstatic.com/s/i/productlogos/googleg/v6/16px.svg" sizes="64px" loading="lazy" > </picture> </div> </a> <span class="devsite-product-name"> <ul class="devsite-breadcrumb-list" > <li class="devsite-breadcrumb-item devsite-has-google-wordmark"> <a href="https://developers.google.com/workspace" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Upper Header" data-value="1" track-type="globalNav" track-name="breadcrumb" track-metadata-position="1" track-metadata-eventdetail="Google Workspace" > <svg class="devsite-google-wordmark" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 148 48"> <title>Google</title> <path class="devsite-google-wordmark-svg-path" d="M19.58,37.65c-9.87,0-18.17-8.04-18.17-17.91c0-9.87,8.3-17.91,18.17-17.91c5.46,0,9.35,2.14,12.27,4.94l-3.45,3.45c-2.1-1.97-4.93-3.49-8.82-3.49c-7.21,0-12.84,5.81-12.84,13.02c0,7.21,5.64,13.02,12.84,13.02c4.67,0,7.34-1.88,9.04-3.58c1.4-1.4,2.32-3.41,2.66-6.16H19.58v-4.89h16.47c0.18,0.87,0.26,1.92,0.26,3.06c0,3.67-1.01,8.21-4.24,11.44C28.93,35.9,24.91,37.65,19.58,37.65z M61.78,26.12c0,6.64-5.1,11.53-11.36,11.53s-11.36-4.89-11.36-11.53c0-6.68,5.1-11.53,11.36-11.53S61.78,19.43,61.78,26.12z M56.8,26.12c0-4.15-2.96-6.99-6.39-6.99c-3.43,0-6.39,2.84-6.39,6.99c0,4.11,2.96,6.99,6.39,6.99C53.84,33.11,56.8,30.22,56.8,26.12z M87.25,26.12c0,6.64-5.1,11.53-11.36,11.53c-6.26,0-11.36-4.89-11.36-11.53c0-6.68,5.1-11.53,11.36-11.53C82.15,14.59,87.25,19.43,87.25,26.12zM82.28,26.12c0-4.15-2.96-6.99-6.39-6.99c-3.43,0-6.39,2.84-6.39,6.99c0,4.11,2.96,6.99,6.39,6.99C79.32,33.11,82.28,30.22,82.28,26.12z M112.09,15.29v20.7c0,8.52-5.02,12.01-10.96,12.01c-5.59,0-8.95-3.76-10.22-6.81l4.41-1.83c0.79,1.88,2.71,4.1,5.81,4.1c3.8,0,6.16-2.36,6.16-6.77v-1.66h-0.18c-1.14,1.4-3.32,2.62-6.07,2.62c-5.76,0-11.05-5.02-11.05-11.49c0-6.51,5.28-11.57,11.05-11.57c2.75,0,4.93,1.22,6.07,2.58h0.18v-1.88H112.09z M107.64,26.16c0-4.06-2.71-7.03-6.16-7.03c-3.49,0-6.42,2.97-6.42,7.03c0,4.02,2.93,6.94,6.42,6.94C104.93,33.11,107.64,30.18,107.64,26.16z M120.97,3.06v33.89h-5.07V3.06H120.97z M140.89,29.92l3.93,2.62c-1.27,1.88-4.32,5.11-9.61,5.11c-6.55,0-11.28-5.07-11.28-11.53c0-6.86,4.77-11.53,10.71-11.53c5.98,0,8.91,4.76,9.87,7.34l0.52,1.31l-15.42,6.38c1.18,2.31,3.01,3.49,5.59,3.49C137.79,33.11,139.58,31.84,140.89,29.92zM128.79,25.77l10.31-4.28c-0.57-1.44-2.27-2.45-4.28-2.45C132.24,19.04,128.66,21.31,128.79,25.77z"/> </svg>Workspace </a> </li> </ul> </span> </div> <div class="devsite-top-logo-row-middle"> <div class="devsite-header-upper-tabs"> <devsite-tabs class="upper-tabs"> <nav class="devsite-tabs-wrapper" aria-label="Upper tabs"> <tab > <a href="https://developers.google.com/workspace" track-metadata-eventdetail="https://developers.google.com/workspace" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - home" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Home" track-name="home" > Home </a> </tab> <tab class="devsite-active"> <a href="https://developers.google.com/workspace/chat" track-metadata-eventdetail="https://developers.google.com/workspace/chat" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - google chat" track-metadata-module="primary nav" aria-label="Google Chat, selected" data-category="Site-Wide Custom Events" data-label="Tab: Google Chat" track-name="google chat" > Google Chat </a> </tab> <tab class="devsite-dropdown "> <a href="https://developers.google.com/workspace/products-menu" track-metadata-eventdetail="https://developers.google.com/workspace/products-menu" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - all products" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: All products" track-name="all products" > All products </a> <a href="#" role="button" aria-haspopup="true" aria-expanded="false" aria-label="Dropdown menu for All products" track-type="nav" track-metadata-eventdetail="https://developers.google.com/workspace/products-menu" track-metadata-position="nav - all products" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: All products" track-name="all products" class="devsite-tabs-dropdown-toggle devsite-icon devsite-icon-arrow-drop-down"></a> <div class="devsite-tabs-dropdown" aria-label="submenu" hidden> <div class="devsite-tabs-dropdown-content"> <div class="devsite-tabs-dropdown-column "> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-title" role="heading" tooltip>Google Workspace apps</li> <li class="devsite-nav-item"> <a href="https://developers.google.com/admin-sdk" track-type="nav" track-metadata-eventdetail="https://developers.google.com/admin-sdk" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline="google workspace apps" tooltip data-category="Workspace top menu navigation" data-label="Tab menu: All products - Admin console" > <div class="devsite-nav-item-title"> Admin console </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/cloud-search" track-type="nav" track-metadata-eventdetail="https://developers.google.com/cloud-search" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline="google workspace apps" tooltip data-category="Workspace top menu navigation" data-label="Tab menu: All products - Cloud Search" > <div class="devsite-nav-item-title"> Cloud Search </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/gmail" track-type="nav" track-metadata-eventdetail="https://developers.google.com/gmail" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline="google workspace apps" tooltip data-label="Tab menu: All products - Gmail" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> Gmail </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/calendar" track-type="nav" track-metadata-eventdetail="https://developers.google.com/calendar" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline="google workspace apps" tooltip data-category="Workspace top menu navigation" data-label="Tab menu: All products - Google Calendar" > <div class="devsite-nav-item-title"> Google Calendar </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/workspace/chat" track-type="nav" track-metadata-eventdetail="https://developers.google.com/workspace/chat" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline="google workspace apps" tooltip data-label="Tab menu: All products - Google Chat" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> Google Chat </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/classroom" track-type="nav" track-metadata-eventdetail="https://developers.google.com/classroom" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline="google workspace apps" tooltip data-label="Tab menu: All products - Google Classroom" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> Google Classroom </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/docs" track-type="nav" track-metadata-eventdetail="https://developers.google.com/docs" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline="google workspace apps" tooltip data-label="Tab menu: All products - Google Docs" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> Google Docs </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/drive" track-type="nav" track-metadata-eventdetail="https://developers.google.com/drive" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline="google workspace apps" tooltip data-label="Tab menu: All products - Google Drive" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> Google Drive </div> </a> </li> </ul> </div> <div class="devsite-tabs-dropdown-column "> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-title" role="heading" tooltip> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/forms" track-type="nav" track-metadata-eventdetail="https://developers.google.com/forms" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline=" " tooltip data-category="Workspace top menu navigation" data-label="Tab menu: All products - Google Forms" > <div class="devsite-nav-item-title"> Google Forms </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/keep" track-type="nav" track-metadata-eventdetail="https://developers.google.com/keep" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline=" " tooltip data-label="Tab menu: All products - Google Keep" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> Google Keep </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/meet" track-type="nav" track-metadata-eventdetail="https://developers.google.com/meet" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline=" " tooltip data-label="Tab menu: All products - Google Meet" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> Google Meet </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/sheets" track-type="nav" track-metadata-eventdetail="https://developers.google.com/sheets" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline=" " tooltip data-category="Workspace top menu navigation" data-label="Tab menu: All products - Google Sheets" > <div class="devsite-nav-item-title"> Google Sheets </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/workspace/sites" track-type="nav" track-metadata-eventdetail="https://developers.google.com/workspace/sites" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline=" " tooltip data-label="Tab menu: All products - Google Sites" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> Google Sites </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/slides" track-type="nav" track-metadata-eventdetail="https://developers.google.com/slides" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline=" " tooltip data-category="Workspace top menu navigation" data-label="Tab menu: All products - Google Slides" > <div class="devsite-nav-item-title"> Google Slides </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/tasks" track-type="nav" track-metadata-eventdetail="https://developers.google.com/tasks" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline=" " tooltip data-label="Tab menu: All products - Google Tasks" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> Google Tasks </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/vault" track-type="nav" track-metadata-eventdetail="https://developers.google.com/vault" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline=" " tooltip data-label="Tab menu: All products - Google Vault" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> Google Vault </div> </a> </li> </ul> </div> <div class="devsite-tabs-dropdown-column "> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-title" role="heading" tooltip>Extend, automate & share</li> <li class="devsite-nav-item"> <a href="https://developers.google.com/workspace/add-ons" track-type="nav" track-metadata-eventdetail="https://developers.google.com/workspace/add-ons" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline="extend, automate & share" tooltip data-category="Workspace top menu navigation" data-label="Tab menu: All products - Add-ons" > <div class="devsite-nav-item-title"> Add-ons </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/apps-script" track-type="nav" track-metadata-eventdetail="https://developers.google.com/apps-script" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline="extend, automate & share" tooltip data-label="Tab menu: All products - Apps Script" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> Apps Script </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/workspace/chat/overview" track-type="nav" track-metadata-eventdetail="https://developers.google.com/workspace/chat/overview" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline="extend, automate & share" tooltip data-label="Tab menu: All products - Chat apps" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> Chat apps </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/drive/api/guides/about-apps" track-type="nav" track-metadata-eventdetail="https://developers.google.com/drive/api/guides/about-apps" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline="extend, automate & share" tooltip data-category="Workspace top menu navigation" data-label="Tab menu: All products - Drive apps" > <div class="devsite-nav-item-title"> Drive apps </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/workspace/marketplace" track-type="nav" track-metadata-eventdetail="https://developers.google.com/workspace/marketplace" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline="extend, automate & share" tooltip data-label="Tab menu: All products - Marketplace" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> Marketplace </div> </a> </li> </ul> </div> </div> </div> </tab> <tab class="devsite-dropdown "> <a href="https://developers.google.com/workspace/resources-menu" track-metadata-eventdetail="https://developers.google.com/workspace/resources-menu" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - resources" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Resources" track-name="resources" > Resources </a> <a href="#" role="button" aria-haspopup="true" aria-expanded="false" aria-label="Dropdown menu for Resources" track-type="nav" track-metadata-eventdetail="https://developers.google.com/workspace/resources-menu" track-metadata-position="nav - resources" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Resources" track-name="resources" class="devsite-tabs-dropdown-toggle devsite-icon devsite-icon-arrow-drop-down"></a> <div class="devsite-tabs-dropdown" aria-label="submenu" hidden> <div class="devsite-tabs-dropdown-content"> <div class="devsite-tabs-dropdown-column "> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-title" role="heading" tooltip>Tools</li> <li class="devsite-nav-item"> <a href="https://admin.google.com/" track-type="nav" track-metadata-eventdetail="https://admin.google.com/" track-metadata-position="nav - resources" track-metadata-module="tertiary nav" track-metadata-module_headline="tools" tooltip data-category="Workspace top menu navigation" data-label="Tab menu: Resources - Admin console" target="admin-console" > <div class="devsite-nav-item-title"> Admin console </div> </a> </li> <li class="devsite-nav-item"> <a href="https://script.google.com/" track-type="nav" track-metadata-eventdetail="https://script.google.com/" track-metadata-position="nav - resources" track-metadata-module="tertiary nav" track-metadata-module_headline="tools" tooltip data-label="Tab menu: Resources - Apps Script dashboard" target="_blank" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> Apps Script dashboard </div> </a> </li> <li class="devsite-nav-item"> <a href="https://console.cloud.google.com/workspace-api" track-type="nav" track-metadata-eventdetail="https://console.cloud.google.com/workspace-api" track-metadata-position="nav - resources" track-metadata-module="tertiary nav" track-metadata-module_headline="tools" tooltip data-category="Workspace top menu navigation" data-label="Tab menu: Resources - Google Cloud console" target="console" > <div class="devsite-nav-item-title"> Google Cloud console </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/workspace/explore" track-type="nav" track-metadata-eventdetail="https://developers.google.com/workspace/explore" track-metadata-position="nav - resources" track-metadata-module="tertiary nav" track-metadata-module_headline="tools" tooltip data-label="Tab menu: Resources - APIs Explorer" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> APIs Explorer </div> </a> </li> <li class="devsite-nav-item"> <a href="https://addons.gsuite.google.com/uikit/builder" track-type="nav" track-metadata-eventdetail="https://addons.gsuite.google.com/uikit/builder" track-metadata-position="nav - resources" track-metadata-module="tertiary nav" track-metadata-module_headline="tools" tooltip data-label="Tab menu: Resources - Card Builder" target="_blank" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> Card Builder </div> </a> </li> </ul> </div> <div class="devsite-tabs-dropdown-column "> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-title" role="heading" tooltip>Training & support</li> <li class="devsite-nav-item"> <a href="https://developers.google.com/workspace/guides/get-started" track-type="nav" track-metadata-eventdetail="https://developers.google.com/workspace/guides/get-started" track-metadata-position="nav - resources" track-metadata-module="tertiary nav" track-metadata-module_headline="training & support" tooltip data-label="Tab menu: Resources - How to get started" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> How to get started </div> </a> </li> <li class="devsite-nav-item"> <a href="https://codelabs.developers.google.com/?product=googleworkspace" track-type="nav" track-metadata-eventdetail="https://codelabs.developers.google.com/?product=googleworkspace" track-metadata-position="nav - resources" track-metadata-module="tertiary nav" track-metadata-module_headline="training & support" tooltip target="_blank" data-category="Workspace top menu navigation" data-label="Tab menu: Resources - Codelabs" > <div class="devsite-nav-item-title"> Codelabs </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/workspace/support" track-type="nav" track-metadata-eventdetail="https://developers.google.com/workspace/support" track-metadata-position="nav - resources" track-metadata-module="tertiary nav" track-metadata-module_headline="training & support" tooltip data-label="Tab menu: Resources - Developer support" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> Developer support </div> </a> </li> </ul> </div> <div class="devsite-tabs-dropdown-column "> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-title" role="heading" tooltip>Updates</li> <li class="devsite-nav-item"> <a href="https://developers.googleblog.com/search/?query=Google+Workspace" track-type="nav" track-metadata-eventdetail="https://developers.googleblog.com/search/?query=Google+Workspace" track-metadata-position="nav - resources" track-metadata-module="tertiary nav" track-metadata-module_headline="updates" tooltip target="_blank" data-label="Tab menu: Resources - Blog" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> Blog </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/workspace/preview" track-type="nav" track-metadata-eventdetail="https://developers.google.com/workspace/preview" track-metadata-position="nav - resources" track-metadata-module="tertiary nav" track-metadata-module_headline="updates" tooltip data-label="Tab menu: Resources - Developer previews" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> Developer Previews </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/workspace/newsletters" track-type="nav" track-metadata-eventdetail="https://developers.google.com/workspace/newsletters" track-metadata-position="nav - resources" track-metadata-module="tertiary nav" track-metadata-module_headline="updates" tooltip data-category="Workspace top menu navigation" data-label="Tab menu: Resources - Newsletter" > <div class="devsite-nav-item-title"> Newsletter </div> </a> </li> <li class="devsite-nav-item"> <a href="https://twitter.com/workspacedevs" track-type="nav" track-metadata-eventdetail="https://twitter.com/workspacedevs" track-metadata-position="nav - resources" track-metadata-module="tertiary nav" track-metadata-module_headline="updates" tooltip data-category="Workspace top menu navigation" data-label="Tab menu: Resources - X (Twitter)" target="_blank" > <div class="devsite-nav-item-title"> X (Twitter) </div> </a> </li> <li class="devsite-nav-item"> <a href="https://www.youtube.com/channel/UCUcg6az6etU_gRtZVAhBXaw" track-type="nav" track-metadata-eventdetail="https://www.youtube.com/channel/UCUcg6az6etU_gRtZVAhBXaw" track-metadata-position="nav - resources" track-metadata-module="tertiary nav" track-metadata-module_headline="updates" tooltip data-label="Tab menu: Resources - YouTube" data-category="Workspace top menu navigation" target="_blank" > <div class="devsite-nav-item-title"> YouTube </div> </a> </li> </ul> </div> </div> </div> </tab> </nav> </devsite-tabs> </div> <devsite-search enable-signin enable-search enable-suggestions enable-query-completion project-name="Google Chat" tenant-name="Google for Developers" project-scope="/workspace/chat" url-scoped="https://developers.google.com/s/results/workspace/chat" > <form class="devsite-search-form" action="https://developers.google.com/s/results" method="GET"> <div class="devsite-search-container"> <button type="button" search-open class="devsite-search-button devsite-header-icon-button button-flat material-icons" aria-label="Open search"></button> <div class="devsite-searchbox"> <input aria-activedescendant="" aria-autocomplete="list" aria-label="Search" aria-expanded="false" aria-haspopup="listbox" autocomplete="off" class="devsite-search-field devsite-search-query" name="q" placeholder="Search" role="combobox" type="text" value="" > <div class="devsite-search-image material-icons" aria-hidden="true"> </div> <div class="devsite-search-shortcut-icon-container" aria-hidden="true"> <kbd class="devsite-search-shortcut-icon">/</kbd> </div> </div> </div> </form> <button type="button" search-close class="devsite-search-button devsite-header-icon-button button-flat material-icons" aria-label="Close search"></button> </devsite-search> </div> <devsite-language-selector> <ul role="presentation"> <li role="presentation"> <a role="menuitem" lang="en" >English</a> </li> <li role="presentation"> <a role="menuitem" lang="de" >Deutsch</a> </li> <li role="presentation"> <a role="menuitem" lang="es" >Español</a> </li> <li role="presentation"> <a role="menuitem" lang="fr" >Français</a> </li> <li role="presentation"> <a role="menuitem" lang="id" >Indonesia</a> </li> <li role="presentation"> <a role="menuitem" lang="pt_br" >Português – Brasil</a> </li> <li role="presentation"> <a role="menuitem" lang="ru" >Русский</a> </li> <li role="presentation"> <a role="menuitem" lang="zh_cn" >中文 – 简体</a> </li> <li role="presentation"> <a role="menuitem" lang="ja" >日本語</a> </li> <li role="presentation"> <a role="menuitem" lang="ko" >한국어</a> </li> </ul> </devsite-language-selector> <devsite-user enable-profiles fp-auth id="devsite-user"> <span class="button devsite-top-button" aria-hidden="true" visually-hidden>Sign in</span> </devsite-user> </div> </div> </div> <div class="devsite-collapsible-section "> <div class="devsite-header-background"> <div class="devsite-product-id-row" > <div class="devsite-product-description-row"> <ul class="devsite-breadcrumb-list" > <li class="devsite-breadcrumb-item "> <a href="https://developers.google.com/workspace/chat" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Lower Header" data-value="1" track-type="globalNav" track-name="breadcrumb" track-metadata-position="1" track-metadata-eventdetail="Google Chat" > Google Chat </a> </li> </ul> </div> </div> <div class="devsite-doc-set-nav-row"> <devsite-tabs class="lower-tabs"> <nav class="devsite-tabs-wrapper" aria-label="Lower tabs"> <tab > <a href="https://developers.google.com/workspace/chat" track-metadata-eventdetail="https://developers.google.com/workspace/chat" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - overview" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Overview" track-name="overview" > Overview </a> </tab> <tab > <a href="https://developers.google.com/workspace/chat/overview" track-metadata-eventdetail="https://developers.google.com/workspace/chat/overview" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - guides" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Guides" track-name="guides" > Guides </a> </tab> <tab > <a href="https://developers.google.com/workspace/chat/api/reference" track-metadata-eventdetail="https://developers.google.com/workspace/chat/api/reference" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - reference" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Reference" track-name="reference" > Reference </a> </tab> <tab > <a href="https://developers.google.com/workspace/chat/samples" track-metadata-eventdetail="https://developers.google.com/workspace/chat/samples" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - samples" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Samples" track-name="samples" > Samples </a> </tab> <tab class="devsite-active"> <a href="https://developers.google.com/workspace/chat/support" track-metadata-eventdetail="https://developers.google.com/workspace/chat/support" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - support" track-metadata-module="primary nav" aria-label="Support, selected" data-category="Site-Wide Custom Events" data-label="Tab: Support" track-name="support" > Support </a> </tab> <tab > <a href="https://addons.gsuite.google.com/uikit/builder" track-metadata-eventdetail="https://addons.gsuite.google.com/uikit/builder" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - card builder" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Card builder" track-name="card builder" > Card builder </a> </tab> </nav> </devsite-tabs> </div> </div> </div> </div> </devsite-header> <devsite-book-nav scrollbars > <div class="devsite-book-nav-filter" > <span class="filter-list-icon material-icons" aria-hidden="true"></span> <input type="text" placeholder="Filter" aria-label="Type to filter" role="searchbox"> <span class="filter-clear-button hidden" data-title="Clear filter" aria-label="Clear filter" role="button" tabindex="0"></span> </div> <nav class="devsite-book-nav devsite-nav nocontent" aria-label="Side menu"> <div class="devsite-mobile-header"> <button type="button" id="devsite-close-nav" class="devsite-header-icon-button button-flat material-icons gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Close navigation" aria-label="Close navigation"> </button> <div class="devsite-product-name-wrapper"> <a href="https://developers.google.com/workspace"> <div class="devsite-product-logo-container" size="medium" > <picture> <img class="devsite-product-logo" alt="Google Workspace" src="https://fonts.gstatic.com/s/i/productlogos/googleg/v6/16px.svg" srcset=" https://fonts.gstatic.com/s/i/productlogos/googleg/v6/16px.svg" sizes="64px" loading="lazy" > </picture> </div> </a> <span class="devsite-product-name"> <ul class="devsite-breadcrumb-list" > <li class="devsite-breadcrumb-item devsite-has-google-wordmark"> <a href="https://developers.google.com/workspace" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Upper Header" data-value="1" track-type="globalNav" track-name="breadcrumb" track-metadata-position="1" track-metadata-eventdetail="Google Workspace" > <svg class="devsite-google-wordmark" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 148 48"> <title>Google</title> <path class="devsite-google-wordmark-svg-path" d="M19.58,37.65c-9.87,0-18.17-8.04-18.17-17.91c0-9.87,8.3-17.91,18.17-17.91c5.46,0,9.35,2.14,12.27,4.94l-3.45,3.45c-2.1-1.97-4.93-3.49-8.82-3.49c-7.21,0-12.84,5.81-12.84,13.02c0,7.21,5.64,13.02,12.84,13.02c4.67,0,7.34-1.88,9.04-3.58c1.4-1.4,2.32-3.41,2.66-6.16H19.58v-4.89h16.47c0.18,0.87,0.26,1.92,0.26,3.06c0,3.67-1.01,8.21-4.24,11.44C28.93,35.9,24.91,37.65,19.58,37.65z M61.78,26.12c0,6.64-5.1,11.53-11.36,11.53s-11.36-4.89-11.36-11.53c0-6.68,5.1-11.53,11.36-11.53S61.78,19.43,61.78,26.12z M56.8,26.12c0-4.15-2.96-6.99-6.39-6.99c-3.43,0-6.39,2.84-6.39,6.99c0,4.11,2.96,6.99,6.39,6.99C53.84,33.11,56.8,30.22,56.8,26.12z M87.25,26.12c0,6.64-5.1,11.53-11.36,11.53c-6.26,0-11.36-4.89-11.36-11.53c0-6.68,5.1-11.53,11.36-11.53C82.15,14.59,87.25,19.43,87.25,26.12zM82.28,26.12c0-4.15-2.96-6.99-6.39-6.99c-3.43,0-6.39,2.84-6.39,6.99c0,4.11,2.96,6.99,6.39,6.99C79.32,33.11,82.28,30.22,82.28,26.12z M112.09,15.29v20.7c0,8.52-5.02,12.01-10.96,12.01c-5.59,0-8.95-3.76-10.22-6.81l4.41-1.83c0.79,1.88,2.71,4.1,5.81,4.1c3.8,0,6.16-2.36,6.16-6.77v-1.66h-0.18c-1.14,1.4-3.32,2.62-6.07,2.62c-5.76,0-11.05-5.02-11.05-11.49c0-6.51,5.28-11.57,11.05-11.57c2.75,0,4.93,1.22,6.07,2.58h0.18v-1.88H112.09z M107.64,26.16c0-4.06-2.71-7.03-6.16-7.03c-3.49,0-6.42,2.97-6.42,7.03c0,4.02,2.93,6.94,6.42,6.94C104.93,33.11,107.64,30.18,107.64,26.16z M120.97,3.06v33.89h-5.07V3.06H120.97z M140.89,29.92l3.93,2.62c-1.27,1.88-4.32,5.11-9.61,5.11c-6.55,0-11.28-5.07-11.28-11.53c0-6.86,4.77-11.53,10.71-11.53c5.98,0,8.91,4.76,9.87,7.34l0.52,1.31l-15.42,6.38c1.18,2.31,3.01,3.49,5.59,3.49C137.79,33.11,139.58,31.84,140.89,29.92zM128.79,25.77l10.31-4.28c-0.57-1.44-2.27-2.45-4.28-2.45C132.24,19.04,128.66,21.31,128.79,25.77z"/> </svg>Workspace </a> </li> </ul> </span> </div> </div> <div class="devsite-book-nav-wrapper"> <div class="devsite-mobile-nav-top"> <ul class="devsite-nav-list"> <li class="devsite-nav-item"> <a href="/workspace" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: Home" track-name="home" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Home" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Home </span> </a> </li> <li class="devsite-nav-item"> <a href="/workspace/chat" class="devsite-nav-title gc-analytics-event devsite-nav-active" data-category="Site-Wide Custom Events" data-label="Tab: Google Chat" track-name="google chat" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Chat" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Google Chat </span> </a> <ul class="devsite-nav-responsive-tabs"> <li class="devsite-nav-item"> <a href="/workspace/chat" class="devsite-nav-title gc-analytics-event devsite-nav-has-children " data-category="Site-Wide Custom Events" data-label="Tab: Overview" track-name="overview" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Overview" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Overview </span> <span class="devsite-nav-icon material-icons" data-icon="forward" > </span> </a> </li> <li class="devsite-nav-item"> <a href="/workspace/chat/overview" class="devsite-nav-title gc-analytics-event devsite-nav-has-children " data-category="Site-Wide Custom Events" data-label="Tab: Guides" track-name="guides" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Guides" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Guides </span> <span class="devsite-nav-icon material-icons" data-icon="forward" > </span> </a> </li> <li class="devsite-nav-item"> <a href="/workspace/chat/api/reference" class="devsite-nav-title gc-analytics-event devsite-nav-has-children " data-category="Site-Wide Custom Events" data-label="Tab: Reference" track-name="reference" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Reference" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Reference </span> <span class="devsite-nav-icon material-icons" data-icon="forward" > </span> </a> </li> <li class="devsite-nav-item"> <a href="/workspace/chat/samples" class="devsite-nav-title gc-analytics-event devsite-nav-has-children " data-category="Site-Wide Custom Events" data-label="Tab: Samples" track-name="samples" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Samples" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Samples </span> <span class="devsite-nav-icon material-icons" data-icon="forward" > </span> </a> </li> <li class="devsite-nav-item"> <a href="/workspace/chat/support" class="devsite-nav-title gc-analytics-event devsite-nav-has-children devsite-nav-active" data-category="Site-Wide Custom Events" data-label="Tab: Support" track-name="support" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Support" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip menu="_book"> Support </span> <span class="devsite-nav-icon material-icons" data-icon="forward" menu="_book"> </span> </a> </li> <li class="devsite-nav-item"> <a href="https://addons.gsuite.google.com/uikit/builder" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: Card builder" track-name="card builder" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Card builder" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Card builder </span> </a> </li> </ul> </li> <li class="devsite-nav-item"> <a href="/workspace/products-menu" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: All products" track-name="all products" data-category="Site-Wide Custom Events" data-label="Responsive Tab: All products" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > All products </span> </a> <ul class="devsite-nav-responsive-tabs devsite-nav-has-menu "> <li class="devsite-nav-item"> <span class="devsite-nav-title" tooltip data-category="Site-Wide Custom Events" data-label="Tab: All products" track-name="all products" > <span class="devsite-nav-text" tooltip menu="All products"> More </span> <span class="devsite-nav-icon material-icons" data-icon="forward" menu="All products"> </span> </span> </li> </ul> </li> <li class="devsite-nav-item"> <a href="/workspace/resources-menu" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: Resources" track-name="resources" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Resources" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Resources </span> </a> <ul class="devsite-nav-responsive-tabs devsite-nav-has-menu "> <li class="devsite-nav-item"> <span class="devsite-nav-title" tooltip data-category="Site-Wide Custom Events" data-label="Tab: Resources" track-name="resources" > <span class="devsite-nav-text" tooltip menu="Resources"> More </span> <span class="devsite-nav-icon material-icons" data-icon="forward" menu="Resources"> </span> </span> </li> </ul> </li> </ul> </div> <div class="devsite-mobile-nav-bottom"> <ul class="devsite-nav-list" menu="_book"> <li class="devsite-nav-item"><a href="/workspace/chat/support" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /workspace/chat/support" track-type="bookNav" track-name="click" track-metadata-eventdetail="/workspace/chat/support" ><span class="devsite-nav-text" tooltip>How to get help</span></a></li> <li class="devsite-nav-item devsite-nav-external"><a href="https://stackoverflow.com/questions/tagged/hangouts-chat" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: https://stackoverflow.com/questions/tagged/hangouts-chat" track-type="bookNav" track-name="click" track-metadata-eventdetail="https://stackoverflow.com/questions/tagged/hangouts-chat" target="_blank"><span class="devsite-nav-text" tooltip>Stack Overflow</span><span class="devsite-nav-icon material-icons" data-icon="external" data-title="External" aria-hidden="true"></span></a></li> <li class="devsite-nav-item devsite-nav-external"><a href="https://issuetracker.google.com/issues?q=componentid:350158%2B" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: https://issuetracker.google.com/issues?q=componentid:350158%2B" track-type="bookNav" track-name="click" track-metadata-eventdetail="https://issuetracker.google.com/issues?q=componentid:350158%2B" target="_blank"><span class="devsite-nav-text" tooltip>Issue Tracker</span><span class="devsite-nav-icon material-icons" data-icon="external" data-title="External" aria-hidden="true"></span></a></li> <li class="devsite-nav-item devsite-nav-external"><a href="/workspace/terms" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /workspace/terms" track-type="bookNav" track-name="click" track-metadata-eventdetail="/workspace/terms" target="_blank"><span class="devsite-nav-text" tooltip>Terms of Service</span><span class="devsite-nav-icon material-icons" data-icon="external" data-title="External" aria-hidden="true"></span></a></li> <li class="devsite-nav-item devsite-nav-external"><a href="/workspace/workspace-api-user-data-developer-policy" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /workspace/workspace-api-user-data-developer-policy" track-type="bookNav" track-name="click" track-metadata-eventdetail="/workspace/workspace-api-user-data-developer-policy" target="_blank"><span class="devsite-nav-text" tooltip>User data and developer policy</span><span class="devsite-nav-icon material-icons" data-icon="external" data-title="External" aria-hidden="true"></span></a></li> <li class="devsite-nav-item"><a href="/workspace/chat/docs/release-notes" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /workspace/chat/docs/release-notes" track-type="bookNav" track-name="click" track-metadata-eventdetail="/workspace/chat/docs/release-notes" ><span class="devsite-nav-text" tooltip>Release notes</span></a></li> </ul> <ul class="devsite-nav-list" menu="All products" aria-label="Side menu" hidden> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > Google Workspace apps </span> </span> </li> <li class="devsite-nav-item"> <a href="/admin-sdk" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Admin console" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Admin console </span> </a> </li> <li class="devsite-nav-item"> <a href="/cloud-search" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Cloud Search" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Cloud Search </span> </a> </li> <li class="devsite-nav-item"> <a href="/gmail" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Gmail" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Gmail </span> </a> </li> <li class="devsite-nav-item"> <a href="/calendar" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Calendar" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Google Calendar </span> </a> </li> <li class="devsite-nav-item"> <a href="/workspace/chat" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Chat" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Google Chat </span> </a> </li> <li class="devsite-nav-item"> <a href="/classroom" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Classroom" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Google Classroom </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Docs" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Google Docs </span> </a> </li> <li class="devsite-nav-item"> <a href="/drive" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Drive" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Google Drive </span> </a> </li> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > </span> </span> </li> <li class="devsite-nav-item"> <a href="/forms" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Forms" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Google Forms </span> </a> </li> <li class="devsite-nav-item"> <a href="/keep" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Keep" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Google Keep </span> </a> </li> <li class="devsite-nav-item"> <a href="/meet" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Meet" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Google Meet </span> </a> </li> <li class="devsite-nav-item"> <a href="/sheets" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Sheets" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Google Sheets </span> </a> </li> <li class="devsite-nav-item"> <a href="/workspace/sites" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Sites" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Google Sites </span> </a> </li> <li class="devsite-nav-item"> <a href="/slides" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Slides" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Google Slides </span> </a> </li> <li class="devsite-nav-item"> <a href="/tasks" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Tasks" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Google Tasks </span> </a> </li> <li class="devsite-nav-item"> <a href="/vault" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Vault" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Google Vault </span> </a> </li> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > Extend, automate & share </span> </span> </li> <li class="devsite-nav-item"> <a href="/workspace/add-ons" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Add-ons" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Add-ons </span> </a> </li> <li class="devsite-nav-item"> <a href="/apps-script" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Apps Script" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Apps Script </span> </a> </li> <li class="devsite-nav-item"> <a href="/workspace/chat/overview" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Chat apps" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Chat apps </span> </a> </li> <li class="devsite-nav-item"> <a href="/drive/api/guides/about-apps" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Drive apps" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Drive apps </span> </a> </li> <li class="devsite-nav-item"> <a href="/workspace/marketplace" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Marketplace" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Marketplace </span> </a> </li> </ul> <ul class="devsite-nav-list" menu="Resources" aria-label="Side menu" hidden> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > Tools </span> </span> </li> <li class="devsite-nav-item"> <a href="https://admin.google.com/" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Admin console" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Admin console </span> </a> </li> <li class="devsite-nav-item"> <a href="https://script.google.com/" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Apps Script dashboard" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Apps Script dashboard </span> </a> </li> <li class="devsite-nav-item"> <a href="https://console.cloud.google.com/workspace-api" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Cloud console" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Google Cloud console </span> </a> </li> <li class="devsite-nav-item"> <a href="/workspace/explore" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: APIs Explorer" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > APIs Explorer </span> </a> </li> <li class="devsite-nav-item"> <a href="https://addons.gsuite.google.com/uikit/builder" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Card Builder" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Card Builder </span> </a> </li> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > Training & support </span> </span> </li> <li class="devsite-nav-item"> <a href="/workspace/guides/get-started" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: How to get started" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > How to get started </span> </a> </li> <li class="devsite-nav-item"> <a href="https://codelabs.developers.google.com/?product=googleworkspace" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Codelabs" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Codelabs </span> </a> </li> <li class="devsite-nav-item"> <a href="/workspace/support" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Developer support" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Developer support </span> </a> </li> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > Updates </span> </span> </li> <li class="devsite-nav-item"> <a href="https://developers.googleblog.com/search/?query=Google+Workspace" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Blog" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Blog </span> </a> </li> <li class="devsite-nav-item"> <a href="/workspace/preview" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Developer Previews" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Developer Previews </span> </a> </li> <li class="devsite-nav-item"> <a href="/workspace/newsletters" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Newsletter" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Newsletter </span> </a> </li> <li class="devsite-nav-item"> <a href="https://twitter.com/workspacedevs" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: X (Twitter)" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > X (Twitter) </span> </a> </li> <li class="devsite-nav-item"> <a href="https://www.youtube.com/channel/UCUcg6az6etU_gRtZVAhBXaw" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: YouTube" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > YouTube </span> </a> </li> </ul> </div> </div> </nav> </devsite-book-nav> <section id="gc-wrapper"> <main role="main" class="devsite-main-content" has-book-nav > <devsite-content> <article class="devsite-article"><style> /* Styles inlined from /release-notes/styles.css */ .release-announcement, .release-breaking, .release-changed, .release-deprecated, .release-feature, .release-fixed, .release-issue, .release-libraries, .release-security { margin-left: 110px; position: relative; } .release-announcement::before, .release-breaking::before, .release-changed::before, .release-deprecated::before, .release-feature::before, .release-fixed::before, .release-issue::before, .release-libraries::before, .release-security::before{ border-radius: 14px; display: inline-block; font-size: 12px; font-weight: 700; height: 28px; left: -110px; line-height: 28px; margin-right: 10px; position: absolute; text-align: center; text-transform: uppercase; top: -3px; width: 100px; } /* Colours for each type of changelog entry. */ .release-breaking::before { content: "breaking"; background-color: #db4437; color: #fff; } .release-changed::before { content: "changed"; background-color: #f4b400; color: #fff; } .release-deprecated::before { content: "deprecated"; background-color: #db4437; color: #fff; } .release-feature::before { content: "feature"; background-color: #0f9d58; color: #fff; } .release-fixed::before { content: "fixed"; background-color: #4285f4; color: #fff; } .release-issue::before { content: "issue"; background-color: #db4437; color: #fff; } .release-security::before { content: "security"; background-color: #ff6e40; color: #fff; } .release-announcement::before { content: "announcement"; background-color: #ffbc00; color: #fff; font-size: 11px; } .release-libraries::before { content: "libraries"; background-color: #860ac6; color: #fff; } .release-note-sitemap-card { display: flex; flex-wrap: wrap; } .release-note-sitemap-card-item { flex: 1 50%; } </style> <div class="devsite-article-meta nocontent" role="navigation"> <ul class="devsite-breadcrumb-list" aria-label="Breadcrumb"> <li class="devsite-breadcrumb-item "> <a href="https://developers.google.com/" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Breadcrumbs" data-value="1" track-type="globalNav" track-name="breadcrumb" track-metadata-position="1" track-metadata-eventdetail="" > Home </a> </li> <li class="devsite-breadcrumb-item "> <div class="devsite-breadcrumb-guillemet material-icons" aria-hidden="true"></div> <a href="https://developers.google.com/workspace" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Breadcrumbs" data-value="2" track-type="globalNav" track-name="breadcrumb" track-metadata-position="2" track-metadata-eventdetail="Google Workspace" > Google Workspace </a> </li> <li class="devsite-breadcrumb-item "> <div class="devsite-breadcrumb-guillemet material-icons" aria-hidden="true"></div> <a href="https://developers.google.com/workspace/chat" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Breadcrumbs" data-value="3" track-type="globalNav" track-name="breadcrumb" track-metadata-position="3" track-metadata-eventdetail="Google Chat" > Google Chat </a> </li> <li class="devsite-breadcrumb-item "> <div class="devsite-breadcrumb-guillemet material-icons" aria-hidden="true"></div> <a href="https://developers.google.com/workspace/chat/support" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Breadcrumbs" data-value="4" track-type="globalNav" track-name="breadcrumb" track-metadata-position="4" track-metadata-eventdetail="" > Support </a> </li> </ul> <devsite-thumb-rating position="header"> </devsite-thumb-rating> </div> <devsite-feedback position="header" project-name="Google Chat" product-id="717201" bucket="google-chat" context="" version="t-devsite-webserver-20241114-r00-rc02.464922260396498922" data-label="Send Feedback Button" track-type="feedback" track-name="sendFeedbackLink" track-metadata-position="header" class="nocontent" project-feedback-url="https://issuetracker.google.com/issues/new?component=350158&template=1047215" project-icon="https://www.gstatic.com/images/branding/productlogos/chat_2023q4/v2/web-64dp/logo_chat_2023q4_color_1x_web_64dp.png" project-support-url="https://developers.google.com/workspace/chat/support" > <button> Send feedback </button> </devsite-feedback> <h1 class="devsite-page-title" tabindex="-1"> Google Chat developer platform release notes </h1> <devsite-feature-tooltip ack-key="AckCollectionsBookmarkTooltipDismiss" analytics-category="Site-Wide Custom Events" analytics-action-show="Callout Profile displayed" analytics-action-close="Callout Profile dismissed" analytics-label="Create Collection Callout" class="devsite-page-bookmark-tooltip nocontent" dismiss-button="true" id="devsite-collections-dropdown" dismiss-button-text="Dismiss" close-button-text="Got it"> <devsite-bookmark></devsite-bookmark> <span slot="popout-heading"> Stay organized with collections </span> <span slot="popout-contents"> Save and categorize content based on your preferences. </span> </devsite-feature-tooltip> <div class="devsite-page-title-meta"><devsite-view-release-notes></devsite-view-release-notes></div> <devsite-toc class="devsite-nav" depth="2" devsite-toc-embedded > </devsite-toc> <div class="devsite-article-body clearfix "> <section class="intro"> <div class="video-wrapper"> <devsite-video video-id="Eyri_-ODicQ" rel=0 widget_referrer="https://developers.google.com/chat/docs/release-notes" /> </div> <p>This page contains release notes for features and updates to the Chat developer platform. We recommend that Chat developers periodically check this list for any new announcements.</p> </section> <section class="xml"> <p> To get the latest product updates delivered to you, add the URL of this page to your <a href="https://wikipedia.org/wiki/Comparison_of_feed_aggregators" class="external">feed reader</a>, or add the feed URL directly: <code translate="no" dir="ltr">https://developers.google.com/feeds/chat-release-notes.xml</code>. </p> </section> <section class="releases"> <section class="releases"> <h2 id="November_05_2024" data-text="November 05, 2024" tabindex="-1">November 05, 2024</h2> <div id="c803f4aa" class="release-feature"> <p><strong>Generally Available</strong>: If you're migrating to Google Chat from other messaging platforms, you can now create a group chat in <a href="https://developers.google.com/workspace/chat/import-data#create-space">import mode</a> using the <a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces/create"><code translate="no" dir="ltr">spaces.create</code></a> method.</p> </div> <h2 id="November_04_2024" data-text="November 04, 2024" tabindex="-1">November 04, 2024</h2> <div id="2a0eb9d9" class="release-feature"> <p><strong>Developer Preview</strong>: You can now use a read-only scope (<code translate="no" dir="ltr">https://www.googleapis.com/auth/chat.customemojis.readonly</code>) to <a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/customEmojis/get"><code translate="no" dir="ltr">get</code></a> or <a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/customEmojis/list"><code translate="no" dir="ltr">list</code></a> custom emoji.</p> </div> <h2 id="October_30_2024" data-text="October 30, 2024" tabindex="-1">October 30, 2024</h2> <div id="88280959" class="release-feature"> <p><strong>Developer Preview</strong>: You can now call the Chat API to get or update a user's space notification settings. To learn more, see the <a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/users.spaces.spaceNotificationSetting"><code translate="no" dir="ltr">spaceNotificationSetting</code> reference documentation</a>.</p> </div> <h2 id="October_24_2024" data-text="October 24, 2024" tabindex="-1">October 24, 2024</h2> <div id="c92896e0" class="release-feature"> <p><strong>Generally Available</strong>: The following widgets are now available for building card-based user interfaces:</p> <ul> <li><a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/cards#Message.ChipList">Chip</a></li> <li><a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/cards#Message.OverflowMenu">Overflow Menu</a></li> <li><a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/cards#Message.Type">Material Buttons</a></li> <li><a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/cards#textparagraph">Collapsible Text paragraph</a></li> <li><a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/cards#Message.Section_1">Customizable control button of collapsible Section</a></li> </ul> <p>Chat apps can use these widgets in card messages, homepages, and dialogs. For examples, see <a href="https://developers.google.com/workspace/chat/design-interactive-card-dialog">Design an interactive card or dialog</a>.</p> </div> <h2 id="October_10_2024" data-text="October 10, 2024" tabindex="-1">October 10, 2024</h2> <div id="10ea45ec" class="release-feature"> <p><strong>Developer Preview</strong>: When <a href="https://support.google.com/chat/answer/12800149">creating custom emoji is turned on</a> for a Workspace organization, you can now call Chat API to manage custom emoji:</p> <ul> <li>Create custom emoji (<a href="https://developers.google.com/workspace/chat/api/reference/rpc/google.chat.v1#google.chat.v1.ChatService.CreateCustomEmoji">RPC</a>, <a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/customEmojis/create">REST</a>)</li> <li>Delete custom emoji (<a href="https://developers.google.com/workspace/chat/api/reference/rpc/google.chat.v1#google.chat.v1.ChatService.DeleteCustomEmoji">RPC</a>, <a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/customEmojis/delete">REST</a>)</li> <li>Get custom emoji (<a href="https://developers.google.com/workspace/chat/api/reference/rpc/google.chat.v1#google.chat.v1.ChatService.GetCustomEmoji">RPC</a>, <a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/customEmojis/get">REST</a>)</li> <li>List custom emoji (<a href="https://developers.google.com/workspace/chat/api/reference/rpc/google.chat.v1#google.chat.v1.ChatService.ListCustomEmojis">RPC</a>, <a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/customEmojis/list">REST</a>)</li> </ul> <p>To learn more, see <code translate="no" dir="ltr">CustomEmoji</code> (<a href="https://developers.google.com/workspace/chat/api/reference/rpc/google.chat.v1#google.chat.v1.CustomEmoji">RPC</a>, <a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/customEmojis">REST</a>) in the Chat API documentation.</p> </div> <h2 id="October_02_2024" data-text="October 02, 2024" tabindex="-1">October 02, 2024</h2> <div id="70a6c760" class="release-feature"> <p><strong>Generally available:</strong> You can now call the Chat API to create <a href="https://support.google.com/chat/answer/7659784">announcement spaces</a>, and read and update the <a href="https://support.google.com/chat/answer/13340792">permission settings</a> of a space. For more information, see the following reference documentation:</p> <ul> <li><a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces#predefinedpermissionsettings"><code translate="no" dir="ltr">PredefinedPermmissionSettings</code></a> field for the <code translate="no" dir="ltr">Spaces</code> resource</li> <li><a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces#permissionsettings"><code translate="no" dir="ltr">PermissionSettings</code></a> field for the <code translate="no" dir="ltr">Spaces</code> resource </li> </ul> </div> <h2 id="September_30_2024" data-text="September 30, 2024" tabindex="-1">September 30, 2024</h2> <div id="8540a20e" class="release-feature"> <p><strong>Developer Preview</strong>: The following Chat API methods support app authentication using a new type of authentication scope, <code translate="no" dir="ltr">https://www.googleapis.com/auth/chat.app.*</code>:</p> <ul> <li><a href="https://developers.google.com/workspace/chat/create-spaces#create-named-app-auth">Create a named space as a Chat app</a> with <code translate="no" dir="ltr">https://www.googleapis.com/auth/chat.app.spaces</code> or <code translate="no" dir="ltr">https://www.googleapis.com/auth/chat.app.spaces.create</code>.</li> <li><a href="https://developers.google.com/workspace/chat/update-spaces#update-space-app-auth">Update a space as a Chat app</a> with <code translate="no" dir="ltr">https://www.googleapis.com/auth/chat.app.spaces</code></li> <li><a href="https://developers.google.com/workspace/chat/delete-spaces#delete-named-app-auth">Delete a named space as a Chat app</a> with <code translate="no" dir="ltr">https://www.googleapis.com/auth/chat.app.delete</code></li> <li><a href="https://developers.google.com/workspace/chat/get-spaces#get-space">Get details about a space as a Chat app</a> with <code translate="no" dir="ltr">https://www.googleapis.com/auth/chat.app.spaces</code>.</li> <li><a href="https://developers.google.com/workspace/chat/create-members#create-user-membership-app-auth">Invite or add a user to a space as a Chat app</a> with <code translate="no" dir="ltr">https://www.googleapis.com/auth/chat.app.memberships</code>.</li> <li><a href="https://developers.google.com/workspace/chat/update-members#update-membership">Update a membership as a Chat app</a> with <code translate="no" dir="ltr">https://www.googleapis.com/auth/chat.app.memberships</code>.</li> <li><a href="https://developers.google.com/workspace/chat/delete-members#delete-membership-app-auth">Remove a member from a space</a> with <code translate="no" dir="ltr">https://www.googleapis.com/auth/chat.app.memberships</code>.</li> </ul> <p>To learn more, see <a href="https://developers.google.com/workspace/chat/authenticate-authorize#types-required">Types of required authentication</a> and <a href="https://developers.google.com/workspace/chat/authenticate-authorize-chat-app">Authenticate as a Chat app</a>.</p> </div> <h2 id="September_11_2024" data-text="September 11, 2024" tabindex="-1">September 11, 2024</h2> <div id="dafdf6cb" class="release-feature"> <p><strong>Generally Available</strong>: The <code translate="no" dir="ltr">chatSpaceLinkData</code> object has been added to the <code translate="no" dir="ltr">RichLinkMetaData</code> field of the <a href="https://developers.google.com//workspace/chat/api/reference/rest/v1/spaces.messages"><code translate="no" dir="ltr">spaces.messages</code></a> resource. This lets you add a smart chip to your message that points to a Chat space in any field that supports formatted text.</p> </div> <div id="ab5b9534" class="release-feature"> <p><strong>Generally Available:</strong> Google Workspace administrators can now call the Google Chat API to manage and search Google Chat spaces across their organization. This functionality lets them manage spaces at scale and automate common or repeatable tasks, such as the following:</p> <ul> <li><a href="https://developers.google.com/workspace/chat/search-manage-admin">Search</a> spaces based on specified criteria</li> <li><a href="https://developers.google.com/workspace/chat/list-members">List members</a> of a space</li> <li><a href="https://developers.google.com/workspace/chat/create-members">Add members</a> to and <a href="https://developers.google.com/workspace/chat/delete-members">remove members</a> from a space</li> <li>Get details about a <a href="https://developers.google.com/workspace/chat/get-members">member</a> and a <a href="https://developers.google.com/workspace/chat/get-spaces">space</a></li> <li><a href="https://developers.google.com/workspace/chat/update-spaces">Update</a> or <a href="https://developers.google.com/workspace/chat/delete-spaces">delete</a> a space</li> <li><a href="https://developers.google.com/workspace/chat/update-members">Update a user's membership</a></li> </ul> <p>For more information about managing spaces, read the documentation at <a href="https://developers.google.com/workspace/chat/admin-overview">Manage Google Chat spaces as a Google Workspace administrator</a>.</p> <p>For more information about searching spaces, read the documentation at <a href="https://developers.google.com/workspace/chat/search-manage-admin">Search for and manage Google Chat spaces for your Google Workspace organization</a>.</p> </div> <h2 id="September_10_2024" data-text="September 10, 2024" tabindex="-1">September 10, 2024</h2> <div id="7397bf22" class="release-feature"> <p><strong>Developer Preview</strong>: If you're migrating to Google Chat from other messaging platforms, you can now create a group chat in <a href="https://developers.google.com/workspace/chat/import-data#create-space">import mode</a> using the <a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces/create"><code translate="no" dir="ltr">spaces.create</code></a> method.</p> </div> <h2 id="August_16_2024" data-text="August 16, 2024" tabindex="-1">August 16, 2024</h2> <div id="f45120cb" class="release-libraries"> <p><strong>Generally Available</strong>: You can now call Chat API using Cloud Client Libraries in addition to the already available Google API Client Libraries.</p> <p>Benefits of Cloud Client Libraries include:</p> <ul> <li>Idiomatic code that follows your preferred language's natural conventions and styles.</li> <li>Consistent style across client libraries.</li> <li>Handling the low-level details of server communication, including authentication, pagination, long-running operations, streams, and retries.</li> <li>Installable using package management tools like <code translate="no" dir="ltr">npm</code> and <code translate="no" dir="ltr">pip</code>.</li> <li>Improved performance in some cases, thanks to gRPC.</li> </ul> <p>Additionally, our Chat API reference documentation now features a <a href="https://developers.google.com/workspace/chat/api/reference/rpc">RPC reference</a> arranged by services and their methods in addition to our existing <a href="https://developers.google.com/workspace/chat/api/reference/rest">REST reference</a> arranged by resource hierarchies and their methods.</p> <p>To learn more, see <a href="https://developers.google.com/workspace/chat/libraries">Install client libraries</a>.</p> </div> <h2 id="August_07_2024" data-text="August 07, 2024" tabindex="-1">August 07, 2024</h2> <div id="85277e04" class="release-feature"> <p><strong>Developer Preview</strong>: The following widgets are now available for building card-based user interfaces:</p> <ul> <li><a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/cards#Message.ChipList">Chip</a></li> <li><a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/cards#Message.OverflowMenu">Overflow Menu</a></li> <li><a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/cards#Message.Type">Material Buttons</a></li> <li><a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/cards#textparagraph">Collapsible Text paragraph</a></li> <li><a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/cards#Message.Section_1">Customizable control button of collapsible Section</a></li> </ul> <p>Chat apps can use these widgets in card messages, homepages, and dialogs. For examples, see <a href="https://developers.google.com/workspace/chat/design-interactive-card-dialog">Design an interactive card or dialog</a>.</p> </div> <h2 id="July_08_2024" data-text="July 08, 2024" tabindex="-1">July 08, 2024</h2> <div id="18102e58" class="release-feature"> <p><strong>Generally Available:</strong> You can now import a space from other messaging platforms, and allow external users to join that Chat space. For more information, see the <a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces#Space.FIELDS.external_user_allowed"><code translate="no" dir="ltr">externalUserAllowed</code> option</a>.</p> </div> <div id="1e8072b0" class="release-feature"> <p><strong>Generally Available</strong>: When building Chat apps using Google Cloud Functions, Cloud Run, or any system that supports authentication via ID tokens, you can now <a href="https://developers.google.com/workspace/chat/verify-requests-from-chat#verify-cloud-function">Authenticate requests using Cloud Functions or Cloud Run</a> or <a href="https://developers.google.com/workspace/chat/verify-requests-from-chat#verify-app-url">Authenticate requests with an App URL ID Token</a> to verify that the requests to your app came from Google Chat.</p> </div> <h2 id="July_03_2024" data-text="July 03, 2024" tabindex="-1">July 03, 2024</h2> <div id="a416b5db" class="release-feature"> <p><strong>Generally Available</strong>: You can now call the Chat API to <a href="https://developers.google.com/workspace/chat/space-target-audience">Make a Google Chat space discoverable to specific users in a Google Workspace organization</a> using the <a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces#Space.FIELDS.access_settings"><code translate="no" dir="ltr">accessSettings</code></a> field on the <code translate="no" dir="ltr">Space</code> resource. You can read the URI of the space using the <a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces#Space.FIELDS.space_uri"><code translate="no" dir="ltr">spaceUri</code></a> field.</p> </div> <h2 id="June_28_2024" data-text="June 28, 2024" tabindex="-1">June 28, 2024</h2> <div id="136720a7" class="release-feature"> <p><strong>(Generally Available)</strong>: <a href="https://developers.google.com/workspace/chat/build-dialogflow-chat-app-natural-language">Dialogflow CX Chat apps</a> can open dialogs and receive data inputted by users in card messages and dialogs.</p> </div> <h2 id="June_26_2024" data-text="June 26, 2024" tabindex="-1">June 26, 2024</h2> <div id="a21f2385" class="release-feature"> <p><strong>(Developer Preview)</strong>: You can now use the Chat API to create announcement spaces, plus read and update the permission settings of a space. For more information, see the <a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces#Space.FIELDS.predefined_permission_settings"><code translate="no" dir="ltr">PredefinedPermissionSettings</code></a> and <a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces#Space.PermissionSettings"><code translate="no" dir="ltr">PermissionSettings</code></a> fields.</p> </div> <h2 id="June_25_2024" data-text="June 25, 2024" tabindex="-1">June 25, 2024</h2> <div id="743f1fd5" class="release-feature"> <p><strong>(Generally Available):</strong> You can now add a Google Group to a Chat space using the <a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces.members/create"><code translate="no" dir="ltr">spaces.members.create</code></a> method or the <a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces/setup"><code translate="no" dir="ltr">spaces.setup</code></a> method. You can remove a Google Group from a space using the <a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces.members/delete"><code translate="no" dir="ltr">spaces.members.delete</code></a> method.</p> </div> <h2 id="June_24_2024" data-text="June 24, 2024" tabindex="-1">June 24, 2024</h2> <div id="82afbfda" class="release-feature"> <p>Google Chat apps can now create a subscription to receive events for all Chat spaces where the user is a member. To target all spaces for a user, set the subscription's <code translate="no" dir="ltr">targetResource</code> field to <code translate="no" dir="ltr">//chat.googleapis.com/spaces/-</code>. To learn more, see <a href="https://developers.google.com/workspace/events/guides/events-chat#supported_target_resources">Subscribe to Google Chat events</a>.</p> </div> <h2 id="June_18_2024" data-text="June 18, 2024" tabindex="-1">June 18, 2024</h2> <div id="3a53b9b0" class="release-feature"> <p><strong>(Developer Preview)</strong>: If you're a domain administrator or a delegated administrator, you can now include the <code translate="no" dir="ltr">useAdminAccess</code> parameter when you call the Chat API with your administrator privileges with the following methods to manage Chat spaces and memberships in your Workspace organization:</p> <ul> <li><a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces/get">Get a space</a></li> <li><a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces/patch">Update a space</a></li> <li><a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces.members/get">Get a member</a></li> <li><a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces.members/patch">Update a member</a></li> </ul> <p>To learn more, see <a href="https://developers.google.com/workspace/chat/authenticate-authorize-chat-user#admin-privileges">Authenticate and authorize using administrator privileges</a>.</p> </div> <h2 id="May_22_2024" data-text="May 22, 2024" tabindex="-1">May 22, 2024</h2> <div id="7ccf29ff" class="release-feature"> <p><strong>(Developer Preview)</strong>: If you're a domain administrator or a delegated administrator, you can now include the <code translate="no" dir="ltr">useAdminAccess</code> parameter when you call the Chat API with your administrator privileges to manage Chat spaces and memberships in your organization. The following API methods are supported:</p> <ul> <li><a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces/search">Search spaces</a></li> <li><a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces/delete">Delete spaces</a></li> <li><a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces.members/list">List memberships</a></li> <li><a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces.members/create">Create memberships</a></li> <li><a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces.members/delete">Delete memberships</a></li> </ul> <p>To learn more, see <a href="https://developers.google.com/workspace/chat/authenticate-authorize-chat-user#admin-privileges">Authenticate and authorize using administrator privileges</a>.</p> </div> <h2 id="May_21_2024" data-text="May 21, 2024" tabindex="-1">May 21, 2024</h2> <div id="74ee5fce" class="release-changed"> <p><strong>(Developer Preview)</strong>: <a href="https://developers.google.com/workspace/chat/build-dialogflow-chat-app-natural-language">Dialogflow CX Chat apps</a> can open dialogs and receive data inputted by users in card messages and dialogs.</p> </div> <h2 id="April_25_2024" data-text="April 25, 2024" tabindex="-1">April 25, 2024</h2> <div id="123e1bbb" class="release-feature"> <p><strong>(Generally available):</strong> You can now get and update a user's read state in a space, and get a user's read state in a message thread. User read states are singleton resources that represent details about a specified user's last read message.</p> <p>The <a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/users.spaces"><code translate="no" dir="ltr">users.spaces</code> resource</a> represents a user's read state in a space. The <a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/users.spaces.threads"><code translate="no" dir="ltr">users.spaces.threads</code> resource</a> represents a user's read state in a message thread.</p> <p>User read states support the following methods:</p> <ul> <li><p><a href="https://developers.google.com/workspace/chat/get-space-read-state">Get space read state</a> to return details about a user's read state within a space.</p></li> <li><p><a href="https://developers.google.com/workspace/chat/update-space-read-state">Update space read state</a> to update a user's read state within a space.</p></li> <li><p><a href="https://developers.google.com/workspace/chat/get-thread-read-state">Get thread read state</a> to return details about a user's read state within a thread.</p></li> </ul> </div> <h2 id="April_24_2024" data-text="April 24, 2024" tabindex="-1">April 24, 2024</h2> <div id="d12c50e3" class="release-feature"> <p><strong>(Generally Available):</strong> Build a Chat app that understands and responds with natural language using a direct integration between Dialogflow CX and Google Chat API. To learn how, see <a href="https://developers.google.com/workspace/chat/build-dialogflow-chat-app-natural-language">Build a Dialogflow CX Google Chat app</a>.</p> </div> <h2 id="April_23_2024" data-text="April 23, 2024" tabindex="-1">April 23, 2024</h2> <div id="1f1e95f4" class="release-feature"> <p><strong>(Generally available)</strong>: Your Chat app can now send an app home card message to a user. This message is a customizable card message that a Chat app sends to a user when they open a direct message with the Chat app.</p> <p>For details, see <a href="https://developers.google.com/workspace/chat/send-app-home-card-message">Send an app home card message for a Google Chat app</a>.</p> </div> <h2 id="April_22_2024" data-text="April 22, 2024" tabindex="-1">April 22, 2024</h2> <div id="b2e86729" class="release-feature"> <p><strong>(Generally Available)</strong>: Google Chat apps now support Google Apps Script's Card Service. If you've built your Chat app using Apps Script, you can use Card Service to build user interfaces such as card messages and dialogs. For more information, see the <a href="https://developers.google.com/apps-script/reference/card-service">Card Service reference documentation</a>.</p> </div> <h2 id="April_18_2024" data-text="April 18, 2024" tabindex="-1">April 18, 2024</h2> <div id="7c161300" class="release-feature"> <p><strong>(Generally available)</strong>: You can now update a human user's membership in a Chat space to change their role between regular member and space manager using the <a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces.members/patch"><code translate="no" dir="ltr">spaces.members.patch</code></a> method. To learn more, see <a href="https://developers.google.com/workspace/chat/update-members">Update a user's membership in a Google Chat space</a>.</p> </div> <h2 id="April_08_2024" data-text="April 08, 2024" tabindex="-1">April 08, 2024</h2> <div id="dfa7bc42" class="release-feature"> <p>(<strong>Developer Preview</strong>): You can now import a space from other messaging platforms, and allow external users to join that space. For more information, see the <a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces#Space.FIELDS.external_user_allowed"><code translate="no" dir="ltr">externalUserAllowed</code> option</a>.</p> </div> <h2 id="March_28_2024" data-text="March 28, 2024" tabindex="-1">March 28, 2024</h2> <div id="29073140" class="release-announcement"> <p><strong>(Generally available)</strong>: Google Chat apps can get, list, and subscribe to events. To receive events, you can do the following:</p> <ul> <li>Use the <code translate="no" dir="ltr">get()</code> and <code translate="no" dir="ltr">list()</code> methods on the <code translate="no" dir="ltr">spaces.spaceEvents</code> resource of the Google Chat API.</li> <li>Create subscriptions to events about users and spaces using Google Workspace Events API.</li> </ul> <p>To learn more, see <a href="https://developers.google.com/workspace/chat/events-overview">Work with events from Google Chat</a>.</p> </div> <div id="58d18845" class="release-announcement"> <p>Events about deleted messages are now supported (Event type: <code translate="no" dir="ltr">google.workspace.chat.message.v1.deleted</code>).</p> </div> <h2 id="March_20_2024" data-text="March 20, 2024" tabindex="-1">March 20, 2024</h2> <div id="4925cf87" class="release-feature"> <p><strong>(Generally available)</strong>: Google Chat apps can now use accessory widgets, which are interactive widgets that appear at the bottom of a message. For details, see <a href="https://developers.google.com/workspace/chat/create-messages#add-accessory-widgets">Send a message</a>.</p> </div> <h2 id="March_13_2024" data-text="March 13, 2024" tabindex="-1">March 13, 2024</h2> <div id="debefaa9" class="release-feature"> <p><strong>(Developer Preview)</strong>: You can now <code translate="no" dir="ltr">get</code> or <code translate="no" dir="ltr">list</code> events about a Google Chat space. For example, you can track periodic resource changes, such as monthly reports of new or changed members in a space, or fetch events that are missing from subscriptions using the Google Workspace Events API.</p> <p>The following types of space events are supported:</p> <ul> <li>A message is created or updated.</li> <li>A member is added, updated, or removed.</li> <li>The space is updated.</li> </ul> <p>For more information, see the following:</p> <ul> <li><a href="https://developers.google.com/workspace/chat/events-overview">Work with events from Google Chat</a>.</li> <li><a href="https://developers.google.com/workspace/chat/get-space-event">Get details about an event in a space</a>.</li> <li><a href="https://developers.google.com/workspace/chat/list-space-events">List events from a space</a>.</li> </ul> </div> <h2 id="March_05_2024" data-text="March 05, 2024" tabindex="-1">March 05, 2024</h2> <div id="c15cafb8" class="release-feature"> <p><strong>(Developer Preview)</strong>: Build a Chat app that understands and responds with natural language using a direct integration between Dialogflow CX and Google Chat API. To learn how, see <a href="https://developers.google.com/workspace/chat/build-dialogflow-chat-app-natural-language">Build a Dialogflow CX Google Chat app</a>.</p> </div> <h2 id="March_04_2024" data-text="March 04, 2024" tabindex="-1">March 04, 2024</h2> <div id="6260a273" class="release-feature"> <p><strong>(Generally available)</strong>: The <code translate="no" dir="ltr">formattedText</code> field on the <a href="https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces.messages"><code translate="no" dir="ltr">Message</code></a> resource includes the markup syntax for bulleted list text formatting. For more information, see <a href="https://developers.google.com/workspace/chat/format-messages#format-texts">Format a text message</a>.</p> </div> <h2 id="February_20_2024" data-text="February 20, 2024" tabindex="-1">February 20, 2024</h2> <div id="9df895b3" class="release-feature"> <p><strong>(Developer Preview)</strong>: Google Chat apps now support Google Apps Script's Card Service. If you've built your Chat app using Apps Script, you can use Card Service to build user interfaces such as card messages and dialogs. For more information, see the <a href="https://developers.google.com/apps-script/reference/card-service">Card Service reference documentation</a>.</p> </div> <h2 id="January_17_2024" data-text="January 17, 2024" tabindex="-1">January 17, 2024</h2> <div id="f20a7ed5" class="release-feature"> <p><strong>(Developer Preview):</strong> Chat apps can now subscribe to events about users. The following event types are supported:</p> <ul> <li>New memberships</li> <li>Updated memberships</li> <li>Deleted memberships</li> <li>Multiple memberships have changed</li> </ul> <p>For details, see <a href="https://developers.google.com/workspace/events/guides/events-chat">Subscribe to Google Chat events</a> in the Google Workspace Events API documentation.</p> </div> <div id="f3a1f63f" class="release-feature"> <p><strong>(Developer Preview)</strong>: You can <a href="https://developers.google.com/chat/api/guides/v1/spaces/space-target-audience">make a Chat space discoverable to a target audience</a> instead of inviting users individually.</p> </div> <h2 id="January_10_2024" data-text="January 10, 2024" tabindex="-1">January 10, 2024</h2> <div id="5d766d4f" class="release-feature"> <p><strong>(Generally available)</strong>: <a href="https://developers.google.com/chat/api/guides/import-data-overview">Import data from your other messaging platforms into Google Chat</a>. You can import existing messages, attachments, reactions, memberships, and space entities from your other messaging platforms to corresponding Chat API resources. You can import this data by creating Chat spaces in import mode and importing data into those spaces.</p> </div> <div id="93145b04" class="release-feature"> <p><strong>(Generally available)</strong>: You can now migrate historical memberships when you import data into Google Chat.</p> </div> <h2 id="January_08_2024" data-text="January 08, 2024" tabindex="-1">January 08, 2024</h2> <div id="b2a0a61e" class="release-feature"> <p><strong>(Developer Preview)</strong>: Chat apps can now add interactive buttons to the bottom of messages. For details, see the <a href="https://developers.google.com/chat/api/reference/rest/v1/spaces.messages#Message.FIELDS.accessory_widgets">reference documentation</a>.</p> </div> <h2 id="January_05_2024" data-text="January 05, 2024" tabindex="-1">January 05, 2024</h2> <div id="00a8800c" class="release-feature"> <p>Chat apps can now send messages privately in spaces with multiple people. For details, see <a href="https://developers.google.com/chat/api/guides/v1/messages/private">Send private messages to Google Chat users</a>.</p> </div> <h2 id="December_14_2023" data-text="December 14, 2023" tabindex="-1">December 14, 2023</h2> <div id="48cea84a" class="release-announcement"> <p>We've published a comprehensive tutorial and code sample showing how to build a Chat app using generative AI and a database, <a href="https://developers.google.com/chat/tutorial-project-management">Manage projects with Google Chat, Vertex AI, and Firestore</a>.</p> </div> <h2 id="December_13_2023" data-text="December 13, 2023" tabindex="-1">December 13, 2023</h2> <div id="4f0d79d9" class="release-feature"> <p>(<strong>Generally available</strong>): The <a href="https://addons.gsuite.google.com/uikit/builder">Card Builder Tool</a> is now available to help you <a href="https://developers.google.com/chat/api/guides/v1/messages/create#create">design and preview card messages</a> in Google Chat apps.</p> </div> <h2 id="December_08_2023" data-text="December 08, 2023" tabindex="-1">December 08, 2023</h2> <div id="b234d711" class="release-changed"> <p>The Google Chat API <a href="https://developers.google.com/chat/api/reference/rest/v1/spaces/list"><code translate="no" dir="ltr">spaces.list()</code> method</a> now supports app authentication for query filters.</p> </div> <h2 id="December_06_2023" data-text="December 06, 2023" tabindex="-1">December 06, 2023</h2> <div id="6e8bc9b7" class="release-feature"> <p><a href="https://developers.google.com/workspace/preview">Developer Preview</a>: You can now get and update a user's read state in a space, and get a user's read state in a message thread. User read states are singleton resources that represent details about a specified user's last read message.</p> <p>The <a href="https://developers.google.com/chat/api/reference/rest/v1/users.spaces"><code translate="no" dir="ltr">users.spaces</code> resource</a> represents a user's read state in a space. The <a href="https://developers.google.com/chat/api/reference/rest/v1/users.spaces.threads"><code translate="no" dir="ltr">users.spaces.threads</code> resource</a> represents a user's read state in a message thread.</p> <p>User read states support the following methods:</p> <ul> <li><p><a href="https://developers.google.com/chat/api/reference/rest/v1/users.spaces/getSpaceReadState">Get space read state</a> to return details about a user's read state within a space.</p></li> <li><p><a href="https://developers.google.com/chat/api/reference/rest/v1/users.spaces/updateSpaceReadState">Update space read state</a> to update a user's read state within a space.</p></li> <li><p><a href="https://developers.google.com/chat/api/reference/rest/v1/users.spaces.threads/getThreadReadState">Get thread read state</a> to return details about a user's read state within a thread.</p></li> </ul> </div> <h2 id="November_30_2023" data-text="November 30, 2023" tabindex="-1">November 30, 2023</h2> <div id="25f2dfa6" class="release-feature"> <p><strong>(Generally available)</strong>: You can now retrieve Google Groups that are members of a Google Chat space using <code translate="no" dir="ltr">ListMemberships</code> (with the <code translate="no" dir="ltr">showGroups</code> option) and <code translate="no" dir="ltr">GetMembership</code>. If you try to <a href="https://developers.google.com/chat/api/reference/rest/v1/spaces.members/create">add a member</a> to a Chat space while this member is already part of a Google Group in the same space, it triggers an <code translate="no" dir="ltr">already exists</code> error (HTTP status code <code translate="no" dir="ltr">409</code>).</p> </div> <h2 id="November_28_2023" data-text="November 28, 2023" tabindex="-1">November 28, 2023</h2> <div id="310c757a" class="release-feature"> <p><strong>(Developer Preview):</strong> Your Chat app can now send an <a href="https://developers.google.com/chat/send-app-home-card-message">app home card message</a> to a user. This message is a customizable card message that a Chat app sends to a user when they open a direct message with the Chat app.</p> </div> <h2 id="November_15_2023" data-text="November 15, 2023" tabindex="-1">November 15, 2023</h2> <div id="f19d7eb1" class="release-changed"> <p><strong>(Generally available)</strong>: <a href="https://m3.material.io/styles">Google Material Design 3 styles</a>, including <a href="https://fonts.google.com/icons">icons</a>, are available for cards in Chat apps.</p> </div> <h2 id="November_06_2023" data-text="November 06, 2023" tabindex="-1">November 06, 2023</h2> <div id="b7757140" class="release-feature"> <p><strong>(Generally available)</strong>: You can now call the Chat API from Apps Script with the Advanced Chat Service. To learn how, see <a href="https://developers.google.com/apps-script/advanced/chat">Advanced Chat Service</a> in the Apps Script reference documentation.</p> <p>We've also updated the Apps Script code samples to use the Advanced Chat Service in the following Chat API developer guides:</p> <ul> <li><a href="https://developers.google.com/chat/api/guides/auth/service-accounts">Authenticate as an app</a></li> <li><a href="https://developers.google.com/chat/api/guides/auth/users">Authenticate as a user</a></li> <li><a href="https://developers.google.com/chat/tutorial-incident-response">Try it - Respond to Incidents</a></li> </ul> </div> <h2 id="November_03_2023" data-text="November 03, 2023" tabindex="-1">November 03, 2023</h2> <div id="50f4eef2" class="release-announcement"> <p>Users can now install Google Chat apps from app listing pages on the Google Workspace Marketplace. For details, see <a href="https://developers.google.com/chat/how-tos/apps-publish#use-install-apps">Publish Google Chat apps</a>.</p> </div> <h2 id="October_30_2023" data-text="October 30, 2023" tabindex="-1">October 30, 2023</h2> <div id="905e0847" class="release-feature"> <p><strong>(Developer Preview)</strong>: Google Chat apps can now subscribe to the following types of events about message reactions:</p> <ul> <li>New reactions</li> <li>Removed reactions</li> <li>Multiple reactions have changed.</li> </ul> <p>For details, see <a href="https://developers.google.com/workspace/events/guides/events-chat">Subscribe to Google Chat events</a>.</p> </div> <h2 id="October_24_2023" data-text="October 24, 2023" tabindex="-1">October 24, 2023</h2> <div id="66091000" class="release-feature"> <p><strong>(Developer Preview):</strong> You can now migrate historical memberships when you <a href="https://developers.google.com/chat/api/guides/import-data#historical_memberships">import data into Google Chat</a>.</p> </div> <h2 id="October_17_2023" data-text="October 17, 2023" tabindex="-1">October 17, 2023</h2> <div id="e6e393eb" class="release-feature"> <p><strong>(Generally available)</strong>: Multiselect menus for cards and dialogs are now generally available. Multiselect menus let users select Google Workspace users and spaces, or select items from external data sources. For details, see <a href="https://developers.google.com/chat/ui/widgets/selection-input#multiselect-menu">Selection input</a>.</p> </div> <h2 id="October_03_2023" data-text="October 03, 2023" tabindex="-1">October 03, 2023</h2> <div id="5bbd7dbb" class="release-announcement"> <p><strong>(Developer Preview):</strong> Google Chat apps can now monitor and receive events about Google Chat spaces. The following event types are supported:</p> <ul> <li>New messages</li> <li>Updated messages</li> <li>New members</li> <li>Updated members</li> <li>Removed members</li> <li>Updated space</li> <li>Deleted space</li> </ul> <p>To receive events, Chat apps create subscriptions using the Google Workspace Events API. To learn more, see the <a href="https://developers.google.com/workspace/events/guides">Google Workspace Events API overview</a>.</p> </div> <h2 id="September_28_2023" data-text="September 28, 2023" tabindex="-1">September 28, 2023</h2> <div id="a13875ad" class="release-feature"> <p>You can now use the <code translate="no" dir="ltr">formattedText</code> field to <a href="https://developers.google.com/chat/format-messages#view_text_formatting_sent_in_a_message">view the text formatting sent in a message</a>.</p> </div> <h2 id="September_15_2023" data-text="September 15, 2023" tabindex="-1">September 15, 2023</h2> <div id="64c324e3" class="release-feature"> <p><strong><a href="https://developers.google.com/workspace/preview">Developer Preview</a></strong>: You can now update a human user's membership in a Chat space. For example, you can use the <a href="https://developers.google.com/chat/api/reference/rest/v1/spaces.members/patch"><code translate="no" dir="ltr">spaces.members.patch</code> method</a> to update membership roles from <code translate="no" dir="ltr">member</code> to <code translate="no" dir="ltr">manager</code> and from <code translate="no" dir="ltr">manager</code> to <code translate="no" dir="ltr">member</code>.</p> </div> <h2 id="August_08_2023" data-text="August 08, 2023" tabindex="-1">August 08, 2023</h2> <div id="905f9425" class="release-announcement"> <p>Google Chat users outside of Google Workspace organizations can now install and use public Google Chat apps. To learn about how users discover and use Chat apps, see <a href="https://developers.google.com/chat/how-tos/apps-publish">Publish Google Chat apps</a>.</p> </div> <h2 id="July_28_2023" data-text="July 28, 2023" tabindex="-1">July 28, 2023</h2> <div id="e2c05162" class="release-feature"> <p>Google Chat apps that <a href="https://developers.google.com/chat/api/guides/auth/users">authenticate as a user</a> can now reference users with their email address. The following Chat API methods support using email addresses to reference users:</p> <ul> <li><a href="https://developers.google.com/chat/api/reference/rest/v1/spaces/setup">Set up a space</a></li> <li><a href="https://developers.google.com/chat/api/reference/rest/v1/spaces/findDirectMessage">Find a direct message</a></li> <li><a href="https://developers.google.com/chat/api/reference/rest/v1/spaces.members/create">Create a membership</a></li> <li><a href="https://developers.google.com/chat/api/reference/rest/v1/spaces.members/get">Get a membership</a></li> <li><a href="https://developers.google.com/chat/api/reference/rest/v1/spaces.members/delete">Delete a membership</a></li> </ul> <p>Chat apps can also use email addresses to @mention users. To learn more, see <a href="https://developers.google.com/chat/format-messages#messages-@mention">Mention users in a message</a>.</p> </div> <h2 id="July_13_2023" data-text="July 13, 2023" tabindex="-1">July 13, 2023</h2> <div id="386fd975" class="release-feature"> <p>You can now specify <a href="https://developers.google.com/chat/api/reference/rest/v1/cards#dividerstyle">no divider between card sections</a>.</p> </div> <h2 id="July_10_2023" data-text="July 10, 2023" tabindex="-1">July 10, 2023</h2> <div id="2ca371c0" class="release-feature"> <p>Multiselect menus are now available in <a href="https://developers.google.com/workspace/preview">Developer Preview</a>. Multiselect menus help users input static and dynamic data for Google Chat apps. To learn more, see the <a href="https://developers.google.com/chat/ui/widgets/selection-input#multiselect-menu">Selection input widget documentation</a>.</p> </div> <h2 id="June_07_2023" data-text="June 07, 2023" tabindex="-1">June 07, 2023</h2> <div id="f401bfca" class="release-feature"> <p><strong>Developer Preview</strong>: Available as part of the <a href="https://developers.google.com/workspace/preview">Google Workspace Developer Preview Program</a>, which grants early access to certain features.</p> <p><a href="https://developers.google.com/chat/api/guides/import-data-overview">Import data from your other messaging platforms</a> into Google Chat. You can import existing messages, attachments, reactions, memberships, and space entities from your other messaging platforms to corresponding Chat API resources. You can import this data by creating Chat spaces in import mode and importing data into those spaces.</p> </div> <h2 id="May_25_2023" data-text="May 25, 2023" tabindex="-1">May 25, 2023</h2> <div id="6cc0a268" class="release-announcement"> <p>You can <a href="https://developers.google.com/chat/api/guides/auth/users">authenticate and authorize users' credentials</a> to access the Chat API by using OAuth 2.0. Authenticating and authorizing with user credentials lets Chat apps access user data and perform operations on the authenticated user's behalf. When an app performs an action with user authentication (such as creating a space), Google Chat might display an attribution message that tells users the name of the app that performed the action for the user who authorized it.</p> <p><a href="https://developers.google.com/chat/api/guides/auth#scopes">Oauth 2.0 scopes</a> are available for you to request and your users to consent to.</p> <p><a href="https://developers.google.com/chat/api/guides/limits">Quotas and limits</a> are applied to the Chat API.</p> <p>The following methods are available:</p> <ul> <li><a href="https://developers.google.com/chat/api/reference/rest/v1/spaces.messages/create">Create a message</a></li> <li><a href="https://developers.google.com/chat/api/reference/rest/v1/spaces.messages/delete">Delete a message</a></li> <li><a href="https://developers.google.com/chat/api/reference/rest/v1/spaces.messages/get">Get a message</a></li> <li><a href="https://developers.google.com/chat/api/reference/rest/v1/spaces.messages/update">Update a message</a></li> <li><a href="https://developers.google.com/chat/api/reference/rest/v1/spaces.messages/list">List messages</a></li> <li><a href="https://developers.google.com/chat/api/reference/rest/v1/spaces.messages.reactions/create">Create a reaction</a></li> <li><a href="https://developers.google.com/chat/api/reference/rest/v1/spaces.messages.reactions/delete">Delete a reaction</a></li> <li><a href="https://developers.google.com/chat/api/reference/rest/v1/spaces.messages.reactions/list">List reactions</a></li> <li><a href="https://developers.google.com/chat/api/reference/rest/v1/spaces.members/create">Create a membership</a></li> <li><a href="https://developers.google.com/chat/api/reference/rest/v1/spaces.members/delete">Delete a membership</a></li> <li><a href="https://developers.google.com/chat/api/reference/rest/v1/spaces.members/get">Get a membership</a></li> <li><a href="https://developers.google.com/chat/api/reference/rest/v1/spaces.members/list">List memberships</a></li> <li><a href="https://developers.google.com/chat/api/reference/rest/v1/spaces/create">Create a space</a></li> <li><a href="https://developers.google.com/chat/api/reference/rest/v1/spaces/delete">Delete a space</a></li> <li><a href="https://developers.google.com/chat/api/reference/rest/v1/spaces/get">Get a space</a></li> <li><a href="https://developers.google.com/chat/api/reference/rest/v1/spaces/findDirectMessage">Find a direct message</a></li> <li><a href="https://developers.google.com/chat/api/reference/rest/v1/spaces/list">List spaces</a></li> <li><a href="https://developers.google.com/chat/api/reference/rest/v1/spaces/patch">Update a space</a></li> <li><a href="https://developers.google.com/chat/api/reference/rest/v1/spaces/setup">Set up a space</a> (create and populate)</li> <li><a href="https://developers.google.com/chat/api/reference/rest/v1/media/download">Download media</a></li> <li><a href="https://developers.google.com/chat/api/reference/rest/v1/media/upload">Upload media</a></li> </ul> </div> <h2 id="March_06_2023" data-text="March 06, 2023" tabindex="-1">March 06, 2023</h2> <div id="3d3c1dde" class="release-feature"> <p>You can now design your Chat app to include checkboxes, radio buttons, switches, or a dropdown menu in your Chat app. For more information, see <a href="https://developers.google.com/chat/ui/widgets/selection-input"><code translate="no" dir="ltr">SelectionInput</code> widget</a>.</p> </div> <h2 id="January_18_2023" data-text="January 18, 2023" tabindex="-1">January 18, 2023</h2> <div id="546cb427" class="release-feature"> <p>Chat apps can now receive and respond to user-submitted information in cards and dialogs. For more information, see <a href="https://developers.google.com/chat/ui/read-form-data">Process information inputted by users</a>.</p> </div> <h2 id="January_17_2023" data-text="January 17, 2023" tabindex="-1">January 17, 2023</h2> <div id="9bf549fb" class="release-changed"> <p><a href="https://developers.google.com/chat/api/reference/rest/v1/cards#button">Buttons</a> can now include text and an icon. Previously, only an icon or only text was allowed in buttons. </p> </div> <h2 id="June_28_2022" data-text="June 28, 2022" tabindex="-1">June 28, 2022</h2> <div id="f3d4130f" class="release-deprecated"> <p><a href="https://developers.google.com/chat/api/reference/rest/v1/cards-v1">Cards v1</a> is deprecated. Instead, use <a href="https://developers.google.com/chat/api/reference/rest/v1/cards">Cards v2</a>.</p> </div> <h2 id="June_16_2022" data-text="June 16, 2022" tabindex="-1">June 16, 2022</h2> <div id="28826b48" class="release-feature"> <p>On the web, Google Chat cards now match <a href="https://material.io/">Google Material Design</a>. The Material Design cards feature aesthetic enhancements that improve usability and render faster.</p> </div> <h2 id="May_15_2022" data-text="May 15, 2022" tabindex="-1">May 15, 2022</h2> <div id="d2e08549" class="release-feature"> <p><strong>Developer Preview</strong>: Available as part of the <a href="https://developers.google.com/workspace/preview">Google Workspace Developer Preview Program</a>, which grants early access to certain features.</p> <p>On mobile devices, Google Chat <a href="https://developers.google.com/chat/api/reference/rest/v1/cards">cards</a> now match <a href="https://material.io/">Google Material Design</a>. The Material Design cards feature aesthetic enhancements that improve usability and render faster.</p> </div> </section> </section> <devsite-hats-survey class="nocontent" hats-id="SrQ6jyjMz0eGRuQsCn30Qs2P7pj5" listnr-id="717201"></devsite-hats-survey> </div> <devsite-recommendations display="in-page" hidden yield> </devsite-recommendations> <devsite-thumb-rating position="footer"> </devsite-thumb-rating> <devsite-feedback position="footer" project-name="Google Chat" product-id="717201" bucket="google-chat" context="" version="t-devsite-webserver-20241114-r00-rc02.464922260396498922" data-label="Send Feedback Button" track-type="feedback" track-name="sendFeedbackLink" track-metadata-position="footer" class="nocontent" project-feedback-url="https://issuetracker.google.com/issues/new?component=350158&template=1047215" project-icon="https://www.gstatic.com/images/branding/productlogos/chat_2023q4/v2/web-64dp/logo_chat_2023q4_color_1x_web_64dp.png" project-support-url="https://developers.google.com/workspace/chat/support" > <button> Send feedback </button> </devsite-feedback> <devsite-recommendations id="recommendations-link" yield></devsite-recommendations> <div class="devsite-floating-action-buttons"> </div> </article> <devsite-content-footer class="nocontent"> <p>Except as otherwise noted, the content of this page is licensed under the <a href="https://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 License</a>, and code samples are licensed under the <a href="https://www.apache.org/licenses/LICENSE-2.0">Apache 2.0 License</a>. For details, see the <a href="https://developers.google.com/site-policies">Google Developers Site Policies</a>. Java is a registered trademark of Oracle and/or its affiliates.</p> <p>Last updated 2024-11-06 UTC.</p> </devsite-content-footer> <devsite-notification > </devsite-notification> <div class="devsite-content-data"> <template class="devsite-thumb-rating-feedback"> <devsite-feedback position="thumb-rating" project-name="Google Chat" product-id="717201" bucket="google-chat" context="" version="t-devsite-webserver-20241114-r00-rc02.464922260396498922" data-label="Send Feedback Button" track-type="feedback" track-name="sendFeedbackLink" track-metadata-position="thumb-rating" class="nocontent" project-feedback-url="https://issuetracker.google.com/issues/new?component=350158&template=1047215" project-icon="https://www.gstatic.com/images/branding/productlogos/chat_2023q4/v2/web-64dp/logo_chat_2023q4_color_1x_web_64dp.png" project-support-url="https://developers.google.com/workspace/chat/support" > <button> Need to tell us more? </button> </devsite-feedback> </template> <template class="devsite-content-data-template"> [[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2024-11-06 UTC."],[],[]] </template> </div> </devsite-content> </main> <devsite-footer-promos class="devsite-footer"> <nav class="devsite-footer-promos nocontent" aria-label="Promotions"> <ul class="devsite-footer-promos-list"> <li class="devsite-footer-promo"> <a href="https://developers.googleblog.com/search/?query=Google+Workspace" class="devsite-footer-promo-title gc-analytics-event" data-category="Site-Wide Custom Events" data-category="Workspace Footer" target="_blank" data-label="Promo - Google Workspace Developers Blog" > <picture> <img class="devsite-footer-promo-icon" src="https://www.gstatic.com/images/branding/product/2x/google_cloud_64dp.png" loading="lazy" alt="Blog"> </picture> <span class="devsite-footer-promo-label"> Blog </span> </a> <div class="devsite-footer-promo-description">Read the Google Workspace Developers blog</div> </li> <li class="devsite-footer-promo"> <a href="https://twitter.com/workspacedevs" class="devsite-footer-promo-title gc-analytics-event" data-category="Site-Wide Custom Events" data-category="Workspace Footer" target="_blank" data-label="Promo - Google Workspace on X (Twitter)" > <picture> <img class="devsite-footer-promo-icon" src="/static/site-assets/logo-x.svg" loading="lazy" alt="X (Twitter)"> </picture> <span class="devsite-footer-promo-label"> X (Twitter) </span> </a> <div class="devsite-footer-promo-description">Follow @workspacedevs on X (Twitter)</div> </li> <li class="devsite-footer-promo"> <a href="https://github.com/googleworkspace" class="devsite-footer-promo-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Promo - Google Workspace Github" data-category="Workspace Footer" target="_blank" > <picture> <img class="devsite-footer-promo-icon" src="/static/site-assets/logo-github.svg" loading="lazy" alt="Code Samples"> </picture> <span class="devsite-footer-promo-label"> Code Samples </span> </a> <div class="devsite-footer-promo-description">Explore our sample apps or copy them to build your own</div> </li> <li class="devsite-footer-promo"> <a href="https://codelabs.developers.google.com/?product=googleworkspace" class="devsite-footer-promo-title gc-analytics-event" data-category="Site-Wide Custom Events" target="_blank" data-label="Promo - Google Workspace Codelabs" data-category="Workspace Footer" > <picture> <img class="devsite-footer-promo-icon" src="/static/site-assets/developers-logo-color.svg" loading="lazy" alt="Codelabs"> </picture> <span class="devsite-footer-promo-label"> Codelabs </span> </a> <div class="devsite-footer-promo-description">Try a guided, hands-on coding experience</div> </li> <li class="devsite-footer-promo"> <a href="https://www.youtube.com/channel/UCUcg6az6etU_gRtZVAhBXaw" class="devsite-footer-promo-title gc-analytics-event" data-category="Site-Wide Custom Events" data-category="Workspace Footer" target="_blank" data-label="Promo - Google Workspace on YouTube" > <picture> <img class="devsite-footer-promo-icon" src="/static/site-assets/logo-youtube.svg" loading="lazy" alt="Videos"> </picture> <span class="devsite-footer-promo-label"> Videos </span> </a> <div class="devsite-footer-promo-description">Subscribe to our YouTube channel</div> </li> </ul> </nav> </devsite-footer-promos> <devsite-footer-linkboxes class="devsite-footer"> <nav class="devsite-footer-linkboxes nocontent" aria-label="Footer links"> <ul class="devsite-footer-linkboxes-list"> <li class="devsite-footer-linkbox "> <h3 class="devsite-footer-linkbox-heading no-link">Google Workspace for Developers</h3> <ul class="devsite-footer-linkbox-list"> <li class="devsite-footer-linkbox-item"> <a href="/workspace" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-category="Workspace Footer"data-label="Linkbox - Platform overview"> Platform overview </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/workspace/products" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Linkbox - Developer products"data-category="Workspace Footer"> Developer products </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/workspace/support" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-category="Workspace Footer"data-label="Linkbox - Developer support"> Developer support </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/workspace/terms" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-category="Workspace Footer"data-label="Linkbox - Terms of Service"> Terms of Service </a> </li> </ul> </li> <li class="devsite-footer-linkbox "> <h3 class="devsite-footer-linkbox-heading no-link">Tools</h3> <ul class="devsite-footer-linkbox-list"> <li class="devsite-footer-linkbox-item"> <a href="https://admin.google.com/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-category="Workspace Footer"data-label="Linkbox - Admin console"target="admin-console"> Admin console </a> </li> <li class="devsite-footer-linkbox-item"> <a href="https://script.google.com/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" target="_blank"data-label="Linkbox - Apps Script Dashboard"data-category="Workspace Footer"> Apps Script Dashboard </a> </li> <li class="devsite-footer-linkbox-item"> <a href="https://console.cloud.google.com/workspace-api" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-category="Workspace Footer"data-label="Linkbox - Google Cloud console"target="console"> Google Cloud console </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/workspace/explore" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-category="Workspace Footer"data-label="Linkbox - APIs Explorer"> APIs Explorer </a> </li> </ul> </li> <li class="devsite-footer-linkbox "> <h3 class="devsite-footer-linkbox-heading no-link">Connect</h3> <ul class="devsite-footer-linkbox-list"> <li class="devsite-footer-linkbox-item"> <a href="https://developers.googleblog.com/search/?query=Google+Workspace" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-category="Workspace Footer"target="_blank"data-label="Linkbox - Blog"> Blog </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/workspace/newsletters" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-category="Workspace Footer"data-label="Linkbox - Newsletter"> Newsletter </a> </li> <li class="devsite-footer-linkbox-item"> <a href="https://twitter.com/workspacedevs" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" target="_blank"data-category="Workspace Footer"data-label="Linkbox - X (Twitter)"> X (Twitter) </a> </li> <li class="devsite-footer-linkbox-item"> <a href="https://www.youtube.com/channel/UCUcg6az6etU_gRtZVAhBXaw" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-category="Workspace Footer"data-label="Linkbox - YouTube"target="_blank"> YouTube </a> </li> </ul> </li> </ul> </nav> </devsite-footer-linkboxes> <devsite-footer-utility class="devsite-footer"> <div class="devsite-footer-utility nocontent"> <nav class="devsite-footer-sites" aria-label="Other Google Developers websites"> <a href="https://developers.google.com/" class="devsite-footer-sites-logo-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Google Developers Link"> <picture> <img class="devsite-footer-sites-logo" src="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/images/lockup-google-for-developers.svg" loading="lazy" alt="Google Developers"> </picture> </a> <ul class="devsite-footer-sites-list"> <li class="devsite-footer-sites-item"> <a href="//developer.android.com" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Android Link" > Android </a> </li> <li class="devsite-footer-sites-item"> <a href="//developer.chrome.com/home" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Chrome Link" > Chrome </a> </li> <li class="devsite-footer-sites-item"> <a href="//firebase.google.com" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Firebase Link" > Firebase </a> </li> <li class="devsite-footer-sites-item"> <a href="//cloud.google.com" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Google Cloud Platform Link" > Google Cloud Platform </a> </li> <li class="devsite-footer-sites-item"> <a href="//ai.google.dev/" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Google AI Link" > Google AI </a> </li> <li class="devsite-footer-sites-item"> <a href="/products" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer All products Link" > All products </a> </li> </ul> </nav> <nav class="devsite-footer-utility-links" aria-label="Utility links"> <ul class="devsite-footer-utility-list"> <li class="devsite-footer-utility-item "> <a class="devsite-footer-utility-link gc-analytics-event" href="/terms/site-terms" data-category="Site-Wide Custom Events" data-label="Footer Terms link" > Terms </a> </li> <li class="devsite-footer-utility-item "> <a class="devsite-footer-utility-link gc-analytics-event" href="//policies.google.com/privacy" data-category="Site-Wide Custom Events" data-label="Footer Privacy link" > Privacy </a> </li> <li class="devsite-footer-utility-item glue-cookie-notification-bar-control"> <a class="devsite-footer-utility-link gc-analytics-event" href="#" data-category="Site-Wide Custom Events" data-label="Footer Manage cookies link" aria-hidden="true" > Manage cookies </a> </li> <li class="devsite-footer-utility-item devsite-footer-utility-button"> <span class="devsite-footer-utility-description">Sign up for the Google for Developers newsletter</span> <a class="devsite-footer-utility-link gc-analytics-event" href="/newsletter/subscribe" data-category="Site-Wide Custom Events" data-label="Footer Subscribe link" > Subscribe </a> </li> </ul> <devsite-language-selector> <ul role="presentation"> <li role="presentation"> <a role="menuitem" lang="en" >English</a> </li> <li role="presentation"> <a role="menuitem" lang="de" >Deutsch</a> </li> <li role="presentation"> <a role="menuitem" lang="es" >Español</a> </li> <li role="presentation"> <a role="menuitem" lang="fr" >Français</a> </li> <li role="presentation"> <a role="menuitem" lang="id" >Indonesia</a> </li> <li role="presentation"> <a role="menuitem" lang="pt_br" >Português – Brasil</a> </li> <li role="presentation"> <a role="menuitem" lang="ru" >Русский</a> </li> <li role="presentation"> <a role="menuitem" lang="zh_cn" >中文 – 简体</a> </li> <li role="presentation"> <a role="menuitem" lang="ja" >日本語</a> </li> <li role="presentation"> <a role="menuitem" lang="ko" >한국어</a> </li> </ul> </devsite-language-selector> </nav> </div> </devsite-footer-utility> <devsite-panel></devsite-panel> <devsite-concierge data-info-panel data-ai-panel data-api-explorer-panel > </devsite-concierge> </section></section> <devsite-sitemask></devsite-sitemask> <devsite-snackbar></devsite-snackbar> <devsite-tooltip ></devsite-tooltip> <devsite-heading-link></devsite-heading-link> <devsite-analytics> <script type="application/json" analytics>[{"dimensions": {"dimension11": false, "dimension6": "en", "dimension1": "Signed out", "dimension5": "en", "dimension4": "Google Chat", "dimension3": false}, "gaid": "UA-24532603-1", "metrics": {"ratings_count": "metric2", "ratings_value": "metric1"}, "purpose": 1}]</script> <script type="application/json" tag-management>{"at": "True", "ga4": [{"id": "G-272J68FCRF", "purpose": 1}, {"id": "G-YYP88VSJWR", "purpose": 0}], "ga4p": [{"id": "G-272J68FCRF", "purpose": 1}], "gtm": [], "parameters": {"internalUser": "False", "language": {"machineTranslated": "False", "requested": "en", "served": "en"}, "pageType": "article", "projectName": "Google Chat", "signedIn": "False", "tenant": "developers", "recommendations": {"sourcePage": "", "sourceType": 0, "sourceRank": 0, "sourceIdenticalDescriptions": 0, "sourceTitleWords": 0, "sourceDescriptionWords": 0, "experiment": ""}, "experiment": {"ids": ""}}}</script> </devsite-analytics> <devsite-badger></devsite-badger> <script nonce="C4fGxXTTkJBh7REu938D30ePUtc67J"> (function(d,e,v,s,i,t,E){d['GoogleDevelopersObject']=i; t=e.createElement(v);t.async=1;t.src=s;E=e.getElementsByTagName(v)[0]; E.parentNode.insertBefore(t,E);})(window, document, 'script', 'https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/js/app_loader.js', '[1,"en",null,"/js/devsite_app_module.js","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers","https://developers-dot-devsite-v2-prod.appspot.com",null,null,["/_pwa/developers/manifest.json","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/images/video-placeholder.svg","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/images/favicon-new.png","https://fonts.googleapis.com/css?family=Google+Sans:400,500|Roboto:400,400italic,500,500italic,700,700italic|Roboto+Mono:400,500,700&display=swap"],1,null,[1,6,8,12,14,17,21,25,50,52,63,70,75,76,80,87,91,92,93,97,98,100,101,102,103,104,105,107,108,109,110,112,113,117,118,120,122,124,125,126,127,129,130,131,132,133,134,135,136,138,140,141,147,148,149,151,152,156,157,158,159,161,163,164,168,169,170,179,180,182,183,186,191,193,196],"AIzaSyAP-jjEJBzmIyKR4F-3XITp8yM9T1gEEI8","AIzaSyB6xiKGDR5O3Ak2okS4rLkauxGUG7XP0hg","developers.google.com","AIzaSyAQk0fBONSGUqCNznf6Krs82Ap1-NV6J4o","AIzaSyCCxcqdrZ_7QMeLCRY20bh_SXdAYqy70KY",null,null,null,["Cloud__enable_cloud_shell","MiscFeatureFlags__developers_footer_image","MiscFeatureFlags__developers_footer_dark_image","Search__enable_ai_search_summaries_restricted","Cloud__enable_cloud_dlp_service","CloudShell__cloud_shell_button","BookNav__enable_tenant_cache_key","DevPro__enable_developer_subscriptions","Profiles__enable_release_notes_notifications","Cloud__enable_cloudx_experiment_ids","Profiles__enable_public_developer_profiles","Experiments__reqs_query_experiments","Concierge__enable_pushui","Search__enable_dynamic_content_confidential_banner","Concierge__enable_concierge_restricted","Cloud__enable_legacy_calculator_redirect","Cloud__enable_cloud_facet_chat","Profiles__enable_recognition_badges","Profiles__require_profile_eligibility_for_signin","Search__enable_ai_search_summaries","DevPro__enable_cloud_innovators_plus","Search__enable_suggestions_from_borg","Search__enable_ai_eligibility_checks","CloudShell__cloud_code_overflow_menu","Profiles__enable_completecodelab_endpoint","Search__enable_page_map","Profiles__enable_profile_collections","Profiles__enable_dashboard_curated_recommendations","Profiles__enable_page_saving","MiscFeatureFlags__enable_project_variables","Cloud__enable_llm_concierge_chat","MiscFeatureFlags__enable_firebase_utm","Concierge__enable_concierge","Profiles__enable_developer_profiles_callout","Significatio__enable_by_tenant","MiscFeatureFlags__enable_explain_this_code","Cloud__enable_cloud_shell_fte_user_flow","Profiles__enable_awarding_url","TpcFeatures__enable_mirror_tenant_redirects","Cloud__enable_free_trial_server_call","TpcFeatures__enable_required_headers","MiscFeatureFlags__enable_variable_operator","EngEduTelemetry__enable_engedu_telemetry","Analytics__enable_clearcut_logging","Cloud__enable_cloudx_ping","Profiles__enable_complete_playlist_endpoint","MiscFeatureFlags__enable_view_transitions","MiscFeatureFlags__emergency_css"],null,null,"AIzaSyBLEMok-5suZ67qRPzx0qUtbnLmyT_kCVE","https://developerscontentserving-pa.clients6.google.com","AIzaSyCM4QpTRSqP5qI4Dvjt4OAScIN8sOUlO-k","https://developerscontentsearch-pa.clients6.google.com",1,4,null,"https://developerprofiles-pa.clients6.google.com",[1,"developers","Google for Developers","developers.google.com",null,"developers-dot-devsite-v2-prod.appspot.com",null,null,[1,1,[1],null,null,null,null,null,null,null,null,[1],null,null,null,null,null,null,[1],[1,null,null,[1,20],"/recommendations/information"],null,null,null,[1,1,1],[1,1,null,1,1]],null,[null,null,null,null,null,null,"/images/lockup-new.svg","/images/touchicon-180-new.png",null,null,null,null,1,null,null,null,null,null,null,null,null,1,null,null,null,"/images/lockup-dark-theme-new.svg",[]],[],null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,[6,1,14,15,20,22,23,29,32,36],null,[[null,null,null,[3,7,10,2,39,17,4,32,24,11,12,13,34,15,25],null,null,[1,[["docType","Choose a content type",[["Tutorial",null,null,null,null,null,null,null,null,"Tutorial"],["Guide",null,null,null,null,null,null,null,null,"Guide"],["Sample",null,null,null,null,null,null,null,null,"Sample"]]],["product","Choose a product",[["Android",null,null,null,null,null,null,null,null,"Android"],["ARCore",null,null,null,null,null,null,null,null,"ARCore"],["ChromeOS",null,null,null,null,null,null,null,null,"ChromeOS"],["Firebase",null,null,null,null,null,null,null,null,"Firebase"],["Flutter",null,null,null,null,null,null,null,null,"Flutter"],["Assistant",null,null,null,null,null,null,null,null,"Google Assistant"],["GoogleCloud",null,null,null,null,null,null,null,null,"Google Cloud"],["GoogleMapsPlatform",null,null,null,null,null,null,null,null,"Google Maps Platform"],["GooglePay",null,null,null,null,null,null,null,null,"Google Pay & Google Wallet"],["GooglePlay",null,null,null,null,null,null,null,null,"Google Play"],["Tensorflow",null,null,null,null,null,null,null,null,"TensorFlow"]]],["category","Choose a topic",[["AiAndMachineLearning",null,null,null,null,null,null,null,null,"AI and Machine Learning"],["Data",null,null,null,null,null,null,null,null,"Data"],["Enterprise",null,null,null,null,null,null,null,null,"Enterprise"],["Gaming",null,null,null,null,null,null,null,null,"Gaming"],["Mobile",null,null,null,null,null,null,null,null,"Mobile"],["Web",null,null,null,null,null,null,null,null,"Web"]]]]]],[1,1],null,1],[[["UA-24532603-1"],["UA-22084204-5"],null,null,["UA-24532603-5"],null,null,[["G-272J68FCRF"],null,null,[["G-272J68FCRF",2]]],[["UA-24532603-1",2]],null,[["UA-24532603-5",2]],null,1],[[13,10],[12,9],[3,2],[6,5],[14,11],[16,13],[5,4],[11,8],[4,3],[1,1],[15,12]],[[2,2],[1,1]]],null,4,null,null,null,null,null,null,null,null,null,null,null,null,null,"developers.devsite.google"],null,"pk_live_5170syrHvgGVmSx9sBrnWtA5luvk9BwnVcvIi7HizpwauFG96WedXsuXh790rtij9AmGllqPtMLfhe2RSwD6Pn38V00uBCydV4m"]') </script> <devsite-a11y-announce></devsite-a11y-announce> </body> </html>