GET
/batch/distill/{id}
Get Batch Distill Job Status

Check the status and retrieve results of a batch distill job.

Response States:

  • processing: Job is currently running
  • completed: All URLs have been processed
  • failed: Job encountered a fatal error

Polling Best Practices:

  • Poll every 5-10 seconds for jobs with <10 URLs
  • Poll every 30-60 seconds for larger jobs
  • Use webhooks for better efficiency

Partial Results: You can retrieve completed results while the job is still processing. The results array will contain all URLs processed so far.

Authorization

YOUR_API_KEY
AuthorizationBearer <token>

Enter your API key from the Thunderbit Dashboard. The header format will be: Authorization: Bearer YOUR_API_KEY

In: header

Path Parameters

id*stringrequired

Batch task ID

Query Parameters

pageintegerdefault:0

Page number (0-based), default 0

Required range:0 <= x
pageSizeintegerdefault:20

Number of results per page (1-100), default 20

Required range:1 <= x <= 100

Response

application/json

Success response

successboolean
Example:
true
dataobject
Show child attributes
idstring
Example:batch_abc123
statusstring
Value in"PENDING" | "PROCESSING" | "COMPLETED" | "FAILED" | "CANCELLED" | "UNKNOWN"
Example:COMPLETED
totalinteger
Example:
3
completedinteger
Example:
2
failedinteger

Number of failed URLs

Example:
1
creditsUsedinteger
Example:
2
createdAtstring

Timestamp when the job was created

completedAtstring

Timestamp when the job completed (null if still processing)

resultsobject[]
Show child attributes
indexinteger

Zero-based index of this URL in the original batch

Example:
0
urlstring

The processed URL

statusstring

Per-URL processing status: PENDING, PROCESSING, SUCCEEDED, or FAILED

Value in"PENDING" | "PROCESSING" | "SUCCEEDED" | "FAILED"
Example:SUCCEEDED
markdownstring

Extracted markdown content (present when status is SUCCEEDED)

errorobject

Error detail (present when status is FAILED)

Show child attributes
codestring
Example:DISTILL_FAILED
messagestring
Example:Failed to fetch the page: Connection timeout

Pagination

  • pageSize defaults to 20 and caps at 100 per request. Set pageSize=100 to fetch the maximum per call.
  • For batches with more than 100 results, increment page (0-based) until results is empty: page=0, page=1, etc.
  • total in the response tells you how many results exist overall.

On this page