---
title: "Scrape webpage content"
method: POST
path: "/v1/scrape"
tags: ["Browser Tools"]
---

# Scrape webpage content

`POST /v1/scrape`

Extracts content from a specified URL.

## Request body

- ScrapeRequest
  - `url` string, required — URL of the webpage to scrape
  - `format` string[] — Desired format(s) for the scraped content. Default is `html`.
  - `screenshot` boolean — Include a screenshot in the response
  - `pdf` boolean — Include a PDF in the response
  - `delay` number — Delay before scraping (in milliseconds)
  - `useProxy` boolean — Use a Steel-provided residential proxy for the scrape
  - `region` string — The desired region for the action to be performed in

## Response `200`

Default Response

- ScrapeResponse — Response from a successful scrape request
  - `content` object, required
    - `html` string — Raw HTML content of the webpage
    - `cleaned_html` string — Cleaned HTML content of the webpage
    - `markdown` string — Webpage content converted to Markdown
    - `readability` object — Webpage content in Readability format
  - `metadata` object, required
    - `title` string — Title of the webpage
    - `language` string — Detected language of the webpage
    - `urlSource` string — Source URL of the scraped page
    - `timestamp` string, date-time — Timestamp when the scrape was performed
    - `description` string — Description of the webpage
    - `keywords` string — Keywords associated with the webpage
    - `author` string — Author of the webpage content
    - `ogTitle` string — Open Graph title
    - `ogDescription` string — Open Graph description
    - `ogImage` string — Open Graph image URL
    - `ogUrl` string — Open Graph URL
    - `ogSiteName` string — Open Graph site name
    - `articleAuthor` string — Author of the article content
    - `publishedTime` string — Publication time of the content
    - `modifiedTime` string — Last modification time of the content
    - `canonical` string — Canonical URL of the webpage
    - `favicon` string — Favicon URL of the website
    - `jsonLd` unknown
    - `statusCode` integer, required — HTTP status code of the response
  - `links` object[], required
    - `url` string, required — URL of the link
    - `text` string, required — Text content of the link
  - `screenshot` object
    - `url` string, required — URL of the screenshot image
  - `pdf` object
    - `url` string, required — URL of the generated PDF

## Other responses

- `503` — Default Response

## Changes

- **2025-10-07** `9f3355d65c6c` — 7 breaking
  - removed the enum value `bom` of the request property `region`
  - removed the enum value `fra` of the request property `region`
  - removed the enum value `hkg` of the request property `region`
  - removed the enum value `iad` of the request property `region`
  - …3 more
- **2025-08-21** `094cfe5a2443` — 1 warning, 11 info
  - removed the optional property `metadata/published_timestamp` from the response with the `200` status
  - the `url` request property format was generalized from `uri` to no format
  - added the optional property `metadata/articleAuthor` to the response with the `200` status
  - added the optional property `metadata/author` to the response with the `200` status
  - …8 more
- **2025-08-11** `15ffd3fc04f3` — 3 info
  - added the new optional request property `region`
  - added the non-success response with the status `503`
  - removed the non-success response with the status `500`

[Change history](https://skmtc.dev/steel-dev/apis/steel-api/changes/v1/scrape/post.md)

---

[API](https://skmtc.dev/steel-dev/apis/steel-api.md) · [All operations](https://skmtc.dev/steel-dev/apis/steel-api/llms.txt) · [OpenAPI document](https://skmtc.dev/steel-dev/apis/steel-api/revisions/44bb43c1df50?raw)
