App Event

The App Event trigger fires when something happens in a connected third-party app: a new Slack message, a Stripe payment, a GitHub PR, a Gmail email, or any event from 100+ supported integrations.

Internal name: Integration Node color: Navy (#1C3693)

Setting it up

The App Event trigger has a 3-step configuration flow:

Step 1: Pick an app

A search input and grid of popular apps appears:

Popular apps shown by default: Slack, Stripe, GitHub, HubSpot, Notion, Google Sheets, Gmail, Google Drive, Google Calendar, Salesforce, Microsoft Outlook, Microsoft Teams, X/Twitter

Type to search all 100+ integrations, or click View all to browse the full list.

Step 2: Pick a trigger event

After selecting an app, you see a list of available trigger events filtered to that app. Each event shows its name and description.

Example Slack trigger events:

  • New Message: fires when a new message is posted in a channel
  • Reaction Added: fires when someone adds an emoji reaction
  • Member Joined Channel: fires when a user joins a channel
  • App Mentioned: fires when someone mentions your app

Example Stripe trigger events:

  • Charge Succeeded: fires on successful payment
  • Invoice Created: fires when a new invoice is generated
  • Customer Created: fires when a new customer is added

Only events annotated as triggers appear; actions for the same app are shown separately as "related operations."

Note

If an app shows "No triggers are available for this app yet," it means the app only has actions: you can't use it as a trigger, but you can use it in downstream action nodes.

Step 3: Connect your account

The Connection Manager opens with the OAuth or API key flow for the selected app:

  • OAuth2 apps (Slack, Gmail, HubSpot, etc.): click Connect, sign into the app, grant permissions
  • API key apps (Stripe, SendGrid, OpenAI): paste your API key from the app's developer settings
  • Manual setup webhooks (some apps): no account needed, you get a webhook URL to paste into the app's settings

Configure tab

After connecting, the Configure tab may show additional options depending on the integration:

  • Branded webhook panel: for manual-setup integrations, shows a branded webhook URL with provider-specific setup instructions
  • Dynamic form fields: some integrations have configurable inputs (e.g., which Slack channel to listen on, which Stripe event types to filter)
  • No configuration needed: some triggers fire automatically for all events once connected

Output variables

Each integration produces different output variables based on the event. Common patterns:

AppEventExample variables
SlackNew Message{{trigger.channel}}, {{trigger.text}}, {{trigger.user}}
StripeCharge Succeeded{{trigger.amount}}, {{trigger.currency}}, {{trigger.customer}}
GitHubPull Request Opened{{trigger.title}}, {{trigger.body}}, {{trigger.author}}
GmailNew Email{{trigger.from}}, {{trigger.subject}}, {{trigger.body}}

The exact variables depend on the app and event. Check the output in the execution history after a test run.

Validation

  • An integration (app) must be selected
  • A trigger event must be selected
  • An account connection is required (except for manual-setup webhooks)

Common patterns

Slack → action pipeline

App Event (Slack: New Message in #support) → AI Analyzer (classify intent) → If-Else → Route to team

Stripe → notification

App Event (Stripe: Charge Succeeded) → Send Slack message ("New payment: ${{trigger.amount}}")

GitHub → workflow

App Event (GitHub: PR Opened) → AI Writer (draft review comments) → HTTP Request (post review to GitHub API)
Tip

After connecting an app, trigger a real event (send a Slack message, create a test Stripe charge) to see the exact output variables. The execution history shows the full payload.