CINXE.COM
Create a search interface with the Query API | Cloud Search | Google for Developers
<!doctype html> <html lang="en" dir="ltr"> <head> <meta name="google-signin-client-id" content="721724668570-nbkv1cfusk7kk4eni4pjvepaus73b13t.apps.googleusercontent.com"> <meta name="google-signin-scope" content="profile email https://www.googleapis.com/auth/developerprofiles https://www.googleapis.com/auth/developerprofiles.award"> <meta property="og:site_name" content="Google for Developers"> <meta property="og:type" content="website"><meta name="theme-color" content="#fff"><meta charset="utf-8"> <meta content="IE=Edge" http-equiv="X-UA-Compatible"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="manifest" href="/_pwa/developers/manifest.json" crossorigin="use-credentials"> <link rel="preconnect" href="//www.gstatic.com" crossorigin> <link rel="preconnect" href="//fonts.gstatic.com" crossorigin> <link rel="preconnect" href="//fonts.googleapis.com" crossorigin> <link rel="preconnect" href="//apis.google.com" crossorigin> <link rel="preconnect" href="//www.google-analytics.com" crossorigin><link rel="stylesheet" href="//fonts.googleapis.com/css?family=Google+Sans:400,500|Roboto:400,400italic,500,500italic,700,700italic|Roboto+Mono:400,500,700&display=swap"> <link rel="stylesheet" href="//fonts.googleapis.com/css2?family=Material+Icons&family=Material+Symbols+Outlined&display=block"><link rel="stylesheet" href="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/css/app.css"> <link rel="shortcut icon" href="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/images/favicon-new.png"> <link rel="apple-touch-icon" href="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/images/touchicon-180-new.png"><link rel="canonical" href="https://developers.google.com/cloud-search/docs/guides/query-guide"><link rel="search" type="application/opensearchdescription+xml" title="Google for Developers" href="https://developers.google.com/s/opensearch.xml"> <link rel="alternate" hreflang="en" href="https://developers.google.com/cloud-search/docs/guides/query-guide" /><link rel="alternate" hreflang="x-default" href="https://developers.google.com/cloud-search/docs/guides/query-guide" /><link rel="alternate" hreflang="ar" href="https://developers.google.com/cloud-search/docs/guides/query-guide?hl=ar" /><link rel="alternate" hreflang="bn" href="https://developers.google.com/cloud-search/docs/guides/query-guide?hl=bn" /><link rel="alternate" hreflang="zh-Hans" href="https://developers.google.com/cloud-search/docs/guides/query-guide?hl=zh-cn" /><link rel="alternate" hreflang="zh-Hant" href="https://developers.google.com/cloud-search/docs/guides/query-guide?hl=zh-tw" /><link rel="alternate" hreflang="fa" href="https://developers.google.com/cloud-search/docs/guides/query-guide?hl=fa" /><link rel="alternate" hreflang="fr" href="https://developers.google.com/cloud-search/docs/guides/query-guide?hl=fr" /><link rel="alternate" hreflang="de" href="https://developers.google.com/cloud-search/docs/guides/query-guide?hl=de" /><link rel="alternate" hreflang="he" href="https://developers.google.com/cloud-search/docs/guides/query-guide?hl=he" /><link rel="alternate" hreflang="hi" href="https://developers.google.com/cloud-search/docs/guides/query-guide?hl=hi" /><link rel="alternate" hreflang="id" href="https://developers.google.com/cloud-search/docs/guides/query-guide?hl=id" /><link rel="alternate" hreflang="it" href="https://developers.google.com/cloud-search/docs/guides/query-guide?hl=it" /><link rel="alternate" hreflang="ja" href="https://developers.google.com/cloud-search/docs/guides/query-guide?hl=ja" /><link rel="alternate" hreflang="ko" href="https://developers.google.com/cloud-search/docs/guides/query-guide?hl=ko" /><link rel="alternate" hreflang="pl" href="https://developers.google.com/cloud-search/docs/guides/query-guide?hl=pl" /><link rel="alternate" hreflang="pt-BR" href="https://developers.google.com/cloud-search/docs/guides/query-guide?hl=pt-br" /><link rel="alternate" hreflang="ru" href="https://developers.google.com/cloud-search/docs/guides/query-guide?hl=ru" /><link rel="alternate" hreflang="es-419" href="https://developers.google.com/cloud-search/docs/guides/query-guide?hl=es-419" /><link rel="alternate" hreflang="th" href="https://developers.google.com/cloud-search/docs/guides/query-guide?hl=th" /><link rel="alternate" hreflang="tr" href="https://developers.google.com/cloud-search/docs/guides/query-guide?hl=tr" /><link rel="alternate" hreflang="vi" href="https://developers.google.com/cloud-search/docs/guides/query-guide?hl=vi" /><title>Create a search interface with the Query API | Cloud Search | Google for Developers</title> <meta property="og:title" content="Create a search interface with the Query API | Cloud Search | Google for Developers"><meta property="og:url" content="https://developers.google.com/cloud-search/docs/guides/query-guide"><meta property="og:image" content="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/images/opengraph/white.png"> <meta property="og:image:width" content="1200"> <meta property="og:image:height" content="675"><meta property="og:locale" content="en"><meta name="twitter:card" content="summary_large_image"><script type="application/ld+json"> { "@context": "https://schema.org", "@type": "Article", "headline": "Create a search interface with the Query API" } </script><script type="application/ld+json"> { "@context": "https://schema.org", "@type": "BreadcrumbList", "itemListElement": [{ "@type": "ListItem", "position": 1, "name": "Google Workspace", "item": "https://developers.google.com/workspace" },{ "@type": "ListItem", "position": 2, "name": "Cloud Search", "item": "https://developers.google.com/cloud-search" },{ "@type": "ListItem", "position": 3, "name": "Create a search interface with the Query API", "item": "https://developers.google.com/cloud-search/docs/guides/query-guide" }] } </script> <link rel="stylesheet" href="/extras.css"></head> <body class="" template="page" theme="white" type="article" layout="docs" concierge='closed' display-toc pending> <devsite-progress type="indeterminate" id="app-progress"></devsite-progress> <section class="devsite-wrapper"> <devsite-cookie-notification-bar></devsite-cookie-notification-bar><devsite-header role="banner"> <div class="devsite-header--inner nocontent"> <div class="devsite-top-logo-row-wrapper-wrapper"> <div class="devsite-top-logo-row-wrapper"> <div class="devsite-top-logo-row"> <button type="button" id="devsite-hamburger-menu" class="devsite-header-icon-button button-flat material-icons gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Navigation menu button" visually-hidden aria-label="Open menu"> </button> <div class="devsite-product-name-wrapper"> <a href="https://developers.google.com/workspace"> <div class="devsite-product-logo-container" size="medium" > <picture> <img class="devsite-product-logo" alt="Google Workspace" src="https://fonts.gstatic.com/s/i/productlogos/googleg/v6/16px.svg" srcset=" https://fonts.gstatic.com/s/i/productlogos/googleg/v6/16px.svg" sizes="64px" loading="lazy" > </picture> </div> </a> <span class="devsite-product-name"> <ul class="devsite-breadcrumb-list" > <li class="devsite-breadcrumb-item devsite-has-google-wordmark"> <a href="https://developers.google.com/workspace" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Upper Header" data-value="1" track-type="globalNav" track-name="breadcrumb" track-metadata-position="1" track-metadata-eventdetail="Google Workspace" > <svg class="devsite-google-wordmark" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 148 48"> <title>Google</title> <path class="devsite-google-wordmark-svg-path" d="M19.58,37.65c-9.87,0-18.17-8.04-18.17-17.91c0-9.87,8.3-17.91,18.17-17.91c5.46,0,9.35,2.14,12.27,4.94l-3.45,3.45c-2.1-1.97-4.93-3.49-8.82-3.49c-7.21,0-12.84,5.81-12.84,13.02c0,7.21,5.64,13.02,12.84,13.02c4.67,0,7.34-1.88,9.04-3.58c1.4-1.4,2.32-3.41,2.66-6.16H19.58v-4.89h16.47c0.18,0.87,0.26,1.92,0.26,3.06c0,3.67-1.01,8.21-4.24,11.44C28.93,35.9,24.91,37.65,19.58,37.65z M61.78,26.12c0,6.64-5.1,11.53-11.36,11.53s-11.36-4.89-11.36-11.53c0-6.68,5.1-11.53,11.36-11.53S61.78,19.43,61.78,26.12z M56.8,26.12c0-4.15-2.96-6.99-6.39-6.99c-3.43,0-6.39,2.84-6.39,6.99c0,4.11,2.96,6.99,6.39,6.99C53.84,33.11,56.8,30.22,56.8,26.12z M87.25,26.12c0,6.64-5.1,11.53-11.36,11.53c-6.26,0-11.36-4.89-11.36-11.53c0-6.68,5.1-11.53,11.36-11.53C82.15,14.59,87.25,19.43,87.25,26.12zM82.28,26.12c0-4.15-2.96-6.99-6.39-6.99c-3.43,0-6.39,2.84-6.39,6.99c0,4.11,2.96,6.99,6.39,6.99C79.32,33.11,82.28,30.22,82.28,26.12z M112.09,15.29v20.7c0,8.52-5.02,12.01-10.96,12.01c-5.59,0-8.95-3.76-10.22-6.81l4.41-1.83c0.79,1.88,2.71,4.1,5.81,4.1c3.8,0,6.16-2.36,6.16-6.77v-1.66h-0.18c-1.14,1.4-3.32,2.62-6.07,2.62c-5.76,0-11.05-5.02-11.05-11.49c0-6.51,5.28-11.57,11.05-11.57c2.75,0,4.93,1.22,6.07,2.58h0.18v-1.88H112.09z M107.64,26.16c0-4.06-2.71-7.03-6.16-7.03c-3.49,0-6.42,2.97-6.42,7.03c0,4.02,2.93,6.94,6.42,6.94C104.93,33.11,107.64,30.18,107.64,26.16z M120.97,3.06v33.89h-5.07V3.06H120.97z M140.89,29.92l3.93,2.62c-1.27,1.88-4.32,5.11-9.61,5.11c-6.55,0-11.28-5.07-11.28-11.53c0-6.86,4.77-11.53,10.71-11.53c5.98,0,8.91,4.76,9.87,7.34l0.52,1.31l-15.42,6.38c1.18,2.31,3.01,3.49,5.59,3.49C137.79,33.11,139.58,31.84,140.89,29.92zM128.79,25.77l10.31-4.28c-0.57-1.44-2.27-2.45-4.28-2.45C132.24,19.04,128.66,21.31,128.79,25.77z"/> </svg>Workspace </a> </li> </ul> </span> </div> <div class="devsite-top-logo-row-middle"> <div class="devsite-header-upper-tabs"> <devsite-tabs class="upper-tabs"> <nav class="devsite-tabs-wrapper" aria-label="Upper tabs"> <tab > <a href="https://developers.google.com/workspace" track-metadata-eventdetail="https://developers.google.com/workspace" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - home" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Home" track-name="home" > Home </a> </tab> <tab class="devsite-active"> <a href="https://developers.google.com/cloud-search" track-metadata-eventdetail="https://developers.google.com/cloud-search" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - cloud search" track-metadata-module="primary nav" aria-label="Cloud Search, selected" data-category="Site-Wide Custom Events" data-label="Tab: Cloud Search" track-name="cloud search" > Cloud Search </a> </tab> <tab class="devsite-dropdown "> <a href="https://developers.google.com/workspace/products-menu" track-metadata-eventdetail="https://developers.google.com/workspace/products-menu" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - all products" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: All products" track-name="all products" > All products </a> <a href="#" role="button" aria-haspopup="true" aria-expanded="false" aria-label="Dropdown menu for All products" track-type="nav" track-metadata-eventdetail="https://developers.google.com/workspace/products-menu" track-metadata-position="nav - all products" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: All products" track-name="all products" class="devsite-tabs-dropdown-toggle devsite-icon devsite-icon-arrow-drop-down"></a> <div class="devsite-tabs-dropdown" aria-label="submenu" hidden> <div class="devsite-tabs-dropdown-content"> <div class="devsite-tabs-dropdown-column "> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-title" role="heading" tooltip>Google Workspace apps</li> <li class="devsite-nav-item"> <a href="https://developers.google.com/admin-sdk" track-type="nav" track-metadata-eventdetail="https://developers.google.com/admin-sdk" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline="google workspace apps" tooltip data-category="Workspace top menu navigation" data-label="Tab menu: All products - Admin console" > <div class="devsite-nav-item-title"> Admin console </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/cloud-search" track-type="nav" track-metadata-eventdetail="https://developers.google.com/cloud-search" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline="google workspace apps" tooltip data-label="Tab menu: All products - Cloud Search" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> Cloud Search </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/gmail" track-type="nav" track-metadata-eventdetail="https://developers.google.com/gmail" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline="google workspace apps" tooltip data-label="Tab menu: All products - Gmail" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> Gmail </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/calendar" track-type="nav" track-metadata-eventdetail="https://developers.google.com/calendar" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline="google workspace apps" tooltip data-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="https://developers.google.com/workspace/chat" track-type="nav" track-metadata-eventdetail="https://developers.google.com/workspace/chat" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline="google workspace apps" tooltip data-label="Tab menu: All products - Google Chat" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> Google Chat </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/classroom" track-type="nav" track-metadata-eventdetail="https://developers.google.com/classroom" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline="google workspace apps" tooltip data-label="Tab menu: All products - Google Classroom" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> Google Classroom </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/docs" track-type="nav" track-metadata-eventdetail="https://developers.google.com/docs" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline="google workspace apps" tooltip data-category="Workspace top menu navigation" data-label="Tab menu: All products - Google Docs" > <div class="devsite-nav-item-title"> Google Docs </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/drive" track-type="nav" track-metadata-eventdetail="https://developers.google.com/drive" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline="google workspace apps" tooltip data-category="Workspace top menu navigation" data-label="Tab menu: All products - Google Drive" > <div class="devsite-nav-item-title"> Google Drive </div> </a> </li> </ul> </div> <div class="devsite-tabs-dropdown-column "> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-title" role="heading" tooltip> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/forms" track-type="nav" track-metadata-eventdetail="https://developers.google.com/forms" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline=" " tooltip data-label="Tab menu: All products - Google Forms" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> Google Forms </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/keep" track-type="nav" track-metadata-eventdetail="https://developers.google.com/keep" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline=" " tooltip data-label="Tab menu: All products - Google Keep" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> Google Keep </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/meet" track-type="nav" track-metadata-eventdetail="https://developers.google.com/meet" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline=" " tooltip data-label="Tab menu: All products - Google Meet" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> Google Meet </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/sheets" track-type="nav" track-metadata-eventdetail="https://developers.google.com/sheets" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline=" " tooltip data-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="https://developers.google.com/workspace/sites" track-type="nav" track-metadata-eventdetail="https://developers.google.com/workspace/sites" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline=" " tooltip data-category="Workspace top menu navigation" data-label="Tab menu: All products - Google Sites" > <div class="devsite-nav-item-title"> Google Sites </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/slides" track-type="nav" track-metadata-eventdetail="https://developers.google.com/slides" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline=" " tooltip data-label="Tab menu: All products - Google Slides" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> Google Slides </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/tasks" track-type="nav" track-metadata-eventdetail="https://developers.google.com/tasks" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline=" " tooltip data-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="https://developers.google.com/vault" track-type="nav" track-metadata-eventdetail="https://developers.google.com/vault" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline=" " tooltip data-label="Tab menu: All products - Google Vault" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> Google Vault </div> </a> </li> </ul> </div> <div class="devsite-tabs-dropdown-column "> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-title" role="heading" tooltip>Extend, automate & share</li> <li class="devsite-nav-item"> <a href="https://developers.google.com/workspace/add-ons" track-type="nav" track-metadata-eventdetail="https://developers.google.com/workspace/add-ons" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline="extend, automate & share" tooltip data-label="Tab menu: All products - Add-ons" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> Add-ons </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/apps-script" track-type="nav" track-metadata-eventdetail="https://developers.google.com/apps-script" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline="extend, automate & share" tooltip data-label="Tab menu: All products - Apps Script" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> Apps Script </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/workspace/chat/overview" track-type="nav" track-metadata-eventdetail="https://developers.google.com/workspace/chat/overview" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline="extend, automate & share" tooltip data-label="Tab menu: All products - Chat apps" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> Chat apps </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/drive/api/guides/about-apps" track-type="nav" track-metadata-eventdetail="https://developers.google.com/drive/api/guides/about-apps" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline="extend, automate & share" tooltip data-category="Workspace top menu navigation" data-label="Tab menu: All products - Drive apps" > <div class="devsite-nav-item-title"> Drive apps </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/workspace/marketplace" track-type="nav" track-metadata-eventdetail="https://developers.google.com/workspace/marketplace" track-metadata-position="nav - all products" track-metadata-module="tertiary nav" track-metadata-module_headline="extend, automate & share" tooltip data-label="Tab menu: All products - Marketplace" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> Marketplace </div> </a> </li> </ul> </div> </div> </div> </tab> <tab class="devsite-dropdown "> <a href="https://developers.google.com/workspace/resources-menu" track-metadata-eventdetail="https://developers.google.com/workspace/resources-menu" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - resources" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Resources" track-name="resources" > Resources </a> <a href="#" role="button" aria-haspopup="true" aria-expanded="false" aria-label="Dropdown menu for Resources" track-type="nav" track-metadata-eventdetail="https://developers.google.com/workspace/resources-menu" track-metadata-position="nav - resources" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Resources" track-name="resources" class="devsite-tabs-dropdown-toggle devsite-icon devsite-icon-arrow-drop-down"></a> <div class="devsite-tabs-dropdown" aria-label="submenu" hidden> <div class="devsite-tabs-dropdown-content"> <div class="devsite-tabs-dropdown-column "> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-title" role="heading" tooltip>Tools</li> <li class="devsite-nav-item"> <a href="https://admin.google.com/" track-type="nav" track-metadata-eventdetail="https://admin.google.com/" track-metadata-position="nav - resources" track-metadata-module="tertiary nav" track-metadata-module_headline="tools" tooltip data-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="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="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" target="console" data-label="Tab menu: Resources - Google Cloud console" > <div class="devsite-nav-item-title"> Google Cloud console </div> </a> </li> <li class="devsite-nav-item"> <a href="https://developers.google.com/workspace/explore" track-type="nav" track-metadata-eventdetail="https://developers.google.com/workspace/explore" track-metadata-position="nav - resources" track-metadata-module="tertiary nav" track-metadata-module_headline="tools" tooltip data-label="Tab menu: Resources - APIs Explorer" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> APIs Explorer </div> </a> </li> <li class="devsite-nav-item"> <a href="https://addons.gsuite.google.com/uikit/builder" track-type="nav" track-metadata-eventdetail="https://addons.gsuite.google.com/uikit/builder" track-metadata-position="nav - resources" track-metadata-module="tertiary nav" track-metadata-module_headline="tools" tooltip data-category="Workspace top menu navigation" data-label="Tab menu: Resources - Card Builder" target="_blank" > <div class="devsite-nav-item-title"> Card Builder </div> </a> </li> </ul> </div> <div class="devsite-tabs-dropdown-column "> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-title" role="heading" tooltip>Training & support</li> <li class="devsite-nav-item"> <a href="https://developers.google.com/workspace/guides/get-started" track-type="nav" track-metadata-eventdetail="https://developers.google.com/workspace/guides/get-started" track-metadata-position="nav - resources" track-metadata-module="tertiary nav" track-metadata-module_headline="training & support" tooltip data-label="Tab menu: Resources - How to get started" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> How to get started </div> </a> </li> <li class="devsite-nav-item"> <a href="https://codelabs.developers.google.com/?product=googleworkspace" track-type="nav" track-metadata-eventdetail="https://codelabs.developers.google.com/?product=googleworkspace" track-metadata-position="nav - resources" track-metadata-module="tertiary nav" track-metadata-module_headline="training & support" tooltip 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="https://developers.google.com/workspace/support" track-type="nav" track-metadata-eventdetail="https://developers.google.com/workspace/support" track-metadata-position="nav - resources" track-metadata-module="tertiary nav" track-metadata-module_headline="training & support" tooltip data-label="Tab menu: Resources - Developer support" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> Developer support </div> </a> </li> </ul> </div> <div class="devsite-tabs-dropdown-column "> <ul class="devsite-tabs-dropdown-section "> <li class="devsite-nav-title" role="heading" tooltip>Updates</li> <li class="devsite-nav-item"> <a href="https://developers.googleblog.com/search/?query=Google+Workspace" track-type="nav" track-metadata-eventdetail="https://developers.googleblog.com/search/?query=Google+Workspace" track-metadata-position="nav - resources" track-metadata-module="tertiary nav" track-metadata-module_headline="updates" tooltip 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="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="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-label="Tab menu: Resources - Newsletter" data-category="Workspace top menu navigation" > <div class="devsite-nav-item-title"> Newsletter </div> </a> </li> <li class="devsite-nav-item"> <a href="https://twitter.com/workspacedevs" track-type="nav" track-metadata-eventdetail="https://twitter.com/workspacedevs" track-metadata-position="nav - resources" track-metadata-module="tertiary nav" track-metadata-module_headline="updates" tooltip data-label="Tab menu: Resources - X (Twitter)" data-category="Workspace top menu navigation" target="_blank" > <div class="devsite-nav-item-title"> X (Twitter) </div> </a> </li> <li class="devsite-nav-item"> <a href="https://www.youtube.com/channel/UCUcg6az6etU_gRtZVAhBXaw" track-type="nav" track-metadata-eventdetail="https://www.youtube.com/channel/UCUcg6az6etU_gRtZVAhBXaw" track-metadata-position="nav - resources" track-metadata-module="tertiary nav" track-metadata-module_headline="updates" tooltip target="_blank" data-category="Workspace top menu navigation" data-label="Tab menu: Resources - YouTube" > <div class="devsite-nav-item-title"> YouTube </div> </a> </li> </ul> </div> </div> </div> </tab> </nav> </devsite-tabs> </div> <devsite-search enable-signin enable-search enable-suggestions enable-query-completion project-name="Cloud Search" tenant-name="Google for Developers" project-scope="/cloud-search" url-scoped="https://developers.google.com/s/results/cloud-search" > <form class="devsite-search-form" action="https://developers.google.com/s/results" method="GET"> <div class="devsite-search-container"> <button type="button" search-open class="devsite-search-button devsite-header-icon-button button-flat material-icons" aria-label="Open search"></button> <div class="devsite-searchbox"> <input aria-activedescendant="" aria-autocomplete="list" aria-label="Search" aria-expanded="false" aria-haspopup="listbox" autocomplete="off" class="devsite-search-field devsite-search-query" name="q" placeholder="Search" role="combobox" type="text" value="" > <div class="devsite-search-image material-icons" aria-hidden="true"> </div> <div class="devsite-search-shortcut-icon-container" aria-hidden="true"> <kbd class="devsite-search-shortcut-icon">/</kbd> </div> </div> </div> </form> <button type="button" search-close class="devsite-search-button devsite-header-icon-button button-flat material-icons" aria-label="Close search"></button> </devsite-search> </div> <devsite-language-selector> <ul role="presentation"> <li role="presentation"> <a role="menuitem" lang="en" >English</a> </li> <li role="presentation"> <a role="menuitem" lang="de" >Deutsch</a> </li> <li role="presentation"> <a role="menuitem" lang="es" >Español</a> </li> <li role="presentation"> <a role="menuitem" lang="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="id" >Indonesia</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="https://developers.google.com/cloud-search" 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="Cloud Search" > Cloud Search </a> </li> </ul> </div> </div> <div class="devsite-doc-set-nav-row"> <devsite-tabs class="lower-tabs"> <nav class="devsite-tabs-wrapper" aria-label="Lower tabs"> <tab > <a href="https://developers.google.com/cloud-search" track-metadata-eventdetail="https://developers.google.com/cloud-search" 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 class="devsite-active"> <a href="https://developers.google.com/cloud-search/docs/guides" track-metadata-eventdetail="https://developers.google.com/cloud-search/docs/guides" 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="https://developers.google.com/cloud-search/docs/reference" track-metadata-eventdetail="https://developers.google.com/cloud-search/docs/reference" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - reference" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Reference" track-name="reference" > Reference </a> </tab> <tab > <a href="https://developers.google.com/cloud-search/support" track-metadata-eventdetail="https://developers.google.com/cloud-search/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> <tab > <a href="https://developers.google.com/cloud-search/docs/connector-directory" track-metadata-eventdetail="https://developers.google.com/cloud-search/docs/connector-directory" class="devsite-tabs-content gc-analytics-event " track-type="nav" track-metadata-position="nav - connector directory" track-metadata-module="primary nav" data-category="Site-Wide Custom Events" data-label="Tab: Connector Directory" track-name="connector directory" > Connector Directory </a> </tab> </nav> </devsite-tabs> </div> </div> </div> </div> </devsite-header> <devsite-book-nav scrollbars > <div class="devsite-book-nav-filter" > <span class="filter-list-icon material-icons" aria-hidden="true"></span> <input type="text" placeholder="Filter" aria-label="Type to filter" role="searchbox"> <span class="filter-clear-button hidden" data-title="Clear filter" aria-label="Clear filter" role="button" tabindex="0"></span> </div> <nav class="devsite-book-nav devsite-nav nocontent" aria-label="Side menu"> <div class="devsite-mobile-header"> <button type="button" id="devsite-close-nav" class="devsite-header-icon-button button-flat material-icons gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Close navigation" aria-label="Close navigation"> </button> <div class="devsite-product-name-wrapper"> <a href="https://developers.google.com/workspace"> <div class="devsite-product-logo-container" size="medium" > <picture> <img class="devsite-product-logo" alt="Google Workspace" src="https://fonts.gstatic.com/s/i/productlogos/googleg/v6/16px.svg" srcset=" https://fonts.gstatic.com/s/i/productlogos/googleg/v6/16px.svg" sizes="64px" loading="lazy" > </picture> </div> </a> <span class="devsite-product-name"> <ul class="devsite-breadcrumb-list" > <li class="devsite-breadcrumb-item devsite-has-google-wordmark"> <a href="https://developers.google.com/workspace" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Upper Header" data-value="1" track-type="globalNav" track-name="breadcrumb" track-metadata-position="1" track-metadata-eventdetail="Google Workspace" > <svg class="devsite-google-wordmark" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 148 48"> <title>Google</title> <path class="devsite-google-wordmark-svg-path" d="M19.58,37.65c-9.87,0-18.17-8.04-18.17-17.91c0-9.87,8.3-17.91,18.17-17.91c5.46,0,9.35,2.14,12.27,4.94l-3.45,3.45c-2.1-1.97-4.93-3.49-8.82-3.49c-7.21,0-12.84,5.81-12.84,13.02c0,7.21,5.64,13.02,12.84,13.02c4.67,0,7.34-1.88,9.04-3.58c1.4-1.4,2.32-3.41,2.66-6.16H19.58v-4.89h16.47c0.18,0.87,0.26,1.92,0.26,3.06c0,3.67-1.01,8.21-4.24,11.44C28.93,35.9,24.91,37.65,19.58,37.65z M61.78,26.12c0,6.64-5.1,11.53-11.36,11.53s-11.36-4.89-11.36-11.53c0-6.68,5.1-11.53,11.36-11.53S61.78,19.43,61.78,26.12z M56.8,26.12c0-4.15-2.96-6.99-6.39-6.99c-3.43,0-6.39,2.84-6.39,6.99c0,4.11,2.96,6.99,6.39,6.99C53.84,33.11,56.8,30.22,56.8,26.12z M87.25,26.12c0,6.64-5.1,11.53-11.36,11.53c-6.26,0-11.36-4.89-11.36-11.53c0-6.68,5.1-11.53,11.36-11.53C82.15,14.59,87.25,19.43,87.25,26.12zM82.28,26.12c0-4.15-2.96-6.99-6.39-6.99c-3.43,0-6.39,2.84-6.39,6.99c0,4.11,2.96,6.99,6.39,6.99C79.32,33.11,82.28,30.22,82.28,26.12z M112.09,15.29v20.7c0,8.52-5.02,12.01-10.96,12.01c-5.59,0-8.95-3.76-10.22-6.81l4.41-1.83c0.79,1.88,2.71,4.1,5.81,4.1c3.8,0,6.16-2.36,6.16-6.77v-1.66h-0.18c-1.14,1.4-3.32,2.62-6.07,2.62c-5.76,0-11.05-5.02-11.05-11.49c0-6.51,5.28-11.57,11.05-11.57c2.75,0,4.93,1.22,6.07,2.58h0.18v-1.88H112.09z M107.64,26.16c0-4.06-2.71-7.03-6.16-7.03c-3.49,0-6.42,2.97-6.42,7.03c0,4.02,2.93,6.94,6.42,6.94C104.93,33.11,107.64,30.18,107.64,26.16z M120.97,3.06v33.89h-5.07V3.06H120.97z M140.89,29.92l3.93,2.62c-1.27,1.88-4.32,5.11-9.61,5.11c-6.55,0-11.28-5.07-11.28-11.53c0-6.86,4.77-11.53,10.71-11.53c5.98,0,8.91,4.76,9.87,7.34l0.52,1.31l-15.42,6.38c1.18,2.31,3.01,3.49,5.59,3.49C137.79,33.11,139.58,31.84,140.89,29.92zM128.79,25.77l10.31-4.28c-0.57-1.44-2.27-2.45-4.28-2.45C132.24,19.04,128.66,21.31,128.79,25.77z"/> </svg>Workspace </a> </li> </ul> </span> </div> </div> <div class="devsite-book-nav-wrapper"> <div class="devsite-mobile-nav-top"> <ul class="devsite-nav-list"> <li class="devsite-nav-item"> <a href="/workspace" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: Home" track-name="home" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Home" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Home </span> </a> </li> <li class="devsite-nav-item"> <a href="/cloud-search" class="devsite-nav-title gc-analytics-event devsite-nav-active" data-category="Site-Wide Custom Events" data-label="Tab: Cloud Search" track-name="cloud search" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Cloud Search" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Cloud Search </span> </a> <ul class="devsite-nav-responsive-tabs"> <li class="devsite-nav-item"> <a href="/cloud-search" 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="/cloud-search/docs/guides" 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="/cloud-search/docs/reference" class="devsite-nav-title gc-analytics-event devsite-nav-has-children " data-category="Site-Wide Custom Events" data-label="Tab: Reference" track-name="reference" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Reference" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Reference </span> <span class="devsite-nav-icon material-icons" data-icon="forward" > </span> </a> </li> <li class="devsite-nav-item"> <a href="/cloud-search/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> <li class="devsite-nav-item"> <a href="/cloud-search/docs/connector-directory" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: Connector Directory" track-name="connector directory" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Connector Directory" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Connector Directory </span> </a> </li> </ul> </li> <li class="devsite-nav-item"> <a href="/workspace/products-menu" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: All products" track-name="all products" data-category="Site-Wide Custom Events" data-label="Responsive Tab: All products" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > All products </span> </a> <ul class="devsite-nav-responsive-tabs devsite-nav-has-menu "> <li class="devsite-nav-item"> <span class="devsite-nav-title" tooltip data-category="Site-Wide Custom Events" data-label="Tab: All products" track-name="all products" > <span class="devsite-nav-text" tooltip menu="All products"> More </span> <span class="devsite-nav-icon material-icons" data-icon="forward" menu="All products"> </span> </span> </li> </ul> </li> <li class="devsite-nav-item"> <a href="/workspace/resources-menu" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Tab: Resources" track-name="resources" data-category="Site-Wide Custom Events" data-label="Responsive Tab: Resources" track-type="globalNav" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Resources </span> </a> <ul class="devsite-nav-responsive-tabs devsite-nav-has-menu "> <li class="devsite-nav-item"> <span class="devsite-nav-title" tooltip data-category="Site-Wide Custom Events" data-label="Tab: Resources" track-name="resources" > <span class="devsite-nav-text" tooltip menu="Resources"> More </span> <span class="devsite-nav-icon material-icons" data-icon="forward" menu="Resources"> </span> </span> </li> </ul> </li> </ul> </div> <div class="devsite-mobile-nav-bottom"> <ul class="devsite-nav-list" menu="_book"> <li class="devsite-nav-item"><a href="/cloud-search/docs/guides" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/guides" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/guides" ><span class="devsite-nav-text" tooltip>Introduction to Google Cloud Search</span></a></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>Get started</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item devsite-nav-external"><a href="/workspace/guides/get-started" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /workspace/guides/get-started" track-type="bookNav" track-name="click" track-metadata-eventdetail="/workspace/guides/get-started" target="_blank"><span class="devsite-nav-text" tooltip>Overview</span><span class="devsite-nav-icon material-icons" data-icon="external" data-title="External" aria-hidden="true"></span></a></li><li class="devsite-nav-item devsite-nav-external"><a href="/workspace/guides/configure-oauth-consent" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /workspace/guides/configure-oauth-consent" track-type="bookNav" track-name="click" track-metadata-eventdetail="/workspace/guides/configure-oauth-consent" target="_blank"><span class="devsite-nav-text" tooltip>Configure OAuth consent</span><span class="devsite-nav-icon material-icons" data-icon="external" data-title="External" aria-hidden="true"></span></a></li><li class="devsite-nav-item"><a href="/cloud-search/docs/guides/project-setup" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/guides/project-setup" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/guides/project-setup" ><span class="devsite-nav-text" tooltip>Configure access to the Google Cloud Search REST API</span></a></li><li class="devsite-nav-item"><a href="/cloud-search/docs/guides/delegation" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/guides/delegation" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/guides/delegation" ><span class="devsite-nav-text" tooltip>Domain-wide delegation of authority</span></a></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>Get started with Cloud Search</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/cloud-search/docs/tutorials/end-to-end" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/tutorials/end-to-end" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/tutorials/end-to-end" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/cloud-search/docs/tutorials/end-to-end/setup-connector" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/tutorials/end-to-end/setup-connector" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/tutorials/end-to-end/setup-connector" ><span class="devsite-nav-text" tooltip>Build & deploy the connector</span></a></li><li class="devsite-nav-item"><a href="/cloud-search/docs/tutorials/end-to-end/setup-app" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/tutorials/end-to-end/setup-app" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/tutorials/end-to-end/setup-app" ><span class="devsite-nav-text" tooltip>Set up the UI</span></a></li><li class="devsite-nav-item"><a href="/cloud-search/docs/tutorials/end-to-end/finish" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/tutorials/end-to-end/finish" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/tutorials/end-to-end/finish" ><span class="devsite-nav-text" tooltip>Clean up resources</span></a></li></ul></div></li></ul></div></li> <li class="devsite-nav-item"><a href="/cloud-search/docs/guides/schema-guide" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/guides/schema-guide" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/guides/schema-guide" ><span class="devsite-nav-text" tooltip>Create and register a schema</span></a></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>Create connectors</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/cloud-search/docs/guides/connectors" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/guides/connectors" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/guides/connectors" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/cloud-search/docs/guides/content-connector" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/guides/content-connector" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/guides/content-connector" ><span class="devsite-nav-text" tooltip>Create a content connector</span></a></li><li class="devsite-nav-item"><a href="/cloud-search/docs/guides/identity-connector" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/guides/identity-connector" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/guides/identity-connector" ><span class="devsite-nav-text" tooltip>Create an identity connector</span></a></li></ul></div></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>Deploy connectors</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/cloud-search/docs/guides/csv-connector" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/guides/csv-connector" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/guides/csv-connector" ><span class="devsite-nav-text" tooltip>CSV connector</span></a></li><li class="devsite-nav-item"><a href="/cloud-search/docs/guides/apache-nutch-connector" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/guides/apache-nutch-connector" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/guides/apache-nutch-connector" ><span class="devsite-nav-text" tooltip>Apache Nutch indexer plugin</span></a></li><li class="devsite-nav-item"><a href="/cloud-search/docs/guides/database-connector" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/guides/database-connector" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/guides/database-connector" ><span class="devsite-nav-text" tooltip>Database connector</span></a></li><li class="devsite-nav-item"><a href="/cloud-search/docs/guides/filesystem-connector" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/guides/filesystem-connector" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/guides/filesystem-connector" ><span class="devsite-nav-text" tooltip>File systems connector</span></a></li><li class="devsite-nav-item"><a href="/cloud-search/docs/guides/norconex-http-connector" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/guides/norconex-http-connector" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/guides/norconex-http-connector" ><span class="devsite-nav-text" tooltip>Norconex HTTP Collector indexer plugin</span></a></li><li class="devsite-nav-item"><a href="/cloud-search/docs/guides/sharepoint-online-connector" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/guides/sharepoint-online-connector" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/guides/sharepoint-online-connector" ><span class="devsite-nav-text" tooltip>SharePoint online connector</span></a></li><li class="devsite-nav-item"><a href="/cloud-search/docs/guides/sharepoint-on-prem-connector" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/guides/sharepoint-on-prem-connector" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/guides/sharepoint-on-prem-connector" ><span class="devsite-nav-text" tooltip>SharePoint on-premises connector</span></a></li></ul></div></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>Additional connector topics</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/cloud-search/docs/guides/tune-connector" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/guides/tune-connector" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/guides/tune-connector" ><span class="devsite-nav-text" tooltip>Tune connector settings</span></a></li><li class="devsite-nav-item"><a href="/cloud-search/docs/guides/acls" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/guides/acls" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/guides/acls" ><span class="devsite-nav-text" tooltip>Map ACLs</span></a></li><li class="devsite-nav-item"><a href="/cloud-search/docs/guides/queues" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/guides/queues" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/guides/queues" ><span class="devsite-nav-text" tooltip>The Cloud Search Indexing Queues</span></a></li><li class="devsite-nav-item"><a href="/cloud-search/docs/guides/identity-mapping" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/guides/identity-mapping" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/guides/identity-mapping" ><span class="devsite-nav-text" tooltip>Sync different identity systems</span></a></li><li class="devsite-nav-item"><a href="/cloud-search/docs/guides/synonyms" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/guides/synonyms" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/guides/synonyms" ><span class="devsite-nav-text" tooltip>Define synonyms</span></a></li><li class="devsite-nav-item"><a href="/cloud-search/docs/guides/handle-sensitive" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/guides/handle-sensitive" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/guides/handle-sensitive" ><span class="devsite-nav-text" tooltip>Obfuscate sensitive configuration file information</span></a></li><li class="devsite-nav-item"><a href="/cloud-search/docs/guides/thumbnails" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/guides/thumbnails" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/guides/thumbnails" ><span class="devsite-nav-text" tooltip>Enable thumbnails</span></a></li><li class="devsite-nav-item"><a href="/cloud-search/docs/guides/operations" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/guides/operations" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/guides/operations" ><span class="devsite-nav-text" tooltip>Handle revisions after manual deletes</span></a></li></ul></div></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>Create search interfaces</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/cloud-search/docs/guides/search-interface" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/guides/search-interface" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/guides/search-interface" ><span class="devsite-nav-text" tooltip>Overview</span></a></li><li class="devsite-nav-item"><a href="/cloud-search/docs/guides/query-guide" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/guides/query-guide" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/guides/query-guide" ><span class="devsite-nav-text" tooltip>Create a custom interface using the Query API</span></a></li><li class="devsite-nav-item"><a href="/cloud-search/docs/guides/search-widget" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/guides/search-widget" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/guides/search-widget" ><span class="devsite-nav-text" tooltip>Create a search interface with the search widget</span></a></li></ul></div></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>Optimize the search experience</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/cloud-search/docs/guides/default-optimizations" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/guides/default-optimizations" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/guides/default-optimizations" ><span class="devsite-nav-text" tooltip>Default expansions, optimizations, and interpretations</span></a></li><li class="devsite-nav-item"><a href="/cloud-search/docs/guides/improve-search-quality" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/guides/improve-search-quality" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/guides/improve-search-quality" ><span class="devsite-nav-text" tooltip>Improve search quality</span></a></li><li class="devsite-nav-item"><a href="/cloud-search/docs/guides/query-interpretation" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/guides/query-interpretation" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/guides/query-interpretation" ><span class="devsite-nav-text" tooltip>Structure a schema for optimal query interpretation</span></a></li><li class="devsite-nav-item"><a href="/cloud-search/docs/guides/autocomplete" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/guides/autocomplete" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/guides/autocomplete" ><span class="devsite-nav-text" tooltip>Implement autocomplete</span></a></li></ul></div></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>Monitoring and security</span> </div><ul class="devsite-nav-section"><li class="devsite-nav-item"><a href="/cloud-search/docs/guides/implement-vpc-service-controls" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/guides/implement-vpc-service-controls" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/guides/implement-vpc-service-controls" ><span class="devsite-nav-text" tooltip>Enhance security with VPC Service Controls</span></a></li><li class="devsite-nav-item"><a href="/cloud-search/docs/guides/audit-logging-manual" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/guides/audit-logging-manual" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/guides/audit-logging-manual" ><span class="devsite-nav-text" tooltip>Audit logging</span></a></li></ul></div></li> <li class="devsite-nav-item"><a href="/cloud-search/docs/guides/known-issues" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/guides/known-issues" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/guides/known-issues" ><span class="devsite-nav-text" tooltip>Known issues</span></a></li> <li class="devsite-nav-item"><a href="/cloud-search/docs/samples" class="devsite-nav-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Book nav link, pathname: /cloud-search/docs/samples" track-type="bookNav" track-name="click" track-metadata-eventdetail="/cloud-search/docs/samples" ><span class="devsite-nav-text" tooltip>Samples</span></a></li> </ul> <ul class="devsite-nav-list" menu="All products" aria-label="Side menu" hidden> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > Google Workspace apps </span> </span> </li> <li class="devsite-nav-item"> <a href="/admin-sdk" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Admin console" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Admin console </span> </a> </li> <li class="devsite-nav-item"> <a href="/cloud-search" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Cloud Search" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Cloud Search </span> </a> </li> <li class="devsite-nav-item"> <a href="/gmail" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Gmail" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Gmail </span> </a> </li> <li class="devsite-nav-item"> <a href="/calendar" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Calendar" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Google Calendar </span> </a> </li> <li class="devsite-nav-item"> <a href="/workspace/chat" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Chat" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Google Chat </span> </a> </li> <li class="devsite-nav-item"> <a href="/classroom" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Classroom" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Google Classroom </span> </a> </li> <li class="devsite-nav-item"> <a href="/docs" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Docs" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Google Docs </span> </a> </li> <li class="devsite-nav-item"> <a href="/drive" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Drive" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Google Drive </span> </a> </li> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > </span> </span> </li> <li class="devsite-nav-item"> <a href="/forms" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Forms" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Google Forms </span> </a> </li> <li class="devsite-nav-item"> <a href="/keep" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Keep" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Google Keep </span> </a> </li> <li class="devsite-nav-item"> <a href="/meet" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Meet" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Google Meet </span> </a> </li> <li class="devsite-nav-item"> <a href="/sheets" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Sheets" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Google Sheets </span> </a> </li> <li class="devsite-nav-item"> <a href="/workspace/sites" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Sites" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Google Sites </span> </a> </li> <li class="devsite-nav-item"> <a href="/slides" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Slides" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Google Slides </span> </a> </li> <li class="devsite-nav-item"> <a href="/tasks" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Tasks" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Google Tasks </span> </a> </li> <li class="devsite-nav-item"> <a href="/vault" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Vault" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Google Vault </span> </a> </li> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > Extend, automate & share </span> </span> </li> <li class="devsite-nav-item"> <a href="/workspace/add-ons" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Add-ons" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Add-ons </span> </a> </li> <li class="devsite-nav-item"> <a href="/apps-script" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Apps Script" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Apps Script </span> </a> </li> <li class="devsite-nav-item"> <a href="/workspace/chat/overview" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Chat apps" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Chat apps </span> </a> </li> <li class="devsite-nav-item"> <a href="/drive/api/guides/about-apps" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Drive apps" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Drive apps </span> </a> </li> <li class="devsite-nav-item"> <a href="/workspace/marketplace" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Marketplace" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Marketplace </span> </a> </li> </ul> <ul class="devsite-nav-list" menu="Resources" aria-label="Side menu" hidden> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > Tools </span> </span> </li> <li class="devsite-nav-item"> <a href="https://admin.google.com/" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Admin console" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Admin console </span> </a> </li> <li class="devsite-nav-item"> <a href="https://script.google.com/" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Apps Script dashboard" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Apps Script dashboard </span> </a> </li> <li class="devsite-nav-item"> <a href="https://console.cloud.google.com/workspace-api" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Google Cloud console" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Google Cloud console </span> </a> </li> <li class="devsite-nav-item"> <a href="/workspace/explore" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: APIs Explorer" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > APIs Explorer </span> </a> </li> <li class="devsite-nav-item"> <a href="https://addons.gsuite.google.com/uikit/builder" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Card Builder" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Card Builder </span> </a> </li> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > Training & support </span> </span> </li> <li class="devsite-nav-item"> <a href="/workspace/guides/get-started" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: How to get started" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > How to get started </span> </a> </li> <li class="devsite-nav-item"> <a href="https://codelabs.developers.google.com/?product=googleworkspace" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Codelabs" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Codelabs </span> </a> </li> <li class="devsite-nav-item"> <a href="/workspace/support" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Developer support" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Developer support </span> </a> </li> <li class="devsite-nav-item devsite-nav-heading"> <span class="devsite-nav-title" tooltip > <span class="devsite-nav-text" tooltip > Updates </span> </span> </li> <li class="devsite-nav-item"> <a href="https://developers.googleblog.com/search/?query=Google+Workspace" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Blog" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Blog </span> </a> </li> <li class="devsite-nav-item"> <a href="/workspace/preview" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Developer Previews" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Developer Previews </span> </a> </li> <li class="devsite-nav-item"> <a href="/workspace/newsletters" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: Newsletter" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > Newsletter </span> </a> </li> <li class="devsite-nav-item"> <a href="https://twitter.com/workspacedevs" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: X (Twitter)" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > X (Twitter) </span> </a> </li> <li class="devsite-nav-item"> <a href="https://www.youtube.com/channel/UCUcg6az6etU_gRtZVAhBXaw" class="devsite-nav-title gc-analytics-event " data-category="Site-Wide Custom Events" data-label="Responsive Tab: YouTube" track-type="navMenu" track-metadata-eventDetail="globalMenu" track-metadata-position="nav"> <span class="devsite-nav-text" tooltip > YouTube </span> </a> </li> </ul> </div> </div> </nav> </devsite-book-nav> <section id="gc-wrapper"> <main role="main" class="devsite-main-content" has-book-nav > <devsite-content> <article class="devsite-article"> <div class="devsite-article-meta nocontent" role="navigation"> <ul class="devsite-breadcrumb-list" aria-label="Breadcrumb"> <li class="devsite-breadcrumb-item "> <a href="https://developers.google.com/" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Breadcrumbs" data-value="1" track-type="globalNav" track-name="breadcrumb" track-metadata-position="1" track-metadata-eventdetail="" > Home </a> </li> <li class="devsite-breadcrumb-item "> <div class="devsite-breadcrumb-guillemet material-icons" aria-hidden="true"></div> <a href="https://developers.google.com/workspace" class="devsite-breadcrumb-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Breadcrumbs" data-value="2" track-type="globalNav" track-name="breadcrumb" track-metadata-position="2" track-metadata-eventdetail="Google Workspace" > Google Workspace </a> </li> <li class="devsite-breadcrumb-item "> <div class="devsite-breadcrumb-guillemet material-icons" aria-hidden="true"></div> <a href="https://developers.google.com/cloud-search" 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="Cloud Search" > Cloud Search </a> </li> <li class="devsite-breadcrumb-item "> <div class="devsite-breadcrumb-guillemet material-icons" aria-hidden="true"></div> <a href="https://developers.google.com/cloud-search/docs/guides" 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="Cloud Search" product-id="717201" bucket="cloud-search" context="" version="t-devsite-webserver-20241114-r00-rc02.464922260396498922" data-label="Send Feedback Button" track-type="feedback" track-name="sendFeedbackLink" track-metadata-position="header" class="nocontent" project-feedback-url="https://issuetracker.google.com/issues/new?component=1134311&template=1640548" project-icon="https://www.gstatic.com/images/branding/product/1x/google_cloud_search_64dp.png" project-support-url="https://developers.google.com/cloud-search/support" > <button> Send feedback </button> </devsite-feedback> <h1 class="devsite-page-title" tabindex="-1"> Create a search interface with the Query API </h1> <devsite-feature-tooltip ack-key="AckCollectionsBookmarkTooltipDismiss" analytics-category="Site-Wide Custom Events" analytics-action-show="Callout Profile displayed" analytics-action-close="Callout Profile dismissed" analytics-label="Create Collection Callout" class="devsite-page-bookmark-tooltip nocontent" dismiss-button="true" id="devsite-collections-dropdown" dismiss-button-text="Dismiss" close-button-text="Got it"> <devsite-bookmark></devsite-bookmark> <span slot="popout-heading"> Stay organized with collections </span> <span slot="popout-contents"> Save and categorize content based on your preferences. </span> </devsite-feature-tooltip> <div class="devsite-page-title-meta"><devsite-view-release-notes></devsite-view-release-notes></div> <devsite-toc class="devsite-nav" depth="2" devsite-toc-embedded > </devsite-toc> <div class="devsite-article-body clearfix "> <p>The Query API provides search and suggest methods for building a search interface or embedding search results in an application.</p> <p>For web applications with minimal requirements, consider using search widget. For more information, see <a href="/cloud-search/docs/guides/search-widget">Create a search interface with the search widget</a></p> <h2 id="build_a_search_interface" data-text="Build a search interface" tabindex="-1">Build a search interface</h2> <p>Building a minimal search interface requires several steps:</p> <ol> <li>Configure a search application</li> <li>Generate OAuth credentials for the application</li> <li>Query the index</li> <li>Display the query results</li> </ol> <p>You can further enhance the search interface with features such as paging, sorting, filtering, facets, and auto-suggest.</p> <h2 id="configure_a_search_application" data-text="Configure a search application" tabindex="-1">Configure a search application</h2> <p>You must create at least one <strong>search application</strong> to associate with each search interface you create. A search application provides the default parameters for a query, such as the data sources to use, the sort order, filters, and facets to request. If needed, you can override these parameters using the query API.</p> <aside class="note"><strong>Note:</strong><span> While you can override search application settings in calls to <code translate="no" dir="ltr">query</code>, you can not increase the number of data sources used during a query beyond those configured in the search application. You can restrict the query to a subset of the configured data sources by setting <code translate="no" dir="ltr">dataSourceRestrictions</code> in the query call.</span></aside><aside class="note"><strong>Note:</strong><span> When a schema is updated or deleted, the search application is also updated. For example, if a schema operator is renamed, then it is also renamed in the search application configuration. If the schema update is incompatible with the search application, and it's not possible to update the search application, then the schema update fails and an error is sent in the update response.</span></aside> <p>For more information about search applications, refer to <a href="https://support.google.com/a/answer/9043922" target="_blank" class="external">Customize the search experience in Cloud Search</a>..</p> <h2 id="generate_oauth_credentials_for_the_application" data-text="Generate OAuth credentials for the application" tabindex="-1">Generate OAuth credentials for the application</h2> <p>In addition to the steps in <a href="/cloud-search/docs/guides/project-setup">Configure access to the Google Cloud Search API</a>, you also must generate OAuth credentials for the web application. The type of credentials you create depends on the context the API is used in.</p> <p>Use the credentials to request authorization on behalf of the user. Use the scope <code translate="no" dir="ltr">https://www.googleapis.com/auth/cloud_search.query</code> when requesting authorization.</p> <p>For additional information about OAuth options and client libraries, see [Google Identity Platform](https://developers.google.com/identity/choose-auth{: .external target="_blank"}.</p> <h2 id="query_the_index" data-text="Query the index" tabindex="-1">Query the index</h2> <p>Use the <a href="/cloud-search/docs/reference/rest/v1/query/search"><code translate="no" dir="ltr">search</code></a> method to perform searches against the index.</p> <p>Every request must include two pieces of information: a text <code translate="no" dir="ltr">query</code> to match items against and a <code translate="no" dir="ltr">searchApplicationId</code> identifying the ID for the <em>search application</em> to use.</p> <p>The following snippet shows a query to movie data source for the movie Titanic:</p> <pre class="prettyprint lang-json" translate="no" dir="ltr"><code translate="no" dir="ltr">{ "query": "titanic", "requestOptions": { "searchApplicationId": "searchapplications/<search_app_id>" }, } </code></pre> <h2 id="display_query_results" data-text="Display query results" tabindex="-1">Display query results</h2> <p>At a minimum, search interfaces are expected to display the item <code translate="no" dir="ltr">title</code> as well as a link to the original item. You can further enhance the display of search results by leveraging additional information present in search results such as the snippet and metadata.</p> <aside class="note"><strong>Note:</strong><span> If you don't see results from a data source, ensure you've created a custom search application and that the data source is enabled for that search application. For more information on creating search applications, refer to <a href="https://support.google.com/a/answer/9043922" target="_blank" class="external">Customize the search experience in Cloud Search</a>..</span></aside> <h3 id="handle_supplemental_results" data-text="Handle supplemental results" tabindex="-1">Handle supplemental results</h3> <p>By default, Cloud Search returns supplemental results when there are insufficient results for the user's query. The <a href="/cloud-search/docs/reference/rest/v1/query/search#QueryInterpretation"><code translate="no" dir="ltr">queryInterpretation</code></a> field in the response indicates when supplemental results are returned. If only supplemental results are returned, <code translate="no" dir="ltr">InterpretationType</code> is set to <code translate="no" dir="ltr">REPLACE</code>. If a few results for the original query are returned along with supplemental results, <code translate="no" dir="ltr">InterpretationType</code> is set to <code translate="no" dir="ltr">BLEND</code>. In either case <code translate="no" dir="ltr">QueryInterpretation.Reason = NOT_ENOUGH_RESULTS_FOUND_FOR_USER_QUERY</code>.</p> <p>When some supplemental results are returned, consider providing text to indicate supplemental results were returned. For example, in the case of a <code translate="no" dir="ltr">REPLACE</code>, you might display the string "Your search for your original query did not match any results. Showing results for similar queries.”</p> <p>In the case of a <code translate="no" dir="ltr">BLEND</code>, you might display the string "Your search for your original query did not match enough results. Including results for similar queries."</p> <h3 id="handle_people_results" data-text="Handle people results" tabindex="-1">Handle people results</h3> <p>Cloud Search returns two types of "people results": documents related to a person whose name is used in the query and employee information for a person whose name is used in a query. The latter type of result is a function of Cloud Search's People Search feature and the results for such a query can be found in the <a href="/cloud-search/docs/reference/rest/v1/query/search#StructuredResult"><code translate="no" dir="ltr">structuredResults</code></a> field of a query API response:</p> <pre class="prettyprint" translate="no" dir="ltr"><code translate="no" dir="ltr">{ "results": [...], "structuredResults": [{ "person": {...} }] } </code></pre><aside class="note"><strong>Note:</strong><span> If more than 20 custom attributes are defined in the customer's domain, only 20 of them are used for People Search.</span></aside> <h4 id="direct_reports_matching" data-text="Direct Reports Matching" tabindex="-1">Direct Reports Matching</h4> <p>Direct Reports Matching is a Cloud Search's People Search feature which lets users see the direct reports of a person in their organization. The result is available within the <code translate="no" dir="ltr">structuredResults</code> field.</p> <p>For queries about a person's manager or direct reports, the response has an <code translate="no" dir="ltr">assistCardProtoHolder</code> within the <code translate="no" dir="ltr">structuredResults</code>. The <code translate="no" dir="ltr">assistCardProtoHolder</code> has a field called <code translate="no" dir="ltr">cardType</code> which will be equal to <code translate="no" dir="ltr">RELATED_PEOPLE_ANSWER_CARD</code>. The <code translate="no" dir="ltr">assistCardProtoHolder</code> contains a card called <code translate="no" dir="ltr">relatedPeopleAnswerCard</code> which contains the actual response. It contains the <code translate="no" dir="ltr">subject</code> (the person who was included in the query) and <code translate="no" dir="ltr">relatedPeople</code> which are the set of people related to the subject. The <code translate="no" dir="ltr">relationType</code> field returns the value <code translate="no" dir="ltr">MANAGER</code> or <code translate="no" dir="ltr">DIRECT_REPORTS</code>.</p> <p>The following code shows an example response for a direct reports matching query:</p> <pre class="prettyprint lang-json" translate="no" dir="ltr"><code translate="no" dir="ltr">{ "results": [], "structuredResults": [{ "assistCardProtoHolder": { "extensions": { "@type": "type.googleapis.com/enterprise.topaz.sidekick.AssistCardProto", "cardMetadata": { "cardCategory": "ANSWER" }, "cardType": "RELATED_PEOPLE_ANSWER_CARD", "relatedPeopleAnswerCard": { "subject": { "email": "AdamStanford@psincs-test01.newjnj.com", "displayName": "Adam Stanford" "manager": { "email": "simonsais@psincs-test01.newjnj.com" } }, "relatedPeople": [{ "email": "EdgarMountainRamirez@psincs-test01.newjnj.com", "displayName": "Edgar Mountain Ramirez" }, { "email": "FranciscoJoseMartinez@psincs-test01.newjnj.com", "displayName": "Francisco Jose Martinez" }], "relationType": "DIRECT_REPORTS", } } } }] } </code></pre> <h4 id="turn_off_optimizations_including_supplemental_results" data-text="Turn off optimizations, including supplemental results" tabindex="-1">Turn off optimizations, including supplemental results</h4> <p>By default, optimizations, such as supplemental results, are enabled. You can, however turn off all optimizations or just supplemental results at both the search application and query level:</p> <ul> <li><p>To turn off all optimizations at the search application-level, including including supplemental results, synonyms, and spell corrections, set <a href="/cloud-search/docs/reference/rest/v1/settings.searchapplications#QueryInterpretationConfig"><code translate="no" dir="ltr">QueryInterpretationConfig.force_verbatim_mode</code></a> to <code translate="no" dir="ltr">true</code> in the search applications.</p></li> <li><p>To turn off all optimizations at the search query-level, including supplemental results, synonyms, and spell corrections, set <a href="/cloud-search/docs/reference/rest/v1/query/search#QueryInterpretationOptions"><code translate="no" dir="ltr">QueryInterpretationOptions.enableVerbatimMode</code></a> to <code translate="no" dir="ltr">true</code> in the search query.</p></li> <li><p>To turn off supplemental results at the search application-level, set <a href="/cloud-search/docs/reference/rest/v1/settings.searchapplications#QueryInterpretationConfig"><code translate="no" dir="ltr">QueryInterpretationOptions.forceDisableSupplementalResults</code></a> to <code translate="no" dir="ltr">true</code> in the search query.</p></li> <li><p>To turn off supplemental results at the search query-level, set <a href="/cloud-search/docs/reference/rest/v1/query/search#QueryInterpretationOptions"><code translate="no" dir="ltr">QueryInterpretationOptions.disableSupplementalResults</code></a> to <code translate="no" dir="ltr">true</code> in the search query.</p></li> </ul> <h3 id="highlight_snippets" data-text="Highlight snippets" tabindex="-1">Highlight snippets</h3> <p>For returned items containing indexed text or HTML content, a snippet of the content is returned. This content helps users determine the relevancy of the returned item.</p> <p>If query terms are present in the snippet, one or more match ranges identifying the location of the terms are also returned.</p> <p>Use the <code translate="no" dir="ltr">matchRanges</code> to highlight the matching text when rendering the results. The following javascript example converts the snippet into HTML markup with each matching range wrapped in a <code translate="no" dir="ltr"><span></code> tag.</p> <pre class="prettyprint lang-js" translate="no" dir="ltr"><code translate="no" dir="ltr">function highlightSnippet(snippet) { let text = snippet.snippet; let formattedText = text; if (snippet.matchRanges) { let parts = []; let index = 0; for (let match of snippet.matchRanges) { let start = match.start || 0; // Default to 0 if omitted let end = match.end; if (index < start) { // Include any leading text before/between ranges parts.push(text.slice(index, start)); } parts.push('<span class="highlight">'); parts.push(text.slice(start, end)); parts.push('</span>'); index = end; } parts.push(text.slice(index)); // Include any trailing text after last range formattedText = parts.join(''); } return formattedText; } </code></pre> <p>Given the snippet:</p> <pre class="prettyprint lang-js" translate="no" dir="ltr"><code translate="no" dir="ltr">{ "snippet": "This is an example snippet...", "matchRanges": [ { "start": 11, "end": 18 } ] } </code></pre> <p>The resulting HTML string is:</p> <pre class="prettyprint lang-html" translate="no" dir="ltr"><code translate="no" dir="ltr">This is an <span class="highlight">example</span> snippet... </code></pre> <h3 id="display_metadata" data-text="Display metadata" tabindex="-1">Display metadata</h3> <p>Use the <a href="/cloud-search/docs/reference/rest/v1/query/search#Metadata"><code translate="no" dir="ltr">metadata</code></a> field to display additional information about the returned item that may be relevant to users. The <code translate="no" dir="ltr">metadata</code> field includes the <code translate="no" dir="ltr">createTime</code> and <code translate="no" dir="ltr">updateTime</code> of the item as well as any returnable structured data associated with the item.</p> <p>To display the structured data, use the <a href="/cloud-search/docs/reference/rest/v1/query/search#ResultDisplayMetadata"><code translate="no" dir="ltr">displayOptions</code></a> field. The <code translate="no" dir="ltr">displayOptions</code> field contains the display label for the object type and a set of <code translate="no" dir="ltr">metalines</code>. Each metaline is an array of display labels and value pairs as configured in the <a href="/cloud-search/docs/guides/schema-guide">schema</a>.</p> <h2 id="retrieve_additional_results" data-text="Retrieve additional results" tabindex="-1">Retrieve additional results</h2> <p>To retrieve additional results, set the <a href="/cloud-search/docs/reference/rest/v1/query/search#body.request_body.FIELDS-table"><code translate="no" dir="ltr">start</code></a> field in the request to the desired offset. You can adjust the size of each page with the <a href="/cloud-search/docs/reference/rest/v1/query/search#body.request_body.FIELDS-table"><code translate="no" dir="ltr">pageSize</code></a> field.</p> <p>To display the number of returned items or to display paging controls to page through returned items, use the <a href="/cloud-search/docs/reference/rest/v1/query/search#response-body"><code translate="no" dir="ltr">resultCount</code></a> field. Depending on the size of the result set, either the actual value or an estimated value is provided.</p> <h2 id="sort_results" data-text="Sort results" tabindex="-1">Sort results</h2> <p>Use the <a href="/cloud-search/docs/reference/rest/v1/query/search#body.request_body.FIELDS-table"><code translate="no" dir="ltr">sortOptions</code></a> field to specify the order of returned items. The <code translate="no" dir="ltr">sortOptions</code> value is an object with two fields:</p> <ul> <li><code translate="no" dir="ltr">operatorName</code> — an operator for the structured data property to sort by. For properties with multiple operators, you can only sort using the main equality operator.</li> <li><code translate="no" dir="ltr">sortOrder</code> — the direction to sort, either <code translate="no" dir="ltr">ASCENDING</code> or <code translate="no" dir="ltr">DESCENDING</code>.</li> </ul> <p>Relevance is also used as the secondary sort key. If no sort order is specified in a query, results are ranked only by relevance.</p> <pre class="prettyprint lang-json" translate="no" dir="ltr"><code translate="no" dir="ltr">"sortOptions": { "operatorName": "priority", "sortOrder": "DESCENDING" } </code></pre> <h2 id="add_filters" data-text="Add filters" tabindex="-1">Add filters</h2> <p>In addition to query expressions, you can further restrict results by applying <a href="/cloud-search/docs/reference/rest/v1/settings.searchapplications#FilterOptions">filters</a>. You can specify filters both in the <a href="https://support.google.com/a/answer/9043922" target="_blank" class="external">search application</a> as well as in the search request.</p> <aside class="note"><strong>Note:</strong><span> If filters for a data source are present in both the search application and the search request, both filters must evaluate to true for an item to be returned.</span></aside> <p>To add filters in a request or search application, add the filter in the <a href="/cloud-search/docs/reference/rest/v1/settings.searchapplications#FilterOptions"><code translate="no" dir="ltr">dataSourceRestrictions.filterOptions[]</code></a> field.</p> <p>There are 2 primary ways to further filter a data source:</p> <ul> <li>Object filters, via the <code translate="no" dir="ltr">filterOptions[].objectType</code> property — restricts matching items to the specified type as defined in a custom schema.</li> <li><a href="/cloud-search/docs/reference/rest/v1/settings.searchapplications#ValueFilter">Value filters</a> — restricts matching items based on a <a href="/cloud-search/docs/guides/schema-guide#query_operator_options">query operator</a> and supplied value.</li> </ul> <p><a href="/cloud-search/docs/reference/rest/v1/settings.searchapplications#CompositeFilter">Composite filters</a> allow combining multiple value filters into logical expressions for more complex queries.</p> <p>In the movie schema example, you could apply an age constraint based on the current user and restrict the available movies based on the MPAA rating.</p> <pre class="prettyprint lang-json" translate="no" dir="ltr"><code translate="no" dir="ltr">{ "query": "adventure", "requestOptions": { "searchApplicationId": "<search_app_id>" }, "dataSourceRestrictions": [ { "source": { "name": "datasources/<data_source_id>" }, "filterOptions": [ { "objectType": "movie", "filter": { "compositeFilter": { "logicOperator": "AND" "subFilters": [ { "compositeFilter": { "logicOperator": "OR" "subFilters": [ { "valueFilter": { "operatorName": "rated", "value": { "stringValue": "G" } } }, { "valueFilter": { "operatorName": "rated", "value": { "stringValue": "PG" } } } ] } ] } } } ] } ] } </code></pre> <h2 id="refine_results_with_facets" data-text="Refine results with facets" tabindex="-1">Refine results with facets</h2> <p>Facets are indexed properties that represent categories for refining search results. Use facets to help users interactively refine their queries and find relevant items faster.</p> <p>Facets can be defined in your <a href="https://support.google.com/a/answer/9043922" target="_blank" class="external">search application</a>. and overridden by settings in your query.</p> <p>When requesting facets, Cloud Search computes the most-frequent values for the requested properties among the matching items. These values are returned in the response. Use these values to construct filters that narrow the results on subsequent queries.</p> <p>The typical interaction pattern with facets is:</p> <ol> <li>Make an initial query specifying which properties to include in the facet results.</li> <li>Render the search and facet results.</li> <li>User selects one or more facet values to refine the results.</li> <li>Repeat the query with a filter based on the selected values.</li> </ol> <aside class="note"><strong>Note:</strong><span> Facets may only be used on items with structured data properties.</span></aside> <p>For example, to enable refinement of movie queries by year and MPAA rating, include the <code translate="no" dir="ltr">facetOptions</code> property in the query.</p> <pre class="prettyprint lang-js" translate="no" dir="ltr"><code translate="no" dir="ltr">"facetOptions": [ { "sourceName": "datasources/<data_source_id>", "operatorName": "year" }, { "sourceName": "datasources/<data_source_id>", "operatorName": "rated" } ] </code></pre> <h3 id="facet_results_with_integer-based_fields" data-text="Facet results with integer-based fields" tabindex="-1">Facet results with integer-based fields</h3> <p>You can also facet request results with integer-based fields. For example, you might mark an integer property called <code translate="no" dir="ltr">book_pages</code> as facetable to refine results for a search about books with "100-200" pages.</p> <p>When you set up your integer property field schema, set <a href="/cloud-search/docs/reference/rest/v1/Schema#propertydefinition"><code translate="no" dir="ltr">isFacetable</code></a> to <code translate="no" dir="ltr">true</code> and add corresponding bucketing options to the <a href="/cloud-search/docs/reference/rest/v1/Schema#IntegerPropertyOptions"><code translate="no" dir="ltr">integerPropertyOptions</code></a>. This ensures that every integer-facetable property has default bucketing options defined.</p> <p>When defining bucketing options logic, supply an array of incremental values signifying ranges. For example, if the end user specifies ranges as <code translate="no" dir="ltr">2, 5, 10, 100</code>, then facets for <code translate="no" dir="ltr"><2</code>, <code translate="no" dir="ltr">[2-5)</code>, <code translate="no" dir="ltr">[5-10)</code>, <code translate="no" dir="ltr">[10-100)</code>, <code translate="no" dir="ltr">>=100</code> are calculated.</p> <p>You can override integer-based facets by defining the same bucketing options to <a href="/cloud-search/docs/reference/rest/v1/settings.searchapplications#FacetOptions"><code translate="no" dir="ltr">facetOptions</code></a> in the request. If required, Cloud Search uses the bucketing options defined in the schema when neither the search application nor query request have facet options defined. Facets defined in the query take precedence over facets defined in the search application, and facets defined in the search application take precedence over facets defined in the schema.</p> <h3 id="facet_results_by_document_size_or_date" data-text="Facet results by document size or date" tabindex="-1">Facet results by document size or date</h3> <p>You can use <a href="/cloud-search/docs/reference/schemas/reserved-operators#reserved_operators">reserved operators</a> to refine search results by document's file size, measured in bytes, or by when a document was created or modified. You don't need to define a custom schema, but you do need to specify the <code translate="no" dir="ltr">operatorName</code> value in your search application's <a href="/cloud-search/docs/reference/rest/v1/settings.searchapplications#FacetOptions"><code translate="no" dir="ltr">FacetOptions</code></a>.</p> <ul> <li>For faceting by document size, use <code translate="no" dir="ltr">itemsize</code> and define bucketing options.</li> <li>For faceting by document creation date, use <code translate="no" dir="ltr">createddatetimestamp</code>.</li> <li>For faceting by document modified date, use <code translate="no" dir="ltr">lastmodified</code>.</li> </ul> <h3 id="interpreting_facet_buckets" data-text="Interpreting facet buckets" tabindex="-1">Interpreting facet buckets</h3> <p>The <a href="/cloud-search/docs/reference/rest/v1/query/search#response-body"><code translate="no" dir="ltr">facetResults</code></a> property in the search query response includes the user's exact filter request in the <code translate="no" dir="ltr">filter</code> field for each <a href="/cloud-search/docs/reference/rest/v1/query/search#FacetResult"><code translate="no" dir="ltr">bucket</code></a>.</p> <p>For facets that aren't based on integers, <code translate="no" dir="ltr">facetResults</code> includes an entry for each requested property. For each property, a list of values or ranges, called <code translate="no" dir="ltr">buckets</code>, is provided. The most-frequently occurring values appear first.</p> <p>When a user selects one or more values to filter on, construct a new query with the selected filters and query the API again.</p> <h2 id="add_suggestions" data-text="Add suggestions" tabindex="-1">Add suggestions</h2> <p>Use the <a href="/cloud-search/docs/reference/rest/v1/query/suggest">suggest</a> API to provide auto-completion for queries based on the user's personal query history as well as contacts and their document corpus.</p> <p>For example, the following call gives suggestions for the partial phrase <strong>jo</strong>.</p> <pre class="prettyprint lang-json" translate="no" dir="ltr"><code translate="no" dir="ltr">{ "query": "jo", "requestOptions": { "searchApplicationId": "<search_app_id>", "peoplePhotoOptions": { "peoplePhotoUrlSizeInPx": 32 }, "timeZone": "America/Denver" } } </code></pre> <p>You can then display the resulting suggestions as appropriate for your application.</p> <devsite-hats-survey class="nocontent" hats-id="vuPFkdRyz0eGRuQsCn30VLq5XqxM" 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="Cloud Search" product-id="717201" bucket="cloud-search" context="" version="t-devsite-webserver-20241114-r00-rc02.464922260396498922" data-label="Send Feedback Button" track-type="feedback" track-name="sendFeedbackLink" track-metadata-position="footer" class="nocontent" project-feedback-url="https://issuetracker.google.com/issues/new?component=1134311&template=1640548" project-icon="https://www.gstatic.com/images/branding/product/1x/google_cloud_search_64dp.png" project-support-url="https://developers.google.com/cloud-search/support" > <button> Send feedback </button> </devsite-feedback> <devsite-recommendations id="recommendations-link" yield></devsite-recommendations> <div class="devsite-floating-action-buttons"> </div> </article> <devsite-content-footer class="nocontent"> <p>Except as otherwise noted, the content of this page is licensed under the <a href="https://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 License</a>, and code samples are licensed under the <a href="https://www.apache.org/licenses/LICENSE-2.0">Apache 2.0 License</a>. For details, see the <a href="https://developers.google.com/site-policies">Google Developers Site Policies</a>. Java is a registered trademark of Oracle and/or its affiliates.</p> <p>Last updated 2024-11-06 UTC.</p> </devsite-content-footer> <devsite-notification > </devsite-notification> <div class="devsite-content-data"> <template class="devsite-thumb-rating-feedback"> <devsite-feedback position="thumb-rating" project-name="Cloud Search" product-id="717201" bucket="cloud-search" context="" version="t-devsite-webserver-20241114-r00-rc02.464922260396498922" data-label="Send Feedback Button" track-type="feedback" track-name="sendFeedbackLink" track-metadata-position="thumb-rating" class="nocontent" project-feedback-url="https://issuetracker.google.com/issues/new?component=1134311&template=1640548" project-icon="https://www.gstatic.com/images/branding/product/1x/google_cloud_search_64dp.png" project-support-url="https://developers.google.com/cloud-search/support" > <button> Need to tell us more? </button> </devsite-feedback> </template> <template class="devsite-content-data-template"> [[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2024-11-06 UTC."],[[["The Google Cloud Search Query API enables search and retrieval of data within your application, offering features like supplemental results, people search, and result sorting and filtering."],["Facets and suggestions enhance the search experience, allowing users to refine search results by category or receive auto-completion options as they type."],["Facets are configured using schema properties, search application settings, or directly within the query, while auto-suggestions are powered by the `suggest` API."],["Search interfaces are built by configuring search applications, generating OAuth credentials, and utilizing the `search` method with query parameters for retrieving and displaying results."],["Developers can customize result display using snippets, metadata, and pagination, and leverage optimizations like spell correction and synonyms for enhanced search accuracy."]]],[]] </template> </div> </devsite-content> </main> <devsite-footer-promos class="devsite-footer"> <nav class="devsite-footer-promos nocontent" aria-label="Promotions"> <ul class="devsite-footer-promos-list"> <li class="devsite-footer-promo"> <a href="https://developers.googleblog.com/search/?query=Google+Workspace" class="devsite-footer-promo-title gc-analytics-event" data-category="Site-Wide Custom Events" target="_blank" data-category="Workspace Footer" data-label="Promo - Google Workspace Developers Blog" > <picture> <img class="devsite-footer-promo-icon" src="https://www.gstatic.com/images/branding/product/2x/google_cloud_64dp.png" loading="lazy" alt="Blog"> </picture> <span class="devsite-footer-promo-label"> Blog </span> </a> <div class="devsite-footer-promo-description">Read the Google Workspace Developers blog</div> </li> <li class="devsite-footer-promo"> <a href="https://stackoverflow.com/questions/tagged/google-cloud-search" class="devsite-footer-promo-title gc-analytics-event" data-category="Site-Wide Custom Events" data-category="Workspace Footer" data-label="Promo - Stack Overflow" target="_blank" > <picture> <img class="devsite-footer-promo-icon" src="/static/site-assets/logo-stack-overflow.svg" loading="lazy" alt="Stack Overview"> </picture> <span class="devsite-footer-promo-label"> Stack Overview </span> </a> <div class="devsite-footer-promo-description">Ask questions with the google-cloud-search tag</div> </li> <li class="devsite-footer-promo"> <a href="https://github.com/googleworkspace/cloud-search-samples" 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" > <picture> <img class="devsite-footer-promo-icon" src="/static/site-assets/logo-github.svg" loading="lazy" alt="Code Samples"> </picture> <span class="devsite-footer-promo-label"> Code Samples </span> </a> <div class="devsite-footer-promo-description">Explore our sample apps or copy them to build your own</div> </li> <li class="devsite-footer-promo"> <a href="/api-client-library" class="devsite-footer-promo-title gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Promo - Client libraries" data-category="Workspace Footer" target="_blank" > <div class="devsite-footer-promo-icon material-icons" aria-hidden="true">file_download</div> <span class="devsite-footer-promo-label"> Client libraries </span> </a> <div class="devsite-footer-promo-description">Download a client library for your preferred language</div> </li> </ul> </nav> </devsite-footer-promos> <devsite-footer-linkboxes class="devsite-footer"> <nav class="devsite-footer-linkboxes nocontent" aria-label="Footer links"> <ul class="devsite-footer-linkboxes-list"> <li class="devsite-footer-linkbox "> <h3 class="devsite-footer-linkbox-heading no-link">Google Workspace for Developers</h3> <ul class="devsite-footer-linkbox-list"> <li class="devsite-footer-linkbox-item"> <a href="/workspace" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Linkbox - Platform overview"data-category="Workspace Footer"> Platform overview </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/workspace/products" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-category="Workspace Footer"data-label="Linkbox - Developer products"> Developer products </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/workspace/support" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-category="Workspace Footer"data-label="Linkbox - Developer support"> Developer support </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/workspace/terms" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-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="https://admin.google.com/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" target="admin-console"data-label="Linkbox - Admin console"data-category="Workspace Footer"> Admin console </a> </li> <li class="devsite-footer-linkbox-item"> <a href="https://script.google.com/" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-category="Workspace Footer"target="_blank"data-label="Linkbox - Apps Script Dashboard"> Apps Script Dashboard </a> </li> <li class="devsite-footer-linkbox-item"> <a href="https://console.cloud.google.com/workspace-api" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-category="Workspace Footer"data-label="Linkbox - Google Cloud console"target="console"> Google Cloud console </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/workspace/explore" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Linkbox - APIs Explorer"data-category="Workspace Footer"> APIs Explorer </a> </li> </ul> </li> <li class="devsite-footer-linkbox "> <h3 class="devsite-footer-linkbox-heading no-link">Connect</h3> <ul class="devsite-footer-linkbox-list"> <li class="devsite-footer-linkbox-item"> <a href="https://developers.googleblog.com/search/?query=Google+Workspace" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" target="_blank"data-label="Linkbox - Blog"data-category="Workspace Footer"> Blog </a> </li> <li class="devsite-footer-linkbox-item"> <a href="/workspace/newsletters" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Linkbox - Newsletter"data-category="Workspace Footer"> Newsletter </a> </li> <li class="devsite-footer-linkbox-item"> <a href="https://twitter.com/workspacedevs" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-category="Workspace Footer"data-label="Linkbox - X (Twitter)"target="_blank"> X (Twitter) </a> </li> <li class="devsite-footer-linkbox-item"> <a href="https://www.youtube.com/channel/UCUcg6az6etU_gRtZVAhBXaw" class="devsite-footer-linkbox-link gc-analytics-event" data-category="Site-Wide Custom Events" data-category="Workspace Footer"target="_blank"data-label="Linkbox - YouTube"> YouTube </a> </li> </ul> </li> </ul> </nav> </devsite-footer-linkboxes> <devsite-footer-utility class="devsite-footer"> <div class="devsite-footer-utility nocontent"> <nav class="devsite-footer-sites" aria-label="Other Google Developers websites"> <a href="https://developers.google.com/" class="devsite-footer-sites-logo-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Google Developers Link"> <picture> <img class="devsite-footer-sites-logo" src="https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/images/lockup-google-for-developers.svg" loading="lazy" alt="Google Developers"> </picture> </a> <ul class="devsite-footer-sites-list"> <li class="devsite-footer-sites-item"> <a href="//developer.android.com" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Android Link" > Android </a> </li> <li class="devsite-footer-sites-item"> <a href="//developer.chrome.com/home" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Chrome Link" > Chrome </a> </li> <li class="devsite-footer-sites-item"> <a href="//firebase.google.com" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Firebase Link" > Firebase </a> </li> <li class="devsite-footer-sites-item"> <a href="//cloud.google.com" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Google Cloud Platform Link" > Google Cloud Platform </a> </li> <li class="devsite-footer-sites-item"> <a href="//ai.google.dev/" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer Google AI Link" > Google AI </a> </li> <li class="devsite-footer-sites-item"> <a href="/products" class="devsite-footer-sites-link gc-analytics-event" data-category="Site-Wide Custom Events" data-label="Footer All products Link" > All products </a> </li> </ul> </nav> <nav class="devsite-footer-utility-links" aria-label="Utility links"> <ul class="devsite-footer-utility-list"> <li class="devsite-footer-utility-item "> <a class="devsite-footer-utility-link gc-analytics-event" href="/terms/site-terms" data-category="Site-Wide Custom Events" data-label="Footer Terms link" > Terms </a> </li> <li class="devsite-footer-utility-item "> <a class="devsite-footer-utility-link gc-analytics-event" href="//policies.google.com/privacy" data-category="Site-Wide Custom Events" data-label="Footer Privacy link" > Privacy </a> </li> <li class="devsite-footer-utility-item glue-cookie-notification-bar-control"> <a class="devsite-footer-utility-link gc-analytics-event" href="#" data-category="Site-Wide Custom Events" data-label="Footer Manage cookies link" aria-hidden="true" > Manage cookies </a> </li> <li class="devsite-footer-utility-item devsite-footer-utility-button"> <span class="devsite-footer-utility-description">Sign up for the Google for Developers newsletter</span> <a class="devsite-footer-utility-link gc-analytics-event" href="/newsletter/subscribe" data-category="Site-Wide Custom Events" data-label="Footer Subscribe link" > Subscribe </a> </li> </ul> <devsite-language-selector> <ul role="presentation"> <li role="presentation"> <a role="menuitem" lang="en" >English</a> </li> <li role="presentation"> <a role="menuitem" lang="de" >Deutsch</a> </li> <li role="presentation"> <a role="menuitem" lang="es" >Español</a> </li> <li role="presentation"> <a role="menuitem" lang="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="id" >Indonesia</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> <devsite-concierge data-info-panel data-ai-panel data-api-explorer-panel > </devsite-concierge> </section></section> <devsite-sitemask></devsite-sitemask> <devsite-snackbar></devsite-snackbar> <devsite-tooltip ></devsite-tooltip> <devsite-heading-link></devsite-heading-link> <devsite-analytics> <script type="application/json" analytics>[{"dimensions": {"dimension3": false, "dimension5": "en", "dimension11": false, "dimension1": "Signed out", "dimension4": "Cloud Search", "dimension6": "en"}, "gaid": "UA-24532603-1", "metrics": {"ratings_count": "metric2", "ratings_value": "metric1"}, "purpose": 1}]</script> <script type="application/json" tag-management>{"at": "True", "ga4": [{"id": "G-272J68FCRF", "purpose": 1}, {"id": "G-YYP88VSJWR", "purpose": 0}], "ga4p": [{"id": "G-272J68FCRF", "purpose": 1}], "gtm": [], "parameters": {"internalUser": "False", "language": {"machineTranslated": "False", "requested": "en", "served": "en"}, "pageType": "article", "projectName": "Cloud Search", "signedIn": "False", "tenant": "developers", "recommendations": {"sourcePage": "", "sourceType": 0, "sourceRank": 0, "sourceIdenticalDescriptions": 0, "sourceTitleWords": 0, "sourceDescriptionWords": 0, "experiment": ""}, "experiment": {"ids": ""}}}</script> </devsite-analytics> <devsite-badger></devsite-badger> <script nonce="4HgL7zelky84/TWvsbvsrW9yMEiipG"> (function(d,e,v,s,i,t,E){d['GoogleDevelopersObject']=i; t=e.createElement(v);t.async=1;t.src=s;E=e.getElementsByTagName(v)[0]; E.parentNode.insertBefore(t,E);})(window, document, 'script', 'https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/js/app_loader.js', '[1,"en",null,"/js/devsite_app_module.js","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers","https://developers-dot-devsite-v2-prod.appspot.com",null,null,["/_pwa/developers/manifest.json","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/images/video-placeholder.svg","https://www.gstatic.com/devrel-devsite/prod/v870e399c64f7c43c99a3043db4b3a74327bb93d0914e84a0c3dba90bbfd67625/developers/images/favicon-new.png","https://fonts.googleapis.com/css?family=Google+Sans:400,500|Roboto:400,400italic,500,500italic,700,700italic|Roboto+Mono:400,500,700&display=swap"],1,null,[1,6,8,12,14,17,21,25,50,52,63,70,75,76,80,87,91,92,93,97,98,100,101,102,103,104,105,107,108,109,110,112,113,117,118,120,122,124,125,126,127,129,130,131,132,133,134,135,136,138,140,141,147,148,149,151,152,156,157,158,159,161,163,164,168,169,170,179,180,182,183,186,191,193,196],"AIzaSyAP-jjEJBzmIyKR4F-3XITp8yM9T1gEEI8","AIzaSyB6xiKGDR5O3Ak2okS4rLkauxGUG7XP0hg","developers.google.com","AIzaSyAQk0fBONSGUqCNznf6Krs82Ap1-NV6J4o","AIzaSyCCxcqdrZ_7QMeLCRY20bh_SXdAYqy70KY",null,null,null,["MiscFeatureFlags__enable_variable_operator","Cloud__enable_cloud_facet_chat","Cloud__enable_cloud_shell_fte_user_flow","Profiles__enable_recognition_badges","EngEduTelemetry__enable_engedu_telemetry","Cloud__enable_cloudx_experiment_ids","MiscFeatureFlags__enable_view_transitions","Profiles__enable_release_notes_notifications","Profiles__enable_complete_playlist_endpoint","CloudShell__cloud_code_overflow_menu","TpcFeatures__enable_mirror_tenant_redirects","Experiments__reqs_query_experiments","Search__enable_ai_eligibility_checks","BookNav__enable_tenant_cache_key","DevPro__enable_developer_subscriptions","Analytics__enable_clearcut_logging","Search__enable_ai_search_summaries","MiscFeatureFlags__developers_footer_image","MiscFeatureFlags__enable_explain_this_code","Concierge__enable_concierge","Cloud__enable_llm_concierge_chat","Search__enable_page_map","Profiles__require_profile_eligibility_for_signin","CloudShell__cloud_shell_button","Concierge__enable_pushui","DevPro__enable_cloud_innovators_plus","Profiles__enable_page_saving","Profiles__enable_dashboard_curated_recommendations","MiscFeatureFlags__emergency_css","Profiles__enable_profile_collections","Cloud__enable_cloud_shell","Cloud__enable_cloudx_ping","Search__enable_ai_search_summaries_restricted","MiscFeatureFlags__enable_project_variables","Concierge__enable_concierge_restricted","Cloud__enable_legacy_calculator_redirect","MiscFeatureFlags__enable_firebase_utm","Profiles__enable_awarding_url","Search__enable_dynamic_content_confidential_banner","TpcFeatures__enable_required_headers","Profiles__enable_developer_profiles_callout","Cloud__enable_cloud_dlp_service","Cloud__enable_free_trial_server_call","MiscFeatureFlags__developers_footer_dark_image","Profiles__enable_completecodelab_endpoint","Profiles__enable_public_developer_profiles","Search__enable_suggestions_from_borg","Significatio__enable_by_tenant"],null,null,"AIzaSyBLEMok-5suZ67qRPzx0qUtbnLmyT_kCVE","https://developerscontentserving-pa.clients6.google.com","AIzaSyCM4QpTRSqP5qI4Dvjt4OAScIN8sOUlO-k","https://developerscontentsearch-pa.clients6.google.com",1,4,null,"https://developerprofiles-pa.clients6.google.com",[1,"developers","Google for Developers","developers.google.com",null,"developers-dot-devsite-v2-prod.appspot.com",null,null,[1,1,[1],null,null,null,null,null,null,null,null,[1],null,null,null,null,null,null,[1],[1,null,null,[1,20],"/recommendations/information"],null,null,null,[1,1,1],[1,1,null,1,1]],null,[null,null,null,null,null,null,"/images/lockup-new.svg","/images/touchicon-180-new.png",null,null,null,null,1,null,null,null,null,null,null,null,null,1,null,null,null,"/images/lockup-dark-theme-new.svg",[]],[],null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,[6,1,14,15,20,22,23,29,32,36],null,[[null,null,null,[3,7,10,2,39,17,4,32,24,11,12,13,34,15,25],null,null,[1,[["docType","Choose a content type",[["Tutorial",null,null,null,null,null,null,null,null,"Tutorial"],["Guide",null,null,null,null,null,null,null,null,"Guide"],["Sample",null,null,null,null,null,null,null,null,"Sample"]]],["product","Choose a product",[["Android",null,null,null,null,null,null,null,null,"Android"],["ARCore",null,null,null,null,null,null,null,null,"ARCore"],["ChromeOS",null,null,null,null,null,null,null,null,"ChromeOS"],["Firebase",null,null,null,null,null,null,null,null,"Firebase"],["Flutter",null,null,null,null,null,null,null,null,"Flutter"],["Assistant",null,null,null,null,null,null,null,null,"Google Assistant"],["GoogleCloud",null,null,null,null,null,null,null,null,"Google Cloud"],["GoogleMapsPlatform",null,null,null,null,null,null,null,null,"Google Maps Platform"],["GooglePay",null,null,null,null,null,null,null,null,"Google Pay & Google Wallet"],["GooglePlay",null,null,null,null,null,null,null,null,"Google Play"],["Tensorflow",null,null,null,null,null,null,null,null,"TensorFlow"]]],["category","Choose a topic",[["AiAndMachineLearning",null,null,null,null,null,null,null,null,"AI and Machine Learning"],["Data",null,null,null,null,null,null,null,null,"Data"],["Enterprise",null,null,null,null,null,null,null,null,"Enterprise"],["Gaming",null,null,null,null,null,null,null,null,"Gaming"],["Mobile",null,null,null,null,null,null,null,null,"Mobile"],["Web",null,null,null,null,null,null,null,null,"Web"]]]]]],[1,1],null,1],[[["UA-24532603-1"],["UA-22084204-5"],null,null,["UA-24532603-5"],null,null,[["G-272J68FCRF"],null,null,[["G-272J68FCRF",2]]],[["UA-24532603-1",2]],null,[["UA-24532603-5",2]],null,1],[[4,3],[3,2],[16,13],[15,12],[1,1],[14,11],[11,8],[5,4],[13,10],[6,5],[12,9]],[[2,2],[1,1]]],null,4,null,null,null,null,null,null,null,null,null,null,null,null,null,"developers.devsite.google"],null,"pk_live_5170syrHvgGVmSx9sBrnWtA5luvk9BwnVcvIi7HizpwauFG96WedXsuXh790rtij9AmGllqPtMLfhe2RSwD6Pn38V00uBCydV4m"]') </script> <devsite-a11y-announce></devsite-a11y-announce> </body> </html>