0.0.1
OAS 3.0.3

Steel API

Steel (https://steel.dev) is an open-source browser API purpose-built for AI agents.

It offers endpoints for various browser actions and session management, enabling agents to navigate the web for information over long running browser sessions.

Key Capabilities:

  • Control fleets of browser sessions in the cloud via API or Python/Node SDKs
  • Easily extract page data as cleaned HTML, markdown, PDFs, or screenshots
  • Access data behind logins with persistent cookies and automatic sign-in
  • Render complex client-side content with JavaScript execution
  • Bypass anti-bot measures with rotating proxies, stealth configs, and CAPTCHA solving
  • Reduce token usage and costs by up to 80% with optimized page formats
  • Reuse session and cookie data across multiple runs
  • Debug with ease using live session viewers, replays, and embeddings

Target Audience:

  • AI engineers and developers working with online LLMs
  • Users with their own infrastructure looking to offload browser hosting operations
  • Users who need to scrape the web for information
  • QA teams who need to test web applications

Get Started:

  • Open-source: Available as a Docker container for easy integration and scaling
  • Cloud API: Fully hosted and managed, no setup required. Get an API key at https://steel.dev
  • SDK: Available in Python, JavaScript, and more

Documentation:

  • Check out the full documentation at https://docs.steel.dev
  • Explore the SDK documentation to get started with your project
  • Join our community on Discord for support and discussions

Steel production server

None
Client Libraries

Browser Tools

Scrape webpage content

Extracts content from a specified URL.

Body
application/json
url
string uri
required

URL of the webpage to scrape

format
array string[] enum

Desired format(s) for the scraped content. Default is html.

  • html
  • readability
  • cleaned_html
  • markdown
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

Responses
POST/v1/scrape

{
  "content": {
    "html": "…",
    "cleaned_html": "…",
    "markdown": "…",
    "readability": {
      "ANY_ADDITIONAL_PROPERTY": "anything"
    }
  },
  "metadata": {
    "title": "…",
    "ogImage": "…",
    "ogTitle": "…",
    "urlSource": "…",
    "description": "…",
    "ogDescription": "…",
    "statusCode": 1,
    "language": "…",
    "timestamp": "2025-01-15T17:02:41.470Z",
    "published_timestamp": "2025-01-15T17:02:41.470Z"
  },
  "links": [
    {
      "url": "…",
      "text": "…"
    }
  ],
  "screenshot": {
    "url": "…"
  },
  "pdf": {
    "url": "…"
  }
}

Models