- 2.17.0 (latest)
- 2.16.0
- 2.15.0
- 2.14.0
- 2.13.0
- 2.12.0
- 2.11.0
- 2.10.0
- 2.9.0
- 2.8.0
- 2.7.0
- 2.6.0
- 2.5.0
- 2.4.0
- 2.3.0
- 2.2.1
- 2.1.0
- 2.0.0
- 1.44.0
- 1.43.0
- 1.42.3
- 1.41.1
- 1.40.0
- 1.39.0
- 1.38.0
- 1.37.1
- 1.36.2
- 1.35.1
- 1.34.0
- 1.33.0
- 1.32.0
- 1.31.2
- 1.30.0
- 1.29.0
- 1.28.1
- 1.27.0
- 1.26.0
- 1.25.0
- 1.24.1
- 1.23.0
- 1.22.0
- 1.21.0
- 1.20.0
- 1.19.0
- 1.18.0
- 1.17.0
Notification
Support for bucket notification resources.
class google.cloud.storage.notification.BucketNotification(bucket, topic_name=None, topic_project=None, custom_attributes=None, event_types=None, blob_name_prefix=None, payload_format='NONE', notification_id=None)
Bases: object
Represent a single notification resource for a bucket.
See: https://cloud.google.com/storage/docs/json_api/v1/notifications
Parameters
bucket (
google.cloud.storage.bucket.Bucket
) – Bucket to which the notification is bound.topic_name (str) – (Optional) Topic name to which notifications are published.
topic_project (str) – (Optional) Project ID of topic to which notifications are published. If not passed, uses the project ID of the bucket’s client.
custom_attributes (dict) – (Optional) Additional attributes passed with notification events.
event_types (list(str)) – (Optional) Event types for which notification events are published.
blob_name_prefix (str) – (Optional) Prefix of blob names for which notification events are published.
payload_format (str) – (Optional) Format of payload for notification events.
notification_id (str) – (Optional) The ID of the notification.
property blob_name_prefix()
Prefix of blob names for which notification events are published.
property bucket()
Bucket to which the notification is bound.
property client()
The client bound to this notfication.
create(client=None, timeout=60)
API wrapper: create the notification.
See: https://cloud.google.com/storage/docs/json_api/v1/notifications/insert
If user_project
is set on the bucket, bills the API request
to that project.
Parameters
client (
Client
) – (Optional) The client to use. If not passed, falls back to theclient
stored on the notification’s bucket.timeout (float* or [tuple*](https://python.readthedocs.io/en/latest/library/stdtypes.html#tuple)) – (Optional) The amount of time, in seconds, to wait for the server response.
Can also be passed as a tuple (connect_timeout, read_timeout). See
requests.Session.request()
documentation for details.
property custom_attributes()
Custom attributes passed with notification events.
delete(client=None, timeout=60, retry=<google.api_core.retry.Retry object>)
Delete this notification.
See: https://cloud.google.com/storage/docs/json_api/v1/notifications/delete
If user_project
is set on the bucket, bills the API request
to that project.
Parameters
client (
Client
orNoneType
) – (Optional) The client to use. If not passed, falls back to theclient
stored on the current bucket.timeout (float* or [tuple*](https://python.readthedocs.io/en/latest/library/stdtypes.html#tuple)) – (Optional) The amount of time, in seconds, to wait for the server response.
Can also be passed as a tuple (connect_timeout, read_timeout). See
requests.Session.request()
documentation for details.retry (google.api_core.retry.Retry* or *google.cloud.storage.retry.ConditionalRetryPolicy) – (Optional) How to retry the RPC. A None value will disable retries. A google.api_core.retry.Retry value will enable retries, and the object will define retriable response codes and errors and configure backoff and timeout options.
A google.cloud.storage.retry.ConditionalRetryPolicy value wraps a Retry object and activates it only if certain conditions are met. This class exists to provide safe defaults for RPC calls that are not technically safe to retry normally (due to potential data duplication or other side-effects) but become safe to retry if a condition such as if_metageneration_match is set.
See the retry.py source code and docstrings in this package (google.cloud.storage.retry) for information on retry types and how to configure them.
Raises
google.api_core.exceptions.NotFound
: if the notification does not exist.Raises
ValueError – if the notification has no ID.
property etag()
Server-set ETag of notification resource.
property event_types()
Event types for which notification events are published.
exists(client=None, timeout=60, retry=<google.api_core.retry.Retry object>)
Test whether this notification exists.
See: https://cloud.google.com/storage/docs/json_api/v1/notifications/get
If user_project
is set on the bucket, bills the API request
to that project.
Parameters
client (
Client
orNoneType
) – (Optional) The client to use. If not passed, falls back to theclient
stored on the current bucket.timeout (float* or [tuple*](https://python.readthedocs.io/en/latest/library/stdtypes.html#tuple)) – (Optional) The amount of time, in seconds, to wait for the server response.
Can also be passed as a tuple (connect_timeout, read_timeout). See
requests.Session.request()
documentation for details.retry (google.api_core.retry.Retry* or *google.cloud.storage.retry.ConditionalRetryPolicy) – (Optional) How to retry the RPC. A None value will disable retries. A google.api_core.retry.Retry value will enable retries, and the object will define retriable response codes and errors and configure backoff and timeout options.
A google.cloud.storage.retry.ConditionalRetryPolicy value wraps a Retry object and activates it only if certain conditions are met. This class exists to provide safe defaults for RPC calls that are not technically safe to retry normally (due to potential data duplication or other side-effects) but become safe to retry if a condition such as if_metageneration_match is set.
See the retry.py source code and docstrings in this package (google.cloud.storage.retry) for information on retry types and how to configure them.
Return type
Returns
True, if the notification exists, else False.
Raises
ValueError – if the notification has no ID.
classmethod from_api_repr(resource, bucket)
Construct an instance from the JSON repr returned by the server.
See: https://cloud.google.com/storage/docs/json_api/v1/notifications
Parameters
resource (dict) – JSON repr of the notification
bucket (
google.cloud.storage.bucket.Bucket
) – Bucket to which the notification is bound.
Return type
BucketNotification
Returns
the new notification instance
property notification_id()
Server-set ID of notification resource.
property path()
The URL path for this notification.
property payload_format()
Format of payload of notification events.
reload(client=None, timeout=60, retry=<google.api_core.retry.Retry object>)
Update this notification from the server configuration.
See: https://cloud.google.com/storage/docs/json_api/v1/notifications/get
If user_project
is set on the bucket, bills the API request
to that project.
Parameters
client (
Client
orNoneType
) – (Optional) The client to use. If not passed, falls back to theclient
stored on the current bucket.timeout (float* or [tuple*](https://python.readthedocs.io/en/latest/library/stdtypes.html#tuple)) – (Optional) The amount of time, in seconds, to wait for the server response.
Can also be passed as a tuple (connect_timeout, read_timeout). See
requests.Session.request()
documentation for details.retry (google.api_core.retry.Retry* or *google.cloud.storage.retry.ConditionalRetryPolicy) – (Optional) How to retry the RPC. A None value will disable retries. A google.api_core.retry.Retry value will enable retries, and the object will define retriable response codes and errors and configure backoff and timeout options.
A google.cloud.storage.retry.ConditionalRetryPolicy value wraps a Retry object and activates it only if certain conditions are met. This class exists to provide safe defaults for RPC calls that are not technically safe to retry normally (due to potential data duplication or other side-effects) but become safe to retry if a condition such as if_metageneration_match is set.
See the retry.py source code and docstrings in this package (google.cloud.storage.retry) for information on retry types and how to configure them.
Raises
ValueError – if the notification has no ID.
property self_link()
Server-set ETag of notification resource.
property topic_name()
Topic name to which notifications are published.
property topic_project()
Project ID of topic to which notifications are published.