Skip to content

Get scrape result metadata + presigned blob URL

GET
/api/v1/jobs/{id}/result
curl --request GET \
--url https://dashboard.justcrawl.io/api/v1/jobs/example/result \
--header 'Authorization: Bearer <token>'

Returns a JSON envelope describing the scrape result. The actual HTML body is NOT inlined — fetch it from resultUrl (a presigned S3 URL, typically 15-minute TTL) when present, or resolve blobKey through your own storage client when the org uses custom S3. The endpoint never streams the body itself.

Returns 410 Gone when the result existed but has been cleaned up under the org’s document-retention policy; the expiredAt timestamp tells you when.

id
required
string

Job ID

Result metadata. Exactly one of resultUrl (platform storage) or blobKey (custom S3) is present.

Media type application/json
object
resultUrl

Presigned S3 URL for the HTML body (platform storage). Mutually exclusive with blobKey.

string format: uri
blobKey

Raw S3 object key (custom storage). Mutually exclusive with resultUrl.

string
providerId
required
string
statusCode
required

HTTP status code the provider returned for the scrape.

integer
bodySize
required

Size of the stored body in bytes.

integer
latencyMs
required
integer
Example generated
{
"resultUrl": "https://example.com",
"blobKey": "example",
"providerId": "example",
"statusCode": 1,
"bodySize": 1,
"latencyMs": 1
}

Missing or invalid authentication token

Media type application/json
object
error
string
Example
{
"error": "Missing or invalid authentication token"
}

Insufficient permissions for this operation

Media type application/json
object
error
string
Example
{
"error": "No organization. Complete onboarding first."
}

Job not found, or job exists but has no result blob yet (still running, or it failed before producing a body).

Result existed but has been cleaned up under the org’s document-retention policy. Body includes expiredAt and a human-readable message.

Unexpected server error. Logs and PostHog $exception capture

Media type application/json
object
error
string
Example
{
"error": "Something went wrong"
}