Skip to content

Documentation

Automation field paths

A condition in a Flowboard automation reads one value from the event that started the run. The field path is the address of that value. This page lists every path each trigger sends.

Last updated 21 August 2026

How a field path works

  • Every path starts with trigger. and uses dots to go deeper, for example trigger.deal.value.
  • In the editor, the Field Path box on a condition is a list of exactly the paths the automation's trigger sends. Pick from it where you can. The question mark next to the label shows the same list without leaving the node.
  • Choose Custom path only when the value is not in the list, which today means a form answer or a webhook payload.
  • A path the trigger does not send is not an error. It reads as empty, the condition is false, and every run takes the No branch. If a condition never passes, check the path against the table for its trigger before anything else.

Deal won deal_won

A deal in the CRM moves to the Won stage.

PathWhat it holdsType
trigger.deal.idDeal IDstring
trigger.deal.titleDeal titlestring
trigger.deal.valueDeal valuenumber
trigger.deal.contact_emailContact emailstring
trigger.deal.client_idClient IDstring
trigger.workspace_idWorkspace IDstring

Proposal accepted proposal_accepted

A client accepts a proposal from its public link.

PathWhat it holdsType
trigger.proposal.idProposal IDstring
trigger.proposal.titleProposal titlestring
trigger.proposal.total_valueProposal total valuenumber
trigger.proposal.client_idClient IDstring
trigger.workspace_idWorkspace IDstring

Task status changed task_status_changed

A task changes status in any project, including to Done.

PathWhat it holdsType
trigger.task.idTask IDstring
trigger.task.titleTask titlestring
trigger.task.old_statusPrevious statusstring
trigger.task.new_statusNew statusstring
trigger.task.project_idProject IDstring
trigger.task.is_milestoneIs milestoneboolean
trigger.workspace_idWorkspace IDstring

Invoice paid invoice_paid

An invoice is paid through Stripe.

PathWhat it holdsType
trigger.invoice.idInvoice IDstring
trigger.invoice.client_idClient IDstring
trigger.invoice.amountInvoice amountnumber
trigger.workspace_idWorkspace IDstring

This fires on a Stripe payment. Marking an invoice as paid by hand does not fire it.

Form submitted form_submitted

Someone submits one of your forms.

PathWhat it holdsType
trigger.form.idForm IDstring
trigger.form.titleForm titlestring
trigger.submission.idSubmission IDstring
trigger.submission.dataSubmission data (object)object
trigger.submission.submitter_emailSubmitter emailstring
trigger.submission.submitter_nameSubmitter namestring
trigger.workspace_idWorkspace IDstring

Individual answers live under trigger.submission.data.<field>, where <field> is the key of the question on your form. Those depend on the form, so type them by hand using the Custom path option.

Booking created booking_created

A visitor books a slot on one of your booking pages.

PathWhat it holdsType
trigger.booking.idBooking IDstring
trigger.booking.visitor_nameVisitor namestring
trigger.booking.visitor_emailVisitor emailstring
trigger.booking.starts_atStarts at (ISO 8601)string
trigger.booking_page.idBooking page IDstring
trigger.booking_page.titleBooking page titlestring
trigger.workspace_idWorkspace IDstring

Scheduled scheduled

The schedule you set on the automation comes due.

PathWhat it holdsType
trigger.scheduledScheduled runboolean
trigger.cronCron expressionstring
trigger.fired_atFired at (ISO 8601)string

A scheduled run carries no workspace_id and no record data. It tells you that the time came, not what changed.

Webhook webhook

An external system POSTs JSON to the automation's webhook URL.

The payload is whatever the caller sends, so there is no fixed list. Address any top-level key as trigger.<your-field>, and nested keys with dots, for example trigger.customer.email.

Project completed project_completed

Listed in the editor, not yet wired to an event.

Automations that start from this trigger do not run until it ships. The editor says so on the node.

Worked examples

Escalate big deals

Trigger: Deal won

trigger.deal.value greater than 5000

If the won deal is worth more than 5,000, take the Yes branch.

Only react to tasks reaching Done

Trigger: Task status changed

trigger.task.new_status equals done

The trigger fires on every status change. This condition keeps only the ones that land on Done.

Route form leads by budget

Trigger: Form submitted

trigger.submission.data.budget greater than 2000

budget is the key of the question on your form. Use the Custom path option to type it.

Where this list comes from

The app keeps one map of what each trigger sends. The editor's picker, the runtime, and this page all read from it, and a test in the build fails if a built-in template ever references a path that is not in the map. If you find a field that is sent but not listed here, tell us and we will correct the page.