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

# Objects

> Every object and enum the Monitor tools accept.

## Model tree

<div className="model-tree"><div className="model-tree-scroll"><div className="tree-node"><a href="#monitorschedule">MonitorSchedule</a></div><div className="tree-node"><a href="#monitorscrapetarget">MonitorScrapeTarget</a></div><div className="tree-node"><a href="#monitorcrawltarget">MonitorCrawlTarget</a><div className="tree-children"><div className="tree-node"><a href="#crawltargetoptions">CrawlTargetOptions</a></div></div></div><div className="tree-node"><a href="#monitorsearchtarget">MonitorSearchTarget</a></div><div className="tree-node"><a href="#monitorwebhook">MonitorWebhook</a></div><div className="tree-node"><a href="#monitornotification">MonitorNotification</a><div className="tree-children"><div className="tree-node"><a href="#monitoremailnotification">MonitorEmailNotification</a></div></div></div></div></div>

## MonitorSchedule

Schedule for monitor checks. Provide either cron or text.

<div className="reference-table">
  | Field      | Type     | Description                                                                   |
  | ---------- | -------- | ----------------------------------------------------------------------------- |
  | `cron`     | `string` | Five-field cron expression. Minimum interval is 5 minutes.                    |
  | `text`     | `string` | Natural language schedule such as 'every 30 minutes' or 'daily at 9am'.       |
  | `timezone` | `string` | IANA timezone for the schedule. The server applies 'UTC' when this is absent. |
</div>

## MonitorScrapeTarget

Monitor target that scrapes one or more URLs on each check.

<div className="reference-table">
  | Field                                                        | Type                                                                               | Description                                                                          |
  | ------------------------------------------------------------ | ---------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------ |
  | `id`                                                         | `string`                                                                           | Optional stable ID for this target. Generated if omitted.                            |
  | `type` <span className="required" title="required">\*</span> | `string`                                                                           | Scrape target type.                                                                  |
  | `urls` <span className="required" title="required">\*</span> | `string`\[]                                                                        | URLs to scrape on each check. <span className="field-constraints">min 1 items</span> |
  | `scrape_options`                                             | [ScrapeOptionsNested](/charter/charter/packs/firecrawl/search/objects#scrapeoptionsnested) | Scrape options applied to each URL.                                                  |
</div>

## MonitorCrawlTarget

Monitor target that crawls a site on each check.

<div className="reference-table">
  | Field                                                        | Type                                                                               | Description                                               |
  | ------------------------------------------------------------ | ---------------------------------------------------------------------------------- | --------------------------------------------------------- |
  | `id`                                                         | `string`                                                                           | Optional stable ID for this target. Generated if omitted. |
  | `type` <span className="required" title="required">\*</span> | `string`                                                                           | Crawl target type.                                        |
  | `url` <span className="required" title="required">\*</span>  | `string`                                                                           | Root URL to crawl on each check.                          |
  | `crawl_options`                                              | [CrawlTargetOptions](#crawltargetoptions)                                          | Crawl options such as limit and includePaths.             |
  | `scrape_options`                                             | [ScrapeOptionsNested](/charter/charter/packs/firecrawl/search/objects#scrapeoptionsnested) | Scrape options applied to each crawled page.              |
</div>

## CrawlTargetOptions

Crawl options attached to a monitor crawl target.

<div className="reference-table">
  | Field           | Type        | Description                             |
  | --------------- | ----------- | --------------------------------------- |
  | `limit`         | `integer`   | Maximum number of pages to crawl.       |
  | `max_depth`     | `integer`   | Maximum crawl depth.                    |
  | `include_paths` | `string`\[] | URL pathname regex patterns to include. |
  | `exclude_paths` | `string`\[] | URL pathname regex patterns to exclude. |
</div>

## MonitorSearchTarget

Monitor target that runs web search queries on each check.

<div className="reference-table">
  | Field                                                           | Type                                        | Description                                                                                                                          |
  | --------------------------------------------------------------- | ------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
  | `id`                                                            | `string`                                    | Optional stable ID for this target. Generated if omitted.                                                                            |
  | `type` <span className="required" title="required">\*</span>    | `string`                                    | Search target type.                                                                                                                  |
  | `queries` <span className="required" title="required">\*</span> | `string`\[]                                 | Search queries to run on each check (1-12). <span className="field-constraints">min 1 items; max 12 items</span>                     |
  | `search_window`                                                 | [MonitorSearchWindow](#monitorsearchwindow) | Recency filter for search results. The server applies '24h' when this is absent.                                                     |
  | `max_results`                                                   | `integer`                                   | Total results to evaluate per check. The server applies 10 when this is absent. <span className="field-constraints">≥ 1; ≤ 50</span> |
  | `include_domains`                                               | `string`\[]                                 | Restrict results to these domains. <span className="field-constraints">max 50 items</span>                                           |
  | `exclude_domains`                                               | `string`\[]                                 | Drop results from these domains. <span className="field-constraints">max 50 items</span>                                             |
</div>

## MonitorWebhook

Webhook destination for monitor page and check completion events.

<div className="reference-table">
  | Field                                                       | Type                                           | Description                                                                                 |
  | ----------------------------------------------------------- | ---------------------------------------------- | ------------------------------------------------------------------------------------------- |
  | `url` <span className="required" title="required">\*</span> | `string`                                       | The URL to send monitor webhooks to.                                                        |
  | `headers`                                                   | map of `string`                                | Headers to send to the webhook URL.                                                         |
  | `metadata`                                                  | `object`                                       | Custom metadata included in webhook payloads.                                               |
  | `events`                                                    | [MonitorWebhookEvent](#monitorwebhookevent)\[] | Monitor webhook events to receive. The server sends all monitor events when this is absent. |
</div>

## MonitorNotification

Notification destinations for a monitor.

<div className="reference-table">
  | Field   | Type                                                  | Description                  |
  | ------- | ----------------------------------------------------- | ---------------------------- |
  | `email` | [MonitorEmailNotification](#monitoremailnotification) | Email notification settings. |
</div>

## MonitorEmailNotification

Email notification settings for a monitor.

<div className="reference-table">
  | Field          | Type        | Description                                                                                  |
  | -------------- | ----------- | -------------------------------------------------------------------------------------------- |
  | `enabled`      | `boolean`   | Whether email notifications are enabled.                                                     |
  | `recipients`   | `string`\[] | Email recipients for monitor alerts. <span className="field-constraints">max 25 items</span> |
  | `includeDiffs` | `boolean`   | Include changed page details in email summaries.                                             |
</div>

## MonitorWebhookEvent

<div className="enum-table">
  | Value                     |
  | ------------------------- |
  | `monitor.page`            |
  | `monitor.check.completed` |
</div>

## MonitorCheckStatus

<div className="enum-table">
  | Value                |
  | -------------------- |
  | `queued`             |
  | `running`            |
  | `completed`          |
  | `failed`             |
  | `partial`            |
  | `skipped_overlap`    |
  | `skipped_no_credits` |
</div>

## MonitorPageStatus

<div className="enum-table">
  | Value     |
  | --------- |
  | `same`    |
  | `new`     |
  | `changed` |
  | `removed` |
  | `error`   |
</div>

## MonitorSearchWindow

<div className="enum-table">
  | Value |
  | ----- |
  | `5m`  |
  | `15m` |
  | `1h`  |
  | `6h`  |
  | `24h` |
  | `7d`  |
</div>
