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)[source]¶
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, retry=None)[source]¶
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) – (Optional) The amount of time, in seconds, to wait for the server response. See: Configuring Timeouts
retry (google.api_core.retry.Retry or google.cloud.storage.retry.ConditionalRetryPolicy) – (Optional) How to retry the RPC. See: Configuring Retries
- property custom_attributes¶
Custom attributes passed with notification events.
- delete(client=None, timeout=60, retry=<google.api_core.retry.Retry object>)[source]¶
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) – (Optional) The amount of time, in seconds, to wait for the server response. See: Configuring Timeouts
retry (google.api_core.retry.Retry or google.cloud.storage.retry.ConditionalRetryPolicy) – (Optional) How to retry the RPC. See: Configuring Retries
- 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>)[source]¶
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) – (Optional) The amount of time, in seconds, to wait for the server response. See: Configuring Timeouts
retry (google.api_core.retry.Retry or google.cloud.storage.retry.ConditionalRetryPolicy) – (Optional) How to retry the RPC. See: Configuring Retries
- Return type
bool
- Returns
True, if the notification exists, else False.
- Raises
ValueError – if the notification has no ID.
- classmethod from_api_repr(resource, bucket)[source]¶
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
- 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>)[source]¶
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) – (Optional) The amount of time, in seconds, to wait for the server response. See: Configuring Timeouts
retry (google.api_core.retry.Retry or google.cloud.storage.retry.ConditionalRetryPolicy) – (Optional) How to retry the RPC. See: Configuring Retries
- 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.