The Scenario
A new SaaS product just launched its Mailercloud account. The lifecycle marketing plan calls for eight custom contact properties — plan_tier, last_purchase_date, nps_score, referral_source, trial_started_at, upgrade_eligible, churned_at, and reactivation_count. Someone has already documented them in an Excel workbook: property name in column A, data type in column B.
The Mailercloud UI adds one property at a time. Click the button, type the name, pick the type, save, click again. For eight properties that's eight rounds of clicking through the same modal.
The bad version:
- Open the Mailercloud properties panel, add the first property manually, confirm the type, save
- Repeat seven more times, trying to keep track of where you are in the workbook with one eye on the UI and one eye on your browser tab
- Notice on the sixth one that you mis-typed the property name — go back, find it, fix it, re-save
This is setup work. It shouldn't cost the same cognitive load as building the campaign. The workbook already has the definitions. The definitions should just land in Mailercloud.
The Easy Way: One Prompt in SheetXAI
SheetXAI is an AI agent that lives inside your Excel workbook. It reads the property definition table you already built, understands what each row represents, and through its Mailercloud integration it can create each property for you — writing back a status when each one completes.
Read the 8 property definitions from this Excel workbook using column A as the name and column B as the type and create each as a Mailercloud custom contact property — write the new property ID into column D and CREATED or FAILED into column C for each row
What You Get
- SheetXAI reads each row in your definition table and makes a separate Mailercloud API call for each property
- Column C gets CREATED written back when the property is successfully created
- Column D gets the new Mailercloud property ID so you have a permanent record of each created property
- If a row fails — because the name is already taken or the data type value isn't valid — FAILED lands in column C for that row
What If the Data Is Not Quite Ready
The data type values in column B don't match Mailercloud's accepted formats
For each row in this workbook, create a Mailercloud custom contact property using column A as the name — interpret column B as the data type and convert "text" to "string", "date" to "date", and "number" to "integer" before creating each property — write CREATED or FAILED into column C
You only want to create properties in rows where column E is marked "include"
For each row in this workbook where column E says "include", create a Mailercloud custom contact property using column A as the name and column B as the type — write results into column C
The definitions are on a sheet named "Schema" rather than the active sheet
Go to the sheet named "Schema" in this workbook — for each row from row 2 onwards, create a Mailercloud custom property using column A as the name and column B as the type — write results into column C on that sheet
Kill chain: validate the type values, create the properties, write status and ID
For each row in this workbook, check that column B contains a valid Mailercloud data type — if it does, create the custom property using column A as the name and write the property ID and CREATED into columns D and C — if the type is invalid, write SKIPPED: bad type into column C
The workbook becomes a live record of what was created, what failed, and why.
Try It
Get the 7-day free trial of SheetXAI and open your Excel workbook property definition table — paste your property names and types in columns A and B, then ask SheetXAI to create each one in Mailercloud. For related work, see how to bulk rename custom properties when your naming conventions change.
