Skip to content

List Batch Jobs

client.beta.batch.list(BatchListParams { directory_id, job_type, limit, 4 more } query?, RequestOptionsoptions?): PaginatedBatchItems<BatchListResponse { id, job_type, project_id, 14 more } >
GET/api/v1/beta/batch-processing

List batch processing jobs with optional filtering.

Filter by directory_id, job_type, or status. Results are paginated with configurable limit and offset.

ParametersExpand Collapse
query: BatchListParams { directory_id, job_type, limit, 4 more }
directory_id?: string | null

Filter by directory ID

job_type?: "classify" | "extract" | "parse" | null

Filter by job type (PARSE, EXTRACT, CLASSIFY)

One of the following:
"classify"
"extract"
"parse"
limit?: number

Maximum number of jobs to return

maximum1000
minimum1
offset?: number

Number of jobs to skip for pagination

minimum0
organization_id?: string | null
project_id?: string | null
status?: "cancelled" | "completed" | "dispatched" | 3 more | null

Filter by job status (PENDING, RUNNING, COMPLETED, FAILED, CANCELLED)

One of the following:
"cancelled"
"completed"
"dispatched"
"failed"
"pending"
"running"
ReturnsExpand Collapse
BatchListResponse { id, job_type, project_id, 14 more }

Response schema for a batch processing job.

id: string

Unique identifier for the batch job

job_type: "classify" | "extract" | "parse"

Type of processing operation (parse or classify)

One of the following:
"classify"
"extract"
"parse"
project_id: string

Project this job belongs to

status: "cancelled" | "completed" | "dispatched" | 3 more

Current job status

One of the following:
"cancelled"
"completed"
"dispatched"
"failed"
"pending"
"running"
total_items: number

Total number of items in the job

completed_at?: string | null

Timestamp when job completed

formatdate-time
created_at?: string | null

Creation datetime

formatdate-time
directory_id?: string | null

Directory being processed

effective_at?: string
error_message?: string | null

Error message for the latest job attempt, if any.

failed_items?: number

Number of items that failed processing

job_record_id?: string | null

The job record ID associated with this status, if any.

processed_items?: number

Number of items processed so far

skipped_items?: number

Number of items skipped (already processed or size limit)

started_at?: string | null

Timestamp when job processing started

formatdate-time
updated_at?: string | null

Update datetime

formatdate-time
workflow_id?: string | null

Async job tracking ID

List Batch Jobs

import LlamaCloud from '@llamaindex/llama-cloud';

const client = new LlamaCloud({
  apiKey: process.env['LLAMA_CLOUD_API_KEY'], // This is the default and can be omitted
});

// Automatically fetches more pages as needed.
for await (const batchListResponse of client.beta.batch.list()) {
  console.log(batchListResponse.id);
}
{
  "items": [
    {
      "id": "bjb-aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
      "job_type": "classify",
      "project_id": "proj-aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
      "status": "cancelled",
      "total_items": 0,
      "completed_at": "2019-12-27T18:11:19.117Z",
      "created_at": "2019-12-27T18:11:19.117Z",
      "directory_id": "dir-aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
      "effective_at": "2019-12-27T18:11:19.117Z",
      "error_message": "error_message",
      "failed_items": 0,
      "job_record_id": "job_record_id",
      "processed_items": 0,
      "skipped_items": 0,
      "started_at": "2019-12-27T18:11:19.117Z",
      "updated_at": "2019-12-27T18:11:19.117Z",
      "workflow_id": "workflow_id"
    }
  ],
  "next_page_token": "next_page_token",
  "total_size": 0
}
Returns Examples
{
  "items": [
    {
      "id": "bjb-aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
      "job_type": "classify",
      "project_id": "proj-aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
      "status": "cancelled",
      "total_items": 0,
      "completed_at": "2019-12-27T18:11:19.117Z",
      "created_at": "2019-12-27T18:11:19.117Z",
      "directory_id": "dir-aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
      "effective_at": "2019-12-27T18:11:19.117Z",
      "error_message": "error_message",
      "failed_items": 0,
      "job_record_id": "job_record_id",
      "processed_items": 0,
      "skipped_items": 0,
      "started_at": "2019-12-27T18:11:19.117Z",
      "updated_at": "2019-12-27T18:11:19.117Z",
      "workflow_id": "workflow_id"
    }
  ],
  "next_page_token": "next_page_token",
  "total_size": 0
}
Note for AI agents: this documentation is built for programmatic access. - Overview of all docs: https://developers.llamaindex.ai/llms.txt - Any page is available as raw Markdown by appending index.md to its URL — e.g. https://developers.llamaindex.ai/llamaparse/parse/getting_started/index.md - Agent-friendly REST search APIs live under https://developers.llamaindex.ai/api/ — search (BM25 full-text), grep (regex), read (fetch a page), and list (browse the doc tree). See https://developers.llamaindex.ai/llms.txt for parameters. - A hosted documentation MCP server is available at https://developers.llamaindex.ai/mcp. If you support MCP, you can ask the user to install it for browsing these docs directly (an alternative to the REST API). Setup: https://developers.llamaindex.ai/for-agents/mcp/ - Other LlamaIndex tooling for agents — the LlamaParse Platform MCP server, agent skills and plugins, and the n8n node — is mapped at https://developers.llamaindex.ai/for-agents/