How to use dynamic data mapping on Make
Dynamic data mapping in Make allows you to automatically map data fields from one module to another based on the actual data structure returned by previous modules. This eliminates the need to manually configure field mappings and adapts to changing data structures automatically.
Prerequisites
- Basic understanding of Make scenarios
- Active Make account with scenario creation access
- Familiarity with API responses and JSON structure
- Understanding of trigger and action modules
Step-by-Step Instructions
Set up your trigger module
Add your action module
Enable dynamic data mapping
Configure mapping rules
upper(), formatDate(), or replace() by wrapping your mapped fields in these functions.Handle nested data structures
{{1.data.customer.email}} to reference nested properties. For arrays, use iterator modules or array functions like map() and get() to extract specific elements.Test dynamic mappings
null values.Optimize and save your scenario
Common Issues & Troubleshooting
Dynamic data fields showing as empty or undefined
Ensure your trigger module has executed at least once with real data. Re-run the trigger and refresh the mapping panel. Check if the source field names have changed in your data source.
Mapping breaks when data structure changes
Add conditional statements using if() functions to handle optional fields. Use get() function with default values like {{get(1.email; "default@email.com")}} to prevent errors when fields are missing.
Cannot see nested object properties in mapping panel
Click the Show advanced settings option in the module configuration. Manually expand nested objects by clicking the arrow icons. If still not visible, use JSON parsing functions or the JSON > Parse JSON module first.
Dynamic mappings not working with arrays
Use an Iterator module before your action module to process array elements individually. Alternatively, use array functions like map(array; "fieldname") or join(array; ",") to extract or combine array values.