Flow Triggers
A trigger is what starts a flow. Every flow has one trigger subscription, which tells Connect what to listen for and how to dispatch the event to the flow engine. Triggers come in two flavors: webhook and poll.
Webhook triggers
Webhook triggers register a subscription with the provider so the provider will POST events directly to Connect. The flow fires within seconds of the provider event, which makes webhooks the right choice for anything real-time — new leads, completed payments, new messages.
Webhook endpoint: POST /webhook/:providerType. Connect verifies the signature (when supported), looks up every active subscription matching (provider_type, trigger_name), and dispatches through the TriggerRouterService.
Poll triggers
Poll triggers run on a cron and periodically query the provider for new records. Use them when the provider doesn't support webhooks, or when you need to deduplicate on a cursor field. The router maintains last_cursor per subscription so records are only delivered to the flow engine once.
Subscribing a flow
POST /connect/v1/flows/:flowId/triggers
Authorization: Bearer <jwt>
Content-Type: application/json
{
"providerType": "hubspot",
"triggerName": "contact.created",
"kind": "webhook", // or "poll"
"connectionId": "uuid-of-connection",
"config": { "pollIntervalSeconds": 60 } // poll-only
}Managing subscriptions
The global /admin/triggers page lists every active subscription across your workspace with its last-fired timestamp. Drill into a flow to toggle or delete its trigger inline.
Permissions
triggers.view— list subscriptions and available trigger definitionstriggers.write— create, toggle, and delete subscriptions
Plan limits
Active trigger subscriptions are capped per plan: Free allows 2, Starter 10, Professional and above unlimited. Disabled subscriptions don't count against the limit.