Regen all docs. (#700)

* Stop recursing if discovery == {}

* Generate docs with 'make docs'.
diff --git a/docs/dyn/cloudsearch_v1.indexing.datasources.items.html b/docs/dyn/cloudsearch_v1.indexing.datasources.items.html
new file mode 100644
index 0000000..81ce95b
--- /dev/null
+++ b/docs/dyn/cloudsearch_v1.indexing.datasources.items.html
@@ -0,0 +1,2056 @@
+<html><body>
+<style>
+
+body, h1, h2, h3, div, span, p, pre, a {
+  margin: 0;
+  padding: 0;
+  border: 0;
+  font-weight: inherit;
+  font-style: inherit;
+  font-size: 100%;
+  font-family: inherit;
+  vertical-align: baseline;
+}
+
+body {
+  font-size: 13px;
+  padding: 1em;
+}
+
+h1 {
+  font-size: 26px;
+  margin-bottom: 1em;
+}
+
+h2 {
+  font-size: 24px;
+  margin-bottom: 1em;
+}
+
+h3 {
+  font-size: 20px;
+  margin-bottom: 1em;
+  margin-top: 1em;
+}
+
+pre, code {
+  line-height: 1.5;
+  font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
+}
+
+pre {
+  margin-top: 0.5em;
+}
+
+h1, h2, h3, p {
+  font-family: Arial, sans serif;
+}
+
+h1, h2, h3 {
+  border-bottom: solid #CCC 1px;
+}
+
+.toc_element {
+  margin-top: 0.5em;
+}
+
+.firstline {
+  margin-left: 2 em;
+}
+
+.method  {
+  margin-top: 1em;
+  border: solid 1px #CCC;
+  padding: 1em;
+  background: #EEE;
+}
+
+.details {
+  font-weight: bold;
+  font-size: 14px;
+}
+
+</style>
+
+<h1><a href="cloudsearch_v1.html">Cloud Search API</a> . <a href="cloudsearch_v1.indexing.html">indexing</a> . <a href="cloudsearch_v1.indexing.datasources.html">datasources</a> . <a href="cloudsearch_v1.indexing.datasources.items.html">items</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#delete">delete(name, connectorName=None, version=None, mode=None, debugOptions_enableDebugging=None, x__xgafv=None)</a></code></p>
+<p class="firstline">Deletes Item resource for the</p>
+<p class="toc_element">
+  <code><a href="#deleteQueueItems">deleteQueueItems(name, body, x__xgafv=None)</a></code></p>
+<p class="firstline">Deletes all items in a queue. This method is useful for deleting stale</p>
+<p class="toc_element">
+  <code><a href="#get">get(name, connectorName=None, debugOptions_enableDebugging=None, x__xgafv=None)</a></code></p>
+<p class="firstline">Gets Item resource by item name.</p>
+<p class="toc_element">
+  <code><a href="#index">index(name, body, x__xgafv=None)</a></code></p>
+<p class="firstline">Updates Item ACL, metadata, and</p>
+<p class="toc_element">
+  <code><a href="#list">list(name, pageSize=None, brief=None, connectorName=None, debugOptions_enableDebugging=None, pageToken=None, x__xgafv=None)</a></code></p>
+<p class="firstline">Lists all or a subset of Item resources.</p>
+<p class="toc_element">
+  <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
+<p class="firstline">Retrieves the next page of results.</p>
+<p class="toc_element">
+  <code><a href="#poll">poll(name, body, x__xgafv=None)</a></code></p>
+<p class="firstline">Polls for unreserved items from the indexing queue and marks a</p>
+<p class="toc_element">
+  <code><a href="#push">push(name, body, x__xgafv=None)</a></code></p>
+<p class="firstline">Pushes an item onto a queue for later polling and updating.</p>
+<p class="toc_element">
+  <code><a href="#unreserve">unreserve(name, body, x__xgafv=None)</a></code></p>
+<p class="firstline">Unreserves all items from a queue, making them all eligible to be</p>
+<p class="toc_element">
+  <code><a href="#upload">upload(name, body, x__xgafv=None)</a></code></p>
+<p class="firstline">Creates an upload session for uploading item content. For items smaller</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="delete">delete(name, connectorName=None, version=None, mode=None, debugOptions_enableDebugging=None, x__xgafv=None)</code>
+  <pre>Deletes Item resource for the
+specified resource name.
+
+Args:
+  name: string, Required. Name of the item to delete.
+Format: datasources/{source_id}/items/{item_id} (required)
+  connectorName: string, Name of connector making this call.
+<br />Format: datasources/{source_id}/connectors/{ID}
+  version: string, Required. The incremented version of the item to delete from the index.
+The indexing system stores the version from the datasource as a
+byte string and compares the Item version in the index
+to the version of the queued Item using lexical ordering.
+<br /><br />
+Cloud Search Indexing won't delete any queued item with
+a version value that is less than or equal to
+the version of the currently indexed item.
+The maximum length for this field is 1024 bytes.
+  mode: string, Required. The RequestMode for this request.
+  debugOptions_enableDebugging: boolean, If you are asked by Google to help with debugging, set this field.
+Otherwise, ignore this field.
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+
+Returns:
+  An object of the form:
+
+    { # This resource represents a long-running operation that is the result of a
+      # network API call.
+    "metadata": { # Service-specific metadata associated with the operation.  It typically
+        # contains progress information and common metadata such as create time.
+        # Some services might not provide such metadata.  Any method that returns a
+        # long-running operation should document the metadata type, if any.
+      "a_key": "", # Properties of the object. Contains field @type with type URL.
+    },
+    "error": { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
+        # different programming environments, including REST APIs and RPC APIs. It is
+        # used by [gRPC](https://github.com/grpc). Each `Status` message contains
+        # three pieces of data: error code, error message, and error details.
+        #
+        # You can find out more about this error model and how to work with it in the
+        # [API Design Guide](https://cloud.google.com/apis/design/errors).
+      "message": "A String", # A developer-facing error message, which should be in English. Any
+          # user-facing error message should be localized and sent in the
+          # google.rpc.Status.details field, or localized by the client.
+      "code": 42, # The status code, which should be an enum value of google.rpc.Code.
+      "details": [ # A list of messages that carry the error details.  There is a common set of
+          # message types for APIs to use.
+        {
+          "a_key": "", # Properties of the object. Contains field @type with type URL.
+        },
+      ],
+    },
+    "done": True or False, # If the value is `false`, it means the operation is still in progress.
+        # If `true`, the operation is completed, and either `error` or `response` is
+        # available.
+    "response": { # The normal response of the operation in case of success.  If the original
+        # method returns no data on success, such as `Delete`, the response is
+        # `google.protobuf.Empty`.  If the original method is standard
+        # `Get`/`Create`/`Update`, the response should be the resource.  For other
+        # methods, the response should have the type `XxxResponse`, where `Xxx`
+        # is the original method name.  For example, if the original method name
+        # is `TakeSnapshot()`, the inferred response type is
+        # `TakeSnapshotResponse`.
+      "a_key": "", # Properties of the object. Contains field @type with type URL.
+    },
+    "name": "A String", # The server-assigned name, which is only unique within the same service that
+        # originally returns it. If you use the default HTTP mapping, the
+        # `name` should be a resource name ending with `operations/{unique_id}`.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="deleteQueueItems">deleteQueueItems(name, body, x__xgafv=None)</code>
+  <pre>Deletes all items in a queue. This method is useful for deleting stale
+items.
+
+Args:
+  name: string, Name of the Data Source to delete items in a queue.
+Format: datasources/{source_id} (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{
+    "queue": "A String", # Name of a queue to delete items from.
+    "connectorName": "A String", # Name of connector making this call.
+        # <br />Format: datasources/{source_id}/connectors/{ID}
+    "debugOptions": { # Shared request debug options for all cloudsearch RPC methods. # Common debug options.
+      "enableDebugging": True or False, # If you are asked by Google to help with debugging, set this field.
+          # Otherwise, ignore this field.
+    },
+  }
+
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+
+Returns:
+  An object of the form:
+
+    { # This resource represents a long-running operation that is the result of a
+      # network API call.
+    "metadata": { # Service-specific metadata associated with the operation.  It typically
+        # contains progress information and common metadata such as create time.
+        # Some services might not provide such metadata.  Any method that returns a
+        # long-running operation should document the metadata type, if any.
+      "a_key": "", # Properties of the object. Contains field @type with type URL.
+    },
+    "error": { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
+        # different programming environments, including REST APIs and RPC APIs. It is
+        # used by [gRPC](https://github.com/grpc). Each `Status` message contains
+        # three pieces of data: error code, error message, and error details.
+        #
+        # You can find out more about this error model and how to work with it in the
+        # [API Design Guide](https://cloud.google.com/apis/design/errors).
+      "message": "A String", # A developer-facing error message, which should be in English. Any
+          # user-facing error message should be localized and sent in the
+          # google.rpc.Status.details field, or localized by the client.
+      "code": 42, # The status code, which should be an enum value of google.rpc.Code.
+      "details": [ # A list of messages that carry the error details.  There is a common set of
+          # message types for APIs to use.
+        {
+          "a_key": "", # Properties of the object. Contains field @type with type URL.
+        },
+      ],
+    },
+    "done": True or False, # If the value is `false`, it means the operation is still in progress.
+        # If `true`, the operation is completed, and either `error` or `response` is
+        # available.
+    "response": { # The normal response of the operation in case of success.  If the original
+        # method returns no data on success, such as `Delete`, the response is
+        # `google.protobuf.Empty`.  If the original method is standard
+        # `Get`/`Create`/`Update`, the response should be the resource.  For other
+        # methods, the response should have the type `XxxResponse`, where `Xxx`
+        # is the original method name.  For example, if the original method name
+        # is `TakeSnapshot()`, the inferred response type is
+        # `TakeSnapshotResponse`.
+      "a_key": "", # Properties of the object. Contains field @type with type URL.
+    },
+    "name": "A String", # The server-assigned name, which is only unique within the same service that
+        # originally returns it. If you use the default HTTP mapping, the
+        # `name` should be a resource name ending with `operations/{unique_id}`.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="get">get(name, connectorName=None, debugOptions_enableDebugging=None, x__xgafv=None)</code>
+  <pre>Gets Item resource by item name.
+
+Args:
+  name: string, Name of the item to get info.
+Format: datasources/{source_id}/items/{item_id} (required)
+  connectorName: string, Name of connector making this call.
+<br />Format: datasources/{source_id}/connectors/{ID}
+  debugOptions_enableDebugging: boolean, If you are asked by Google to help with debugging, set this field.
+Otherwise, ignore this field.
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+
+Returns:
+  An object of the form:
+
+    { # Represents a single object that is an item in the search index, such as a
+      # file, folder, or a database record.
+    "status": { # This contains item's status and any errors. # Status of the item.
+        # Output only field.
+      "processingErrors": [ # Error details in case the item is in ERROR state.
+        {
+          "code": "A String", # Error code indicating the nature of the error.
+          "errorMessage": "A String", # Description of the error.
+          "fieldViolations": [ # In case the item fields are invalid, this field contains the details
+              # about the validation errors.
+            {
+              "field": "A String", # Path of field with violation.
+              "description": "A String", # Description of the error.
+            },
+          ],
+        },
+      ],
+      "repositoryErrors": [ # Repository error reported by connector.
+        { # Errors when the connector is communicating to the source repository.
+          "httpStatusCode": 42, # Error codes.  Matches the definition of HTTP status codes.
+          "errorMessage": "A String", # Message that describes the error. The maximum allowable length
+              # of the message is 8192 characters.
+          "type": "A String", # Type of error.
+        },
+      ],
+      "code": "A String", # Status code.
+    },
+    "queue": "A String", # Queue this item belongs to.
+        # The maximum length is 100 characters.
+    "name": "A String", # Name of the Item. Format:
+        # datasources/{source_id}/items/{item_id}
+        # <br />This is a required field.
+        # The maximum length is 1536 characters.
+    "acl": { # Access control list information for the item. For more information see # Access control list for this item.
+        # https://developers.google.com/cloud-search/docs/guides/index-your-data#acls
+      "aclInheritanceType": "A String", # Sets the type of access rules to apply when an item inherits its ACL from a
+          # parent. This should always be set in tandem with the
+          # inheritAclFrom
+          # field. Also, when the
+          # inheritAclFrom field
+          # is set, this field should be set to a valid AclInheritanceType.
+      "readers": [ # List of principals who are allowed to see the item in search results.
+          # Optional if inheriting permissions from another item or if the item
+          # is not intended to be visible, such as
+          # virtual
+          # containers.
+          # The maximum number of elements is 1000.
+        { # Reference to a user, group, or domain.
+          "userResourceName": "A String", # This principal is a user identified using an external identity.
+              # The name field must specify the user resource name with this format:
+              # identitysources/{source_id}/users/{ID}
+          "groupResourceName": "A String", # This principal is a group identified using an external identity.
+              # The name field must specify the group resource name with this format:
+              # identitysources/{source_id}/groups/{ID}
+          "gsuitePrincipal": { # This principal is a GSuite user, group or domain.
+            "gsuiteUserEmail": "A String", # This principal references a G Suite user account
+            "gsuiteDomain": True or False, # This principal represents all users of the G Suite domain of the
+                # customer.
+            "gsuiteGroupEmail": "A String", # This principal references a G Suite group account
+          },
+        },
+      ],
+      "deniedReaders": [ # List of principals who are explicitly denied access to the item in search
+          # results. While principals are denied access by default, use denied readers
+          # to handle exceptions and override the list allowed readers.
+          # The maximum number of elements is 100.
+        { # Reference to a user, group, or domain.
+          "userResourceName": "A String", # This principal is a user identified using an external identity.
+              # The name field must specify the user resource name with this format:
+              # identitysources/{source_id}/users/{ID}
+          "groupResourceName": "A String", # This principal is a group identified using an external identity.
+              # The name field must specify the group resource name with this format:
+              # identitysources/{source_id}/groups/{ID}
+          "gsuitePrincipal": { # This principal is a GSuite user, group or domain.
+            "gsuiteUserEmail": "A String", # This principal references a G Suite user account
+            "gsuiteDomain": True or False, # This principal represents all users of the G Suite domain of the
+                # customer.
+            "gsuiteGroupEmail": "A String", # This principal references a G Suite group account
+          },
+        },
+      ],
+      "owners": [ # Optional. List of owners for the item. This field has no bearing on
+          # document access permissions. It does, however, offer
+          # a slight ranking boosts items where the querying user is an owner.
+          # The maximum number of elements is 5.
+        { # Reference to a user, group, or domain.
+          "userResourceName": "A String", # This principal is a user identified using an external identity.
+              # The name field must specify the user resource name with this format:
+              # identitysources/{source_id}/users/{ID}
+          "groupResourceName": "A String", # This principal is a group identified using an external identity.
+              # The name field must specify the group resource name with this format:
+              # identitysources/{source_id}/groups/{ID}
+          "gsuitePrincipal": { # This principal is a GSuite user, group or domain.
+            "gsuiteUserEmail": "A String", # This principal references a G Suite user account
+            "gsuiteDomain": True or False, # This principal represents all users of the G Suite domain of the
+                # customer.
+            "gsuiteGroupEmail": "A String", # This principal references a G Suite group account
+          },
+        },
+      ],
+      "inheritAclFrom": "A String", # Name of the item to inherit the Access Permission List (ACL) from.
+          # Note: ACL inheritance *only* provides access permissions
+          # to child items and does not define structural relationships, nor does it
+          # provide convenient ways to delete large groups of items.
+          # Deleting an ACL parent from the index only alters the access permissions of
+          # child items that reference the parent in the
+          # inheritAclFrom
+          # field. The item is still in the index, but may not
+          # visible in search results. By contrast, deletion of a container item
+          # also deletes all items that reference the container via the
+          # containerName
+          # field.
+          # The maximum length for this field is 1536 characters.
+    },
+    "content": { # Content of an item to be indexed and surfaced by Cloud Search. # Item content to be indexed and made text searchable.
+      "contentDataRef": { # Represents an upload session reference. # Upload reference ID of a previously uploaded content via write method.
+          # This reference is created via upload
+          # method.
+          # Updating of item content may refer to this uploaded content via
+          # contentDataRef.
+        "name": "A String", # Name of the content reference.
+            # The maximum length is 2048 characters.
+      },
+      "contentFormat": "A String",
+      "hash": "A String", # Hashing info calculated and provided by the API client for content.
+          # Can be used with the items.push method to calculate modified state.
+          # The maximum length is 2048 characters.
+      "inlineContent": "A String", # Content that is supplied inlined within the update method.
+          # The maximum length is 102400 bytes (100 KiB).
+    },
+    "version": "A String", # Required. The indexing system stores the version from the datasource as a
+        # byte string and compares the Item version in the index
+        # to the version of the queued Item using lexical ordering.
+        # <br /><br />
+        # Cloud Search Indexing won't index or delete any queued item with
+        # a version value that is less than or equal to the version of the
+        # currently indexed item.
+        # The maximum length for this field is 1024 bytes.
+    "itemType": "A String", # Type for this item.
+    "structuredData": { # Available structured data fields for the item. # The structured data for the item that should conform to a registered
+        # object definition in the schema for the data source.
+      "object": { # A structured data object consisting of named properties. # The structured data object that should conform to a registered object
+          # definition in the schema for the data source.
+        "properties": [ # The properties for the object.
+            # The maximum number of elements is 1000.
+          { # A typed name-value pair for structured data.  The type of the value should
+              # be the same as the registered type for the `name` property in the object
+              # definition of `objectType`.
+            "objectValues": { # List of object values.
+              "values": [
+                # Object with schema name: StructuredDataObject
+              ],
+            },
+            "dateValues": { # List of date values.
+              "values": [
+                { # 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.
+                  "month": 42, # Month of date. Must be from 1 to 12.
+                  "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month.
+                  "year": 42, # Year of date. Must be from 1 to 9999.
+                },
+              ],
+            },
+            "textValues": { # List of text values.
+              "values": [ # The maximum allowable length for text values is 2048 characters.
+                "A String",
+              ],
+            },
+            "enumValues": { # List of enum values.
+              "values": [ # The maximum allowable length for string values is 32 characters.
+                "A String",
+              ],
+            },
+            "integerValues": { # List of integer values.
+              "values": [
+                "A String",
+              ],
+            },
+            "doubleValues": { # List of double values.
+              "values": [
+                3.14,
+              ],
+            },
+            "htmlValues": { # List of html values.
+              "values": [ # The maximum allowable length for html values is 2048 characters.
+                "A String",
+              ],
+            },
+            "booleanValue": True or False,
+            "timestampValues": { # List of timestamp values.
+              "values": [
+                "A String",
+              ],
+            },
+            "name": "A String", # The name of the property.  This name should correspond to the name of the
+                # property that was registered for object definition in the schema.
+                # The maximum allowable length for this property is 256 characters.
+          },
+        ],
+      },
+      "hash": "A String", # Hashing value provided by the API caller.
+          # This can be used with the
+          # items.push
+          # method to calculate modified state.
+          # The maximum length is 2048 characters.
+    },
+    "payload": "A String", # Additional state connector can store for this item.
+        # The maximum length is 10000 bytes.
+    "metadata": { # Available metadata fields for the item. # Metadata information.
+      "mimeType": "A String", # The original mime-type of
+          # ItemContent.content
+          # in the source repository.
+          # The maximum length is 256 characters.
+      "containerName": "A String", # The name of the container for this item.
+          # Deletion of the container item leads to automatic deletion of this
+          # item.  Note: ACLs are not inherited from a container item.
+          # To provide ACL inheritance for an item, use the
+          # inheritAclFrom
+          # field. The maximum length is 1536 characters.
+      "updateTime": "A String", # The time when the item was last modified in the source repository.
+      "hash": "A String", # Hashing value provided by the API caller.
+          # This can be used with the
+          # items.push
+          # method to calculate modified state.
+          # The maximum length is 2048 characters.
+      "contentLanguage": "A String", # The BCP-47 language code for the item, such as "en-US" or "sr-Latn". For
+          # more information, see
+          # http://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
+          # The maximum length is 32 characters.
+      "title": "A String", # The title of the item.  If given, this will be the displayed title of the
+          # Search result.
+          # The maximum length is 2048 characters.
+      "interactions": [ # A list of interactions for the item.  Interactions are used to improve
+          # Search quality, but are not exposed to end users.
+          # The maximum number of elements is 1000.
+        { # Represents an interaction between a user and an item.
+          "interactionTime": "A String", # The time when the user acted on the item.  If multiple actions of the same
+              # type exist for a single user, only the most recent action is recorded.
+          "type": "A String",
+          "principal": { # Reference to a user, group, or domain. # The user that acted on the item.
+            "userResourceName": "A String", # This principal is a user identified using an external identity.
+                # The name field must specify the user resource name with this format:
+                # identitysources/{source_id}/users/{ID}
+            "groupResourceName": "A String", # This principal is a group identified using an external identity.
+                # The name field must specify the group resource name with this format:
+                # identitysources/{source_id}/groups/{ID}
+            "gsuitePrincipal": { # This principal is a GSuite user, group or domain.
+              "gsuiteUserEmail": "A String", # This principal references a G Suite user account
+              "gsuiteDomain": True or False, # This principal represents all users of the G Suite domain of the
+                  # customer.
+              "gsuiteGroupEmail": "A String", # This principal references a G Suite group account
+            },
+          },
+        },
+      ],
+      "searchQualityMetadata": { # Additional search quality metadata of the item. # Additional search quality metadata of the item
+        "quality": 3.14, # An indication of the quality of the item, used to influence search quality.
+            # Value should be between 0.0 (lowest quality) and 1.0 (highest quality). The
+            # default value is 0.0.
+      },
+      "keywords": [ # Additional keywords or phrases that should match the item.
+          # Used internally for user generated content.
+          # The maximum number of elements is 100.
+          # The maximum length is 8192 characters.
+        "A String",
+      ],
+      "sourceRepositoryUrl": "A String", # Link to the source repository serving the data.  &#83;earch results apply
+          # this link to the title.
+          # The maximum length is 2048 characters.
+      "createTime": "A String", # The time when the item was created in the source repository.
+      "objectType": "A String", # The type of the item.  This should correspond to the name of an object
+          # definition in the schema registered for the data source.  For example, if
+          # the schema for the data source contains an object definition with name
+          # 'document', then item indexing requests for objects of that type should set
+          # objectType to 'document'.
+          # The maximum length is 256 characters.
+    },
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="index">index(name, body, x__xgafv=None)</code>
+  <pre>Updates Item ACL, metadata, and
+content. It will insert the Item if it
+does not exist.
+This method does not support partial updates.  Fields with no provided
+values are cleared out in the Cloud Search index.
+
+Args:
+  name: string, Name of the Item. Format:
+datasources/{source_id}/items/{item_id}
+<br />This is a required field.
+The maximum length is 1536 characters. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{
+    "item": { # Represents a single object that is an item in the search index, such as a # Name of the item.  Format:
+        # datasources/{source_id}/items/{item_id}
+        # file, folder, or a database record.
+      "status": { # This contains item's status and any errors. # Status of the item.
+          # Output only field.
+        "processingErrors": [ # Error details in case the item is in ERROR state.
+          {
+            "code": "A String", # Error code indicating the nature of the error.
+            "errorMessage": "A String", # Description of the error.
+            "fieldViolations": [ # In case the item fields are invalid, this field contains the details
+                # about the validation errors.
+              {
+                "field": "A String", # Path of field with violation.
+                "description": "A String", # Description of the error.
+              },
+            ],
+          },
+        ],
+        "repositoryErrors": [ # Repository error reported by connector.
+          { # Errors when the connector is communicating to the source repository.
+            "httpStatusCode": 42, # Error codes.  Matches the definition of HTTP status codes.
+            "errorMessage": "A String", # Message that describes the error. The maximum allowable length
+                # of the message is 8192 characters.
+            "type": "A String", # Type of error.
+          },
+        ],
+        "code": "A String", # Status code.
+      },
+      "queue": "A String", # Queue this item belongs to.
+          # The maximum length is 100 characters.
+      "name": "A String", # Name of the Item. Format:
+          # datasources/{source_id}/items/{item_id}
+          # <br />This is a required field.
+          # The maximum length is 1536 characters.
+      "acl": { # Access control list information for the item. For more information see # Access control list for this item.
+          # https://developers.google.com/cloud-search/docs/guides/index-your-data#acls
+        "aclInheritanceType": "A String", # Sets the type of access rules to apply when an item inherits its ACL from a
+            # parent. This should always be set in tandem with the
+            # inheritAclFrom
+            # field. Also, when the
+            # inheritAclFrom field
+            # is set, this field should be set to a valid AclInheritanceType.
+        "readers": [ # List of principals who are allowed to see the item in search results.
+            # Optional if inheriting permissions from another item or if the item
+            # is not intended to be visible, such as
+            # virtual
+            # containers.
+            # The maximum number of elements is 1000.
+          { # Reference to a user, group, or domain.
+            "userResourceName": "A String", # This principal is a user identified using an external identity.
+                # The name field must specify the user resource name with this format:
+                # identitysources/{source_id}/users/{ID}
+            "groupResourceName": "A String", # This principal is a group identified using an external identity.
+                # The name field must specify the group resource name with this format:
+                # identitysources/{source_id}/groups/{ID}
+            "gsuitePrincipal": { # This principal is a GSuite user, group or domain.
+              "gsuiteUserEmail": "A String", # This principal references a G Suite user account
+              "gsuiteDomain": True or False, # This principal represents all users of the G Suite domain of the
+                  # customer.
+              "gsuiteGroupEmail": "A String", # This principal references a G Suite group account
+            },
+          },
+        ],
+        "deniedReaders": [ # List of principals who are explicitly denied access to the item in search
+            # results. While principals are denied access by default, use denied readers
+            # to handle exceptions and override the list allowed readers.
+            # The maximum number of elements is 100.
+          { # Reference to a user, group, or domain.
+            "userResourceName": "A String", # This principal is a user identified using an external identity.
+                # The name field must specify the user resource name with this format:
+                # identitysources/{source_id}/users/{ID}
+            "groupResourceName": "A String", # This principal is a group identified using an external identity.
+                # The name field must specify the group resource name with this format:
+                # identitysources/{source_id}/groups/{ID}
+            "gsuitePrincipal": { # This principal is a GSuite user, group or domain.
+              "gsuiteUserEmail": "A String", # This principal references a G Suite user account
+              "gsuiteDomain": True or False, # This principal represents all users of the G Suite domain of the
+                  # customer.
+              "gsuiteGroupEmail": "A String", # This principal references a G Suite group account
+            },
+          },
+        ],
+        "owners": [ # Optional. List of owners for the item. This field has no bearing on
+            # document access permissions. It does, however, offer
+            # a slight ranking boosts items where the querying user is an owner.
+            # The maximum number of elements is 5.
+          { # Reference to a user, group, or domain.
+            "userResourceName": "A String", # This principal is a user identified using an external identity.
+                # The name field must specify the user resource name with this format:
+                # identitysources/{source_id}/users/{ID}
+            "groupResourceName": "A String", # This principal is a group identified using an external identity.
+                # The name field must specify the group resource name with this format:
+                # identitysources/{source_id}/groups/{ID}
+            "gsuitePrincipal": { # This principal is a GSuite user, group or domain.
+              "gsuiteUserEmail": "A String", # This principal references a G Suite user account
+              "gsuiteDomain": True or False, # This principal represents all users of the G Suite domain of the
+                  # customer.
+              "gsuiteGroupEmail": "A String", # This principal references a G Suite group account
+            },
+          },
+        ],
+        "inheritAclFrom": "A String", # Name of the item to inherit the Access Permission List (ACL) from.
+            # Note: ACL inheritance *only* provides access permissions
+            # to child items and does not define structural relationships, nor does it
+            # provide convenient ways to delete large groups of items.
+            # Deleting an ACL parent from the index only alters the access permissions of
+            # child items that reference the parent in the
+            # inheritAclFrom
+            # field. The item is still in the index, but may not
+            # visible in search results. By contrast, deletion of a container item
+            # also deletes all items that reference the container via the
+            # containerName
+            # field.
+            # The maximum length for this field is 1536 characters.
+      },
+      "content": { # Content of an item to be indexed and surfaced by Cloud Search. # Item content to be indexed and made text searchable.
+        "contentDataRef": { # Represents an upload session reference. # Upload reference ID of a previously uploaded content via write method.
+            # This reference is created via upload
+            # method.
+            # Updating of item content may refer to this uploaded content via
+            # contentDataRef.
+          "name": "A String", # Name of the content reference.
+              # The maximum length is 2048 characters.
+        },
+        "contentFormat": "A String",
+        "hash": "A String", # Hashing info calculated and provided by the API client for content.
+            # Can be used with the items.push method to calculate modified state.
+            # The maximum length is 2048 characters.
+        "inlineContent": "A String", # Content that is supplied inlined within the update method.
+            # The maximum length is 102400 bytes (100 KiB).
+      },
+      "version": "A String", # Required. The indexing system stores the version from the datasource as a
+          # byte string and compares the Item version in the index
+          # to the version of the queued Item using lexical ordering.
+          # <br /><br />
+          # Cloud Search Indexing won't index or delete any queued item with
+          # a version value that is less than or equal to the version of the
+          # currently indexed item.
+          # The maximum length for this field is 1024 bytes.
+      "itemType": "A String", # Type for this item.
+      "structuredData": { # Available structured data fields for the item. # The structured data for the item that should conform to a registered
+          # object definition in the schema for the data source.
+        "object": { # A structured data object consisting of named properties. # The structured data object that should conform to a registered object
+            # definition in the schema for the data source.
+          "properties": [ # The properties for the object.
+              # The maximum number of elements is 1000.
+            { # A typed name-value pair for structured data.  The type of the value should
+                # be the same as the registered type for the `name` property in the object
+                # definition of `objectType`.
+              "objectValues": { # List of object values.
+                "values": [
+                  # Object with schema name: StructuredDataObject
+                ],
+              },
+              "dateValues": { # List of date values.
+                "values": [
+                  { # 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.
+                    "month": 42, # Month of date. Must be from 1 to 12.
+                    "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month.
+                    "year": 42, # Year of date. Must be from 1 to 9999.
+                  },
+                ],
+              },
+              "textValues": { # List of text values.
+                "values": [ # The maximum allowable length for text values is 2048 characters.
+                  "A String",
+                ],
+              },
+              "enumValues": { # List of enum values.
+                "values": [ # The maximum allowable length for string values is 32 characters.
+                  "A String",
+                ],
+              },
+              "integerValues": { # List of integer values.
+                "values": [
+                  "A String",
+                ],
+              },
+              "doubleValues": { # List of double values.
+                "values": [
+                  3.14,
+                ],
+              },
+              "htmlValues": { # List of html values.
+                "values": [ # The maximum allowable length for html values is 2048 characters.
+                  "A String",
+                ],
+              },
+              "booleanValue": True or False,
+              "timestampValues": { # List of timestamp values.
+                "values": [
+                  "A String",
+                ],
+              },
+              "name": "A String", # The name of the property.  This name should correspond to the name of the
+                  # property that was registered for object definition in the schema.
+                  # The maximum allowable length for this property is 256 characters.
+            },
+          ],
+        },
+        "hash": "A String", # Hashing value provided by the API caller.
+            # This can be used with the
+            # items.push
+            # method to calculate modified state.
+            # The maximum length is 2048 characters.
+      },
+      "payload": "A String", # Additional state connector can store for this item.
+          # The maximum length is 10000 bytes.
+      "metadata": { # Available metadata fields for the item. # Metadata information.
+        "mimeType": "A String", # The original mime-type of
+            # ItemContent.content
+            # in the source repository.
+            # The maximum length is 256 characters.
+        "containerName": "A String", # The name of the container for this item.
+            # Deletion of the container item leads to automatic deletion of this
+            # item.  Note: ACLs are not inherited from a container item.
+            # To provide ACL inheritance for an item, use the
+            # inheritAclFrom
+            # field. The maximum length is 1536 characters.
+        "updateTime": "A String", # The time when the item was last modified in the source repository.
+        "hash": "A String", # Hashing value provided by the API caller.
+            # This can be used with the
+            # items.push
+            # method to calculate modified state.
+            # The maximum length is 2048 characters.
+        "contentLanguage": "A String", # The BCP-47 language code for the item, such as "en-US" or "sr-Latn". For
+            # more information, see
+            # http://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
+            # The maximum length is 32 characters.
+        "title": "A String", # The title of the item.  If given, this will be the displayed title of the
+            # Search result.
+            # The maximum length is 2048 characters.
+        "interactions": [ # A list of interactions for the item.  Interactions are used to improve
+            # Search quality, but are not exposed to end users.
+            # The maximum number of elements is 1000.
+          { # Represents an interaction between a user and an item.
+            "interactionTime": "A String", # The time when the user acted on the item.  If multiple actions of the same
+                # type exist for a single user, only the most recent action is recorded.
+            "type": "A String",
+            "principal": { # Reference to a user, group, or domain. # The user that acted on the item.
+              "userResourceName": "A String", # This principal is a user identified using an external identity.
+                  # The name field must specify the user resource name with this format:
+                  # identitysources/{source_id}/users/{ID}
+              "groupResourceName": "A String", # This principal is a group identified using an external identity.
+                  # The name field must specify the group resource name with this format:
+                  # identitysources/{source_id}/groups/{ID}
+              "gsuitePrincipal": { # This principal is a GSuite user, group or domain.
+                "gsuiteUserEmail": "A String", # This principal references a G Suite user account
+                "gsuiteDomain": True or False, # This principal represents all users of the G Suite domain of the
+                    # customer.
+                "gsuiteGroupEmail": "A String", # This principal references a G Suite group account
+              },
+            },
+          },
+        ],
+        "searchQualityMetadata": { # Additional search quality metadata of the item. # Additional search quality metadata of the item
+          "quality": 3.14, # An indication of the quality of the item, used to influence search quality.
+              # Value should be between 0.0 (lowest quality) and 1.0 (highest quality). The
+              # default value is 0.0.
+        },
+        "keywords": [ # Additional keywords or phrases that should match the item.
+            # Used internally for user generated content.
+            # The maximum number of elements is 100.
+            # The maximum length is 8192 characters.
+          "A String",
+        ],
+        "sourceRepositoryUrl": "A String", # Link to the source repository serving the data.  &#83;earch results apply
+            # this link to the title.
+            # The maximum length is 2048 characters.
+        "createTime": "A String", # The time when the item was created in the source repository.
+        "objectType": "A String", # The type of the item.  This should correspond to the name of an object
+            # definition in the schema registered for the data source.  For example, if
+            # the schema for the data source contains an object definition with name
+            # 'document', then item indexing requests for objects of that type should set
+            # objectType to 'document'.
+            # The maximum length is 256 characters.
+      },
+    },
+    "mode": "A String", # Required. The RequestMode for this request.
+    "debugOptions": { # Shared request debug options for all cloudsearch RPC methods. # Common debug options.
+      "enableDebugging": True or False, # If you are asked by Google to help with debugging, set this field.
+          # Otherwise, ignore this field.
+    },
+    "indexItemOptions": {
+      "allowUnknownGsuitePrincipals": True or False, # Specifies if the index request should allow gsuite principals that do not
+          # exist or are deleted in the index request.
+    },
+    "connectorName": "A String", # Name of connector making this call.
+        # <br />Format: datasources/{source_id}/connectors/{ID}
+  }
+
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+
+Returns:
+  An object of the form:
+
+    { # This resource represents a long-running operation that is the result of a
+      # network API call.
+    "metadata": { # Service-specific metadata associated with the operation.  It typically
+        # contains progress information and common metadata such as create time.
+        # Some services might not provide such metadata.  Any method that returns a
+        # long-running operation should document the metadata type, if any.
+      "a_key": "", # Properties of the object. Contains field @type with type URL.
+    },
+    "error": { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
+        # different programming environments, including REST APIs and RPC APIs. It is
+        # used by [gRPC](https://github.com/grpc). Each `Status` message contains
+        # three pieces of data: error code, error message, and error details.
+        #
+        # You can find out more about this error model and how to work with it in the
+        # [API Design Guide](https://cloud.google.com/apis/design/errors).
+      "message": "A String", # A developer-facing error message, which should be in English. Any
+          # user-facing error message should be localized and sent in the
+          # google.rpc.Status.details field, or localized by the client.
+      "code": 42, # The status code, which should be an enum value of google.rpc.Code.
+      "details": [ # A list of messages that carry the error details.  There is a common set of
+          # message types for APIs to use.
+        {
+          "a_key": "", # Properties of the object. Contains field @type with type URL.
+        },
+      ],
+    },
+    "done": True or False, # If the value is `false`, it means the operation is still in progress.
+        # If `true`, the operation is completed, and either `error` or `response` is
+        # available.
+    "response": { # The normal response of the operation in case of success.  If the original
+        # method returns no data on success, such as `Delete`, the response is
+        # `google.protobuf.Empty`.  If the original method is standard
+        # `Get`/`Create`/`Update`, the response should be the resource.  For other
+        # methods, the response should have the type `XxxResponse`, where `Xxx`
+        # is the original method name.  For example, if the original method name
+        # is `TakeSnapshot()`, the inferred response type is
+        # `TakeSnapshotResponse`.
+      "a_key": "", # Properties of the object. Contains field @type with type URL.
+    },
+    "name": "A String", # The server-assigned name, which is only unique within the same service that
+        # originally returns it. If you use the default HTTP mapping, the
+        # `name` should be a resource name ending with `operations/{unique_id}`.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list(name, pageSize=None, brief=None, connectorName=None, debugOptions_enableDebugging=None, pageToken=None, x__xgafv=None)</code>
+  <pre>Lists all or a subset of Item resources.
+
+Args:
+  name: string, Name of the Data Source to list Items.  Format:
+datasources/{source_id} (required)
+  pageSize: integer, Maximum number of items to fetch in a request.
+The max value is 1000 when brief is true.  The max value is 10 if brief
+is false.
+<br />The default value is 10
+  brief: boolean, When set to true, the indexing system only populates the following fields:
+name,
+version,
+metadata.hash,
+structured_data.hash,
+content.hash.
+<br />If this value is false, then all the fields are populated in Item.
+  connectorName: string, Name of connector making this call.
+<br />Format: datasources/{source_id}/connectors/{ID}
+  debugOptions_enableDebugging: boolean, If you are asked by Google to help with debugging, set this field.
+Otherwise, ignore this field.
+  pageToken: string, The next_page_token value returned from a previous List request, if any.
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+
+Returns:
+  An object of the form:
+
+    {
+    "nextPageToken": "A String", # Token to retrieve the next page of results, or empty if there are no
+        # more results in the list.
+    "items": [
+      { # Represents a single object that is an item in the search index, such as a
+          # file, folder, or a database record.
+        "status": { # This contains item's status and any errors. # Status of the item.
+            # Output only field.
+          "processingErrors": [ # Error details in case the item is in ERROR state.
+            {
+              "code": "A String", # Error code indicating the nature of the error.
+              "errorMessage": "A String", # Description of the error.
+              "fieldViolations": [ # In case the item fields are invalid, this field contains the details
+                  # about the validation errors.
+                {
+                  "field": "A String", # Path of field with violation.
+                  "description": "A String", # Description of the error.
+                },
+              ],
+            },
+          ],
+          "repositoryErrors": [ # Repository error reported by connector.
+            { # Errors when the connector is communicating to the source repository.
+              "httpStatusCode": 42, # Error codes.  Matches the definition of HTTP status codes.
+              "errorMessage": "A String", # Message that describes the error. The maximum allowable length
+                  # of the message is 8192 characters.
+              "type": "A String", # Type of error.
+            },
+          ],
+          "code": "A String", # Status code.
+        },
+        "queue": "A String", # Queue this item belongs to.
+            # The maximum length is 100 characters.
+        "name": "A String", # Name of the Item. Format:
+            # datasources/{source_id}/items/{item_id}
+            # <br />This is a required field.
+            # The maximum length is 1536 characters.
+        "acl": { # Access control list information for the item. For more information see # Access control list for this item.
+            # https://developers.google.com/cloud-search/docs/guides/index-your-data#acls
+          "aclInheritanceType": "A String", # Sets the type of access rules to apply when an item inherits its ACL from a
+              # parent. This should always be set in tandem with the
+              # inheritAclFrom
+              # field. Also, when the
+              # inheritAclFrom field
+              # is set, this field should be set to a valid AclInheritanceType.
+          "readers": [ # List of principals who are allowed to see the item in search results.
+              # Optional if inheriting permissions from another item or if the item
+              # is not intended to be visible, such as
+              # virtual
+              # containers.
+              # The maximum number of elements is 1000.
+            { # Reference to a user, group, or domain.
+              "userResourceName": "A String", # This principal is a user identified using an external identity.
+                  # The name field must specify the user resource name with this format:
+                  # identitysources/{source_id}/users/{ID}
+              "groupResourceName": "A String", # This principal is a group identified using an external identity.
+                  # The name field must specify the group resource name with this format:
+                  # identitysources/{source_id}/groups/{ID}
+              "gsuitePrincipal": { # This principal is a GSuite user, group or domain.
+                "gsuiteUserEmail": "A String", # This principal references a G Suite user account
+                "gsuiteDomain": True or False, # This principal represents all users of the G Suite domain of the
+                    # customer.
+                "gsuiteGroupEmail": "A String", # This principal references a G Suite group account
+              },
+            },
+          ],
+          "deniedReaders": [ # List of principals who are explicitly denied access to the item in search
+              # results. While principals are denied access by default, use denied readers
+              # to handle exceptions and override the list allowed readers.
+              # The maximum number of elements is 100.
+            { # Reference to a user, group, or domain.
+              "userResourceName": "A String", # This principal is a user identified using an external identity.
+                  # The name field must specify the user resource name with this format:
+                  # identitysources/{source_id}/users/{ID}
+              "groupResourceName": "A String", # This principal is a group identified using an external identity.
+                  # The name field must specify the group resource name with this format:
+                  # identitysources/{source_id}/groups/{ID}
+              "gsuitePrincipal": { # This principal is a GSuite user, group or domain.
+                "gsuiteUserEmail": "A String", # This principal references a G Suite user account
+                "gsuiteDomain": True or False, # This principal represents all users of the G Suite domain of the
+                    # customer.
+                "gsuiteGroupEmail": "A String", # This principal references a G Suite group account
+              },
+            },
+          ],
+          "owners": [ # Optional. List of owners for the item. This field has no bearing on
+              # document access permissions. It does, however, offer
+              # a slight ranking boosts items where the querying user is an owner.
+              # The maximum number of elements is 5.
+            { # Reference to a user, group, or domain.
+              "userResourceName": "A String", # This principal is a user identified using an external identity.
+                  # The name field must specify the user resource name with this format:
+                  # identitysources/{source_id}/users/{ID}
+              "groupResourceName": "A String", # This principal is a group identified using an external identity.
+                  # The name field must specify the group resource name with this format:
+                  # identitysources/{source_id}/groups/{ID}
+              "gsuitePrincipal": { # This principal is a GSuite user, group or domain.
+                "gsuiteUserEmail": "A String", # This principal references a G Suite user account
+                "gsuiteDomain": True or False, # This principal represents all users of the G Suite domain of the
+                    # customer.
+                "gsuiteGroupEmail": "A String", # This principal references a G Suite group account
+              },
+            },
+          ],
+          "inheritAclFrom": "A String", # Name of the item to inherit the Access Permission List (ACL) from.
+              # Note: ACL inheritance *only* provides access permissions
+              # to child items and does not define structural relationships, nor does it
+              # provide convenient ways to delete large groups of items.
+              # Deleting an ACL parent from the index only alters the access permissions of
+              # child items that reference the parent in the
+              # inheritAclFrom
+              # field. The item is still in the index, but may not
+              # visible in search results. By contrast, deletion of a container item
+              # also deletes all items that reference the container via the
+              # containerName
+              # field.
+              # The maximum length for this field is 1536 characters.
+        },
+        "content": { # Content of an item to be indexed and surfaced by Cloud Search. # Item content to be indexed and made text searchable.
+          "contentDataRef": { # Represents an upload session reference. # Upload reference ID of a previously uploaded content via write method.
+              # This reference is created via upload
+              # method.
+              # Updating of item content may refer to this uploaded content via
+              # contentDataRef.
+            "name": "A String", # Name of the content reference.
+                # The maximum length is 2048 characters.
+          },
+          "contentFormat": "A String",
+          "hash": "A String", # Hashing info calculated and provided by the API client for content.
+              # Can be used with the items.push method to calculate modified state.
+              # The maximum length is 2048 characters.
+          "inlineContent": "A String", # Content that is supplied inlined within the update method.
+              # The maximum length is 102400 bytes (100 KiB).
+        },
+        "version": "A String", # Required. The indexing system stores the version from the datasource as a
+            # byte string and compares the Item version in the index
+            # to the version of the queued Item using lexical ordering.
+            # <br /><br />
+            # Cloud Search Indexing won't index or delete any queued item with
+            # a version value that is less than or equal to the version of the
+            # currently indexed item.
+            # The maximum length for this field is 1024 bytes.
+        "itemType": "A String", # Type for this item.
+        "structuredData": { # Available structured data fields for the item. # The structured data for the item that should conform to a registered
+            # object definition in the schema for the data source.
+          "object": { # A structured data object consisting of named properties. # The structured data object that should conform to a registered object
+              # definition in the schema for the data source.
+            "properties": [ # The properties for the object.
+                # The maximum number of elements is 1000.
+              { # A typed name-value pair for structured data.  The type of the value should
+                  # be the same as the registered type for the `name` property in the object
+                  # definition of `objectType`.
+                "objectValues": { # List of object values.
+                  "values": [
+                    # Object with schema name: StructuredDataObject
+                  ],
+                },
+                "dateValues": { # List of date values.
+                  "values": [
+                    { # 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.
+                      "month": 42, # Month of date. Must be from 1 to 12.
+                      "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month.
+                      "year": 42, # Year of date. Must be from 1 to 9999.
+                    },
+                  ],
+                },
+                "textValues": { # List of text values.
+                  "values": [ # The maximum allowable length for text values is 2048 characters.
+                    "A String",
+                  ],
+                },
+                "enumValues": { # List of enum values.
+                  "values": [ # The maximum allowable length for string values is 32 characters.
+                    "A String",
+                  ],
+                },
+                "integerValues": { # List of integer values.
+                  "values": [
+                    "A String",
+                  ],
+                },
+                "doubleValues": { # List of double values.
+                  "values": [
+                    3.14,
+                  ],
+                },
+                "htmlValues": { # List of html values.
+                  "values": [ # The maximum allowable length for html values is 2048 characters.
+                    "A String",
+                  ],
+                },
+                "booleanValue": True or False,
+                "timestampValues": { # List of timestamp values.
+                  "values": [
+                    "A String",
+                  ],
+                },
+                "name": "A String", # The name of the property.  This name should correspond to the name of the
+                    # property that was registered for object definition in the schema.
+                    # The maximum allowable length for this property is 256 characters.
+              },
+            ],
+          },
+          "hash": "A String", # Hashing value provided by the API caller.
+              # This can be used with the
+              # items.push
+              # method to calculate modified state.
+              # The maximum length is 2048 characters.
+        },
+        "payload": "A String", # Additional state connector can store for this item.
+            # The maximum length is 10000 bytes.
+        "metadata": { # Available metadata fields for the item. # Metadata information.
+          "mimeType": "A String", # The original mime-type of
+              # ItemContent.content
+              # in the source repository.
+              # The maximum length is 256 characters.
+          "containerName": "A String", # The name of the container for this item.
+              # Deletion of the container item leads to automatic deletion of this
+              # item.  Note: ACLs are not inherited from a container item.
+              # To provide ACL inheritance for an item, use the
+              # inheritAclFrom
+              # field. The maximum length is 1536 characters.
+          "updateTime": "A String", # The time when the item was last modified in the source repository.
+          "hash": "A String", # Hashing value provided by the API caller.
+              # This can be used with the
+              # items.push
+              # method to calculate modified state.
+              # The maximum length is 2048 characters.
+          "contentLanguage": "A String", # The BCP-47 language code for the item, such as "en-US" or "sr-Latn". For
+              # more information, see
+              # http://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
+              # The maximum length is 32 characters.
+          "title": "A String", # The title of the item.  If given, this will be the displayed title of the
+              # Search result.
+              # The maximum length is 2048 characters.
+          "interactions": [ # A list of interactions for the item.  Interactions are used to improve
+              # Search quality, but are not exposed to end users.
+              # The maximum number of elements is 1000.
+            { # Represents an interaction between a user and an item.
+              "interactionTime": "A String", # The time when the user acted on the item.  If multiple actions of the same
+                  # type exist for a single user, only the most recent action is recorded.
+              "type": "A String",
+              "principal": { # Reference to a user, group, or domain. # The user that acted on the item.
+                "userResourceName": "A String", # This principal is a user identified using an external identity.
+                    # The name field must specify the user resource name with this format:
+                    # identitysources/{source_id}/users/{ID}
+                "groupResourceName": "A String", # This principal is a group identified using an external identity.
+                    # The name field must specify the group resource name with this format:
+                    # identitysources/{source_id}/groups/{ID}
+                "gsuitePrincipal": { # This principal is a GSuite user, group or domain.
+                  "gsuiteUserEmail": "A String", # This principal references a G Suite user account
+                  "gsuiteDomain": True or False, # This principal represents all users of the G Suite domain of the
+                      # customer.
+                  "gsuiteGroupEmail": "A String", # This principal references a G Suite group account
+                },
+              },
+            },
+          ],
+          "searchQualityMetadata": { # Additional search quality metadata of the item. # Additional search quality metadata of the item
+            "quality": 3.14, # An indication of the quality of the item, used to influence search quality.
+                # Value should be between 0.0 (lowest quality) and 1.0 (highest quality). The
+                # default value is 0.0.
+          },
+          "keywords": [ # Additional keywords or phrases that should match the item.
+              # Used internally for user generated content.
+              # The maximum number of elements is 100.
+              # The maximum length is 8192 characters.
+            "A String",
+          ],
+          "sourceRepositoryUrl": "A String", # Link to the source repository serving the data.  &#83;earch results apply
+              # this link to the title.
+              # The maximum length is 2048 characters.
+          "createTime": "A String", # The time when the item was created in the source repository.
+          "objectType": "A String", # The type of the item.  This should correspond to the name of an object
+              # definition in the schema registered for the data source.  For example, if
+              # the schema for the data source contains an object definition with name
+              # 'document', then item indexing requests for objects of that type should set
+              # objectType to 'document'.
+              # The maximum length is 256 characters.
+        },
+      },
+    ],
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
+  <pre>Retrieves the next page of results.
+
+Args:
+  previous_request: The request for the previous page. (required)
+  previous_response: The response from the request for the previous page. (required)
+
+Returns:
+  A request object that you can call 'execute()' on to request the next
+  page. Returns None if there are no more items in the collection.
+    </pre>
+</div>
+
+<div class="method">
+    <code class="details" id="poll">poll(name, body, x__xgafv=None)</code>
+  <pre>Polls for unreserved items from the indexing queue and marks a
+set as reserved, starting with items that have
+the oldest timestamp from the highest priority
+ItemStatus.
+The priority order is as follows: <br />
+ERROR
+<br />
+MODIFIED
+<br />
+NEW_ITEM
+<br />
+ACCEPTED
+<br />
+Reserving items ensures that polling from other threads
+cannot create overlapping sets.
+
+After handling the reserved items, the client should put items back
+into the unreserved state, either by calling
+index,
+or by calling
+push with
+the type REQUEUE.
+
+Items automatically become available (unreserved) after 4 hours even if no
+update or push method is called.
+
+Args:
+  name: string, Name of the Data Source to poll items.
+Format: datasources/{source_id} (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{
+    "queue": "A String", # Queue name to fetch items from.  If unspecified, PollItems will
+        # fetch from 'default' queue.
+        # The maximum length is 100 characters.
+    "debugOptions": { # Shared request debug options for all cloudsearch RPC methods. # Common debug options.
+      "enableDebugging": True or False, # If you are asked by Google to help with debugging, set this field.
+          # Otherwise, ignore this field.
+    },
+    "limit": 42, # Maximum number of items to return.
+        # <br />The maximum and the default value is 1000
+    "connectorName": "A String", # Name of connector making this call.
+        # <br />Format: datasources/{source_id}/connectors/{ID}
+    "statusCodes": [ # Limit the items polled to the ones with these statuses.
+      "A String",
+    ],
+  }
+
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+
+Returns:
+  An object of the form:
+
+    {
+    "items": [ # Set of items from the queue available for connector to process.
+        # <br />These items have the following subset of fields populated: <br />
+        # <br />version
+        # <br />metadata.hash
+        # <br />structured_data.hash
+        # <br />content.hash
+        # <br />payload
+        # <br />status
+        # <br />queue
+      { # Represents a single object that is an item in the search index, such as a
+          # file, folder, or a database record.
+        "status": { # This contains item's status and any errors. # Status of the item.
+            # Output only field.
+          "processingErrors": [ # Error details in case the item is in ERROR state.
+            {
+              "code": "A String", # Error code indicating the nature of the error.
+              "errorMessage": "A String", # Description of the error.
+              "fieldViolations": [ # In case the item fields are invalid, this field contains the details
+                  # about the validation errors.
+                {
+                  "field": "A String", # Path of field with violation.
+                  "description": "A String", # Description of the error.
+                },
+              ],
+            },
+          ],
+          "repositoryErrors": [ # Repository error reported by connector.
+            { # Errors when the connector is communicating to the source repository.
+              "httpStatusCode": 42, # Error codes.  Matches the definition of HTTP status codes.
+              "errorMessage": "A String", # Message that describes the error. The maximum allowable length
+                  # of the message is 8192 characters.
+              "type": "A String", # Type of error.
+            },
+          ],
+          "code": "A String", # Status code.
+        },
+        "queue": "A String", # Queue this item belongs to.
+            # The maximum length is 100 characters.
+        "name": "A String", # Name of the Item. Format:
+            # datasources/{source_id}/items/{item_id}
+            # <br />This is a required field.
+            # The maximum length is 1536 characters.
+        "acl": { # Access control list information for the item. For more information see # Access control list for this item.
+            # https://developers.google.com/cloud-search/docs/guides/index-your-data#acls
+          "aclInheritanceType": "A String", # Sets the type of access rules to apply when an item inherits its ACL from a
+              # parent. This should always be set in tandem with the
+              # inheritAclFrom
+              # field. Also, when the
+              # inheritAclFrom field
+              # is set, this field should be set to a valid AclInheritanceType.
+          "readers": [ # List of principals who are allowed to see the item in search results.
+              # Optional if inheriting permissions from another item or if the item
+              # is not intended to be visible, such as
+              # virtual
+              # containers.
+              # The maximum number of elements is 1000.
+            { # Reference to a user, group, or domain.
+              "userResourceName": "A String", # This principal is a user identified using an external identity.
+                  # The name field must specify the user resource name with this format:
+                  # identitysources/{source_id}/users/{ID}
+              "groupResourceName": "A String", # This principal is a group identified using an external identity.
+                  # The name field must specify the group resource name with this format:
+                  # identitysources/{source_id}/groups/{ID}
+              "gsuitePrincipal": { # This principal is a GSuite user, group or domain.
+                "gsuiteUserEmail": "A String", # This principal references a G Suite user account
+                "gsuiteDomain": True or False, # This principal represents all users of the G Suite domain of the
+                    # customer.
+                "gsuiteGroupEmail": "A String", # This principal references a G Suite group account
+              },
+            },
+          ],
+          "deniedReaders": [ # List of principals who are explicitly denied access to the item in search
+              # results. While principals are denied access by default, use denied readers
+              # to handle exceptions and override the list allowed readers.
+              # The maximum number of elements is 100.
+            { # Reference to a user, group, or domain.
+              "userResourceName": "A String", # This principal is a user identified using an external identity.
+                  # The name field must specify the user resource name with this format:
+                  # identitysources/{source_id}/users/{ID}
+              "groupResourceName": "A String", # This principal is a group identified using an external identity.
+                  # The name field must specify the group resource name with this format:
+                  # identitysources/{source_id}/groups/{ID}
+              "gsuitePrincipal": { # This principal is a GSuite user, group or domain.
+                "gsuiteUserEmail": "A String", # This principal references a G Suite user account
+                "gsuiteDomain": True or False, # This principal represents all users of the G Suite domain of the
+                    # customer.
+                "gsuiteGroupEmail": "A String", # This principal references a G Suite group account
+              },
+            },
+          ],
+          "owners": [ # Optional. List of owners for the item. This field has no bearing on
+              # document access permissions. It does, however, offer
+              # a slight ranking boosts items where the querying user is an owner.
+              # The maximum number of elements is 5.
+            { # Reference to a user, group, or domain.
+              "userResourceName": "A String", # This principal is a user identified using an external identity.
+                  # The name field must specify the user resource name with this format:
+                  # identitysources/{source_id}/users/{ID}
+              "groupResourceName": "A String", # This principal is a group identified using an external identity.
+                  # The name field must specify the group resource name with this format:
+                  # identitysources/{source_id}/groups/{ID}
+              "gsuitePrincipal": { # This principal is a GSuite user, group or domain.
+                "gsuiteUserEmail": "A String", # This principal references a G Suite user account
+                "gsuiteDomain": True or False, # This principal represents all users of the G Suite domain of the
+                    # customer.
+                "gsuiteGroupEmail": "A String", # This principal references a G Suite group account
+              },
+            },
+          ],
+          "inheritAclFrom": "A String", # Name of the item to inherit the Access Permission List (ACL) from.
+              # Note: ACL inheritance *only* provides access permissions
+              # to child items and does not define structural relationships, nor does it
+              # provide convenient ways to delete large groups of items.
+              # Deleting an ACL parent from the index only alters the access permissions of
+              # child items that reference the parent in the
+              # inheritAclFrom
+              # field. The item is still in the index, but may not
+              # visible in search results. By contrast, deletion of a container item
+              # also deletes all items that reference the container via the
+              # containerName
+              # field.
+              # The maximum length for this field is 1536 characters.
+        },
+        "content": { # Content of an item to be indexed and surfaced by Cloud Search. # Item content to be indexed and made text searchable.
+          "contentDataRef": { # Represents an upload session reference. # Upload reference ID of a previously uploaded content via write method.
+              # This reference is created via upload
+              # method.
+              # Updating of item content may refer to this uploaded content via
+              # contentDataRef.
+            "name": "A String", # Name of the content reference.
+                # The maximum length is 2048 characters.
+          },
+          "contentFormat": "A String",
+          "hash": "A String", # Hashing info calculated and provided by the API client for content.
+              # Can be used with the items.push method to calculate modified state.
+              # The maximum length is 2048 characters.
+          "inlineContent": "A String", # Content that is supplied inlined within the update method.
+              # The maximum length is 102400 bytes (100 KiB).
+        },
+        "version": "A String", # Required. The indexing system stores the version from the datasource as a
+            # byte string and compares the Item version in the index
+            # to the version of the queued Item using lexical ordering.
+            # <br /><br />
+            # Cloud Search Indexing won't index or delete any queued item with
+            # a version value that is less than or equal to the version of the
+            # currently indexed item.
+            # The maximum length for this field is 1024 bytes.
+        "itemType": "A String", # Type for this item.
+        "structuredData": { # Available structured data fields for the item. # The structured data for the item that should conform to a registered
+            # object definition in the schema for the data source.
+          "object": { # A structured data object consisting of named properties. # The structured data object that should conform to a registered object
+              # definition in the schema for the data source.
+            "properties": [ # The properties for the object.
+                # The maximum number of elements is 1000.
+              { # A typed name-value pair for structured data.  The type of the value should
+                  # be the same as the registered type for the `name` property in the object
+                  # definition of `objectType`.
+                "objectValues": { # List of object values.
+                  "values": [
+                    # Object with schema name: StructuredDataObject
+                  ],
+                },
+                "dateValues": { # List of date values.
+                  "values": [
+                    { # 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.
+                      "month": 42, # Month of date. Must be from 1 to 12.
+                      "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month.
+                      "year": 42, # Year of date. Must be from 1 to 9999.
+                    },
+                  ],
+                },
+                "textValues": { # List of text values.
+                  "values": [ # The maximum allowable length for text values is 2048 characters.
+                    "A String",
+                  ],
+                },
+                "enumValues": { # List of enum values.
+                  "values": [ # The maximum allowable length for string values is 32 characters.
+                    "A String",
+                  ],
+                },
+                "integerValues": { # List of integer values.
+                  "values": [
+                    "A String",
+                  ],
+                },
+                "doubleValues": { # List of double values.
+                  "values": [
+                    3.14,
+                  ],
+                },
+                "htmlValues": { # List of html values.
+                  "values": [ # The maximum allowable length for html values is 2048 characters.
+                    "A String",
+                  ],
+                },
+                "booleanValue": True or False,
+                "timestampValues": { # List of timestamp values.
+                  "values": [
+                    "A String",
+                  ],
+                },
+                "name": "A String", # The name of the property.  This name should correspond to the name of the
+                    # property that was registered for object definition in the schema.
+                    # The maximum allowable length for this property is 256 characters.
+              },
+            ],
+          },
+          "hash": "A String", # Hashing value provided by the API caller.
+              # This can be used with the
+              # items.push
+              # method to calculate modified state.
+              # The maximum length is 2048 characters.
+        },
+        "payload": "A String", # Additional state connector can store for this item.
+            # The maximum length is 10000 bytes.
+        "metadata": { # Available metadata fields for the item. # Metadata information.
+          "mimeType": "A String", # The original mime-type of
+              # ItemContent.content
+              # in the source repository.
+              # The maximum length is 256 characters.
+          "containerName": "A String", # The name of the container for this item.
+              # Deletion of the container item leads to automatic deletion of this
+              # item.  Note: ACLs are not inherited from a container item.
+              # To provide ACL inheritance for an item, use the
+              # inheritAclFrom
+              # field. The maximum length is 1536 characters.
+          "updateTime": "A String", # The time when the item was last modified in the source repository.
+          "hash": "A String", # Hashing value provided by the API caller.
+              # This can be used with the
+              # items.push
+              # method to calculate modified state.
+              # The maximum length is 2048 characters.
+          "contentLanguage": "A String", # The BCP-47 language code for the item, such as "en-US" or "sr-Latn". For
+              # more information, see
+              # http://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
+              # The maximum length is 32 characters.
+          "title": "A String", # The title of the item.  If given, this will be the displayed title of the
+              # Search result.
+              # The maximum length is 2048 characters.
+          "interactions": [ # A list of interactions for the item.  Interactions are used to improve
+              # Search quality, but are not exposed to end users.
+              # The maximum number of elements is 1000.
+            { # Represents an interaction between a user and an item.
+              "interactionTime": "A String", # The time when the user acted on the item.  If multiple actions of the same
+                  # type exist for a single user, only the most recent action is recorded.
+              "type": "A String",
+              "principal": { # Reference to a user, group, or domain. # The user that acted on the item.
+                "userResourceName": "A String", # This principal is a user identified using an external identity.
+                    # The name field must specify the user resource name with this format:
+                    # identitysources/{source_id}/users/{ID}
+                "groupResourceName": "A String", # This principal is a group identified using an external identity.
+                    # The name field must specify the group resource name with this format:
+                    # identitysources/{source_id}/groups/{ID}
+                "gsuitePrincipal": { # This principal is a GSuite user, group or domain.
+                  "gsuiteUserEmail": "A String", # This principal references a G Suite user account
+                  "gsuiteDomain": True or False, # This principal represents all users of the G Suite domain of the
+                      # customer.
+                  "gsuiteGroupEmail": "A String", # This principal references a G Suite group account
+                },
+              },
+            },
+          ],
+          "searchQualityMetadata": { # Additional search quality metadata of the item. # Additional search quality metadata of the item
+            "quality": 3.14, # An indication of the quality of the item, used to influence search quality.
+                # Value should be between 0.0 (lowest quality) and 1.0 (highest quality). The
+                # default value is 0.0.
+          },
+          "keywords": [ # Additional keywords or phrases that should match the item.
+              # Used internally for user generated content.
+              # The maximum number of elements is 100.
+              # The maximum length is 8192 characters.
+            "A String",
+          ],
+          "sourceRepositoryUrl": "A String", # Link to the source repository serving the data.  &#83;earch results apply
+              # this link to the title.
+              # The maximum length is 2048 characters.
+          "createTime": "A String", # The time when the item was created in the source repository.
+          "objectType": "A String", # The type of the item.  This should correspond to the name of an object
+              # definition in the schema registered for the data source.  For example, if
+              # the schema for the data source contains an object definition with name
+              # 'document', then item indexing requests for objects of that type should set
+              # objectType to 'document'.
+              # The maximum length is 256 characters.
+        },
+      },
+    ],
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="push">push(name, body, x__xgafv=None)</code>
+  <pre>Pushes an item onto a queue for later polling and updating.
+
+Args:
+  name: string, Name of the item to
+push into the indexing queue.<br />
+Format: datasources/{source_id}/items/{ID}
+<br />This is a required field.
+The maximum length is 1536 characters. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{
+    "item": { # Represents an item to be pushed to the indexing queue. # Item to push onto the queue.
+      "contentHash": "A String", # Content hash of the item according to the repository. If specified, this is
+          # used to determine how to modify this
+          # item's status. Setting this field and the
+          # type field results in argument
+          # error.
+          # The maximum length is 2048 characters.
+      "metadataHash": "A String", # Metadata hash of the item according to the repository. If specified, this
+          # is used to determine how to modify this
+          # item's status. Setting this field and the
+          # type field results in argument
+          # error.
+          # The maximum length is 2048 characters.
+      "queue": "A String", # Queue to which this item belongs to.  The <code>default</code> queue is
+          # chosen if this field is not specified. The maximum length is
+          # 512 characters.
+      "repositoryError": { # Errors when the connector is communicating to the source repository. # Populate this field to store Connector or repository error details.
+          # This information is displayed in the Admin Console.
+          # This field may only be populated when the
+          # Type is
+          # REPOSITORY_ERROR.
+        "httpStatusCode": 42, # Error codes.  Matches the definition of HTTP status codes.
+        "errorMessage": "A String", # Message that describes the error. The maximum allowable length
+            # of the message is 8192 characters.
+        "type": "A String", # Type of error.
+      },
+      "structuredDataHash": "A String", # Structured data hash of the item according to the repository. If specified,
+          # this is used to determine how to modify this item's status. Setting this
+          # field and the type field
+          # results in argument error.
+          # The maximum length is 2048 characters.
+      "type": "A String", # The type of the push operation that defines the push behavior.
+      "payload": "A String", # Provides additional document state information for the connector,
+          # such as an alternate repository ID and other metadata.
+          # The maximum length is 8192 bytes.
+    },
+    "connectorName": "A String", # Name of connector making this call.
+        # <br />Format: datasources/{source_id}/connectors/{ID}
+    "debugOptions": { # Shared request debug options for all cloudsearch RPC methods. # Common debug options.
+      "enableDebugging": True or False, # If you are asked by Google to help with debugging, set this field.
+          # Otherwise, ignore this field.
+    },
+  }
+
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+
+Returns:
+  An object of the form:
+
+    { # Represents a single object that is an item in the search index, such as a
+      # file, folder, or a database record.
+    "status": { # This contains item's status and any errors. # Status of the item.
+        # Output only field.
+      "processingErrors": [ # Error details in case the item is in ERROR state.
+        {
+          "code": "A String", # Error code indicating the nature of the error.
+          "errorMessage": "A String", # Description of the error.
+          "fieldViolations": [ # In case the item fields are invalid, this field contains the details
+              # about the validation errors.
+            {
+              "field": "A String", # Path of field with violation.
+              "description": "A String", # Description of the error.
+            },
+          ],
+        },
+      ],
+      "repositoryErrors": [ # Repository error reported by connector.
+        { # Errors when the connector is communicating to the source repository.
+          "httpStatusCode": 42, # Error codes.  Matches the definition of HTTP status codes.
+          "errorMessage": "A String", # Message that describes the error. The maximum allowable length
+              # of the message is 8192 characters.
+          "type": "A String", # Type of error.
+        },
+      ],
+      "code": "A String", # Status code.
+    },
+    "queue": "A String", # Queue this item belongs to.
+        # The maximum length is 100 characters.
+    "name": "A String", # Name of the Item. Format:
+        # datasources/{source_id}/items/{item_id}
+        # <br />This is a required field.
+        # The maximum length is 1536 characters.
+    "acl": { # Access control list information for the item. For more information see # Access control list for this item.
+        # https://developers.google.com/cloud-search/docs/guides/index-your-data#acls
+      "aclInheritanceType": "A String", # Sets the type of access rules to apply when an item inherits its ACL from a
+          # parent. This should always be set in tandem with the
+          # inheritAclFrom
+          # field. Also, when the
+          # inheritAclFrom field
+          # is set, this field should be set to a valid AclInheritanceType.
+      "readers": [ # List of principals who are allowed to see the item in search results.
+          # Optional if inheriting permissions from another item or if the item
+          # is not intended to be visible, such as
+          # virtual
+          # containers.
+          # The maximum number of elements is 1000.
+        { # Reference to a user, group, or domain.
+          "userResourceName": "A String", # This principal is a user identified using an external identity.
+              # The name field must specify the user resource name with this format:
+              # identitysources/{source_id}/users/{ID}
+          "groupResourceName": "A String", # This principal is a group identified using an external identity.
+              # The name field must specify the group resource name with this format:
+              # identitysources/{source_id}/groups/{ID}
+          "gsuitePrincipal": { # This principal is a GSuite user, group or domain.
+            "gsuiteUserEmail": "A String", # This principal references a G Suite user account
+            "gsuiteDomain": True or False, # This principal represents all users of the G Suite domain of the
+                # customer.
+            "gsuiteGroupEmail": "A String", # This principal references a G Suite group account
+          },
+        },
+      ],
+      "deniedReaders": [ # List of principals who are explicitly denied access to the item in search
+          # results. While principals are denied access by default, use denied readers
+          # to handle exceptions and override the list allowed readers.
+          # The maximum number of elements is 100.
+        { # Reference to a user, group, or domain.
+          "userResourceName": "A String", # This principal is a user identified using an external identity.
+              # The name field must specify the user resource name with this format:
+              # identitysources/{source_id}/users/{ID}
+          "groupResourceName": "A String", # This principal is a group identified using an external identity.
+              # The name field must specify the group resource name with this format:
+              # identitysources/{source_id}/groups/{ID}
+          "gsuitePrincipal": { # This principal is a GSuite user, group or domain.
+            "gsuiteUserEmail": "A String", # This principal references a G Suite user account
+            "gsuiteDomain": True or False, # This principal represents all users of the G Suite domain of the
+                # customer.
+            "gsuiteGroupEmail": "A String", # This principal references a G Suite group account
+          },
+        },
+      ],
+      "owners": [ # Optional. List of owners for the item. This field has no bearing on
+          # document access permissions. It does, however, offer
+          # a slight ranking boosts items where the querying user is an owner.
+          # The maximum number of elements is 5.
+        { # Reference to a user, group, or domain.
+          "userResourceName": "A String", # This principal is a user identified using an external identity.
+              # The name field must specify the user resource name with this format:
+              # identitysources/{source_id}/users/{ID}
+          "groupResourceName": "A String", # This principal is a group identified using an external identity.
+              # The name field must specify the group resource name with this format:
+              # identitysources/{source_id}/groups/{ID}
+          "gsuitePrincipal": { # This principal is a GSuite user, group or domain.
+            "gsuiteUserEmail": "A String", # This principal references a G Suite user account
+            "gsuiteDomain": True or False, # This principal represents all users of the G Suite domain of the
+                # customer.
+            "gsuiteGroupEmail": "A String", # This principal references a G Suite group account
+          },
+        },
+      ],
+      "inheritAclFrom": "A String", # Name of the item to inherit the Access Permission List (ACL) from.
+          # Note: ACL inheritance *only* provides access permissions
+          # to child items and does not define structural relationships, nor does it
+          # provide convenient ways to delete large groups of items.
+          # Deleting an ACL parent from the index only alters the access permissions of
+          # child items that reference the parent in the
+          # inheritAclFrom
+          # field. The item is still in the index, but may not
+          # visible in search results. By contrast, deletion of a container item
+          # also deletes all items that reference the container via the
+          # containerName
+          # field.
+          # The maximum length for this field is 1536 characters.
+    },
+    "content": { # Content of an item to be indexed and surfaced by Cloud Search. # Item content to be indexed and made text searchable.
+      "contentDataRef": { # Represents an upload session reference. # Upload reference ID of a previously uploaded content via write method.
+          # This reference is created via upload
+          # method.
+          # Updating of item content may refer to this uploaded content via
+          # contentDataRef.
+        "name": "A String", # Name of the content reference.
+            # The maximum length is 2048 characters.
+      },
+      "contentFormat": "A String",
+      "hash": "A String", # Hashing info calculated and provided by the API client for content.
+          # Can be used with the items.push method to calculate modified state.
+          # The maximum length is 2048 characters.
+      "inlineContent": "A String", # Content that is supplied inlined within the update method.
+          # The maximum length is 102400 bytes (100 KiB).
+    },
+    "version": "A String", # Required. The indexing system stores the version from the datasource as a
+        # byte string and compares the Item version in the index
+        # to the version of the queued Item using lexical ordering.
+        # <br /><br />
+        # Cloud Search Indexing won't index or delete any queued item with
+        # a version value that is less than or equal to the version of the
+        # currently indexed item.
+        # The maximum length for this field is 1024 bytes.
+    "itemType": "A String", # Type for this item.
+    "structuredData": { # Available structured data fields for the item. # The structured data for the item that should conform to a registered
+        # object definition in the schema for the data source.
+      "object": { # A structured data object consisting of named properties. # The structured data object that should conform to a registered object
+          # definition in the schema for the data source.
+        "properties": [ # The properties for the object.
+            # The maximum number of elements is 1000.
+          { # A typed name-value pair for structured data.  The type of the value should
+              # be the same as the registered type for the `name` property in the object
+              # definition of `objectType`.
+            "objectValues": { # List of object values.
+              "values": [
+                # Object with schema name: StructuredDataObject
+              ],
+            },
+            "dateValues": { # List of date values.
+              "values": [
+                { # 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.
+                  "month": 42, # Month of date. Must be from 1 to 12.
+                  "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month.
+                  "year": 42, # Year of date. Must be from 1 to 9999.
+                },
+              ],
+            },
+            "textValues": { # List of text values.
+              "values": [ # The maximum allowable length for text values is 2048 characters.
+                "A String",
+              ],
+            },
+            "enumValues": { # List of enum values.
+              "values": [ # The maximum allowable length for string values is 32 characters.
+                "A String",
+              ],
+            },
+            "integerValues": { # List of integer values.
+              "values": [
+                "A String",
+              ],
+            },
+            "doubleValues": { # List of double values.
+              "values": [
+                3.14,
+              ],
+            },
+            "htmlValues": { # List of html values.
+              "values": [ # The maximum allowable length for html values is 2048 characters.
+                "A String",
+              ],
+            },
+            "booleanValue": True or False,
+            "timestampValues": { # List of timestamp values.
+              "values": [
+                "A String",
+              ],
+            },
+            "name": "A String", # The name of the property.  This name should correspond to the name of the
+                # property that was registered for object definition in the schema.
+                # The maximum allowable length for this property is 256 characters.
+          },
+        ],
+      },
+      "hash": "A String", # Hashing value provided by the API caller.
+          # This can be used with the
+          # items.push
+          # method to calculate modified state.
+          # The maximum length is 2048 characters.
+    },
+    "payload": "A String", # Additional state connector can store for this item.
+        # The maximum length is 10000 bytes.
+    "metadata": { # Available metadata fields for the item. # Metadata information.
+      "mimeType": "A String", # The original mime-type of
+          # ItemContent.content
+          # in the source repository.
+          # The maximum length is 256 characters.
+      "containerName": "A String", # The name of the container for this item.
+          # Deletion of the container item leads to automatic deletion of this
+          # item.  Note: ACLs are not inherited from a container item.
+          # To provide ACL inheritance for an item, use the
+          # inheritAclFrom
+          # field. The maximum length is 1536 characters.
+      "updateTime": "A String", # The time when the item was last modified in the source repository.
+      "hash": "A String", # Hashing value provided by the API caller.
+          # This can be used with the
+          # items.push
+          # method to calculate modified state.
+          # The maximum length is 2048 characters.
+      "contentLanguage": "A String", # The BCP-47 language code for the item, such as "en-US" or "sr-Latn". For
+          # more information, see
+          # http://www.unicode.org/reports/tr35/#Unicode_locale_identifier.
+          # The maximum length is 32 characters.
+      "title": "A String", # The title of the item.  If given, this will be the displayed title of the
+          # Search result.
+          # The maximum length is 2048 characters.
+      "interactions": [ # A list of interactions for the item.  Interactions are used to improve
+          # Search quality, but are not exposed to end users.
+          # The maximum number of elements is 1000.
+        { # Represents an interaction between a user and an item.
+          "interactionTime": "A String", # The time when the user acted on the item.  If multiple actions of the same
+              # type exist for a single user, only the most recent action is recorded.
+          "type": "A String",
+          "principal": { # Reference to a user, group, or domain. # The user that acted on the item.
+            "userResourceName": "A String", # This principal is a user identified using an external identity.
+                # The name field must specify the user resource name with this format:
+                # identitysources/{source_id}/users/{ID}
+            "groupResourceName": "A String", # This principal is a group identified using an external identity.
+                # The name field must specify the group resource name with this format:
+                # identitysources/{source_id}/groups/{ID}
+            "gsuitePrincipal": { # This principal is a GSuite user, group or domain.
+              "gsuiteUserEmail": "A String", # This principal references a G Suite user account
+              "gsuiteDomain": True or False, # This principal represents all users of the G Suite domain of the
+                  # customer.
+              "gsuiteGroupEmail": "A String", # This principal references a G Suite group account
+            },
+          },
+        },
+      ],
+      "searchQualityMetadata": { # Additional search quality metadata of the item. # Additional search quality metadata of the item
+        "quality": 3.14, # An indication of the quality of the item, used to influence search quality.
+            # Value should be between 0.0 (lowest quality) and 1.0 (highest quality). The
+            # default value is 0.0.
+      },
+      "keywords": [ # Additional keywords or phrases that should match the item.
+          # Used internally for user generated content.
+          # The maximum number of elements is 100.
+          # The maximum length is 8192 characters.
+        "A String",
+      ],
+      "sourceRepositoryUrl": "A String", # Link to the source repository serving the data.  &#83;earch results apply
+          # this link to the title.
+          # The maximum length is 2048 characters.
+      "createTime": "A String", # The time when the item was created in the source repository.
+      "objectType": "A String", # The type of the item.  This should correspond to the name of an object
+          # definition in the schema registered for the data source.  For example, if
+          # the schema for the data source contains an object definition with name
+          # 'document', then item indexing requests for objects of that type should set
+          # objectType to 'document'.
+          # The maximum length is 256 characters.
+    },
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="unreserve">unreserve(name, body, x__xgafv=None)</code>
+  <pre>Unreserves all items from a queue, making them all eligible to be
+polled.  This method is useful for resetting the indexing queue
+after a connector has been restarted.
+
+Args:
+  name: string, Name of the Data Source to unreserve all items.
+Format: datasources/{source_id} (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{
+    "queue": "A String", # Name of a queue to unreserve items from.
+    "debugOptions": { # Shared request debug options for all cloudsearch RPC methods. # Common debug options.
+      "enableDebugging": True or False, # If you are asked by Google to help with debugging, set this field.
+          # Otherwise, ignore this field.
+    },
+    "connectorName": "A String", # Name of connector making this call.
+        # <br />Format: datasources/{source_id}/connectors/{ID}
+  }
+
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+
+Returns:
+  An object of the form:
+
+    { # This resource represents a long-running operation that is the result of a
+      # network API call.
+    "metadata": { # Service-specific metadata associated with the operation.  It typically
+        # contains progress information and common metadata such as create time.
+        # Some services might not provide such metadata.  Any method that returns a
+        # long-running operation should document the metadata type, if any.
+      "a_key": "", # Properties of the object. Contains field @type with type URL.
+    },
+    "error": { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
+        # different programming environments, including REST APIs and RPC APIs. It is
+        # used by [gRPC](https://github.com/grpc). Each `Status` message contains
+        # three pieces of data: error code, error message, and error details.
+        #
+        # You can find out more about this error model and how to work with it in the
+        # [API Design Guide](https://cloud.google.com/apis/design/errors).
+      "message": "A String", # A developer-facing error message, which should be in English. Any
+          # user-facing error message should be localized and sent in the
+          # google.rpc.Status.details field, or localized by the client.
+      "code": 42, # The status code, which should be an enum value of google.rpc.Code.
+      "details": [ # A list of messages that carry the error details.  There is a common set of
+          # message types for APIs to use.
+        {
+          "a_key": "", # Properties of the object. Contains field @type with type URL.
+        },
+      ],
+    },
+    "done": True or False, # If the value is `false`, it means the operation is still in progress.
+        # If `true`, the operation is completed, and either `error` or `response` is
+        # available.
+    "response": { # The normal response of the operation in case of success.  If the original
+        # method returns no data on success, such as `Delete`, the response is
+        # `google.protobuf.Empty`.  If the original method is standard
+        # `Get`/`Create`/`Update`, the response should be the resource.  For other
+        # methods, the response should have the type `XxxResponse`, where `Xxx`
+        # is the original method name.  For example, if the original method name
+        # is `TakeSnapshot()`, the inferred response type is
+        # `TakeSnapshotResponse`.
+      "a_key": "", # Properties of the object. Contains field @type with type URL.
+    },
+    "name": "A String", # The server-assigned name, which is only unique within the same service that
+        # originally returns it. If you use the default HTTP mapping, the
+        # `name` should be a resource name ending with `operations/{unique_id}`.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="upload">upload(name, body, x__xgafv=None)</code>
+  <pre>Creates an upload session for uploading item content. For items smaller
+than 100 KiB, it's easier to embed the content
+inline within
+update.
+
+Args:
+  name: string, Name of the Item to start a resumable upload.
+Format: datasources/{source_id}/items/{item_id}. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # Start upload file request.
+    "debugOptions": { # Shared request debug options for all cloudsearch RPC methods. # Common debug options.
+      "enableDebugging": True or False, # If you are asked by Google to help with debugging, set this field.
+          # Otherwise, ignore this field.
+    },
+    "connectorName": "A String", # Name of connector making this call.
+        # <br />Format: datasources/{source_id}/connectors/{ID}
+  }
+
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+
+Returns:
+  An object of the form:
+
+    { # Represents an upload session reference.
+      # This reference is created via upload
+      # method.
+      # Updating of item content may refer to this uploaded content via
+      # contentDataRef.
+    "name": "A String", # Name of the content reference.
+        # The maximum length is 2048 characters.
+  }</pre>
+</div>
+
+</body></html>
\ No newline at end of file