---
title: "List Sync Jobs"
method: GET
path: "/source-connections/{source_connection_id}/jobs"
tags: ["source-connections"]
---

# List Sync Jobs

`GET /source-connections/{source_connection_id}/jobs`

Retrieve the sync job history for a source connection.

Returns a list of sync jobs ordered by creation time (newest first). Each job
includes status, timing information, and entity counts.

Job statuses:
- **PENDING**: Job is queued, waiting for the worker to pick it up
- **RUNNING**: Sync is actively pulling and processing data
- **COMPLETED**: Sync finished successfully
- **FAILED**: Sync encountered an unrecoverable error
- **CANCELLING**: Cancellation has been requested. The worker is
  gracefully stopping the pipeline and cleaning up destination data.
- **CANCELLED**: Sync was cancelled. The worker has fully stopped
  and destination data cleanup has been scheduled.

## Path parameters

- `source_connection_id` string, uuid, required — Unique identifier of the source connection (UUID)

## Query parameters

- `limit` integer — Maximum number of jobs to return (1-1000)

## Response `200`

List of sync jobs

- SourceConnectionJob[]
  - `id` string, uuid, required — Unique identifier of the sync job
  - `source_connection_id` string, uuid, required — ID of the source connection this job belongs to
  - `status` 'created' | 'pending' | 'running' | 'completed' | 'failed' | 'cancelling' | 'cancelled', required — Sync job status enum.
  - `started_at` string, date-time, nullable — When the job started execution (ISO 8601)
  - `completed_at` string, date-time, nullable — When the job finished (ISO 8601). Null if still running.
  - `duration_seconds` number, nullable — Total execution time in seconds. Null if still running.
  - `entities_inserted` integer — Number of new entities created during this sync
  - `entities_updated` integer — Number of existing entities updated during this sync
  - `entities_deleted` integer — Number of entities removed during this sync
  - `entities_failed` integer — Number of entities that failed to process
  - `error` string, nullable — Error message if the job failed
  - `error_details` object, nullable — Additional error context for debugging

## Other responses

- `404` — Source Connection Not Found
- `422` — Validation Error
- `429` — Rate Limit Exceeded

---

[API](https://skmtc.net/airweave-ai/apis/airweave.md) · [All operations](https://skmtc.net/airweave-ai/apis/airweave/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/airweave-ai/airweave/revisions/bf410c28c0c6/schema)
