---
title: "Get a scrape request's status and result"
method: GET
path: "/v1/scrape/{request_id}"
tags: ["scrape"]
---

# Get a scrape request's status and result

`GET /v1/scrape/{request_id}`

## Request

- Base URL: `https://barchin.net/api`
- URL: `https://barchin.net/api/v1/scrape/{request_id}`
- Auth: HTTP bearer

## Path parameters

- `request_id` string, uuid, required

## Query parameters

- `include_html` boolean: false: metadata only, no HTML
- `format` 'html' | 'markdown' | 'text': Result format. markdown/text are derived from the stored HTML at read time at no extra cost.
- `max_chars` integer, nullable: Truncate markdown/text to this many characters; sets truncated=true.

## Response `200`

Successful Response

- ScrapeRequestDetailOut
  - `request_id` string, uuid, required
  - `url` string, required
  - `js_enabled` boolean, required
  - `wait_for` string, nullable
  - `wait_ms` integer
  - `fresh` boolean
  - `accept_binary` boolean
  - `mode` 'auto' | 'manual', required
  - `country` string, nullable
  - `proxy_requested` 'datacenter' | 'residential' | 'unblocker', required: The public name of a tier; this is what the API accepts and returns.
  - `proxy_used` 'datacenter' | 'residential' | 'unblocker', required: The public name of a tier; this is what the API accepts and returns.
  - `status` 'queued' | 'processing' | 'done' | 'failed', required
  - `credits_held` integer, required
  - `credits_charged` integer, nullable, required
  - `credits_released` integer, required
  - `source` 'api' | 'dashboard', required
  - `api_key_id` string, uuid, nullable, required
  - `created_at` string, date-time, required
  - `started_at` string, date-time, nullable
  - `completed_at` string, date-time, nullable, required
  - `queued_ms` integer, nullable
  - `duration_ms` integer, nullable
  - `total_ms` integer, nullable
  - `error` ScrapeErrorOut
    - `code` string, required
    - `message` string, required
  - `warning` ScrapeWarningOut: Advisory only — the request was accepted and runs exactly as asked.
    - `code` string, required
    - `message` string, required
  - `refund` RefundOut
    - `credits` integer, required
    - `message` string, required
  - `result` ScrapeResultOut
    - `html` string, nullable: در صورت include_html=false یا format=markdown/text برگردانده نمی‌شود.
    - `final_url` string, nullable, required
    - `http_status` integer, nullable, required
    - `size_bytes` integer, required
    - `fetched_at` string, date-time, required
    - `expires_at` string, date-time, required
    - `markdown` string, nullable: Markdown derived from the stored HTML at read time (format=markdown). Null otherwise.
    - `text` string, nullable: Plain text derived from the stored HTML at read time (format=text). Null otherwise.
    - `truncated` boolean: True when max_chars cut the markdown/text content short.
    - `content_type` string, nullable: accept_binary only: the media type the server sent (e.g. application/pdf), as stored. Null for page requests.
    - `download_url` string, nullable: accept_binary only: absolute URL that streams the file back with its content type. Needs the same Authorization header as this endpoint; valid until expires_at.
    - `content_base64` string, nullable: accept_binary only: the file itself, base64-encoded (up to 15 MB). Omitted with include_html=false — use download_url instead.
  - `result_expired` boolean

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found
- `422`: Unprocessable Entity
- `429`: Too Many Requests

---

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