Configuring Amazon S3 as a destination

You’ll need to be a Staff or Admin user in ChartMogul and Amazon AWS to complete the steps outlined in this article. Read more about user roles and permissions.

Configure Amazon’s Simple Storage Service (S3) as one of ChartMogul’s advanced destinations to export MRR movement, customers, custom attributes, and tags. From there, you can send your data to a data warehouse and combine it with other datasets for further analysis.

Here’s what we cover in this article:

Resources and further reading:

Before you begin

Decide which format you'd like ChartMogul to send data, either as a gzip compressed CSV (according to RFC4180) or using the parquet data storage format (with Snappy compression).

Step 1 — Create an S3 bucket for ChartMogul

First, create a new Amazon S3 bucket:

  1. Within S3, navigate to Buckets > Create bucket.
  2. Name your S3 bucket according to Amazon’s bucket naming rules and enter the name in the Bucket name field.
  3. Select an AWS Region from the AWS Region drop-down.
  4. Complete any additional setup option you may need, then click Create bucket.

Step 2 — Create an IAM policy

Next, create an AWS Identity and Access Management (IAM) policy that allows ChartMogul to access the S3 bucket you just created.

  1. Within IAM, navigate to Policies > Create policy.
  2. Click the JSON tab and add the following code, replacing <BUCKET_NAME> with the name you used to create the bucket in the previous step. Then click Next: Tags.
    {
       "Version": "2012-10-17",
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "s3:GetObject",
                   "s3:PutObject",
                   "s3:PutObjectAcl",
                   "s3:ListBucket",
                   "s3:DeleteObjectVersion",
                   "s3:DeleteObject",
                   "s3:GetObjectVersion"
               ],
               "Resource": [
                   "arn:aws:s3:::<BUCKET_NAME>/*",
                   "arn:aws:s3:::<BUCKET_NAME>"
               ]
           }
       ]
    }
  3. Finally, give your policy a name, e.g., ChartMogul, and click Create policy.

Step 3 — Create an AWS IAM user

Now, create an AWS Identity and Access Management (IAM) user that will have permission to access the S3 bucket. After creating the user, they’ll have an Access key ID and a Secret access key, which you’ll use to create the destination in ChartMogul.

  1. Within IAM, go to Access management > Users > Add users
  2. Enter a name for the user, e.g., ChartMogul, in the User name field.
  3. Select Access key - Programmatic access as the AWS credential type.
    Screenshot
      of selecting an AWS credential type with two options: Access Key - Programmatic
      access and Password - AWS Management Console access
  4. Under Set permissions, click Attach existing policies directly, then search for the IAM policy you created in the previous step using its name and tick the box to select it. Finally, click Next.
  5. Add any tags you’d like to the user, then click Next: Review.
  6. If everything looks good, click Create user.
Be sure to note the Access key ID and Secret access key. You’ll need these in the final step, and this is your only opportunity to write them down.

Step 4 — Add Amazon S3 as a destination

Finally, add your Amazon S3 bucket as a destination in ChartMogul.

  1. Within ChartMogul, navigate to Settings & Data > Destinations.
  2. Click Add Destination and select Amazon S3.
  3. Enter a unique name for your destination in the Name field.
  4. Choose how often you’d like ChartMogul to export data to your S3 bucket, either:
    • Daily (9:00 UTC each day)
    • Weekly (9:00 UTC each Sunday), or
    • Monthly (9:00 UTC on the first day of each month)
  5. Choose the datasets you'd like to export: Screenshot of the Add a Destination dialog with some of Datasets selected.
  6. Choose the file type you'd like to export, either:
    • Parquet or
    • CSV
  7. Enter the name of your bucket as it appears on your AWS account in the Bucket Name field.
  8. Choose the region you selected when creating your bucket from the AWS Region drop-down.
  9. Enter the Access Key ID and Secret Acess Key for the IAM user you created.
  10. Click Save and Test Connection.

ChartMogul will send test data and, if successful, add your S3 bucket as a new destination. ChartMogul will send actual data to Amazon S3 with the next scheduled export depending on your Update Frequency setting.

Was this article helpful?

We’re sorry to hear that. Would you like to share more feedback?


Thanks for your feedback!