
Choose a trigger from the automation canvas
How triggers work (UI anatomy)
Most triggers share the same layout.
Trigger configuration tabs
- Account / Configure - Connect an external account (Salesforce, HubSpot, etc.) and pick event options (object, list, form, and so on).
- Output - Shows the sample payload (schema) your trigger provides. When testing in Draft mode, click Refresh after firing a sample to update the schema so field mapping stays accurate.
- Copy the field paths you will need later (for example
contact.email,deal.amount). - If a field is missing, send another sample event and click Refresh again.
- Copy the field paths you will need later (for example
- Next step - Choose what runs after the trigger (Thoughtly steps such as AI, Conditions, Loop, or an integration action such as
Create Contact).
Thoughtly triggers (built-in)
Built-in triggers do not require external accounts and cover the core orchestration cases.1) Time -> Recurring Schedule

Recurring schedule trigger
- Use cases: business-hours call campaigns, nightly CRM sweeps, weekly no-show follow-ups.
- Key options: timezone, days of week, start time, repeat cadence.
- Best practices: keep schedules narrow (for example Mon-Fri 09:00-18:00) to avoid after-hours calling. Pair with Conditions to skip contacts without phone/email.
2) Webhook -> Incoming Webhook

Incoming webhook trigger
- Use cases: kick off campaigns from your CRM, respond to cart-abandon events, start follow-ups when a form submits.
- How to use:
- Copy the unique URL.
- Send a JSON
POSTwith your payload. - In Output, click Refresh to lock the schema.
- Security tips: enable webhook verification under Settings -> Developer, generate an API key, and send it in the
x-api-tokenheader.
3) Thoughtly -> On Inbound Call (special)

On inbound call trigger
- Fires before an inbound call connects to an agent-the entry point for pre-call inbound automations.
- Use cases: identity/CRM lookup, spam or fraud checks, VIP routing, setting attributes for downstream logic.
- Output: caller number, dialed number, timestamp, and available carrier metadata.
- Pattern: Trigger -> AI or Conditions -> set Attributes/Metadata -> continue inbound flow.
4) Thoughtly -> On Call Completed (special)

On call completed trigger
- Fires after a call ends for post-call automations.
- Use cases: dispositions, summaries, sentiment scoring, CRM updates, notifications, analytics.
- Output: rich call data-durations, outcomes, variables captured, action flags, transfers, voicemail detection.
- Pattern: Trigger -> parse payload with Conditions -> write to CRM, spreadsheets, or BI.
- Specific Agents - Select one or more agents from the multi-select dropdown. The automation triggers only when calls complete for the selected agents. Output variables are generated based on the structure of the first selected agent.
- All Agents - The automation triggers whenever a call is completed by any current or future agent. Use this for global monitoring, analytics, or workflows that apply across your entire team.
transcript- The spoken contentspeaker- Either"ai"or"user"createdAt- ISO 8601 timestamp when the message was createdstep- (AI messages only) The step number in the conversationnode_id- (AI messages only) The node ID from the agent builder
Integration triggers (by app)
Integration triggers start automations when events occur in other tools. The flow is consistent: connect account -> choose event -> inspect Output -> configure the Next step. Supported triggers:- GoHighLevel - On Contact Created
- HubSpot - On Contact Created
- Keap - On Contact Created
- Salesforce - New Contact, New Object
- Salesforce Sandbox - New Contact, New Object
- SmartSheet - On Row Created, On Column Updated
- Trello - On Card Moved to List
- Typeform - New Form Response
- Zoho CRM - On Contact Created
- Time - Recurring Schedule (alias of Time)
- Webhook - Incoming Webhook (alias of Webhook)
- Thoughtly - On Call Completed, On Inbound Call
- HubSpot / Keap / GoHighLevel / Zoho: new contact -> Thoughtly agent call or SMS -> update contact with attributes.
- Salesforce: new object (Lead) -> lookup phone/email -> route via Conditions; if qualified -> create task and start call flow.
- Typeform: new response -> map answers to attributes -> enqueue outbound calls.
- SmartSheet / Trello: row or card moved -> notify the team, set attributes, call back if the SLA is breached.
Choosing the right trigger (quick guide)
- Run on a schedule -> Time (Recurring Schedule)
- React to an external event -> Webhook or the app’s native trigger
- Pre-call logic before inbound connects -> On Inbound Call
- Work after a call ends -> On Call Completed
Best practices
- Name and tag clearly. Example:
gohighlevel_on_contact_created_q4_campaign - Test in Draft and refresh Output. Avoid mapping fields you have not seen in a sample payload.
- Keep payloads lean. Map only the data you need into attributes or downstream steps.
- Plan for idempotency. Especially for webhooks and external systems that retry events.
See also
- Automation steps - Thoughtly steps (AI, Conditions, Loop) vs. integration actions.
- Attributes vs Metadata - what to store before vs. after calls.
- Automations overview - enrich contacts before and after calls.
- On Inbound Call trigger - logic before connecting inbound calls.