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

# Schedules and triggers

> Start work manually, on a schedule, from file changes, or from matching Gmail messages.

Every workflow starts with one implemented trigger.

| Trigger | Starts when |
| - | - |
| [Manual Trigger](https://docs.sndbox.app/nodes/manual-trigger.md) | You select **Run**. |
| [Schedule Trigger](https://docs.sndbox.app/nodes/schedule-trigger.md) | A local interval, hourly, daily, or cron occurrence is due. |
| [File Watch Trigger](https://docs.sndbox.app/nodes/file-watch-trigger.md) | A created, modified, or deleted file matches inside an approved folder. |
| [New Email](https://docs.sndbox.app/nodes/gmail-new-email-trigger.md) | Gmail polling finds a message matching the configured filters. |

## Local schedule behavior

The desktop runner calculates local next-run times. Quitting sndbox stops those schedules. Schedule settings support every X minutes, hourly, daily local time, and five- or six-field cron expressions.

## Avoid duplicate email runs

The Gmail trigger stores processed message IDs per workflow. Polling can be set from 1 to 60 minutes and filtered by sender, recipient, subject text, label, and attachment presence.

## Durable cloud schedules

The control-plane scheduler persists occurrences and uses a durable at-least-once queue. It defines timezone, daylight-saving, misfire, jitter, concurrency, and no-runner behavior explicitly. See [Schedules and event queue](https://docs.sndbox.app/execution/schedules-and-queue.md).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.