Menu

Expand
Rate this page:

Encrypted Recordings

This feature is only available through Twilio Enterprise Edition or Security Edition. For further information contact the Twilio sales team.

Overview

The Twilio Recording Settings REST API lets you configure Twilio to store your recordings encrypted. Recording Settings work per-account (i.e. project). If you activate encryption, all Video Recordings in your account (or project) will get encrypted.

This document contains reference information about the Recording Settings REST API for encryption. For a step-by-step guide you can also read the Encrypting your Stored Media developer guide

Contents

URI Schemes

These are the URI schemes for the Recording Settings REST API and the supported methods:

  • /v1/RecordingSettings/Default
    • GET: Retrieves current Recording Settings.
    • POST: Updates the Recording Settings.

Recording Settings instance resource

The Default RecordingSettings resource holds the default recording settings for the given Twilio account (or project). Its configuration will be applied to all Recordings created in such account (or project).

Base URL

The Recording Settings default resource is located at the following Base URL:

https://video.twilio.com/v1/RecordingSettings/Default

Resource Properties

A RecordingSettings resource has the following properties:

Resource Properties in REST API format
account_sid
sid<AC> Not PII

The SID of the Account that created the RecordingSettings resource.

friendly_name
string Not PII

The string that you assigned to describe the resource and show the user in the console

aws_credentials_sid
sid<CR> Not PII

The SID of the stored Credential resource.

aws_s3_url
url Not PII

The URL of the AWS S3 bucket where the recordings are stored. We only support DNS-compliant URLs like https://documentation-example-twilio-bucket/recordings, where recordings is the path in which you want the recordings to be stored. This URL accepts only URI-valid characters, as described in the RFC 3986.

aws_storage_enabled
boolean Not PII

Whether all recordings are written to the aws_s3_url. When false, all recordings are stored in our cloud.

encryption_key_sid
sid<CR> Not PII

The SID of the Public Key resource used for encryption.

encryption_enabled
boolean Not PII

Whether all recordings are stored in an encrypted form. The default is false.

url
url Not PII

The absolute URL of the resource.

In the table above, the following properties are reserved for the feature called External S3 Storage:

  • aws_credentials_sid
  • aws_s3_url
  • aws_storage_enabled

HTTP GET: Get Settings

Retrieves your account's default Recording Settings.

For example:

Loading Code Sample...
        
        

        Fetch Recording Settings

        HTTP POST: Set Settings

        Sets your account's default Recording Settings. POST requests support the following parameters:

        Parameters in REST API format
        friendly_name
        Required
        post string Not PII

        A descriptive string that you create to describe the resource and be shown to users in the console

        aws_credentials_sid
        Optional
        post sid<CR> Not PII

        The SID of the stored Credential resource.

        encryption_key_sid
        Optional
        post sid<CR> Not PII

        The SID of the Public Key resource to use for encryption.

        aws_s3_url
        Optional
        post url Not PII

        The URL of the AWS S3 bucket where the recordings should be stored. We only support DNS-compliant URLs like https://documentation-example-twilio-bucket/recordings, where recordings is the path in which you want the recordings to be stored. This URL accepts only URI-valid characters, as described in the RFC 3986.

        aws_storage_enabled
        Optional
        post boolean Not PII

        Whether all recordings should be written to the aws_s3_url. When false, all recordings are stored in our cloud.

        encryption_enabled
        Optional
        post boolean Not PII

        Whether all recordings should be stored in an encrypted form. The default is false.

        In the table above, the following parameters are reserved for the feature called External S3 Storage:

        • AwsCredentialsSid
        • AwsS3Url
        • AwsStorageEnabled

        Enabling Encrypted Recordings

        The following code snippets illustrate how you can set Encryption in your Recordings settings:

        Loading Code Sample...
              
              

              Creates or updates the configuration to upload encrypted files

              Known Problems and Limitations

              • If you activate Encryption in your account, you will not be able to use Compositions in such account given that Compositions require the source recordings to be stored unencrypted.
              Rate this page:

              Need some help?

              We all do sometimes; code is hard. Get help now from our support team, or lean on the wisdom of the crowd by visiting Twilio's Stack Overflow Collective or browsing the Twilio tag on Stack Overflow.

              Loading Code Sample...
                    
                    
                    

                    Thank you for your feedback!

                    Please select the reason(s) for your feedback. The additional information you provide helps us improve our documentation:

                    Sending your feedback...
                    🎉 Thank you for your feedback!
                    Something went wrong. Please try again.

                    Thanks for your feedback!

                    thanks-feedback-gif