Outcrawl Scrape API
The Scrape API from Outcrawl — 1 operation(s) for scrape.
The Scrape API from Outcrawl — 1 operation(s) for scrape.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/outcrawl:outcrawl-scrape-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Outcrawl Scrape API
version: 1.0.0
summary: 'Web infrastructure for AI agents: scrape, crawl, search, agents and browsers on one credit balance.'
description: 'Outcrawl exposes one API surface at `https://api.outcrawl.ai/v1`, generated here from the 63-row capability registry that is the only truth about what it serves. Every request carries one bearer credential: an API key, or an OAuth access token from `outcrawl login` or an MCP client that signed in. There is exactly one base URL for every capability below.
This document is GENERATED by `scripts/generate-openapi.mjs` from `outcrawl-browser@76f967f`. It is never hand-edited; `node scripts/generate-openapi.mjs --check` fails the build on drift.'
contact:
name: Outcrawl
url: https://outcrawl.ai/contact
servers:
- url: https://api.outcrawl.ai
description: The only API surface.
security:
- ApiKeyAuth: []
tags:
- name: Scrape
paths:
/v1/scrape:
post:
tags:
- Scrape
summary: Fetch one URL and return clean content in the requested formats
description: Fetch one URL and return clean content in the requested formats. Use for a single known page; not for following links, and not for tasks that need decisions.
operationId: scrape
requestBody:
required: false
content:
application/json:
schema:
type: object
additionalProperties: true
description: See the matching capability page under docs/app/ and the SDK reference for the exact fields this route accepts.
responses:
'200':
description: Fetch one URL and return clean content in the requested formats. Use for a single known page; not for following links, and not for tasks that need decisions.
content:
application/json:
schema:
type: object
description: See the matching capability page under docs/app/ and the SDK reference for the exact shape.
'400':
description: The request failed. `code` is one of the 22 values in the Error schema below.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: The request failed. `code` is one of the 22 values in the Error schema below.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'402':
description: The request failed. `code` is one of the 22 values in the Error schema below.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'403':
description: The request failed. `code` is one of the 22 values in the Error schema below.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'404':
description: The request failed. `code` is one of the 22 values in the Error schema below.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'408':
description: The request failed. `code` is one of the 22 values in the Error schema below.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'422':
description: The request failed. `code` is one of the 22 values in the Error schema below.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'429':
description: The request failed. `code` is one of the 22 values in the Error schema below.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'500':
description: The request failed. `code` is one of the 22 values in the Error schema below.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'503':
description: The request failed. `code` is one of the 22 values in the Error schema below.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
security:
- ApiKeyAuth: []
components:
schemas:
Error:
type: object
required:
- code
- message
properties:
code:
type: string
description: Machine-readable, one of the 45 values in the closed union. Branch on this, never on `message`.
enum:
- unauthorized
- profile_in_use
- cap_exceeded
- exit_unavailable
- no_capacity
- tenant_scope
- bad_request
- not_found
- profile_not_found
- method_not_allowed
- capability_unavailable
- decode_unavailable
- quota_exceeded
- concurrency_limit
- plan_required
- page_unreachable
- document_unrepresentable
- page_lost
- extraction_failed
- answer_lost
- deadline_exceeded
- lab_arm_forbidden
- search_refused
- integration_check_failed
- integration_changed
- secret_intent_invalid
- secret_intent_spent
- cvc_not_storable
- run_secrets_limit
- run_secret_undeliverable
- replay_access_denied
- replay_control_denied
- replay_control_cross_site
- spend_cap_required
- card_number_in_task
- merchant_not_allowed
- spend_cap_exceeded
- per_purchase_exceeded
- no_open_purchase
- approval_denied
- approval_timed_out
- secret_in_answer
- provider_test_failed
- provider_cards_open
- internal
message:
type: string
description: Human-readable, fixed per code. Never parsed.
details:
type: object
additionalProperties: true
description: Optional structured context, shape depends on `code`.
securitySchemes:
ApiKeyAuth:
type: http
scheme: bearer
description: An Outcrawl API key, `ock_<keyId>.<secret>`, minted in the console at https://outcrawl.ai/console/keys, or an OAuth access token, `oat_...`, issued by https://outcrawl.ai/api/auth with scope `api` (the CLI gets one from `outcrawl login`, an MCP client when it signs in).