Guides

Customer.io (via S3)

Sharing data from Customer.io to Toplyne is a two-step process.

  1. Share data from Customer.io to Amazon S3
  2. Share data from Amazon S3 to Toplyne

Share data from Customer.io to Amazon S3

Before you begin, make sure that you’re prepared to ingest relevant parquet files from Customer.io. For S3, you’ll need to set up your bucket with ListBucketVersions, ListBucket, GetObject, and PutObject before you can sync data from Customer.io.

  1. Create an Access Key and a Service Key with read/write permissions to your S3 or Yandex bucket.
  2. Go to Integrations and select Amazon S3, and then click Sync Bucket.
  3. Enter information about your bucket and click Select data.
    1. Enter the Name of your bucket.
    2. Enter the path to your bucket.
    3. Paste your Access and Secret keys in the appropriate fields.
    4. Select the Region your bucket is in.
  4. Select the data types you want to export from Customer.io to your bucket. By default, we export all data types, but you can disable the types you aren’t interested in.
  5. Click Create and sync data.

Here's the IAM policy that you'd need to follow:

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

Share data from Amazon S3 to Toplyne

Prerequisites

To connect your AWS S3 bucket to Toplyne, you need:

  1. An S3 bucket containing files with supported file types and encodings.
  2. For private or encrypted buckets, an AWS account with the ability to grant Toplyne permission and to read from the bucket.

To authorize Toplyne to connect to your S3 bucket, follow these instructions:

We recommend disabling Access Control Lists (ACLs) on each S3 bucket so that the bucket contents are controlled by the bucket's access control settings and not the original file owner's settings. For more information about disabling ACLs for your bucket, see AWS S3 documentation.

Create a bucket for Toplyne

  1. We recommend creating a bucket exclusively for toplyne data as it makes it very very easy for you to share data with us.
  2. Open your S3 console and navigate to the permissions tab.
    1. <https://s3.console.aws.amazon.com/s3/buckets/><bucket_name>?tab=permissions
  3. We want you to grant toplyne read-only permissions to this bucket.
    1. Navigate to the Bucket policy and Edit it.
    2. Paste this JSON and update the bucket policy field - your-bucket-name there.
    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Sid": "1",
                "Effect": "Allow",
                "Principal": {
                    "AWS": "arn:aws:iam::388856629077:role/ToplyneServiceRoleForCustomerDataAccess"
                },
                "Action": [
                    "s3:GetObject",
                    "s3:GetObjectVersion",
                    "s3:ListBucket",
                    "s3:GetBucketLocation"
                ],
                "Resource": [
                    "arn:aws:s3:::{your-bucket-name}",
                    "arn:aws:s3:::{your-bucket-name}/*"
                ]
            }
        ]
    }
    

Share your S3 bucket name with the Toplyne team.