# Advanced scheduling

Use Advanced Scheduling when the standard scheduler is too limited.

It is the power-user mode for people who want more than one simple recurring timer.

Think of it like this:

* **Standard Scheduling**: one simple recurring sync plan
* **Advanced Scheduling**: multiple automations in one place

It lets you combine timed sync steps, automated captures, and event-based triggers in one plan.

Use it when you want:

* timed sync steps
* automatic captures
* event triggers
* a mix of all three

Toggle **Use advanced plan** to replace the standard cadence.

It has three parts:

* **Time Plan**: run enabled sync pairs at specific times
* **Capture Schedules**: create provider captures on a schedule
* **Event Triggers**: start a sync pair from watcher or webhook activity

### Current plan

The top of the advanced panel shows a live **Current plan** summary.

It makes a more complex plan easier to understand at a glance.

It shows:

* how many timed steps are configured
* how many capture schedules are configured
* how many event triggers are configured
* whether the plan is active, ready, or needs attention

If something is wrong, the summary is more explicit now.

Instead of a vague **Needs attention**, it points to the area that needs work.

Examples:

* `Timed steps need attention`
* `Capture schedules need attention`
* `Event triggers need attention`

<figure><img src="/files/YRZ3SPSw5seBDlNMlXmo" alt=""><figcaption></figcaption></figure>

### Time Plan

Use the Time Plan when you need per-pair timing and ordering.

<figure><img src="/files/gRR7Yv1xTcBxHeGJnXcY" alt=""><figcaption></figcaption></figure>

Each row is one sync step:

* **Pair**: which pair to run (only enabled pairs are selectable)
* **Time**: scheduled start time (24h)
  * Ignored when **After** is set
* **Days**: which weekdays this step can run
* **After**: run immediately after another step finishes
* **Active**: enable or disable a step without deleting it

#### Behavior

* Steps run **top-to-bottom**
* Steps never run in parallel
* If two steps share a time, list order wins
* You can make one step depend on another with **After**
* **Auto-create from enabled pairs** builds a starter plan
* **Add step** appends a new row

#### Why use it

Use the Time Plan when one shared schedule is not enough.

It lets you run different pairs at different times.

It also lets you limit heavier jobs to specific weekdays.

### Capture Schedules

Capture Scheduling lets you automatically create provider captures on a schedule.

It runs separately from sync jobs.

Use it for restore points, rollback checkpoints, or routine backups.

Related: [Captures](/crosswatch/tools/captures.md)

<figure><img src="/files/bjd2EcMqhoFhY3KxO7Tv" alt=""><figcaption></figcaption></figure>

#### Main row fields

* **Provider**: which provider to capture from
* **Profile**: which provider profile or instance to use
* **Feature**: what to capture
  * Examples: watchlist, ratings, history, progress, or all
* **Time**: local time when the capture should start
* **Days**: which weekdays the capture may run
* **Active**: enable or disable the schedule

#### Advanced options

Each capture schedule also has an advanced section.

It includes:

* **Label template**: optional naming pattern for created captures
  * Supported placeholders: `{provider}`, `{instance}`, `{feature}`, `{date}`, `{time}`, `{datetime}`, `{stamp}`
* **Keep captures for days**: remove captures older than this many days
* **Max captures to keep**: keep only the newest number of captures
* **Cleanup**: automatically prune older captures after a successful scheduled capture

#### Retention behavior

* If **Cleanup** is off, nothing is deleted automatically
* If **Cleanup** is on, CrossWatch can prune older captures by age
  * Controlled by **Keep captures for days**
* If **Cleanup** is on, CrossWatch can also prune by count
  * Controlled by **Max captures to keep**
* If both are set, both rules apply

#### Why use it

Use Capture Schedules for auditing, comparison, recovery, or routine review.

They are useful when captures are part of your normal operating flow.

### Event Triggers

Event Triggers start a sync pair when watcher or webhook activity happens.

They are useful when you want to sync your watch progress after you watched something.&#x20;

You can filter by:

* event type
* media type
* progress
* route

Guardrails help prevent over-triggering.

<figure><img src="/files/PRtF1DMw0eGinsVZv61T" alt=""><figcaption></figcaption></figure>

#### Guardrails

* **Mute (min)**: ignore new triggers for a short time after one runs
* **Dedupe (sec)**: suppress repeated identical events
* **Max / hour**: cap how many times the rule may run each hour

#### Why use it

Use Event Triggers when you want automation to react to playback behavior.

For example, a trigger can react to playback start, pause, or stop instead of waiting for a clock time.

Related:

* [Watcher](/crosswatch/scrobble/watcher.md)
* [Webhooks](/crosswatch/scrobble/webhooks.md)

### Example use cases

Advanced Scheduling can handle setups like:

* run one sync every morning
* run a different pair later in the day
* automatically create scheduled provider captures
* trigger a sync after watcher or webhook playback activity
* combine time-based and event-based automation in the same plan

### When to use it

Use **Advanced Scheduling** when you want per-pair timing, automated captures, event triggers, or any combination.

If you only need one shared cadence for all enabled pairs, use the standard scheduler instead.

In short, Advanced Scheduling behaves less like a simple timer and more like a configurable automation engine.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://wiki.crosswatch.app/crosswatch/scheduling/advanced-scheduling.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
