Recurring import updates enable you to schedule contact source and relational table imports from files that are uploaded to your Acoustic Campaign SFTP (Secure File Transfer Protocol) account. This way, you can ensure that your Acoustic Campaign database is up-to-date and in sync with external data sources. For example, your Acoustic Campaign database contains a Last Purchase Date field that you want to automatically update each day with data from your data warehouse.
You can schedule a recurring import update to perform daily, weekly, or monthly. When you set up the job, you map the fields to be updated. Then you regularly transfer a database update to the Acoustic Campaign SFTP directory, and the system automatically uses this file to update the database.
Using an automated process requires careful planning and control to avoid damage to data. Column headings (field names) and data types must stay consistent over time. Plan the order of updates ahead to avoid overwriting data. The entire process can also be safeguarded with security measures.
Update options
Import files to update the Acoustic Campaign databases can contain any update data you want to apply as long as the update fields are already mapped, e.g. opt-ins, opt-outs, recent purchases, recent emails, and others. The file format and type must be CSV, TSV, or PSV.
Choices are:
- Add new contacts
- Update field values in the database
- Add new contacts and update existing field values in the database
- Opt out contacts
Set up a recurring import from Data > Import update, or from Database summary for a specific database.
Schedule a recurring import update
You can set up a recurring import update for a specific date and time:
- Daily: every day or every week day. Every day is the default but no time is defaulted.
- Weekly: Weekly at a specific day and time. Select a day.
- Monthly: Monthly on day 1-30 of every month, or the first, second, third, fourth, or last day of every month.
Recurring imports date options include:
- Start date/time (first run date)
- End date/time (last run date), or no end date
Note: Recurring updates are run based on the timezone of the user account that created the update.
- Select File for recurring update:
- Go to Data > Import update.
- On the Import update existing page, select Recurring import update.
- Complete the fields on the Import update existing page.
- Define the data format according to the delimiter selected (CSV, TSV, or PSV).
- If any of the headings are not imported as field names, select the First row contains field names check box.
Checking this box allows default field mapping when possible. The first row of information, the field names, will be grayed out and will not be part of the file import. If the first row of data does not contain field names, leave this box unchecked.
- (Optional) Use the Date field formatting option if the dates in your file are formatted differently from mm/dd/yyyy. Select the portion of the date value that comes first in your file and the formatting for each element.
First Choice Example month mm 01 month m 1 month mon Jan month month January day dd 02 day d 02 year yyyy 2022 year yy 22 - Type the separators between the date elements. They can be up to 2 characters long and include the following characters:
Punctuation Punctuation mark Period . Comma , Question Mark ? Space Froward Slash / When the data job begins, all date values are converted from your format to the Acoustic Campaign required format.
You can clear the settings at any time. You have a sample date that updates when settings are changed. Invalid date values such as January 32, 2022 will be converted to February 1, 2022 during import.
- Click Next.
- If any of the headings are not imported as field names, select the First row contains field names check box.
- Map fields by importing a file into an existing database.
- Check Ignore next to the field number of any field you do not want to include when importing to the existing database.
- For each unchecked field, select a Field Type from the existing database by using the drop-down list in the Database fields column.
- Enter the field name and choose a field type from the drop-down list. Click Add field.
- Click Continue.
One field must be mapped to the system field called Email. To do this, be sure Email is selected as a Field type from one drop-down list under Database fields. All segmenting fields must include numeric data only. If text is found in a segmenting field, the record will not be imported. See Segmenting field in field types for more information. For the date formatting selections made in the prior step to be active, date fields must be labeled with a Date type.
- Edit the default field settings of any field, or for other settings, edit the new fields. If no edits are needed, click Import database.
- Click the Edit link next to any field name to change its settings. Settings you may be able to edit include the following.
- Field name
- Required status – check if the field is required
- Field type – choose from the drop-down list
- Default value – value assigned to the field if it is empty
- Click Next.
A confirmation dialog box displays.
- Confirm that the information is correct.
- Click the Edit link next to any field name to change its settings. Settings you may be able to edit include the following.
To receive email notification when the job's status is complete, enter your email address and click Submit. You may check the status at any time on the Data jobs page and manage recurring imports on the Recurring jobs tab.
Run a recurring import on demand
To force a recurring import to run immediately, follow these steps.
- Go to Recurring data jobs.
- Click the box next to the Job name that you want to run.
- Click the Run now icon to force the recurring job to process immediately.
Manage recurring jobs
You can run, skip an occurrence, deactivate, and activate a recurring job. The job name, description, job type, frequency, last run date/time, and next run date/time are displayed. A status column displays active, inactive, or completed.
The Recurring jobs tab shows you a summary of all active recurring import jobs.
To see the recurring data jobs, go to Data > Data jobs > Recurring jobs. Select your database. From this point, you can run or activate a recurring job, skip an occurrence of a recurring job, and deactivate a recurring job.
It is not possible to change the associated user for an existing recurring data job. The job you want to update must be canceled and then recreated under the new user.
To prevent this from being an issue in the future, consider setting up a shared user account or use the Become user feature to manage your recurring jobs. In this instance, should the managing user leave, only the password on the account needs to be changed instead of recreating the jobs under the new user's account.
Change the schedule of a recurring import
After you set up a recurring import you can change the data job's name or schedule, including the date range, on the Recurring database imports tab.
Access the Recurring Database Import tab by clicking the name of the recurring data job or by selecting the Settings icon within the Fields tab of your database.
Note: You can't change the uploaded file name or the file type.
Modify a recurring import
After a recurring import is set up, you can modify it.
- Go to Recurring jobs.
- Click the job that you want to modify in the Job Name column.
You can delete, deactivate, rename, or change the schedule and/or date range of the recurrence.
Edit a database while a recurring import is active
If you need to make change to your database, you cancel your recurring job, make the changes to the fields/database, and re-schedule the recurring import. You also need to make sure that any changes you make in Acoustic Campaign are reflected in the file being used for the import.
Changing the database name does not cause your recurring list import to fail because Acoustic Campaign uses a numeric ID to identify the database. However, changing the fields of a database, such as renaming, removing, adding, or changing field type, can causes problems. For example, new field names being overwritten by old ones, data being imported improperly, and so on.
Wild cards
When Acoustic Campaign checks for new update files in the SFTP directory, it can use wild cards within the name to search for. This provides the ability to name files by type and date to distinguish them for different dates and purposes.
For example, if you have opt-in updates, opt-out updates, and profile updates as separate files, and you put them in the directory more often than the processing frequency, you can prevent them from being overwritten by naming them:
- ourorg_optin_11_25_22.csv
- ourorg_profile_11_26_22.csv
- ourorg_optout_11_27_22.csv
Note: The addition of a date does not affect the order of processing.
Acoustic Campaign can then be set to search for ourorg*.csv and all files are found and processed.
You can use the * as a wild card. So, should your uploaded file have a date at the end that changes daily, replace the changing elements with an *.
If you expect another system to place a file on your SFTP server daily with a name like datafile1234.csv, and then tomorrow another file is pushed out with the same name but the different value appended, datafile2345.csv, then the wild card will be useful.
When you set up the recurring import, designate the file name as datafile*.csv, and Acoustic Campaign look for any file that starts with datafile and ends with .csv.
Directories and file names
The update file must be transferred to your organization's Acoustic Campaign SFTP directory. Consider a few tips for efficient file naming:
- Files are automatically removed from the SFTP directory when retrieved for processing.
- If multiple files exist in the SFTP directory that match the name because of wild cards, all files found are processed. For example, if you send one file for opt-ins, another for profile updates, and another for opt-outs, all are processed.
- Files remain in the SFTP directory until they are processed on the scheduled date.
Note: The order of processing could potentially overwrite newer data from multiple updates processed out of sequence. Sending another update with the same file name, prior to processing, could overwrite a pending file.
Safeguards
- Recurring import permission is under the control of organization administration. Permission can be turned off and the settings do not display.
- When a file in the SFTP directory is retrieved to update a database, the file is deleted from the directory.
- If more than one file is found matching the path/file name (due to wild cards), all files are processed.
Note: Every day, a process removes files that are older than 14 days.
Error handling
Processing checks for missing mapping files and mismatch of the mapping file and database file. If the file is missing for an import job, the data job is marked as Failed and an error notification sent. The job runs again at the next scheduled interval.
Notification
If you requested notification when submitting the data job, we will send it to the specified email address or, if not provided, to your Acoustic Campaign account.
It is not possible to change the email notification for an existing recurring import. You would have to cancel the current recurring job and replace it with an identical one.
Tip: Use an alias/distribution list mailbox for the email notification when setting up the import. This way, it will be easier to change the recipients without canceling the import.
Recurring imports and SMS consent
While it is possible to pass SMS consent via recurring import, keep in mind that you cannot update an SMS consent opted-out contact to an opted-in state. This is to ensure that you do not accidentally send an SMS message to a contact without consent, which is against the unsolicited marketing communications laws. You can only add or update SMS consent for records that do not have any consent for a specific text to join program.
If you do have a requirement to update SMS Consent for any opted-out contacts, you may do so using the ImportList API. When leveraging the IS_CONSENT parameter, ensure you use: HONOR_OPT_OUT_STATUS with a flag of "False" (Update consent with the consent status in import file).