Get sync job
Retrieves a sync job with event progress and the state of its Kubernetes job
/v1/apps/{app_id}/syncs/{sync_id}- API
- Integrations
- OpenAPI
- integrations-api
- Updated
- Apr 26, 2026
integrations-api:GET:/v1/apps/{app_id}/syncs/{sync_id}
Retrieves a sync job with event progress and the state of its Kubernetes job
API ownership
- API family: Integrations API
- Best for: Integration records, setup verification, app and integration stats, and sync job operations.
- Do not use from: Direct catalog, media, order, identity, or storefront reads and writes.
- Guide route: /integrations
The OpenAPI contract defines the method, path, parameters, request body, and responses for this operation.
Operation
- Method:
GET - Path:
/v1/apps/\{app_id\}/syncs/\{sync_id\} - Summary: Get sync job
- Description: Retrieves a sync job with event progress and the state of its Kubernetes job
- OpenAPI contract: integrations-api
- Operation ID: Not documented in the OpenAPI contract.
Operation key uses API family, method, and path because this OpenAPI contract does not publish an operation ID.
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| app_id | path | Yes | string | App UUID |
| sync_id | path | Yes | string | Sync UUID |
Request body
Not documented in the OpenAPI contract.
Responses
| Status | Description | Content |
|---|---|---|
| 200 | Sync job | application/json |
| 400 | Invalid request | application/json (object) |
| 404 | Sync job not found | application/json (object) |
| 500 | Internal server error | application/json (object) |
200 - object
Schema
| Property | Type | Required | Details |
|---|---|---|---|
data | object | No | - |
success | boolean | No | - |
Sync Job
| Property | Type | Required | Details |
|---|---|---|---|
app_id | string | No | - |
channel_id | string | No | - |
completed_at | string | No | - |
created_at | string | No | - |
error_message | string | No | - |
failed_at | string | No | - |
id | string | No | - |
integration_id | string | No | - |
integration_type | enum("brink", "storyblok", "voyado", "webhooks", "google-retailer", "klaviyo", "klaviyo-catalog", "voyado-catalog", "nosto", "centra", "shopify", "mock-integration", "ai", "invio", "gamifiera", "sitoo") | No | - |
job | object | No | - |
k8s_job_name | string | No | - |
progress | object | No | - |
started_at | string | No | - |
status | string | No | - |
updated_at | string | No | - |
Job State
| Property | Type | Required | Details |
|---|---|---|---|
active | integer | No | - |
completion_time | string | No | - |
failed | integer | No | - |
message | string | No | - |
name | string | No | - |
namespace | string | No | - |
pod_name | string | No | - |
retries | integer | No | - |
start_time | string | No | - |
status | enum("pending", "running", "succeeded", "failed", "missing") | No | - |
succeeded | integer | No | - |
Sync Job Progress
| Property | Type | Required | Details |
|---|---|---|---|
completed | integer | No | - |
failed | integer | No | - |
pending | integer | No | - |
processing | integer | No | - |
toBeRetried | integer | No | - |
total | integer | No | - |
Generated example (synthetic):
{
"data": {
"app_id": "string",
"channel_id": "string",
"completed_at": "string",
"created_at": "string",
"error_message": "string",
"failed_at": "string",
"id": "string",
"integration_id": "string",
"integration_type": "brink",
"job": {
"active": 0,
"completion_time": "string",
"failed": 0,
"message": "string",
"name": "string",
"namespace": "string",
"pod_name": "string",
"retries": 0,
"start_time": "string",
"status": "pending",
"succeeded": 0
},
"k8s_job_name": "string",
"progress": {
"completed": 0,
"failed": 0,
"pending": 0,
"processing": 0,
"toBeRetried": 0,
"total": 0
},
"started_at": "string",
"status": "string",
"updated_at": "string"
},
"success": false
}400 - object
Error
| Property | Type | Required | Details |
|---|---|---|---|
details | string | No | - |
error | string | No | - |
success | boolean | No | - |
Generated example (synthetic):
{
"details": "string",
"error": "string",
"success": false
}404 - object
Error
| Property | Type | Required | Details |
|---|---|---|---|
details | string | No | - |
error | string | No | - |
success | boolean | No | - |
Generated example (synthetic):
{
"details": "string",
"error": "string",
"success": false
}500 - object
Error
| Property | Type | Required | Details |
|---|---|---|---|
details | string | No | - |
error | string | No | - |
success | boolean | No | - |
Generated example (synthetic):
{
"details": "string",
"error": "string",
"success": false
}Contract identity
Use these fields to confirm you are implementing the intended endpoint contract.
- API family: Integrations API
- Method:
GET - Path:
/v1/apps/\{app_id\}/syncs/\{sync_id\} - Operation ID: Not documented in the OpenAPI contract.
- OpenAPI tag: Sync
- OpenAPI summary: Get sync job