Creating an S3 Snapshot Exposure Source

Edited

An S3 snapshot exposure source lets you upload exposure data in batch by delivering gzip-compressed CSV files to an MX8-managed S3 bucket. This is the right choice when you collect exposure data in your own systems and want to send it server-side — especially if you need to hash IP addresses before they leave your environment.

Before you begin

You'll need the following information ready:

  • A source name for this exposure source.

  • A retention period (in days) for how long records should be kept.

  • Your Hash Salt (if you're salting hashed IPs).

  • The column names in your CSV files that correspond to MX8's required fields.

  • Your IAM Role ARN if you want MX8 to grant your AWS role upload permissions (this maps to the External ARN field).

Step 1 — Open the creation dialog

Navigate to your exposure sources and click Create Exposure Source. Select the S3 snapshot card.

Step 2 — Configure basic settings

Fill in the top-level fields:

  • Source Name — A descriptive label for this source. This cannot be changed after creation.

  • Retention Days — How long MX8 retains exposure records for matching. Defaults to 7 days but can be set longer if your campaign requires it.

  • Enabled — On by default. Toggle off to configure without activating.

Step 3 — Add dimensions

Dimensions work the same way as they do for pixel sources — they're additional attributes attached to each exposure record, used as aggregation buckets. Type a dimension name into the Add Dimension field and press Enter or click + Add Dimension.

Step 4 — Configure field mappings

This is where you tell MX8 how your CSV columns map to the fields it needs. Your column names don't need to match MX8's — you just need to specify which of your columns corresponds to each field.

Required fields:

  • Hash Salt — The salt value used when hashing IP addresses. If you don't use a salt, leave this empty.

  • UID Field Mapping — The column name in your CSV that contains the user identifier (e.g., user_id).

Optional fields:

  • Exposed IP Field Mapping — The column containing plaintext IP addresses. Provide this or Hashed IP Field Mapping.

  • Hashed IP Field Mapping — The column containing hashed IP addresses. Provide this or Exposed IP Field Mapping.

  • Brand Field Mapping — The column containing the brand name associated with each exposure.

  • External ARN — Your IAM Role ARN. MX8 uses this to grant your AWS role permission to upload files into your dedicated S3 prefix.

Step 5 — Configure dimension mappings

If you added dimensions in Step 3, scroll to the Dimension Mapping section and click the + button to map each dimension to the corresponding column in your CSV.

Step 6 — Create the source

Click Create to save. The source is now ready to receive files.

Note: The hash algorithm is currently fixed to MD5. Other algorithms are available on request — contact your MX8 account team if you need a different algorithm.

What's next

Was this article helpful?

Sorry about that! Care to tell us more?

Thanks for the feedback!

There was an issue submitting your feedback
Please check your connection and try again.