{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/gcp-cloud-storage/json-schema/gcp-cloud-storage-notification-schema.json",
  "title": "Notification",
  "description": "A subscription to receive Google PubSub notifications.",
  "x-generated": "2026-11-04",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/gcp-cloud-storage-notifications-api-openapi.yml#/components/schemas/Notification",
  "type": "object",
  "properties": {
    "custom_attributes": {
      "type": "object",
      "description": "An optional list of additional attributes to attach to each Cloud PubSub message published for this notification subscription.",
      "additionalProperties": {
        "type": "string"
      }
    },
    "etag": {
      "type": "string",
      "description": "HTTP 1.1 Entity tag for this subscription notification."
    },
    "event_types": {
      "type": "array",
      "description": "If present, only send notifications about listed event types. If empty, sent notifications for all event types.",
      "items": {
        "type": "string"
      }
    },
    "id": {
      "type": "string",
      "description": "The ID of the notification."
    },
    "kind": {
      "type": "string",
      "description": "The kind of item this is. For notifications, this is always storage#notification.",
      "default": "storage#notification"
    },
    "object_name_prefix": {
      "type": "string",
      "description": "If present, only apply this notification configuration to object names that begin with this prefix."
    },
    "payload_format": {
      "type": "string",
      "description": "The desired content of the Payload.",
      "default": "JSON_API_V1"
    },
    "selfLink": {
      "type": "string",
      "description": "The canonical URL of this notification."
    },
    "topic": {
      "type": "string",
      "description": "The Cloud PubSub topic to which this subscription publishes. Formatted as: '//pubsub.googleapis.com/projects/{project-identifier}/topics/{my-topic}'"
    }
  }
}