You can import event data into Blueshift by uploading a CSV file to an Amazon S3 bucket. This can be done either as a one-time activity or on a recurring basis using the scheduler. Blueshift provides the option to use either its default Amazon S3 bucket or a custom S3 bucket.
Prerequisites
- Set up S3 Integration: Ensure your Amazon S3 bucket is integrated with Blueshift. Follow the steps outlined in the S3 Integration Guide.
-
Uploading to Blueshift's S3 Bucket:
- Use the default adapter Blueshift Import.
- Upload event data files to the folder: bsft-customers/<site-name>/import/event-imports/
- Obtain S3 credentials from the Account Settings > API Keys tab. Note: Only users with an Admin role can view credentials.
-
Uploading to a Custom S3 Bucket:
- Use the Custom Import adapter.
- Ensure your S3 bucket has the correct CORS configuration.
- Provide your S3 credentials and file path. For example:
bucket: bsft-customer_events
path: demosite.com/event_imports/import/event_feeds.csv
Starting your event import journey
- Navigate to Events: Go to Customer Data > Events in the left navigation bar.
- Open the Import Menu: Click the Import Events button at the top of the Events page.
- Select a Data Source: Choose your preferred data source from the available options.
Proceed with the selected data source to configure your import settings.
Left-side panel overview
- Source: Displays the method of data upload. Example: Direct File Upload.
-
Destination:
- Specifies the target location for the data. Example: Events.
- Requires selecting an event under Select Event (mandatory field).
- Trigger Campaigns: An optional checkbox to activate campaigns based on imported event data.
-
Notification Preferences:
- To: Email IDs to receive task notifications.
- CC: Additional recipients for notifications.
-
Settings:
- Notify - Any Status: Sends notifications for all task statuses.
- Notify - If more than [X]% of records fail, send alerts based on a failure threshold, e.g., 70% of records fail.
Email notification recipients
Important: Email notification recipients cannot be modified after an import task is created. To update notification recipients, you'll need to delete the current import task and create a new one with the correct email addresses.
Before creating the import, verify that you've specified the correct email addresses for notifications to avoid this extra step later.
Source configuration for S3 upload
- Select an Adapter: Choose the configured S3 adapter from the dropdown.
- Enter File Path: Provide the filename or file path (along with the file name).
-
Information Displayed:
- Bucket: Displays the S3 bucket.
- S3 Base Path: Shows the folder path on the S3 server.
- S3 URI: Auto-generates based on the destination and file name.
- Click Continue to proceed.
Import file settings
- Format (Mandatory): Choose from CSV or JSONL.
-
Encoding (Mandatory): Options include:
- Unicode (UTF-8, UTF-16, UTF-16 Little Endian, UTF-16 Big Endian)
- Western Europe (ISO-8859-1).
-
Delimiter (Mandatory): Options include:
- Comma (,), Tabs (\t), Pipe (|), Semicolon (;)
- Record Separator (ASCII 30), Unit Separator (ASCII 31), Others (customizable).
- Click Continue to proceed.
Data configuration & validation
- Sample Data: Displays 10 records fetched from the source to assist in field mapping.
-
Field Mapping:
- Map the Source Attribute Name to the corresponding Destination Attribute Name and specify the Destination Data Type.
-
Mapping Instructions:
- Only columns mapped to a destination attribute will be imported.
- Map Floating point numeric data types from the source to Decimal in Blueshift.
- Example: For events like purchase, add_to_cart, wishlist, or view, map a column to product_ids (required for events interacting with product catalogs).
- Ensure one column is mapped to a customer identifier, such as customer_id, email, my_custom_id, cookie, device_id, or my_external_id.
Data Quality Check:
- Use Check Data Quality to validate field mappings.
- View data quality percentages, errors, and hints for corrections in the modal.
- Adjust mappings as needed.
Test Run:
- Click Test Run to validate with up to 10 records.
- The modal displays source data alongside mapped JSON.
- Update mappings and re-run tests if necessary.
- Next Steps: Address all validation issues and click Continue to proceed with the import.
Select date and timezone format for import
- Select the appropriate format from the Source Date Format dropdown, or leave it blank to use ISO 8601.
- Select the appropriate timezone from the Source Timezone dropdown, or leave it blank to use UTC.
Additional configuration
- Save Event (Checked by default): Uncheck if you don’t want to use event activity for segmentation.
-
Update Customer Attributes (Checked by default):
- Uncheck if custom attributes in the event shouldn’t be updated on the customer profile.
- Identifier attributes will still be updated.
- Update Catalog Activity (Checked by default): Uncheck if you don’t want catalog activities to be used in segmentation.
- Update Transaction Events (Checked by default): Uncheck if you don’t want transaction event data to be updated.
- Allow Blank Event Attributes (Unchecked by default): Select to include blank attributes in the event payload.
- Enable Goal Events Tracking (Checked by default): Uncheck if you don’t want to attribute the event to any campaign.
-
Save Products for Recommendations (Unchecked by default):
- Select to save product interactions for generating recommendations.
-
Product Saving Mode (opens when selected):
- Replace Products: Replace previous product interactions.
- Append Products: Add new interactions without removing existing ones.
- Add to Timeline: Save interactions in chronological order.
- Click Continue to proceed to the next step.
Scheduling and launching the import task
- Select the Start Date using the date picker.
- Check 'Is it a recurring data import?' to enable recurring imports.
-
Choose when the task ends:
- 'Never' for an indefinite schedule.
- 'At some time' to set an End Date.
-
Set the execution frequency (e.g., every 15 minutes).
- Scheduling options: Minutes, Hourly, Daily, Weekly, and Monthly.
File import processing limits
File imports from S3, SFTP, and EDW (Enterprise Data Warehouse) are batch operations and aren't designed for real-time use cases. We usually pick up new files every ~15 minutes, though timing may vary with system load.
Processing rates: Most entities typically process around 1–2 million records per hour.
Need real-time updates? Our APIs provide faster, more predictable ingestion and are recommended for time-sensitive data.
-
Review the setup and the top right corner of the screen:
- Click the Save button to save the task.
- Click the Launch button to start the task.
View task status
The status of each import task is displayed on the Event Imports page, providing a clear overview of the task's current state and key details like records processed and update frequency.
Comments
0 comments