@@ -641,6 +641,74 @@ components:
641641 type : boolean
642642 description :
643643 If set to true, per object ACL will be enabled. Default is false.
644+ object_notifications :
645+ $ref : " #/components/schemas/ObjectNotifications"
646+ ObjectNotifications :
647+ type : object
648+ description : |
649+ Configuration for object event notifications via webhook. Receive HTTP callbacks when objects are created, updated, or deleted in your bucket.
650+
651+ **Update behavior (partial updates supported):**
652+ - **Omit field entirely**: Keeps existing settings unchanged
653+ - **Include only `enabled`**: Toggles notifications on/off while preserving all other config
654+ - **Include any field**: Updates specified fields, preserves others (auth not re-required)
655+ - **Remove completely**: Send `{"enabled": false}` with no other fields
656+
657+ **Common operations:**
658+ ```json
659+ // Enable notifications (preserves webhook, filter, auth)
660+ {"enabled": true}
661+
662+ // Disable temporarily (keeps all config for later)
663+ {"enabled": false, "webhook": "https://..."}
664+
665+ // Update webhook only (preserves auth, filter)
666+ {"webhook": "https://new-endpoint.com"}
667+
668+ // Change auth type (replaces entire auth object)
669+ {"auth": {"token": "new-token"}}
670+
671+ // Remove all notifications
672+ {"enabled": false}
673+ ```
674+
675+ **Note:** Auth credentials are masked in responses. You don't need to re-send them when updating other fields.
676+ required :
677+ - enabled
678+ properties :
679+ enabled :
680+ type : boolean
681+ description : Enable or disable notifications (webhook required when true)
682+ webhook :
683+ type : string
684+ format : uri
685+ description : HTTPS endpoint to receive notification events
686+ example : " https://webhook.example.com/tigris-events"
687+ filter :
688+ type : string
689+ description : SQL WHERE clause to filter which objects trigger notifications (e.g., size comparisons)
690+ example : " size > 1000000"
691+ region :
692+ type : string
693+ description : Region to process notifications from (defaults to server region)
694+ example : " iad"
695+ auth :
696+ $ref : " #/components/schemas/ObjectNotificationAuth"
697+ ObjectNotificationAuth :
698+ type : object
699+ description : Authentication credentials for webhook endpoint
700+ properties :
701+ basic_user :
702+ type : string
703+ description : Basic auth username
704+ basic_pass :
705+ type : string
706+ description : Basic auth password
707+ format : password
708+ token :
709+ type : string
710+ description : Bearer token for authorization
711+ format : password
644712 ProvisioningResponse :
645713 type : object
646714 UpdateBucketRequest :
@@ -656,6 +724,8 @@ components:
656724 type : boolean
657725 description :
658726 If set to true, per object ACL will be enabled. Default is false.
727+ object_notifications :
728+ $ref : " #/components/schemas/ObjectNotifications"
659729 UpdateBucketResponse :
660730 type : object
661731 DeleteBucketResponse :
@@ -866,6 +936,8 @@ components:
866936 description : If set to true, per object ACL is enabled
867937 website :
868938 $ref : " #/components/schemas/BucketWebsiteSettings"
939+ object_notifications :
940+ $ref : " #/components/schemas/ObjectNotifications"
869941 GetUsageResponse :
870942 type : object
871943 properties :
0 commit comments