GET/v2/scrape/{id}
An API key is optional; without one the caller is anonymous.
Parameters
idpath, stringrequiredThe scrape ID.
Responses
OK
Type ScrapeStatusResponse
completedAtstring (date-time)When the URL got its result.
createdAtstring (date-time)requireddataDocumentThe scrape's document, once completedAt is set.
3 fields inside data
htmlstringThe page HTML, converted to UTF-8; only its main content with responseOptions.onlyMainContent.
markdownstringThe page as Markdown.
metadataDocumentMetadatarequired6 fields inside metadata
contentTypestringThe response content type.
errorstringWhy the scrape failed.
errorCodestringA machine-readable error code.
sourceURLstringrequiredThe requested URL.
statusCodeinteger (int64)The HTTP status code.
urlstringrequiredThe final URL after redirects.
expiresAtstring (date-time)requiredWhen the result expires.
statusstringrequiredcompleted once the URL got its result.
One of
scraping,completedsuccessbooleanrequiredAlways true.
One of
true
UNAUTHORIZED: The API key is invalid or revoked; API_KEY_REQUIRED: This endpoint needs an API key; INVALID_ACCESS_TOKEN: The OAuth access token is unknown, expired or revoked, or was sent to an endpoint other than /mcp, the only one it works on.
Type UnauthorizedResponse
codestringrequiredA machine-readable error code.
One of
UNAUTHORIZED,API_KEY_REQUIRED,INVALID_ACCESS_TOKENdetailsarray of ValidationErrorDetail or nullThe invalid fields.
3 fields inside details
locationstringWhere the error occurred, e.g. body.urls[3].
messagestringWhat went wrong.
valueanyThe rejected value.
errorstringrequiredA human-readable message.
successbooleanrequiredAlways false.
One of
false
SCRAPE_NOT_FOUND: The scrape does not exist, has expired or is another caller's; BATCH_SCRAPE_NOT_FOUND: The batch scrape does not exist, has expired or is another caller's, or the download token does not match.
Type NotFoundResponse
codestringrequiredA machine-readable error code.
One of
SCRAPE_NOT_FOUND,BATCH_SCRAPE_NOT_FOUNDdetailsarray of ValidationErrorDetail or nullThe invalid fields.
3 fields inside details
locationstringWhere the error occurred, e.g. body.urls[3].
messagestringWhat went wrong.
valueanyThe rejected value.
errorstringrequiredA human-readable message.
successbooleanrequiredAlways false.
One of
false
VALIDATION_FAILED: One or more fields are invalid; TOO_MANY_URLS: The request has more URLs than your rate limit allows; IDEMPOTENCY_CONFLICT: The Idempotency-Key was already used with a different request.
Type ValidationFailedResponse
codestringrequiredA machine-readable error code.
One of
VALIDATION_FAILED,TOO_MANY_URLS,IDEMPOTENCY_CONFLICTdetailsarray of ValidationErrorDetail or nullThe invalid fields.
3 fields inside details
locationstringWhere the error occurred, e.g. body.urls[3].
messagestringWhat went wrong.
valueanyThe rejected value.
errorstringrequiredA human-readable message.
successbooleanrequiredAlways false.
One of
false
RATE_LIMITED: Rate limit exceeded, retry after Retry-After seconds.
Headers
Retry-AfterintegerSeconds to wait before retrying.
minimum 1
Type TooManyRequestsResponse
codestringrequiredA machine-readable error code.
One of
RATE_LIMITEDdetailsarray of ValidationErrorDetail or nullThe invalid fields.
3 fields inside details
locationstringWhere the error occurred, e.g. body.urls[3].
messagestringWhat went wrong.
valueanyThe rejected value.
errorstringrequiredA human-readable message.
successbooleanrequiredAlways false.
One of
false
INTERNAL_ERROR: Something went wrong on our side, try again.
Type InternalErrorResponse
codestringrequiredA machine-readable error code.
One of
INTERNAL_ERRORdetailsarray of ValidationErrorDetail or nullThe invalid fields.
3 fields inside details
locationstringWhere the error occurred, e.g. body.urls[3].
messagestringWhat went wrong.
valueanyThe rejected value.
errorstringrequiredA human-readable message.
successbooleanrequiredAlways false.
One of
false