{"templateId":"markdown","versions":[{"version":"v1.40","label":"v1.40 STS","link":"/products/custody/v1.40/ui/environment/events/webhooks","default":true,"active":false,"folderId":"c15a2701"},{"version":"v1.39","label":"v1.39 STS","link":"/products/custody/v1.39/ui/environment/events/webhooks","default":false,"active":false,"folderId":"c15a2701"},{"version":"v1.38","label":"v1.38 STS","link":"/products/custody/v1.38/ui/environment/events/webhooks","default":false,"active":false,"folderId":"c15a2701"},{"version":"v1.34","label":"v1.34 LTS","link":"/products/custody/v1.34/ui/environment/events/webhooks","default":false,"active":false,"folderId":"c15a2701"},{"version":"v1.26","label":"v1.26 LTS","link":"/products/custody/v1.26/ui/environment/events/webhooks","default":false,"active":true,"folderId":"c15a2701"},{"version":"v1.19","label":"v1.19 LTS","link":"/products/custody/v1.19/ui/environment/events/webhooks","default":false,"active":false,"folderId":"c15a2701"},{"version":"v1.15","label":"v1.15 LTS","link":"/products/custody/v1.15/ui/environment/events/webhooks","default":false,"active":false,"folderId":"c15a2701"}],"sharedDataIds":{"sidebar":"sidebar-products/custody/@v1.15/sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":["admonition"]},"type":"markdown"},"seo":{"title":"Webhooks","description":"User guides, API reference, and support resources.","siteUrl":"https://docs.ripple.com","lang":"en-US","llmstxt":{"hide":false,"sections":[{"title":"Table of contents","includeFiles":["**/*"],"excludeFiles":[]}],"excludeFiles":[]}},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"webhooks","__idx":0},"children":["Webhooks"]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"warning"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Note"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Access to webhook configuration is currently available through the beta version of the ","Ripple Custody"," beta UI. Though you access it through the beta UI, the webhook functionality is production-ready and available through the API as well."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Enabling the feature"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The webhooks feature must be enabled using a feature flag on your ","Ripple Custody"," instance. Contact your Ripple liaison if you're unable to access the feature by performing the steps in the following section."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The v1.19 release of the ","Ripple Custody"," beta UI introduces support for event distribution through webhooks."," ","Webhooks are lightweight HTTP callbacks that allow real-time delivery of event notifications to your systems."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["You can select from a wide range of events that you want to subscribe to and configure a webhook URL. Once you complete the setup, ","Ripple Custody"," will automatically send minimal event payloads to your registered endpoint when the selected events occur."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"event-payload","__idx":1},"children":["Event payload"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Event payloads are minimal and designed for easy parsing."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The following sample shows a typical payload for an intent creation event:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"    {\n        \"domainId\": \"25aaec0d-e8dc-44b6-8070-9231f1ddadf0\", // The unique identifier of the domain where the event originated\n        \"id\": \"03424a3f-bdfc-4521-b8b2-933a8ff13cce\",       // The ID of the webhook notification\n        \"payload\": {                                        // Event payload\n            \"id\": \"35e4d8d9-f943-484b-865c-c736679ba0cc\",   // The ID of the event\n            \"type\": \"IntentCreated\"                         // The type of event\n        },\n        \"savedAt\": \"2025-03-07T14:22:37.389Z\",              // The time when the webhook notification was sent\n        \"sequenceNumber\": 369                               // The sequence in which this event occurred\n    }\n"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"securing-your-webhook-endpoint","__idx":2},"children":["Securing your webhook endpoint"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Make sure your webhook endpoint is properly secured to prevent unauthorized access. Validating incoming requests and using HTTPS are just a few ways in which you can secure your endpoints."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"delivery-retries","__idx":3},"children":["Delivery retries"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["If a webhook delivery fails, ","Ripple Custody"," will automatically attempt retries","."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"register-a-webhook","__idx":4},"children":["Register a webhook"]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"info","name":"Prerequisite"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["You must be a user with the role ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["eds-manager"]}," to create and manage webhooks for your domain."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["To register a webhook:"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["In the top nav bar of the ","Ripple Custody"," UI, select ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Try beta version"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["In the top right, select ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Settings > Event Distribution"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["On the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Event distribution"]}," page, under the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Webhooks"]}," tab, select ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Add webhook"]},"."," ",{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/custody-add-webhook.0902a736663ef0905333643ea514188cb9e69284fd1c4eec95166ccb9c9919ea.7d10b72f.png","alt":"Add webhook"},"children":[]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["On the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Select events"]}," page, select the events you want to receive webhook notifications for, and select ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Continue"]},"."," ",{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/select-webhook-events.5aea07d7e88f3dfdf5d2d879a4217bcea9348c8d7fcadd7e6600a114faede529.7d10b72f.png","alt":"Select events"},"children":[]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["In the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Configure channel"]}," step, enter the webhook endpoint information:",{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["In the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Endpoint name"]}," field, enter a descriptive name for the webhook you're creating."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["In the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Endpoint URL"]}," field, enter the webhook URL where you want to receive the event information."," ",{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/register-webhook.34f9296fe3ad28844d50bdaf61b8ed81eb551317c64ed29d724051124f6e3d56.7d10b72f.png","alt":"Register webhook"},"children":[]}]}]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Select ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Submit"]}," to finish configuring your webhook."]}]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"success"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Your webhook is successfully set up when you see a message at the bottom of your screen indicating that your webhook was created."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"update-an-existing-webhook","__idx":5},"children":["Update an existing webhook"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["To update an existing webhook:"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["In the top nav bar of the ","Ripple Custody"," UI, select ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Try beta version"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["In the top right, select ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Settings > Event Distribution"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["On the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Event distribution"]}," page, under the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Webhooks"]}," tab, select the webhook you want to edit."," ",{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/select-webhook-to-edit.a2b2994f25c4b950e2e6a296865b88de5c9cd257f2863fbcfd3448d4f617331e.7d10b72f.png","alt":"Select webhook to edit"},"children":[]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Select the action you want to take:",{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Edit the list of events that you've subscribed: Select ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Edit webhook"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Send a test event, change the webhook's active status, or delete the webhook: Select the overflow menu and select the desired option."," ",{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/edit-webhook.9f359cc4e8b95dff8feac211a7d1e9a1b115f848ad93bcf2ab6444e013500720.7d10b72f.png","alt":"Edit webhook"},"children":[]}]}]}]}]}]},"headings":[{"value":"Webhooks","id":"webhooks","depth":1},{"value":"Event payload","id":"event-payload","depth":2},{"value":"Securing your webhook endpoint","id":"securing-your-webhook-endpoint","depth":2},{"value":"Delivery retries","id":"delivery-retries","depth":2},{"value":"Register a webhook","id":"register-a-webhook","depth":2},{"value":"Update an existing webhook","id":"update-an-existing-webhook","depth":2}],"frontmatter":{"seo":{"title":"Webhooks"}},"lastModified":"2025-11-04T23:32:34.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/products/custody/v1.26/ui/environment/events/webhooks","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}