Live Myra status: All systems operational

ai-automations

Trigger
Form submitted
Send SMS
Immediately
Wait
1 day
Send email
Follow-up
Add tag
Nurture
Run in progress1 contact enrolled
Triggerrunning
1Trigger firesnow
2Instant SMS goes out
3Wait 1 day
4Follow-up email
5Tag and finish
Trigger fires

A form submission, tag, stage change or booking enrols the contact.

How an automation runs once a contact is enrolled.

AI Automations

Turn on AI features that run automatically in the background of your account. Each toggle lives in Settings → AI and can be flipped on or off at any time by a client admin.

Available automations

  • Auto-transcribe & summarise every call - When a call ends, we transcribe it and drop a short AI summary plus action items onto the contact. (~2 credits per call.)
  • Auto voicemail digest - Not available yet.
  • Auto task triage - Not available yet.
  • Auto proposal draft - Not available yet.

How credits work

Each automation deducts from your account's monthly AI credit allowance. If you need more triggers than what's listed, contact support and we'll add them.

Merge fields: Appointment date and time formats

Pick the format your customers expect from the token picker - each option is labelled by its pattern with a live example next to it:

Token Renders as
{{appointment.start_mdy}} 09/10/2026 2:30 PM
{{appointment.start_dmy}} 10/09/2026 14:30
{{appointment.date_mdy}} 09/10/2026
{{appointment.date_dmy}} 10/09/2026
{{appointment.time_12h}} 2:30 PM
{{appointment.time_24h}} 14:30

The time shown follows the same timezone rule as every other notification: the form's timezone, then the booking calendar's, then the client account's, then UTC. Existing appointment tokens are unchanged, so automations you already have keep sending exactly what they send today.

Merge fields: Full responses

When you write an automated email or SMS you can insert Full responses from the token picker ({{form.full_responses}}). It expands to every question and answer from the form the contact submitted, one pair per line:

What is your full name?: John Smith
What is your approximate monthly revenue?: $100k-$200k
Do you own a business?: Yes

Notes:

  • If a contact submitted more than once, the most recent submission is used.
  • Questions are shown exactly as they were asked at the time - editing a form later never rewrites old answers.
  • Skipped questions are left out, and contacts with no form submission simply get nothing in that spot.

Merge fields: Live transfer agent

Three tokens expose the agent a contact was assigned to by a live-transfer preset's round robin, so you can pass that person to your own systems in a webhook body:

  • {{live_transfer.agent_name}} - the agent's full name (their email if no name is set)
  • {{live_transfer.agent_email}} - the agent's email
  • {{live_transfer.agent_phone}} - the agent's phone number

If the contact has no live-transfer assignment, each token renders as nothing. Timing matters: the agent is only assigned when the live transfer first dials (about 7–9 seconds after the contact is created), so an automation triggered on contact creation should include a short Wait step before the webhook - otherwise the tokens will be empty.

Sending form answers to another system

To push answers into another system or spreadsheet (Zapier, Make, AgencyZoom and similar), use a Webhook step instead of an email.

On a webhook step, the Payload fields section defines exactly what gets sent. Each row is a key and a value, and the value can contain any merge token:

Key Value
full_name {{contact.name}}
phone {{contact.phone}}
answers {{form.responses_json}}
  • {{form.responses_json}} is the machine-readable version of Full responses. It sends every answer as structured JSON, so the receiving system can pick out individual fields:
{
  "roof_age": { "label": "Roughly how old is the roof?", "value": "0-10 years" },
  "quote_type": { "label": "What do you want quoted?", "value": "Home" }
}
  • {{contact.<field key>}} sends one specific answer - for example {{contact.roof_age}}. The field key is shown on each question in the form builder.
  • Payload fields on a webhook step are sent to the URL only; they never change the contact record.
  • If the receiving system returns an error, the automation run is marked failed with the status code, so a broken integration is never reported as a success.

Adding a step anywhere in the sequence

Every connecting line in the automation builder has a small + on it - including the line from the trigger down to the first step, and the lines inside each path of a "Split into paths" step. Click it to pick the step you want (Action, Wait, If / Then, Split into paths, or paste copied steps) and it drops in at exactly that spot, with everything below staying attached underneath.

The + at the bottom of a chain still adds to the end as before, so you no longer have to delete and rebuild steps just to slot one in the middle.

Anyone already part-way through the automation carries on from where they are: they'll pick up the new step if they haven't reached that point yet, and they never repeat a step they've already had.

Copying and deleting steps in the builder

Hover any step in the automation builder to reveal its quick actions:

  • Copy - copies just that step.
  • Copy with everything below - copies the step and the whole chain beneath it.
  • Paste - drops the copied step(s) directly below the step you're hovering, or from the + button menu at the end of a branch. Anything that was already below stays attached under the pasted steps.
  • Delete - removes only that one step. Steps below it are kept and re-attached to the step above. (Deleting a "Split into paths" step still removes its branches, since there's nowhere to reattach them.)

Assigning leads round-robin

The Assign to user step has two modes:

  • Assign to specific user - pick the person from a list of team members on the account. The choice is stored against the person, not their email address, so it keeps working if their email changes, and someone who has left the account can't be picked. Switch to Use a merge token for dynamic assignment (e.g. {{lead.owner_email}}); the token is resolved to an email at run time. Either way, if the step can't resolve exactly one team member the lead is left unassigned and the run log says why.
  • Round-robin - you tick exactly which team members are in the rotation. Leads are handed out in turn, one each, and the position is remembered between runs.

The rotation never includes people you didn't tick, and anyone who leaves the workspace is skipped automatically. If no one is selected, the step assigns nobody and records the reason on the contact's timeline rather than guessing.

Retry failed steps

Automation settings has a Retry failed steps option (Off by default). When it's on, a step that failed before anything was sent — for example a Slack or Zapier webhook where the provider returned a server error, or a brief problem reading a saved connection — is tried again after 1 minute, then 5 minutes, then 15 minutes. You only get the "Automation failed" alert if every attempt fails.

Steps that could have already delivered something are never retried automatically: emails, texts, and anything the provider rejected as a configuration problem (a 404 or a missing connection) still fail immediately, so nobody can receive the same message twice.

Automations timed around an appointment

Some automations (booking reminders, for example) are timed relative to a contact's appointment - "1 hour before", "30 minutes before".

If you add contacts to one of these in bulk, we look up each contact's appointment automatically and time their reminders from it. Contacts who have no appointment booked simply stop at that point: they receive nothing, and the reason is recorded on their timeline. We will never send a reminder with the date and time left blank. When you pick an appointment-timed automation in the bulk-add or import screens, a note appears to remind you of this.