blob: 03873c4d0982d63751572456867c6042c6bd3bf7 [file] [log] [blame]
{
"auth": {
"oauth2": {
"scopes": {
"https://www.googleapis.com/auth/cloud_search": {
"description": "Index and serve your organization's data with Cloud Search"
},
"https://www.googleapis.com/auth/cloud_search.debug": {
"description": "New Service: https://www.googleapis.com/auth/cloud_search.debug"
},
"https://www.googleapis.com/auth/cloud_search.indexing": {
"description": "New Service: https://www.googleapis.com/auth/cloud_search.indexing"
},
"https://www.googleapis.com/auth/cloud_search.query": {
"description": "Search your organization's data in the Cloud Search index"
},
"https://www.googleapis.com/auth/cloud_search.settings": {
"description": "New Service: https://www.googleapis.com/auth/cloud_search.settings"
},
"https://www.googleapis.com/auth/cloud_search.settings.indexing": {
"description": "New Service: https://www.googleapis.com/auth/cloud_search.settings.indexing"
},
"https://www.googleapis.com/auth/cloud_search.settings.query": {
"description": "New Service: https://www.googleapis.com/auth/cloud_search.settings.query"
},
"https://www.googleapis.com/auth/cloud_search.stats": {
"description": "New Service: https://www.googleapis.com/auth/cloud_search.stats"
},
"https://www.googleapis.com/auth/cloud_search.stats.indexing": {
"description": "New Service: https://www.googleapis.com/auth/cloud_search.stats.indexing"
}
}
}
},
"basePath": "",
"baseUrl": "https://cloudsearch.googleapis.com/",
"batchPath": "batch",
"canonicalName": "Cloud Search",
"description": "Cloud Search provides cloud-based search capabilities over G Suite data. The Cloud Search API allows indexing of non-G Suite data into Cloud Search.",
"discoveryVersion": "v1",
"documentationLink": "https://gsuite.google.com/products/cloud-search/",
"fullyEncodeReservedExpansion": true,
"icons": {
"x16": "http://www.google.com/images/icons/product/search-16.gif",
"x32": "http://www.google.com/images/icons/product/search-32.gif"
},
"id": "cloudsearch:v1",
"kind": "discovery#restDescription",
"name": "cloudsearch",
"ownerDomain": "google.com",
"ownerName": "Google",
"parameters": {
"$.xgafv": {
"description": "V1 error format.",
"enum": [
"1",
"2"
],
"enumDescriptions": [
"v1 error format",
"v2 error format"
],
"location": "query",
"type": "string"
},
"access_token": {
"description": "OAuth access token.",
"location": "query",
"type": "string"
},
"alt": {
"default": "json",
"description": "Data format for response.",
"enum": [
"json",
"media",
"proto"
],
"enumDescriptions": [
"Responses with Content-Type of application/json",
"Media download with context-dependent Content-Type",
"Responses with Content-Type of application/x-protobuf"
],
"location": "query",
"type": "string"
},
"callback": {
"description": "JSONP",
"location": "query",
"type": "string"
},
"fields": {
"description": "Selector specifying which fields to include in a partial response.",
"location": "query",
"type": "string"
},
"key": {
"description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
"location": "query",
"type": "string"
},
"oauth_token": {
"description": "OAuth 2.0 token for the current user.",
"location": "query",
"type": "string"
},
"prettyPrint": {
"default": "true",
"description": "Returns response with indentations and line breaks.",
"location": "query",
"type": "boolean"
},
"quotaUser": {
"description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
"location": "query",
"type": "string"
},
"uploadType": {
"description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
"location": "query",
"type": "string"
},
"upload_protocol": {
"description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
"location": "query",
"type": "string"
}
},
"protocol": "rest",
"resources": {
"debug": {
"resources": {
"datasources": {
"resources": {
"items": {
"methods": {
"checkAccess": {
"description": "Checks whether an item is accessible by specified principal.",
"flatPath": "v1/debug/datasources/{datasourcesId}/items/{itemsId}:checkAccess",
"httpMethod": "POST",
"id": "cloudsearch.debug.datasources.items.checkAccess",
"parameterOrder": [
"name"
],
"parameters": {
"debugOptions.enableDebugging": {
"description": "If set, the request will enable debugging features of Cloud Search.\nOnly turn on this field, if asked by Google to help with debugging.",
"location": "query",
"type": "boolean"
},
"name": {
"description": "Item name, format:\ndatasources/{source_id}/items/{item_id}",
"location": "path",
"pattern": "^datasources/[^/]+/items/[^/]+$",
"required": true,
"type": "string"
}
},
"path": "v1/debug/{+name}:checkAccess",
"request": {
"$ref": "Principal"
},
"response": {
"$ref": "CheckAccessResponse"
},
"scopes": [
"https://www.googleapis.com/auth/cloud_search",
"https://www.googleapis.com/auth/cloud_search.debug"
]
},
"searchByViewUrl": {
"description": "Fetches the item whose viewUrl exactly matches that of the URL provided\nin the request.",
"flatPath": "v1/debug/datasources/{datasourcesId}/items:searchByViewUrl",
"httpMethod": "POST",
"id": "cloudsearch.debug.datasources.items.searchByViewUrl",
"parameterOrder": [
"name"
],
"parameters": {
"name": {
"description": "Source name, format:\ndatasources/{source_id}",
"location": "path",
"pattern": "^datasources/[^/]+$",
"required": true,
"type": "string"
}
},
"path": "v1/debug/{+name}/items:searchByViewUrl",
"request": {
"$ref": "SearchItemsByViewUrlRequest"
},
"response": {
"$ref": "SearchItemsByViewUrlResponse"
},
"scopes": [
"https://www.googleapis.com/auth/cloud_search",
"https://www.googleapis.com/auth/cloud_search.debug"
]
}
},
"resources": {
"unmappedids": {
"methods": {
"list": {
"description": "List all unmapped identities for a specific item.",
"flatPath": "v1/debug/datasources/{datasourcesId}/items/{itemsId}/unmappedids",
"httpMethod": "GET",
"id": "cloudsearch.debug.datasources.items.unmappedids.list",
"parameterOrder": [
"parent"
],
"parameters": {
"debugOptions.enableDebugging": {
"description": "If set, the request will enable debugging features of Cloud Search.\nOnly turn on this field, if asked by Google to help with debugging.",
"location": "query",
"type": "boolean"
},
"pageSize": {
"description": "Maximum number of items to fetch in a request.\nDefaults to 100.",
"format": "int32",
"location": "query",
"type": "integer"
},
"pageToken": {
"description": "The next_page_token value returned from a previous List request, if any.",
"location": "query",
"type": "string"
},
"parent": {
"description": "The name of the item, in the following format:\ndatasources/{source_id}/items/{ID}",
"location": "path",
"pattern": "^datasources/[^/]+/items/[^/]+$",
"required": true,
"type": "string"
}
},
"path": "v1/debug/{+parent}/unmappedids",
"response": {
"$ref": "ListUnmappedIdentitiesResponse"
},
"scopes": [
"https://www.googleapis.com/auth/cloud_search",
"https://www.googleapis.com/auth/cloud_search.debug"
]
}
}
}
}
}
}
},
"identitysources": {
"resources": {
"items": {
"methods": {
"listForunmappedidentity": {
"description": "Lists names of items associated with an unmapped identity.",
"flatPath": "v1/debug/identitysources/{identitysourcesId}/items:forunmappedidentity",
"httpMethod": "GET",
"id": "cloudsearch.debug.identitysources.items.listForunmappedidentity",
"parameterOrder": [
"parent"
],
"parameters": {
"debugOptions.enableDebugging": {
"description": "If set, the request will enable debugging features of Cloud Search.\nOnly turn on this field, if asked by Google to help with debugging.",
"location": "query",
"type": "boolean"
},
"groupResourceName": {
"location": "query",
"type": "string"
},
"pageSize": {
"description": "Maximum number of items to fetch in a request.\nDefaults to 100.",
"format": "int32",
"location": "query",
"type": "integer"
},
"pageToken": {
"description": "The next_page_token value returned from a previous List request, if any.",
"location": "query",
"type": "string"
},
"parent": {
"description": "The name of the identity source, in the following format:\nidentitysources/{source_id}}",
"location": "path",
"pattern": "^identitysources/[^/]+$",
"required": true,
"type": "string"
},
"userResourceName": {
"location": "query",
"type": "string"
}
},
"path": "v1/debug/{+parent}/items:forunmappedidentity",
"response": {
"$ref": "ListItemNamesForUnmappedIdentityResponse"
},
"scopes": [
"https://www.googleapis.com/auth/cloud_search",
"https://www.googleapis.com/auth/cloud_search.debug"
]
}
}
},
"unmappedids": {
"methods": {
"list": {
"description": "Lists unmapped user identities for an identity source.",
"flatPath": "v1/debug/identitysources/{identitysourcesId}/unmappedids",
"httpMethod": "GET",
"id": "cloudsearch.debug.identitysources.unmappedids.list",
"parameterOrder": [
"parent"
],
"parameters": {
"debugOptions.enableDebugging": {
"description": "If set, the request will enable debugging features of Cloud Search.\nOnly turn on this field, if asked by Google to help with debugging.",
"location": "query",
"type": "boolean"
},
"pageSize": {
"description": "Maximum number of items to fetch in a request.\nDefaults to 100.",
"format": "int32",
"location": "query",
"type": "integer"
},
"pageToken": {
"description": "The next_page_token value returned from a previous List request, if any.",
"location": "query",
"type": "string"
},
"parent": {
"description": "The name of the identity source, in the following format:\nidentitysources/{source_id}",
"location": "path",
"pattern": "^identitysources/[^/]+$",
"required": true,
"type": "string"
},
"resolutionStatusCode": {
"description": "Limit users selection to this status.",
"enum": [
"CODE_UNSPECIFIED",
"NOT_FOUND",
"IDENTITY_SOURCE_NOT_FOUND",
"IDENTITY_SOURCE_MISCONFIGURED",
"TOO_MANY_MAPPINGS_FOUND",
"INTERNAL_ERROR"
],
"location": "query",
"type": "string"
}
},
"path": "v1/debug/{+parent}/unmappedids",
"response": {
"$ref": "ListUnmappedIdentitiesResponse"
},
"scopes": [
"https://www.googleapis.com/auth/cloud_search",
"https://www.googleapis.com/auth/cloud_search.debug"
]
}
}
}
}
}
}
},
"indexing": {
"resources": {
"datasources": {
"methods": {
"deleteSchema": {
"description": "Deletes the schema of a data source.",
"flatPath": "v1/indexing/datasources/{datasourcesId}/schema",
"httpMethod": "DELETE",
"id": "cloudsearch.indexing.datasources.deleteSchema",
"parameterOrder": [
"name"
],
"parameters": {
"debugOptions.enableDebugging": {
"description": "If set, the request will enable debugging features of Cloud Search.\nOnly turn on this field, if asked by Google to help with debugging.",
"location": "query",
"type": "boolean"
},
"name": {
"description": "Name of the data source to delete Schema. Format:\ndatasources/{source_id}",
"location": "path",
"pattern": "^datasources/[^/]+$",
"required": true,
"type": "string"
}
},
"path": "v1/indexing/{+name}/schema",
"response": {
"$ref": "Operation"
},
"scopes": [
"https://www.googleapis.com/auth/cloud_search",
"https://www.googleapis.com/auth/cloud_search.settings",
"https://www.googleapis.com/auth/cloud_search.settings.indexing"
]
},
"getSchema": {
"description": "Gets the schema of a data source.",
"flatPath": "v1/indexing/datasources/{datasourcesId}/schema",
"httpMethod": "GET",
"id": "cloudsearch.indexing.datasources.getSchema",
"parameterOrder": [
"name"
],
"parameters": {
"debugOptions.enableDebugging": {
"description": "If set, the request will enable debugging features of Cloud Search.\nOnly turn on this field, if asked by Google to help with debugging.",
"location": "query",
"type": "boolean"
},
"name": {
"description": "Name of the data source to get Schema. Format:\ndatasources/{source_id}",
"location": "path",
"pattern": "^datasources/[^/]+$",
"required": true,
"type": "string"
}
},
"path": "v1/indexing/{+name}/schema",
"response": {
"$ref": "Schema"
},
"scopes": [
"https://www.googleapis.com/auth/cloud_search",
"https://www.googleapis.com/auth/cloud_search.settings",
"https://www.googleapis.com/auth/cloud_search.settings.indexing"
]
},
"updateSchema": {
"description": "Updates the schema of a data source.",
"flatPath": "v1/indexing/datasources/{datasourcesId}/schema",
"httpMethod": "PUT",
"id": "cloudsearch.indexing.datasources.updateSchema",
"parameterOrder": [
"name"
],
"parameters": {
"name": {
"description": "Name of the data source to update Schema. Format:\ndatasources/{source_id}",
"location": "path",
"pattern": "^datasources/[^/]+$",
"required": true,
"type": "string"
}
},
"path": "v1/indexing/{+name}/schema",
"request": {
"$ref": "UpdateSchemaRequest"
},
"response": {
"$ref": "Operation"
},
"scopes": [
"https://www.googleapis.com/auth/cloud_search",
"https://www.googleapis.com/auth/cloud_search.settings",
"https://www.googleapis.com/auth/cloud_search.settings.indexing"
]
}
},
"resources": {
"items": {
"methods": {
"delete": {
"description": "Deletes Item resource for the\nspecified resource name.",
"flatPath": "v1/indexing/datasources/{datasourcesId}/items/{itemsId}",
"httpMethod": "DELETE",
"id": "cloudsearch.indexing.datasources.items.delete",
"parameterOrder": [
"name"
],
"parameters": {
"connectorName": {
"description": "Name of connector making this call.\n\u003cbr /\u003eFormat: datasources/{source_id}/connectors/{ID}",
"location": "query",
"type": "string"
},
"debugOptions.enableDebugging": {
"description": "If set, the request will enable debugging features of Cloud Search.\nOnly turn on this field, if asked by Google to help with debugging.",
"location": "query",
"type": "boolean"
},
"mode": {
"description": "Required. The RequestMode for this request.",
"enum": [
"UNSPECIFIED",
"SYNCHRONOUS",
"ASYNCHRONOUS"
],
"location": "query",
"type": "string"
},
"name": {
"description": "Required. Name of the item to delete.\nFormat: datasources/{source_id}/items/{item_id}",
"location": "path",
"pattern": "^datasources/[^/]+/items/[^/]+$",
"required": true,
"type": "string"
},
"version": {
"description": "Required. The incremented version of the item to delete from the index.\nThe indexing system stores the version from the datasource as a\nbyte string and compares the Item version in the index\nto the version of the queued Item using lexical ordering.\n\u003cbr /\u003e\u003cbr /\u003e\nCloud Search Indexing won't delete any queued item with\na version value that is less than or equal to\nthe version of the currently indexed item.\nThe maximum length for this field is 1024 bytes.",
"format": "byte",
"location": "query",
"type": "string"
}
},
"path": "v1/indexing/{+name}",
"response": {
"$ref": "Operation"
},
"scopes": [
"https://www.googleapis.com/auth/cloud_search",
"https://www.googleapis.com/auth/cloud_search.indexing"
]
},
"deleteQueueItems": {
"description": "Deletes all items in a queue. This method is useful for deleting stale\nitems.",
"flatPath": "v1/indexing/datasources/{datasourcesId}/items:deleteQueueItems",
"httpMethod": "POST",
"id": "cloudsearch.indexing.datasources.items.deleteQueueItems",
"parameterOrder": [
"name"
],
"parameters": {
"name": {
"description": "Name of the Data Source to delete items in a queue.\nFormat: datasources/{source_id}",
"location": "path",
"pattern": "^datasources/[^/]+$",
"required": true,
"type": "string"
}
},
"path": "v1/indexing/{+name}/items:deleteQueueItems",
"request": {
"$ref": "DeleteQueueItemsRequest"
},
"response": {
"$ref": "Operation"
},
"scopes": [
"https://www.googleapis.com/auth/cloud_search",
"https://www.googleapis.com/auth/cloud_search.indexing"
]
},
"get": {
"description": "Gets Item resource by item name.",
"flatPath": "v1/indexing/datasources/{datasourcesId}/items/{itemsId}",
"httpMethod": "GET",
"id": "cloudsearch.indexing.datasources.items.get",
"parameterOrder": [
"name"
],
"parameters": {
"connectorName": {
"description": "Name of connector making this call.\n\u003cbr /\u003eFormat: datasources/{source_id}/connectors/{ID}",
"location": "query",
"type": "string"
},
"debugOptions.enableDebugging": {
"description": "If set, the request will enable debugging features of Cloud Search.\nOnly turn on this field, if asked by Google to help with debugging.",
"location": "query",
"type": "boolean"
},
"name": {
"description": "Name of the item to get info.\nFormat: datasources/{source_id}/items/{item_id}",
"location": "path",
"pattern": "^datasources/[^/]+/items/[^/]+$",
"required": true,
"type": "string"
}
},
"path": "v1/indexing/{+name}",
"response": {
"$ref": "Item"
},
"scopes": [
"https://www.googleapis.com/auth/cloud_search",
"https://www.googleapis.com/auth/cloud_search.indexing"
]
},
"index": {
"description": "Updates Item ACL, metadata, and\ncontent. It will insert the Item if it\ndoes not exist.\nThis method does not support partial updates. Fields with no provided\nvalues are cleared out in the Cloud Search index.",
"flatPath": "v1/indexing/datasources/{datasourcesId}/items/{itemsId}:index",
"httpMethod": "POST",
"id": "cloudsearch.indexing.datasources.items.index",
"parameterOrder": [
"name"
],
"parameters": {
"name": {
"description": "Name of the Item. Format:\ndatasources/{source_id}/items/{item_id}\n\u003cbr /\u003eThis is a required field.\nThe maximum length is 1536 characters.",
"location": "path",
"pattern": "^datasources/[^/]+/items/[^/]+$",
"required": true,
"type": "string"
}
},
"path": "v1/indexing/{+name}:index",
"request": {
"$ref": "IndexItemRequest"
},
"response": {
"$ref": "Operation"
},
"scopes": [
"https://www.googleapis.com/auth/cloud_search",
"https://www.googleapis.com/auth/cloud_search.indexing"
]
},
"list": {
"description": "Lists all or a subset of Item resources.",
"flatPath": "v1/indexing/datasources/{datasourcesId}/items",
"httpMethod": "GET",
"id": "cloudsearch.indexing.datasources.items.list",
"parameterOrder": [
"name"
],
"parameters": {
"brief": {
"description": "When set to true, the indexing system only populates the following fields:\nname,\nversion,\nmetadata.hash,\nstructured_data.hash,\ncontent.hash.\n\u003cbr /\u003eIf this value is false, then all the fields are populated in Item.",
"location": "query",
"type": "boolean"
},
"connectorName": {
"description": "Name of connector making this call.\n\u003cbr /\u003eFormat: datasources/{source_id}/connectors/{ID}",
"location": "query",
"type": "string"
},
"debugOptions.enableDebugging": {
"description": "If set, the request will enable debugging features of Cloud Search.\nOnly turn on this field, if asked by Google to help with debugging.",
"location": "query",
"type": "boolean"
},
"name": {
"description": "Name of the Data Source to list Items. Format:\ndatasources/{source_id}",
"location": "path",
"pattern": "^datasources/[^/]+$",
"required": true,
"type": "string"
},
"pageSize": {
"description": "Maximum number of items to fetch in a request.\nThe max value is 1000 when brief is true. The max value is 10 if brief\nis false.\n\u003cbr /\u003eThe default value is 10",
"format": "int32",
"location": "query",
"type": "integer"
},
"pageToken": {
"description": "The next_page_token value returned from a previous List request, if any.",
"location": "query",
"type": "string"
}
},
"path": "v1/indexing/{+name}/items",
"response": {
"$ref": "ListItemsResponse"
},
"scopes": [
"https://www.googleapis.com/auth/cloud_search",
"https://www.googleapis.com/auth/cloud_search.indexing"
]
},
"poll": {
"description": "Polls for unreserved items from the indexing queue and marks a\nset as reserved, starting with items that have\nthe oldest timestamp from the highest priority\nItemStatus.\nThe priority order is as follows: \u003cbr /\u003e\nERROR\n\u003cbr /\u003e\nMODIFIED\n\u003cbr /\u003e\nNEW_ITEM\n\u003cbr /\u003e\nACCEPTED\n\u003cbr /\u003e\nReserving items ensures that polling from other threads\ncannot create overlapping sets.\n\nAfter handling the reserved items, the client should put items back\ninto the unreserved state, either by calling\nindex,\nor by calling\npush with\nthe type REQUEUE.\n\nItems automatically become available (unreserved) after 4 hours even if no\nupdate or push method is called.",
"flatPath": "v1/indexing/datasources/{datasourcesId}/items:poll",
"httpMethod": "POST",
"id": "cloudsearch.indexing.datasources.items.poll",
"parameterOrder": [
"name"
],
"parameters": {
"name": {
"description": "Name of the Data Source to poll items.\nFormat: datasources/{source_id}",
"location": "path",
"pattern": "^datasources/[^/]+$",
"required": true,
"type": "string"
}
},
"path": "v1/indexing/{+name}/items:poll",
"request": {
"$ref": "PollItemsRequest"
},
"response": {
"$ref": "PollItemsResponse"
},
"scopes": [
"https://www.googleapis.com/auth/cloud_search",
"https://www.googleapis.com/auth/cloud_search.indexing"
]
},
"push": {
"description": "Pushes an item onto a queue for later polling and updating.",
"flatPath": "v1/indexing/datasources/{datasourcesId}/items/{itemsId}:push",
"httpMethod": "POST",
"id": "cloudsearch.indexing.datasources.items.push",
"parameterOrder": [
"name"
],
"parameters": {
"name": {
"description": "Name of the item to\npush into the indexing queue.\u003cbr /\u003e\nFormat: datasources/{source_id}/items/{ID}\n\u003cbr /\u003eThis is a required field.\nThe maximum length is 1536 characters.",
"location": "path",
"pattern": "^datasources/[^/]+/items/[^/]+$",
"required": true,
"type": "string"
}
},
"path": "v1/indexing/{+name}:push",
"request": {
"$ref": "PushItemRequest"
},
"response": {
"$ref": "Item"
},
"scopes": [
"https://www.googleapis.com/auth/cloud_search",
"https://www.googleapis.com/auth/cloud_search.indexing"
]
},
"unreserve": {
"description": "Unreserves all items from a queue, making them all eligible to be\npolled. This method is useful for resetting the indexing queue\nafter a connector has been restarted.",
"flatPath": "v1/indexing/datasources/{datasourcesId}/items:unreserve",
"httpMethod": "POST",
"id": "cloudsearch.indexing.datasources.items.unreserve",
"parameterOrder": [
"name"
],
"parameters": {
"name": {
"description": "Name of the Data Source to unreserve all items.\nFormat: datasources/{source_id}",
"location": "path",
"pattern": "^datasources/[^/]+$",
"required": true,
"type": "string"
}
},
"path": "v1/indexing/{+name}/items:unreserve",
"request": {
"$ref": "UnreserveItemsRequest"
},
"response": {
"$ref": "Operation"
},
"scopes": [
"https://www.googleapis.com/auth/cloud_search",
"https://www.googleapis.com/auth/cloud_search.indexing"
]
},
"upload": {
"description": "Creates an upload session for uploading item content. For items smaller\nthan 100 KiB, it's easier to embed the content\ninline within\nupdate.",
"flatPath": "v1/indexing/datasources/{datasourcesId}/items/{itemsId}:upload",
"httpMethod": "POST",
"id": "cloudsearch.indexing.datasources.items.upload",
"parameterOrder": [
"name"
],
"parameters": {
"name": {
"description": "Name of the Data Source to start a resumable upload.\nFormat: datasources/{source_id}",
"location": "path",
"pattern": "^datasources/[^/]+/items/[^/]+$",
"required": true,
"type": "string"
}
},
"path": "v1/indexing/{+name}:upload",
"request": {
"$ref": "StartUploadItemRequest"
},
"response": {
"$ref": "UploadItemRef"
},
"scopes": [
"https://www.googleapis.com/auth/cloud_search",
"https://www.googleapis.com/auth/cloud_search.indexing"
]
}
}
}
}
}
}
},
"media": {
"methods": {
"upload": {
"description": "Uploads media for indexing.\n\nThe upload endpoint supports direct and resumable upload protocols and\nis intended for large items that can not be inlined during index requests. To\nindex large content:\n\n1. Call upload to begin\n a session and get the item reference.\n1. Upload the content using the item reference's resource name.\n1. Call index with the item\n reference as the content.\n\nFor additional information, see\n[Create a content connector using the REST API](https://developers.google.com/cloud-search/docs/guides/content-connector#rest).",
"flatPath": "v1/media/{mediaId}",
"httpMethod": "POST",
"id": "cloudsearch.media.upload",
"mediaUpload": {
"accept": [
"*/*"
],
"protocols": {
"simple": {
"multipart": true,
"path": "/upload/v1/media/{+resourceName}"
}
}
},
"parameterOrder": [
"resourceName"
],
"parameters": {
"resourceName": {
"description": "Name of the media that is being downloaded. See\nReadRequest.resource_name.",
"location": "path",
"pattern": "^.+$",
"required": true,
"type": "string"
}
},
"path": "v1/media/{+resourceName}",
"request": {
"$ref": "Media"
},
"response": {
"$ref": "Media"
},
"scopes": [
"https://www.googleapis.com/auth/cloud_search",
"https://www.googleapis.com/auth/cloud_search.indexing"
],
"supportsMediaUpload": true
}
}
},
"operations": {
"methods": {
"get": {
"description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.",
"flatPath": "v1/operations/{operationsId}",
"httpMethod": "GET",
"id": "cloudsearch.operations.get",
"parameterOrder": [
"name"
],
"parameters": {
"name": {
"description": "The name of the operation resource.",
"location": "path",
"pattern": "^operations/.+$",
"required": true,
"type": "string"
}
},
"path": "v1/{+name}",
"response": {
"$ref": "Operation"
},
"scopes": [
"https://www.googleapis.com/auth/cloud_search",
"https://www.googleapis.com/auth/cloud_search.debug",
"https://www.googleapis.com/auth/cloud_search.indexing",
"https://www.googleapis.com/auth/cloud_search.settings",
"https://www.googleapis.com/auth/cloud_search.settings.indexing",
"https://www.googleapis.com/auth/cloud_search.settings.query"
]
}
}
},
"query": {
"methods": {
"search": {
"description": "The Cloud Search Query API provides the search method, which returns\nthe most relevant results from a user query. The results can come from\nG Suite Apps, such as Gmail or Google Drive, or they can come from data\nthat you have indexed from a third party.",
"flatPath": "v1/query/search",
"httpMethod": "POST",
"id": "cloudsearch.query.search",
"parameterOrder": [],
"parameters": {},
"path": "v1/query/search",
"request": {
"$ref": "SearchRequest"
},
"response": {
"$ref": "SearchResponse"
},
"scopes": [
"https://www.googleapis.com/auth/cloud_search",
"https://www.googleapis.com/auth/cloud_search.query"
]
},
"suggest": {
"description": "Provides suggestions for autocompleting the query.",
"flatPath": "v1/query/suggest",
"httpMethod": "POST",
"id": "cloudsearch.query.suggest",
"parameterOrder": [],
"parameters": {},
"path": "v1/query/suggest",
"request": {
"$ref": "SuggestRequest"
},
"response": {
"$ref": "SuggestResponse"
},
"scopes": [
"https://www.googleapis.com/auth/cloud_search",
"https://www.googleapis.com/auth/cloud_search.query"
]
}
},
"resources": {
"sources": {
"methods": {
"list": {
"description": "Returns list of sources that user can use for Search and Suggest APIs.",
"flatPath": "v1/query/sources",
"httpMethod": "GET",
"id": "cloudsearch.query.sources.list",
"parameterOrder": [],
"parameters": {
"pageToken": {
"description": "Number of sources to return in the response.",
"location": "query",
"type": "string"
},
"requestOptions.debugOptions.enableDebugging": {
"description": "If set, the request will enable debugging features of Cloud Search.\nOnly turn on this field, if asked by Google to help with debugging.",
"location": "query",
"type": "boolean"
},
"requestOptions.languageCode": {
"description": "The BCP-47 language code, such as \"en-US\" or \"sr-Latn\".\nFor more information, see\nhttp://www.unicode.org/reports/tr35/#Unicode_locale_identifier.\nFor translations.",
"location": "query",
"type": "string"
},
"requestOptions.searchApplicationId": {
"description": "Id of the application created using SearchApplicationsService.",
"location": "query",
"type": "string"
},
"requestOptions.timeZone": {
"description": "Current user's time zone id, such as \"America/Los_Angeles\" or\n\"Australia/Sydney\". These IDs are defined by\n[Unicode Common Locale Data Repository (CLDR)](http://cldr.unicode.org/)\nproject, and currently available in the file\n[timezone.xml](http://unicode.org/repos/cldr/trunk/common/bcp47/timezone.xml)",
"location": "query",
"type": "string"
}
},
"path": "v1/query/sources",
"response": {
"$ref": "ListQuerySourcesResponse"
},
"scopes": [
"https://www.googleapis.com/auth/cloud_search",
"https://www.googleapis.com/auth/cloud_search.query"
]
}
}
}
}
},
"settings": {
"resources": {
"datasources": {
"methods": {
"create": {
"description": "Creates data source.",
"flatPath": "v1/settings/datasources",
"httpMethod": "POST",
"id": "cloudsearch.settings.datasources.create",
"parameterOrder": [],
"parameters": {},
"path": "v1/settings/datasources",
"request": {
"$ref": "DataSource"
},
"response": {
"$ref": "Operation"
},
"scopes": [
"https://www.googleapis.com/auth/cloud_search",
"https://www.googleapis.com/auth/cloud_search.settings",
"https://www.googleapis.com/auth/cloud_search.settings.indexing"
]
},
"delete": {
"description": "Deletes a data source.",
"flatPath": "v1/settings/datasources/{datasourcesId}",
"httpMethod": "DELETE",
"id": "cloudsearch.settings.datasources.delete",
"parameterOrder": [
"name"
],
"parameters": {
"debugOptions.enableDebugging": {
"description": "If set, the request will enable debugging features of Cloud Search.\nOnly turn on this field, if asked by Google to help with debugging.",
"location": "query",
"type": "boolean"
},
"name": {
"description": "Name of the data source.\nFormat: datasources/{source_id}.",
"location": "path",
"pattern": "^datasources/[^/]+$",
"required": true,
"type": "string"
}
},
"path": "v1/settings/{+name}",
"response": {
"$ref": "Operation"
},
"scopes": [
"https://www.googleapis.com/auth/cloud_search",
"https://www.googleapis.com/auth/cloud_search.settings",
"https://www.googleapis.com/auth/cloud_search.settings.indexing"
]
},
"get": {
"description": "Gets a data source.",
"flatPath": "v1/settings/datasources/{datasourcesId}",
"httpMethod": "GET",
"id": "cloudsearch.settings.datasources.get",
"parameterOrder": [
"name"
],
"parameters": {
"debugOptions.enableDebugging": {
"description": "If set, the request will enable debugging features of Cloud Search.\nOnly turn on this field, if asked by Google to help with debugging.",
"location": "query",
"type": "boolean"
},
"name": {
"description": "Name of the data source resource.\nFormat: datasources/{source_id}.",
"location": "path",
"pattern": "^datasources/[^/]+$",
"required": true,
"type": "string"
}
},
"path": "v1/settings/{+name}",
"response": {
"$ref": "DataSource"
},
"scopes": [
"https://www.googleapis.com/auth/cloud_search",
"https://www.googleapis.com/auth/cloud_search.settings",
"https://www.googleapis.com/auth/cloud_search.settings.indexing"
]
},
"list": {
"description": "Lists data sources.",
"flatPath": "v1/settings/datasources",
"httpMethod": "GET",
"id": "cloudsearch.settings.datasources.list",
"parameterOrder": [],
"parameters": {
"debugOptions.enableDebugging": {
"description": "If set, the request will enable debugging features of Cloud Search.\nOnly turn on this field, if asked by Google to help with debugging.",
"location": "query",
"type": "boolean"
},
"pageSize": {
"description": "Maximum number of data sources to fetch in a request.\nThe max value is 100.\n\u003cbr /\u003eThe default value is 10",
"format": "int32",
"location": "query",
"type": "integer"
},
"pageToken": {
"description": "Starting index of the results.",
"location": "query",
"type": "string"
}
},
"path": "v1/settings/datasources",
"response": {
"$ref": "ListDataSourceResponse"
},
"scopes": [
"https://www.googleapis.com/auth/cloud_search",
"https://www.googleapis.com/auth/cloud_search.settings",
"https://www.googleapis.com/auth/cloud_search.settings.indexing"
]
},
"update": {
"description": "Updates a data source.",
"flatPath": "v1/settings/datasources/{datasourcesId}",
"httpMethod": "PUT",
"id": "cloudsearch.settings.datasources.update",
"parameterOrder": [
"name"
],
"parameters": {
"name": {
"description": "Name of the data source resource.\nFormat: datasources/{source_id}.\n\u003cbr /\u003eThe name is ignored when creating a data source.",
"location": "path",
"pattern": "^datasources/[^/]+$",
"required": true,
"type": "string"
}
},
"path": "v1/settings/{+name}",
"request": {
"$ref": "UpdateDataSourceRequest"
},
"response": {
"$ref": "Operation"
},
"scopes": [
"https://www.googleapis.com/auth/cloud_search",
"https://www.googleapis.com/auth/cloud_search.settings",
"https://www.googleapis.com/auth/cloud_search.settings.indexing"
]
}
}
},
"searchapplications": {
"methods": {
"create": {
"description": "Creates a search application.",
"flatPath": "v1/settings/searchapplications",
"httpMethod": "POST",
"id": "cloudsearch.settings.searchapplications.create",
"parameterOrder": [],
"parameters": {},
"path": "v1/settings/searchapplications",
"request": {
"$ref": "SearchApplication"
},
"response": {
"$ref": "Operation"
},
"scopes": [
"https://www.googleapis.com/auth/cloud_search",
"https://www.googleapis.com/auth/cloud_search.settings",
"https://www.googleapis.com/auth/cloud_search.settings.query"
]
},
"delete": {
"description": "Deletes a search application.",
"flatPath": "v1/settings/searchapplications/{searchapplicationsId}",
"httpMethod": "DELETE",
"id": "cloudsearch.settings.searchapplications.delete",
"parameterOrder": [
"name"
],
"parameters": {
"debugOptions.enableDebugging": {
"description": "If set, the request will enable debugging features of Cloud Search.\nOnly turn on this field, if asked by Google to help with debugging.",
"location": "query",
"type": "boolean"
},
"name": {
"description": "The name of the search application to be deleted.\n\u003cbr /\u003eFormat: applications/{application_id}.",
"location": "path",
"pattern": "^searchapplications/[^/]+$",
"required": true,
"type": "string"
}
},
"path": "v1/settings/{+name}",
"response": {
"$ref": "Operation"
},
"scopes": [
"https://www.googleapis.com/auth/cloud_search",
"https://www.googleapis.com/auth/cloud_search.settings",
"https://www.googleapis.com/auth/cloud_search.settings.query"
]
},
"get": {
"description": "Gets the specified search application.",
"flatPath": "v1/settings/searchapplications/{searchapplicationsId}",
"httpMethod": "GET",
"id": "cloudsearch.settings.searchapplications.get",
"parameterOrder": [
"name"
],
"parameters": {
"debugOptions.enableDebugging": {
"description": "If set, the request will enable debugging features of Cloud Search.\nOnly turn on this field, if asked by Google to help with debugging.",
"location": "query",
"type": "boolean"
},
"name": {
"description": "Name of the search application.\n\u003cbr /\u003eFormat: applications/{application_id}.",
"location": "path",
"pattern": "^searchapplications/[^/]+$",
"required": true,
"type": "string"
}
},
"path": "v1/settings/{+name}",
"response": {
"$ref": "SearchApplication"
},
"scopes": [
"https://www.googleapis.com/auth/cloud_search",
"https://www.googleapis.com/auth/cloud_search.settings",
"https://www.googleapis.com/auth/cloud_search.settings.query"
]
},
"list": {
"description": "Lists all search applications.",
"flatPath": "v1/settings/searchapplications",
"httpMethod": "GET",
"id": "cloudsearch.settings.searchapplications.list",
"parameterOrder": [],
"parameters": {
"debugOptions.enableDebugging": {
"description": "If set, the request will enable debugging features of Cloud Search.\nOnly turn on this field, if asked by Google to help with debugging.",
"location": "query",
"type": "boolean"
},
"pageSize": {
"description": "The maximum number of items to return.",
"format": "int32",
"location": "query",
"type": "integer"
},
"pageToken": {
"description": "The next_page_token value returned from a previous List request, if any.\n\u003cbr/\u003e The default value is 10",
"location": "query",
"type": "string"
}
},
"path": "v1/settings/searchapplications",
"response": {
"$ref": "ListSearchApplicationsResponse"
},
"scopes": [
"https://www.googleapis.com/auth/cloud_search",
"https://www.googleapis.com/auth/cloud_search.settings",
"https://www.googleapis.com/auth/cloud_search.settings.query"
]
},
"reset": {
"description": "Resets a search application to default settings. This will return an empty\nresponse.",
"flatPath": "v1/settings/searchapplications/{searchapplicationsId}:reset",
"httpMethod": "POST",
"id": "cloudsearch.settings.searchapplications.reset",
"parameterOrder": [
"name"
],
"parameters": {
"name": {
"description": "The name of the search application to be reset.\n\u003cbr /\u003eFormat: applications/{application_id}.",
"location": "path",
"pattern": "^searchapplications/[^/]+$",
"required": true,
"type": "string"
}
},
"path": "v1/settings/{+name}:reset",
"request": {
"$ref": "ResetSearchApplicationRequest"
},
"response": {
"$ref": "Operation"
},
"scopes": [
"https://www.googleapis.com/auth/cloud_search",
"https://www.googleapis.com/auth/cloud_search.settings",
"https://www.googleapis.com/auth/cloud_search.settings.query"
]
},
"update": {
"description": "Updates a search application.",
"flatPath": "v1/settings/searchapplications/{searchapplicationsId}",
"httpMethod": "PUT",
"id": "cloudsearch.settings.searchapplications.update",
"parameterOrder": [
"name"
],
"parameters": {
"name": {
"description": "Name of the Search Application.\n\u003cbr /\u003eFormat: searchapplications/{application_id}.",
"location": "path",
"pattern": "^searchapplications/[^/]+$",
"required": true,
"type": "string"
}
},
"path": "v1/settings/{+name}",
"request": {
"$ref": "SearchApplication"
},
"response": {
"$ref": "Operation"
},
"scopes": [
"https://www.googleapis.com/auth/cloud_search",
"https://www.googleapis.com/auth/cloud_search.settings",
"https://www.googleapis.com/auth/cloud_search.settings.query"
]
}
}
}
}
},
"stats": {
"methods": {
"getIndex": {
"description": "Gets indexed item statistics aggreggated across all data sources.",
"flatPath": "v1/stats/index",
"httpMethod": "GET",
"id": "cloudsearch.stats.getIndex",
"parameterOrder": [],
"parameters": {
"fromDate.day": {
"description": "Day of month. Must be from 1 to 31 and valid for the year and month.",
"format": "int32",
"location": "query",
"type": "integer"
},
"fromDate.month": {
"description": "Month of date. Must be from 1 to 12.",
"format": "int32",
"location": "query",
"type": "integer"
},
"fromDate.year": {
"description": "Year of date. Must be from 1 to 9999.",
"format": "int32",
"location": "query",
"type": "integer"
},
"toDate.day": {
"description": "Day of month. Must be from 1 to 31 and valid for the year and month.",
"format": "int32",
"location": "query",
"type": "integer"
},
"toDate.month": {
"description": "Month of date. Must be from 1 to 12.",
"format": "int32",
"location": "query",
"type": "integer"
},
"toDate.year": {
"description": "Year of date. Must be from 1 to 9999.",
"format": "int32",
"location": "query",
"type": "integer"
}
},
"path": "v1/stats/index",
"response": {
"$ref": "GetCustomerIndexStatsResponse"
},
"scopes": [
"https://www.googleapis.com/auth/cloud_search",
"https://www.googleapis.com/auth/cloud_search.stats",
"https://www.googleapis.com/auth/cloud_search.stats.indexing"
]
}
},
"resources": {
"index": {
"resources": {
"datasources": {
"methods": {
"get": {
"description": "Gets indexed item statistics for a single data source.",
"flatPath": "v1/stats/index/datasources/{datasourcesId}",
"httpMethod": "GET",
"id": "cloudsearch.stats.index.datasources.get",
"parameterOrder": [
"name"
],
"parameters": {
"fromDate.day": {
"description": "Day of month. Must be from 1 to 31 and valid for the year and month.",
"format": "int32",
"location": "query",
"type": "integer"
},
"fromDate.month": {
"description": "Month of date. Must be from 1 to 12.",
"format": "int32",
"location": "query",
"type": "integer"
},
"fromDate.year": {
"description": "Year of date. Must be from 1 to 9999.",
"format": "int32",
"location": "query",
"type": "integer"
},
"name": {
"description": "The resource id of the data source to retrieve statistics for,\nin the following format: \"datasources/{source_id}\"",
"location": "path",
"pattern": "^datasources/[^/]+$",
"required": true,
"type": "string"
},
"toDate.day": {
"description": "Day of month. Must be from 1 to 31 and valid for the year and month.",
"format": "int32",
"location": "query",
"type": "integer"
},
"toDate.month": {
"description": "Month of date. Must be from 1 to 12.",
"format": "int32",
"location": "query",
"type": "integer"
},
"toDate.year": {
"description": "Year of date. Must be from 1 to 9999.",
"format": "int32",
"location": "query",
"type": "integer"
}
},
"path": "v1/stats/index/{+name}",
"response": {
"$ref": "GetDataSourceIndexStatsResponse"
},
"scopes": [
"https://www.googleapis.com/auth/cloud_search",
"https://www.googleapis.com/auth/cloud_search.stats",
"https://www.googleapis.com/auth/cloud_search.stats.indexing"
]
}
}
}
}
}
}
}
},
"revision": "20181120",
"rootUrl": "https://cloudsearch.googleapis.com/",
"schemas": {
"BooleanOperatorOptions": {
"description": "Used to provide a search operator for boolean properties. This is\noptional. Search operators let users restrict the query to specific fields\nrelevant to the type of item being searched.",
"id": "BooleanOperatorOptions",
"properties": {
"operatorName": {
"description": "Indicates the operator name required in the query in order to isolate the\nboolean property. For example, if operatorName is *closed* and the\nproperty's name is *isClosed*, then queries like\n*closed:\u0026lt;value\u0026gt;* will show results only where the value of the\nproperty named *isClosed* matches *\u0026lt;value\u0026gt;*. By contrast, a\nsearch that uses the same *\u0026lt;value\u0026gt;* without an operator will return\nall items where *\u0026lt;value\u0026gt;* matches the value of any\nString properties or text within the content field for the item.\nThe operator name can only contain lowercase letters (a-z).\nThe maximum length is 32 characters.",
"type": "string"
}
},
"type": "object"
},
"BooleanPropertyOptions": {
"description": "Options for boolean properties.",
"id": "BooleanPropertyOptions",
"properties": {
"operatorOptions": {
"$ref": "BooleanOperatorOptions",
"description": "If set, describes how the boolean should be used as a search operator."
}
},
"type": "object"
},
"CheckAccessResponse": {
"id": "CheckAccessResponse",
"properties": {
"hasAccess": {
"description": "Returns true if principal has access. Returns false otherwise.",
"type": "boolean"
}
},
"type": "object"
},
"CompositeFilter": {
"id": "CompositeFilter",
"properties": {
"logicOperator": {
"description": "The logic operator of the sub filter.",
"enum": [
"AND",
"OR",
"NOT"
],
"enumDescriptions": [
"Logical operators, which can only be applied to sub filters.",
"",
"NOT can only be applied on a single sub filter."
],
"type": "string"
},
"subFilters": {
"description": "Sub filters.",
"items": {
"$ref": "Filter"
},
"type": "array"
}
},
"type": "object"
},
"CustomerIndexStats": {
"description": "Aggregation of items by status code as of the specified date.",
"id": "CustomerIndexStats",
"properties": {
"date": {
"$ref": "Date",
"description": "Date for which statistics were calculated."
},
"itemCountByStatus": {
"description": "Number of items aggregrated by status code.",
"items": {
"$ref": "ItemCountByStatus"
},
"type": "array"
}
},
"type": "object"
},
"DataSource": {
"description": "Data source is a logical namespace for items to be indexed.\nAll items must belong to a data source. This is the prerequisite before\nitems can be indexed into Cloud Search.",
"id": "DataSource",
"properties": {
"disableModifications": {
"description": "If true, Indexing API rejects any modification calls to this data source\nsuch as create, update, and delete.\nDisabling this does not imply halting process of previously\naccepted data.",
"type": "boolean"
},
"disableServing": {
"description": "Disable serving any search or assist results.",
"type": "boolean"
},
"displayName": {
"description": "Required. Display name of the data source\nThe maximum length is 300 characters.",
"type": "string"
},
"indexingServiceAccounts": {
"description": "List of service accounts that have indexing access.",
"items": {
"type": "string"
},
"type": "array"
},
"itemsVisibility": {
"description": "This restricts visibility to items at a data source level to the\ndisjunction of users/groups mentioned with the field. Note that, this\ndoes not ensure access to a specific item, as users need to have ACL\npermissions on the contained items. This ensures a high level access\non the entire data source, and that the individual items are not shared\noutside this visibility.",
"items": {
"$ref": "GSuitePrincipal"
},
"type": "array"
},
"name": {
"description": "Name of the data source resource.\nFormat: datasources/{source_id}.\n\u003cbr /\u003eThe name is ignored when creating a data source.",
"type": "string"
},
"operationIds": {
"description": "IDs of the Long Running Operations (LROs) currently running for this schema.",
"items": {
"type": "string"
},
"type": "array"
},
"shortName": {
"description": "A short name or alias for the source. This value will be used to match the\n'source' operator. For example, if the short name is *\u0026lt;value\u0026gt;* then\nqueries like *source:\u0026lt;value\u0026gt;* will only return results for this\nsource. The value must be unique across all data sources. The value must\nonly contain alphanumeric characters (a-zA-Z0-9). The value cannot start\nwith 'google' and cannot be one of the following: mail, gmail, docs, drive,\ngroups, sites, calendar, hangouts, gplus, keep.\nIts maximum length is 32 characters.",
"type": "string"
}
},
"type": "object"
},
"DataSourceIndexStats": {
"description": "Aggregation of items by status code as of the specified date.",
"id": "DataSourceIndexStats",
"properties": {
"date": {
"$ref": "Date",
"description": "Date for which index stats were calculated. If the date of request is not\nthe current date then stats calculated on the next day are returned. Stats\nare calculated close to mid night in this case. If date of request is\ncurrent date, then real time stats are returned."
},
"itemCountByStatus": {
"description": "Number of items aggregrated by status code.",
"items": {
"$ref": "ItemCountByStatus"
},
"type": "array"
}
},
"type": "object"
},
"DataSourceRestriction": {
"description": "Restriction on Datasource.",
"id": "DataSourceRestriction",
"properties": {
"filterOptions": {
"description": "Filter options restricting the results. If multiple filters\nare present, they are grouped by object type before joining.\nFilters with the same object type are joined conjunctively, then\nthe resulting expressions are joined disjunctively.\n\nThe maximum number of elements is 20.",
"items": {
"$ref": "FilterOptions"
},
"type": "array"
},
"source": {
"$ref": "Source",
"description": "The source of restriction."
}
},
"type": "object"
},
"Date": {
"description": "Represents a whole calendar date, for example a date of birth. The time of day and time zone are either specified elsewhere or are not significant. The date is relative to the [Proleptic Gregorian Calendar](https://en.wikipedia.org/wiki/Proleptic_Gregorian_calendar). The date must be a valid calendar date between the year 1 and 9999.",
"id": "Date",
"properties": {
"day": {
"description": "Day of month. Must be from 1 to 31 and valid for the year and month.",
"format": "int32",
"type": "integer"
},
"month": {
"description": "Month of date. Must be from 1 to 12.",
"format": "int32",
"type": "integer"
},
"year": {
"description": "Year of date. Must be from 1 to 9999.",
"format": "int32",
"type": "integer"
}
},
"type": "object"
},
"DateOperatorOptions": {
"description": "Optional. Provides a search operator for date properties.\nSearch operators let users restrict the query to specific fields relevant\nto the type of item being searched.",
"id": "DateOperatorOptions",
"properties": {
"greaterThanOperatorName": {
"description": "Indicates the operator name required in the query in order to isolate the\ndate property using the greater-than operator. For example, if\ngreaterThanOperatorName is *closedafter* and the property's name is\n*closeDate*, then queries like *closedafter:\u0026lt;value\u0026gt;* will\nshow results only where the value of the property named *closeDate* is\nlater than *\u0026lt;value\u0026gt;*.\nThe operator name can only contain lowercase letters (a-z).\nThe maximum length is 32 characters.",
"type": "string"
},
"lessThanOperatorName": {
"description": "Indicates the operator name required in the query in order to isolate the\ndate property using the less-than operator. For example, if\nlessThanOperatorName is *closedbefore* and the property's name is\n*closeDate*, then queries like *closedbefore:\u0026lt;value\u0026gt;* will\nshow results only where the value of the property named *closeDate* is\nearlier than *\u0026lt;value\u0026gt;*.\nThe operator name can only contain lowercase letters (a-z).\nThe maximum length is 32 characters.",
"type": "string"
},
"operatorName": {
"description": "Indicates the actual string required in the query in order to isolate the\ndate property. For example, suppose an issue tracking schema object\nhas a property named *closeDate* that specifies an operator with an\noperatorName of *closedon*. For searches on that data, queries like\n*closedon:\u0026lt;value\u0026gt;* will show results only where the value of the\n*closeDate* property matches *\u0026lt;value\u0026gt;*. By contrast, a\nsearch that uses the same *\u0026lt;value\u0026gt;* without an operator will return\nall items where *\u0026lt;value\u0026gt;* matches the value of any String\nproperties or text within the content field for the indexed datasource.\nThe operator name can only contain lowercase letters (a-z).\nThe maximum length is 32 characters.",
"type": "string"
}
},
"type": "object"
},
"DatePropertyOptions": {
"description": "Options for date properties.",
"id": "DatePropertyOptions",
"properties": {
"operatorOptions": {
"$ref": "DateOperatorOptions",
"description": "If set, describes how the date should be used as a search operator."
}
},
"type": "object"
},
"DateValues": {
"description": "List of date values.",
"id": "DateValues",
"properties": {
"values": {
"description": "The maximum number of elements is 100.",
"items": {
"$ref": "Date"
},
"type": "array"
}
},
"type": "object"
},
"DebugOptions": {
"description": "Shared request debug options for all cloudsearch RPC methods.",
"id": "DebugOptions",
"properties": {
"enableDebugging": {
"description": "If set, the request will enable debugging features of Cloud Search.\nOnly turn on this field, if asked by Google to help with debugging.",
"type": "boolean"
}
},
"type": "object"
},
"DeleteQueueItemsRequest": {
"id": "DeleteQueueItemsRequest",
"properties": {
"connectorName": {
"description": "Name of connector making this call.\n\u003cbr /\u003eFormat: datasources/{source_id}/connectors/{ID}",
"type": "string"
},
"debugOptions": {
"$ref": "DebugOptions",
"description": "Common debug options."
},
"queue": {
"description": "Name of a queue to delete items from.",
"type": "string"
}
},
"type": "object"
},
"DisplayedProperty": {
"description": "A reference to a top-level property within the object that should be\ndisplayed in search results. The values of the chosen properties will be\ndisplayed in the search results along with the\ndislpay label\nfor that property if one is specified. If a display label is not specified,\nonly the values will be shown.",
"id": "DisplayedProperty",
"properties": {
"propertyName": {
"description": "The name of the top-level property as defined in a property definition\nfor the object. If the name is not a defined property in the schema, an\nerror will be given when attempting to update the schema.",
"type": "string"
}
},
"type": "object"
},
"DoubleOperatorOptions": {
"description": "Used to provide a search operator for double properties. This is\noptional. Search operators let users restrict the query to specific fields\nrelevant to the type of item being searched.",
"id": "DoubleOperatorOptions",
"properties": {
"operatorName": {
"description": "Indicates the operator name required in the query in order to use the\ndouble property in sorting or as a facet.\nThe operator name can only contain lowercase letters (a-z).\nThe maximum length is 32 characters.",
"type": "string"
}
},
"type": "object"
},
"DoublePropertyOptions": {
"description": "Options for double properties.",
"id": "DoublePropertyOptions",
"properties": {
"operatorOptions": {
"$ref": "DoubleOperatorOptions",
"description": "If set, describes how the double should be used as a search operator."
}
},
"type": "object"
},
"DoubleValues": {
"description": "List of double values.",
"id": "DoubleValues",
"properties": {
"values": {
"description": "The maximum number of elements is 100.",
"items": {
"format": "double",
"type": "number"
},
"type": "array"
}
},
"type": "object"
},
"DriveFollowUpRestrict": {
"description": "Drive follow-up search restricts (e.g. \"followup:suggestions\").",
"id": "DriveFollowUpRestrict",
"properties": {
"type": {
"enum": [
"UNSPECIFIED",
"FOLLOWUP_SUGGESTIONS",
"FOLLOWUP_ACTION_ITEMS"
],
"enumDescriptions": [
"",
"",
""
],
"type": "string"
}
},
"type": "object"
},
"DriveLocationRestrict": {
"description": "Drive location search restricts (e.g. \"is:starred\").",
"id": "DriveLocationRestrict",
"properties": {
"type": {
"enum": [
"UNSPECIFIED",
"TRASHED",
"STARRED"
],
"enumDescriptions": [
"",
"",
""
],
"type": "string"
}
},
"type": "object"
},
"DriveMimeTypeRestrict": {
"description": "Drive mime-type search restricts (e.g. \"type:pdf\").",
"id": "DriveMimeTypeRestrict",
"properties": {
"type": {
"enum": [
"UNSPECIFIED",
"PDF",
"DOCUMENT",
"PRESENTATION",
"SPREADSHEET",
"FORM",
"DRAWING",
"SCRIPT",
"MAP",
"IMAGE",
"AUDIO",
"VIDEO",
"FOLDER",
"ARCHIVE"
],
"enumDescriptions": [
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
""
],
"type": "string"
}
},
"type": "object"
},
"DriveTimeSpanRestrict": {
"description": "The time span search restrict (e.g. \"after:2017-09-11 before:2017-09-12\").",
"id": "DriveTimeSpanRestrict",
"properties": {
"type": {
"enum": [
"UNSPECIFIED",
"TODAY",
"YESTERDAY",
"LAST_7_DAYS",
"LAST_30_DAYS",
"LAST_90_DAYS"
],
"enumDescriptions": [
"",
"",
"",
"",
"Not Enabled",
"Not Enabled"
],
"type": "string"
}
},
"type": "object"
},
"EmailAddress": {
"description": "A person's email address.",
"id": "EmailAddress",
"properties": {
"emailAddress": {
"description": "The email address.",
"type": "string"
}
},
"type": "object"
},
"EnumOperatorOptions": {
"description": "Used to provide a search operator for enum properties. This is\noptional. Search operators let users restrict the query to specific fields\nrelevant to the type of item being searched. For example, if you provide no\noperator for a *priority* enum property with possible values *p0* and *p1*,\na query that contains the term *p0* will return items that have *p0* as the\nvalue of the *priority* property, as well as any items that contain the\nstring *p0* in other fields. If you provide an operator name for the enum,\nsuch as *priority*, then search users can use that operator to refine\nresults to only items that have *p0* as this property's value, with the\nquery *priority:p0*.",
"id": "EnumOperatorOptions",
"properties": {
"operatorName": {
"description": "Indicates the operator name required in the query in order to isolate the\nenum property. For example, if operatorName is *priority* and the\nproperty's name is *priorityVal*, then queries like\n*priority:\u0026lt;value\u0026gt;* will show results only where the value of the\nproperty named *priorityVal* matches *\u0026lt;value\u0026gt;*. By contrast, a\nsearch that uses the same *\u0026lt;value\u0026gt;* without an operator will return\nall items where *\u0026lt;value\u0026gt;* matches the value of any String\nproperties or text within the content field for the item.\nThe operator name can only contain lowercase letters (a-z).\nThe maximum length is 32 characters.",
"type": "string"
}
},
"type": "object"
},
"EnumPropertyOptions": {
"description": "Options for enum properties, which allow you to define a restricted set of\nstrings to match user queries, set rankings for those string values, and\ndefine an operator name to be paired with those strings so that users can\nnarrow results to only items with a specific value. For example, for items in\na request tracking system with priority information, you could define *p0* as\nan allowable enum value and tie this enum to the operator name *priority* so\nthat search users could add *priority:p0* to their query to restrict the set\nof results to only those items indexed with the value *p0*.",
"id": "EnumPropertyOptions",
"properties": {
"operatorOptions": {
"$ref": "EnumOperatorOptions",
"description": "If set, describes how the enum should be used as a search operator."
},
"orderedRanking": {
"description": "Used to specify the ordered ranking for the enumeration that determines how\nthe integer values provided in the possible EnumValuePairs are used to rank\nresults. If specified, integer values must be provided for all possible\nEnumValuePair values given for this property. Can only be used if\nisRepeatable\nis false.",
"enum": [
"NO_ORDER",
"ASCENDING",
"DESCENDING"
],
"enumDescriptions": [
"There is no ranking order for the property. Results will not be adjusted\nby this property's value.",
"This property is ranked in ascending order. Lower values indicate lower\nranking.",
"This property is ranked in descending order. Lower values indicate\nhigher ranking."
],
"type": "string"
},
"possibleValues": {
"description": "The list of possible values for the enumeration property. All\nEnumValuePairs must provide a string value. If you specify an integer value\nfor one EnumValuePair, then all possible EnumValuePairs must provide an\ninteger value. Both the string value and integer value must be unique over\nall possible values. Once set, possible values cannot be removed or\nmodified. If you supply an ordered ranking and think you might insert\nadditional enum values in the future, leave gaps in the initial integer\nvalues to allow adding a value in between previously registered values.\nThe maximum number of elements is 100.",
"items": {
"$ref": "EnumValuePair"
},
"type": "array"
}
},
"type": "object"
},
"EnumValuePair": {
"description": "The enumeration value pair defines two things: a required string value and\nan optional integer value. The string value defines the necessary query\nterm required to retrieve that item, such as *p0* for a priority item.\nThe integer value determines the ranking of that string value relative\nto other enumerated values for the same property. For example, you might\nassociate *p0* with *0* and define another enum pair such as *p1* and *1*.\nYou must use the integer value in combination with\nordered\nranking to\nset the ranking of a given value relative to other enumerated values for\nthe same property name. Here, a ranking order of DESCENDING for *priority*\nproperties results in a ranking boost for items indexed with a value of\n*p0* compared to items indexed with a value of *p1*. Without a specified\nranking order, the integer value has no effect on item ranking.",
"id": "EnumValuePair",
"properties": {
"integerValue": {
"description": "The integer value of the EnumValuePair which must be non-negative.\nOptional.",
"format": "int32",
"type": "integer"
},
"stringValue": {
"description": "The string value of the EnumValuePair.\nThe maximum length is 32 characters.",
"type": "string"
}
},
"type": "object"
},
"EnumValues": {
"description": "List of enum values.",
"id": "EnumValues",
"properties": {
"values": {
"description": "The maximum allowable length for string values is 32 characters.\nThe maximum number of elements is 100.",
"items": {
"type": "string"
},
"type": "array"
}
},
"type": "object"
},
"ErrorInfo": {
"description": "Error information about the response.",
"id": "ErrorInfo",
"properties": {
"errorMessages": {
"items": {
"$ref": "ErrorMessage"
},
"type": "array"
}
},
"type": "object"
},
"ErrorMessage": {
"description": "Error message per source response.",
"id": "ErrorMessage",
"properties": {
"errorMessage": {
"type": "string"
},
"source": {
"$ref": "Source"
}
},
"type": "object"
},
"FacetBucket": {
"description": "A bucket in a facet is the basic unit of operation. A bucket can comprise\neither a single value OR a contiguous range of values, depending on the\ntype of the field bucketed.\nFacetBucket is currently used only for returning the response object.",
"id": "FacetBucket",
"properties": {
"count": {
"description": "Number of results that match the bucket value.",
"format": "int32",
"type": "integer"
},
"percentage": {
"description": "Percent of results that match the bucket value. This value is between\n(0-100].\nThis may not be accurate and is a best effort estimate.",
"format": "int32",
"type": "integer"
},
"value": {
"$ref": "Value"
}
},
"type": "object"
},
"FacetOptions": {
"description": "Specifies operators to return facet results for. There will be one\nFacetResult for every source_name/object_type/operator_name combination.",
"id": "FacetOptions",
"properties": {
"objectType": {
"description": "If object_type is set, only those objects of that type will be used to\ncompute facets. If empty, then all objects will be used to compute facets.",
"type": "string"
},
"operatorName": {
"description": "Name of the operator chosen for faceting. @see\ncloudsearch.SchemaPropertyOptions",
"type": "string"
},
"sourceName": {
"description": "Source name to facet on. Format: datasources/{source_id}\nIf empty, all data sources will be used.",
"type": "string"
}
},
"type": "object"
},
"FacetResult": {
"description": "Source specific facet response",
"id": "FacetResult",
"properties": {
"buckets": {
"description": "FacetBuckets for values in response containing atleast a single result.",
"items": {
"$ref": "FacetBucket"
},
"type": "array"
},
"objectType": {
"description": "Object type for which facet results are returned. Can be empty.",
"type": "string"
},
"operatorName": {
"description": "Name of the operator chosen for faceting. @see\ncloudsearch.SchemaPropertyOptions",
"type": "string"
},
"sourceName": {
"description": "Source name for which facet results are returned. Will not be empty.",
"type": "string"
}
},
"type": "object"
},
"FieldViolation": {
"id": "FieldViolation",
"properties": {
"description": {
"description": "Description of the error.",
"type": "string"
},
"field": {
"description": "Path of field with violation.",
"type": "string"
}
},
"type": "object"
},
"Filter": {
"description": "A generic way of expressing filters in a query, which supports two\napproaches: \u003cbr/\u003e\u003cbr/\u003e\n**1. Setting a ValueFilter.** The name must match an operator_name defined in\nthe schema for your data source.\n\u003cbr/\u003e\n**2. Setting a CompositeFilter.** The filters are evaluated\nusing the logical operator. The top-level operators can only be either an AND\nor a NOT. AND can appear only at the top-most level. OR can appear only under\na top-level AND.",
"id": "Filter",
"properties": {
"compositeFilter": {
"$ref": "CompositeFilter"
},
"valueFilter": {
"$ref": "ValueFilter"
}
},
"type": "object"
},
"FilterOptions": {
"description": "Filter options to be applied on query.",
"id": "FilterOptions",
"properties": {
"filter": {
"$ref": "Filter",
"description": "Generic filter to restrict the search, such as `lang:en`, `site:xyz`."
},
"objectType": {
"description": "If object_type is set, only objects of that type are returned. This should\ncorrespond to the name of the object that was registered within the\ndefinition of schema. The maximum length is 256 characters.",
"type": "string"
}
},
"type": "object"
},
"FreshnessOptions": {
"description": "Indicates which freshness property to use when adjusting search ranking for\nan item. Fresher, more recent dates indicate higher quality. Use the\nfreshness option property that best works with your data. For fileshare\ndocuments, last modified time is most relevant. For calendar event data,\nthe time when the event occurs is a more relevant freshness indicator. In\nthis way, calendar events that occur closer to the time of the search query\nare considered higher quality and ranked accordingly.",
"id": "FreshnessOptions",
"properties": {
"freshnessDuration": {
"description": "The duration (in seconds) after which an object should be considered\nstale.",
"format": "google-duration",
"type": "string"
},
"freshnessProperty": {
"description": "This property indicates the freshness level of the object in the index.\nIf set, this property must be a top-level property within the\nPropertyDefinitions\nand it must be a\ntimestamp type\nor\ndate type.\nOtherwise, the Indexing API uses\nupdateTime\nas the freshness indicator.\nThe maximum length is 256 characters.",
"type": "string"
}
},
"type": "object"
},
"GSuitePrincipal": {
"id": "GSuitePrincipal",
"properties": {
"gsuiteDomain": {
"description": "This principal represents all users of the G Suite domain of the\ncustomer.",
"type": "boolean"
},
"gsuiteGroupEmail": {
"description": "This principal references a G Suite group account",
"type": "string"
},
"gsuiteUserEmail": {
"description": "This principal references a G Suite user account",
"type": "string"
}
},
"type": "object"
},
"GetCustomerIndexStatsResponse": {
"id": "GetCustomerIndexStatsResponse",
"properties": {
"stats": {
"description": "Summary of indexed item counts, one for each day in the requested range.",
"items": {
"$ref": "CustomerIndexStats"
},
"type": "array"
}
},
"type": "object"
},
"GetDataSourceIndexStatsResponse": {
"id": "GetDataSourceIndexStatsResponse",
"properties": {
"stats": {
"description": "Summary of indexed item counts, one for each day in the requested range.",
"items": {
"$ref": "DataSourceIndexStats"
},
"type": "array"
}
},
"type": "object"
},
"HtmlOperatorOptions": {
"description": "Used to provide a search operator for html properties. This is optional.\nSearch operators let users restrict the query to specific fields relevant\nto the type of item being searched.",
"id": "HtmlOperatorOptions",
"properties": {
"operatorName": {
"description": "Indicates the operator name required in the query in order to isolate the\nhtml property. For example, if operatorName is *subject* and the\nproperty's name is *subjectLine*, then queries like\n*subject:\u0026lt;value\u0026gt;* will show results only where the value of the\nproperty named *subjectLine* matches *\u0026lt;value\u0026gt;*. By contrast, a\nsearch that uses the same *\u0026lt;value\u0026gt;* without an operator will return\nall items where *\u0026lt;value\u0026gt;* matches the value of any\nhtml properties or text within the content field for the item.\nThe operator name can only contain lowercase letters (a-z).\nThe maximum length is 32 characters.",
"type": "string"
}
},
"type": "object"
},
"HtmlPropertyOptions": {
"description": "Options for html properties.",
"id": "HtmlPropertyOptions",
"properties": {
"operatorOptions": {
"$ref": "HtmlOperatorOptions",
"description": "If set, describes how the property should be used as a search operator."
},
"retrievalImportance": {
"$ref": "RetrievalImportance",
"description": "Indicates the search quality importance of the tokens within the\nfield when used for retrieval. Can only be set to DEFAULT or NONE."
}
},
"type": "object"
},
"HtmlValues": {
"description": "List of html values.",
"id": "HtmlValues",
"properties": {
"values": {
"description": "The maximum allowable length for html values is 2048 characters.\nThe maximum number of string elements is 100.",
"items": {
"type": "string"
},
"type": "array"
}
},
"type": "object"
},
"IndexItemRequest": {
"id": "IndexItemRequest",
"properties": {
"connectorName": {
"description": "Name of connector making this call.\n\u003cbr /\u003eFormat: datasources/{source_id}/connectors/{ID}",
"type": "string"
},
"debugOptions": {
"$ref": "DebugOptions",
"description": "Common debug options."
},
"item": {
"$ref": "Item",
"description": "Name of the item. Format:\ndatasources/{source_id}/items/{item_id}"
},
"mode": {
"description": "Required. The RequestMode for this request.",
"enum": [
"UNSPECIFIED",
"SYNCHRONOUS",
"ASYNCHRONOUS"
],
"enumDescriptions": [
"Priority is not specified in the update request.\nLeaving priority unspecified results in an update failure.",
"For real-time updates.",
"For changes that are executed after the response is sent back to the\ncaller."
],
"type": "string"
}
},
"type": "object"
},
"IntegerOperatorOptions": {
"description": "Used to provide a search operator for integer properties. This is\noptional. Search operators let users restrict the query to specific fields\nrelevant to the type of item being searched.",
"id": "IntegerOperatorOptions",
"properties": {
"greaterThanOperatorName": {
"description": "Indicates the operator name required in the query in order to isolate the\ninteger property using the greater-than operator. For example, if\ngreaterThanOperatorName is *priorityabove* and the property's name is\n*priorityVal*, then queries like *priorityabove:\u0026lt;value\u0026gt;* will\nshow results only where the value of the property named *priorityVal* is\ngreater than *\u0026lt;value\u0026gt;*.\nThe operator name can only contain lowercase letters (a-z).\nThe maximum length is 32 characters.",
"type": "string"
},
"lessThanOperatorName": {
"description": "Indicates the operator name required in the query in order to isolate the\ninteger property using the less-than operator. For example, if\nlessThanOperatorName is *prioritybelow* and the property's name is\n*priorityVal*, then queries like *prioritybelow:\u0026lt;value\u0026gt;* will\nshow results only where the value of the property named *priorityVal* is\nless than *\u0026lt;value\u0026gt;*.\nThe operator name can only contain lowercase letters (a-z).\nThe maximum length is 32 characters.",
"type": "string"
},
"operatorName": {
"description": "Indicates the operator name required in the query in order to isolate the\ninteger property. For example, if operatorName is *priority* and the\nproperty's name is *priorityVal*, then queries like\n*priority:\u0026lt;value\u0026gt;* will show results only where the value of the\nproperty named *priorityVal* matches *\u0026lt;value\u0026gt;*. By contrast, a\nsearch that uses the same *\u0026lt;value\u0026gt;* without an operator will return\nall items where *\u0026lt;value\u0026gt;* matches the value of any String\nproperties or text within the content field for the item.\nThe operator name can only contain lowercase letters (a-z).\nThe maximum length is 32 characters.",
"type": "string"
}
},
"type": "object"
},
"IntegerPropertyOptions": {
"description": "Options for integer properties.",
"id": "IntegerPropertyOptions",
"properties": {
"maximumValue": {
"description": "The maximum value of the property. The minimum and maximum values for the\nproperty are used to rank results according to the\nordered ranking.\nIndexing requests with values greater than the maximum are accepted and\nranked with the same weight as items indexed with the maximum value.",
"format": "int64",
"type": "string"
},
"minimumValue": {
"description": "The minimum value of the property. The minimum and maximum values for the\nproperty are used to rank results according to the\nordered ranking.\nIndexing requests with values less than the minimum are accepted and\nranked with the same weight as items indexed with the minimum value.",
"format": "int64",
"type": "string"
},
"operatorOptions": {
"$ref": "IntegerOperatorOptions",
"description": "If set, describes how the integer should be used as a search operator."
},
"orderedRanking": {
"description": "Used to specify the ordered ranking for the integer. Can only be used if\nisRepeatable\nis false.",
"enum": [
"NO_ORDER",
"ASCENDING",
"DESCENDING"
],
"enumDescriptions": [
"There is no ranking order for the property. Results will not be adjusted\nby this property's value.",
"This property is ranked in ascending order. Lower values indicate lower\nranking.",
"This property is ranked in descending order. Lower values indicate\nhigher ranking."
],
"type": "string"
}
},
"type": "object"
},
"IntegerValues": {
"description": "List of integer values.",
"id": "IntegerValues",
"properties": {
"values": {
"description": "The maximum number of elements is 100.",
"items": {
"format": "int64",
"type": "string"
},
"type": "array"
}
},
"type": "object"
},
"Interaction": {
"description": "Represents an interaction between a user and an item.",
"id": "Interaction",
"properties": {
"interactionTime": {
"description": "The time when the user acted on the item. If multiple actions of the same\ntype exist for a single user, only the most recent action is recorded.",
"format": "google-datetime",
"type": "string"
},
"principal": {
"$ref": "Principal",
"description": "The user that acted on the item."
},
"type": {
"enum": [
"UNSPECIFIED",
"VIEW",
"EDIT"
],
"enumDescriptions": [
"Invalid value.",
"This interaction indicates the user viewed the item.",
"This interaction indicates the user edited the item."
],
"type": "string"
}
},
"type": "object"
},
"Item": {
"description": "Represents a single object that is an item in the search index, such as a\nfile, folder, or a database record.",
"id": "Item",
"properties": {
"acl": {
"$ref": "ItemAcl",
"description": "Access control list for this item."
},
"content": {
"$ref": "ItemContent",
"description": "Item content to be indexed and made text searchable."
},
"itemType": {
"description": "Type for this item.",
"enum": [
"UNSPECIFIED",
"CONTENT_ITEM",
"CONTAINER_ITEM",
"VIRTUAL_CONTAINER_ITEM"
],
"enumDescriptions": [
"",
"An item that is indexed for the only purpose of serving information.\nThese items cannot be referred in\ncontainerName\nor inheritAclFrom\nfields.",
"An item that gets indexed and whose purpose is to supply other items\nwith ACLs and/or contain other items.",
"An item that does not get indexed, but otherwise has the same purpose\nas CONTAINER_ITEM."
],
"type": "string"
},
"metadata": {
"$ref": "ItemMetadata",
"description": "Metadata information."
},
"name": {
"description": "Name of the Item. Format:\ndatasources/{source_id}/items/{item_id}\n\u003cbr /\u003eThis is a required field.\nThe maximum length is 1536 characters.",
"type": "string"
},
"payload": {
"description": "Additional state connector can store for this item.\nThe maximum length is 10000 bytes.",
"format": "byte",
"type": "string"
},
"queue": {
"description": "Queue this item belongs to.\nThe maximum length is 100 characters.",
"type": "string"
},
"status": {
"$ref": "ItemStatus",
"description": "Status of the item.\nOutput only field."
},
"structuredData": {
"$ref": "ItemStructuredData",
"description": "The structured data for the item that should conform to a registered\nobject definition in the schema for the data source."
},
"version": {
"description": "Required. The indexing system stores the version from the datasource as a\nbyte string and compares the Item version in the index\nto the version of the queued Item using lexical ordering.\n\u003cbr /\u003e\u003cbr /\u003e\nCloud Search Indexing won't index or delete any queued item with\na version value that is less than or equal to the version of the\ncurrently indexed item.\nThe maximum length for this field is 1024 bytes.",
"format": "byte",
"type": "string"
}
},
"type": "object"
},
"ItemAcl": {
"description": "Access control list information for the item. For more information see\nhttps://developers.google.com/cloud-search/docs/guides/index-your-data#acls",
"id": "ItemAcl",
"properties": {
"aclInheritanceType": {
"description": "Sets the type of access rules to apply when an item inherits its ACL from a\nparent. This should always be set in tandem with the\ninheritAclFrom\nfield. Also, when the\ninheritAclFrom field\nis set, this field should be set to a valid AclInheritanceType.",
"enum": [
"NOT_APPLICABLE",
"CHILD_OVERRIDE",
"PARENT_OVERRIDE",
"BOTH_PERMIT"
],
"enumDescriptions": [
"The default value when this item does not inherit an ACL.\nUse NOT_APPLICABLE when\ninheritAclFrom\nis empty. An item without ACL inheritance can still have ACLs supplied\nby its own readers and\ndeniedReaders fields.",
"During an authorization conflict, the ACL of the child item determines\nits read access.",
"During an authorization conflict, the ACL of the parent item\nspecified in the\ninheritAclFrom\nfield determines read access.",
"Access is granted only if this item and the parent item specified in\nthe inheritAclFrom\nfield both permit read access."
],
"type": "string"
},
"deniedReaders": {
"description": "List of principals who are explicitly denied access to the item in search\nresults. While principals are denied access by default, use denied readers\nto handle exceptions and override the list allowed readers.\nThe maximum number of elements is 100.",
"items": {
"$ref": "Principal"
},
"type": "array"
},
"inheritAclFrom": {
"description": "Name of the item to inherit the Access Permission List (ACL) from.\nNote: ACL inheritance *only* provides access permissions\nto child items and does not define structural relationships, nor does it\nprovide convenient ways to delete large groups of items.\nDeleting an ACL parent from the index only alters the access permissions of\nchild items that reference the parent in the\ninheritAclFrom\nfield. The item is still in the index, but may not\nvisible in search results. By contrast, deletion of a container item\nalso deletes all items that reference the container via the\ncontainerName\nfield.\nThe maximum length for this field is 1536 characters.",
"type": "string"
},
"owners": {
"description": "Optional. List of owners for the item. This field has no bearing on\ndocument access permissions. It does, however, offer\na slight ranking boosts items where the querying user is an owner.\nThe maximum number of elements is 5.",
"items": {
"$ref": "Principal"
},
"type": "array"
},
"readers": {
"description": "List of principals who are allowed to see the item in search results.\nOptional if inheriting permissions from another item or if the item\nis not intended to be visible, such as\nvirtual containers.\nThe maximum number of elements is 1000.",
"items": {
"$ref": "Principal"
},
"type": "array"
}
},
"type": "object"
},
"ItemContent": {
"description": "Content of an item to be indexed and surfaced by Cloud Search.",
"id": "ItemContent",
"properties": {
"contentDataRef": {
"$ref": "UploadItemRef",
"description": "Upload reference ID of a previously uploaded content via write method."
},
"contentFormat": {
"enum": [
"UNSPECIFIED",
"HTML",
"TEXT",
"RAW"
],
"enumDescriptions": [
"Invalid value.",
"contentFormat is HTML.",
"contentFormat is free text.",
"contentFormat is raw bytes."
],
"type": "string"
},
"hash": {
"description": "Hashing info calculated and provided by the API client for content.\nCan be used with the items.push method to calculate modified state.\nThe maximum length is 2048 characters.",
"type": "string"
},
"inlineContent": {
"description": "Content that is supplied inlined within the update method.\nThe maximum length is 102400 bytes (100 KiB).",
"format": "byte",
"type": "string"
}
},
"type": "object"
},
"ItemCountByStatus": {
"id": "ItemCountByStatus",
"properties": {
"count": {
"description": "Number of items matching the status code.",
"format": "int64",
"type": "string"
},
"statusCode": {
"description": "Status of the items.",
"enum": [
"CODE_UNSPECIFIED",
"ERROR",
"MODIFIED",
"NEW_ITEM",
"ACCEPTED"
],
"enumDescriptions": [
"Input-only value. Used with\nItems.list\nto list all items in the queue, regardless of status.",
"Error encountered by Cloud Search while processing this item.\nDetails of the error are in\nrepositoryError.",
"Item has been modified in the repository, and is out of date with\nthe version previously accepted into Cloud Search.",
"Item is known to exist in the repository, but is not yet accepted by\nCloud Search.\nAn item can be in this state when\nItems.push\nhas been called for\nan item of this name that did not exist previously.",
"API has accepted the up-to-date data of this item."
],
"type": "string"
}
},
"type": "object"
},
"ItemMetadata": {
"description": "Available metadata fields for the item.",
"id": "ItemMetadata",
"properties": {
"containerName": {
"description": "The name of the container for this item.\nDeletion of the container item leads to automatic deletion of this\nitem. Note: ACLs are not inherited from a container item.\nTo provide ACL inheritance for an item, use the\ninheritAclFrom\nfield. The maximum length is 1536 characters.",
"type": "string"
},
"contentLanguage": {
"description": "The BCP-47 language code for the item, such as \"en-US\" or \"sr-Latn\". For\nmore information, see\nhttp://www.unicode.org/reports/tr35/#Unicode_locale_identifier.\nThe maximum length is 32 characters.",
"type": "string"
},
"createTime": {
"description": "The time when the item was created in the source repository.",
"format": "google-datetime",
"type": "string"
},
"hash": {
"description": "Hashing value provided by the API caller.\nThis can be used with the\nitems.push\nmethod to calculate modified state.\nThe maximum length is 2048 characters.",
"type": "string"
},
"interactions": {
"description": "A list of interactions for the item. Interactions are used to improve\nSearch quality, but are not exposed to end users.\nThe maximum number of elements is 1000.",
"items": {
"$ref": "Interaction"
},
"type": "array"
},
"keywords": {
"description": "Additional keywords or phrases that should match the item.\nUsed internally for user generated content.\nThe maximum number of elements is 100.\nThe maximum length is 8192 characters.",
"items": {
"type": "string"
},
"type": "array"
},
"mimeType": {
"description": "The original mime-type of\nItemContent.content\nin the source repository.\nThe maximum length is 256 characters.",
"type": "string"
},
"objectType": {
"description": "The type of the item. This should correspond to the name of an object\ndefinition in the schema registered for the data source. For example, if\nthe schema for the data source contains an object definition with name\n'document', then item indexing requests for objects of that type should set\nobjectType to 'document'.\nThe maximum length is 256 characters.",
"type": "string"
},
"searchQualityMetadata": {
"$ref": "SearchQualityMetadata",
"description": "Additional search quality metadata of the item"
},
"sourceRepositoryUrl": {
"description": "Link to the source repository serving the data. \u0026#83;earch results apply\nthis link to the title.\nThe maximum length is 2048 characters.",
"type": "string"
},
"title": {
"description": "The title of the item. If given, this will be the displayed title of the\nSearch result.\nThe maximum length is 2048 characters.",
"type": "string"
},
"updateTime": {
"description": "The time when the item was last modified in the source repository.",
"format": "google-datetime",
"type": "string"
}
},
"type": "object"
},
"ItemStatus": {
"description": "This contains item's status and any errors.",
"id": "ItemStatus",
"properties": {
"code": {
"description": "Status code.",
"enum": [
"CODE_UNSPECIFIED",
"ERROR",
"MODIFIED",
"NEW_ITEM",
"ACCEPTED"
],
"enumDescriptions": [
"Input-only value. Used with\nItems.list\nto list all items in the queue, regardless of status.",
"Error encountered by Cloud Search while processing this item.\nDetails of the error are in\nrepositoryError.",
"Item has been modified in the repository, and is out of date with\nthe version previously accepted into Cloud Search.",
"Item is known to exist in the repository, but is not yet accepted by\nCloud Search.\nAn item can be in this state when\nItems.push\nhas been called for\nan item of this name that did not exist previously.",
"API has accepted the up-to-date data of this item."
],
"type": "string"
},
"processingErrors": {
"description": "Error details in case the item is in ERROR state.",
"items": {
"$ref": "ProcessingError"
},
"type": "array"
},
"repositoryErrors": {
"description": "Repository error reported by connector.",
"items": {
"$ref": "RepositoryError"
},
"type": "array"
}
},
"type": "object"
},
"ItemStructuredData": {
"description": "Available structured data fields for the item.",
"id": "ItemStructuredData",
"properties": {
"hash": {
"description": "Hashing value provided by the API caller.\nThis can be used with the\nitems.push\nmethod to calculate modified state.\nThe maximum length is 2048 characters.",
"type": "string"
},
"object": {
"$ref": "StructuredDataObject",
"description": "The structured data object that should conform to a registered object\ndefinition in the schema for the data source."
}
},
"type": "object"
},
"ListDataSourceResponse": {
"id": "ListDataSourceResponse",
"properties": {
"nextPageToken": {
"description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list.",
"type": "string"
},
"sources": {
"items": {
"$ref": "DataSource"
},
"type": "array"
}
},
"type": "object"
},
"ListItemNamesForUnmappedIdentityResponse": {
"id": "ListItemNamesForUnmappedIdentityResponse",
"properties": {
"itemNames": {
"items": {
"type": "string"
},
"type": "array"
},
"nextPageToken": {
"description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list.",
"type": "string"
}
},
"type": "object"
},
"ListItemsResponse": {
"id": "ListItemsResponse",
"properties": {
"items": {
"items": {
"$ref": "Item"
},
"type": "array"
},
"nextPageToken": {
"description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list.",
"type": "string"
}
},
"type": "object"
},
"ListQuerySourcesResponse": {
"description": "List sources response.",
"id": "ListQuerySourcesResponse",
"properties": {
"nextPageToken": {
"type": "string"
},
"sources": {
"items": {
"$ref": "QuerySource"
},
"type": "array"
}
},
"type": "object"
},
"ListSearchApplicationsResponse": {
"id": "ListSearchApplicationsResponse",
"properties": {
"nextPageToken": {
"description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list.",
"type": "string"
},
"searchApplications": {
"items": {
"$ref": "SearchApplication"
},
"type": "array"
}
},
"type": "object"
},
"ListUnmappedIdentitiesResponse": {
"id": "ListUnmappedIdentitiesResponse",
"properties": {
"nextPageToken": {
"description": "Token to retrieve the next page of results, or empty if there are no\nmore results in the list.",
"type": "string"
},
"unmappedIdentities": {
"items": {
"$ref": "UnmappedIdentity"
},
"type": "array"
}
},
"type": "object"
},
"MatchRange": {
"description": "Matched range of a snippet [start, end).",
"id": "MatchRange",
"properties": {
"end": {
"description": "End of the match in the snippet.",
"format": "int32",
"type": "integer"
},
"start": {
"description": "Starting position of the match in the snippet.",
"format": "int32",
"type": "integer"
}
},
"type": "object"
},
"Media": {
"description": "Media resource.",
"id": "Media",
"properties": {
"resourceName": {
"description": "Name of the media resource.",
"type": "string"
}
},
"type": "object"
},
"Metadata": {
"description": "Metadata of a matched search result.",
"id": "Metadata",
"properties": {
"createTime": {
"description": "The creation time for this document or object in the search result.",
"format": "google-datetime",
"type": "string"
},
"displayOptions": {
"$ref": "ResultDisplayMetadata",
"description": "Options that specify how to display a structured data search result."
},
"fields": {
"description": "Indexed fields in structured data, returned as a generic named property.",
"items": {
"$ref": "NamedProperty"
},
"type": "array"
},
"mimeType": {
"description": "Mime type of the search result.",
"type": "string"
},
"objectType": {
"description": "Object type of the search result.",
"type": "string"
},
"owner": {
"$ref": "Person",
"description": "Owner (usually creator) of the document or object of the search result."
},
"source": {
"$ref": "Source",
"description": "The named source for the result, such as Gmail."
},
"updateTime": {
"description": "The last modified date for the object in the search result.",
"format": "google-datetime",
"type": "string"
}
},
"type": "object"
},
"Metaline": {
"description": "A metaline is a list of properties that are displayed along with the search\nresult to provide context.",
"id": "Metaline",
"properties": {
"properties": {
"description": "The list of displayed properties for the metaline.",
"items": {
"$ref": "DisplayedProperty"
},
"type": "array"
}
},
"type": "object"
},
"Name": {
"description": "A person's name.",
"id": "Name",
"properties": {
"displayName": {
"description": "The read-only display name formatted according to the locale specified by\nthe viewer's account or the \u003ccode\u003eAccept-Language\u003c/code\u003e HTTP header.",
"type": "string"
}
},
"type": "object"
},
"NamedProperty": {
"description": "A typed name-value pair for structured data. The type of the value should\nbe the same as the registered type for the `name` property in the object\ndefinition of `objectType`.",
"id": "NamedProperty",
"properties": {
"booleanValue": {
"type": "boolean"
},
"dateValues": {
"$ref": "DateValues"
},
"doubleValues": {
"$ref": "DoubleValues"
},
"enumValues": {
"$ref": "EnumValues"
},
"htmlValues": {
"$ref": "HtmlValues"
},
"integerValues": {
"$ref": "IntegerValues"
},
"name": {
"description": "The name of the property. This name should correspond to the name of the\nproperty that was registered for object definition in the schema.\nThe maximum allowable length for this property is 256 characters.",
"type": "string"
},
"objectValues": {
"$ref": "ObjectValues"
},
"textValues": {
"$ref": "TextValues"
},
"timestampValues": {
"$ref": "TimestampValues"
}
},
"type": "object"
},
"ObjectDefinition": {
"description": "The definition for an object within a data source.",
"id": "ObjectDefinition",
"properties": {
"name": {
"description": "Name for the object, which then defines its type. Item indexing requests\nshould set the\nobjectType field\nequal to this value. For example, if *name* is *Document*, then indexing\nrequests for items of type Document should set\nobjectType equal to\n*Document*. Each object definition must be uniquely named within a schema.\nThe name must start with a letter and can only contain letters (A-Z, a-z)\nor numbers (0-9).\nThe maximum length is 256 characters.",
"type": "string"
},
"options": {
"$ref": "ObjectOptions",
"description": "The optional object-specific options."
},
"propertyDefinitions": {
"description": "The property definitions for the object.\nThe maximum number of elements is 1000.",
"items": {
"$ref": "PropertyDefinition"
},
"type": "array"
}
},
"type": "object"
},
"ObjectDisplayOptions": {
"description": "The display options for an object.",
"id": "ObjectDisplayOptions",
"properties": {
"metalines": {
"description": "Defines the properties that will be displayed in the metalines of the\nsearch results. The property values will be displayed in the order given\nhere. If a property holds multiple values, all of the values will be\ndiplayed before the next properties. For this reason, it is a good practice\nto specify singular properties before repeated properties in this list. All\nof the properties must set\nis_returnable\nto true. The maximum number of elements is 3.",
"items": {
"$ref": "Metaline"
},
"type": "array"
},
"objectDisplayLabel": {
"description": "The user friendly label to display in the search result to inidicate the\ntype of the item. This is OPTIONAL; if not given, an object label will not\nbe displayed on the context line of the search results. The maximum length\nis 32 characters.",
"type": "string"
}
},
"type": "object"
},
"ObjectOptions": {
"description": "The options for an object.",
"id": "ObjectOptions",
"properties": {
"displayOptions": {
"$ref": "ObjectDisplayOptions",
"description": "Options that determine how the object is displayed in the Cloud Search\nresults page."
},
"freshnessOptions": {
"$ref": "FreshnessOptions",
"description": "The freshness options for an object."
}
},
"type": "object"
},
"ObjectPropertyOptions": {
"description": "Options for object properties.",
"id": "ObjectPropertyOptions",
"properties": {
"subobjectProperties": {
"description": "The properties of the sub-object. These properties represent a nested\nobject. For example, if this property represents a postal address, the\nsubobjectProperties might be named *street*, *city*, and *state*.\nThe maximum number of elements is 1000.",
"items": {
"$ref": "PropertyDefinition"
},
"type": "array"
}
},
"type": "object"
},
"ObjectValues": {
"description": "List of object values.",
"id": "ObjectValues",
"properties": {
"values": {
"description": "The maximum number of elements is 100.",
"items": {
"$ref": "StructuredDataObject"
},
"type": "array"
}
},
"type": "object"
},
"Operation": {
"description": "This resource represents a long-running operation that is the result of a\nnetwork API call.",
"id": "Operation",
"properties": {
"done": {
"description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.",
"type": "boolean"
},
"error": {
"$ref": "Status",
"description": "The error result of the operation in case of failure or cancellation."
},
"metadata": {
"additionalProperties": {
"description": "Properties of the object. Contains field @type with type URL.",
"type": "any"
},
"description": "Service-specific metadata associated with the operation. It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata. Any method that returns a\nlong-running operation should document the metadata type, if any.",
"type": "object"
},
"name": {
"description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should have the format of `operations/some/unique/name`.",
"type": "string"
},
"response": {
"additionalProperties": {
"description": "Properties of the object. Contains field @type with type URL.",
"type": "any"
},
"description": "The normal response of the operation in case of success. If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`. If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource. For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name. For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.",
"type": "object"
}
},
"type": "object"
},
"PeopleSuggestion": {
"description": "A people suggestion.",
"id": "PeopleSuggestion",
"properties": {
"person": {
"$ref": "Person",
"description": "Suggested person. All fields of the person object might not be populated."
}
},
"type": "object"
},
"Person": {
"description": "Object to represent a person.",
"id": "Person",
"properties": {
"emailAddresses": {
"description": "The person's email addresses",
"items": {
"$ref": "EmailAddress"
},
"type": "array"
},
"name": {
"description": "The resource name of the person to provide information about.\nSee \u003ca href=\"https://developers.google.com/people/api/rest/v1/people/get\"\u003e\nPeople.get\u003c/a\u003e from Google People API.",
"type": "string"
},
"obfuscatedId": {
"description": "Obfuscated ID of a person.",
"type": "string"
},
"personNames": {
"description": "The person's name",
"items": {
"$ref": "Name"
},
"type": "array"
},
"photos": {
"description": "A person's read-only photo. A picture shown next to the person's name to\nhelp others recognize the person in search results.",
"items": {
"$ref": "Photo"
},
"type": "array"
}
},
"type": "object"
},
"Photo": {
"description": "A person's photo.",
"id": "Photo",
"properties": {
"url": {
"description": "The URL of the photo.",
"type": "string"
}
},
"type": "object"
},
"PollItemsRequest": {
"id": "PollItemsRequest",
"properties": {
"connectorName": {
"description": "Name of connector making this call.\n\u003cbr /\u003eFormat: datasources/{source_id}/connectors/{ID}",
"type": "string"
},
"debugOptions": {
"$ref": "DebugOptions",
"description": "Common debug options."
},
"limit": {
"description": "Maximum number of items to return.\n\u003cbr /\u003eThe maximum and the default value is 1000",
"format": "int32",
"type": "integer"
},
"queue": {
"description": "Queue name to fetch items from. If unspecified, PollItems will\nfetch from 'default' queue.\nThe maximum length is 100 characters.",
"type": "string"
},
"statusCodes": {
"description": "Limit the items polled to the ones with these statuses.",
"enumDescriptions": [
"Input-only value. Used with\nItems.list\nto list all items in the queue, regardless of status.",
"Error encountered by Cloud Search while processing this item.\nDetails of the error are in\nrepositoryError.",
"Item has been modified in the repository, and is out of date with\nthe version previously accepted into Cloud Search.",
"Item is known to exist in the repository, but is not yet accepted by\nCloud Search.\nAn item can be in this state when\nItems.push\nhas been called for\nan item of this name that did not exist previously.",
"API has accepted the up-to-date data of this item."
],
"items": {
"enum": [
"CODE_UNSPECIFIED",
"ERROR",
"MODIFIED",
"NEW_ITEM",
"ACCEPTED"
],
"type": "string"
},
"type": "array"
}
},
"type": "object"
},
"PollItemsResponse": {
"id": "PollItemsResponse",
"properties": {
"items": {
"description": "Set of items from the queue available for connector to process.\n\u003cbr /\u003eThese items have the following subset of fields populated: \u003cbr /\u003e\n\u003cbr /\u003eversion\n\u003cbr /\u003emetadata.hash\n\u003cbr /\u003estructured_data.hash\n\u003cbr /\u003econtent.hash\n\u003cbr /\u003epayload\n\u003cbr /\u003estatus\n\u003cbr /\u003equeue",
"items": {
"$ref": "Item"
},
"type": "array"
}
},
"type": "object"
},
"Principal": {
"description": "Reference to a user, group, or domain.",
"id": "Principal",
"properties": {
"groupResourceName": {
"description": "This principal is a group identified using an external identity.\nThe name field must specify the group resource name with this format:\nidentitysources/{source_id}/groups/{ID}",
"type": "string"
},
"gsuitePrincipal": {
"$ref": "GSuitePrincipal",
"description": "This principal is a GSuite user, group or domain."
},
"userResourceName": {
"description": "This principal is a user identified using an external identity.\nThe name field must specify the user resource name with this format:\nidentitysources/{source_id}/users/{ID}",
"type": "string"
}
},
"type": "object"
},
"ProcessingError": {
"id": "ProcessingError",
"properties": {
"code": {
"description": "Error code indicating the nature of the error.",
"enum": [
"PROCESSING_ERROR_CODE_UNSPECIFIED",
"MALFORMED_REQUEST",
"UNSUPPORTED_CONTENT_FORMAT",
"INDIRECT_BROKEN_ACL",
"ACL_CYCLE"
],
"enumDescriptions": [
"Input only value. Use this value in Items.",
"Item's ACL, metadata, or content is malformed or in invalid state.\nFieldViolations contains more details on where the problem is.",
"Countent format is unsupported.",
"Items with incomplete ACL information due to inheriting other\nitems with broken ACL or having groups with unmapped descendants.",
"ACL inheritance graph formed a cycle."
],
"type": "string"
},
"errorMessage": {
"description": "Description of the error.",
"type": "string"
},
"fieldViolations": {
"description": "In case the item fields are invalid, this field contains the details\nabout the validation errors.",
"items": {
"$ref": "FieldViolation"
},
"type": "array"
}
},
"type": "object"
},
"PropertyDefinition": {
"description": "The definition of a property within an object.",
"id": "PropertyDefinition",
"properties": {
"booleanPropertyOptions": {
"$ref": "BooleanPropertyOptions"
},
"datePropertyOptions": {
"$ref": "DatePropertyOptions"
},
"displayOptions": {
"$ref": "PropertyDisplayOptions",
"description": "Options that determine how the property is displayed in the Cloud Search\nresults page if it is specified to be displayed in the object's\ndisplay options\n."
},
"doublePropertyOptions": {
"$ref": "DoublePropertyOptions"
},
"enumPropertyOptions": {
"$ref": "EnumPropertyOptions"
},
"htmlPropertyOptions": {
"$ref": "HtmlPropertyOptions"
},
"integerPropertyOptions": {
"$ref": "IntegerPropertyOptions"
},
"isFacetable": {
"description": "Indicates that the property can be used for generating facets. Cannot be\ntrue for properties whose type is object. IsReturnable must be true to set\nthis option.\nOnly supported for Boolean, Enum, and Text properties.",
"type": "boolean"
},
"isRepeatable": {
"description": "Indicates that multiple values are allowed for the property. For example, a\ndocument only has one description but can have multiple comments. Cannot be\ntrue for properties whose type is a boolean.\nIf set to false, properties that contain more than one value will cause the\nindexing request for that item to be rejected.",
"type": "boolean"
},
"isReturnable": {
"description": "Indicates that the property identifies data that should be returned in search\nresults via the Query API. If set to *true*, indicates that Query API\nusers can use matching property fields in results. However, storing fields\nrequires more space allocation and uses more bandwidth for search queries,\nwhich impacts performance over large datasets. Set to *true* here only if\nthe field is needed for search results. Cannot be true for properties\nwhose type is an object.",
"type": "boolean"
},
"isSortable": {
"description": "Indicates that the property can be used for sorting. Cannot be true for\nproperties that are repeatable. Cannot be true for properties whose type\nis object or user identifier. IsReturnable must be true to set this option.\nOnly supported for Boolean, Date, Double, Integer, and Timestamp\nproperties.",
"type": "boolean"
},
"name": {
"description": "The name of the property. Item indexing requests sent to the Indexing API\nshould set the property name\nequal to this value. For example, if name is *subject_line*, then indexing\nrequests for document items with subject fields should set the\nname for that field equal to\n*subject_line*. Use the name as the identifier for the object property.\nOnce registered as a property for an object, you cannot re-use this name\nfor another property within that object.\nThe name must start with a letter and can only contain letters (A-Z, a-z)\nor numbers (0-9).\nThe maximum length is 256 characters.",
"type": "string"
},
"objectPropertyOptions": {
"$ref": "ObjectPropertyOptions"
},
"textPropertyOptions": {
"$ref": "TextPropertyOptions"
},
"timestampPropertyOptions": {
"$ref": "TimestampPropertyOptions"
}
},
"type": "object"
},
"PropertyDisplayOptions": {
"description": "The display options for a property.",
"id": "PropertyDisplayOptions",
"properties": {
"displayLabel": {
"description": "The user friendly label for the property that will be used if the property\nis specified to be displayed in ObjectDisplayOptions. If given, the display\nlabel will be shown in front of the property values when the property is\npart of the object display options. For example, if the property value is\n'1', the value by itself may not be useful context for the user. If the\ndisplay name given was 'priority', then the user will see 'priority : 1' in\nthe search results which provides clear conext to search users. This is\nOPTIONAL; if not given, only the property values will be displayed.\nThe maximum length is 32 characters.",
"type": "string"
}
},
"type": "object"
},
"PushItem": {
"description": "Represents an item to be pushed to the indexing queue.",
"id": "PushItem",
"properties": {
"contentHash": {
"description": "Content hash of the item according to the repository. If specified, this is\nused to determine how to modify this\nitem's status. Setting this field and the\ntype field results in argument\nerror.\nThe maximum length is 2048 characters.",
"type": "string"
},
"metadataHash": {
"description": "Metadata hash of the item according to the repository. If specified, this\nis used to determine how to modify this\nitem's status. Setting this field and the\ntype field results in argument\nerror.\nThe maximum length is 2048 characters.",
"type": "string"
},
"payload": {
"description": "Provides additional document state information for the connector,\nsuch as an alternate repository ID and other metadata.\nThe maximum length is 8192 bytes.",
"format": "byte",
"type": "string"
},
"queue": {
"description": "Queue to which this item belongs to. The \u003ccode\u003edefault\u003c/code\u003e queue is\nchosen if this field is not specified. The maximum length is\n512 characters.",
"type": "string"
},
"repositoryError": {
"$ref": "RepositoryError",
"description": "Populate this field to store Connector or repository error details.\nThis information is displayed in the Admin Console.\nThis field may only be populated when the\nType is\nREPOSITORY_ERROR."
},
"structuredDataHash": {
"description": "Structured data hash of the item according to the repository. If specified,\nthis is used to determine how to modify this item's status. Setting this\nfield and the type field\nresults in argument error.\nThe maximum length is 2048 characters.",
"type": "string"
},
"type": {
"description": "The type of the push operation that defines the push behavior.",
"enum": [
"UNSPECIFIED",
"MODIFIED",
"NOT_MODIFIED",
"REPOSITORY_ERROR",
"REQUEUE"
],
"enumDescriptions": [
"Default UNSPECIFIED. Specifies that the push operation should not modify\nItemStatus",
"Indicates that the repository document has been modified or updated since\nthe previous\nupdate\ncall. This changes status to\nMODIFIED state for\nan existing item. If this is called on a non existing item, the status is\nchanged to\nNEW_ITEM.",
"Item in the repository has not been modified since the last update\ncall. This push operation will set status to\nACCEPTED state.",
"Connector is facing a repository error regarding this item. Change\nstatus to\nREPOSITORY_ERROR\nstate. Item is unreserved and rescheduled at a future time determined by\nexponential backoff.",
"Call push with REQUEUE only for items that have been reserved.\nThis action unreserves the item and resets its available time to the\nwall clock time."
],
"type": "string"
}
},
"type": "object"
},
"PushItemRequest": {
"id": "PushItemRequest",
"properties": {
"connectorName": {
"description": "Name of connector making this call.\n\u003cbr /\u003eFormat: datasources/{source_id}/connectors/{ID}",
"type": "string"
},
"debugOptions": {
"$ref": "DebugOptions",
"description": "Common debug options."
},
"item": {
"$ref": "PushItem",
"description": "Item to push onto the queue."
}
},
"type": "object"
},
"QueryInterpretation": {
"id": "QueryInterpretation",
"properties": {
"interpretationType": {
"enum": [
"NONE",
"BLEND",
"REPLACE"
],
"enumDescriptions": [
"No natural language interpretation or the natural language interpretation\nis not used to fetch the search results.",
"The natural language results is mixed with results from original query.",
"The results only contain natural language results."
],
"type": "string"
},
"interpretedQuery": {
"description": "The interpretation of the query used in search. For example, query \"email\nfrom john\" will be interpreted as \"from:john source:mail\"",
"type": "string"
}
},
"type": "object"
},
"QueryInterpretationOptions": {
"description": "Options to interpret user query.",
"id": "QueryInterpretationOptions",
"properties": {
"disableNlInterpretation": {
"description": "Flag to disable natural language (NL) interpretation of queries. Default is\nfalse, Set to true to disable natural language interpretation. NL\ninterpretation only applies to predefined datasources.",
"type": "boolean"
}
},
"type": "object"
},
"QueryItem": {
"description": "Information relevant only to a query entry.",
"id": "QueryItem",
"properties": {
"isSynthetic": {
"description": "True if the text was generated by means other than a previous user search.",
"type": "boolean"
}
},
"type": "object"
},
"QueryOperator": {
"description": "The definition of a operator that can be used in a Search/Suggest request.",
"id": "QueryOperator",
"properties": {
"displayName": {
"description": "Display name of the operator",
"type": "string"
},
"enumValues": {
"description": "Potential list of values for the opeatror field. This field is only filled\nwhen we can safely enumerate all the possible values of this operator.",
"items": {
"type": "string"
},
"type": "array"
},
"greaterThanOperatorName": {
"description": "Indicates the operator name that can be used to isolate the property using\nthe greater-than operator.",
"type": "string"
},
"isFacetable": {
"description": "Can this operator be used to get facets.",
"type": "boolean"
},
"isRepeatable": {
"description": "Indicates if multiple values can be set for this property.",
"type": "boolean"
},
"isReturnable": {
"description": "Will the property associated with this facet be returned as part of search\nresults.",
"type": "boolean"
},
"isSortable": {
"description": "Can this operator be used to sort results.",
"type": "boolean"
},
"isSuggestable": {
"description": "Can get suggestions for this field.",
"type": "boolean"
},
"lessThanOperatorName": {
"description": "Indicates the operator name that can be used to isolate the property using\nthe less-than operator.",
"type": "string"
},
"operatorName": {
"description": "The name of the operator.",
"type": "string"
},
"type": {
"description": "Type of the operator.",
"enum": [
"UNKNOWN",
"INTEGER",
"DOUBLE",
"TIMESTAMP",
"BOOLEAN",
"ENUM",
"DATE",
"TEXT",
"HTML"
],
"enumDescriptions": [
"Invalid value.",
"",
"",
"",
"",
"",
"",
"",
""
],
"type": "string"
}
},
"type": "object"
},
"QuerySource": {
"description": "List of sources that the user can search using the query API.",
"id": "QuerySource",
"properties": {
"displayName": {
"description": "Display name of the data source.",
"type": "string"
},
"operators": {
"description": "List of all operators applicable for this source.",
"items": {
"$ref": "QueryOperator"
},
"type": "array"
},
"shortName": {
"description": "A short name or alias for the source. This value can be used with the\n'source' operator.",
"type": "string"
},
"source": {
"$ref": "Source",
"description": "Name of the source"
}
},
"type": "object"
},
"QuerySuggestion": {
"description": "A completed query suggestion.",
"id": "QuerySuggestion",
"properties": {},
"type": "object"
},
"RepositoryError": {
"description": "Errors when the connector is communicating to the source repository.",
"id": "RepositoryError",
"properties": {
"errorMessage": {
"description": "Message that describes the error. The maximum allowable length\nof the message is 8192 characters.",
"type": "string"
},
"httpStatusCode": {
"description": "Error codes. Matches the definition of HTTP status codes.",
"format": "int32",
"type": "integer"
},
"type": {
"description": "Type of error.",
"enum": [
"UNKNOWN",
"NETWORK_ERROR",
"DNS_ERROR",
"CONNECTION_ERROR",
"AUTHENTICATION_ERROR",