CINXE.COM
Google Apps Script Chat app quickstart | Google Chat | Google Developers
<!doctype html> <html lang="en" dir="ltr"> <head><script type="text/javascript" src="/_static/js/bundle-playback.js?v=HxkREWBo" charset="utf-8"></script> <script type="text/javascript" src="/_static/js/wombat.js?v=txqj7nKC" charset="utf-8"></script> <script>window.RufflePlayer=window.RufflePlayer||{};window.RufflePlayer.config={"autoplay":"on","unmuteOverlay":"hidden"};</script> <script type="text/javascript" src="/_static/js/ruffle/ruffle.js"></script> <script type="text/javascript"> __wm.init("http://web.archive.org/web"); __wm.wombat("https://developers.google.com/chat/quickstart/apps-script-app","20230326172402","http://web.archive.org/","web","/_static/", "1679851442"); </script> <link rel="stylesheet" type="text/css" href="/_static/css/banner-styles.css?v=S1zqJCYt" /> <link rel="stylesheet" type="text/css" href="/_static/css/iconochive.css?v=3PDvdIFv" /> <!-- End Wayback Rewrite JS Include --> <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 Developers"> <meta property="og:type" content="website"><meta name="theme-color" content="#ffffff"><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="/web/20230326172402/https://developers.google.com/_pwa/developers/manifest.json" crossorigin="use-credentials"> <link rel="preconnect" href="//web.archive.org/web/20230326172402/https://www.gstatic.com/" crossorigin> <link rel="preconnect" href="//web.archive.org/web/20230326172402/https://fonts.gstatic.com/" crossorigin> <link rel="preconnect" href="//web.archive.org/web/20230326172402/https://fonts.googleapis.com/" crossorigin> <link rel="preconnect" href="//web.archive.org/web/20230326172402/https://apis.google.com/" crossorigin> <link rel="preconnect" href="//web.archive.org/web/20230326172402/https://www.google-analytics.com/" crossorigin><link rel="stylesheet" href="//web.archive.org/web/20230326172402cs_/https://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="//web.archive.org/web/20230326172402cs_/https://fonts.googleapis.com/css2?family=Material+Icons&family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=block"><link rel="stylesheet" href="http://web.archive.org/web/20230326172402cs_/https://www.gstatic.com/devrel-devsite/prod/ve286fa3f99aa90bc7ef7460968844e5bb93251ce750a58802f281151c87037d6/developers/css/app.css"> <link rel="shortcut icon" href="http://web.archive.org/web/20230326172402im_/https://www.gstatic.com/devrel-devsite/prod/ve286fa3f99aa90bc7ef7460968844e5bb93251ce750a58802f281151c87037d6/developers/images/favicon.png"> <link rel="apple-touch-icon" href="http://web.archive.org/web/20230326172402im_/https://www.gstatic.com/devrel-devsite/prod/ve286fa3f99aa90bc7ef7460968844e5bb93251ce750a58802f281151c87037d6/developers/images/touchicon-180.png"><link rel="canonical" href="http://web.archive.org/web/20230326172402/https://developers.google.com/chat/quickstart/apps-script-app"><link rel="search" type="application/opensearchdescription+xml" title="Google Developers" href="http://web.archive.org/web/20230326172402/https://developers.google.com/s/opensearch.xml"> <link rel="alternate" hreflang="en" href="http://web.archive.org/web/20230326172402/https://developers.google.com/chat/quickstart/apps-script-app"/><link rel="alternate" hreflang="x-default" href="http://web.archive.org/web/20230326172402/https://developers.google.com/chat/quickstart/apps-script-app"/><link rel="alternate" hreflang="ar" href="http://web.archive.org/web/20230326172402/https://developers.google.com/chat/quickstart/apps-script-app?hl=ar"/><link rel="alternate" hreflang="bn" href="http://web.archive.org/web/20230326172402/https://developers.google.com/chat/quickstart/apps-script-app?hl=bn"/><link rel="alternate" hreflang="zh-Hans" href="http://web.archive.org/web/20230326172402/https://developers.google.com/chat/quickstart/apps-script-app?hl=zh-cn"/><link rel="alternate" hreflang="zh-Hant" href="http://web.archive.org/web/20230326172402/https://developers.google.com/chat/quickstart/apps-script-app?hl=zh-tw"/><link rel="alternate" hreflang="fa" href="http://web.archive.org/web/20230326172402/https://developers.google.com/chat/quickstart/apps-script-app?hl=fa"/><link rel="alternate" hreflang="fr" href="http://web.archive.org/web/20230326172402/https://developers.google.com/chat/quickstart/apps-script-app?hl=fr"/><link rel="alternate" hreflang="de" href="http://web.archive.org/web/20230326172402/https://developers.google.com/chat/quickstart/apps-script-app?hl=de"/><link rel="alternate" hreflang="he" href="http://web.archive.org/web/20230326172402/https://developers.google.com/chat/quickstart/apps-script-app?hl=he"/><link rel="alternate" hreflang="hi" href="http://web.archive.org/web/20230326172402/https://developers.google.com/chat/quickstart/apps-script-app?hl=hi"/><link rel="alternate" hreflang="id" href="http://web.archive.org/web/20230326172402/https://developers.google.com/chat/quickstart/apps-script-app?hl=id"/><link rel="alternate" hreflang="it" href="http://web.archive.org/web/20230326172402/https://developers.google.com/chat/quickstart/apps-script-app?hl=it"/><link rel="alternate" hreflang="ja" href="http://web.archive.org/web/20230326172402/https://developers.google.com/chat/quickstart/apps-script-app?hl=ja"/><link rel="alternate" hreflang="ko" href="http://web.archive.org/web/20230326172402/https://developers.google.com/chat/quickstart/apps-script-app?hl=ko"/><link rel="alternate" hreflang="pl" href="http://web.archive.org/web/20230326172402/https://developers.google.com/chat/quickstart/apps-script-app?hl=pl"/><link rel="alternate" hreflang="pt-BR" href="http://web.archive.org/web/20230326172402/https://developers.google.com/chat/quickstart/apps-script-app?hl=pt-br"/><link rel="alternate" hreflang="ru" href="http://web.archive.org/web/20230326172402/https://developers.google.com/chat/quickstart/apps-script-app?hl=ru"/><link rel="alternate" hreflang="es-419" href="http://web.archive.org/web/20230326172402/https://developers.google.com/chat/quickstart/apps-script-app?hl=es-419"/><link rel="alternate" hreflang="th" href="http://web.archive.org/web/20230326172402/https://developers.google.com/chat/quickstart/apps-script-app?hl=th"/><link rel="alternate" hreflang="tr" href="http://web.archive.org/web/20230326172402/https://developers.google.com/chat/quickstart/apps-script-app?hl=tr"/><link rel="alternate" hreflang="vi" href="http://web.archive.org/web/20230326172402/https://developers.google.com/chat/quickstart/apps-script-app?hl=vi"/><title>Google Apps Script Chat app quickstart | Google Chat | Google Developers</title> <meta property="og:title" content="Google Apps Script Chat app quickstart | Google Chat | Google Developers"><meta property="og:url" content="http://web.archive.org/web/20230326172402/https://developers.google.com/chat/quickstart/apps-script-app"><meta property="og:image" content="http://web.archive.org/web/20230326172402im_/https://www.gstatic.com/devrel-devsite/prod/ve286fa3f99aa90bc7ef7460968844e5bb93251ce750a58802f281151c87037d6/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": "http://web.archive.org/web/20230326172402/https://schema.org", "@type": "Article", "headline": "Google Apps Script Chat app quickstart" } </script><script type="application/ld+json"> { "@context": "http://web.archive.org/web/20230326172402/https://schema.org", "@type": "BreadcrumbList", "itemListElement": [{ "@type": "ListItem", "position": 1, "name": "Google Workspace", "item": "http://web.archive.org/web/20230326172402/https://developers.google.com/workspace" },{ "@type": "ListItem", "position": 2, "name": "Google Chat", "item": "http://web.archive.org/web/20230326172402/https://developers.google.com/chat" },{ "@type": "ListItem", "position": 3, "name": "Google Apps Script Chat app quickstart", "item": "http://web.archive.org/web/20230326172402/https://developers.google.com/chat/quickstart/apps-script-app" }] } </script> <link rel="stylesheet" href="/web/20230326172402cs_/https://developers.google.com/extras.css"></head> <body class="" template="page" theme="white" type="article" layout="docs" pending> <devsite-progress type="indeterminate" id="app-progress"></devsite-progress> <section class="devsite-wrapper"><devsite-header> <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="http://web.archive.org/web/20230326172402/https://developers.google.com/workspace"> <div class="devsite-product-logo-container" size="medium"> <img class="devsite-product-logo" alt="Google Workspace" src="http://web.archive.org/web/20230326172402im_/https://fonts.gstatic.com/s/i/productlogos/googleg/v6/16px.svg" srcset="" sizes="64px" loading="lazy"> </div> </a> <span class="devsite-product-name"> <ul class="devsite-breadcrumb-list"> <li class="devsite-breadcrumb-item devsite-has-google-wordmark"> <a href="http://web.archive.org/web/20230326172402/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="http://web.archive.org/web/20230326172402/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 active> <a href="http://web.archive.org/web/20230326172402/https://developers.google.com/chat" track-metadata-eventdetail="https://developers.google.com/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 dropdown> <a href="http://web.archive.org/web/20230326172402/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="http://web.archive.org/web/20230326172402/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="http://web.archive.org/web/20230326172402/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="http://web.archive.org/web/20230326172402/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-category="Workspace top menu navigation" data-label="Tab menu: All products - Gmail"> <div class="devsite-nav-item-title"> Gmail </div> </a> </li> <li class="devsite-nav-item"> <a href="http://web.archive.org/web/20230326172402/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-label="Tab menu: All products - Google Calendar" data-category="Workspace top menu navigation"> <div class="devsite-nav-item-title"> Google Calendar </div> </a> </li> <li class="devsite-nav-item"> <a href="http://web.archive.org/web/20230326172402/https://developers.google.com/chat" track-type="nav" track-metadata-eventdetail="https://developers.google.com/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="http://web.archive.org/web/20230326172402/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-category="Workspace top menu navigation" data-label="Tab menu: All products - Google Classroom"> <div class="devsite-nav-item-title"> Google Classroom </div> </a> </li> <li class="devsite-nav-item"> <a href="http://web.archive.org/web/20230326172402/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="http://web.archive.org/web/20230326172402/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="http://web.archive.org/web/20230326172402/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="http://web.archive.org/web/20230326172402/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="http://web.archive.org/web/20230326172402/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="http://web.archive.org/web/20230326172402/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-label="Tab menu: All products - Google Sheets" data-category="Workspace top menu navigation"> <div class="devsite-nav-item-title"> Google Sheets </div> </a> </li> <li class="devsite-nav-item"> <a href="http://web.archive.org/web/20230326172402/https://developers.google.com/sites" track-type="nav" track-metadata-eventdetail="https://developers.google.com/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="http://web.archive.org/web/20230326172402/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="http://web.archive.org/web/20230326172402/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-category="Workspace top menu navigation" data-label="Tab menu: All products - Google Tasks"> <div class="devsite-nav-item-title"> Google Tasks </div> </a> </li> <li class="devsite-nav-item"> <a href="http://web.archive.org/web/20230326172402/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="http://web.archive.org/web/20230326172402/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="http://web.archive.org/web/20230326172402/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="http://web.archive.org/web/20230326172402/https://developers.google.com/chat/concepts/apps" track-type="nav" track-metadata-eventdetail="https://developers.google.com/chat/concepts/apps" 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="http://web.archive.org/web/20230326172402/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="http://web.archive.org/web/20230326172402/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 dropdown> <a href="http://web.archive.org/web/20230326172402/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="http://web.archive.org/web/20230326172402/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-label="Tab menu: Resources - Admin console" data-category="Workspace top menu navigation" target="admin-console"> <div class="devsite-nav-item-title"> Admin console </div> </a> </li> <li class="devsite-nav-item"> <a href="http://web.archive.org/web/20230326172402/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 target="_blank" data-category="Workspace top menu navigation" data-label="Tab menu: Resources - Apps Script dashboard"> <div class="devsite-nav-item-title"> Apps Script dashboard </div> </a> </li> <li class="devsite-nav-item"> <a href="http://web.archive.org/web/20230326172402/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="http://web.archive.org/web/20230326172402/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> </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="http://web.archive.org/web/20230326172402/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-category="Workspace top menu navigation" data-label="Tab menu: Resources - How to get started"> <div class="devsite-nav-item-title"> How to get started </div> </a> </li> <li class="devsite-nav-item"> <a href="http://web.archive.org/web/20230326172402/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 data-label="Tab menu: Resources - Codelabs" target="_blank" data-category="Workspace top menu navigation"> <div class="devsite-nav-item-title"> Codelabs </div> </a> </li> <li class="devsite-nav-item"> <a href="http://web.archive.org/web/20230326172402/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-category="Workspace top menu navigation" data-label="Tab menu: Resources - Developer support"> <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="http://web.archive.org/web/20230326172402/https://developers.googleblog.com/search/label/Google%20Workspace" track-type="nav" track-metadata-eventdetail="https://developers.googleblog.com/search/label/Google%20Workspace" track-metadata-position="nav - resources" track-metadata-module="tertiary nav" track-metadata-module_headline="updates" tooltip data-label="Tab menu: Resources - Blog" target="_blank" data-category="Workspace top menu navigation"> <div class="devsite-nav-item-title"> Blog </div> </a> </li> <li class="devsite-nav-item"> <a href="http://web.archive.org/web/20230326172402/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-category="Workspace top menu navigation" data-label="Tab menu: Resources - Developer previews"> <div class="devsite-nav-item-title"> Developer Previews </div> </a> </li> <li class="devsite-nav-item"> <a href="http://web.archive.org/web/20230326172402/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="http://web.archive.org/web/20230326172402/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-label="Tab menu: Resources - Twitter" data-category="Workspace top menu navigation" target="_blank"> <div class="devsite-nav-item-title"> Twitter </div> </a> </li> <li class="devsite-nav-item"> <a href="http://web.archive.org/web/20230326172402/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 aria-expanded="false" aria-haspopup="listbox" enable-signin enable-search enable-suggestions enable-query-completion project-name="Google Chat" tenant-name="Google Developers" project-scope="/chat" url-scoped="https://developers.google.com/s/results/chat" role="combobox"> <form class="devsite-search-form" action="http://web.archive.org/web/20230326172402/https://developers.google.com/s/results" method="GET"> <div class="devsite-search-container"> <div class="devsite-searchbox"> <input aria-activedescendant="" aria-autocomplete="list" aria-label="Search" aria-haspopup="false" aria-multiline="false" aria-label="Search box" autocomplete="off" class="devsite-search-field devsite-search-query" name="q" placeholder="Search" role="searchbox" type="text" value=""> <div class="devsite-search-image material-icons" aria-hidden="true"></div> </div> <button type="button" search-open class="devsite-search-button devsite-header-icon-button button-flat material-icons" aria-label="Open search"></button> </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="id">Bahasa Indonesia</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="es_419">Español – América Latina</a> </li> <li role="presentation"> <a role="menuitem" lang="fr">Français</a> </li> <li role="presentation"> <a role="menuitem" lang="it">Italiano</a> </li> <li role="presentation"> <a role="menuitem" lang="pl">Polski</a> </li> <li role="presentation"> <a role="menuitem" lang="pt_br">Português – Brasil</a> </li> <li role="presentation"> <a role="menuitem" lang="vi">Tiếng Việt</a> </li> <li role="presentation"> <a role="menuitem" lang="tr">Türkçe</a> </li> <li role="presentation"> <a role="menuitem" lang="ru">Русский</a> </li> <li role="presentation"> <a role="menuitem" lang="he">עברית</a> </li> <li role="presentation"> <a role="menuitem" lang="ar">العربيّة</a> </li> <li role="presentation"> <a role="menuitem" lang="fa">فارسی</a> </li> <li role="presentation"> <a role="menuitem" lang="hi">हिंदी</a> </li> <li role="presentation"> <a role="menuitem" lang="bn">বাংলা</a> </li> <li role="presentation"> <a role="menuitem" lang="th">ภาษาไทย</a> </li> <li role="presentation"> <a role="menuitem" lang="zh_cn">中文 – 简体</a> </li> <li role="presentation"> <a role="menuitem" lang="zh_tw">中文 – 繁體</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="http://web.archive.org/web/20230326172402/https://developers.google.com/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="http://web.archive.org/web/20230326172402/https://developers.google.com/chat" track-metadata-eventdetail="https://developers.google.com/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 active> <a href="http://web.archive.org/web/20230326172402/https://developers.google.com/chat/concepts" track-metadata-eventdetail="https://developers.google.com/chat/concepts" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - guides" track-metadata-module="primary nav" aria-label="Guides, selected" data-category="Site-Wide Custom Events" data-label="Tab: Guides" track-name="guides"> Guides </a> </tab> <tab> <a href="http://web.archive.org/web/20230326172402/https://developers.google.com/chat/design" track-metadata-eventdetail="https://developers.google.com/chat/design" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - design principles" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Design principles" track-name="design principles"> Design principles </a> </tab> <tab> <a href="http://web.archive.org/web/20230326172402/https://developers.google.com/chat/api/reference/rest" track-metadata-eventdetail="https://developers.google.com/chat/api/reference/rest" 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="http://web.archive.org/web/20230326172402/https://developers.google.com/chat/samples" track-metadata-eventdetail="https://developers.google.com/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> <a href="http://web.archive.org/web/20230326172402/https://developers.google.com/chat/support" track-metadata-eventdetail="https://developers.google.com/chat/support" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - support" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Support" track-name="support"> Support </a> </tab> </nav> </devsite-tabs> </div> </div> </div> </div> </devsite-header> <devsite-book-nav scrollbars> <div class="devsite-book-nav-filter "> <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="http://web.archive.org/web/20230326172402/https://developers.google.com/workspace"> <div class="devsite-product-logo-container" size="medium"> <img class="devsite-product-logo" alt="Google Workspace" src="http://web.archive.org/web/20230326172402im_/https://fonts.gstatic.com/s/i/productlogos/googleg/v6/16px.svg" srcset="" sizes="64px" loading="lazy"> </div> </a> <span class="devsite-product-name"> <ul class="devsite-breadcrumb-list"> <li class="devsite-breadcrumb-item devsite-has-google-wordmark"> <a href="http://web.archive.org/web/20230326172402/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="/web/20230326172402/https://developers.google.com/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="/web/20230326172402/https://developers.google.com/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="/web/20230326172402/https://developers.google.com/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="/web/20230326172402/https://developers.google.com/chat/concepts" class="devsite-nav-title gc-analytics-event devsite-nav-has-children devsite-nav-active" 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 menu="_book"> Guides </span> <span class="devsite-nav-icon material-icons" data-icon="forward" menu="_book"> </span> </a> </li> <li class="devsite-nav-item"> <a href="/web/20230326172402/https://developers.google.com/chat/design" class="devsite-nav-title gc-analytics-event devsite-nav-has-children " data-category="Site-Wide Custom Events" data-label="Tab: Design principles" track-name="design principles" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Design principles" track-type="globalNav" track-metadata-eventdetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip> Design principles </span> <span class="devsite-nav-icon material-icons" data-icon="forward"> </span> </a> </li> <li class="devsite-nav-item"> <a href="/web/20230326172402/https://developers.google.com/chat/api/reference/rest" 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="/web/20230326172402/https://developers.google.com/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="/web/20230326172402/https://developers.google.com/chat/support" class="devsite-nav-title gc-analytics-event devsite-nav-has-children " 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> Support </span> <span class="devsite-nav-icon material-icons" data-icon="forward"> </span> </a> </li> </ul> </li> <li class="devsite-nav-item"> <a href="/web/20230326172402/https://developers.google.com/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="/web/20230326172402/https://developers.google.com/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" role="navigation"> <ul class="devsite-nav-list" menu="_book"> <li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/concepts" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/concepts" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/concepts"><span class="devsite-nav-text" tooltip>Introduction</span></a></li> <li class="devsite-nav-item devsite-nav-expandable devsite-nav-accordion"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Concepts</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/concepts/apps" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/concepts/apps" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/concepts/apps"><span class="devsite-nav-text" tooltip>Apps</span></a></li><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/concepts/cards" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/concepts/cards" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/concepts/cards"><span class="devsite-nav-text" tooltip>Messages, Spaces, & Cards</span></a></li><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/concepts/structure" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/concepts/structure" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/concepts/structure"><span class="devsite-nav-text" tooltip>Implementation architectures</span></a></li></ul></div></li> <li class="devsite-nav-item devsite-nav-expandable devsite-nav-accordion"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Build Chat apps</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/how-tos/apps-develop" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/how-tos/apps-develop" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/how-tos/apps-develop"><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/how-tos/apps-script" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/how-tos/apps-script" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/how-tos/apps-script"><span class="devsite-nav-text" tooltip>Develop a Chat app with Apps Script</span></a></li><li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Quickstarts</span> </div></li><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/quickstart/gcf-app" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/quickstart/gcf-app" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/quickstart/gcf-app"><span class="devsite-nav-text" tooltip>Build a Chat app</span></a></li><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/quickstart/apps-script-app" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/quickstart/apps-script-app" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/quickstart/apps-script-app"><span class="devsite-nav-text" tooltip>Build a Chat app with Apps Script</span></a></li><li class="devsite-nav-item devsite-nav-external"><a href="http://web.archive.org/web/20230326172402/https://support.google.com/appsheet/answer/12923581" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: https://support.google.com/appsheet/answer/12923581" track-type="bookNav" track-name="click" track-metadata-eventdetail="https://support.google.com/appsheet/answer/12923581" target="_blank"><span class="devsite-nav-text" tooltip>Build a Chat app with AppSheet (Beta)</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-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Codelabs</span> </div></li><li class="devsite-nav-item devsite-nav-external"><a href="http://web.archive.org/web/20230326172402/https://codelabs.developers.google.com/codelabs/google-chat-poll-bot#0" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: https://codelabs.developers.google.com/codelabs/google-chat-poll-bot#0" track-type="bookNav" track-name="click" track-metadata-eventdetail="https://codelabs.developers.google.com/codelabs/google-chat-poll-bot#0" target="_blank"><span class="devsite-nav-text" tooltip>Build an interactive poll app</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="http://web.archive.org/web/20230326172402/https://codelabs.developers.google.com/codelabs/chat-apps-script#0" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: https://codelabs.developers.google.com/codelabs/chat-apps-script#0" track-type="bookNav" track-name="click" track-metadata-eventdetail="https://codelabs.developers.google.com/codelabs/chat-apps-script#0" target="_blank"><span class="devsite-nav-text" tooltip>Build an attendance app</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-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Receive & respond to events</span> </div></li><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/api/guides/message-formats" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/api/guides/message-formats" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/api/guides/message-formats"><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/api/guides/message-formats/events" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/api/guides/message-formats/events" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/api/guides/message-formats/events"><span class="devsite-nav-text" tooltip>Events</span></a></li><li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Interact with users</span> </div></li><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/how-tos/slash-commands" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/how-tos/slash-commands" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/how-tos/slash-commands"><span class="devsite-nav-text" tooltip>Support slash commands</span></a></li><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/how-tos/dialogs" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/how-tos/dialogs" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/how-tos/dialogs"><span class="devsite-nav-text" tooltip>Open dialogs</span></a></li><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/how-tos/preview-links" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/how-tos/preview-links" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/how-tos/preview-links"><span class="devsite-nav-text" tooltip>Preview links</span></a></li><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/how-tos/get-attachment" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/how-tos/get-attachment" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/how-tos/get-attachment"><span class="devsite-nav-text" tooltip>Retrieve message attachments</span></a></li><li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Connect & integrate with Chat</span> </div></li><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/how-tos/connect-web-services-tools" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/how-tos/connect-web-services-tools" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/how-tos/connect-web-services-tools"><span class="devsite-nav-text" tooltip>Connect with services & tools</span></a></li><li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Troubleshoot Chat apps</span> </div></li><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/how-tos/query-logs" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/how-tos/query-logs" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/how-tos/query-logs"><span class="devsite-nav-text" tooltip>Query error logs</span></a></li><li class="devsite-nav-item devsite-nav-break"></li><li class="devsite-nav-item devsite-nav-expandable"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Other ways to build Chat apps</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/api/guides/firewall/pub-sub" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/api/guides/firewall/pub-sub" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/api/guides/firewall/pub-sub"><span class="devsite-nav-text" tooltip>Set up a Pub/Sub endpoint</span></a></li><li class="devsite-nav-item devsite-nav-external"><a href="http://web.archive.org/web/20230326172402/https://codelabs.developers.google.com/codelabs/chatbots-dialogflow-hangouts#0" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: https://codelabs.developers.google.com/codelabs/chatbots-dialogflow-hangouts#0" track-type="bookNav" track-name="click" track-metadata-eventdetail="https://codelabs.developers.google.com/codelabs/chatbots-dialogflow-hangouts#0" target="_blank"><span class="devsite-nav-text" tooltip>Integrate Dialogflow with Google Chat</span><span class="devsite-nav-icon material-icons" data-icon="external" data-title="External" aria-hidden="true"></span></a></li></ul></div></li></ul></div></li> <li class="devsite-nav-item devsite-nav-expandable devsite-nav-accordion"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Design and build card-based UIs</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/ui" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/ui" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/ui"><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Messaging</span> </div></li><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/api/guides/message-formats/text" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/api/guides/message-formats/text" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/api/guides/message-formats/text"><span class="devsite-nav-text" tooltip>Send a text message</span></a></li><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/api/guides/message-formats/cards" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/api/guides/message-formats/cards" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/api/guides/message-formats/cards"><span class="devsite-nav-text" tooltip>Send a card message</span></a></li><li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Interactivity</span> </div></li><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/ui/read-form-data" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/ui/read-form-data" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/ui/read-form-data"><span class="devsite-nav-text" tooltip>Read card data submitted by users</span></a></li><li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>UI widgets</span> </div></li><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/ui/widgets/card-header" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/ui/widgets/card-header" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/ui/widgets/card-header"><span class="devsite-nav-text" tooltip>Card header</span></a></li><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/ui/widgets/card-section" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/ui/widgets/card-section" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/ui/widgets/card-section"><span class="devsite-nav-text" tooltip>Card section</span></a></li><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/ui/widgets/text-paragraph" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/ui/widgets/text-paragraph" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/ui/widgets/text-paragraph"><span class="devsite-nav-text" tooltip>Text paragraph</span></a></li><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/ui/widgets/icon" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/ui/widgets/icon" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/ui/widgets/icon"><span class="devsite-nav-text" tooltip>Icon</span></a></li><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/ui/widgets/image" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/ui/widgets/image" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/ui/widgets/image"><span class="devsite-nav-text" tooltip>Image</span></a></li><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/ui/widgets/decorated-text" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/ui/widgets/decorated-text" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/ui/widgets/decorated-text"><span class="devsite-nav-text" tooltip>Decorated text</span></a></li><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/ui/widgets/button-list" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/ui/widgets/button-list" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/ui/widgets/button-list"><span class="devsite-nav-text" tooltip>Button list</span></a></li><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/ui/widgets/text-input" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/ui/widgets/text-input" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/ui/widgets/text-input"><span class="devsite-nav-text" tooltip>Text input</span></a></li><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/ui/widgets/selection-input" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/ui/widgets/selection-input" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/ui/widgets/selection-input"><span class="devsite-nav-text" tooltip>Selection input</span></a></li><li class="devsite-nav-item devsite-nav-alpha"><a href="/web/20230326172402/https://developers.google.com/chat/ui/widgets/date-time-picker" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/ui/widgets/date-time-picker" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/ui/widgets/date-time-picker"><span class="devsite-nav-text" tooltip>Date time picker</span><span class="devsite-nav-icon material-icons" data-icon="alpha" data-title="Alpha" aria-hidden="true"></span></a></li><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/ui/widgets/divider" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/ui/widgets/divider" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/ui/widgets/divider"><span class="devsite-nav-text" tooltip>Divider</span></a></li><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/ui/widgets/grid" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/ui/widgets/grid" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/ui/widgets/grid"><span class="devsite-nav-text" tooltip>Grid</span></a></li><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/ui/widgets/card-fixed-footer" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/ui/widgets/card-fixed-footer" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/ui/widgets/card-fixed-footer"><span class="devsite-nav-text" tooltip>Card footer</span></a></li><li class="devsite-nav-item devsite-nav-break"></li></ul></div></li> <li class="devsite-nav-item devsite-nav-expandable devsite-nav-accordion"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Publish Chat apps</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/how-tos/apps-publish" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/how-tos/apps-publish" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/how-tos/apps-publish"><span class="devsite-nav-text" tooltip>Publish apps</span></a></li><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/how-tos/manage-releases" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/how-tos/manage-releases" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/how-tos/manage-releases"><span class="devsite-nav-text" tooltip>Manage app releases</span></a></li></ul></div></li> <li class="devsite-nav-item devsite-nav-expandable devsite-nav-accordion"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Authentication</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/api/guides/auth" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/api/guides/auth" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/api/guides/auth"><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item devsite-nav-beta"><a href="/web/20230326172402/https://developers.google.com/chat/api/guides/auth/users" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/api/guides/auth/users" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/api/guides/auth/users"><span class="devsite-nav-text" tooltip>Authenticate as a user</span><span class="devsite-nav-icon material-icons" data-icon="beta" data-title="Beta" aria-hidden="true"></span></a></li><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/api/guides/auth/service-accounts" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/api/guides/auth/service-accounts" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/api/guides/auth/service-accounts"><span class="devsite-nav-text" tooltip>Authenticate as an app</span></a></li></ul></div></li> <li class="devsite-nav-item devsite-nav-expandable devsite-nav-accordion"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Chat REST API</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/api/guides" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/api/guides" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/api/guides"><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/api/guides/libraries" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/api/guides/libraries" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/api/guides/libraries"><span class="devsite-nav-text" tooltip>Install client libraries</span></a></li><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/api/guides/rest-api" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/api/guides/rest-api" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/api/guides/rest-api"><span class="devsite-nav-text" tooltip>Use the REST API</span></a></li><li class="devsite-nav-item devsite-nav-heading"><div class="devsite-nav-title devsite-nav-title-no-path"> <span class="devsite-nav-text" tooltip>Create, read, update, and delete</span> </div></li><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/api/guides/crudl/messages" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/api/guides/crudl/messages" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/api/guides/crudl/messages"><span class="devsite-nav-text" tooltip>Messages</span></a></li></ul></div></li> <li class="devsite-nav-item devsite-nav-expandable devsite-nav-accordion"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Send messages with webhooks</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/how-tos/webhooks" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/how-tos/webhooks" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/how-tos/webhooks"><span class="devsite-nav-text" tooltip>Create an incoming webhook</span></a></li></ul></div></li> <li class="devsite-nav-item devsite-nav-expandable devsite-nav-accordion"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Administrative tasks</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/how-tos/chat-archiving" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/how-tos/chat-archiving" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/how-tos/chat-archiving"><span class="devsite-nav-text" tooltip>Archive messages</span></a></li><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/how-tos/migrate-apps" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/how-tos/migrate-apps" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/how-tos/migrate-apps"><span class="devsite-nav-text" tooltip>Migrate Chat apps after merging Google Workspace organizations</span></a></li></ul></div></li> <li class="devsite-nav-item devsite-nav-expandable devsite-nav-accordion"><div class="devsite-expandable-nav"> <a class="devsite-nav-toggle" aria-hidden="true"></a><div class="devsite-nav-title devsite-nav-title-no-path" tabindex="0" role="button"> <span class="devsite-nav-text" tooltip>Troubleshoot</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/web/20230326172402/https://developers.google.com/chat/troubleshoot" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /chat/troubleshoot" track-type="bookNav" track-name="click" track-metadata-eventdetail="/chat/troubleshoot"><span class="devsite-nav-text" tooltip>Troubleshoot</span></a></li></ul></div></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="/web/20230326172402/https://developers.google.com/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="/web/20230326172402/https://developers.google.com/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="/web/20230326172402/https://developers.google.com/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="/web/20230326172402/https://developers.google.com/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="/web/20230326172402/https://developers.google.com/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="/web/20230326172402/https://developers.google.com/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="/web/20230326172402/https://developers.google.com/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="/web/20230326172402/https://developers.google.com/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="/web/20230326172402/https://developers.google.com/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="/web/20230326172402/https://developers.google.com/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="/web/20230326172402/https://developers.google.com/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="/web/20230326172402/https://developers.google.com/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="/web/20230326172402/https://developers.google.com/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="/web/20230326172402/https://developers.google.com/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="/web/20230326172402/https://developers.google.com/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="/web/20230326172402/https://developers.google.com/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="/web/20230326172402/https://developers.google.com/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="/web/20230326172402/https://developers.google.com/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="/web/20230326172402/https://developers.google.com/chat/concepts/apps" 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="/web/20230326172402/https://developers.google.com/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="/web/20230326172402/https://developers.google.com/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="http://web.archive.org/web/20230326172402/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="http://web.archive.org/web/20230326172402/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="http://web.archive.org/web/20230326172402/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="/web/20230326172402/https://developers.google.com/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 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="/web/20230326172402/https://developers.google.com/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="http://web.archive.org/web/20230326172402/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="/web/20230326172402/https://developers.google.com/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="http://web.archive.org/web/20230326172402/https://developers.googleblog.com/search/label/Google%20Workspace" 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="/web/20230326172402/https://developers.google.com/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="/web/20230326172402/https://developers.google.com/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="http://web.archive.org/web/20230326172402/https://twitter.com/workspacedevs" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Twitter" track-type="navMenu" track-metadata-eventdetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip> Twitter </span> </a> </li> <li class="devsite-nav-item"> <a href="http://web.archive.org/web/20230326172402/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 has-sidebar> <div class="devsite-sidebar"> <div class="devsite-sidebar-content"> <devsite-toc class="devsite-nav" role="navigation" aria-label="On this page" depth="2" scrollbars></devsite-toc> <devsite-recommendations-sidebar class="nocontent devsite-nav"> </devsite-recommendations-sidebar> </div> </div> <devsite-content> <article class="devsite-article"> <div class="devsite-article-meta nocontent" role="navigation"> <ul class="devsite-breadcrumb-list" aria-label="Breadcrumb"> <li class="devsite-breadcrumb-item "> <a href="http://web.archive.org/web/20230326172402/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="http://web.archive.org/web/20230326172402/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="http://web.archive.org/web/20230326172402/https://developers.google.com/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="http://web.archive.org/web/20230326172402/https://developers.google.com/chat/concepts" 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=""> Guides </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-20230321-r01-rc00.450867754576075788" data-label="Send Feedback Button" track-type="feedback" track-name="sendFeedbackLink" track-metadata-position="header" project-feedback-url="https://issuetracker.google.com/issues/new?component=350158&template=1047215" project-icon="https://fonts.gstatic.com/s/i/productlogos/chat_2020q4/v6/web-64dp/logo_chat_2020q4_color_1x_web_64dp.png" project-support-url="https://developers.google.com/chat/support" feedback-type="thumb-rating"> <button> Send feedback </button> </devsite-feedback> <h1 class="devsite-page-title">Google Apps Script Chat app quickstart</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" 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> <devsite-toc class="devsite-nav" depth="2" devsite-toc-embedded> </devsite-toc> <devsite-recommendations-dropdown class="nocontent"></devsite-recommendations-dropdown> <div class="devsite-article-body clearfix "> <p>Create a Google Chat app that you can directly message and that responds by echoing your messages.</p> <h2 id="objectives" data-text="Objectives">Objectives</h2> <ul> <li>Set up your environment.</li> <li>Set up the script.</li> <li>Publish the app.</li> <li>Run the script.</li> </ul> <h2 id="prerequisites" data-text="Prerequisites">Prerequisites</h2> <ul> <li>A <a href="http://web.archive.org/web/20230326172402/https://workspace.google.com/features/" target="_blank" class="external">Google Workspace</a> account with access to <a href="http://web.archive.org/web/20230326172402/https://workspace.google.com/products/chat/" target="_blank" class="external">Chat</a>.</li> <li>A <a href="/web/20230326172402/https://developers.google.com/workspace/guides/create-project" target="_blank" class="external">Google Cloud project</a>.</li> </ul> <h2 id="set_up_your_environment" data-text="Set up your environment">Set up your environment</h2> <h3 id="open_your_in_the" data-text="Open your Cloud project in the Google Cloud console">Open your Cloud project in the Google Cloud console</h3> <p>If it's not open already, open the Cloud project that you intend to use for this sample:</p> <ol> <li>In the Google Cloud console, go to the <b>Select a project</b> page. <p><a href="http://web.archive.org/web/20230326172402/https://console.cloud.google.com/projectselector2" class="button button-primary" target="console">Select a Cloud project</a></p> </li> <li>Select the Google Cloud project you want to use. Or, click <b>Create project</b> and follow the on-screen instructions. If you create a Google Cloud project, you might need to <a href="http://web.archive.org/web/20230326172402/https://cloud.google.com/billing/docs/how-to/modify-project#enable_billing_for_a_project" target="_blank">turn on billing for the project</a>.</li> </ol> <h3 id="turn_on_the" data-text="Turn on the Chat API">Turn on the Chat API</h3> Before using Google APIs, you need to turn them on in a Google Cloud project. You can turn on one or more APIs in a single Google Cloud project. <ul> <li><p>In the Google Cloud console, enable the Google Chat API.</p> <p><a href="http://web.archive.org/web/20230326172402/https://console.cloud.google.com/flows/enableapi?apiid=chat.googleapis.com" class="button button-primary" target="console">Enable the API</a></p></li> </ul> <h3 id="configure_the_oauth_consent_screen" data-text="Configure the OAuth consent screen">Configure the OAuth consent screen</h3> <p>All apps using OAuth 2.0 require a consent screen configuration. Configuring your app's OAuth consent screen defines what is displayed to users and app reviewers, and registers your app so you can publish it later.</p> <ol> <li> In the Google Cloud console, go to Menu <span class="material-icons" aria-hidden="true" translate="no">menu</span> <span aria-label="and then">></span> <b>APIs & Services</b> <span aria-label="and then">></span> <b>OAuth consent screen</b>. <p><a href="http://web.archive.org/web/20230326172402/https://console.cloud.google.com/apis/credentials/consent" class="button button-primary" target="console">Go to OAuth consent screen</a></p></li> <li>Select the user type for your app, then click <b>Create</b>.</li> <li>Complete the app registration form, then click <b>Save and Continue</b>.</li> <li><p>For now, you can skip adding scopes and click <b>Save and Continue</b>. In the future, when you create an app for use outside of your Google Workspace organization, you must add and verify the authorization scopes that your app requires.</p></li> <li>If you selected <b>External</b> for user type, add test users: <ol> <li>Under <b>Test users</b>, click <b>Add users</b>. </li> <li>Enter your email address and any other authorized test users, then click <b>Save and Continue</b>.</li> </ol> <li>Review your app registration summary. To make changes, click <b>Edit</b>. If the app registration looks OK, click <b>Back to Dashboard</b>.</li> </ol> <h2 id="set_up_the_script" data-text="Set up the script">Set up the script</h2> <p>To set up the script, you use a template and then set your Cloud project in Apps Script.</p> <h3 id="create_the_script_from_the_template" data-text="Create the script from the template">Create the script from the template</h3> <ol> <li>Go to the <a href="http://web.archive.org/web/20230326172402/https://script.google.com/home/start" target="_blank" class="external">Apps Script <strong>Getting Started</strong> page</a>.</li> <li>Click the <strong>Chat App</strong> template. You might have to scroll down to see this template.</li> <li>Click <strong>Untitled project</strong>, type <code translate="no" dir="ltr">Quickstart app</code>, and click <strong>Rename</strong>.</li> </ol> <h3 id="copy_the_number" data-text="Copy the Cloud project number">Copy the Cloud project number</h3> <ol> <li>Go to your Cloud project in the <a href="http://web.archive.org/web/20230326172402/https://console.cloud.google.com/" target="_console" class="external">Google Cloud console</a>.</li> <li>Click Settings and Utilities <span class="material-icons" aria-hidden="true" translate="no">more_vert</span> <span aria-label="and then">></span> <strong>Project settings</strong>.</li> <li>Copy the <strong>Project number</strong>.</li> </ol> <h3 id="set_the_projects" data-text="Set the Apps Script project's Cloud project">Set the Apps Script project's Cloud project</h3> <ol> <li>In the Chat app Apps Script project, click <strong>Project Settings</strong> <img src="http://web.archive.org/web/20230326172402im_/https://fonts.gstatic.com/s/i/short-term/release/googlesymbols/settings/default/24px.svg" class="inline-icon" alt="The icon for project settings">.</li> <li>Under <strong>Google Cloud Platform (GCP) Project</strong>, click <strong>Change project</strong>.</li> <li>In <strong>GCP project number</strong>, paste the Google Cloud project number.</li> <li>Click <strong>Set project</strong>.</li> </ol> <p>You now have working app code that you can try out (as described in the following steps) and then customize to meet your requirements.</p> <p>Make sure that you're signed in to the correct Google Account when you open the Apps Script template. The current account can sometimes switch to your default account without you noticing.</p> <h3 id="create_a_test_deployment" data-text="Create a test deployment">Create a test deployment</h3> <p>You need a deployment ID for this Apps Script project, so that you can use it in the next step.</p> <p>To get the head deployment ID, do the following:</p> <ol> <li>In the Chat app Apps Script project, click <strong>Deploy</strong> <span aria-label="and then">></span> <strong>Test deployments</strong>.</li> <li>Copy the <strong>Head deployment ID</strong> for use in a later step and click <strong>Done</strong>.</li> </ol> <h2 id="publish_the" data-text="Publish the Chat app">Publish the Chat app</h2> <p>Publish the Chat app from the Google Cloud console.</p> <ol> <li>In the <a href="http://web.archive.org/web/20230326172402/https://console.cloud.google.com/" target="_blank" class="external">Google Cloud console</a>, search for <code translate="no" dir="ltr">Google Chat API</code>, and click <strong>Google Chat API</strong>.</li> <li>Click <strong>Manage</strong>.</li> <li><p>Click <strong>Configuration</strong> and set up the Chat app:</p> <ol> <li>In the <strong>App name</strong> field, enter <code translate="no" dir="ltr">Quickstart app</code>.</li> <li>In the <strong>Avatar URL</strong> field, enter <code translate="no" dir="ltr">https://developers.google.com/chat/images/quickstart-app-avatar.png</code>.</li> <li>In the <strong>Description</strong> field, enter <code translate="no" dir="ltr">Quickstart app</code>.</li> <li>Under Functionality, select <strong>Receive 1:1 messages</strong> and <strong>Join spaces and group conversations</strong>.</li> <li>Under Connection settings, select <strong>Apps Script project</strong> and paste the Deployment ID into the field.</li> <li>Under Permissions, select <strong>Specific people and groups in your domain</strong>, and enter your email.</li> </ol></li> <li><p>Click <strong>Save</strong> and refresh the page.</p></li> <li><p>On the configuration page, under <strong>App status</strong>, set the status to <strong>Live - available to users</strong>.</p></li> <li><p>Click <strong>Save</strong>.</p></li> </ol> <p>The Chat app is ready to respond to messages.</p> <h2 id="run_the_script" data-text="Run the script">Run the script</h2> <ol> <li>Open <a href="http://web.archive.org/web/20230326172402/https://chat.google.com/" target="_blank" class="external">Chat</a>.</li> <li>Send a new direct message to the app by clicking <strong>Start a chat <span class="material-icons" aria-hidden="true" translate="no">add</span> > Find apps</strong>.</li> <li>On the Find apps page, search for <code translate="no" dir="ltr">Quickstart App</code>.</li> <li>Next to <strong>Quickstart App</strong>, click <strong>Chat</strong>.</li> <li>In the new direct message with the app, type <code translate="no" dir="ltr">Hello</code> and press <code translate="no" dir="ltr">enter</code>.</li> </ol> <p>The app thanks you for adding it and echoes your message.</p> <h2 id="next_steps" data-text="Next steps">Next steps</h2> <ul> <li><a href="/web/20230326172402/https://developers.google.com/chat/how-tos/cards-onclick">Create interactive cards</a>–Card messages support a defined layout, interactive UI elements like buttons, and rich media like images. Use card messages to present detailed information, gather information from users, and guide users to take a next step.</li> <li><a href="/web/20230326172402/https://developers.google.com/chat/how-tos/slash-commands">Support slash commands</a>–Slash commands let you register and advertise specific commands that users can give your app by typing a command that begins with a forward slash (<code translate="no" dir="ltr">/</code>), like <code translate="no" dir="ltr">/help</code>.</li> <li><a href="/web/20230326172402/https://developers.google.com/chat/how-tos/dialogs">Launch dialogs</a>–Dialogs are windowed, card-based interfaces that your app can open to interact with a user. Multiple cards can be strung together sequentially, which helps users complete multi-step processes, like filling in form data.</li> </ul> <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-20230321-r01-rc00.450867754576075788" data-label="Send Feedback Button" track-type="feedback" track-name="sendFeedbackLink" track-metadata-position="footer" project-feedback-url="https://issuetracker.google.com/issues/new?component=350158&template=1047215" project-icon="https://fonts.gstatic.com/s/i/productlogos/chat_2020q4/v6/web-64dp/logo_chat_2020q4_color_1x_web_64dp.png" project-support-url="https://developers.google.com/chat/support" feedback-type="thumb-rating"> <button> Send feedback </button> </devsite-feedback> <devsite-recommendations id="recommendations-link" yield></devsite-recommendations> </article> <devsite-content-footer class="nocontent"> <p>Except as otherwise noted, the content of this page is licensed under the <a href="http://web.archive.org/web/20230326172402/https://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 License</a>, and code samples are licensed under the <a href="http://web.archive.org/web/20230326172402/https://www.apache.org/licenses/LICENSE-2.0">Apache 2.0 License</a>. For details, see the <a href="http://web.archive.org/web/20230326172402/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 2023-03-22 UTC.</p> </devsite-content-footer> <devsite-notification> </devsite-notification> <div class="devsite-content-data"> <template class="devsite-thumb-rating-down-categories"> [{ "type": "thumb-down", "id": "missingTheInformationINeed", "label":"Missing the information I need" },{ "type": "thumb-down", "id": "tooComplicatedTooManySteps", "label":"Too complicated / too many steps" },{ "type": "thumb-down", "id": "outOfDate", "label":"Out of date" },{ "type": "thumb-down", "id": "samplesCodeIssue", "label":"Samples / code issue" },{ "type": "thumb-down", "id": "otherDown", "label":"Other" }] </template> <template class="devsite-thumb-rating-up-categories"> [{ "type": "thumb-up", "id": "easyToUnderstand", "label":"Easy to understand" },{ "type": "thumb-up", "id": "solvedMyProblem", "label":"Solved my problem" },{ "type": "thumb-up", "id": "otherUp", "label":"Other" }] </template> <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-20230321-r01-rc00.450867754576075788" data-label="Send Feedback Button" track-type="feedback" track-name="sendFeedbackLink" track-metadata-position="thumb-rating" project-feedback-url="https://issuetracker.google.com/issues/new?component=350158&template=1047215" project-icon="https://fonts.gstatic.com/s/i/productlogos/chat_2020q4/v6/web-64dp/logo_chat_2020q4_color_1x_web_64dp.png" project-support-url="https://developers.google.com/chat/support" feedback-type="thumb-rating"> <button> Need to tell us more? </button> </devsite-feedback> </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="http://web.archive.org/web/20230326172402/https://developers.googleblog.com/search/label/Google%20Workspace" 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"> <img class="devsite-footer-promo-icon" src="http://web.archive.org/web/20230326172402im_/https://www.gstatic.com/images/branding/product/2x/google_cloud_64dp.png" loading="lazy" alt="Blog"> Blog </a> <div class="devsite-footer-promo-description">Read the Google Workspace Developers blog</div> </li> <li class="devsite-footer-promo"> <a href="http://web.archive.org/web/20230326172402/https://twitter.com/workspacedevs" class="devsite-footer-promo-title gc-analytics-event" data-category="Site-Wide Custom Events" target="_blank" data-category="Workspace Footer" data-label="Promo - Google Workspace on Twitter"> <img class="devsite-footer-promo-icon" src="/web/20230326172402im_/https://developers.google.com/static/site-assets/logo-twitter.svg" loading="lazy" alt="Twitter"> Twitter </a> <div class="devsite-footer-promo-description">Follow @workspacedevs on Twitter</div> </li> <li class="devsite-footer-promo"> <a href="http://web.archive.org/web/20230326172402/https://github.com/googleworkspace" class="devsite-footer-promo-title gc-analytics-event" data-category="Site-Wide Custom Events" target="_blank" data-category="Workspace Footer" data-label="Promo - Google Workspace Github"> <img class="devsite-footer-promo-icon" src="/web/20230326172402im_/https://developers.google.com/static/site-assets/logo-github.svg" loading="lazy" alt="Code Samples"> Code Samples </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="http://web.archive.org/web/20230326172402/https://codelabs.developers.google.com/?product=googleworkspace" 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 Codelabs"> <img class="devsite-footer-promo-icon" src="/web/20230326172402im_/https://developers.google.com/static/site-assets/developers-logo-color.svg" loading="lazy" alt="Codelabs"> Codelabs </a> <div class="devsite-footer-promo-description">Try a guided, hands-on coding experience</div> </li> <li class="devsite-footer-promo"> <a href="http://web.archive.org/web/20230326172402/https://www.youtube.com/channel/UCUcg6az6etU_gRtZVAhBXaw" class="devsite-footer-promo-title gc-analytics-event" data-category="Site-Wide Custom Events" target="_blank" data-category="Workspace Footer" data-label="Promo - Google Workspace on YouTube"> <img class="devsite-footer-promo-icon" src="/web/20230326172402im_/https://developers.google.com/static/site-assets/logo-youtube.svg" loading="lazy" alt="Videos"> Videos </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="/web/20230326172402/https://developers.google.com/workspace" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Linkbox - Platform overview" data-category="Workspace Footer"> Platform overview </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/web/20230326172402/https://developers.google.com/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="/web/20230326172402/https://developers.google.com/workspace/support" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Linkbox - Developer support" data-category="Workspace Footer"> Developer support </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/web/20230326172402/https://developers.google.com/workspace/terms" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Linkbox - Terms of Service" data-category="Workspace Footer"> 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="http://web.archive.org/web/20230326172402/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="http://web.archive.org/web/20230326172402/https://script.google.com/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-category="Workspace Footer" data-label="Linkbox - Apps Script Dashboard" target="_blank"> Apps Script Dashboard </a> </li> <li class="devsite-footer-linkbox-item"> <a href="http://web.archive.org/web/20230326172402/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" target="console" data-label="Linkbox - Google Cloud console"> Google Cloud console </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/web/20230326172402/https://developers.google.com/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="http://web.archive.org/web/20230326172402/https://developers.googleblog.com/search/label/Google%20Workspace" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" target="_blank" data-label="Linkbox - Blog" data-category="Workspace Footer"> Blog </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/web/20230326172402/https://developers.google.com/workspace/newsletters" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Linkbox - Newsletter" data-category="Workspace Footer"> Newsletter </a> </li> <li class="devsite-footer-linkbox-item"> <a href="http://web.archive.org/web/20230326172402/https://twitter.com/workspacedevs" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-category="Workspace Footer" data-label="Linkbox - Twitter" target="_blank"> Twitter </a> </li> <li class="devsite-footer-linkbox-item"> <a href="http://web.archive.org/web/20230326172402/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="http://web.archive.org/web/20230326172402/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> <source srcset="http://web.archive.org/web/20230326172402im_/https://www.gstatic.com/devrel-devsite/prod/ve286fa3f99aa90bc7ef7460968844e5bb93251ce750a58802f281151c87037d6/developers/images/lockup-developers-dark-theme.svg" media="(prefers-color-scheme: none)" class="devsite-dark-theme" loading="lazy" alt="Google Developers"> <img class="devsite-footer-sites-logo" src="http://web.archive.org/web/20230326172402im_/https://www.gstatic.com/devrel-devsite/prod/ve286fa3f99aa90bc7ef7460968844e5bb93251ce750a58802f281151c87037d6/developers/images/lockup-developers.svg" loading="lazy" alt="Google Developers"> </picture> </a> <ul class="devsite-footer-sites-list"> <li class="devsite-footer-sites-item"> <a href="//web.archive.org/web/20230326172402/https://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="//web.archive.org/web/20230326172402/https://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="//web.archive.org/web/20230326172402/https://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="//web.archive.org/web/20230326172402/https://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="/web/20230326172402/https://developers.google.com/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="/web/20230326172402/https://developers.google.com/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="//web.archive.org/web/20230326172402/https://policies.google.com/privacy" data-category="Site-Wide Custom Events" data-label="Footer Privacy link"> Privacy </a> </li> <li class="devsite-footer-utility-item devsite-footer-utility-button"> <span class="devsite-footer-utility-description">Sign up for the Google Developers newsletter</span> <a class="devsite-footer-utility-link gc-analytics-event" href="//web.archive.org/web/20230326172402/https://services.google.com/fb/forms/googledevelopersnews" 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="id">Bahasa Indonesia</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="es_419">Español – América Latina</a> </li> <li role="presentation"> <a role="menuitem" lang="fr">Français</a> </li> <li role="presentation"> <a role="menuitem" lang="it">Italiano</a> </li> <li role="presentation"> <a role="menuitem" lang="pl">Polski</a> </li> <li role="presentation"> <a role="menuitem" lang="pt_br">Português – Brasil</a> </li> <li role="presentation"> <a role="menuitem" lang="vi">Tiếng Việt</a> </li> <li role="presentation"> <a role="menuitem" lang="tr">Türkçe</a> </li> <li role="presentation"> <a role="menuitem" lang="ru">Русский</a> </li> <li role="presentation"> <a role="menuitem" lang="he">עברית</a> </li> <li role="presentation"> <a role="menuitem" lang="ar">العربيّة</a> </li> <li role="presentation"> <a role="menuitem" lang="fa">فارسی</a> </li> <li role="presentation"> <a role="menuitem" lang="hi">हिंदी</a> </li> <li role="presentation"> <a role="menuitem" lang="bn">বাংলা</a> </li> <li role="presentation"> <a role="menuitem" lang="th">ภาษาไทย</a> </li> <li role="presentation"> <a role="menuitem" lang="zh_cn">中文 – 简体</a> </li> <li role="presentation"> <a role="menuitem" lang="zh_tw">中文 – 繁體</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> </section></section> <devsite-sitemask></devsite-sitemask> <devsite-snackbar> </devsite-snackbar> <devsite-tooltip></devsite-tooltip> <devsite-heading-link></devsite-heading-link> <devsite-analytics analytics-iframe> <script type="application/json" analytics>[{"dimensions": {"dimension5": "en", "dimension1": "Signed out", "dimension4": "Google Chat", "dimension3": false, "dimension6": "en", "dimension11": false}, "gaid": "UA-24532603-1", "metrics": {"ratings_count": "metric2", "ratings_value": "metric1"}}]</script> <script type="application/json" tag-management gtm>{"ga4": ["G-272J68FCRF"], "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": ""}}, "tags": []}</script> </devsite-analytics> <devsite-badger></devsite-badger> <script nonce="UX9a5+C6VkdQtmW3o1ALjbXh8eyOKQ"> (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', 'http://web.archive.org/web/20230326172402/https://www.gstatic.com/devrel-devsite/prod/ve286fa3f99aa90bc7ef7460968844e5bb93251ce750a58802f281151c87037d6/developers/js/app_loader.js', '[1,"en",null,"/js/devsite_app_module.js","http://web.archive.org/web/20230326172402/https://www.gstatic.com/devrel-devsite/prod/ve286fa3f99aa90bc7ef7460968844e5bb93251ce750a58802f281151c87037d6","http://web.archive.org/web/20230326172402/https://www.gstatic.com/devrel-devsite/prod/ve286fa3f99aa90bc7ef7460968844e5bb93251ce750a58802f281151c87037d6/developers","http://web.archive.org/web/20230326172402/https://developers-dot-devsite-v2-prod.appspot.com",null,null,["/_pwa/developers/manifest.json","http://web.archive.org/web/20230326172402/https://www.gstatic.com/devrel-devsite/prod/ve286fa3f99aa90bc7ef7460968844e5bb93251ce750a58802f281151c87037d6/images/video-placeholder.svg","http://web.archive.org/web/20230326172402/https://www.gstatic.com/devrel-devsite/prod/ve286fa3f99aa90bc7ef7460968844e5bb93251ce750a58802f281151c87037d6/developers/images/favicon.png","http://web.archive.org/web/20230326172402/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,40,50,52,63,70,75,76,80,87,91,92,93,97,98,100,101,102,103,104,105,107,108,109,110,111,112,113,115,116,117,118,120,122,124,125,126,127,129,130,131,132,133,134,135,136,138,140,141,144,147,148,149,150,151,152,154,155,156,157,158,159,161,163,164,165,168,169,170,172,173,179,180,182,183,186,190,191,193,196],"AIzaSyAP-jjEJBzmIyKR4F-3XITp8yM9T1gEEI8","AIzaSyB6xiKGDR5O3Ak2okS4rLkauxGUG7XP0hg","developers.google.com","AIzaSyAQk0fBONSGUqCNznf6Krs82Ap1-NV6J4o","AIzaSyCCxcqdrZ_7QMeLCRY20bh_SXdAYqy70KY",null,null,null,["Cloud__enable_cloud_shell_fte_user_flow","Profiles__enable_page_saving","BookNav__enable_book_nav_filtering","Profiles__enable_profile_notifications_ui","Profiles__enable_developer_profiles_dashboard_recommendations","MiscFeatureFlags__enable_tls_version_for_gaia_calls","Localization__enable_locale_redirects","Cloud__enable_cloudx_experiment_ids","Search__enable_devsite_serp","Cloud__enable_cloudx_ping","Badges__enable_hide_badges","Search__enable_faceted_search","SignIn__enable_auto_signin_oauth","Badges__enable_drag_and_drop_badges","Cloud__enable_cloud_facet_chat","Significatio__enable_experiment_id_caching","MiscFeatureFlags__enable_footprints_record_views","Experiments__reqs_query_experiments","Profiles__enable_developer_profiles_callout","Profiles__enable_profile_communities","Search__enable_page_map","Experiments__enable_experiments","BookNav__enable_collapsible_book_nav","Search__enable_acl_suggestions","MiscFeatureFlags__emergency_css","Profiles__enable_public_developer_profiles","Profiles__require_profile_eligibility_for_signin","Significatio__enable_by_tenant","Cloud__enable_cloud_dlp_service","Profiles__enable_developer_profiles_interests","Search__enable_suggestions_from_borg","Profiles__enable_profile_collections","Badges__enable_delete_badges","MiscFeatureFlags__devpanel_url","Cloud__enable_cloud_shell"]]') </script> <devsite-a11y-announce></devsite-a11y-announce> </body> </html><!-- FILE ARCHIVED ON 17:24:02 Mar 26, 2023 AND RETRIEVED FROM THE INTERNET ARCHIVE ON 02:04:09 Jan 06, 2025. JAVASCRIPT APPENDED BY WAYBACK MACHINE, COPYRIGHT INTERNET ARCHIVE. ALL OTHER CONTENT MAY ALSO BE PROTECTED BY COPYRIGHT (17 U.S.C. SECTION 108(a)(3)). --> <!-- playback timings (ms): captures_list: 0.547 exclusion.robots: 0.026 exclusion.robots.policy: 0.016 esindex: 0.011 cdx.remote: 20.86 LoadShardBlock: 737.373 (3) PetaboxLoader3.datanode: 722.065 (4) load_resource: 111.888 PetaboxLoader3.resolve: 49.837 -->