SUPPORT.TWILIO.COM END OF LIFE NOTICE: This site, support.twilio.com, is scheduled to go End of Life on February 27, 2024. All Twilio Support content has been migrated to help.twilio.com, where you can continue to find helpful Support articles, API docs, and Twilio blog content, and escalate your issues to our Support team. We encourage you to update your bookmarks and begin using the new site today for all your Twilio Support needs.

Fixing Global User Webhook Event Delivery in Twilio Conversations

Issue

When both global (account-level) and service-scoped webhooks are configured in Twilio Conversations, user-related webhook events such as onUserAdded, onUserUpdate, and onUserUpdated fail to deliver to the global webhook endpoint.

 

Product

Twilio Conversations Classic

 

Resolution

This behavior is due to the hierarchical configuration design of Twilio Conversations webhooks:

  1. Hierarchy Precedence: When a service-scoped webhook configuration is defined on a Conversations Service (ISXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX), it completely overrides the global (account-level) webhook configuration for interactions routed through that service.
  2. Unsupported Service-Level Events: Service-scoped webhooks do not support user lifecycle events (onUserAdded, onUserUpdate, onUserUpdated); these events exist exclusively at the global webhook scope. Because the service-level configuration supersedes the global configuration, user-related webhook events are suppressed and will not fire to either endpoint.

 

Supported Implementations & Workarounds

  • Rely Exclusively on Global Webhooks: If user-related events are required alongside conversation and participant events, do not configure service-scoped webhooks. Direct all event types through the global (account-level) webhook URL and handle event routing via backend endpoint logic.
  • Isolate Services Using Subaccounts: If an application architecture strictly requires service-scoped webhooks for messaging but also depends on user lifecycle webhooks, isolate the Conversations Service within a dedicated Twilio Subaccount. Configure the webhook URL at the Subaccount’s global level, which allows both user-level and conversation-level events to fire without being overridden by a service configuration.

 

Additional Information

Have more questions? Submit a request
Powered by Zendesk