How to link email addresses to Repro¶
There are three ways to link user email addresses to Repro. Please refer to the following steps according to your use case.
Integration method |
Overview |
Use case |
|---|---|---|
Upload via dashboard |
Upload a list of email addresses as a CSV file from the Repro dashboard. |
Bulk import at the start of using Repro email, or import email addresses extracted from CDP or your own system. |
Upload to S3 |
You can register user profiles by uploading CSV files to the AWS S3 bucket provided by Repro. |
Continuous import of email addresses held in CDP or your own system |
Set via SDK (iOS/Android/Web) |
Set the email address as a user profile via SDK. |
Import when obtaining email addresses in your app or service |
Import email addresses from the admin panel¶
Navigate to the user info import screen for mail delivery¶
Log in to the admin panel and click [Settings] > [Mail Settings] > [User Info Import for Mail Delivery] from the side menu.
Import email addresses¶
Import a CSV file > Click [Select File], choose the import type, and import email addresses. Use a CSV created according to the specifications described below.
Import type |
Description |
Deliverable or not |
|---|---|---|
Import as deliverable user |
You can import opted-in email addresses as delivery targets. |
Performed |
Import as unsubscribed user |
You can import email addresses unsubscribed via website or app. |
Not performed |
Import as suppressed user |
You can import email addresses that should not receive emails for reasons other than unsubscribe or bounce. |
Not performed |
Import as bounced user |
You can import hard-bounced email addresses, such as those that do not exist. |
Not performed |
If you import an email address that already exists in Repro¶
If an email address already exists in Repro and is included in the import list, you can choose to keep the existing status or overwrite it with the import status.
Example:
Keep Repro status |
Import type |
Email address status before import |
Email address status after import |
|---|---|---|---|
Check |
Import as deliverable user |
Bounced user |
Bounced user |
Do not check |
Import as deliverable user |
Bounced user |
Deliverable user |
If you want to keep the status, check 'Keep Repro status'. If selected, only import as deliverable user is available.
CSV specification¶
Details of the CSV to upload
CSV format¶
user_id,email_address
123456,aaaa@example.com
234567,jjjj@example.com
Required columns vary by import type.
Import type |
Required columns |
|---|---|
Deliverable user |
user_id 、 email_address |
Optout user |
email_address |
Suppressed user |
email_address |
Bounced user |
email_address |
The maximum uploadable CSV file size is 500MB.
Only UTF-8 encoding is supported for CSV files. If the file contains Japanese or other characters and is not saved as UTF-8, an error will occur on upload.
The following cases will result in an error as an 'invalid CSV file' during upload.
A file that is not a real CSV, just renamed with a .csv extension.
The file contains characters that cannot be interpreted as UTF-8.
Required columns are missing from the CSV header (first row).
Duplicate columns exist in the CSV header.
If the email address is empty or in an invalid format, the upload will succeed but an error email will be sent indicating the import failed.
You can download the error log as a CSV file like the following.
user_id,email_address
has_error_mail_address,CSVの書式が正しくありません、不正なダブルクォーテーションが使われています
S3 upload¶
You can register email addresses by uploading a CSV file to the AWS S3 bucket provided by Repro.
Note
Before using this feature, you need to obtain authentication credentials for uploading objects to the AWS S3 bucket provided by Repro. For more details, please refer to the section Create an access key for uploading to the AWS S3 bucket'.
You can check the S3 bucket and path to upload to in [Settings] > [Mail Settings] > [User Info Import for Mail Delivery].
Warning
CSV file names must not contain '/' or whitespace characters. The maximum file size is 500MB.
For example, using the AWS CLI, you can upload a CSV file with email addresses to S3 as shown below. Use the value for <YOUR_APP_ID> from the admin panel. Specify only one type for (insert|subscribe|unsubscribe|stopped|bounced). The behavior for each type is as follows. For the behavior when importing email addresses that already exist in Repro, see this example.
Import type |
Description |
If you import an email address that already exists in Repro |
|
|---|---|---|---|
| insert | Deliverable user |
You can import opted-in email addresses as delivery targets. |
Keeps the status of email addresses that already exist in Repro |
| subscribe | Deliverable user |
You can import opted-in email addresses as delivery targets. |
Deliverable user |
| unsubscribe | Optout user |
You can import email addresses unsubscribed via website or app. |
Optout user |
| stopped | Suppressed user |
You can import email addresses that should not receive emails for reasons other than unsubscribe or bounce. |
Suppressed user |
| bounced | Bounced user |
You can import hard-bounced email addresses, such as those that do not exist. |
Bounced user |
$ export AWS_ACCESS_KEY_ID=AKIAXXXXXXX
$ export AWS_SECRET_ACCESS_KEY=XXXXXX
$ aws s3 cp user_profiles.csv s3://repro-data-store/<YOUR_APP_ID>/email_address/:year/:month/:day/(insert|subscribe|unsubscribe|stopped|bounced)/mail_address.csv
FAQ¶
How do I know if the file upload is complete?¶
When the import process is complete, you will receive a notification email with details of the imported file. If there are errors, a download link for the error CSV will be included.
Are year, month, and day all required in the S3 path?¶
All are required. Please specify the upload date in yyyy/mm/dd format (e.g., 2025/04/30).
Can I upload another file while uploading to S3?¶
If the S3 path and file name are the same, only the last uploaded file may be processed. If you want to upload files with the same name on the same day, change the file names.
If different email addresses are set and imported for the same user, how is the user's email address set?¶
The last imported email address is applied. For example, if a file with the following two lines is imported, the email address for user-01 will be mail-address-02@example.com.
user-01,mail-address-01@example.com
user-01,mail-address-02@example.com
Set email address using SDK¶
You can set the user's email address as a standard user profile via the iOS/Android/Web SDK, and use it for Broadcast mail delivery. See below for SDK setup details.