Skip to content
Guide
Index
Integrations
Data Sources

S3 Data Source

Guide to configuring Amazon S3 as a data source in LlamaCloud, including UI, API, client setup, and required AWS permissions.

Load data from Amazon S3

s3

from llama_cloud.types.data_source_create_params import (
CloudS3DataSource,
)
data_source = client.data_sources.create(
name="my-data-source",
component=CloudS3DataSource(
bucket='<test-bucket>',
prefix='<prefix>', # optional
aws_access_id='<aws_access_id>', # optional
aws_access_secret='<aws_access_secret>', # optional
s3_endpoint_url='<s3_endpoint_url>' # optional
),
source_type="S3",
project_id="my-project-id",
)

These are the required IAM permissions for the user associated with the AWS access key and secret access key you provide when setting up the S3 Data Source. These permissions allow LlamaCloud to access your specified S3 bucket:

{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "LLamaCloudPermissions",
"Effect": "Allow",
"Action": [
"s3:GetObject",
"s3:ListBucket"
],
"Resource": [
"arn:aws:s3:::your-bucket-name,
"arn:aws:s3:::your-bucket-name/*"
]
}
]
}