This feature is not currently available when using Twilio Regions Ireland (IE1) or Australia (AU1). This is currently only supported with the default US1 region. A full list of unsupported products and features with Twilio Regions is documented here.
The BulkExport API provides an efficient mechanism for retrieving all of your activity logs from the Twilio platform on an ongoing basis, or for one-off downloads. Using BulkExport, you can access daily dumps of the previous day's Messages, Calls, Conferences, or conference Participants, eliminating the need to iterate through the list resource one page at a time to download your records. The BulkExport files are automatically removed after seven days. You can also use BulkExport to generate a set of historical daily dumps over a range of dates.
When a BulkExport completes, it can fire a webhook and/or send an email. This applies to the daily export if configured and to custom jobs. In both cases, successful exports will generate a Day resource for each day requested.
BulkExport is useful if you have:
Control over BulkExports and the data exported is available under the following URL:
_10https://bulkexports.twilio.com/v1/Exports/<resource_type>
There are four parts to BulkExport:
The ExportConfiguration resource lets you specify if you have a Twilio Editions product, and whether exports will take place automatically every day. This makes getting the data much more simple: you just configure the webhook. This will be called when the day's file is available, and you can then download and process your data.
Jobs lets you choose a range of dates to export data for. One data file will be generated for each day in the range. A parent account and all associated subaccounts can request data for up to a total of 366 days within a UTC calendar day. If requesting a subaccount, the parent account will be used to determine the number of days being requested within a UTC calendar day. For instance, if you submit requests across several subaccounts, and the aggregate number of requested days exceeds 366 within 24 hours, your request will be rejected. In this instance, you'll need to wait until the next UTC calendar day to make any further requests. The result data for the requested days will be visible using the Day resource. You will receive a callback and/or email for each job that is completed. When a custom job completes, it will generate one Day resource for each day in the requested period.
By default, the system will send bulk export job initiation notifications to account Owners and Admins, so they can keep a tab on the export requests, and flag/delete unwanted requests. Admins will be able to unsubscribe to these notifications from the notification center on the console.
Get a list of jobs in progress or that have recently been completed. Completed jobs will appear on the job list for seven days. You can delete jobs before they are complete.
The Days resource lets you examine the list of exported days available, either because they have been already generated by an export job or an automatic daily export. Each day file is named with the ISO 8601 date, and days are listed in order of generation.
There is no way to delete completed Day files, but they will be deleted automatically seven days after their creation.
Resource | Description |
---|---|
ExportConfiguration | Configure export webhooks. Twilio Enterprise Edition customers can also set daily exports. |
ExportCustomJob | Create new jobs to export data, and list current jobs and their status. Running a job will create the corresponding Days. |
Jobs | View the status of current jobs, and delete incomplete custom jobs. |
Days | List and fetch the exported message data for given days. |
There are two ways to use BulkExport:
You can then use the Day resource to list all completed exports by day and to download the message data for any of those days.
Day files are stored and returned as compressed (Gzip) JSON files with one record per line. Records are similar to the Message resource. The differences are:
The following fields are not present:
price_units
api_version
error_message
(but
error_code
is)
uri
subresource_uris
(containing the media URLs)
Day files are stored and returned as compressed (Gzip) JSON files with one record per line. Records are similar to the Calls resource. The differences are:
The following fields are not present:
uri
subresource_uris
NOTE: Using the DELETE
method on Archived Calls API resources does not also perform a DELETE
operation on those resources under the Voice API. For resources less than 13 months old, deleting calls via the Voice API will also result in them being deleted under the Bulk Export API. Resources older than 13 months can only be deleted via BulkExport API.
Day files are stored and returned as compressed (Gzip) JSON files with one record per line. Records are similar to the Conferences resource. The differences are:
The following fields are not present:
api_version
uri
subresource_uris
Day files are stored and returned as compressed (Gzip) JSON files with one record per line. Records are similar to the Participants resource. The differences are:
The following fields are not present:
uri
label