For the data to be successfully sent to the destination application (import), configure your mappings in Mapper 2.0, by clicking the Settings () button.
Field mapping type: Select the type of mapping you want to apply to the destination record field. The field mapping types available change depending on the data type you select.
The following field mapping types are available for each data type. To view data type details, see Data type validation..
|
Field mapping types |
Destination data type |
|---|---|
|
|
|
Note
Mapper 2.0 supports conversion to object or object arrays if that is required by your import/destination application.
Each of the mapping types are explained below.
Send the value of the source field as the value in the destination field. This is the default setting, indicating that data found in a specific field in the export should map to its corollary in the import application (1:1 direct mapping).
Action to take if source field has no value: Select an option based on the section below.
Add description: Enter an optional description of the settings configured.
Set the source field to a defined value for the destination field. Use this setting if you prefer to have the same value written to this imported data field for every record, regardless of the exported value.
How would you like to hard-code the value?: Select one of the following options:
-
Use empty string as default value: Inserts empty string
-
Use null as default value: Inserts null value
-
Use custom default value: Inserts custom string value
Custom value: Enter the value to send to the destination field. This field only displays if you choose Use custom default value from How would you like to hard-code the value?.
Add description: Enter an optional description of the settings configured.
You can choose any one of the following lookup types:
Static: Define a static value-to-value mapping
Dynamic: Use the results of a dynamic search to populate the destination field value.
Lookup cache: Use a lookup cache value field for mapping to the destination field
Add description: Enter an optional description of the settings configured.
If your integration requires further information from a secondary source in order to determine which record in the destination application data matches a record of the source application data, you can create a dynamic lookup search to retrieve the information needed to match the records.
Relative URI: Enter the relative URI that will be appended to the address displayed below the field. Using the above example, if you enter /customers/search?email={{export.email}}, the call to retrieve data for your lookup will be sent to https://us15.api.mailchimp.com/customers/search?email={{export.email}}. The handlebars expression {{export.email}} would be replaced with the email address stored in the source data email field for each call. Click the AFE () button to create a handlebars expression to dynamically populate the relative URI.
HTTP method: Select GET or POST. Consult the lookup destination app developer documentation for which method to choose.
Resource identifier path: Enter the JSON path where the dynamic lookup will locate the lookup data in the request response. For example, if you enter searchResults[0].name, the dynamic lookup might return:
{
"count": 1,
"searchResults": [
{
"name": "Mary"
"id": 1234
"email": "mary@email.com"
}
]
}
In this example, the value mary@email.com in the field email for a record in the source application’s data matched a record in the lookup destination application’s data based on that email address. The positive result instructs integrator.io to locate the name field in the response and write the value Mary to the field name in the destination application’s record.
If a unique match is not found when performing a dynamic lookup search, by default integrator.io marks the record as failed and does not transfer data for that record. You can alter that behavior by selecting an option from the If lookup fails drop-down list.
Lookup name: Give the lookup a unique name so that it can be easily identified for use in other flows. You can select any dynamic lookups used in other flows to this destination app.
If lookup fails: If no match returns from the lookup search, the record fails by default. integrator.io then marks the record as failed and does not transfer any data for that record. You can select one of the following alternatives if needed:
-
Do nothing: The field name and value is skipped.
-
Fail record (default): integrator.io marks the record as failed and does not transfer any data for that record.
-
Use empty string as default value: Inserts empty string.
-
Use null as default value: Inserts null value.
-
Use custom default value: Inserts any string value you enter in the field provided.
Add description: Enter an optional description of the settings configured.
If you already know how a specific field value from the source application data should be replaced before being sent to the destination application, then you can use a static lookup to define how each value should be replaced.
Click Add mapping and enter the source and destination field values. For each Source field value, define the corresponding replacement Destination field value that will be sent to the destination application.
Destination field value: Enter the value as it would be replaced when sent to the destination application.
Source field value: Enter the corresponding value that this field uses in the source application data.
For example, if the source data has a field named state that should be mapped to a corresponding field named Region on the destination application’s import record, but the naming conventions are not the same because the destination data references states with the two-letter convention (AL, AK, AZ) and the corresponding export value for each state uses the full name of the state (Alabama, Alaska, Arizona), you could add all 50 states as Destination field values using the two-letter convention, and Source field values as corresponding full state names. This ensures that each full state name in the source data would be replaced by the two-letter state name during import.
Note
An additional empty line is added to the list with each new value you add, and you can click the Delete () button on the right to delete any line.
Lookup name: Give the lookup a unique name so that it can be easily identified for use in other flows. You can also select any static lookups used in other flows.
If lookup fails: If no match returns from the lookup search, the record fails by default. integrator.io then marks the record as failed and does not transfer any data for that record. You can select one of the following alternatives if needed:
-
Do nothing: The field name and value is skipped.
-
Fail record (default): integrator.io marks the record as failed and does not transfer any data for that record.
-
Use empty string as default value: Inserts empty string.
-
Use null as default value: Inserts null value.
-
Use custom default value: Inserts any string value you enter in the field provided.
Add description: Enter an optional description of the settings configured.
In some scenarios, you might find it useful to store data in a lookup cache in the Celigo platform (integrator.io) for a quick lookup. You can select the lookup cache or create a new lookup cache, and then select the lookup cache value field.
Lookup cache name: Select the lookup cache from the list.
Lookup cache value field: Select the path to the lookup cache value for mapping to the destination field. This value will be retrieved when the source field and the lookup cache key match.
f lookup fails: If no match returns from the lookup search, the record fails by default. integrator.io marks the record as failed and does not transfer any data for that record. You can select one of the following alternative options if needed:
-
Do nothing: The field name and value is skipped.
-
Fail record (default): integrator.io marks the record as failed and does not transfer any data for that record.
-
Use empty string as default value: Inserts empty string.
-
Use null as default value: Inserts null value.
-
Use custom default value: Inserts custom string value.
Source data type: If you have already selected a Source field from your source data, the data type is automatically set. If you added a new source field that is not in your currently loaded source data, use the drop-down list to set its data type
Add description: Enter an optional description of the settings configured.
Build a handlebars expression for the value in the source field to send to the destination field.
Handlebars expression: Enter a simple handlebars expression in the field, or click the AFE () button to open the Handlebars advanced field editor (AFE).
Action to take if handlebars expression returns an empty value: Choose an option based on your import requirements.
Add description: Enter an optional description of the settings configured.
For all the supported data types and related details, see Data type validation.
|
Data type |
Action to take if source record field has no value |
Mapper 1.0 |
Mapper 2.0 |
|---|---|---|---|
|
Use empty string as default value |
Inserts empty string |
||
|
Use null as default value |
Inserts null value |
||
|
Use custom default value |
Inserts custom string value |
||
|
Do nothing (default) |
Removes field name and value |
||
|
Use empty string as default value |
Inserts 0 |
||
|
Use null as default value |
Inserts 0 |
Inserts null value |
|
|
Use custom default value |
Inserts custom number value |
||
|
Do nothing (default) |
Inserts 0 |
Removes field name and value |
|
|
Use empty string as default value |
Inserts false |
N/A |
|
|
Use null as default value |
Inserts false |
||
|
Use custom default value |
Inserts false |
Selects true or false |
|
|
Do nothing (default) |
Inserts false |
Removes field name and value |
|
|
Use null as default value |
N/A |
Inserts null value without object formatting |
|
|
Do nothing (default) |
N/A |
Removes field name and value |
|
|
Use empty string as default value |
Inserts empty array |
||
|
Use null as default value |
Inserts empty array |
Inserts null value without array formatting |
|
|
Use custom default value |
Inserts empty array |
Inserts custom values as array ["a", "b", "c", "d"] |
|
|
Do nothing (default) |
Inserts empty array |
Removes field name and value |
|
|
Use empty string as default value |
Inserts empty array |
||
|
Use custom default value |
Inserts empty array |
Inserts custom number values as an array [1, 2, 3, 4] |
|
|
Use null as default value |
Inserts empty array |
Inserts null value without array formatting |
|
|
Do nothing (default) |
Inserts empty array |
Removes field name and value |
|
|
Use empty string as default value |
N/A |
Inserts empty array |
|
|
Use custom default value |
N/A |
Inserts custom values as an array [true, false, false] |
|
|
Use null as default value |
N/A |
Inserts null value without array formatting |
|
|
Do nothing (default) |
N/A |
Removes field name and value |
|
|
Use null as default value |
N/A |
Inserts null value without object formatting |
|
|
Do nothing (default) |
N/A |
Removes field name and value |
|
Advanced options only apply to HTTP imports that use composite methods. Only perform mapping when:
-
Creating a record: Choose this option if the mappings you create will apply only to new records you create in the destination application.
-
Updating a record: Choose this option if the mappings you create will apply only to existing records in the destination application.