> ## Documentation Index
> Fetch the complete documentation index at: https://docs.bedrock.cv/llms.txt
> Use this file to discover all available pages before exploring further.

# Overview

> How to work with asynchronous Vision API jobs.

All Vision API operations run asynchronously. When you start an operation, you receive a job ID. [Poll the job](/vision-api/async-jobs/polling) or subscribe to [webhooks](/vision-api/webhooks) for results.

## What are Jobs?

Many operations in Bedrock take time to complete—processing a large drawing PDF, comparing hundreds of sheets, or running AI analysis. These operations create Jobs that you can monitor.

## Job Lifecycle

```
Job Created (Queued)
  │
  ├─→ Started (processing)
  │
  ├─→ Completed (success)
  │     └─→ Results available
  │
  └─→ Failed (error)
        └─→ Error details in response
```

## Job Object

| Field | Type | Description |
| - | - | - |
| `job_id` | string | Unique identifier (e.g., `job_01JABCD123`) |
| `organization_id` | string | Parent Organization |
| `project_id` | string | Parent Project |
| `type` | string | Job type (e.g., `overlay.change.detect`). See [Job Types](/vision-api/async-jobs/types). |
| `status` | string | Current status |
| `target` | object | `{ type, id }` of the resource being processed |
| `parent_id` | string | Parent job ID (for child jobs) |
| `results` | object | Job output data (when completed) |
| `error` | object | Error details (when failed) |
| `events` | array | Status change history |
| `created_at` | datetime | Creation timestamp |
| `completed_at` | datetime | Completion timestamp (when completed) |

## Job Statuses

| Status | Description |
| - | - |
| `Queued` | Job is waiting to be processed |
| `Started` | Job is currently running |
| `Completed` | Job finished successfully |
| `Failed` | Job encountered an error |
| `Canceled` | Job was canceled |

## Job Hierarchy

Some jobs create child jobs for parallel processing:

```
drawing.preprocess (parent)
  ├─→ sheet.preprocess (child 1)
  ├─→ sheet.preprocess (child 2)
  └─→ sheet.preprocess (child 3)
```

The parent job completes when all child jobs finish.

<Note>
  Jobs are created automatically by other operations (uploading files, comparing drawings, etc.). You cannot create jobs directly.
</Note>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.