Loader Mailchimp
The Mailchimp loader allows you to:
- Create new list(s),
- Update existing list(s),
- Add members to a new list(s),
- Add members to an existing list(s),
- Update members data in an existing list(s),
- Delete members from an existing list(s),
The only input parameter in the Mailchimp loader is an API key. The behaviour of the component is defined by the name(s) of the input CSV file(s) in Data In and its fields (columns).
Requirements
To set up the Mailchimp loader configuration, you will need a Mailchimp account with at least a manager level of access to obtain an API key.
Learn more: about user levels in Mailchimp, please refer to this article.
Learn more: Mailchimp API reference, Merge tags cheatsheet
Data In/Data Out
Data In |
CSV files for the Mailchimp loader should be located in the `data/in/tables` folder. The names and the structure of the tables are the key parameters for setting up the Mailchimp loader configuration. The structure of the input data is described below in the Configuration Parameters section. |
Data Out | N/A |
Learn more: about the folder structure here.
Parameters
API Key (required)
The API Key allows accessing the data without sharing credentials with third-party applications and is needed for Meiro Integrations to get access to the Mailchimp data.
The API key can be generated in Mailchimp account (manager level of access is needed) and copy-pasted to Meiro Integrations: go to Account → Extras → API Keys → Create A Key → Copy API key
Learn more: about Mailchimp API keys, please check this article.
Input Data
The tables you provide will determine the component’s behaviour. The input table names are hardcoded and unambiguously determine the action of the component.
An input table(s) for each action might contain many optional fields based on parameters described in Mailchimp API. To avoid redundancy in this article we will describe only required and the most important optional fields for each action.
Learn more: the Mailchimp documentation to explore optional fields available for uploading.
Notation Conventions
The following notation conventions are used:
- Each action is followed by the name of the table(s) which determine the component’s behaviour.
- Each field described as
name | format/option | comments
(if applicable). - Possible options if applicable are listed as follows:
<option1, option2>
. - Fields marked with
*
(below) are mandatory. - You can completely leave out the non-mandatory columns from the CSV table.
- Boolean values must be either
true
orfalse
(an empty string is treated asfalse
). - Nested fields are separated from a parent with
__
(double underscore aka the "dunder"). So,contact__company
means that thecompany
field is nested inside thecontact
. The same applies to merge tags.
Create new lists |
Create a new list(s) without adding new members to the list(s). Input:
Fields: new_lists.csv name* | string contact__company* | string contact__address1* | string contact__address2 | string contact__city* | string contact__state* | string contact__zip* | string contact__country* | string contact__phone | string permission_reminder* | string use_archive_bar | boolean campaign_defaults__from_name* | string campaign_defaults__from_email* | string campaign_defaults__subject* | string campaign_defaults__language* | string notify_on_subscribe | string notify_on_unsubscribe | string email_type_option* | boolean visibility | <pub, prv> |
Update existing lists |
Updates existing information about the existing list(s). In the case of optional fields, only provided fields will be updated. Input: Fields: the same as in
|
Add members to a new list(s) |
Allows to create a new list and add new members in one action. Input Data Fields
custom_id* | string | is used as a reference for add_members.csv table name* | string contact__company* | string contact__address1* | string contact__address2 | string contact__city* | string contact__state* | string contact__zip* | string contact__country* | string contact__phone | string permission_reminder* | string use_archive_bar | boolean campaign_defaults__from_name* | string campaign_defaults__from_email* | string campaign_defaults__subject* | string campaign_defaults__language* | string notify_on_subscribe | string notify_on_unsubscribe | string email_type_option* | boolean visibility | <pub, prv>
custom_list_id* | string | reference to a new list defined as ‘custom_id’ in new_lists.csv status_if_new* | <"subscribed", "unsubscribed", "cleaned", "pending", "transactional"> | defines status assigned to a new email address email_address* | string status | <"subscribed", "unsubscribed", "cleaned", "pending", "transactional"> | defines status assigned to an existing email address language | string Merge_fields__{merge_tag}__{merge_tag} | string | maximum 2 levels nesting (applies to ADDRESS merge tag. Check merge tags cheatsheet for the details. |
Add members to an existing list |
Adds members to an existing list(s). Input Fields list_id* | string | the list where you want this member to be added status_if_new* | <"subscribed", "unsubscribed", "cleaned", "pending", "transactional"> | defines status assigned to a new email address email_address* | string status | <"subscribed", "unsubscribed", "cleaned", "pending", "transactional"> | defines status assigned to an existing email address language | string Merge_fields__{merge_tag}__{merge_tag} | string | maximum 2 levels nesting (applies to ADDRESS merge tag. Check merge tags cheatsheet for the details. |
Update members data in existing lists |
Updates members’ data in existing lists. Check documentation for the reference to optional fields. Input Fields list_id* | string | the list from which you want this member to be updated email_address* | string status | <"subscribed", "unsubscribed", "cleaned", "pending", "transactional"> | defines status assigned to an existing email address language | string |
Delete members from existing lists |
Input Fields list_id* | string | the list from which you want this member to be deleted email_address* | string
|