> ## Documentation Index
> Fetch the complete documentation index at: https://learn.workflow.dog/llms.txt
> Use this file to discover all available pages before exploring further.

# Service triggers

> Start workflows from Gmail, Outlook, Google Forms, and TidyCal events.

Service triggers watch an account in another product and create a workflow run
when a matching event arrives. Configure the account and filters in the
trigger panel; configure downstream service actions separately on their own
nodes.

## Available service events

| Service      | Trigger              | Configurable scope                                                        |
| ------------ | -------------------- | ------------------------------------------------------------------------- |
| Gmail        | New Email            | Google account and case-sensitive subject text                            |
| Gmail        | Sent Email           | Google account, case-sensitive subject text, and automated email behavior |
| Gmail        | Label Added to Email | Google account and optional case-insensitive label name                   |
| Outlook      | New Email            | Microsoft account and case-sensitive subject text                         |
| Google Forms | Google Form Response | Google account and the form's editing URL                                 |
| TidyCal      | New TidyCal Booking  | TidyCal account                                                           |

See the [Triggers reference](/reference/triggers) for the exact output fields
from each event.

## Configure an account-backed trigger

<Steps>
  <Step title="Choose the service event">
    Select the trigger while creating the workflow. The editor opens its
    configuration automatically when setup is required.
  </Step>

  <Step title="Connect or select an account">
    Choose a healthy account with the permissions required by that trigger. You
    can connect a new account directly from the selector.
  </Step>

  <Step title="Narrow the source">
    Add the available subject or label filter, or select the exact form. Start
    narrow; a broad inbox event can create many runs.
  </Step>

  <Step title="Save the trigger">
    Select **Save** and wait for the confirmation. WorkflowDog creates or
    updates the service watcher behind the trigger.
  </Step>

  <Step title="Send a new matching event">
    Enable the workflow, then cause the event in the connected service. Inspect
    the resulting run before widening the filter.
  </Step>
</Steps>

Account selection is project-scoped. The selector can use a healthy compatible
default account automatically, but the saved trigger still monitors the
specific account shown in its configuration.

Use [Integrations](/essentials/integrations) to set defaults, reconnect an
unhealthy account, see where an account is used, or replace it across nodes.

## Email filters and loops

Gmail and Outlook subject filters match when the subject includes the entered
text. The comparison is case-sensitive. Leave the field blank to accept every
email for that event.

The Gmail label trigger's label filter is case-insensitive. It reports labels
that were newly added; it is not a query for all messages that already carry
the label.

By default, Gmail's **Sent Email** trigger ignores messages sent by
WorkflowDog automations. Enabling **Trigger on automated emails?** includes
them and can create an infinite loop if the workflow also sends email from the
same account.

<Warning>
  Before allowing automated sent emails, draw the loop end to end. Add a strict
  filter or condition that guarantees an email produced by the workflow cannot
  trigger the same path indefinitely.
</Warning>

## Form and booking events

For **Google Form Response**, paste the form URL shown while editing the form,
not a response spreadsheet or unrelated sharing URL. Trigger data includes the
response ID, respondent email when available, answers grouped by question, and
quiz score when available.

**New TidyCal Booking** monitors the selected account for newly created,
non-cancelled bookings. It checks for new bookings on a one-minute interval, so
a matching event may not appear immediately. Its outputs include booking time,
timezone, contact details, meeting URL, booking type, and question answers.

## Test and troubleshoot

There is no generic Test Run button. After the trigger is saved and the
workflow is enabled, create a new matching event in the provider.

If no run appears, verify:

* the workflow is live,
* the trigger panel shows the intended account,
* the account is healthy and has the requested permissions,
* capitalization matches a subject filter,
* the label or form is the one the event actually used, and
* enough time has passed for a polled service such as TidyCal.

Continue with [Testing workflows](/guides/testing-workflows) and
[Troubleshooting runs](/guides/troubleshooting-runs). For inbound URLs,
webhooks, forms hosted by WorkflowDog, and email hooks, see
[External triggers](/essentials/external-triggers).
