Webhook Stable Routing
Developers are now able to select a webhookUrlRouting setting in the Developer Console. When using SUFFIXED (the default behavior), webhooks are delivered to the configured webhook url with a suffix. For example, for events webhooks, they are delivered to $WEBHOOK_URL/event. For canvas webhooks, they are delivered to $WEBHOOK_URL/canvas. For app lifecycle webhooks, they are delivered to $WEBHOOK_URL/lifecycle.
For a webhook url configured to https://my.webhook:
| Webhook | SUFFIXED effective url | STABLE effective url |
|---|---|---|
| Events | https://my.webhook/event | https://my.webhook |
| App Lifecycle | https://my.webhook/lifecycle | https://my.webhook |
| Canvas | https://my.webhook/canvas | https://my.webhook |
This allows customers who only have access to public static uris to onboard more seamlessly onto receiving Webhooks. For example, customers leveraging Zapier, Slack, or Workato to drive integrations would benefit here. Customers who rely on path-based routing, such as Lambda architectures, can continue expecting suffixed webhook urls.
Read more about webhooks here: https://docs.benchling.com/docs/getting-started-with-webhooks
How it works
To configure this setting, navigate to the Developer Console for your App Definition and click on "Configure" under "Webhook Setup":
This will also be supported in the V3 API soon!
