> ## 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 Search tools accept.

## Model tree

<div className="model-tree"><div className="model-tree-scroll"><div className="tree-node"><a href="#searchsource">SearchSource</a></div><div className="tree-node"><a href="#searchcategory">SearchCategory</a></div><div className="tree-node"><a href="#scrapeoptionsnested">ScrapeOptionsNested</a><div className="tree-children"><div className="tree-node"><a href="#format">Format</a><div className="tree-children"><div className="tree-node"><a href="#viewport">Viewport</a></div></div></div><div className="tree-node"><a href="#pdfparser">PdfParser</a></div><div className="tree-node"><a href="#action">Action</a><div className="tree-children"><div className="tree-node"><a href="#viewport">Viewport</a></div></div></div><div className="tree-node"><a href="#scrapelocation">ScrapeLocation</a></div><div className="tree-node"><a href="#redactpiioptions">RedactPIIOptions</a></div><div className="tree-node"><a href="#browserprofile">BrowserProfile</a></div><div className="tree-node"><a href="#threatprotectionoverride">ThreatProtectionOverride</a></div><div className="tree-node"><a href="#auditmetadata">AuditMetadata</a></div></div></div><div className="tree-node"><a href="#threatprotectionoverride">ThreatProtectionOverride</a></div><div className="tree-node"><a href="#valuablesource">ValuableSource</a></div><div className="tree-node"><a href="#missingcontent">MissingContent</a></div></div></div>

## SearchSource

A source to search. Determines which result arrays appear in the response.

<div className="reference-table">
  | Field                                                        | Type                          | Description                                                                                                                                                                                                   |
  | ------------------------------------------------------------ | ----------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `type` <span className="required" title="required">\*</span> | `"web" \| "images" \| "news"` | The source type to search.                                                                                                                                                                                    |
  | `tbs`                                                        | `string`                      | Time-based search parameter for web sources. Supports predefined time ranges (qdr:h, qdr:d, qdr:w, qdr:m, qdr:y), custom date ranges (cdr:1,cd\_min:MM/DD/YYYY,cd\_max:MM/DD/YYYY), and sort by date (sbd:1). |
  | `location`                                                   | `string`                      | Location parameter for web sources (e.g. San Francisco,California,United States).                                                                                                                             |
</div>

## SearchCategory

A category to filter search results by.

<div className="reference-table">
  | Field                                                        | Type                                 | Description                             |
  | ------------------------------------------------------------ | ------------------------------------ | --------------------------------------- |
  | `type` <span className="required" title="required">\*</span> | `"developer" \| "research" \| "pdf"` | The category type to filter results by. |
</div>

## ScrapeOptionsNested

Nested scrape options used by search, crawl, and monitor targets.

<div className="reference-table">
  | Field                 | Type                                                                                     | Description                                                                                                                                     |
  | --------------------- | ---------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
  | `formats`             | [FormatType](/charter/charter/packs/firecrawl/scrape/objects#formattype) \| [Format](#format)\[] | Output formats to include in the response. Strings or objects. The server applies markdown when this is absent.                                 |
  | `onlyMainContent`     | `boolean`                                                                                | Only return the main content of the page excluding headers, navs, footers, etc. The server applies true when this is absent.                    |
  | `onlyCleanContent`    | `boolean`                                                                                | Beta. LLM pass over markdown to remove residual boilerplate that onlyMainContent can miss.                                                      |
  | `includeTags`         | `string`\[]                                                                              | Tags to include in the output.                                                                                                                  |
  | `excludeTags`         | `string`\[]                                                                              | Tags to exclude from the output.                                                                                                                |
  | `maxAge`              | `integer`                                                                                | Returns a cached version of the page if it is younger than this age in milliseconds. The server applies 172800000 (2 days) when this is absent. |
  | `minAge`              | `integer`                                                                                | When set, the request only checks the cache and never triggers a fresh scrape.                                                                  |
  | `headers`             | map of `string`                                                                          | Headers to send with the request.                                                                                                               |
  | `waitFor`             | `integer`                                                                                | Specify a delay in milliseconds before fetching the content. The server applies 0 when this is absent.                                          |
  | `mobile`              | `boolean`                                                                                | Emulate scraping from a mobile device.                                                                                                          |
  | `skipTlsVerification` | `boolean`                                                                                | Skip TLS certificate verification when making requests.                                                                                         |
  | `timeout`             | `integer`                                                                                | Timeout in milliseconds. The server applies 60000 when this is absent. <span className="field-constraints">≥ 1000; ≤ 300000</span>              |
  | `parsers`             | `string` \| [PdfParser](#pdfparser)\[]                                                   | Controls how files are processed during scraping.                                                                                               |
  | `actions`             | [Action](#action)\[]                                                                     | Actions to perform on the page before grabbing the content.                                                                                     |
  | `location`            | [ScrapeLocation](#scrapelocation)                                                        | Location settings for the request.                                                                                                              |
  | `removeBase64Images`  | `boolean`                                                                                | Removes all base64 images from the markdown output.                                                                                             |
  | `blockAds`            | `boolean`                                                                                | Enables ad-blocking and cookie popup blocking.                                                                                                  |
  | `proxy`               | `"basic" \| "enhanced" \| "auto"`                                                        | Specifies the type of proxy to use.                                                                                                             |
  | `storeInCache`        | `boolean`                                                                                | If true, the page will be stored in the Firecrawl index and cache.                                                                              |
  | `lockdown`            | `boolean`                                                                                | Serve from cache only and never make an outbound request. On miss, returns 404 SCRAPE\_LOCKDOWN\_CACHE\_MISS.                                   |
  | `redactPII`           | `boolean` \| [RedactPIIOptions](#redactpiioptions)                                       | Redact personally identifiable information from returned markdown. Pass true for defaults, or an object to tune it.                             |
  | `profile`             | [BrowserProfile](#browserprofile)                                                        | Persistent browser storage across scrape and interact sessions.                                                                                 |
  | `threatProtection`    | [ThreatProtectionOverride](#threatprotectionoverride)                                    | Per-request threat protection override. Enterprise feature.                                                                                     |
  | `auditMetadata`       | [AuditMetadata](#auditmetadata)                                                          | User attribution included with SIEM logging events when SIEM is enabled.                                                                        |
</div>

## Format

An output format. The API also accepts a bare type string in the formats list.

<div className="reference-table">
  | Field                                                        | Type                                                             | Description                                                                                                                                                                            |
  | ------------------------------------------------------------ | ---------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `type` <span className="required" title="required">\*</span> | [FormatType](/charter/charter/packs/firecrawl/scrape/objects#formattype) | The format type.                                                                                                                                                                       |
  | `full_page`                                                  | `boolean`                                                        | Whether to capture a full-page screenshot. Only applicable to 'screenshot'.                                                                                                            |
  | `quality`                                                    | `integer`                                                        | The quality of the screenshot, from 1 to 100. Only applicable to 'screenshot'.                                                                                                         |
  | `viewport`                                                   | `Viewport`                                                       | Viewport settings for the screenshot. Only applicable to 'screenshot'.                                                                                                                 |
  | `schema`                                                     | `object`                                                         | JSON schema for structured extraction. Only applicable to 'json' and 'changeTracking'.                                                                                                 |
  | `prompt`                                                     | `string`                                                         | Prompt for AI-based extraction. Only applicable to 'json', 'summary', and 'changeTracking'.                                                                                            |
  | `check_prompt_injection`                                     | `boolean`                                                        | Scan page content for prompt injection before JSON extraction. Fails with 403 / SCRAPE\_PROMPT\_INJECTION\_DETECTED when an injection is detected. Adds 4 credits when the check runs. |
  | `modes`                                                      | `"git-diff" \| "json"`\[]                                        | Change tracking modes. Only applicable to 'changeTracking'.                                                                                                                            |
  | `tag`                                                        | `string`                                                         | Tag for change tracking. Only applicable to 'changeTracking'.                                                                                                                          |
  | `question`                                                   | `string`                                                         | The question to answer about the page. Required when type is 'question'. <span className="field-constraints">max length 10000</span>                                                   |
  | `query`                                                      | `string`                                                         | The text-selection query. Required when type is 'highlights'. <span className="field-constraints">max length 10000</span>                                                              |
</div>

## Viewport

Viewport dimensions for screenshot actions or formats.

<div className="reference-table">
  | Field                                                          | Type      | Description                          |
  | -------------------------------------------------------------- | --------- | ------------------------------------ |
  | `width` <span className="required" title="required">\*</span>  | `integer` | The width of the viewport in pixels  |
  | `height` <span className="required" title="required">\*</span> | `integer` | The height of the viewport in pixels |
</div>

## PdfParser

PDF parser configuration. The parsers list also accepts the bare string 'pdf'.

<div className="reference-table">
  | Field                                                        | Type                        | Description                                                                                                                                                      |
  | ------------------------------------------------------------ | --------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `type` <span className="required" title="required">\*</span> | `string`                    | The parser type. Currently only 'pdf' is supported.                                                                                                              |
  | `mode`                                                       | `"fast" \| "auto" \| "ocr"` | PDF parsing mode. 'fast': text-based extraction only. 'auto': fast first, OCR fallback. 'ocr': OCR on every page. The server applies 'auto' when this is absent. |
  | `max_pages`                                                  | `integer`                   | Maximum number of pages to parse from the PDF. <span className="field-constraints">≥ 1; ≤ 10000</span>                                                           |
  | `pages`                                                      | `boolean`                   | Include physical per-page markdown alongside the document markdown.                                                                                              |
  | `blocks`                                                     | `boolean`                   | Include per-page typed layout blocks alongside the document markdown.                                                                                            |
  | `page_markers`                                               | `boolean`                   | Annotate page breaks in the document markdown.                                                                                                                   |
</div>

## Action

A browser action to perform on the page before grabbing the content.

<div className="reference-table">
  | Field                                                        | Type                  | Description                                                                                                                                                                   |
  | ------------------------------------------------------------ | --------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `type` <span className="required" title="required">\*</span> | `string`              | The action type. One of `wait`, `screenshot`, `click`, `write`, `press`, `scroll`, `scrape`, `executeJavascript`, `pdf`.                                                      |
  | `milliseconds`                                               | `integer`             | Number of milliseconds to wait. Only applicable to 'wait'. <span className="field-constraints">≥ 1</span>                                                                     |
  | `selector`                                                   | `string`              | CSS selector for the target element.                                                                                                                                          |
  | `fullPage`                                                   | `boolean`             | Whether to capture a full-page screenshot.                                                                                                                                    |
  | `quality`                                                    | `integer`             | The quality of the screenshot, from 1 to 100.                                                                                                                                 |
  | `viewport`                                                   | [Viewport](#viewport) | Viewport settings for the screenshot.                                                                                                                                         |
  | `all`                                                        | `boolean`             | Clicks all elements matched by the selector.                                                                                                                                  |
  | `text`                                                       | `string`              | Text to type into the element.                                                                                                                                                |
  | `key`                                                        | `string`              | Key to press (e.g. 'Enter', 'Tab').                                                                                                                                           |
  | `direction`                                                  | `"up" \| "down"`      | Direction to scroll.                                                                                                                                                          |
  | `script`                                                     | `string`              | JavaScript code to execute on the page.                                                                                                                                       |
  | `format`                                                     | `string`              | The page size of the resulting PDF. The server applies 'Letter' when this is absent. One of `A0`, `A1`, `A2`, `A3`, `A4`, `A5`, `A6`, `Letter`, `Legal`, `Tabloid`, `Ledger`. |
  | `landscape`                                                  | `boolean`             | Whether to generate the PDF in landscape orientation.                                                                                                                         |
  | `scale`                                                      | `number`              | The scale multiplier of the resulting PDF.                                                                                                                                    |
</div>

## ScrapeLocation

Geographic location settings for the scrape request.

<div className="reference-table">
  | Field       | Type        | Description                                                                                                                                                                            |
  | ----------- | ----------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `country`   | `string`    | ISO 3166-1 alpha-2 country code (e.g., 'US', 'AU', 'DE', 'JP'). The server applies 'US' when this is absent. <span className="field-constraints">matches `^[A-Z]&#123;2&#125;$`</span> |
  | `languages` | `string`\[] | Preferred languages and locales for the request in order of priority.                                                                                                                  |
</div>

## RedactPIIOptions

Tuning options for PII redaction.

<div className="reference-table">
  | Field           | Type                                   | Description                                                                                                                                                        |
  | --------------- | -------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
  | `mode`          | `"accurate" \| "aggressive" \| "fast"` | Redaction strategy. The server applies 'accurate' when this is absent.                                                                                             |
  | `entities`      | `string`\[]                            | Restrict redaction to these entity buckets. If omitted, all supported entities are redacted. One of `PERSON`, `EMAIL`, `PHONE`, `LOCATION`, `FINANCIAL`, `SECRET`. |
  | `replace_style` | `"tag" \| "mask" \| "remove"`          | Replacement style. The server applies 'tag' when this is absent.                                                                                                   |
</div>

## BrowserProfile

Persistent browser storage across scrape and interact sessions.

<div className="reference-table">
  | Field                                                        | Type      | Description                                                                                                                                |
  | ------------------------------------------------------------ | --------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
  | `name` <span className="required" title="required">\*</span> | `string`  | A name for the profile. Sessions with the same name share storage. <span className="field-constraints">min length 1; max length 128</span> |
  | `saveChanges`                                                | `boolean` | When true, browser state is saved back to the profile on close. The server applies true when this is absent.                               |
</div>

## ThreatProtectionOverride

Per-request threat protection override. Enterprise feature.

<div className="reference-table">
  | Field                | Type                                                                                                    | Description                                                                                                                                |
  | -------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
  | `mode`               | [ThreatProtectionMode](/charter/charter/packs/firecrawl/account/objects#threatprotectionmode)                   | URL scanning mode for this request. If Threat Protection is enforced, mode may not be 'off'.                                               |
  | `riskScoreThreshold` | `integer`                                                                                               | Normalized risk score (0-100) at or above which a classifier verdict blocks the URL. <span className="field-constraints">≥ 0; ≤ 100</span> |
  | `blacklist`          | `string`\[]                                                                                             | Domains to always block, as plain domains or wildcard globs. <span className="field-constraints">max 1000 items</span>                     |
  | `whitelist`          | `string`\[]                                                                                             | Domains to always allow. Wins over every other rule. <span className="field-constraints">max 1000 items</span>                             |
  | `blockedTlds`        | `string`\[]                                                                                             | Top-level domains to block outright, lowercase without the leading dot. <span className="field-constraints">max 1000 items</span>          |
  | `failurePolicy`      | [ThreatProtectionFailurePolicy](/charter/charter/packs/firecrawl/account/objects#threatprotectionfailurepolicy) | What to do when the classifier cannot be reached.                                                                                          |
</div>

## AuditMetadata

User attribution included with SIEM logging events when SIEM is enabled.

<div className="reference-table">
  | Field                                                            | Type     | Description                                                                                          |
  | ---------------------------------------------------------------- | -------- | ---------------------------------------------------------------------------------------------------- |
  | `username` <span className="required" title="required">\*</span> | `string` | The username associated with the request. <span className="field-constraints">max length 1024</span> |
</div>

## ValuableSource

A search result source marked as valuable in feedback.

<div className="reference-table">
  | Field                                                       | Type     | Description                                                                              |
  | ----------------------------------------------------------- | -------- | ---------------------------------------------------------------------------------------- |
  | `url` <span className="required" title="required">\*</span> | `string` | URL of the valuable source.                                                              |
  | `reason`                                                    | `string` | Why this source was valuable. <span className="field-constraints">max length 1000</span> |
</div>

## MissingContent

Content the search results failed to cover.

<div className="reference-table">
  | Field                                                         | Type     | Description                                                                                                      |
  | ------------------------------------------------------------- | -------- | ---------------------------------------------------------------------------------------------------------------- |
  | `topic` <span className="required" title="required">\*</span> | `string` | Topic that was missing from the results. <span className="field-constraints">min length 1; max length 200</span> |
  | `description`                                                 | `string` | Additional detail about what was missing. <span className="field-constraints">max length 2000</span>             |
</div>
