---
title: "Extract Website Data"
method: POST
path: "/url-scraper"
tags: ["Scrape"]
---

# Extract Website Data

`POST /url-scraper`

## Request

- Base URL: `https://api.anakin.io/v1`
- URL: `https://api.anakin.io/v1/url-scraper`
- Auth: API key in header `X-API-Key`

Submit a URL to scrape. Returns a job ID — poll GET /url-scraper/{jobId} (with a delay in between) to fetch the completed markdown/JSON.

## Request body

- ScrapeRequest
  - `url` string, uri, required: The full URL of the website to extract data from.
  - `country` string: Proxy country code, e.g. us, gb, de.
  - `useBrowser` boolean: Use a headless browser — best for JS-heavy sites.
  - `generateJson` boolean: AI-extract structured JSON from the page content.
  - `forceFresh` boolean: Bypass the cache and force a fresh extraction.
  - `sessionId` string: Reuse an existing authenticated browser session (see Browser Sessions) instead of an anonymous request.
  - `sessionName` string: Human-readable name of a saved browser session — alternative to sessionId.

## Response `202`

Job accepted

- ScrapeSubmitResponse
  - `jobId` string: The job ID — pass to Get Scrape Result to poll for completion.
  - `status` 'pending' | 'processing'

## Other responses

- `400`: Bad request — missing or malformed body
- `401`: Missing or invalid API key

---

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