Asset Management

Utilize AWS S3 buckets for Videos

BlendVision One simplifies your video management process by directly integrating with your existing AWS S3 buckets. The following sections will guide you through setting up your cloud storage, obtaining trust policy information, creating cloud storage, and validating the existence of files in your cloud storage.

Direct use of videos stored in S3 buckets

BlendVision One supports using videos directly from your AWS S3 buckets. There's no need to download and upload your videos again, as BlendVision One can access and encode your videos directly from your S3 buckets. 

Secure AWS S3 bucket access

For security reasons and to avoid exposing your AWS credentials, we employ AWS IAM Roles to provide BlendVision One access to your S3 buckets. This approach ensures that only the necessary permissions are granted and maintained securely.

To be used as an input for encoding and/or output to receive encoded VODs without disclosing your AWS credentials, we will use AWS IAM Role to allow BlendVision One to access your AWS S3 bucket.

For more information about AWS IAM role, refer to Provide access to AWS account owned by third party.

Obtain AWS trust policy information

Before you start, you need to set up permissions to access the AWS S3 bucket. You can obtain the necessary information for the trust policy by making a POST request to the following API:

POST /bv/configurations/v1/cloud-storages/trust-policy

This will return a response containing:

  "aws_account_arn": "string",
  "role_arn": "string",
  "external_id": "string"

This information is then used in a trust policy, which is a document that defines permissions for a user, group, or role. Here's an example of what a trust policy looks like:


Create cloud storage

To create cloud storage where you will be storing your assets for encoding, use the following API:

POST /bv/configuration/v1/cloud-storages

The parameters required for aws_storage to create the cloud storage for AWS S3 bucket:

name type description
bucket_name string AWS S3 bucket name
path string Path to AWS S3 bucket
region string The region of AWS S3
user_role_arn string The user role ARN to set permissions to the bucket
external_id string The external ID to identify the AWS settings


Your request body should look like:

  "name":"your cloud storage name",
    "bucket_name":"your AWS bucket name",
    "path":"path to your AWS bucket",
    "region":"region of your AWS S3",
    "user_role_arn":"your user role ARN",
    "external_id":"your external ID"

Upon successfully creating the cloud storage, the API will return a response containing the ID of the newly created cloud storage. Remember to set the permissions so the platform can fetch the assets or store outputs.

Validate cloud storage

Before starting encoding, you can validate if the file exists in the cloud storage by using the following API:

POST /bv/cms/v1/cloud-storages/{id}:validate-file

Once the file in cloud storage can be fetched successfully, the response containing file_path, file_name, and file_size will be returned. Here's an example of a response:


With these steps, you can effectively manage your videos with BlendVision One, leveraging your existing AWS S3 buckets while ensuring secure access and utilization.