S3-compatible cloud storage
Voximplant allows developers to use custom S3-compatible cloud storage to store call and conference records.
Contents
How to use an S3-compatible storage
To use cloud storage, you need to add it to your Voximplant account and attach it to an application. To add storage:
- Open the Voximplant control panel.
- Go to Settings → S3 storages.
- Click the Add storage button at the center of the screen or the top right corner.
- Enter your S3-compatible storage credentials and click Add.
To add new S3-compatible storage, you need the following credentials: host, region, bucket name, key_id, and secret_key.
- Go to the Applications section, find the necessary application, click the three dots menu, and choose Edit.
- Choose your newly created S3 storage from the dropdown list and click Save.
Now all call and conference records will be saved in your custom S3-compatible storage instead of the Voximplant cloud.
How to test an S3-compatible storage before usage
If you need to check if your cloud storage works correctly, you can test file uploading before you start recording calls or conferences.
To test your cloud storage, log in to your control panel, go to Settings → S3 storages, and find the necessary storage. Then click on the three dots menu and choose Test.
This starts uploading the test to the custom storage and provides a result in a short time.
What permissions do I need on the provider side
To use an S3-compatible storage with Voximplant, you need to set up storage permissions on the provider side. These permissions differ depending on the provider.
Refer to the S3 storage provider documentation to find out what permissions you need and how to set them up. Here are the instructions for the most popular storage providers. If your provider is not on the list, refer to your provider's documentation.
Amazon Web Services
To set up the AWS storage provider, do the following:
- Create an IAM user at AWS.
- Create an access key for that user. Store the access and secret keys.
Save your secret key to a file, because you cannot restore it after you close the window.
- Grant the
s3:PutObject
permission to the user. - Set up the storage in the Voximplant control panel with the following host: https://s3.amazonaws.com/.
For more information, refer to the Amazon AWS documentation via the links below.
Google Cloud
To set up the Google storage provider, do the following:
- Create a service account at Google cloud.
- Grant the
Storage Object Creator
permission to the created account in the project where the target storage bucket is. - Create a HMAC key for the service account.
- Store the access and secret keys.
Save your secret key to a file, because you cannot restore it after you close the window.
- Set up the storage in the Voximplant control panel with the following host: https://storage.googleapis.com,
For more information, refer to the Google documentation via the links below.
Yandex Cloud
To set up the Yandex storage provider, do the following:
- Create a service account at Yandex.
- Create a new static access key for the service account and save it.
- Grant the
storage → uploader
role to the service account - Set up the storage in the Voximplant control panel with the following host: https://storage.yandexcloud.net
For more information, refer to the Yandex documentation via the links below.
MinIO
To set up the MinIO storage provider, do the following:
- Create an account at MinIO
- Grant the
readwrite
orwriteonly
rights in the settings. - Use the account's username and password as an access key and secret key in Voximplant's control panel.
For more information, refer to the MinIO documentation via the links below.
Cloud storage errors
When you try to access the existing records, you can get the following errors:
Error | Description |
403 | The link to the record is broken (Invalid URI) |
401 | Authorization failed |
416 | Requested range not satisfiable |
404 | File not found (e.g. the file is deleted) |
When you try to access the record in the S3-compatible storage, you can get another S3-specific errors.