Overview
The Dotdigital integration provides a set of ready-made functions you can call when building mappings. They handle common lookups and conversions for Dotdigital and your iPaaS.com data, such as resolving a campaign by name, looking up a contact email, formatting dates the way Dotdigital expects, and turning a comma-separated string into a list of numbers, so you do not have to write that logic yourself in a formula.
Where you can use these functions
These functions are available anywhere you write a formula for the Dotdigital integration:
Dynamic Formula mappings: where a destination field's value is produced by a formula rather than mapped directly from a source field.
Mapping collection filters: where a formula decides whether a record should be processed.
Error filters: a mapping collection's error filter, which sits alongside its collection filter. When the error filter's formula resolves to true, the transfer raises an error that is held in the Error Logs for review and is not retried automatically.
Translation collections: where a translation entry uses a formula as its source value.
How to use them
Call a function by name and pass the values it needs in parentheses, for example:
await CampaignIdFromNameAsync(SourceCampaign).Each function's signature shows its name, the parameters it accepts (with their types), and the type of value it returns. Use it as the reference for exactly how to call the function.
Function names and formula syntax are case-sensitive, so type each name exactly as shown. Whether the values a function matches are treated as case-sensitive varies by function, and is called out in the relevant parameter's description.
Some of these functions are asynchronous (their signature returns a
Task) and must be called withawait; the rest are synchronous and are called directly. Each function's How to call it example shows the correct form.Each function runs at sync time, against the data in your connected Dotdigital account and your iPaaS.com subscription.
The functions are grouped below by the area of the integration they support.
Contacts and Campaigns
ContactEmailUsingId
What it does: Looks up an iPaaS.com customer by ID and returns that customer's email address.
Signature: Task<string> ContactEmailUsingId(object customerId)
How to call it: await ContactEmailUsingId(customerId)
Parameter | Type | Required | Default | Description |
|
| Yes | N/A | The iPaaS.com customer ID to look up. If it is null, the function returns null. |
Returns: string. The iPaaS.com customer's email address, or null if the customer is not found or has no email.
Example: 12345 returns the email address of the iPaaS.com customer with that ID.
When to use it: Use this when a Dotdigital contact mapping needs the email address for an iPaaS.com customer and you have only the customer ID.
CampaignIdFromNameAsync
What it does: Looks up a Dotdigital campaign by name and returns its campaign ID.
Signature: Task<int?> CampaignIdFromNameAsync(string campaignName)
How to call it: await CampaignIdFromNameAsync(campaignName)
Parameter | Type | Required | Default | Description |
|
| Yes | N/A | The Dotdigital campaign name to look up. The match is case-sensitive. |
Returns: int?. The Dotdigital campaign ID, or null if no campaign matches the name.
Example: "Spring Promo" returns the Dotdigital campaign ID for the campaign named Spring Promo.
When to use it: Use this when a mapping references a Dotdigital campaign by name and you need its campaign ID.
Formatting Helpers
ToDotDigitalDateFormat
What it does: Converts a date-time value into the Dotdigital date format string yyyy-MM-ddTHH:mm:ssz.
Signature: string ToDotDigitalDateFormat(object date)
How to call it: ToDotDigitalDateFormat(date)
Parameter | Type | Required | Default | Description |
|
| Yes | N/A | The date to convert. Provide a |
Returns: string. The date formatted in Dotdigital's format (yyyy-MM-ddTHH:mm:ssz).
Example: A DateTimeOffset of 2025-09-07T10:45:00Z returns the Dotdigital-format date string.
When to use it: Use this when a Dotdigital field needs a date-time value in Dotdigital's exact string format.
ConvertStringToList
What it does: Converts a comma-separated string of whole numbers into a list of integers.
Signature: List<int> ConvertStringToList(string Name)
How to call it: ConvertStringToList(Name)
Parameter | Type | Required | Default | Description |
|
| Yes | N/A | A comma-separated string of whole numbers. Each value must be a valid integer, or the function raises an error. |
Returns: List<int>. The list of integers parsed from the string.
Example: "101, 202, 303" returns the list 101, 202, 303.
When to use it: Use this when several numeric IDs are stored in a single comma-separated string and a mapping needs them as a list of numbers.
