## Get Batch Job Status

`BatchGetStatusResponse Beta.Batch.GetStatus(BatchGetStatusParamsparameters, CancellationTokencancellationToken = default)`

**get** `/api/v1/beta/batch-processing/{job_id}`

Get detailed status of a batch processing job.

Returns current progress percentage, file counts (total,
processed, failed, skipped), and timestamps.

### Parameters

- `BatchGetStatusParams parameters`

  - `required string jobID`

  - `string? organizationID`

  - `string? projectID`

### Returns

- `class BatchGetStatusResponse:`

  Detailed status response for a batch processing job.

  - `required Job Job`

    Response schema for a batch processing job.

    - `required string ID`

      Unique identifier for the batch job

    - `required JobType JobType`

      Type of processing operation (parse or classify)

      - `"classify"Classify`

      - `"extract"Extract`

      - `"parse"Parse`

    - `required string ProjectID`

      Project this job belongs to

    - `required Status Status`

      Current job status

      - `"cancelled"Cancelled`

      - `"completed"Completed`

      - `"dispatched"Dispatched`

      - `"failed"Failed`

      - `"pending"Pending`

      - `"running"Running`

    - `required Long TotalItems`

      Total number of items in the job

    - `DateTimeOffset? CompletedAt`

      Timestamp when job completed

    - `DateTimeOffset? CreatedAt`

      Creation datetime

    - `string? DirectoryID`

      Directory being processed

    - `DateTimeOffset EffectiveAt`

    - `string? ErrorMessage`

      Error message for the latest job attempt, if any.

    - `Long FailedItems`

      Number of items that failed processing

    - `string? JobRecordID`

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

    - `Long ProcessedItems`

      Number of items processed so far

    - `Long SkippedItems`

      Number of items skipped (already processed or size limit)

    - `DateTimeOffset? StartedAt`

      Timestamp when job processing started

    - `DateTimeOffset? UpdatedAt`

      Update datetime

    - `string? WorkflowID`

      Async job tracking ID

  - `required Double ProgressPercentage`

    Percentage of items processed (0-100)

### Example

```csharp
BatchGetStatusParams parameters = new() { JobID = "job_id" };

var response = await client.Beta.Batch.GetStatus(parameters);

Console.WriteLine(response);
```

#### Response

```json
{
  "job": {
    "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"
  },
  "progress_percentage": 0
}
```
