blob: 845199e42daa48a5296b431afe298045ef430642 [file] [log] [blame]
<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></h1>
<h2>Instance Methods</h2>
<p class="toc_element">
<code><a href="cloudsearch_v1.indexing.datasources.items.html">items()</a></code>
</p>
<p class="firstline">Returns the items Resource.</p>
<p class="toc_element">
<code><a href="#deleteSchema">deleteSchema(name, debugOptions_enableDebugging=None, x__xgafv=None)</a></code></p>
<p class="firstline">Deletes the schema of a data source.</p>
<p class="toc_element">
<code><a href="#getSchema">getSchema(name, debugOptions_enableDebugging=None, x__xgafv=None)</a></code></p>
<p class="firstline">Gets the schema of a data source.</p>
<p class="toc_element">
<code><a href="#updateSchema">updateSchema(name, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Updates the schema of a data source. This method does not perform</p>
<h3>Method Details</h3>
<div class="method">
<code class="details" id="deleteSchema">deleteSchema(name, debugOptions_enableDebugging=None, x__xgafv=None)</code>
<pre>Deletes the schema of a data source.
**Note:** This API requires an admin or service account to execute.
Args:
name: string, Name of the data source to delete Schema. Format:
datasources/{source_id} (required)
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.
&quot;response&quot;: { # 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`.
&quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
},
&quot;metadata&quot;: { # 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.
&quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
},
&quot;error&quot;: { # 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).
&quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of
# message types for APIs to use.
{
&quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
},
],
&quot;message&quot;: &quot;A String&quot;, # 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.
&quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
},
&quot;name&quot;: &quot;A String&quot;, # 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}`.
&quot;done&quot;: 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.
}</pre>
</div>
<div class="method">
<code class="details" id="getSchema">getSchema(name, debugOptions_enableDebugging=None, x__xgafv=None)</code>
<pre>Gets the schema of a data source.
**Note:** This API requires an admin or service account to execute.
Args:
name: string, Name of the data source to get Schema. Format:
datasources/{source_id} (required)
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:
{ # The schema definition for a data source.
&quot;operationIds&quot;: [ # IDs of the Long Running Operations (LROs) currently running for this
# schema. After modifying the schema, wait for operations to complete
# before indexing additional content.
&quot;A String&quot;,
],
&quot;objectDefinitions&quot;: [ # The list of top-level objects for the data source.
# The maximum number of elements is 10.
{ # The definition for an object within a data source.
&quot;propertyDefinitions&quot;: [ # The property definitions for the object.
# The maximum number of elements is 1000.
{ # The definition of a property within an object.
&quot;isRepeatable&quot;: True or False, # Indicates that multiple values are allowed for the property. For example, a
# document only has one description but can have multiple comments. Cannot be
# true for properties whose type is a boolean.
# If set to false, properties that contain more than one value cause the
# indexing request for that item to be rejected.
&quot;htmlPropertyOptions&quot;: { # Options for html properties.
&quot;operatorOptions&quot;: { # Used to provide a search operator for html properties. This is optional. # If set, describes how the property should be used as a search operator.
# Search operators let users restrict the query to specific fields relevant
# to the type of item being searched.
&quot;operatorName&quot;: &quot;A String&quot;, # Indicates the operator name required in the query in order to isolate the
# html property. For example, if operatorName is *subject* and the
# property&#x27;s name is *subjectLine*, then queries like
# *subject:&amp;lt;value&amp;gt;* show results only where the value of the
# property named *subjectLine* matches *&amp;lt;value&amp;gt;*. By contrast, a
# search that uses the same *&amp;lt;value&amp;gt;* without an operator return
# all items where *&amp;lt;value&amp;gt;* matches the value of any
# html properties or text within the content field for the item.
# The operator name can only contain lowercase letters (a-z).
# The maximum length is 32 characters.
},
&quot;retrievalImportance&quot;: { # Indicates the search quality importance of the tokens within the
# field when used for retrieval. Can only be set to DEFAULT or NONE.
&quot;importance&quot;: &quot;A String&quot;, # Indicates the ranking importance given to property when it is matched
# during retrieval. Once set, the token importance of a property cannot be
# changed.
},
},
&quot;isReturnable&quot;: True or False, # Indicates that the property identifies data that should be returned in
# search results via the Query API. If set to *true*, indicates that Query
# API users can use matching property fields in results. However, storing
# fields requires more space allocation and uses more bandwidth for search
# queries, which impacts performance over large datasets. Set to *true* here
# only if the field is needed for search results. Cannot be true for
# properties whose type is an object.
&quot;textPropertyOptions&quot;: { # Options for text properties.
&quot;retrievalImportance&quot;: { # Indicates the search quality importance of the tokens within the
# field when used for retrieval.
&quot;importance&quot;: &quot;A String&quot;, # Indicates the ranking importance given to property when it is matched
# during retrieval. Once set, the token importance of a property cannot be
# changed.
},
&quot;operatorOptions&quot;: { # Used to provide a search operator for text properties. This is optional. # If set, describes how the property should be used as a search operator.
# Search operators let users restrict the query to specific fields relevant
# to the type of item being searched.
&quot;operatorName&quot;: &quot;A String&quot;, # Indicates the operator name required in the query in order to isolate the
# text property. For example, if operatorName is *subject* and the
# property&#x27;s name is *subjectLine*, then queries like
# *subject:&amp;lt;value&amp;gt;* show results only where the value of the
# property named *subjectLine* matches *&amp;lt;value&amp;gt;*. By contrast, a
# search that uses the same *&amp;lt;value&amp;gt;* without an operator returns
# all items where *&amp;lt;value&amp;gt;* matches the value of any
# text properties or text within the content field for the item.
# The operator name can only contain lowercase letters (a-z).
# The maximum length is 32 characters.
&quot;exactMatchWithOperator&quot;: True or False, # If true, the text value is tokenized as one atomic value in
# operator searches and facet matches. For example, if the operator name is
# &quot;genre&quot; and the value is &quot;science-fiction&quot; the query restrictions
# &quot;genre:science&quot; and &quot;genre:fiction&quot; doesn&#x27;t match the item;
# &quot;genre:science-fiction&quot; does. Value matching is case-sensitive
# and does not remove special characters.
# If false, the text is tokenized. For example, if the value is
# &quot;science-fiction&quot; the queries &quot;genre:science&quot; and &quot;genre:fiction&quot;
# matches the item.
},
},
&quot;displayOptions&quot;: { # The display options for a property. # Options that determine how the property is displayed in the Cloud Search
# results page if it is specified to be displayed in the object&#x27;s
# display options
# .
&quot;displayLabel&quot;: &quot;A String&quot;, # The user friendly label for the property that is used if the property
# is specified to be displayed in ObjectDisplayOptions. If provided, the
# display label is shown in front of the property values when the property is
# part of the object display options. For example, if the property value is
# &#x27;1&#x27;, the value by itself may not be useful context for the user. If the
# display name given was &#x27;priority&#x27;, then the user sees &#x27;priority : 1&#x27; in
# the search results which provides clear context to search users. This is
# OPTIONAL; if not given, only the property values are displayed.
# The maximum length is 64 characters.
},
&quot;timestampPropertyOptions&quot;: { # Options for timestamp properties.
&quot;operatorOptions&quot;: { # Used to provide a search operator for timestamp properties. This is # If set, describes how the timestamp should be used as a search operator.
# optional. Search operators let users restrict the query to specific fields
# relevant to the type of item being searched.
&quot;operatorName&quot;: &quot;A String&quot;, # Indicates the operator name required in the query in order to isolate the
# timestamp property. For example, if operatorName is *closedon* and the
# property&#x27;s name is *closeDate*, then queries like
# *closedon:&amp;lt;value&amp;gt;* show results only where the value of the
# property named *closeDate* matches *&amp;lt;value&amp;gt;*. By contrast, a
# search that uses the same *&amp;lt;value&amp;gt;* without an operator returns
# all items where *&amp;lt;value&amp;gt;* matches the value of any String
# properties or text within the content field for the item. The operator
# name can only contain lowercase letters (a-z). The maximum length is 32
# characters.
&quot;lessThanOperatorName&quot;: &quot;A String&quot;, # Indicates the operator name required in the query in order to isolate the
# timestamp property using the less-than operator. For example, if
# lessThanOperatorName is *closedbefore* and the property&#x27;s name is
# *closeDate*, then queries like *closedbefore:&amp;lt;value&amp;gt;*
# show results only where the value of the property named *closeDate* is
# earlier than *&amp;lt;value&amp;gt;*.
# The operator name can only contain lowercase letters (a-z).
# The maximum length is 32 characters.
&quot;greaterThanOperatorName&quot;: &quot;A String&quot;, # Indicates the operator name required in the query in order to isolate the
# timestamp property using the greater-than operator. For example, if
# greaterThanOperatorName is *closedafter* and the property&#x27;s name is
# *closeDate*, then queries like *closedafter:&amp;lt;value&amp;gt;*
# show results only where the value of the property named *closeDate* is
# later than *&amp;lt;value&amp;gt;*.
# The operator name can only contain lowercase letters (a-z).
# The maximum length is 32 characters.
},
},
&quot;isSuggestable&quot;: True or False, # Indicates that the property can be used for generating query suggestions.
&quot;objectPropertyOptions&quot;: { # Options for object properties.
&quot;subobjectProperties&quot;: [ # The properties of the sub-object. These properties represent a nested
# object. For example, if this property represents a postal address, the
# subobjectProperties might be named *street*, *city*, and *state*.
# The maximum number of elements is 1000.
# Object with schema name: PropertyDefinition
],
},
&quot;booleanPropertyOptions&quot;: { # Options for boolean properties.
&quot;operatorOptions&quot;: { # Used to provide a search operator for boolean properties. This is # If set, describes how the boolean should be used as a search operator.
# optional. Search operators let users restrict the query to specific fields
# relevant to the type of item being searched.
&quot;operatorName&quot;: &quot;A String&quot;, # Indicates the operator name required in the query in order to isolate the
# boolean property. For example, if operatorName is *closed* and the
# property&#x27;s name is *isClosed*, then queries like
# *closed:&amp;lt;value&amp;gt;* show results only where the value of the
# property named *isClosed* matches *&amp;lt;value&amp;gt;*. By contrast, a
# search that uses the same *&amp;lt;value&amp;gt;* without an operator returns
# all items where *&amp;lt;value&amp;gt;* matches the value of any
# String properties or text within the content field for the item.
# The operator name can only contain lowercase letters (a-z).
# The maximum length is 32 characters.
},
},
&quot;integerPropertyOptions&quot;: { # Options for integer properties.
&quot;orderedRanking&quot;: &quot;A String&quot;, # Used to specify the ordered ranking for the integer. Can only be used if
# isRepeatable
# is false.
&quot;operatorOptions&quot;: { # Used to provide a search operator for integer properties. This is # If set, describes how the integer should be used as a search operator.
# optional. Search operators let users restrict the query to specific fields
# relevant to the type of item being searched.
&quot;greaterThanOperatorName&quot;: &quot;A String&quot;, # Indicates the operator name required in the query in order to isolate the
# integer property using the greater-than operator. For example, if
# greaterThanOperatorName is *priorityabove* and the property&#x27;s name is
# *priorityVal*, then queries like *priorityabove:&amp;lt;value&amp;gt;*
# show results only where the value of the property named *priorityVal* is
# greater than *&amp;lt;value&amp;gt;*.
# The operator name can only contain lowercase letters (a-z).
# The maximum length is 32 characters.
&quot;lessThanOperatorName&quot;: &quot;A String&quot;, # Indicates the operator name required in the query in order to isolate the
# integer property using the less-than operator. For example, if
# lessThanOperatorName is *prioritybelow* and the property&#x27;s name is
# *priorityVal*, then queries like *prioritybelow:&amp;lt;value&amp;gt;*
# show results only where the value of the property named *priorityVal* is
# less than *&amp;lt;value&amp;gt;*.
# The operator name can only contain lowercase letters (a-z).
# The maximum length is 32 characters.
&quot;operatorName&quot;: &quot;A String&quot;, # Indicates the operator name required in the query in order to isolate the
# integer property. For example, if operatorName is *priority* and the
# property&#x27;s name is *priorityVal*, then queries like
# *priority:&amp;lt;value&amp;gt;* show results only where the value of the
# property named *priorityVal* matches *&amp;lt;value&amp;gt;*. By contrast, a
# search that uses the same *&amp;lt;value&amp;gt;* without an operator returns
# all items where *&amp;lt;value&amp;gt;* matches the value of any String
# properties or text within the content field for the item.
# The operator name can only contain lowercase letters (a-z).
# The maximum length is 32 characters.
},
&quot;minimumValue&quot;: &quot;A String&quot;, # The minimum value of the property. The minimum and maximum values for the
# property are used to rank results according to the
# ordered ranking.
# Indexing requests with values less than the minimum are accepted and
# ranked with the same weight as items indexed with the minimum value.
&quot;maximumValue&quot;: &quot;A String&quot;, # The maximum value of the property. The minimum and maximum values for the
# property are used to rank results according to the
# ordered ranking.
# Indexing requests with values greater than the maximum are accepted and
# ranked with the same weight as items indexed with the maximum value.
},
&quot;name&quot;: &quot;A String&quot;, # The name of the property. Item indexing requests sent to the Indexing API
# should set the property name
# equal to this value. For example, if name is *subject_line*, then indexing
# requests for document items with subject fields should set the
# name for that field equal to
# *subject_line*. Use the name as the identifier for the object property.
# Once registered as a property for an object, you cannot re-use this name
# for another property within that object.
# The name must start with a letter and can only contain letters (A-Z, a-z)
# or numbers (0-9).
# The maximum length is 256 characters.
&quot;isFacetable&quot;: True or False, # Indicates that the property can be used for generating facets. Cannot be
# true for properties whose type is object. IsReturnable must be true to set
# this option.
# Only supported for Boolean, Enum, and Text properties.
&quot;doublePropertyOptions&quot;: { # Options for double properties.
&quot;operatorOptions&quot;: { # Used to provide a search operator for double properties. This is # If set, describes how the double should be used as a search operator.
# optional. Search operators let users restrict the query to specific fields
# relevant to the type of item being searched.
&quot;operatorName&quot;: &quot;A String&quot;, # Indicates the operator name required in the query in order to use the
# double property in sorting or as a facet.
# The operator name can only contain lowercase letters (a-z).
# The maximum length is 32 characters.
},
},
&quot;isWildcardSearchable&quot;: True or False, # Indicates that users can perform wildcard search for this
# property. Only supported for Text properties. IsReturnable must be true to
# set this option. In a given datasource maximum of 5 properties can be
# marked as is_wildcard_searchable.
&quot;enumPropertyOptions&quot;: { # Options for enum properties, which allow you to define a restricted set of
# strings to match user queries, set rankings for those string values, and
# define an operator name to be paired with those strings so that users can
# narrow results to only items with a specific value. For example, for items in
# a request tracking system with priority information, you could define *p0* as
# an allowable enum value and tie this enum to the operator name *priority* so
# that search users could add *priority:p0* to their query to restrict the set
# of results to only those items indexed with the value *p0*.
&quot;operatorOptions&quot;: { # Used to provide a search operator for enum properties. This is # If set, describes how the enum should be used as a search operator.
# optional. Search operators let users restrict the query to specific fields
# relevant to the type of item being searched. For example, if you provide no
# operator for a *priority* enum property with possible values *p0* and *p1*,
# a query that contains the term *p0* returns items that have *p0* as the
# value of the *priority* property, as well as any items that contain the
# string *p0* in other fields. If you provide an operator name for the enum,
# such as *priority*, then search users can use that operator to refine
# results to only items that have *p0* as this property&#x27;s value, with the
# query *priority:p0*.
&quot;operatorName&quot;: &quot;A String&quot;, # Indicates the operator name required in the query in order to isolate the
# enum property. For example, if operatorName is *priority* and the
# property&#x27;s name is *priorityVal*, then queries like
# *priority:&amp;lt;value&amp;gt;* show results only where the value of the
# property named *priorityVal* matches *&amp;lt;value&amp;gt;*. By contrast, a
# search that uses the same *&amp;lt;value&amp;gt;* without an operator returns
# all items where *&amp;lt;value&amp;gt;* matches the value of any String
# properties or text within the content field for the item.
# The operator name can only contain lowercase letters (a-z).
# The maximum length is 32 characters.
},
&quot;orderedRanking&quot;: &quot;A String&quot;, # Used to specify the ordered ranking for the enumeration that determines how
# the integer values provided in the possible EnumValuePairs are used to rank
# results. If specified, integer values must be provided for all possible
# EnumValuePair values given for this property. Can only be used if
# isRepeatable
# is false.
&quot;possibleValues&quot;: [ # The list of possible values for the enumeration property. All
# EnumValuePairs must provide a string value. If you specify an integer value
# for one EnumValuePair, then all possible EnumValuePairs must provide an
# integer value. Both the string value and integer value must be unique over
# all possible values. Once set, possible values cannot be removed or
# modified. If you supply an ordered ranking and think you might insert
# additional enum values in the future, leave gaps in the initial integer
# values to allow adding a value in between previously registered values.
# The maximum number of elements is 100.
{ # The enumeration value pair defines two things: a required string value and
# an optional integer value. The string value defines the necessary query
# term required to retrieve that item, such as *p0* for a priority item.
# The integer value determines the ranking of that string value relative
# to other enumerated values for the same property. For example, you might
# associate *p0* with *0* and define another enum pair such as *p1* and *1*.
# You must use the integer value in combination with
# ordered
# ranking to
# set the ranking of a given value relative to other enumerated values for
# the same property name. Here, a ranking order of DESCENDING for *priority*
# properties results in a ranking boost for items indexed with a value of
# *p0* compared to items indexed with a value of *p1*. Without a specified
# ranking order, the integer value has no effect on item ranking.
&quot;integerValue&quot;: 42, # The integer value of the EnumValuePair which must be non-negative.
# Optional.
&quot;stringValue&quot;: &quot;A String&quot;, # The string value of the EnumValuePair.
# The maximum length is 32 characters.
},
],
},
&quot;isSortable&quot;: True or False, # Indicates that the property can be used for sorting. Cannot be true for
# properties that are repeatable. Cannot be true for properties whose type
# is object or user identifier. IsReturnable must be true to set this option.
# Only supported for Boolean, Date, Double, Integer, and Timestamp
# properties.
&quot;datePropertyOptions&quot;: { # Options for date properties.
&quot;operatorOptions&quot;: { # Optional. Provides a search operator for date properties. # If set, describes how the date should be used as a search operator.
# Search operators let users restrict the query to specific fields relevant
# to the type of item being searched.
&quot;lessThanOperatorName&quot;: &quot;A String&quot;, # Indicates the operator name required in the query in order to isolate the
# date property using the less-than operator. For example, if
# lessThanOperatorName is *closedbefore* and the property&#x27;s name is
# *closeDate*, then queries like *closedbefore:&amp;lt;value&amp;gt;*
# show results only where the value of the property named *closeDate* is
# earlier than *&amp;lt;value&amp;gt;*.
# The operator name can only contain lowercase letters (a-z).
# The maximum length is 32 characters.
&quot;greaterThanOperatorName&quot;: &quot;A String&quot;, # Indicates the operator name required in the query in order to isolate the
# date property using the greater-than operator. For example, if
# greaterThanOperatorName is *closedafter* and the property&#x27;s name is
# *closeDate*, then queries like *closedafter:&amp;lt;value&amp;gt;*
# show results only where the value of the property named *closeDate* is
# later than *&amp;lt;value&amp;gt;*.
# The operator name can only contain lowercase letters (a-z).
# The maximum length is 32 characters.
&quot;operatorName&quot;: &quot;A String&quot;, # Indicates the actual string required in the query in order to isolate the
# date property. For example, suppose an issue tracking schema object
# has a property named *closeDate* that specifies an operator with an
# operatorName of *closedon*. For searches on that data, queries like
# *closedon:&amp;lt;value&amp;gt;* show results only where the value of the
# *closeDate* property matches *&amp;lt;value&amp;gt;*. By contrast, a
# search that uses the same *&amp;lt;value&amp;gt;* without an operator returns
# all items where *&amp;lt;value&amp;gt;* matches the value of any String
# properties or text within the content field for the indexed datasource.
# The operator name can only contain lowercase letters (a-z).
# The maximum length is 32 characters.
},
},
},
],
&quot;name&quot;: &quot;A String&quot;, # Name for the object, which then defines its type. Item indexing requests
# should set the
# objectType field
# equal to this value. For example, if *name* is *Document*, then indexing
# requests for items of type Document should set
# objectType equal to
# *Document*. Each object definition must be uniquely named within a schema.
# The name must start with a letter and can only contain letters (A-Z, a-z)
# or numbers (0-9).
# The maximum length is 256 characters.
&quot;options&quot;: { # The options for an object. # The optional object-specific options.
&quot;freshnessOptions&quot;: { # Indicates which freshness property to use when adjusting search ranking for # The freshness options for an object.
# an item. Fresher, more recent dates indicate higher quality. Use the
# freshness option property that best works with your data. For fileshare
# documents, last modified time is most relevant. For calendar event data,
# the time when the event occurs is a more relevant freshness indicator. In
# this way, calendar events that occur closer to the time of the search query
# are considered higher quality and ranked accordingly.
&quot;freshnessProperty&quot;: &quot;A String&quot;, # This property indicates the freshness level of the object in the index.
# If set, this property must be a top-level property within the
# property definitions
# and it must be a
# timestamp type
# or
# date type.
# Otherwise, the Indexing API uses
# updateTime
# as the freshness indicator.
# The maximum length is 256 characters.
#
# When a property is used to calculate freshness, the value defaults
# to 2 years from the current time.
&quot;freshnessDuration&quot;: &quot;A String&quot;, # The duration after which an object should be considered
# stale. The default value is 180 days (in seconds).
},
&quot;displayOptions&quot;: { # The display options for an object. # Options that determine how the object is displayed in the Cloud Search
# results page.
&quot;metalines&quot;: [ # Defines the properties that are displayed in the metalines of the
# search results. The property values are displayed in the order given
# here. If a property holds multiple values, all of the values are
# displayed before the next properties. For this reason, it is a good
# practice to specify singular properties before repeated properties in this
# list. All of the properties must set
# is_returnable
# to true. The maximum number of metalines is 3.
{ # A metaline is a list of properties that are displayed along with the search
# result to provide context.
&quot;properties&quot;: [ # The list of displayed properties for the metaline. The maximum number of
# properties is 5.
{ # A reference to a top-level property within the object that should be
# displayed in search results. The values of the chosen properties is
# displayed in the search results along with the
# display label
# for that property if one is specified. If a display label is not specified,
# only the values is shown.
&quot;propertyName&quot;: &quot;A String&quot;, # The name of the top-level property as defined in a property definition
# for the object. If the name is not a defined property in the schema, an
# error is given when attempting to update the schema.
},
],
},
],
&quot;objectDisplayLabel&quot;: &quot;A String&quot;, # The user friendly label to display in the search result to indicate the
# type of the item. This is OPTIONAL; if not provided, an object label isn&#x27;t
# displayed on the context line of the search results. The maximum length
# is 64 characters.
},
},
},
],
}</pre>
</div>
<div class="method">
<code class="details" id="updateSchema">updateSchema(name, body=None, x__xgafv=None)</code>
<pre>Updates the schema of a data source. This method does not perform
incremental updates to the schema. Instead, this method updates the schema
by overwriting the entire schema.
**Note:** This API requires an admin or service account to execute.
Args:
name: string, Name of the data source to update Schema. Format:
datasources/{source_id} (required)
body: object, The request body.
The object takes the form of:
{
&quot;schema&quot;: { # The schema definition for a data source. # The new schema for the source.
&quot;operationIds&quot;: [ # IDs of the Long Running Operations (LROs) currently running for this
# schema. After modifying the schema, wait for operations to complete
# before indexing additional content.
&quot;A String&quot;,
],
&quot;objectDefinitions&quot;: [ # The list of top-level objects for the data source.
# The maximum number of elements is 10.
{ # The definition for an object within a data source.
&quot;propertyDefinitions&quot;: [ # The property definitions for the object.
# The maximum number of elements is 1000.
{ # The definition of a property within an object.
&quot;isRepeatable&quot;: True or False, # Indicates that multiple values are allowed for the property. For example, a
# document only has one description but can have multiple comments. Cannot be
# true for properties whose type is a boolean.
# If set to false, properties that contain more than one value cause the
# indexing request for that item to be rejected.
&quot;htmlPropertyOptions&quot;: { # Options for html properties.
&quot;operatorOptions&quot;: { # Used to provide a search operator for html properties. This is optional. # If set, describes how the property should be used as a search operator.
# Search operators let users restrict the query to specific fields relevant
# to the type of item being searched.
&quot;operatorName&quot;: &quot;A String&quot;, # Indicates the operator name required in the query in order to isolate the
# html property. For example, if operatorName is *subject* and the
# property&#x27;s name is *subjectLine*, then queries like
# *subject:&amp;lt;value&amp;gt;* show results only where the value of the
# property named *subjectLine* matches *&amp;lt;value&amp;gt;*. By contrast, a
# search that uses the same *&amp;lt;value&amp;gt;* without an operator return
# all items where *&amp;lt;value&amp;gt;* matches the value of any
# html properties or text within the content field for the item.
# The operator name can only contain lowercase letters (a-z).
# The maximum length is 32 characters.
},
&quot;retrievalImportance&quot;: { # Indicates the search quality importance of the tokens within the
# field when used for retrieval. Can only be set to DEFAULT or NONE.
&quot;importance&quot;: &quot;A String&quot;, # Indicates the ranking importance given to property when it is matched
# during retrieval. Once set, the token importance of a property cannot be
# changed.
},
},
&quot;isReturnable&quot;: True or False, # Indicates that the property identifies data that should be returned in
# search results via the Query API. If set to *true*, indicates that Query
# API users can use matching property fields in results. However, storing
# fields requires more space allocation and uses more bandwidth for search
# queries, which impacts performance over large datasets. Set to *true* here
# only if the field is needed for search results. Cannot be true for
# properties whose type is an object.
&quot;textPropertyOptions&quot;: { # Options for text properties.
&quot;retrievalImportance&quot;: { # Indicates the search quality importance of the tokens within the
# field when used for retrieval.
&quot;importance&quot;: &quot;A String&quot;, # Indicates the ranking importance given to property when it is matched
# during retrieval. Once set, the token importance of a property cannot be
# changed.
},
&quot;operatorOptions&quot;: { # Used to provide a search operator for text properties. This is optional. # If set, describes how the property should be used as a search operator.
# Search operators let users restrict the query to specific fields relevant
# to the type of item being searched.
&quot;operatorName&quot;: &quot;A String&quot;, # Indicates the operator name required in the query in order to isolate the
# text property. For example, if operatorName is *subject* and the
# property&#x27;s name is *subjectLine*, then queries like
# *subject:&amp;lt;value&amp;gt;* show results only where the value of the
# property named *subjectLine* matches *&amp;lt;value&amp;gt;*. By contrast, a
# search that uses the same *&amp;lt;value&amp;gt;* without an operator returns
# all items where *&amp;lt;value&amp;gt;* matches the value of any
# text properties or text within the content field for the item.
# The operator name can only contain lowercase letters (a-z).
# The maximum length is 32 characters.
&quot;exactMatchWithOperator&quot;: True or False, # If true, the text value is tokenized as one atomic value in
# operator searches and facet matches. For example, if the operator name is
# &quot;genre&quot; and the value is &quot;science-fiction&quot; the query restrictions
# &quot;genre:science&quot; and &quot;genre:fiction&quot; doesn&#x27;t match the item;
# &quot;genre:science-fiction&quot; does. Value matching is case-sensitive
# and does not remove special characters.
# If false, the text is tokenized. For example, if the value is
# &quot;science-fiction&quot; the queries &quot;genre:science&quot; and &quot;genre:fiction&quot;
# matches the item.
},
},
&quot;displayOptions&quot;: { # The display options for a property. # Options that determine how the property is displayed in the Cloud Search
# results page if it is specified to be displayed in the object&#x27;s
# display options
# .
&quot;displayLabel&quot;: &quot;A String&quot;, # The user friendly label for the property that is used if the property
# is specified to be displayed in ObjectDisplayOptions. If provided, the
# display label is shown in front of the property values when the property is
# part of the object display options. For example, if the property value is
# &#x27;1&#x27;, the value by itself may not be useful context for the user. If the
# display name given was &#x27;priority&#x27;, then the user sees &#x27;priority : 1&#x27; in
# the search results which provides clear context to search users. This is
# OPTIONAL; if not given, only the property values are displayed.
# The maximum length is 64 characters.
},
&quot;timestampPropertyOptions&quot;: { # Options for timestamp properties.
&quot;operatorOptions&quot;: { # Used to provide a search operator for timestamp properties. This is # If set, describes how the timestamp should be used as a search operator.
# optional. Search operators let users restrict the query to specific fields
# relevant to the type of item being searched.
&quot;operatorName&quot;: &quot;A String&quot;, # Indicates the operator name required in the query in order to isolate the
# timestamp property. For example, if operatorName is *closedon* and the
# property&#x27;s name is *closeDate*, then queries like
# *closedon:&amp;lt;value&amp;gt;* show results only where the value of the
# property named *closeDate* matches *&amp;lt;value&amp;gt;*. By contrast, a
# search that uses the same *&amp;lt;value&amp;gt;* without an operator returns
# all items where *&amp;lt;value&amp;gt;* matches the value of any String
# properties or text within the content field for the item. The operator
# name can only contain lowercase letters (a-z). The maximum length is 32
# characters.
&quot;lessThanOperatorName&quot;: &quot;A String&quot;, # Indicates the operator name required in the query in order to isolate the
# timestamp property using the less-than operator. For example, if
# lessThanOperatorName is *closedbefore* and the property&#x27;s name is
# *closeDate*, then queries like *closedbefore:&amp;lt;value&amp;gt;*
# show results only where the value of the property named *closeDate* is
# earlier than *&amp;lt;value&amp;gt;*.
# The operator name can only contain lowercase letters (a-z).
# The maximum length is 32 characters.
&quot;greaterThanOperatorName&quot;: &quot;A String&quot;, # Indicates the operator name required in the query in order to isolate the
# timestamp property using the greater-than operator. For example, if
# greaterThanOperatorName is *closedafter* and the property&#x27;s name is
# *closeDate*, then queries like *closedafter:&amp;lt;value&amp;gt;*
# show results only where the value of the property named *closeDate* is
# later than *&amp;lt;value&amp;gt;*.
# The operator name can only contain lowercase letters (a-z).
# The maximum length is 32 characters.
},
},
&quot;isSuggestable&quot;: True or False, # Indicates that the property can be used for generating query suggestions.
&quot;objectPropertyOptions&quot;: { # Options for object properties.
&quot;subobjectProperties&quot;: [ # The properties of the sub-object. These properties represent a nested
# object. For example, if this property represents a postal address, the
# subobjectProperties might be named *street*, *city*, and *state*.
# The maximum number of elements is 1000.
# Object with schema name: PropertyDefinition
],
},
&quot;booleanPropertyOptions&quot;: { # Options for boolean properties.
&quot;operatorOptions&quot;: { # Used to provide a search operator for boolean properties. This is # If set, describes how the boolean should be used as a search operator.
# optional. Search operators let users restrict the query to specific fields
# relevant to the type of item being searched.
&quot;operatorName&quot;: &quot;A String&quot;, # Indicates the operator name required in the query in order to isolate the
# boolean property. For example, if operatorName is *closed* and the
# property&#x27;s name is *isClosed*, then queries like
# *closed:&amp;lt;value&amp;gt;* show results only where the value of the
# property named *isClosed* matches *&amp;lt;value&amp;gt;*. By contrast, a
# search that uses the same *&amp;lt;value&amp;gt;* without an operator returns
# all items where *&amp;lt;value&amp;gt;* matches the value of any
# String properties or text within the content field for the item.
# The operator name can only contain lowercase letters (a-z).
# The maximum length is 32 characters.
},
},
&quot;integerPropertyOptions&quot;: { # Options for integer properties.
&quot;orderedRanking&quot;: &quot;A String&quot;, # Used to specify the ordered ranking for the integer. Can only be used if
# isRepeatable
# is false.
&quot;operatorOptions&quot;: { # Used to provide a search operator for integer properties. This is # If set, describes how the integer should be used as a search operator.
# optional. Search operators let users restrict the query to specific fields
# relevant to the type of item being searched.
&quot;greaterThanOperatorName&quot;: &quot;A String&quot;, # Indicates the operator name required in the query in order to isolate the
# integer property using the greater-than operator. For example, if
# greaterThanOperatorName is *priorityabove* and the property&#x27;s name is
# *priorityVal*, then queries like *priorityabove:&amp;lt;value&amp;gt;*
# show results only where the value of the property named *priorityVal* is
# greater than *&amp;lt;value&amp;gt;*.
# The operator name can only contain lowercase letters (a-z).
# The maximum length is 32 characters.
&quot;lessThanOperatorName&quot;: &quot;A String&quot;, # Indicates the operator name required in the query in order to isolate the
# integer property using the less-than operator. For example, if
# lessThanOperatorName is *prioritybelow* and the property&#x27;s name is
# *priorityVal*, then queries like *prioritybelow:&amp;lt;value&amp;gt;*
# show results only where the value of the property named *priorityVal* is
# less than *&amp;lt;value&amp;gt;*.
# The operator name can only contain lowercase letters (a-z).
# The maximum length is 32 characters.
&quot;operatorName&quot;: &quot;A String&quot;, # Indicates the operator name required in the query in order to isolate the
# integer property. For example, if operatorName is *priority* and the
# property&#x27;s name is *priorityVal*, then queries like
# *priority:&amp;lt;value&amp;gt;* show results only where the value of the
# property named *priorityVal* matches *&amp;lt;value&amp;gt;*. By contrast, a
# search that uses the same *&amp;lt;value&amp;gt;* without an operator returns
# all items where *&amp;lt;value&amp;gt;* matches the value of any String
# properties or text within the content field for the item.
# The operator name can only contain lowercase letters (a-z).
# The maximum length is 32 characters.
},
&quot;minimumValue&quot;: &quot;A String&quot;, # The minimum value of the property. The minimum and maximum values for the
# property are used to rank results according to the
# ordered ranking.
# Indexing requests with values less than the minimum are accepted and
# ranked with the same weight as items indexed with the minimum value.
&quot;maximumValue&quot;: &quot;A String&quot;, # The maximum value of the property. The minimum and maximum values for the
# property are used to rank results according to the
# ordered ranking.
# Indexing requests with values greater than the maximum are accepted and
# ranked with the same weight as items indexed with the maximum value.
},
&quot;name&quot;: &quot;A String&quot;, # The name of the property. Item indexing requests sent to the Indexing API
# should set the property name
# equal to this value. For example, if name is *subject_line*, then indexing
# requests for document items with subject fields should set the
# name for that field equal to
# *subject_line*. Use the name as the identifier for the object property.
# Once registered as a property for an object, you cannot re-use this name
# for another property within that object.
# The name must start with a letter and can only contain letters (A-Z, a-z)
# or numbers (0-9).
# The maximum length is 256 characters.
&quot;isFacetable&quot;: True or False, # Indicates that the property can be used for generating facets. Cannot be
# true for properties whose type is object. IsReturnable must be true to set
# this option.
# Only supported for Boolean, Enum, and Text properties.
&quot;doublePropertyOptions&quot;: { # Options for double properties.
&quot;operatorOptions&quot;: { # Used to provide a search operator for double properties. This is # If set, describes how the double should be used as a search operator.
# optional. Search operators let users restrict the query to specific fields
# relevant to the type of item being searched.
&quot;operatorName&quot;: &quot;A String&quot;, # Indicates the operator name required in the query in order to use the
# double property in sorting or as a facet.
# The operator name can only contain lowercase letters (a-z).
# The maximum length is 32 characters.
},
},
&quot;isWildcardSearchable&quot;: True or False, # Indicates that users can perform wildcard search for this
# property. Only supported for Text properties. IsReturnable must be true to
# set this option. In a given datasource maximum of 5 properties can be
# marked as is_wildcard_searchable.
&quot;enumPropertyOptions&quot;: { # Options for enum properties, which allow you to define a restricted set of
# strings to match user queries, set rankings for those string values, and
# define an operator name to be paired with those strings so that users can
# narrow results to only items with a specific value. For example, for items in
# a request tracking system with priority information, you could define *p0* as
# an allowable enum value and tie this enum to the operator name *priority* so
# that search users could add *priority:p0* to their query to restrict the set
# of results to only those items indexed with the value *p0*.
&quot;operatorOptions&quot;: { # Used to provide a search operator for enum properties. This is # If set, describes how the enum should be used as a search operator.
# optional. Search operators let users restrict the query to specific fields
# relevant to the type of item being searched. For example, if you provide no
# operator for a *priority* enum property with possible values *p0* and *p1*,
# a query that contains the term *p0* returns items that have *p0* as the
# value of the *priority* property, as well as any items that contain the
# string *p0* in other fields. If you provide an operator name for the enum,
# such as *priority*, then search users can use that operator to refine
# results to only items that have *p0* as this property&#x27;s value, with the
# query *priority:p0*.
&quot;operatorName&quot;: &quot;A String&quot;, # Indicates the operator name required in the query in order to isolate the
# enum property. For example, if operatorName is *priority* and the
# property&#x27;s name is *priorityVal*, then queries like
# *priority:&amp;lt;value&amp;gt;* show results only where the value of the
# property named *priorityVal* matches *&amp;lt;value&amp;gt;*. By contrast, a
# search that uses the same *&amp;lt;value&amp;gt;* without an operator returns
# all items where *&amp;lt;value&amp;gt;* matches the value of any String
# properties or text within the content field for the item.
# The operator name can only contain lowercase letters (a-z).
# The maximum length is 32 characters.
},
&quot;orderedRanking&quot;: &quot;A String&quot;, # Used to specify the ordered ranking for the enumeration that determines how
# the integer values provided in the possible EnumValuePairs are used to rank
# results. If specified, integer values must be provided for all possible
# EnumValuePair values given for this property. Can only be used if
# isRepeatable
# is false.
&quot;possibleValues&quot;: [ # The list of possible values for the enumeration property. All
# EnumValuePairs must provide a string value. If you specify an integer value
# for one EnumValuePair, then all possible EnumValuePairs must provide an
# integer value. Both the string value and integer value must be unique over
# all possible values. Once set, possible values cannot be removed or
# modified. If you supply an ordered ranking and think you might insert
# additional enum values in the future, leave gaps in the initial integer
# values to allow adding a value in between previously registered values.
# The maximum number of elements is 100.
{ # The enumeration value pair defines two things: a required string value and
# an optional integer value. The string value defines the necessary query
# term required to retrieve that item, such as *p0* for a priority item.
# The integer value determines the ranking of that string value relative
# to other enumerated values for the same property. For example, you might
# associate *p0* with *0* and define another enum pair such as *p1* and *1*.
# You must use the integer value in combination with
# ordered
# ranking to
# set the ranking of a given value relative to other enumerated values for
# the same property name. Here, a ranking order of DESCENDING for *priority*
# properties results in a ranking boost for items indexed with a value of
# *p0* compared to items indexed with a value of *p1*. Without a specified
# ranking order, the integer value has no effect on item ranking.
&quot;integerValue&quot;: 42, # The integer value of the EnumValuePair which must be non-negative.
# Optional.
&quot;stringValue&quot;: &quot;A String&quot;, # The string value of the EnumValuePair.
# The maximum length is 32 characters.
},
],
},
&quot;isSortable&quot;: True or False, # Indicates that the property can be used for sorting. Cannot be true for
# properties that are repeatable. Cannot be true for properties whose type
# is object or user identifier. IsReturnable must be true to set this option.
# Only supported for Boolean, Date, Double, Integer, and Timestamp
# properties.
&quot;datePropertyOptions&quot;: { # Options for date properties.
&quot;operatorOptions&quot;: { # Optional. Provides a search operator for date properties. # If set, describes how the date should be used as a search operator.
# Search operators let users restrict the query to specific fields relevant
# to the type of item being searched.
&quot;lessThanOperatorName&quot;: &quot;A String&quot;, # Indicates the operator name required in the query in order to isolate the
# date property using the less-than operator. For example, if
# lessThanOperatorName is *closedbefore* and the property&#x27;s name is
# *closeDate*, then queries like *closedbefore:&amp;lt;value&amp;gt;*
# show results only where the value of the property named *closeDate* is
# earlier than *&amp;lt;value&amp;gt;*.
# The operator name can only contain lowercase letters (a-z).
# The maximum length is 32 characters.
&quot;greaterThanOperatorName&quot;: &quot;A String&quot;, # Indicates the operator name required in the query in order to isolate the
# date property using the greater-than operator. For example, if
# greaterThanOperatorName is *closedafter* and the property&#x27;s name is
# *closeDate*, then queries like *closedafter:&amp;lt;value&amp;gt;*
# show results only where the value of the property named *closeDate* is
# later than *&amp;lt;value&amp;gt;*.
# The operator name can only contain lowercase letters (a-z).
# The maximum length is 32 characters.
&quot;operatorName&quot;: &quot;A String&quot;, # Indicates the actual string required in the query in order to isolate the
# date property. For example, suppose an issue tracking schema object
# has a property named *closeDate* that specifies an operator with an
# operatorName of *closedon*. For searches on that data, queries like
# *closedon:&amp;lt;value&amp;gt;* show results only where the value of the
# *closeDate* property matches *&amp;lt;value&amp;gt;*. By contrast, a
# search that uses the same *&amp;lt;value&amp;gt;* without an operator returns
# all items where *&amp;lt;value&amp;gt;* matches the value of any String
# properties or text within the content field for the indexed datasource.
# The operator name can only contain lowercase letters (a-z).
# The maximum length is 32 characters.
},
},
},
],
&quot;name&quot;: &quot;A String&quot;, # Name for the object, which then defines its type. Item indexing requests
# should set the
# objectType field
# equal to this value. For example, if *name* is *Document*, then indexing
# requests for items of type Document should set
# objectType equal to
# *Document*. Each object definition must be uniquely named within a schema.
# The name must start with a letter and can only contain letters (A-Z, a-z)
# or numbers (0-9).
# The maximum length is 256 characters.
&quot;options&quot;: { # The options for an object. # The optional object-specific options.
&quot;freshnessOptions&quot;: { # Indicates which freshness property to use when adjusting search ranking for # The freshness options for an object.
# an item. Fresher, more recent dates indicate higher quality. Use the
# freshness option property that best works with your data. For fileshare
# documents, last modified time is most relevant. For calendar event data,
# the time when the event occurs is a more relevant freshness indicator. In
# this way, calendar events that occur closer to the time of the search query
# are considered higher quality and ranked accordingly.
&quot;freshnessProperty&quot;: &quot;A String&quot;, # This property indicates the freshness level of the object in the index.
# If set, this property must be a top-level property within the
# property definitions
# and it must be a
# timestamp type
# or
# date type.
# Otherwise, the Indexing API uses
# updateTime
# as the freshness indicator.
# The maximum length is 256 characters.
#
# When a property is used to calculate freshness, the value defaults
# to 2 years from the current time.
&quot;freshnessDuration&quot;: &quot;A String&quot;, # The duration after which an object should be considered
# stale. The default value is 180 days (in seconds).
},
&quot;displayOptions&quot;: { # The display options for an object. # Options that determine how the object is displayed in the Cloud Search
# results page.
&quot;metalines&quot;: [ # Defines the properties that are displayed in the metalines of the
# search results. The property values are displayed in the order given
# here. If a property holds multiple values, all of the values are
# displayed before the next properties. For this reason, it is a good
# practice to specify singular properties before repeated properties in this
# list. All of the properties must set
# is_returnable
# to true. The maximum number of metalines is 3.
{ # A metaline is a list of properties that are displayed along with the search
# result to provide context.
&quot;properties&quot;: [ # The list of displayed properties for the metaline. The maximum number of
# properties is 5.
{ # A reference to a top-level property within the object that should be
# displayed in search results. The values of the chosen properties is
# displayed in the search results along with the
# display label
# for that property if one is specified. If a display label is not specified,
# only the values is shown.
&quot;propertyName&quot;: &quot;A String&quot;, # The name of the top-level property as defined in a property definition
# for the object. If the name is not a defined property in the schema, an
# error is given when attempting to update the schema.
},
],
},
],
&quot;objectDisplayLabel&quot;: &quot;A String&quot;, # The user friendly label to display in the search result to indicate the
# type of the item. This is OPTIONAL; if not provided, an object label isn&#x27;t
# displayed on the context line of the search results. The maximum length
# is 64 characters.
},
},
},
],
},
&quot;validateOnly&quot;: True or False, # If true, the schema will be checked for validity,
# but will not be registered with the data source, even if valid.
&quot;debugOptions&quot;: { # Shared request debug options for all cloudsearch RPC methods. # Common debug options.
&quot;enableDebugging&quot;: 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.
&quot;response&quot;: { # 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`.
&quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
},
&quot;metadata&quot;: { # 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.
&quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
},
&quot;error&quot;: { # 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).
&quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of
# message types for APIs to use.
{
&quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
},
],
&quot;message&quot;: &quot;A String&quot;, # 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.
&quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
},
&quot;name&quot;: &quot;A String&quot;, # 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}`.
&quot;done&quot;: 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.
}</pre>
</div>
</body></html>