---
title: "Fetch"
method: POST
path: "/v1/fetch"
tags: ["Fetch"]
---

# Fetch

`POST /v1/fetch`

Fetch a URL and return an LLM-ready Markdown document. Use Include Options to request Appendix or State JSON when you need more evidence.

## Query parameters

- `include` string — Include Options for the response. Use a comma-separated list with `appendix` for Appendix and `statejson` for State JSON. Defaults to State JSON when omitted; use `include=` for Markdown only. For search requests without a URL include parameter, the request body include fields define the search corpus.

## Request body

- object — Request parameters for fetching and extracting content from a web page
  - `url` string, required — The URL to fetch content from (http or https only)
  - `include` object — Specifies which content formats to include in the response
    - `html` union
      - boolean — Set to true to include HTML
      - object — Options for customizing HTML content extraction
    - `markdown` union
      - boolean — Set to true to include markdown
      - object — Options for customizing markdown content extraction
    - `screenshot` union
      - boolean — Set to true to include a screenshot
      - object — Options for customizing screenshot capture behavior
        - `fullPage` boolean — Whether to capture the full page including content below the fold
    - `links` union
      - boolean — Set to true to include links
      - object — Options for customizing link extraction
        - `sameDomainOnly` boolean — Only include links from the same domain as the fetched URL
        - `includePatterns` string[] — Regex patterns - only include links matching at least one pattern
        - `excludePatterns` string[] — Regex patterns - exclude links matching any pattern
    - `meta` boolean — Set to true to include page metadata
    - `response` object — Configure response info options (headers inclusion)
      - `includeHeaders` boolean — Whether to include HTTP response headers
    - `json` boolean — Include pruned JSON in the response (opt-in)
    - `appendix` boolean — Set to true to include extracted links and sidebar content
  - `search` object — Options for Highlights. When present, Fetch returns search results only.
    - `query` string, required — Query to find relevant snippets from the included Highlights corpus
    - `maxResults` integer — Maximum number of search snippets to return (1-50)
    - `minScore` number — Minimum relevance score threshold (0-1). Defaults to 0.6; set 0 to disable filtering.
  - `browserConfig` object — Configuration options for browser behavior during the fetch
    - `scrollFullPage` boolean — Whether to scroll the entire page to capture lazy-loaded content

## Response `200`

LLM-ready Markdown document

## Other responses

- `400` — The request did not match the expected schema
- `401` — AuthFailed
- `403` — AccessBlocked
- `413` — PayloadTooLarge
- `429` — TooManyRequests
- `500` — InternalError
- `502` — FetchNavigationFailed
- `503` — ServiceUnavailable
- `504` — FetchCaptureTimeout
- `529` — FetchCapacityTimeout

---

[API](https://skmtc.dev/expand/apis/expand-ai-api.md) · [All operations](https://skmtc.dev/expand/apis/expand-ai-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/expand/expand-ai-api/revisions/dd6849b4a636/schema)
