Skip to main content
GET
/
workspaces
/
{workspaceId}
/
sync-logs
Get all sync logs
curl --request GET \
  --url https://api.qontext.ai/workspaces/{workspaceId}/sync-logs \
  --header 'X-API-Key: <api-key>'
import requests

url = "https://api.qontext.ai/workspaces/{workspaceId}/sync-logs"

headers = {"X-API-Key": "<api-key>"}

response = requests.get(url, headers=headers)

print(response.text)
const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};

fetch('https://api.qontext.ai/workspaces/{workspaceId}/sync-logs', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));
{
  "pagination": {
    "totalResults": 23,
    "returnedResults": 20,
    "limit": 20,
    "totalPages": 2,
    "nextCursor": "clyo0q4wo01p59fsecyxqsh38",
    "nextPage": "https://api.qontext.ai/workspaces/ws_14bf3e28-1af5-44b1-be36-10b37edccf78/knowledge-graphs/kg_123e4567-e89b-12d3-a456-426614174000/retrieval-logs?cursor=clyo0q4wo01p59fsecyxqsh38&limit=20",
    "totalRecords": 123
  },
  "data": [
    {
      "id": "sync_123e4567-e89b-12d3-a456-426614174000",
      "ingestionPipelineId": "pipe_123e4567-e89b-12d3-a456-426614174000",
      "knowledgeGraphId": "kg_123e4567-e89b-12d3-a456-426614174000",
      "workspaceId": "ws_123e4567-e89b-12d3-a456-426614174000",
      "type": "full_sync",
      "status": "completed",
      "startedAt": "2021-01-01T00:00:00.000Z",
      "completedAt": "2021-01-01T00:00:00.000Z",
      "errorMessage": "Failed to connect to data source",
      "userFacingErrorMessage": "This website is not supported and cannot be synced.",
      "temporalWorkflowId": "sync-sync_123e4567-e89b-12d3-a456-426614174000",
      "temporalRunId": "run_123e4567-e89b-12d3-a456-426614174000",
      "preparationMetadata": {
        "contacts": 1000,
        "deals": 500,
        "companies": 300
      },
      "totalRecordsToIngest": 1800,
      "recordsIngested": 450,
      "preparationCompletedAt": "2021-01-01T00:00:00.000Z",
      "minDate": "2021-01-01T00:00:00.000Z",
      "manualSyncData": {
        "manualSyncData": "manual_sync_data"
      },
      "correlationId": "4fd0b6c2a4d1e0f8a2b9c3d4e5f60718",
      "createdAt": "2021-01-01T00:00:00.000Z",
      "updatedAt": "2021-01-01T00:00:00.000Z"
    }
  ]
}
{
"message": [
"<error message>",
"<error message>"
],
"error": "Bad Request",
"statusCode": 400
}
{
"message": "<error message(s)>",
"error": "Unauthorized",
"statusCode": 401
}
{
"message": "<error message(s)>",
"error": "Forbidden",
"statusCode": 403
}
{
"error": "Internal Server Error",
"statusCode": 500
}

Authorizations

X-API-Key
string
header
required

API key for the Qontext API

Path Parameters

workspaceId
string
required

The unique identifier of the workspace the sync log belongs to.

Example:

"ws_123e4567-e89b-12d3-a456-426614174000"

Query Parameters

limit
number
default:20

How many results to return in this request

Required range: 5 <= x <= 100
cursor
string

Cursor returned by the previous paginated response

status
enum<string>[]

List of sync log statuses to filter by

Available options:
pending,
preparing,
data_fetching,
ingesting,
completed,
failed,
stopped,
skipped
Example:
["completed", "failed"]

Free-text search query applied to error message and type

Example:

"hubspot"

fromDate
string

Filter sync logs created on or after this date (ISO 8601 format)

Example:

"2025-01-01T00:00:00.000Z"

toDate
string

Filter sync logs created on or before this date (ISO 8601 format)

Example:

"2025-12-31T23:59:59.999Z"

pipelineIds
string[]

List of ingestion pipeline IDs to filter by. Use "manual" to include manual syncs (which have no pipeline).

Response

Sync logs successfully fetched

pagination
object
required
data
object[]
required