- 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, topic_project=None, custom_attributes=None, event_types=None, blob_name_prefix=None, payload_format='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) – 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 notificatin 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.
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)
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.
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)
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.
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)
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.
Return type
Returns
True, if the notification exists, else False.
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.