API URL
POST /api/v1/web-scraping/scrape
Headers
Code
Content-Type: application/jsonBody Parameters
Param
Type
Description
url
required
string
Public http/https URL to scrape crawl or map (SSRF-guarded)
formats
optional
array
Output formats: markdown html rawHtml links images screenshot. Default ["markdown"]
Example Request
Code
POST https://datpaq.com/api/v1/web-scraping/scrape?api_key=your-api-keySuccessful Response
Status
HTML
200 OKBody
Code
{"success":true,"url":"https://example.com/article","title":"Article Title","text":"Plain text content...","excerpt":"Summary...","byline":null,"siteName":"Example","length":1200,"content":"<article>...</article>","markdown":"# Article Title"n"nPlain text content...","scrapeMetadata":{"timingMs":3500,"cached":false},"correlationId":"req_abc123"}Field
Type
success
boolean
correlationId
string
url
string
title
string
text
string
excerpt
string
byline
string
siteName
string
length
number
content
string
markdown
string
html
string
rawHtml
string
links
array
images
array
screenshot
string
metadata
object
error
string
reason
string
message
string
retryAfter
number
id
string
status
string
total
number
completed
number
failed
number
expiresAt
string
data
array
errors
array
next
string
service
string
version
string
timestamp
string
Error Response
Example
Code
400 ValidationError - Joi validation failure or SSRF-blocked or invalid URL: Request rejected before navigation
401 AuthenticationError - Missing or invalid API key at gateway layer: Authentication required
404 NotFound - Unknown endpoint path or async job ID not found: Resource not found
422 ExtractionError - Page loaded but content not extractable or scrape failed after navigation: Extraction failed after navigation
429 RateLimitError - Rate limit exceeded or browser pool saturated (POOL_SATURATED): Retry after retryAfter seconds
500 InternalError - Unexpected failure (message in development only): Internal server error
504 GatewayTimeout - Route-level timeout exceeded (35s scrape 60s map): Operation timed outLast Updated: May 4, 2026