When processing new orders, customers often provide their appointment availability in messy, unstructured formats (like "next Tuesday afternoon" or "July 15th at 2 PM"). This guide explains how to use AI to automatically extract these dates, identify the earliest available day, and format them perfectly for your Monday.com boards.
Here is a high-level look at the data flow:
flowchart TD
A["Raw Appointment Preferences"] --> B["AI Extraction Step"]
B --> C{"Were valid dates found?"}
C -- Yes --> D["Format as YYYY-MM-DD"]
C -- No --> E["Fallback to Today's Date"]
E --> D
D --> F["Sync to Monday.com"]How it works
To reliably push dates into Monday.com, the raw text must be parsed, validated, and reformatted. We achieve this using a multi-step automation process.
- 1
Extract dates with AI
Pass the raw scheduling notes to an AI step. The AI is instructed to ignore times, extract only the dates, and return both a full list of options and the earliest available date.
- 2
Check for empty results
Calculate the length of the AI's "1st Availability Date" output. If the length is
0(meaning the AI couldn't find any valid dates), the workflow prepares to use a fallback value. - 3
Apply the fallback (if needed)
Use a Lookup Table step. If the date string is empty, replace it with the current date (
{{zap_meta_human_now}}). Otherwise, keep the AI's extracted date. - 4
Format for Monday.com
Monday.com requires a strict
YYYY-MM-DDformat. Pass the final date through a Date/Time formatter to ensure it matches this exact structure before syncing.
Monday.com will reject the entire payload if the date format is incorrect. Always include the final formatting step to convert the date to YYYY-MM-DD in UTC, even if the AI is instructed to return a specific format.
AI Configuration
To get the most accurate results from the AI extraction step, use a structured prompt and define a strict output schema.
Output Schema
Configure your AI step to return these two specific fields:
| Field Name | Description | Expected Format |
|---|---|---|
Availability Dates | A comma-separated list of all extracted dates. Returns an empty string if none are found. | MM/DD/YYYY |
1st Availability Date | The earliest chronological date from the extracted list. Returns an empty string if none are found. | MM/DD/YYYY |
Recommended Prompt
If you are building this automation from scratch, you can copy and paste the exact prompt we use to instruct the AI.
View the AI System Prompt
Use the following text in your AI step's instruction field. Replace {{1__ApptPref}} with your actual dynamic input variable.
You are a master of date and time analysis and you are asked to process a list of date-time items.
Given the following list of date and time items:
{{1__ApptPref}}
Your task is to:
1. Extract only the dates from each item and format them as MM/DD/YY.
2. Create a comma-separated followed by a space list of these formatted dates.
3. Identify the earliest date from the list
Limitations and requirements:
- Only include the dates, not the times.
- Ensure all dates are in the MM/DD/YY format.
- If a date is invalid or cannot be parsed, exclude it from the list.
- If the list is empty or contains no valid dates, return empty strings for both outputs.
<example>
Input:
July 15, 2023 2:30 PM
08/22/2023 10:00 AM
2023-09-01 15:45
June 5, 2023 9:00 AM
Output:
1. Comma-separated list of dates: 07/15/23, 08/22/23, 09/01/2023, 06/05/23
2. Date of first availability: 06/05/23
</example>Providing examples inside your prompt (using the <example> tags) significantly improves the AI's reliability and reduces formatting hallucinations.
Next Steps
Once your dates are standardized, you can map them directly into your Monday.com item creation steps.