Async Scraping

Submit Async Job

Submit a scrape job for background processing.

Returns immediately with a job_id. Poll GET /api/v1/async/jobs/{job_id} for the result, or set callback_url to receive a webhook when the job finishes.

post/api/v1/async/scrape

Request

  • Base URL: https://api.finedata.ai (the document declares no server; this is the origin it was published from)
  • URL: https://api.finedata.ai/api/v1/async/scrape
  • Auth: HTTP bearer

Headers

authorizationstring nullable
x-api-keystring nullable

Request body

urlstring required

Target URL to scrape

methodstring

HTTP method (GET, POST, PUT, DELETE)

headersobject nullable

Custom HTTP headers

bodystring nullable

Request body (for POST/PUT)

tls_profilestring nullable

TLS fingerprint profile: chrome145, chrome136, firefox147, safari26_0, smart, vip

max_retriesinteger nullable

Max retry attempts

timeoutinteger nullable

Timeout in seconds (max 300 for captcha)

use_antibotboolean

Browser-like TLS fingerprint (+2 tokens)

use_js_renderboolean

Render JavaScript with headless browser (+5 tokens)

use_residentialboolean

Residential proxy (+3 tokens)

use_ispboolean

ISP proxy (+2 tokens)

use_mobileboolean

Mobile carrier proxy (+4 tokens)

proxy_stickyboolean

Keep the same proxy exit IP across requests in this job. Works with residential and BYOP sticky profiles.

proxy_countrystring nullable

Request a proxy exit IP from a specific country (ISO-2 code, e.g. 'US', 'DE'). Applies to datacenter, residential, ISP and mobile proxies. Mutually exclusive with proxy_profile_id (BYOP).

proxy_profile_idinteger nullable

Use your own proxy list via a saved BYOP profile id. Mutually exclusive with use_residential/use_isp/use_mobile. Charges flat +1 token. Requires team_s plan or admin override.

stealth_antibotboolean

Stronger browser emulation for pages a plain request cannot load (+7 tokens)

stealth_antibot_headfulboolean

Full real browser with a visible display (+25 tokens)

stealth_newboolean

Experimental next-gen engine (+15 tokens)

stealth_premiumboolean

Premium stealth engine (+20 tokens)

stealth_premium_headfulboolean

Premium stealth headful mode (+30 tokens)

js_wait_forstring

Page load strategy: networkidle, load, domcontentloaded, or selector:.css

js_scrollboolean

Scroll to load lazy content

solve_captchaboolean

Auto-solve captchas: reCAPTCHA, hCaptcha, Turnstile (+10 tokens)

session_idstring nullable

Sticky session ID for same proxy IP across requests

session_ttlinteger nullable

Session lifetime in seconds (default 1800)

formatsstring[] nullable

Output formats to include in response. Options: 'markdown', 'rawHtml', 'text', 'links', 'screenshot'. If not specified, only 'body' (raw HTML) is returned for backward compatibility. Example: ['markdown', 'links']

only_main_contentboolean

Extract only the main content of the page (removes navigation, footer, sidebar, ads). Applies to 'markdown' and 'text' formats. Uses Mozilla Readability algorithm

extract_rulesobject nullable

CSS/XPath selectors for structured data extraction. Simple: {'title': 'h1', 'price': '.price'}. Advanced: {'links': {'selector': 'a.product', 'type': 'list', 'output': '@href'}}. Supported types: text (default), html, list. Output: text content or @attr

extract_schemaobject nullable

JSON Schema for AI-powered structured data extraction. The AI model analyzes page content and returns data matching your schema. Example: {'type': 'object', 'properties': {'products': {'type': 'array', 'items': {'type': 'object', 'properties': {'name': {'type': 'string'}, 'price': {'type': 'number'}}}}}} (+5 tokens)

extract_promptstring nullable

Natural language instruction for AI-powered data extraction. Alternative to extract_schema. Example: 'Extract all product names, prices, and ratings from this page' (+5 tokens)

ai_content_mode'full' | 'main' nullable

Content mode for AI extraction (extract_schema/extract_prompt). 'full' — AI sees full page content including sidebars, structured data blocks (best for product pages, real estate listings, marketplaces). 'main' — AI sees only main content extracted via Readability algorithm (best for articles, blog posts — fewer tokens, less noise). Default: 'full'

callback_urlstring nullable

Webhook URL to receive the result when job completes

callback_headersobject nullable

Custom headers sent with the webhook POST

Example request

{
  "callback_url": "https://your-server.com/webhook",
  "url": "https://example.com",
  "use_js_render": true
}

Response

Successful Response

job_idstring required

Unique job identifier (UUID)

statusstring required

Initial job status (always 'pending')

urlstring required

Target URL submitted

created_atstring required

ISO 8601 creation timestamp

estimated_completionstring nullable

Estimated completion time (ISO 8601)

Example response

{
  "created_at": "2026-02-07T12:00:00Z",
  "estimated_completion": "2026-02-07T12:00:30Z",
  "job_id": "550e8400-e29b-41d4-a716-446655440000",
  "status": "pending",
  "url": "https://example.com"
}

Changes

No recorded changes to this operation across all 1 revision of this API.