Stream Twilio Data to a Webhook with Event Streams

February 18, 2021
Written by

Event Streams Webhook Sink Available

At SIGNAL 2020, we announced the Event Streams beta. Event Streams is an API that allows you to configure centralized streams of event data directly into your infrastructure—starting with Amazon Kinesis—so that your data is easily accessible, automatically interpretable and reliable for informed decision-making.

We are proud to announce that Event Streams now supports data delivery to a webhook sink type. This means that customers can access the same powerful features of Event Streams—a single integration point for all Twilio data, at-least once delivery with retries for 24 hours, unified data format with consistent metadata, and support for delivery to multiple sinks—regardless of the streaming infrastructure they may be using.

Why did we build a webhook sink?

We built the webhook sink type for customers who:

  1. Aren’t using any streaming solutions like AWS Kinesis. Such customers can now easily transition to Event Streams and reap its benefits without making architectural changes.
  2. Use streaming solutions which are not AWS-based while our team builds native integrations for sink types in Azure, Google Cloud Platform, and more.

How does the webhook sink work?

Event Streams evolves data delivery at Twilio beyond a single-producer-to-single-consumer model, so you have flexibility to create one or multiple subscriptions to stream data to one or multiple sinks. To build with Event Streams, you’ll use the following API resources.

  • Event Types — The various kinds of data that are accessible through the Event Streams APIs.
  • Sinks — The destinations to which data selected by a subscription will be delivered.
  • Subscriptions — Creates a subscription to specific Twilio data and versions.
  • Schemas — The destinations to which data selected by a subscription will be delivered.

Here’s how you set up a webhook sink with Event Streams:

  • You can create a Webhook Sink instance within the Twilio CLI, or using our Sink API. We also provide optional instructions for you to test and validate your webhook sink if you would prefer to do so.
  • Then you can subscribe to one or more event types. Currently, you can stream data from Messaging, Voice, and TaskRouter with Event Streams, with more events coming soon.
  • You’ll start receiving data from Event Streams. The data that is sent to the Webhook Sink is an array of CloudEvents.

How can I get access to Event Streams?

Event Streams is available to Twilio customers today in Private Beta. For more information, and to sign up to be updated on the product, visit our website.

What’s next for Event Streams?

We are actively exploring other sink types (e.g., native integrations for Azure, Google Cloud Platform, etc.). We are also actively working on making the data from all Twilio products available through Event Streams. If you have feedback for our product teams, please let us know through your Twilio account rep, or by contacting our Support team.

Jessy Sweet is a Product Marketing Manager at Twilio, working cross-functionally to create marketing strategies and plan product launches on the Twilio platform marketing team. She has dedicated her career to deeply understanding customers, and championing their needs to build the most relevant, valuable, and delightful products and experiences possible.