Skip to main content

Configuring S3 Bucket as storage in Chatwoot

Using Amazon S3#

You can get started with Creating an S3 bucket and Create an IAM user to configure the following details.

Configure the following env variables.

ACTIVE_STORAGE_SERVICE='amazon'S3_BUCKET_NAME=AWS_ACCESS_KEY_ID=AWS_SECRET_ACCESS_KEY=AWS_REGION=

S3 Bucket policy#

Inorder to use S3 bucket in Chatwoot, a policy has to be set with the correct credentials. A sample policy is given below, as the listed actions are required for the storage to work.

{    "Version": "2012-10-17",    "Id": "Policyxxx",    "Statement": [        {            "Sid": "Stmtxxx",            "Effect": "Allow",            "Principal": {                "AWS": "your-user-arn"            },            "Action": [                "s3:DeleteObject",                "s3:GetObject",                "s3:ListBucket",                "s3:PutObject"            ],            "Resource": [                "arn:aws:s3:::your-bucket-name",                "arn:aws:s3:::your-bucket-name/*"            ]        }    ]}

Replace your bucket name in the appropriate places.

User ARN can be found using the following steps:

  1. Login to AWS Console. Go to IAM, and click on Users from the left sidebar. You will be to see the list of users as follows.

s3-users-list

  1. Click on the user, you will be to see a screen as shown below. Copy the User ARN and paste it in the above policy.

user-arn