AutoBridge

Automation Builder - Configuration Guide


Overview

The Automation Builder is a visual workflow automation tool that enables no-code creation of event-driven processes. Automations consist of triggers (events that start the workflow) and actions (operations performed when triggered), connected in a visual flow with support for branching logic and loops.

Automation Builder Capabilities

FeatureDescription
Visual Flow EditorDrag-and-drop automation design with React Flow
Trigger ConfigurationMultiple event types to start workflows
Action LibraryExtensive action types for record operations, notifications, and AI
Conditional BranchingIF/ELSE logic with nested conditions
Loop SupportRepeat actions for batch processing
Run HistoryExecution logs with success/failure tracking
Folder OrganizationGroup automations by category

Prerequisites

Before creating automations, ensure:

  • User has appropriate permissions for Automation Builder module
  • Source entities exist for record-based triggers/actions
  • Forms exist if using form submission triggers
  • Email templates configured if using send email actions

Section 1: Automation Concepts

1.1 Automation Structure

Every automation follows this basic structure:

[Trigger] -> [Action 1] -> [Action 2] -> ... -> [End]
                 |
           [Branch Logic]
              /    \
         [Yes]     [No]

1.2 Initial Nodes

When creating a new automation, the flow starts with:

Node TypePurposeInitial Label
Trigger NodeEvent that starts the workflow"Select Trigger"
Action NodeFirst action to perform"Select Action"
End NodeMarks workflow completion"End"

1.3 Automation Statuses (Run History)

StatusValueDescription
AllALLShow all runs
SuccessCOMPLETEDSuccessfully completed runs
FailedFAILEDRuns that encountered errors

Section 2: Trigger Types

2.1 Available Triggers

Navigation: Automation Builder -> New Automation -> Select Trigger

Trigger KeyNameDescription
when_form_is_submittedForm SubmittedTrigger when a user submits a form
on_record_creationRecord CreatedTrigger when a new record is added
on_record_updationRecord UpdatedTrigger when an existing record is modified
on_record_deletionRecord DeletedTrigger when a record is removed
when_record_matches_conditionRecord Matches ConditionTrigger when a record meets defined rules
when_process_evaluation_completesProcess Evaluation CompletesTrigger when an AI evaluation is completed
on_schedule_triggerScheduled EventTrigger on a time-based schedule
on_webhook_receivedWebhook ReceivedTrigger when an external webhook is received
sharepoint_webhook_eventSharePoint EventTrigger when a SharePoint event occurs
Microsoft.Communication.IncomingCallIncoming CallTrigger when a phone call is received

2.2 Trigger Configuration Fields

FieldField NameDescription
Trigger Typetrigger_typeType of trigger selected
ConditionsconditionsOptional conditions for trigger firing
Entity IDentity_idEntity to watch for record triggers
Form IDform_idForm to watch for submission triggers

2.3 Schedule Trigger Configuration

Navigation: Trigger Setup -> Schedule Trigger

FieldField NameDescription
Interval Typeinterval_typeFrequency of execution
Interval Valueinterval_valueNumeric interval
Week Daysweek_daysDays of week (for weekly schedules)
Month Daysmonth_daysDays of month (for monthly schedules)
Start Datestart_dateWhen to begin scheduling
Execution Timeexecution_timeTime of day to execute
Time Zonetime_zoneTimezone for scheduling

Interval Types

IntervalValueDescription
MinutesminutesRun every X minutes
HourshoursRun every X hours
DaysdaysRun every X days
WeeksweeksRun on specified days
MonthsmonthsRun on specified dates
One-Timeone_timeRun once at specified time

Section 3: Action Types

3.1 Available Actions

Navigation: Automation Flow -> Add Action -> Select Action

Action KeyNameDescription
create_recordCreate RecordCreate a new record in an entity
update_recordUpdate RecordModify an existing record
delete_recordDelete RecordRemove a record
find_recordsFind RecordsSearch for records matching criteria
send_emailSend EmailSend an email notification
autofill_with_aiAutofill with AIUse AI to populate fields
ai-actionAI-Driven ActionAI content generation with configurable prompts
extract_from_documentExtract from DocumentExtract data from uploaded documents
extract_from_webExtract from WebsiteScrape data from web pages
formulaFormulaCalculate values using formulas
if_else_conditionIF/ELSE ConditionBranch workflow based on conditions
repeat_actionRepeatLoop through a set of actions
wait_untilWaitPause workflow until condition met

3.2 Record Actions Configuration

Create Record Action

FieldField NameDescriptionRequired
Entity Selectionentity_idTarget entity for new recordYes
FieldsfieldsField values to setYes

Update Record Action

FieldField NameDescriptionRequired
Entity Selectionentity_idEntity containing the recordYes
Record IDrecord_idRecord to updateYes
FieldsfieldsField values to updateYes

Delete Record Action

FieldField NameDescriptionRequired
Entity Selectionentity_idEntity containing the recordYes
Record IDrecord_idRecord to deleteYes

3.3 AI-Driven Action Configuration

FieldField NameDescription
Entity Selectionentity_idEntity for context
ModelmodelAI model to use (GPT-4o, GPT-4.1, etc.)
AI Action Typeai_action_typeType of AI operation
Select Fieldselect_fieldTarget field for AI output
PromptpromptInstructions for AI
TemperaturetemperatureRandomness (0-1, default 0.2)
Conditional Promptconditional_promptDynamic prompts based on conditions

AI Action Types

TypeValueDescription
AI Criteria Actionai_criteria_actionAI evaluates against criteria
CustomcustomCustom prompt-based AI action

AI Models Available

ModelValueDescription
GPT-4ogpt-4oLatest OpenAI multimodal model
GPT-4o minigpt-4.1-miniEfficient smaller model
GPT-4.1gpt-4.1Advanced reasoning model
o3o3Specialized model

Section 4: Condition Builder

4.1 Condition Operators

Navigation: Branch Configuration -> Add Condition

OperatorValueDescription
iseqEquals
is notneNot equals
greater thangtGreater than
greater than or equal togteGreater than or equals
less thanltLess than
less than or equal tolteLess than or equals
ininValue in list
not inninValue not in list
containslikeString contains
contains (case-insensitive)ilikeString contains (ignore case)
betweenbetweenValue in range
is nullis_nullValue is empty
is not nullis_not_nullValue exists
min lengthmin_lengthMinimum string length
max lengthmax_lengthMaximum string length

4.2 Condition Conjunctions

ConjunctionValueDescription
AndandAll conditions must be true
OrorAny condition must be true

4.3 Appointment Condition Fields

For appointment/scheduling automations:

FieldValueType
Appointment Statusappointment_statusDropdown
Calendar Idcalendar_idDropdown
Contact Emailcontact_emailText
Appointment Priorityappointment_priorityDropdown
Assigned Userassigned_userDropdown
Appointment Dateappointment_dateDate

Section 5: Branch Configuration

5.1 Branch Types

TypeValueDescription
IFIFPrimary condition branch
ELSE IFELSE_IFAdditional condition branch
ELSEELSEFallback branch when no conditions match

5.2 Branch Operators

OperatorValueDescription
ANDandAll conditions in branch must be true
ORorAny condition in branch must be true

5.3 Branch Constraints

ConstraintValueDescription
Max Branches10Maximum number of branches allowed
Min Non-ELSE Branches1At least one IF branch required
ELSE Branch IDbranch_elseSpecial identifier for ELSE branch

5.4 Branch Labels

LabelPurpose
Default Title"Branch Conditions"
Add Branch Button"Add Branch"
Add ELSE Button"Add ELSE Branch"
None Branch Title"None Branch"
None Branch Subtitle"When no condition is met"

Section 6: Dynamic Field Support

6.1 Plus Button Supported Fields

Fields that support dynamic value insertion:

Field TypeValue
Texttext
Text Areatextarea
Rich Textrichtext
Numbernumber
Emailemail
URLurl
Filefile

6.2 Formula Field Configuration

Formulas use mention syntax for field references:

Trigger Character: { (open brace)

Example Formula: {Amount} * {Quantity} * 0.1


Section 7: Fee Definition (Permitting)

7.1 Fee Structure

For permit fee calculations:

FieldDescription
Fee NameName of the fee (e.g., "Building Fee")
Fee TypeCategory (Quantity, Equipment, etc.)
Tax FormulaFormula for tax calculation
Discount FormulaFormula for discount calculation

7.2 Example Fee Configuration

{
  name: 'Building Fee',
  type: 'Quantity',
  taxFormula: '{0.10} * {Amount}',
  discountFormula: 'IF({Quantity} > 500, {amount} * 0.9, {amount})'
}

Section 8: Permitting Solution Patterns

8.1 Application Submission Workflow

Trigger: Form Submitted Use Case: When applicant submits permit application

[Form Submitted]
    -> [Create Record in Permit Entity]
    -> [Update Status to "Submitted"]
    -> [Send Email to Applicant]
    -> [Send Email to Reviewer]
    -> [End]

Configuration:

StepActionConfiguration
1Triggerwhen_form_is_submitted, Form: Permit Application
2Create RecordEntity: Permits, Map form fields to entity fields
3Update RecordStatus field = "Submitted"
4Send EmailTemplate: Application Received, To: Applicant
5Send EmailTemplate: New Application, To: Assigned Reviewer

8.2 Review Status Change Workflow

Trigger: Record Matches Condition Use Case: When reviewer updates review status

[Record Matches Condition: Review Status = "Approved"]
    -> [IF All Reviews Approved]
        -> [Update Permit Status to "Ready for Issuance"]
        -> [Send Email to Applicant]
    -> [ELSE]
        -> [Log Status Change]
    -> [End]

Condition Configuration:

FieldOperatorValue
Building Review StatusisApproved
Zoning Review StatusisApproved
Health Dept Review StatusisApproved

8.3 Inspection Scheduling Workflow

Trigger: Record Updated Use Case: When permit status changes to "Ready for Inspection"

[Record Updated: Permit Status]
    -> [IF Status = "Ready for Inspection"]
        -> [AI Action: Determine Inspection Type]
        -> [Create Record in Inspections Entity]
        -> [Send Email to Inspector]
        -> [Send Email to Applicant]
    -> [End]

8.4 Expiration Warning Workflow

Trigger: Scheduled Event Use Case: Daily check for expiring permits

[Schedule Trigger: Daily at 8:00 AM]
    -> [Find Records: Permits expiring in 30 days]
    -> [Repeat for each record]
        -> [Send Email: Expiration Warning]
        -> [Update Record: Warning Sent = true]
    -> [End]

Schedule Configuration:

FieldValue
Interval TypeDays
Interval Value1
Execution Time08:00
Time ZoneAmerica/New_York

8.5 AI-Powered Determination Workflow

Trigger: Process Evaluation Completes Use Case: After AI evaluation of permit application

[Process Evaluation Completes]
    -> [AI Action: Evaluate Compliance]
    -> [IF AI Determination = "Approved"]
        -> [Update Record: Status = "AI Approved"]
        -> [Create Record in Approvals Entity]
    -> [ELSE IF AI Determination = "Denied"]
        -> [Update Record: Status = "AI Denied"]
        -> [Send Email: Denial Notification]
    -> [ELSE]
        -> [Update Record: Status = "Manual Review Required"]
        -> [Send Email to Reviewer]
    -> [End]

8.6 Multi-Department Review Routing

Trigger: Record Created Use Case: Route new permit to appropriate review departments

[Record Created: Permit]
    -> [AI Action: Determine Required Reviews]
    -> [IF Zoning Required]
        -> [Update Field: Zoning Review Status = "Pending"]
    -> [IF Building Required]
        -> [Update Field: Building Review Status = "Pending"]
    -> [IF Health Required]
        -> [Update Field: Health Review Status = "Pending"]
    -> [Send Email: Assignment Notifications]
    -> [End]

Section 9: Testing and Publishing

9.1 Testing Automations

  1. Click Test in the automation editor
  2. Provide sample trigger data
  3. Review step-by-step execution
  4. Verify expected outcomes

9.2 Run History Monitoring

Navigation: Automation -> Run History

FilterDescription
AllShow all execution history
SuccessOnly successful runs
FailedOnly failed runs

9.3 Error Handling

When automations fail:

  1. Check Run History for error details
  2. Review node-by-node execution
  3. Verify field mappings and conditions
  4. Test with sample data

Troubleshooting

Common Issues

Trigger Not Firing

Check:

  1. Trigger conditions are correctly configured
  2. Entity/Form IDs are valid
  3. User has permissions on source entity
  4. Automation is published (not draft)

Action Fails with "Record Not Found"

Check:

  1. Record ID reference is valid
  2. Record exists in the entity
  3. Using correct field for record identification

Email Not Sending

Check:

  1. Email template exists
  2. Recipient field is populated
  3. Email service is configured
  4. Valid email addresses

Branch Conditions Not Evaluating

Check:

  1. Field names match exactly
  2. Operators are appropriate for field type
  3. Values are in correct format
  4. AND/OR logic is correct

Code Reference

Source Files

FileLocationPurpose
Trigger Constantsautomation-builder-app/src/pages/Automation/AddConfigureAutomation/ConfigurationSidebar/TriggerConfiguration/const.tsxTrigger keys, icons, colors
Trigger Descriptionsautomation-builder-app/src/pages/Automation/AddConfigureAutomation/ConfigurationSidebar/TriggerConfiguration/constants.tsTrigger type descriptions
Action Constantsautomation-builder-app/src/pages/Automation/AddConfigureAutomation/ConfigurationSidebar/ActionConfiguration/constants.tsxAction keys, icons, colors
Condition Builderautomation-builder-app/src/pages/Automation/AddConfigureAutomation/ConfigurationSidebar/components/RenderDynamicField/FormConditionBuilder/consts.tsOperators and conditions
Branch Constantsautomation-builder-app/src/pages/Automation/AddConfigureAutomation/ConfigurationSidebar/components/RenderDynamicField/BranchConditionBuilder/const.tsBranch configuration
Automation Flowautomation-builder-app/src/pages/Automation/AddConfigureAutomation/constants.tsFlow constants, interval types
Run Historyautomation-builder-app/src/pages/Automation/AddConfigureAutomation/AutomationHistorySidebar/RunHistory/FilterComponents/constants.tsStatus filter options
Fee Definitionautomation-builder-app/src/components/FeeDefinition/const.tsFee calculation patterns

This guide is aligned with the automation-builder-app codebase as of December 2025.