You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1626 lines
84 KiB
1626 lines
84 KiB
<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="pubsub_v1.html">Cloud Pub/Sub API</a> . <a href="pubsub_v1.projects.html">projects</a> . <a href="pubsub_v1.projects.subscriptions.html">subscriptions</a></h1>
|
|
<h2>Instance Methods</h2>
|
|
<p class="toc_element">
|
|
<code><a href="#acknowledge">acknowledge(subscription, body, x__xgafv=None)</a></code></p>
|
|
<p class="firstline">Acknowledges the messages associated with the `ack_ids` in the</p>
|
|
<p class="toc_element">
|
|
<code><a href="#create">create(name, body, x__xgafv=None)</a></code></p>
|
|
<p class="firstline">Creates a subscription to a given topic. See the</p>
|
|
<p class="toc_element">
|
|
<code><a href="#delete">delete(subscription, x__xgafv=None)</a></code></p>
|
|
<p class="firstline">Deletes an existing subscription. All messages retained in the subscription</p>
|
|
<p class="toc_element">
|
|
<code><a href="#get">get(subscription, x__xgafv=None)</a></code></p>
|
|
<p class="firstline">Gets the configuration details of a subscription.</p>
|
|
<p class="toc_element">
|
|
<code><a href="#getIamPolicy">getIamPolicy(resource, x__xgafv=None)</a></code></p>
|
|
<p class="firstline">Gets the access control policy for a resource.</p>
|
|
<p class="toc_element">
|
|
<code><a href="#list">list(project, pageSize=None, pageToken=None, x__xgafv=None)</a></code></p>
|
|
<p class="firstline">Lists matching subscriptions.</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="#modifyAckDeadline">modifyAckDeadline(subscription, body, x__xgafv=None)</a></code></p>
|
|
<p class="firstline">Modifies the ack deadline for a specific message. This method is useful</p>
|
|
<p class="toc_element">
|
|
<code><a href="#modifyPushConfig">modifyPushConfig(subscription, body, x__xgafv=None)</a></code></p>
|
|
<p class="firstline">Modifies the `PushConfig` for a specified subscription.</p>
|
|
<p class="toc_element">
|
|
<code><a href="#patch">patch(name, body, x__xgafv=None)</a></code></p>
|
|
<p class="firstline">Updates an existing subscription. Note that certain properties of a</p>
|
|
<p class="toc_element">
|
|
<code><a href="#pull">pull(subscription, body, x__xgafv=None)</a></code></p>
|
|
<p class="firstline">Pulls messages from the server. The server may return `UNAVAILABLE` if</p>
|
|
<p class="toc_element">
|
|
<code><a href="#seek">seek(subscription, body, x__xgafv=None)</a></code></p>
|
|
<p class="firstline">Seeks an existing subscription to a point in time or to a given snapshot,</p>
|
|
<p class="toc_element">
|
|
<code><a href="#setIamPolicy">setIamPolicy(resource, body, x__xgafv=None)</a></code></p>
|
|
<p class="firstline">Sets the access control policy on the specified resource. Replaces any</p>
|
|
<p class="toc_element">
|
|
<code><a href="#testIamPermissions">testIamPermissions(resource, body, x__xgafv=None)</a></code></p>
|
|
<p class="firstline">Returns permissions that a caller has on the specified resource.</p>
|
|
<h3>Method Details</h3>
|
|
<div class="method">
|
|
<code class="details" id="acknowledge">acknowledge(subscription, body, x__xgafv=None)</code>
|
|
<pre>Acknowledges the messages associated with the `ack_ids` in the
|
|
`AcknowledgeRequest`. The Pub/Sub system can remove the relevant messages
|
|
from the subscription.
|
|
|
|
Acknowledging a message whose ack deadline has expired may succeed,
|
|
but such a message may be redelivered later. Acknowledging a message more
|
|
than once will not result in an error.
|
|
|
|
Args:
|
|
subscription: string, The subscription whose message is being acknowledged.
|
|
Format is `projects/{project}/subscriptions/{sub}`. (required)
|
|
body: object, The request body. (required)
|
|
The object takes the form of:
|
|
|
|
{ # Request for the Acknowledge method.
|
|
"ackIds": [ # The acknowledgment ID for the messages being acknowledged that was returned
|
|
# by the Pub/Sub system in the `Pull` response. Must not be empty.
|
|
"A String",
|
|
],
|
|
}
|
|
|
|
x__xgafv: string, V1 error format.
|
|
Allowed values
|
|
1 - v1 error format
|
|
2 - v2 error format
|
|
|
|
Returns:
|
|
An object of the form:
|
|
|
|
{ # A generic empty message that you can re-use to avoid defining duplicated
|
|
# empty messages in your APIs. A typical example is to use it as the request
|
|
# or the response type of an API method. For instance:
|
|
#
|
|
# service Foo {
|
|
# rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
|
|
# }
|
|
#
|
|
# The JSON representation for `Empty` is empty JSON object `{}`.
|
|
}</pre>
|
|
</div>
|
|
|
|
<div class="method">
|
|
<code class="details" id="create">create(name, body, x__xgafv=None)</code>
|
|
<pre>Creates a subscription to a given topic. See the
|
|
<a href="https://cloud.google.com/pubsub/docs/admin#resource_names">
|
|
resource name rules</a>.
|
|
If the subscription already exists, returns `ALREADY_EXISTS`.
|
|
If the corresponding topic doesn't exist, returns `NOT_FOUND`.
|
|
|
|
If the name is not provided in the request, the server will assign a random
|
|
name for this subscription on the same project as the topic, conforming
|
|
to the
|
|
[resource name
|
|
format](https://cloud.google.com/pubsub/docs/admin#resource_names). The
|
|
generated name is populated in the returned Subscription object. Note that
|
|
for REST API requests, you must specify a name in the request.
|
|
|
|
Args:
|
|
name: string, The name of the subscription. It must have the format
|
|
`"projects/{project}/subscriptions/{subscription}"`. `{subscription}` must
|
|
start with a letter, and contain only letters (`[A-Za-z]`), numbers
|
|
(`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),
|
|
plus (`+`) or percent signs (`%`). It must be between 3 and 255 characters
|
|
in length, and it must not start with `"goog"`. (required)
|
|
body: object, The request body. (required)
|
|
The object takes the form of:
|
|
|
|
{ # A subscription resource.
|
|
"name": "A String", # The name of the subscription. It must have the format
|
|
# `"projects/{project}/subscriptions/{subscription}"`. `{subscription}` must
|
|
# start with a letter, and contain only letters (`[A-Za-z]`), numbers
|
|
# (`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),
|
|
# plus (`+`) or percent signs (`%`). It must be between 3 and 255 characters
|
|
# in length, and it must not start with `"goog"`.
|
|
"ackDeadlineSeconds": 42, # The approximate amount of time (on a best-effort basis) Pub/Sub waits for
|
|
# the subscriber to acknowledge receipt before resending the message. In the
|
|
# interval after the message is delivered and before it is acknowledged, it
|
|
# is considered to be <i>outstanding</i>. During that time period, the
|
|
# message will not be redelivered (on a best-effort basis).
|
|
#
|
|
# For pull subscriptions, this value is used as the initial value for the ack
|
|
# deadline. To override this value for a given message, call
|
|
# `ModifyAckDeadline` with the corresponding `ack_id` if using
|
|
# non-streaming pull or send the `ack_id` in a
|
|
# `StreamingModifyAckDeadlineRequest` if using streaming pull.
|
|
# The minimum custom deadline you can specify is 10 seconds.
|
|
# The maximum custom deadline you can specify is 600 seconds (10 minutes).
|
|
# If this parameter is 0, a default value of 10 seconds is used.
|
|
#
|
|
# For push delivery, this value is also used to set the request timeout for
|
|
# the call to the push endpoint.
|
|
#
|
|
# If the subscriber never acknowledges the message, the Pub/Sub
|
|
# system will eventually redeliver the message.
|
|
"labels": { # See <a href="https://cloud.google.com/pubsub/docs/labels"> Creating and
|
|
# managing labels</a>.
|
|
"a_key": "A String",
|
|
},
|
|
"pushConfig": { # Configuration for a push delivery endpoint. # If push delivery is used with this subscription, this field is
|
|
# used to configure it. An empty `pushConfig` signifies that the subscriber
|
|
# will pull and ack messages using API methods.
|
|
"attributes": { # Endpoint configuration attributes.
|
|
#
|
|
# Every endpoint has a set of API supported attributes that can be used to
|
|
# control different aspects of the message delivery.
|
|
#
|
|
# The currently supported attribute is `x-goog-version`, which you can
|
|
# use to change the format of the pushed message. This attribute
|
|
# indicates the version of the data expected by the endpoint. This
|
|
# controls the shape of the pushed message (i.e., its fields and metadata).
|
|
# The endpoint version is based on the version of the Pub/Sub API.
|
|
#
|
|
# If not present during the `CreateSubscription` call, it will default to
|
|
# the version of the API used to make such call. If not present during a
|
|
# `ModifyPushConfig` call, its value will not be changed. `GetSubscription`
|
|
# calls will always return a valid version, even if the subscription was
|
|
# created without this attribute.
|
|
#
|
|
# The possible values for this attribute are:
|
|
#
|
|
# * `v1beta1`: uses the push format defined in the v1beta1 Pub/Sub API.
|
|
# * `v1` or `v1beta2`: uses the push format defined in the v1 Pub/Sub API.
|
|
"a_key": "A String",
|
|
},
|
|
"oidcToken": { # Contains information needed for generating an # If specified, Pub/Sub will generate and attach an OIDC JWT token as an
|
|
# `Authorization` header in the HTTP request for every pushed message.
|
|
# [OpenID Connect
|
|
# token](https://developers.google.com/identity/protocols/OpenIDConnect).
|
|
"audience": "A String", # Audience to be used when generating OIDC token. The audience claim
|
|
# identifies the recipients that the JWT is intended for. The audience
|
|
# value is a single case-sensitive string. Having multiple values (array)
|
|
# for the audience field is not supported. More info about the OIDC JWT
|
|
# token audience here: https://tools.ietf.org/html/rfc7519#section-4.1.3
|
|
# Note: if not specified, the Push endpoint URL will be used.
|
|
"serviceAccountEmail": "A String", # [Service account
|
|
# email](https://cloud.google.com/iam/docs/service-accounts)
|
|
# to be used for generating the OIDC token. The caller (for
|
|
# CreateSubscription, UpdateSubscription, and ModifyPushConfig RPCs) must
|
|
# have the iam.serviceAccounts.actAs permission for the service account.
|
|
},
|
|
"pushEndpoint": "A String", # A URL locating the endpoint to which messages should be pushed.
|
|
# For example, a Webhook endpoint might use "https://example.com/push".
|
|
},
|
|
"topic": "A String", # The name of the topic from which this subscription is receiving messages.
|
|
# Format is `projects/{project}/topics/{topic}`.
|
|
# The value of this field will be `_deleted-topic_` if the topic has been
|
|
# deleted.
|
|
"messageRetentionDuration": "A String", # How long to retain unacknowledged messages in the subscription's backlog,
|
|
# from the moment a message is published.
|
|
# If `retain_acked_messages` is true, then this also configures the retention
|
|
# of acknowledged messages, and thus configures how far back in time a `Seek`
|
|
# can be done. Defaults to 7 days. Cannot be more than 7 days or less than 10
|
|
# minutes.
|
|
"retainAckedMessages": True or False, # Indicates whether to retain acknowledged messages. If true, then
|
|
# messages are not expunged from the subscription's backlog, even if they are
|
|
# acknowledged, until they fall out of the `message_retention_duration`
|
|
# window. This must be true if you would like to
|
|
# <a
|
|
# href="https://cloud.google.com/pubsub/docs/replay-overview#seek_to_a_time">
|
|
# Seek to a timestamp</a>.
|
|
"expirationPolicy": { # A policy that specifies the conditions for resource expiration (i.e., # A policy that specifies the conditions for this subscription's expiration.
|
|
# A subscription is considered active as long as any connected subscriber is
|
|
# successfully consuming messages from the subscription or is issuing
|
|
# operations on the subscription. If `expiration_policy` is not set, a
|
|
# *default policy* with `ttl` of 31 days will be used. The minimum allowed
|
|
# value for `expiration_policy.ttl` is 1 day.
|
|
# automatic resource deletion).
|
|
"ttl": "A String", # Specifies the "time-to-live" duration for an associated resource. The
|
|
# resource expires if it is not active for a period of `ttl`. The definition
|
|
# of "activity" depends on the type of the associated resource. The minimum
|
|
# and maximum allowed values for `ttl` depend on the type of the associated
|
|
# resource, as well. If `ttl` is not set, the associated resource never
|
|
# expires.
|
|
},
|
|
}
|
|
|
|
x__xgafv: string, V1 error format.
|
|
Allowed values
|
|
1 - v1 error format
|
|
2 - v2 error format
|
|
|
|
Returns:
|
|
An object of the form:
|
|
|
|
{ # A subscription resource.
|
|
"name": "A String", # The name of the subscription. It must have the format
|
|
# `"projects/{project}/subscriptions/{subscription}"`. `{subscription}` must
|
|
# start with a letter, and contain only letters (`[A-Za-z]`), numbers
|
|
# (`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),
|
|
# plus (`+`) or percent signs (`%`). It must be between 3 and 255 characters
|
|
# in length, and it must not start with `"goog"`.
|
|
"ackDeadlineSeconds": 42, # The approximate amount of time (on a best-effort basis) Pub/Sub waits for
|
|
# the subscriber to acknowledge receipt before resending the message. In the
|
|
# interval after the message is delivered and before it is acknowledged, it
|
|
# is considered to be <i>outstanding</i>. During that time period, the
|
|
# message will not be redelivered (on a best-effort basis).
|
|
#
|
|
# For pull subscriptions, this value is used as the initial value for the ack
|
|
# deadline. To override this value for a given message, call
|
|
# `ModifyAckDeadline` with the corresponding `ack_id` if using
|
|
# non-streaming pull or send the `ack_id` in a
|
|
# `StreamingModifyAckDeadlineRequest` if using streaming pull.
|
|
# The minimum custom deadline you can specify is 10 seconds.
|
|
# The maximum custom deadline you can specify is 600 seconds (10 minutes).
|
|
# If this parameter is 0, a default value of 10 seconds is used.
|
|
#
|
|
# For push delivery, this value is also used to set the request timeout for
|
|
# the call to the push endpoint.
|
|
#
|
|
# If the subscriber never acknowledges the message, the Pub/Sub
|
|
# system will eventually redeliver the message.
|
|
"labels": { # See <a href="https://cloud.google.com/pubsub/docs/labels"> Creating and
|
|
# managing labels</a>.
|
|
"a_key": "A String",
|
|
},
|
|
"pushConfig": { # Configuration for a push delivery endpoint. # If push delivery is used with this subscription, this field is
|
|
# used to configure it. An empty `pushConfig` signifies that the subscriber
|
|
# will pull and ack messages using API methods.
|
|
"attributes": { # Endpoint configuration attributes.
|
|
#
|
|
# Every endpoint has a set of API supported attributes that can be used to
|
|
# control different aspects of the message delivery.
|
|
#
|
|
# The currently supported attribute is `x-goog-version`, which you can
|
|
# use to change the format of the pushed message. This attribute
|
|
# indicates the version of the data expected by the endpoint. This
|
|
# controls the shape of the pushed message (i.e., its fields and metadata).
|
|
# The endpoint version is based on the version of the Pub/Sub API.
|
|
#
|
|
# If not present during the `CreateSubscription` call, it will default to
|
|
# the version of the API used to make such call. If not present during a
|
|
# `ModifyPushConfig` call, its value will not be changed. `GetSubscription`
|
|
# calls will always return a valid version, even if the subscription was
|
|
# created without this attribute.
|
|
#
|
|
# The possible values for this attribute are:
|
|
#
|
|
# * `v1beta1`: uses the push format defined in the v1beta1 Pub/Sub API.
|
|
# * `v1` or `v1beta2`: uses the push format defined in the v1 Pub/Sub API.
|
|
"a_key": "A String",
|
|
},
|
|
"oidcToken": { # Contains information needed for generating an # If specified, Pub/Sub will generate and attach an OIDC JWT token as an
|
|
# `Authorization` header in the HTTP request for every pushed message.
|
|
# [OpenID Connect
|
|
# token](https://developers.google.com/identity/protocols/OpenIDConnect).
|
|
"audience": "A String", # Audience to be used when generating OIDC token. The audience claim
|
|
# identifies the recipients that the JWT is intended for. The audience
|
|
# value is a single case-sensitive string. Having multiple values (array)
|
|
# for the audience field is not supported. More info about the OIDC JWT
|
|
# token audience here: https://tools.ietf.org/html/rfc7519#section-4.1.3
|
|
# Note: if not specified, the Push endpoint URL will be used.
|
|
"serviceAccountEmail": "A String", # [Service account
|
|
# email](https://cloud.google.com/iam/docs/service-accounts)
|
|
# to be used for generating the OIDC token. The caller (for
|
|
# CreateSubscription, UpdateSubscription, and ModifyPushConfig RPCs) must
|
|
# have the iam.serviceAccounts.actAs permission for the service account.
|
|
},
|
|
"pushEndpoint": "A String", # A URL locating the endpoint to which messages should be pushed.
|
|
# For example, a Webhook endpoint might use "https://example.com/push".
|
|
},
|
|
"topic": "A String", # The name of the topic from which this subscription is receiving messages.
|
|
# Format is `projects/{project}/topics/{topic}`.
|
|
# The value of this field will be `_deleted-topic_` if the topic has been
|
|
# deleted.
|
|
"messageRetentionDuration": "A String", # How long to retain unacknowledged messages in the subscription's backlog,
|
|
# from the moment a message is published.
|
|
# If `retain_acked_messages` is true, then this also configures the retention
|
|
# of acknowledged messages, and thus configures how far back in time a `Seek`
|
|
# can be done. Defaults to 7 days. Cannot be more than 7 days or less than 10
|
|
# minutes.
|
|
"retainAckedMessages": True or False, # Indicates whether to retain acknowledged messages. If true, then
|
|
# messages are not expunged from the subscription's backlog, even if they are
|
|
# acknowledged, until they fall out of the `message_retention_duration`
|
|
# window. This must be true if you would like to
|
|
# <a
|
|
# href="https://cloud.google.com/pubsub/docs/replay-overview#seek_to_a_time">
|
|
# Seek to a timestamp</a>.
|
|
"expirationPolicy": { # A policy that specifies the conditions for resource expiration (i.e., # A policy that specifies the conditions for this subscription's expiration.
|
|
# A subscription is considered active as long as any connected subscriber is
|
|
# successfully consuming messages from the subscription or is issuing
|
|
# operations on the subscription. If `expiration_policy` is not set, a
|
|
# *default policy* with `ttl` of 31 days will be used. The minimum allowed
|
|
# value for `expiration_policy.ttl` is 1 day.
|
|
# automatic resource deletion).
|
|
"ttl": "A String", # Specifies the "time-to-live" duration for an associated resource. The
|
|
# resource expires if it is not active for a period of `ttl`. The definition
|
|
# of "activity" depends on the type of the associated resource. The minimum
|
|
# and maximum allowed values for `ttl` depend on the type of the associated
|
|
# resource, as well. If `ttl` is not set, the associated resource never
|
|
# expires.
|
|
},
|
|
}</pre>
|
|
</div>
|
|
|
|
<div class="method">
|
|
<code class="details" id="delete">delete(subscription, x__xgafv=None)</code>
|
|
<pre>Deletes an existing subscription. All messages retained in the subscription
|
|
are immediately dropped. Calls to `Pull` after deletion will return
|
|
`NOT_FOUND`. After a subscription is deleted, a new one may be created with
|
|
the same name, but the new one has no association with the old
|
|
subscription or its topic unless the same topic is specified.
|
|
|
|
Args:
|
|
subscription: string, The subscription to delete.
|
|
Format is `projects/{project}/subscriptions/{sub}`. (required)
|
|
x__xgafv: string, V1 error format.
|
|
Allowed values
|
|
1 - v1 error format
|
|
2 - v2 error format
|
|
|
|
Returns:
|
|
An object of the form:
|
|
|
|
{ # A generic empty message that you can re-use to avoid defining duplicated
|
|
# empty messages in your APIs. A typical example is to use it as the request
|
|
# or the response type of an API method. For instance:
|
|
#
|
|
# service Foo {
|
|
# rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
|
|
# }
|
|
#
|
|
# The JSON representation for `Empty` is empty JSON object `{}`.
|
|
}</pre>
|
|
</div>
|
|
|
|
<div class="method">
|
|
<code class="details" id="get">get(subscription, x__xgafv=None)</code>
|
|
<pre>Gets the configuration details of a subscription.
|
|
|
|
Args:
|
|
subscription: string, The name of the subscription to get.
|
|
Format is `projects/{project}/subscriptions/{sub}`. (required)
|
|
x__xgafv: string, V1 error format.
|
|
Allowed values
|
|
1 - v1 error format
|
|
2 - v2 error format
|
|
|
|
Returns:
|
|
An object of the form:
|
|
|
|
{ # A subscription resource.
|
|
"name": "A String", # The name of the subscription. It must have the format
|
|
# `"projects/{project}/subscriptions/{subscription}"`. `{subscription}` must
|
|
# start with a letter, and contain only letters (`[A-Za-z]`), numbers
|
|
# (`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),
|
|
# plus (`+`) or percent signs (`%`). It must be between 3 and 255 characters
|
|
# in length, and it must not start with `"goog"`.
|
|
"ackDeadlineSeconds": 42, # The approximate amount of time (on a best-effort basis) Pub/Sub waits for
|
|
# the subscriber to acknowledge receipt before resending the message. In the
|
|
# interval after the message is delivered and before it is acknowledged, it
|
|
# is considered to be <i>outstanding</i>. During that time period, the
|
|
# message will not be redelivered (on a best-effort basis).
|
|
#
|
|
# For pull subscriptions, this value is used as the initial value for the ack
|
|
# deadline. To override this value for a given message, call
|
|
# `ModifyAckDeadline` with the corresponding `ack_id` if using
|
|
# non-streaming pull or send the `ack_id` in a
|
|
# `StreamingModifyAckDeadlineRequest` if using streaming pull.
|
|
# The minimum custom deadline you can specify is 10 seconds.
|
|
# The maximum custom deadline you can specify is 600 seconds (10 minutes).
|
|
# If this parameter is 0, a default value of 10 seconds is used.
|
|
#
|
|
# For push delivery, this value is also used to set the request timeout for
|
|
# the call to the push endpoint.
|
|
#
|
|
# If the subscriber never acknowledges the message, the Pub/Sub
|
|
# system will eventually redeliver the message.
|
|
"labels": { # See <a href="https://cloud.google.com/pubsub/docs/labels"> Creating and
|
|
# managing labels</a>.
|
|
"a_key": "A String",
|
|
},
|
|
"pushConfig": { # Configuration for a push delivery endpoint. # If push delivery is used with this subscription, this field is
|
|
# used to configure it. An empty `pushConfig` signifies that the subscriber
|
|
# will pull and ack messages using API methods.
|
|
"attributes": { # Endpoint configuration attributes.
|
|
#
|
|
# Every endpoint has a set of API supported attributes that can be used to
|
|
# control different aspects of the message delivery.
|
|
#
|
|
# The currently supported attribute is `x-goog-version`, which you can
|
|
# use to change the format of the pushed message. This attribute
|
|
# indicates the version of the data expected by the endpoint. This
|
|
# controls the shape of the pushed message (i.e., its fields and metadata).
|
|
# The endpoint version is based on the version of the Pub/Sub API.
|
|
#
|
|
# If not present during the `CreateSubscription` call, it will default to
|
|
# the version of the API used to make such call. If not present during a
|
|
# `ModifyPushConfig` call, its value will not be changed. `GetSubscription`
|
|
# calls will always return a valid version, even if the subscription was
|
|
# created without this attribute.
|
|
#
|
|
# The possible values for this attribute are:
|
|
#
|
|
# * `v1beta1`: uses the push format defined in the v1beta1 Pub/Sub API.
|
|
# * `v1` or `v1beta2`: uses the push format defined in the v1 Pub/Sub API.
|
|
"a_key": "A String",
|
|
},
|
|
"oidcToken": { # Contains information needed for generating an # If specified, Pub/Sub will generate and attach an OIDC JWT token as an
|
|
# `Authorization` header in the HTTP request for every pushed message.
|
|
# [OpenID Connect
|
|
# token](https://developers.google.com/identity/protocols/OpenIDConnect).
|
|
"audience": "A String", # Audience to be used when generating OIDC token. The audience claim
|
|
# identifies the recipients that the JWT is intended for. The audience
|
|
# value is a single case-sensitive string. Having multiple values (array)
|
|
# for the audience field is not supported. More info about the OIDC JWT
|
|
# token audience here: https://tools.ietf.org/html/rfc7519#section-4.1.3
|
|
# Note: if not specified, the Push endpoint URL will be used.
|
|
"serviceAccountEmail": "A String", # [Service account
|
|
# email](https://cloud.google.com/iam/docs/service-accounts)
|
|
# to be used for generating the OIDC token. The caller (for
|
|
# CreateSubscription, UpdateSubscription, and ModifyPushConfig RPCs) must
|
|
# have the iam.serviceAccounts.actAs permission for the service account.
|
|
},
|
|
"pushEndpoint": "A String", # A URL locating the endpoint to which messages should be pushed.
|
|
# For example, a Webhook endpoint might use "https://example.com/push".
|
|
},
|
|
"topic": "A String", # The name of the topic from which this subscription is receiving messages.
|
|
# Format is `projects/{project}/topics/{topic}`.
|
|
# The value of this field will be `_deleted-topic_` if the topic has been
|
|
# deleted.
|
|
"messageRetentionDuration": "A String", # How long to retain unacknowledged messages in the subscription's backlog,
|
|
# from the moment a message is published.
|
|
# If `retain_acked_messages` is true, then this also configures the retention
|
|
# of acknowledged messages, and thus configures how far back in time a `Seek`
|
|
# can be done. Defaults to 7 days. Cannot be more than 7 days or less than 10
|
|
# minutes.
|
|
"retainAckedMessages": True or False, # Indicates whether to retain acknowledged messages. If true, then
|
|
# messages are not expunged from the subscription's backlog, even if they are
|
|
# acknowledged, until they fall out of the `message_retention_duration`
|
|
# window. This must be true if you would like to
|
|
# <a
|
|
# href="https://cloud.google.com/pubsub/docs/replay-overview#seek_to_a_time">
|
|
# Seek to a timestamp</a>.
|
|
"expirationPolicy": { # A policy that specifies the conditions for resource expiration (i.e., # A policy that specifies the conditions for this subscription's expiration.
|
|
# A subscription is considered active as long as any connected subscriber is
|
|
# successfully consuming messages from the subscription or is issuing
|
|
# operations on the subscription. If `expiration_policy` is not set, a
|
|
# *default policy* with `ttl` of 31 days will be used. The minimum allowed
|
|
# value for `expiration_policy.ttl` is 1 day.
|
|
# automatic resource deletion).
|
|
"ttl": "A String", # Specifies the "time-to-live" duration for an associated resource. The
|
|
# resource expires if it is not active for a period of `ttl`. The definition
|
|
# of "activity" depends on the type of the associated resource. The minimum
|
|
# and maximum allowed values for `ttl` depend on the type of the associated
|
|
# resource, as well. If `ttl` is not set, the associated resource never
|
|
# expires.
|
|
},
|
|
}</pre>
|
|
</div>
|
|
|
|
<div class="method">
|
|
<code class="details" id="getIamPolicy">getIamPolicy(resource, x__xgafv=None)</code>
|
|
<pre>Gets the access control policy for a resource.
|
|
Returns an empty policy if the resource exists and does not have a policy
|
|
set.
|
|
|
|
Args:
|
|
resource: string, REQUIRED: The resource for which the policy is being requested.
|
|
See the operation documentation for the appropriate value for this field. (required)
|
|
x__xgafv: string, V1 error format.
|
|
Allowed values
|
|
1 - v1 error format
|
|
2 - v2 error format
|
|
|
|
Returns:
|
|
An object of the form:
|
|
|
|
{ # Defines an Identity and Access Management (IAM) policy. It is used to
|
|
# specify access control policies for Cloud Platform resources.
|
|
#
|
|
#
|
|
# A `Policy` consists of a list of `bindings`. A `binding` binds a list of
|
|
# `members` to a `role`, where the members can be user accounts, Google groups,
|
|
# Google domains, and service accounts. A `role` is a named list of permissions
|
|
# defined by IAM.
|
|
#
|
|
# **JSON Example**
|
|
#
|
|
# {
|
|
# "bindings": [
|
|
# {
|
|
# "role": "roles/owner",
|
|
# "members": [
|
|
# "user:mike@example.com",
|
|
# "group:admins@example.com",
|
|
# "domain:google.com",
|
|
# "serviceAccount:my-other-app@appspot.gserviceaccount.com"
|
|
# ]
|
|
# },
|
|
# {
|
|
# "role": "roles/viewer",
|
|
# "members": ["user:sean@example.com"]
|
|
# }
|
|
# ]
|
|
# }
|
|
#
|
|
# **YAML Example**
|
|
#
|
|
# bindings:
|
|
# - members:
|
|
# - user:mike@example.com
|
|
# - group:admins@example.com
|
|
# - domain:google.com
|
|
# - serviceAccount:my-other-app@appspot.gserviceaccount.com
|
|
# role: roles/owner
|
|
# - members:
|
|
# - user:sean@example.com
|
|
# role: roles/viewer
|
|
#
|
|
#
|
|
# For a description of IAM and its features, see the
|
|
# [IAM developer's guide](https://cloud.google.com/iam/docs).
|
|
"bindings": [ # Associates a list of `members` to a `role`.
|
|
# `bindings` with no members will result in an error.
|
|
{ # Associates `members` with a `role`.
|
|
"role": "A String", # Role that is assigned to `members`.
|
|
# For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
|
|
"members": [ # Specifies the identities requesting access for a Cloud Platform resource.
|
|
# `members` can have the following values:
|
|
#
|
|
# * `allUsers`: A special identifier that represents anyone who is
|
|
# on the internet; with or without a Google account.
|
|
#
|
|
# * `allAuthenticatedUsers`: A special identifier that represents anyone
|
|
# who is authenticated with a Google account or a service account.
|
|
#
|
|
# * `user:{emailid}`: An email address that represents a specific Google
|
|
# account. For example, `alice@gmail.com` .
|
|
#
|
|
#
|
|
# * `serviceAccount:{emailid}`: An email address that represents a service
|
|
# account. For example, `my-other-app@appspot.gserviceaccount.com`.
|
|
#
|
|
# * `group:{emailid}`: An email address that represents a Google group.
|
|
# For example, `admins@example.com`.
|
|
#
|
|
#
|
|
# * `domain:{domain}`: The G Suite domain (primary) that represents all the
|
|
# users of that domain. For example, `google.com` or `example.com`.
|
|
#
|
|
"A String",
|
|
],
|
|
"condition": { # Represents an expression text. Example: # The condition that is associated with this binding.
|
|
# NOTE: An unsatisfied condition will not allow user access via current
|
|
# binding. Different bindings, including their conditions, are examined
|
|
# independently.
|
|
#
|
|
# title: "User account presence"
|
|
# description: "Determines whether the request has a user account"
|
|
# expression: "size(request.user) > 0"
|
|
"location": "A String", # An optional string indicating the location of the expression for error
|
|
# reporting, e.g. a file name and a position in the file.
|
|
"expression": "A String", # Textual representation of an expression in
|
|
# Common Expression Language syntax.
|
|
#
|
|
# The application context of the containing message determines which
|
|
# well-known feature set of CEL is supported.
|
|
"description": "A String", # An optional description of the expression. This is a longer text which
|
|
# describes the expression, e.g. when hovered over it in a UI.
|
|
"title": "A String", # An optional title for the expression, i.e. a short string describing
|
|
# its purpose. This can be used e.g. in UIs which allow to enter the
|
|
# expression.
|
|
},
|
|
},
|
|
],
|
|
"version": 42, # Deprecated.
|
|
"etag": "A String", # `etag` is used for optimistic concurrency control as a way to help
|
|
# prevent simultaneous updates of a policy from overwriting each other.
|
|
# It is strongly suggested that systems make use of the `etag` in the
|
|
# read-modify-write cycle to perform policy updates in order to avoid race
|
|
# conditions: An `etag` is returned in the response to `getIamPolicy`, and
|
|
# systems are expected to put that etag in the request to `setIamPolicy` to
|
|
# ensure that their change will be applied to the same version of the policy.
|
|
#
|
|
# If no `etag` is provided in the call to `setIamPolicy`, then the existing
|
|
# policy is overwritten blindly.
|
|
}</pre>
|
|
</div>
|
|
|
|
<div class="method">
|
|
<code class="details" id="list">list(project, pageSize=None, pageToken=None, x__xgafv=None)</code>
|
|
<pre>Lists matching subscriptions.
|
|
|
|
Args:
|
|
project: string, The name of the project in which to list subscriptions.
|
|
Format is `projects/{project-id}`. (required)
|
|
pageSize: integer, Maximum number of subscriptions to return.
|
|
pageToken: string, The value returned by the last `ListSubscriptionsResponse`; indicates that
|
|
this is a continuation of a prior `ListSubscriptions` call, and that the
|
|
system should return the next page of data.
|
|
x__xgafv: string, V1 error format.
|
|
Allowed values
|
|
1 - v1 error format
|
|
2 - v2 error format
|
|
|
|
Returns:
|
|
An object of the form:
|
|
|
|
{ # Response for the `ListSubscriptions` method.
|
|
"nextPageToken": "A String", # If not empty, indicates that there may be more subscriptions that match
|
|
# the request; this value should be passed in a new
|
|
# `ListSubscriptionsRequest` to get more subscriptions.
|
|
"subscriptions": [ # The subscriptions that match the request.
|
|
{ # A subscription resource.
|
|
"name": "A String", # The name of the subscription. It must have the format
|
|
# `"projects/{project}/subscriptions/{subscription}"`. `{subscription}` must
|
|
# start with a letter, and contain only letters (`[A-Za-z]`), numbers
|
|
# (`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),
|
|
# plus (`+`) or percent signs (`%`). It must be between 3 and 255 characters
|
|
# in length, and it must not start with `"goog"`.
|
|
"ackDeadlineSeconds": 42, # The approximate amount of time (on a best-effort basis) Pub/Sub waits for
|
|
# the subscriber to acknowledge receipt before resending the message. In the
|
|
# interval after the message is delivered and before it is acknowledged, it
|
|
# is considered to be <i>outstanding</i>. During that time period, the
|
|
# message will not be redelivered (on a best-effort basis).
|
|
#
|
|
# For pull subscriptions, this value is used as the initial value for the ack
|
|
# deadline. To override this value for a given message, call
|
|
# `ModifyAckDeadline` with the corresponding `ack_id` if using
|
|
# non-streaming pull or send the `ack_id` in a
|
|
# `StreamingModifyAckDeadlineRequest` if using streaming pull.
|
|
# The minimum custom deadline you can specify is 10 seconds.
|
|
# The maximum custom deadline you can specify is 600 seconds (10 minutes).
|
|
# If this parameter is 0, a default value of 10 seconds is used.
|
|
#
|
|
# For push delivery, this value is also used to set the request timeout for
|
|
# the call to the push endpoint.
|
|
#
|
|
# If the subscriber never acknowledges the message, the Pub/Sub
|
|
# system will eventually redeliver the message.
|
|
"labels": { # See <a href="https://cloud.google.com/pubsub/docs/labels"> Creating and
|
|
# managing labels</a>.
|
|
"a_key": "A String",
|
|
},
|
|
"pushConfig": { # Configuration for a push delivery endpoint. # If push delivery is used with this subscription, this field is
|
|
# used to configure it. An empty `pushConfig` signifies that the subscriber
|
|
# will pull and ack messages using API methods.
|
|
"attributes": { # Endpoint configuration attributes.
|
|
#
|
|
# Every endpoint has a set of API supported attributes that can be used to
|
|
# control different aspects of the message delivery.
|
|
#
|
|
# The currently supported attribute is `x-goog-version`, which you can
|
|
# use to change the format of the pushed message. This attribute
|
|
# indicates the version of the data expected by the endpoint. This
|
|
# controls the shape of the pushed message (i.e., its fields and metadata).
|
|
# The endpoint version is based on the version of the Pub/Sub API.
|
|
#
|
|
# If not present during the `CreateSubscription` call, it will default to
|
|
# the version of the API used to make such call. If not present during a
|
|
# `ModifyPushConfig` call, its value will not be changed. `GetSubscription`
|
|
# calls will always return a valid version, even if the subscription was
|
|
# created without this attribute.
|
|
#
|
|
# The possible values for this attribute are:
|
|
#
|
|
# * `v1beta1`: uses the push format defined in the v1beta1 Pub/Sub API.
|
|
# * `v1` or `v1beta2`: uses the push format defined in the v1 Pub/Sub API.
|
|
"a_key": "A String",
|
|
},
|
|
"oidcToken": { # Contains information needed for generating an # If specified, Pub/Sub will generate and attach an OIDC JWT token as an
|
|
# `Authorization` header in the HTTP request for every pushed message.
|
|
# [OpenID Connect
|
|
# token](https://developers.google.com/identity/protocols/OpenIDConnect).
|
|
"audience": "A String", # Audience to be used when generating OIDC token. The audience claim
|
|
# identifies the recipients that the JWT is intended for. The audience
|
|
# value is a single case-sensitive string. Having multiple values (array)
|
|
# for the audience field is not supported. More info about the OIDC JWT
|
|
# token audience here: https://tools.ietf.org/html/rfc7519#section-4.1.3
|
|
# Note: if not specified, the Push endpoint URL will be used.
|
|
"serviceAccountEmail": "A String", # [Service account
|
|
# email](https://cloud.google.com/iam/docs/service-accounts)
|
|
# to be used for generating the OIDC token. The caller (for
|
|
# CreateSubscription, UpdateSubscription, and ModifyPushConfig RPCs) must
|
|
# have the iam.serviceAccounts.actAs permission for the service account.
|
|
},
|
|
"pushEndpoint": "A String", # A URL locating the endpoint to which messages should be pushed.
|
|
# For example, a Webhook endpoint might use "https://example.com/push".
|
|
},
|
|
"topic": "A String", # The name of the topic from which this subscription is receiving messages.
|
|
# Format is `projects/{project}/topics/{topic}`.
|
|
# The value of this field will be `_deleted-topic_` if the topic has been
|
|
# deleted.
|
|
"messageRetentionDuration": "A String", # How long to retain unacknowledged messages in the subscription's backlog,
|
|
# from the moment a message is published.
|
|
# If `retain_acked_messages` is true, then this also configures the retention
|
|
# of acknowledged messages, and thus configures how far back in time a `Seek`
|
|
# can be done. Defaults to 7 days. Cannot be more than 7 days or less than 10
|
|
# minutes.
|
|
"retainAckedMessages": True or False, # Indicates whether to retain acknowledged messages. If true, then
|
|
# messages are not expunged from the subscription's backlog, even if they are
|
|
# acknowledged, until they fall out of the `message_retention_duration`
|
|
# window. This must be true if you would like to
|
|
# <a
|
|
# href="https://cloud.google.com/pubsub/docs/replay-overview#seek_to_a_time">
|
|
# Seek to a timestamp</a>.
|
|
"expirationPolicy": { # A policy that specifies the conditions for resource expiration (i.e., # A policy that specifies the conditions for this subscription's expiration.
|
|
# A subscription is considered active as long as any connected subscriber is
|
|
# successfully consuming messages from the subscription or is issuing
|
|
# operations on the subscription. If `expiration_policy` is not set, a
|
|
# *default policy* with `ttl` of 31 days will be used. The minimum allowed
|
|
# value for `expiration_policy.ttl` is 1 day.
|
|
# automatic resource deletion).
|
|
"ttl": "A String", # Specifies the "time-to-live" duration for an associated resource. The
|
|
# resource expires if it is not active for a period of `ttl`. The definition
|
|
# of "activity" depends on the type of the associated resource. The minimum
|
|
# and maximum allowed values for `ttl` depend on the type of the associated
|
|
# resource, as well. If `ttl` is not set, the associated resource never
|
|
# expires.
|
|
},
|
|
},
|
|
],
|
|
}</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="modifyAckDeadline">modifyAckDeadline(subscription, body, x__xgafv=None)</code>
|
|
<pre>Modifies the ack deadline for a specific message. This method is useful
|
|
to indicate that more time is needed to process a message by the
|
|
subscriber, or to make the message available for redelivery if the
|
|
processing was interrupted. Note that this does not modify the
|
|
subscription-level `ackDeadlineSeconds` used for subsequent messages.
|
|
|
|
Args:
|
|
subscription: string, The name of the subscription.
|
|
Format is `projects/{project}/subscriptions/{sub}`. (required)
|
|
body: object, The request body. (required)
|
|
The object takes the form of:
|
|
|
|
{ # Request for the ModifyAckDeadline method.
|
|
"ackDeadlineSeconds": 42, # The new ack deadline with respect to the time this request was sent to
|
|
# the Pub/Sub system. For example, if the value is 10, the new
|
|
# ack deadline will expire 10 seconds after the `ModifyAckDeadline` call
|
|
# was made. Specifying zero might immediately make the message available for
|
|
# delivery to another subscriber client. This typically results in an
|
|
# increase in the rate of message redeliveries (that is, duplicates).
|
|
# The minimum deadline you can specify is 0 seconds.
|
|
# The maximum deadline you can specify is 600 seconds (10 minutes).
|
|
"ackIds": [ # List of acknowledgment IDs.
|
|
"A String",
|
|
],
|
|
}
|
|
|
|
x__xgafv: string, V1 error format.
|
|
Allowed values
|
|
1 - v1 error format
|
|
2 - v2 error format
|
|
|
|
Returns:
|
|
An object of the form:
|
|
|
|
{ # A generic empty message that you can re-use to avoid defining duplicated
|
|
# empty messages in your APIs. A typical example is to use it as the request
|
|
# or the response type of an API method. For instance:
|
|
#
|
|
# service Foo {
|
|
# rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
|
|
# }
|
|
#
|
|
# The JSON representation for `Empty` is empty JSON object `{}`.
|
|
}</pre>
|
|
</div>
|
|
|
|
<div class="method">
|
|
<code class="details" id="modifyPushConfig">modifyPushConfig(subscription, body, x__xgafv=None)</code>
|
|
<pre>Modifies the `PushConfig` for a specified subscription.
|
|
|
|
This may be used to change a push subscription to a pull one (signified by
|
|
an empty `PushConfig`) or vice versa, or change the endpoint URL and other
|
|
attributes of a push subscription. Messages will accumulate for delivery
|
|
continuously through the call regardless of changes to the `PushConfig`.
|
|
|
|
Args:
|
|
subscription: string, The name of the subscription.
|
|
Format is `projects/{project}/subscriptions/{sub}`. (required)
|
|
body: object, The request body. (required)
|
|
The object takes the form of:
|
|
|
|
{ # Request for the ModifyPushConfig method.
|
|
"pushConfig": { # Configuration for a push delivery endpoint. # The push configuration for future deliveries.
|
|
#
|
|
# An empty `pushConfig` indicates that the Pub/Sub system should
|
|
# stop pushing messages from the given subscription and allow
|
|
# messages to be pulled and acknowledged - effectively pausing
|
|
# the subscription if `Pull` or `StreamingPull` is not called.
|
|
"attributes": { # Endpoint configuration attributes.
|
|
#
|
|
# Every endpoint has a set of API supported attributes that can be used to
|
|
# control different aspects of the message delivery.
|
|
#
|
|
# The currently supported attribute is `x-goog-version`, which you can
|
|
# use to change the format of the pushed message. This attribute
|
|
# indicates the version of the data expected by the endpoint. This
|
|
# controls the shape of the pushed message (i.e., its fields and metadata).
|
|
# The endpoint version is based on the version of the Pub/Sub API.
|
|
#
|
|
# If not present during the `CreateSubscription` call, it will default to
|
|
# the version of the API used to make such call. If not present during a
|
|
# `ModifyPushConfig` call, its value will not be changed. `GetSubscription`
|
|
# calls will always return a valid version, even if the subscription was
|
|
# created without this attribute.
|
|
#
|
|
# The possible values for this attribute are:
|
|
#
|
|
# * `v1beta1`: uses the push format defined in the v1beta1 Pub/Sub API.
|
|
# * `v1` or `v1beta2`: uses the push format defined in the v1 Pub/Sub API.
|
|
"a_key": "A String",
|
|
},
|
|
"oidcToken": { # Contains information needed for generating an # If specified, Pub/Sub will generate and attach an OIDC JWT token as an
|
|
# `Authorization` header in the HTTP request for every pushed message.
|
|
# [OpenID Connect
|
|
# token](https://developers.google.com/identity/protocols/OpenIDConnect).
|
|
"audience": "A String", # Audience to be used when generating OIDC token. The audience claim
|
|
# identifies the recipients that the JWT is intended for. The audience
|
|
# value is a single case-sensitive string. Having multiple values (array)
|
|
# for the audience field is not supported. More info about the OIDC JWT
|
|
# token audience here: https://tools.ietf.org/html/rfc7519#section-4.1.3
|
|
# Note: if not specified, the Push endpoint URL will be used.
|
|
"serviceAccountEmail": "A String", # [Service account
|
|
# email](https://cloud.google.com/iam/docs/service-accounts)
|
|
# to be used for generating the OIDC token. The caller (for
|
|
# CreateSubscription, UpdateSubscription, and ModifyPushConfig RPCs) must
|
|
# have the iam.serviceAccounts.actAs permission for the service account.
|
|
},
|
|
"pushEndpoint": "A String", # A URL locating the endpoint to which messages should be pushed.
|
|
# For example, a Webhook endpoint might use "https://example.com/push".
|
|
},
|
|
}
|
|
|
|
x__xgafv: string, V1 error format.
|
|
Allowed values
|
|
1 - v1 error format
|
|
2 - v2 error format
|
|
|
|
Returns:
|
|
An object of the form:
|
|
|
|
{ # A generic empty message that you can re-use to avoid defining duplicated
|
|
# empty messages in your APIs. A typical example is to use it as the request
|
|
# or the response type of an API method. For instance:
|
|
#
|
|
# service Foo {
|
|
# rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
|
|
# }
|
|
#
|
|
# The JSON representation for `Empty` is empty JSON object `{}`.
|
|
}</pre>
|
|
</div>
|
|
|
|
<div class="method">
|
|
<code class="details" id="patch">patch(name, body, x__xgafv=None)</code>
|
|
<pre>Updates an existing subscription. Note that certain properties of a
|
|
subscription, such as its topic, are not modifiable.
|
|
|
|
Args:
|
|
name: string, The name of the subscription. It must have the format
|
|
`"projects/{project}/subscriptions/{subscription}"`. `{subscription}` must
|
|
start with a letter, and contain only letters (`[A-Za-z]`), numbers
|
|
(`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),
|
|
plus (`+`) or percent signs (`%`). It must be between 3 and 255 characters
|
|
in length, and it must not start with `"goog"`. (required)
|
|
body: object, The request body. (required)
|
|
The object takes the form of:
|
|
|
|
{ # Request for the UpdateSubscription method.
|
|
"updateMask": "A String", # Indicates which fields in the provided subscription to update.
|
|
# Must be specified and non-empty.
|
|
"subscription": { # A subscription resource. # The updated subscription object.
|
|
"name": "A String", # The name of the subscription. It must have the format
|
|
# `"projects/{project}/subscriptions/{subscription}"`. `{subscription}` must
|
|
# start with a letter, and contain only letters (`[A-Za-z]`), numbers
|
|
# (`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),
|
|
# plus (`+`) or percent signs (`%`). It must be between 3 and 255 characters
|
|
# in length, and it must not start with `"goog"`.
|
|
"ackDeadlineSeconds": 42, # The approximate amount of time (on a best-effort basis) Pub/Sub waits for
|
|
# the subscriber to acknowledge receipt before resending the message. In the
|
|
# interval after the message is delivered and before it is acknowledged, it
|
|
# is considered to be <i>outstanding</i>. During that time period, the
|
|
# message will not be redelivered (on a best-effort basis).
|
|
#
|
|
# For pull subscriptions, this value is used as the initial value for the ack
|
|
# deadline. To override this value for a given message, call
|
|
# `ModifyAckDeadline` with the corresponding `ack_id` if using
|
|
# non-streaming pull or send the `ack_id` in a
|
|
# `StreamingModifyAckDeadlineRequest` if using streaming pull.
|
|
# The minimum custom deadline you can specify is 10 seconds.
|
|
# The maximum custom deadline you can specify is 600 seconds (10 minutes).
|
|
# If this parameter is 0, a default value of 10 seconds is used.
|
|
#
|
|
# For push delivery, this value is also used to set the request timeout for
|
|
# the call to the push endpoint.
|
|
#
|
|
# If the subscriber never acknowledges the message, the Pub/Sub
|
|
# system will eventually redeliver the message.
|
|
"labels": { # See <a href="https://cloud.google.com/pubsub/docs/labels"> Creating and
|
|
# managing labels</a>.
|
|
"a_key": "A String",
|
|
},
|
|
"pushConfig": { # Configuration for a push delivery endpoint. # If push delivery is used with this subscription, this field is
|
|
# used to configure it. An empty `pushConfig` signifies that the subscriber
|
|
# will pull and ack messages using API methods.
|
|
"attributes": { # Endpoint configuration attributes.
|
|
#
|
|
# Every endpoint has a set of API supported attributes that can be used to
|
|
# control different aspects of the message delivery.
|
|
#
|
|
# The currently supported attribute is `x-goog-version`, which you can
|
|
# use to change the format of the pushed message. This attribute
|
|
# indicates the version of the data expected by the endpoint. This
|
|
# controls the shape of the pushed message (i.e., its fields and metadata).
|
|
# The endpoint version is based on the version of the Pub/Sub API.
|
|
#
|
|
# If not present during the `CreateSubscription` call, it will default to
|
|
# the version of the API used to make such call. If not present during a
|
|
# `ModifyPushConfig` call, its value will not be changed. `GetSubscription`
|
|
# calls will always return a valid version, even if the subscription was
|
|
# created without this attribute.
|
|
#
|
|
# The possible values for this attribute are:
|
|
#
|
|
# * `v1beta1`: uses the push format defined in the v1beta1 Pub/Sub API.
|
|
# * `v1` or `v1beta2`: uses the push format defined in the v1 Pub/Sub API.
|
|
"a_key": "A String",
|
|
},
|
|
"oidcToken": { # Contains information needed for generating an # If specified, Pub/Sub will generate and attach an OIDC JWT token as an
|
|
# `Authorization` header in the HTTP request for every pushed message.
|
|
# [OpenID Connect
|
|
# token](https://developers.google.com/identity/protocols/OpenIDConnect).
|
|
"audience": "A String", # Audience to be used when generating OIDC token. The audience claim
|
|
# identifies the recipients that the JWT is intended for. The audience
|
|
# value is a single case-sensitive string. Having multiple values (array)
|
|
# for the audience field is not supported. More info about the OIDC JWT
|
|
# token audience here: https://tools.ietf.org/html/rfc7519#section-4.1.3
|
|
# Note: if not specified, the Push endpoint URL will be used.
|
|
"serviceAccountEmail": "A String", # [Service account
|
|
# email](https://cloud.google.com/iam/docs/service-accounts)
|
|
# to be used for generating the OIDC token. The caller (for
|
|
# CreateSubscription, UpdateSubscription, and ModifyPushConfig RPCs) must
|
|
# have the iam.serviceAccounts.actAs permission for the service account.
|
|
},
|
|
"pushEndpoint": "A String", # A URL locating the endpoint to which messages should be pushed.
|
|
# For example, a Webhook endpoint might use "https://example.com/push".
|
|
},
|
|
"topic": "A String", # The name of the topic from which this subscription is receiving messages.
|
|
# Format is `projects/{project}/topics/{topic}`.
|
|
# The value of this field will be `_deleted-topic_` if the topic has been
|
|
# deleted.
|
|
"messageRetentionDuration": "A String", # How long to retain unacknowledged messages in the subscription's backlog,
|
|
# from the moment a message is published.
|
|
# If `retain_acked_messages` is true, then this also configures the retention
|
|
# of acknowledged messages, and thus configures how far back in time a `Seek`
|
|
# can be done. Defaults to 7 days. Cannot be more than 7 days or less than 10
|
|
# minutes.
|
|
"retainAckedMessages": True or False, # Indicates whether to retain acknowledged messages. If true, then
|
|
# messages are not expunged from the subscription's backlog, even if they are
|
|
# acknowledged, until they fall out of the `message_retention_duration`
|
|
# window. This must be true if you would like to
|
|
# <a
|
|
# href="https://cloud.google.com/pubsub/docs/replay-overview#seek_to_a_time">
|
|
# Seek to a timestamp</a>.
|
|
"expirationPolicy": { # A policy that specifies the conditions for resource expiration (i.e., # A policy that specifies the conditions for this subscription's expiration.
|
|
# A subscription is considered active as long as any connected subscriber is
|
|
# successfully consuming messages from the subscription or is issuing
|
|
# operations on the subscription. If `expiration_policy` is not set, a
|
|
# *default policy* with `ttl` of 31 days will be used. The minimum allowed
|
|
# value for `expiration_policy.ttl` is 1 day.
|
|
# automatic resource deletion).
|
|
"ttl": "A String", # Specifies the "time-to-live" duration for an associated resource. The
|
|
# resource expires if it is not active for a period of `ttl`. The definition
|
|
# of "activity" depends on the type of the associated resource. The minimum
|
|
# and maximum allowed values for `ttl` depend on the type of the associated
|
|
# resource, as well. If `ttl` is not set, the associated resource never
|
|
# expires.
|
|
},
|
|
},
|
|
}
|
|
|
|
x__xgafv: string, V1 error format.
|
|
Allowed values
|
|
1 - v1 error format
|
|
2 - v2 error format
|
|
|
|
Returns:
|
|
An object of the form:
|
|
|
|
{ # A subscription resource.
|
|
"name": "A String", # The name of the subscription. It must have the format
|
|
# `"projects/{project}/subscriptions/{subscription}"`. `{subscription}` must
|
|
# start with a letter, and contain only letters (`[A-Za-z]`), numbers
|
|
# (`[0-9]`), dashes (`-`), underscores (`_`), periods (`.`), tildes (`~`),
|
|
# plus (`+`) or percent signs (`%`). It must be between 3 and 255 characters
|
|
# in length, and it must not start with `"goog"`.
|
|
"ackDeadlineSeconds": 42, # The approximate amount of time (on a best-effort basis) Pub/Sub waits for
|
|
# the subscriber to acknowledge receipt before resending the message. In the
|
|
# interval after the message is delivered and before it is acknowledged, it
|
|
# is considered to be <i>outstanding</i>. During that time period, the
|
|
# message will not be redelivered (on a best-effort basis).
|
|
#
|
|
# For pull subscriptions, this value is used as the initial value for the ack
|
|
# deadline. To override this value for a given message, call
|
|
# `ModifyAckDeadline` with the corresponding `ack_id` if using
|
|
# non-streaming pull or send the `ack_id` in a
|
|
# `StreamingModifyAckDeadlineRequest` if using streaming pull.
|
|
# The minimum custom deadline you can specify is 10 seconds.
|
|
# The maximum custom deadline you can specify is 600 seconds (10 minutes).
|
|
# If this parameter is 0, a default value of 10 seconds is used.
|
|
#
|
|
# For push delivery, this value is also used to set the request timeout for
|
|
# the call to the push endpoint.
|
|
#
|
|
# If the subscriber never acknowledges the message, the Pub/Sub
|
|
# system will eventually redeliver the message.
|
|
"labels": { # See <a href="https://cloud.google.com/pubsub/docs/labels"> Creating and
|
|
# managing labels</a>.
|
|
"a_key": "A String",
|
|
},
|
|
"pushConfig": { # Configuration for a push delivery endpoint. # If push delivery is used with this subscription, this field is
|
|
# used to configure it. An empty `pushConfig` signifies that the subscriber
|
|
# will pull and ack messages using API methods.
|
|
"attributes": { # Endpoint configuration attributes.
|
|
#
|
|
# Every endpoint has a set of API supported attributes that can be used to
|
|
# control different aspects of the message delivery.
|
|
#
|
|
# The currently supported attribute is `x-goog-version`, which you can
|
|
# use to change the format of the pushed message. This attribute
|
|
# indicates the version of the data expected by the endpoint. This
|
|
# controls the shape of the pushed message (i.e., its fields and metadata).
|
|
# The endpoint version is based on the version of the Pub/Sub API.
|
|
#
|
|
# If not present during the `CreateSubscription` call, it will default to
|
|
# the version of the API used to make such call. If not present during a
|
|
# `ModifyPushConfig` call, its value will not be changed. `GetSubscription`
|
|
# calls will always return a valid version, even if the subscription was
|
|
# created without this attribute.
|
|
#
|
|
# The possible values for this attribute are:
|
|
#
|
|
# * `v1beta1`: uses the push format defined in the v1beta1 Pub/Sub API.
|
|
# * `v1` or `v1beta2`: uses the push format defined in the v1 Pub/Sub API.
|
|
"a_key": "A String",
|
|
},
|
|
"oidcToken": { # Contains information needed for generating an # If specified, Pub/Sub will generate and attach an OIDC JWT token as an
|
|
# `Authorization` header in the HTTP request for every pushed message.
|
|
# [OpenID Connect
|
|
# token](https://developers.google.com/identity/protocols/OpenIDConnect).
|
|
"audience": "A String", # Audience to be used when generating OIDC token. The audience claim
|
|
# identifies the recipients that the JWT is intended for. The audience
|
|
# value is a single case-sensitive string. Having multiple values (array)
|
|
# for the audience field is not supported. More info about the OIDC JWT
|
|
# token audience here: https://tools.ietf.org/html/rfc7519#section-4.1.3
|
|
# Note: if not specified, the Push endpoint URL will be used.
|
|
"serviceAccountEmail": "A String", # [Service account
|
|
# email](https://cloud.google.com/iam/docs/service-accounts)
|
|
# to be used for generating the OIDC token. The caller (for
|
|
# CreateSubscription, UpdateSubscription, and ModifyPushConfig RPCs) must
|
|
# have the iam.serviceAccounts.actAs permission for the service account.
|
|
},
|
|
"pushEndpoint": "A String", # A URL locating the endpoint to which messages should be pushed.
|
|
# For example, a Webhook endpoint might use "https://example.com/push".
|
|
},
|
|
"topic": "A String", # The name of the topic from which this subscription is receiving messages.
|
|
# Format is `projects/{project}/topics/{topic}`.
|
|
# The value of this field will be `_deleted-topic_` if the topic has been
|
|
# deleted.
|
|
"messageRetentionDuration": "A String", # How long to retain unacknowledged messages in the subscription's backlog,
|
|
# from the moment a message is published.
|
|
# If `retain_acked_messages` is true, then this also configures the retention
|
|
# of acknowledged messages, and thus configures how far back in time a `Seek`
|
|
# can be done. Defaults to 7 days. Cannot be more than 7 days or less than 10
|
|
# minutes.
|
|
"retainAckedMessages": True or False, # Indicates whether to retain acknowledged messages. If true, then
|
|
# messages are not expunged from the subscription's backlog, even if they are
|
|
# acknowledged, until they fall out of the `message_retention_duration`
|
|
# window. This must be true if you would like to
|
|
# <a
|
|
# href="https://cloud.google.com/pubsub/docs/replay-overview#seek_to_a_time">
|
|
# Seek to a timestamp</a>.
|
|
"expirationPolicy": { # A policy that specifies the conditions for resource expiration (i.e., # A policy that specifies the conditions for this subscription's expiration.
|
|
# A subscription is considered active as long as any connected subscriber is
|
|
# successfully consuming messages from the subscription or is issuing
|
|
# operations on the subscription. If `expiration_policy` is not set, a
|
|
# *default policy* with `ttl` of 31 days will be used. The minimum allowed
|
|
# value for `expiration_policy.ttl` is 1 day.
|
|
# automatic resource deletion).
|
|
"ttl": "A String", # Specifies the "time-to-live" duration for an associated resource. The
|
|
# resource expires if it is not active for a period of `ttl`. The definition
|
|
# of "activity" depends on the type of the associated resource. The minimum
|
|
# and maximum allowed values for `ttl` depend on the type of the associated
|
|
# resource, as well. If `ttl` is not set, the associated resource never
|
|
# expires.
|
|
},
|
|
}</pre>
|
|
</div>
|
|
|
|
<div class="method">
|
|
<code class="details" id="pull">pull(subscription, body, x__xgafv=None)</code>
|
|
<pre>Pulls messages from the server. The server may return `UNAVAILABLE` if
|
|
there are too many concurrent pull requests pending for the given
|
|
subscription.
|
|
|
|
Args:
|
|
subscription: string, The subscription from which messages should be pulled.
|
|
Format is `projects/{project}/subscriptions/{sub}`. (required)
|
|
body: object, The request body. (required)
|
|
The object takes the form of:
|
|
|
|
{ # Request for the `Pull` method.
|
|
"returnImmediately": True or False, # If this field set to true, the system will respond immediately even if
|
|
# it there are no messages available to return in the `Pull` response.
|
|
# Otherwise, the system may wait (for a bounded amount of time) until at
|
|
# least one message is available, rather than returning no messages.
|
|
"maxMessages": 42, # The maximum number of messages returned for this request. The Pub/Sub
|
|
# system may return fewer than the number specified.
|
|
}
|
|
|
|
x__xgafv: string, V1 error format.
|
|
Allowed values
|
|
1 - v1 error format
|
|
2 - v2 error format
|
|
|
|
Returns:
|
|
An object of the form:
|
|
|
|
{ # Response for the `Pull` method.
|
|
"receivedMessages": [ # Received Pub/Sub messages. The list will be empty if there are no more
|
|
# messages available in the backlog. For JSON, the response can be entirely
|
|
# empty. The Pub/Sub system may return fewer than the `maxMessages` requested
|
|
# even if there are more messages available in the backlog.
|
|
{ # A message and its corresponding acknowledgment ID.
|
|
"ackId": "A String", # This ID can be used to acknowledge the received message.
|
|
"message": { # A message that is published by publishers and consumed by subscribers. The # The message.
|
|
# message must contain either a non-empty data field or at least one attribute.
|
|
# Note that client libraries represent this object differently
|
|
# depending on the language. See the corresponding
|
|
# <a href="https://cloud.google.com/pubsub/docs/reference/libraries">client
|
|
# library documentation</a> for more information. See
|
|
# <a href="https://cloud.google.com/pubsub/quotas">Quotas and limits</a>
|
|
# for more information about message limits.
|
|
"attributes": { # Optional attributes for this message.
|
|
"a_key": "A String",
|
|
},
|
|
"data": "A String", # The message data field. If this field is empty, the message must contain
|
|
# at least one attribute.
|
|
"publishTime": "A String", # The time at which the message was published, populated by the server when
|
|
# it receives the `Publish` call. It must not be populated by the
|
|
# publisher in a `Publish` call.
|
|
"messageId": "A String", # ID of this message, assigned by the server when the message is published.
|
|
# Guaranteed to be unique within the topic. This value may be read by a
|
|
# subscriber that receives a `PubsubMessage` via a `Pull` call or a push
|
|
# delivery. It must not be populated by the publisher in a `Publish` call.
|
|
},
|
|
},
|
|
],
|
|
}</pre>
|
|
</div>
|
|
|
|
<div class="method">
|
|
<code class="details" id="seek">seek(subscription, body, x__xgafv=None)</code>
|
|
<pre>Seeks an existing subscription to a point in time or to a given snapshot,
|
|
whichever is provided in the request. Snapshots are used in
|
|
<a href="https://cloud.google.com/pubsub/docs/replay-overview">Seek</a>
|
|
operations, which allow
|
|
you to manage message acknowledgments in bulk. That is, you can set the
|
|
acknowledgment state of messages in an existing subscription to the state
|
|
captured by a snapshot. Note that both the subscription and the snapshot
|
|
must be on the same topic.
|
|
|
|
Args:
|
|
subscription: string, The subscription to affect. (required)
|
|
body: object, The request body. (required)
|
|
The object takes the form of:
|
|
|
|
{ # Request for the `Seek` method.
|
|
"snapshot": "A String", # The snapshot to seek to. The snapshot's topic must be the same as that of
|
|
# the provided subscription.
|
|
# Format is `projects/{project}/snapshots/{snap}`.
|
|
"time": "A String", # The time to seek to.
|
|
# Messages retained in the subscription that were published before this
|
|
# time are marked as acknowledged, and messages retained in the
|
|
# subscription that were published after this time are marked as
|
|
# unacknowledged. Note that this operation affects only those messages
|
|
# retained in the subscription (configured by the combination of
|
|
# `message_retention_duration` and `retain_acked_messages`). For example,
|
|
# if `time` corresponds to a point before the message retention
|
|
# window (or to a point before the system's notion of the subscription
|
|
# creation time), only retained messages will be marked as unacknowledged,
|
|
# and already-expunged messages will not be restored.
|
|
}
|
|
|
|
x__xgafv: string, V1 error format.
|
|
Allowed values
|
|
1 - v1 error format
|
|
2 - v2 error format
|
|
|
|
Returns:
|
|
An object of the form:
|
|
|
|
{ # Response for the `Seek` method (this response is empty).
|
|
}</pre>
|
|
</div>
|
|
|
|
<div class="method">
|
|
<code class="details" id="setIamPolicy">setIamPolicy(resource, body, x__xgafv=None)</code>
|
|
<pre>Sets the access control policy on the specified resource. Replaces any
|
|
existing policy.
|
|
|
|
Args:
|
|
resource: string, REQUIRED: The resource for which the policy is being specified.
|
|
See the operation documentation for the appropriate value for this field. (required)
|
|
body: object, The request body. (required)
|
|
The object takes the form of:
|
|
|
|
{ # Request message for `SetIamPolicy` method.
|
|
"policy": { # Defines an Identity and Access Management (IAM) policy. It is used to # REQUIRED: The complete policy to be applied to the `resource`. The size of
|
|
# the policy is limited to a few 10s of KB. An empty policy is a
|
|
# valid policy but certain Cloud Platform services (such as Projects)
|
|
# might reject them.
|
|
# specify access control policies for Cloud Platform resources.
|
|
#
|
|
#
|
|
# A `Policy` consists of a list of `bindings`. A `binding` binds a list of
|
|
# `members` to a `role`, where the members can be user accounts, Google groups,
|
|
# Google domains, and service accounts. A `role` is a named list of permissions
|
|
# defined by IAM.
|
|
#
|
|
# **JSON Example**
|
|
#
|
|
# {
|
|
# "bindings": [
|
|
# {
|
|
# "role": "roles/owner",
|
|
# "members": [
|
|
# "user:mike@example.com",
|
|
# "group:admins@example.com",
|
|
# "domain:google.com",
|
|
# "serviceAccount:my-other-app@appspot.gserviceaccount.com"
|
|
# ]
|
|
# },
|
|
# {
|
|
# "role": "roles/viewer",
|
|
# "members": ["user:sean@example.com"]
|
|
# }
|
|
# ]
|
|
# }
|
|
#
|
|
# **YAML Example**
|
|
#
|
|
# bindings:
|
|
# - members:
|
|
# - user:mike@example.com
|
|
# - group:admins@example.com
|
|
# - domain:google.com
|
|
# - serviceAccount:my-other-app@appspot.gserviceaccount.com
|
|
# role: roles/owner
|
|
# - members:
|
|
# - user:sean@example.com
|
|
# role: roles/viewer
|
|
#
|
|
#
|
|
# For a description of IAM and its features, see the
|
|
# [IAM developer's guide](https://cloud.google.com/iam/docs).
|
|
"bindings": [ # Associates a list of `members` to a `role`.
|
|
# `bindings` with no members will result in an error.
|
|
{ # Associates `members` with a `role`.
|
|
"role": "A String", # Role that is assigned to `members`.
|
|
# For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
|
|
"members": [ # Specifies the identities requesting access for a Cloud Platform resource.
|
|
# `members` can have the following values:
|
|
#
|
|
# * `allUsers`: A special identifier that represents anyone who is
|
|
# on the internet; with or without a Google account.
|
|
#
|
|
# * `allAuthenticatedUsers`: A special identifier that represents anyone
|
|
# who is authenticated with a Google account or a service account.
|
|
#
|
|
# * `user:{emailid}`: An email address that represents a specific Google
|
|
# account. For example, `alice@gmail.com` .
|
|
#
|
|
#
|
|
# * `serviceAccount:{emailid}`: An email address that represents a service
|
|
# account. For example, `my-other-app@appspot.gserviceaccount.com`.
|
|
#
|
|
# * `group:{emailid}`: An email address that represents a Google group.
|
|
# For example, `admins@example.com`.
|
|
#
|
|
#
|
|
# * `domain:{domain}`: The G Suite domain (primary) that represents all the
|
|
# users of that domain. For example, `google.com` or `example.com`.
|
|
#
|
|
"A String",
|
|
],
|
|
"condition": { # Represents an expression text. Example: # The condition that is associated with this binding.
|
|
# NOTE: An unsatisfied condition will not allow user access via current
|
|
# binding. Different bindings, including their conditions, are examined
|
|
# independently.
|
|
#
|
|
# title: "User account presence"
|
|
# description: "Determines whether the request has a user account"
|
|
# expression: "size(request.user) > 0"
|
|
"location": "A String", # An optional string indicating the location of the expression for error
|
|
# reporting, e.g. a file name and a position in the file.
|
|
"expression": "A String", # Textual representation of an expression in
|
|
# Common Expression Language syntax.
|
|
#
|
|
# The application context of the containing message determines which
|
|
# well-known feature set of CEL is supported.
|
|
"description": "A String", # An optional description of the expression. This is a longer text which
|
|
# describes the expression, e.g. when hovered over it in a UI.
|
|
"title": "A String", # An optional title for the expression, i.e. a short string describing
|
|
# its purpose. This can be used e.g. in UIs which allow to enter the
|
|
# expression.
|
|
},
|
|
},
|
|
],
|
|
"version": 42, # Deprecated.
|
|
"etag": "A String", # `etag` is used for optimistic concurrency control as a way to help
|
|
# prevent simultaneous updates of a policy from overwriting each other.
|
|
# It is strongly suggested that systems make use of the `etag` in the
|
|
# read-modify-write cycle to perform policy updates in order to avoid race
|
|
# conditions: An `etag` is returned in the response to `getIamPolicy`, and
|
|
# systems are expected to put that etag in the request to `setIamPolicy` to
|
|
# ensure that their change will be applied to the same version of the policy.
|
|
#
|
|
# If no `etag` is provided in the call to `setIamPolicy`, then the existing
|
|
# policy is overwritten blindly.
|
|
},
|
|
}
|
|
|
|
x__xgafv: string, V1 error format.
|
|
Allowed values
|
|
1 - v1 error format
|
|
2 - v2 error format
|
|
|
|
Returns:
|
|
An object of the form:
|
|
|
|
{ # Defines an Identity and Access Management (IAM) policy. It is used to
|
|
# specify access control policies for Cloud Platform resources.
|
|
#
|
|
#
|
|
# A `Policy` consists of a list of `bindings`. A `binding` binds a list of
|
|
# `members` to a `role`, where the members can be user accounts, Google groups,
|
|
# Google domains, and service accounts. A `role` is a named list of permissions
|
|
# defined by IAM.
|
|
#
|
|
# **JSON Example**
|
|
#
|
|
# {
|
|
# "bindings": [
|
|
# {
|
|
# "role": "roles/owner",
|
|
# "members": [
|
|
# "user:mike@example.com",
|
|
# "group:admins@example.com",
|
|
# "domain:google.com",
|
|
# "serviceAccount:my-other-app@appspot.gserviceaccount.com"
|
|
# ]
|
|
# },
|
|
# {
|
|
# "role": "roles/viewer",
|
|
# "members": ["user:sean@example.com"]
|
|
# }
|
|
# ]
|
|
# }
|
|
#
|
|
# **YAML Example**
|
|
#
|
|
# bindings:
|
|
# - members:
|
|
# - user:mike@example.com
|
|
# - group:admins@example.com
|
|
# - domain:google.com
|
|
# - serviceAccount:my-other-app@appspot.gserviceaccount.com
|
|
# role: roles/owner
|
|
# - members:
|
|
# - user:sean@example.com
|
|
# role: roles/viewer
|
|
#
|
|
#
|
|
# For a description of IAM and its features, see the
|
|
# [IAM developer's guide](https://cloud.google.com/iam/docs).
|
|
"bindings": [ # Associates a list of `members` to a `role`.
|
|
# `bindings` with no members will result in an error.
|
|
{ # Associates `members` with a `role`.
|
|
"role": "A String", # Role that is assigned to `members`.
|
|
# For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
|
|
"members": [ # Specifies the identities requesting access for a Cloud Platform resource.
|
|
# `members` can have the following values:
|
|
#
|
|
# * `allUsers`: A special identifier that represents anyone who is
|
|
# on the internet; with or without a Google account.
|
|
#
|
|
# * `allAuthenticatedUsers`: A special identifier that represents anyone
|
|
# who is authenticated with a Google account or a service account.
|
|
#
|
|
# * `user:{emailid}`: An email address that represents a specific Google
|
|
# account. For example, `alice@gmail.com` .
|
|
#
|
|
#
|
|
# * `serviceAccount:{emailid}`: An email address that represents a service
|
|
# account. For example, `my-other-app@appspot.gserviceaccount.com`.
|
|
#
|
|
# * `group:{emailid}`: An email address that represents a Google group.
|
|
# For example, `admins@example.com`.
|
|
#
|
|
#
|
|
# * `domain:{domain}`: The G Suite domain (primary) that represents all the
|
|
# users of that domain. For example, `google.com` or `example.com`.
|
|
#
|
|
"A String",
|
|
],
|
|
"condition": { # Represents an expression text. Example: # The condition that is associated with this binding.
|
|
# NOTE: An unsatisfied condition will not allow user access via current
|
|
# binding. Different bindings, including their conditions, are examined
|
|
# independently.
|
|
#
|
|
# title: "User account presence"
|
|
# description: "Determines whether the request has a user account"
|
|
# expression: "size(request.user) > 0"
|
|
"location": "A String", # An optional string indicating the location of the expression for error
|
|
# reporting, e.g. a file name and a position in the file.
|
|
"expression": "A String", # Textual representation of an expression in
|
|
# Common Expression Language syntax.
|
|
#
|
|
# The application context of the containing message determines which
|
|
# well-known feature set of CEL is supported.
|
|
"description": "A String", # An optional description of the expression. This is a longer text which
|
|
# describes the expression, e.g. when hovered over it in a UI.
|
|
"title": "A String", # An optional title for the expression, i.e. a short string describing
|
|
# its purpose. This can be used e.g. in UIs which allow to enter the
|
|
# expression.
|
|
},
|
|
},
|
|
],
|
|
"version": 42, # Deprecated.
|
|
"etag": "A String", # `etag` is used for optimistic concurrency control as a way to help
|
|
# prevent simultaneous updates of a policy from overwriting each other.
|
|
# It is strongly suggested that systems make use of the `etag` in the
|
|
# read-modify-write cycle to perform policy updates in order to avoid race
|
|
# conditions: An `etag` is returned in the response to `getIamPolicy`, and
|
|
# systems are expected to put that etag in the request to `setIamPolicy` to
|
|
# ensure that their change will be applied to the same version of the policy.
|
|
#
|
|
# If no `etag` is provided in the call to `setIamPolicy`, then the existing
|
|
# policy is overwritten blindly.
|
|
}</pre>
|
|
</div>
|
|
|
|
<div class="method">
|
|
<code class="details" id="testIamPermissions">testIamPermissions(resource, body, x__xgafv=None)</code>
|
|
<pre>Returns permissions that a caller has on the specified resource.
|
|
If the resource does not exist, this will return an empty set of
|
|
permissions, not a NOT_FOUND error.
|
|
|
|
Note: This operation is designed to be used for building permission-aware
|
|
UIs and command-line tools, not for authorization checking. This operation
|
|
may "fail open" without warning.
|
|
|
|
Args:
|
|
resource: string, REQUIRED: The resource for which the policy detail is being requested.
|
|
See the operation documentation for the appropriate value for this field. (required)
|
|
body: object, The request body. (required)
|
|
The object takes the form of:
|
|
|
|
{ # Request message for `TestIamPermissions` method.
|
|
"permissions": [ # The set of permissions to check for the `resource`. Permissions with
|
|
# wildcards (such as '*' or 'storage.*') are not allowed. For more
|
|
# information see
|
|
# [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
|
|
"A String",
|
|
],
|
|
}
|
|
|
|
x__xgafv: string, V1 error format.
|
|
Allowed values
|
|
1 - v1 error format
|
|
2 - v2 error format
|
|
|
|
Returns:
|
|
An object of the form:
|
|
|
|
{ # Response message for `TestIamPermissions` method.
|
|
"permissions": [ # A subset of `TestPermissionsRequest.permissions` that the caller is
|
|
# allowed.
|
|
"A String",
|
|
],
|
|
}</pre>
|
|
</div>
|
|
|
|
</body></html> |