---
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`

## Request

- Base URL: `https://api.airweave.ai`
- URL: `https://api.airweave.ai/source-connections/{source_connection_id}/jobs`
- Auth: API key in header `x-api-key`

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

## Changes

> 63 revisions in range; 2 not diffed.

- **2026-02-04** `9c8b36d8fcaa`: 2 info
  - added the non-success response with the status `404`
  - added the non-success response with the status `429`
- **2025-10-03** `d2bbfbd6e62f`: 1 warning
  - removed the optional property `items/entities_processed` from the response with the `200` status
- **2025-09-26** `97475c7322d4`: 1 warning
  - added the new `cancelling` enum value to the `items/status` response property for the response status `200`
- **2025-09-19** `097d993fdf58`: 1 breaking, 10 warning, 12 info
  - removed the required property `items/organization_id` from the response with the `200` status
  - removed the optional property `items/created_at` from the response with the `200` status
  - removed the optional property `items/created_by_email` from the response with the `200` status
  - removed the optional property `items/entities_encountered` from the response with the `200` status
  - …19 more
- **2025-09-01** `f0b57c4a56ce`: 1 info
  - api operation id `list_source_connection_jobs_source_connections__source_connection_id__jobs_get` removed and replaced with `list_jobs_source_connections__source_connection_id__jobs_get`

[Operation history](https://skmtc.dev/airweave-ai/apis/airweave/changes/source-connections/:source_connection_id/jobs/get.md)

---

[API](https://skmtc.dev/airweave-ai/apis/airweave.md) - [All operations](https://skmtc.dev/airweave-ai/apis/airweave/llms.txt) - [OpenAPI document](https://skmtc.dev/airweave-ai/apis/airweave/revisions/bf410c28c0c6?raw)
