Skip to main content
This is your complete reference for building automations in CoachIQ. Use it to look up available options when you’re in the automation builder.
New to automations? Start with Build Your First Automation for a hands-on walkthrough.

All Triggers

Triggers determine when your automation runs. Each trigger has different conditions available to filter who it applies to.
Fires when a new user is added to your account.
ConditionTypeDescription
Email containsText inputFilter by email domain or keyword
Has phone numberBooleanUser has a phone number on file
Is missing phone numberBooleanUser doesn’t have a phone number
Fires when someone purchases any product.
ConditionTypeDescription
Is a specific productDropdownOnly this product triggers the automation
Is any product from listMulti-selectAny of the selected products
Is a subscriptionBooleanProduct type is subscription
Is a one-time purchaseBooleanProduct type is one-time
Is an access codeBooleanProduct type is access code
User has a specific tagDropdownUser must have this tag
User doesn’t have a specific tagDropdownUser must not have this tag
User’s first purchase everBooleanThis is the user’s first purchase
Fires when someone books a session.
ConditionTypeDescription
Is for a specific sessionDropdownOnly bookings for this session/scheduler
User has a specific tagDropdownUser must have this tag
User doesn’t have a specific tagDropdownUser must not have this tag
User’s first booking everBooleanThis is the user’s first booking
Fires when someone submits a form.
ConditionTypeDescription
Is a specific formDropdownOnly submissions from this form
User has a specific tagDropdownUser must have this tag
User doesn’t have a specific tagDropdownUser must not have this tag
Fires when a tag is added to a user.
ConditionTypeDescription
Tag added isDropdownOnly fires for this specific tag
Fires when a tag is removed from a user.
ConditionTypeDescription
Tag removed isDropdownOnly fires for this specific tag
Fires when someone cancels a booking.
ConditionTypeDescription
Was for a specific sessionDropdownOnly cancellations for this session
User has a specific tagDropdownUser must have this tag
User doesn’t have a specific tagDropdownUser must not have this tag
Fires when a booked session ends.
ConditionTypeDescription
Was for a specific sessionDropdownOnly this session/scheduler
User has a specific tagDropdownUser must have this tag
User doesn’t have a specific tagDropdownUser must not have this tag
Attendance statusDropdownAttended, No-show, or Late cancellation
Use the attendance status condition to send different messages to no-shows vs. attendees.
Fires when someone cancels their subscription.
ConditionTypeDescription
Was for a specific productDropdownOnly this subscription product
User has a specific tagDropdownUser must have this tag
User doesn’t have a specific tagDropdownUser must not have this tag
Fires at the exact start time of a booking.
ConditionTypeDescription
Is for a specific sessionDropdownOnly this session/scheduler
User has a specific tagDropdownUser must have this tag
User doesn’t have a specific tagDropdownUser must not have this tag
This trigger executes at the booking’s scheduled start time, not when someone checks in.
Runs on a schedule and finds all users matching your conditions. See Scheduled Automations for details.Schedule Options:
ScheduleFormat
Every daySelect time (e.g., 9:00 AM)
Once a weekSelect day + time (e.g., Monday at 9:00 AM)
Once a monthSelect date + time (e.g., 1st at 10:00 AM)
Available Conditions (minimum 1 required):
ConditionTypeDescription
Has a specific tagDropdownUser has this tag
Doesn’t have a specific tagDropdownUser doesn’t have this tag
Has active subscriptionBooleanUser is currently subscribed
Does not have an active subscriptionBooleanUser has no active subscription
Subscription active for X daysNumberSubscribed for at least X days
Has available creditsBooleanUser has at least 1 credit
Days since last booking is > XNumberUser hasn’t booked in X+ days
Days until credits expire < XNumberCredits expire within X days
Credit count is XNumberLess than, greater than, or equal to X
Has upcoming bookingDropdownToday, this week, or no upcoming bookings
At least one condition is required for scheduled automations.

All Actions

Actions determine what happens when your automation runs. You can add multiple actions to a single automation.
Sends an email to a user.
FieldTypeDescription
ToAuto/DropdownUser from trigger or select specific user
SubjectTextSupports dynamic fields
MessageRich textSupports dynamic fields and formatting
Attach ProductDropdownOptional - adds purchase link
Attach SessionDropdownOptional - adds booking link
Attach FormDropdownOptional - adds form link
Attach MediaDropdownOptional - adds file from Media Hub
Sends a text message to a user’s phone.
FieldTypeDescription
ToAuto/DropdownUser from trigger or select specific user
MessageTextSupports dynamic fields (160 character limit)
Attach ProductDropdownOptional - adds short purchase link
Attach SessionDropdownOptional - adds short booking link
Attach FormDropdownOptional - adds short form link
SMS attachments are text links only—no images or files. A character counter shows remaining space.
Sends a message to the user’s inbox within CoachIQ.
FieldTypeDescription
ToAuto/DropdownUser from trigger or select specific user
MessageTextSupports dynamic fields
Attach ProductDropdownOptional - adds purchase link
Attach SessionDropdownOptional - adds booking link
Attach FormDropdownOptional - adds form link
Posts an announcement visible to a group of users.
FieldTypeDescription
ToDropdownAll users, specific tag, or specific role
TitleTextAnnouncement headline
MessageRich textSupports dynamic fields
Attach ProductDropdownOptional - adds purchase link
Attach SessionDropdownOptional - adds booking link
Attach FormDropdownOptional - adds form link
Use announcements for broadcast messages (like weekly schedules) instead of individual messages.
Adds a tag to the user for organization and targeting.
FieldTypeDescription
UserAuto/DropdownUser from trigger or select specific user
TagDropdownTag to add (select existing or create new)
Removes a tag from the user.
FieldTypeDescription
UserAuto/DropdownUser from trigger or select specific user
TagDropdownTag to remove
Adds session credits to the user’s account.
FieldTypeDescription
UserAuto/DropdownUser from trigger or select specific user
Number of creditsNumberHow many credits to add (minimum 1)
Credit Bank TargetRadioMaster Credits (works for any session) or Specific Product Bank
If you select a specific product bank and the user doesn’t own that product, credits are added to Master Credits instead.
Removes session credits from the user’s account.
FieldTypeDescription
UserAuto/DropdownUser from trigger or select specific user
Number of creditsNumberHow many credits to redeem (minimum 1)
Credit sourceDropdownMaster Credits or specific product bank
Grants a user access to a product without payment.
FieldTypeDescription
UserAuto/DropdownUser from trigger or select specific user
ProductDropdownProduct to grant
Send confirmationBooleanWhether to send purchase confirmation email
Revokes a user’s access to a product.
FieldTypeDescription
UserAuto/DropdownUser from trigger or select specific user
ProductDropdownProduct to remove
RefundBooleanWhether to issue a refund
Gives a user access to a program.
FieldTypeDescription
UserAuto/DropdownUser from trigger or select specific user
ProgramDropdownProgram to grant access to
Access durationDropdownPermanent, until specific date, or for X days
Removes a user’s access to a program.
FieldTypeDescription
UserAuto/DropdownUser from trigger or select specific user
ProgramDropdownProgram to revoke
Send notificationBooleanWhether to notify the user
Automatically books a user into a session.
FieldTypeDescription
UserAuto/DropdownUser from trigger or select specific user
SessionDropdownSession/scheduler to book
Date/TimeDate/time pickerWhen to book the session
Cancels a user’s booking.
FieldTypeDescription
BookingAuto/DropdownBooking from trigger or select specific booking
Refund creditsBooleanWhether to refund credits used
Pauses the automation before continuing to the next action.
FieldTypeDescription
DurationNumber + UnitMinutes, hours, days, or weeks
Wait untilDate/timeAlternative: wait until specific date/time
Continuation Conditions (optional):
ConditionDescription
Has booked a sessionContinue only if user booked since automation started
Hasn’t booked a sessionContinue only if user hasn’t booked
Has made a purchaseContinue only if user purchased since automation started
Hasn’t made a purchaseContinue only if user hasn’t purchased
Still has a specific tagContinue only if user still has this tag
No longer has a specific tagContinue only if user no longer has this tag
User hasn’t replied to last messageContinue only if no reply received
If a continuation condition isn’t met, the automation stops for that user.
Sends data to an external URL for integrations.
FieldTypeDescription
Webhook URLTextMust be HTTPS
MethodDropdownPOST or PUT
HeadersKey-value pairsOptional custom headers
BodyJSON editorSupports dynamic fields
Retry on failureBooleanWhether to retry if request fails
The webhook payload automatically includes full trigger context (user data, event details, etc.).

Dynamic Fields

Dynamic fields let you personalize messages with real data from your automations. Use the exact syntax shown below in any text field that supports dynamic fields.
Copy and paste these fields exactly as shown, including the double curly braces {{ and }}.

User Fields

Available in all automations:
FieldWhat It InsertsExample Output
{{field.user.email}}User’s email addressjohn@example.com
{{field.user.firstName}}User’s first nameJohn
{{field.user.lastName}}User’s last nameSmith
{{field.user.phone}}User’s phone number(555) 123-4567

Booking Fields

Available in booking-related automations:
FieldWhat It InsertsExample Output
{{field.booking.session.title}}Name of the booked sessionMorning Training Session
{{field.user.booking.days_since_last}}Days since user’s last booking7
{{field.user.booking.upcoming}}Whether user has upcoming bookingtrue or false
Use {{field.booking.session.title}} in booking confirmations to remind users which session they registered for.

Credit Fields

Available in automations that check credit status:
FieldWhat It InsertsExample Output
{{field.user.credits.has_available}}Whether user has any creditstrue or false
{{field.user.credits.expire_days}}Days until credits expire14
{{field.user.credits.count}}Total number of credits user has5
Credit fields are primarily available in Scheduled Check automations. Using them in other automation types may return empty values.

Example Usage

Here’s how to use dynamic fields in a message:
Hi {{field.user.firstName}},

You have {{field.user.credits.count}} credits remaining. 
They expire in {{field.user.credits.expire_days}} days.

Book your next session soon!
This would send:
Hi John,

You have 5 credits remaining.
They expire in 14 days.

Book your next session soon!