<@U04S8PLJWMT> We have Airbyte sync jobs running ...
# replication-ask-ai
a
@kapa.ai We have Airbyte sync jobs running every 15 miniutes: Source Postgres DB Destination: BigQuery Sync mode: Incremental Append How can we tell if the sync is a database full refesh or just small incremental / big incremental update. We get a full refresh initially, then on CDC Sync failures, Scheduled database updates and manual refreshes. Can I call an API for jobs to get this info ?
k
Identifying Full Refresh vs. Incremental Syncs via the Airbyte Jobs API Yes, you can use the Airbyte Jobs API to retrieve sync history and inspect job details. However, there are some important nuances to understand. What the Jobs API Provides You can call
GET /jobs
filtered by your
connectionId
to list all sync jobs:
Copy code
GET https://api.airbyte.com/v1/jobs?connectionId=<your-connection-id>&jobType=sync&limit=100
Each job response includes: •
jobId
– unique job identifier •
status
–
pending
,
running
,
incomplete
,
failed
,
succeeded
,
cancelled
•
jobType
–
sync
or
reset
•
startTime
,
lastUpdatedAt
,
duration
•
bytesSynced
and
rowsSynced
– the volume of data transferred [Jobs API] Distinguishing Full Refresh from Incremental The Jobs API does not expose a field that directly labels a job as "full refresh" or "incremental" — the sync mode is a connection-level configuration, not a per-job attribute. However, you can infer the nature of a sync by: 1.
rowsSynced
/
bytesSynced
: A significantly larger volume compared to typical incremental runs is a strong indicator of a full refresh or CDC-triggered resync. 2.
jobType = reset
: A
reset
job explicitly indicates a data reset (full resync). Filter for these specifically. 3. Comparing consecutive jobs: If
rowsSynced
for a job is close to your total table size, it's likely a full refresh. Why Full Refreshes Happen on CDC Connections For your Postgres → BigQuery CDC setup, full resyncs can be triggered automatically when Airbyte loses track of the replication slot position (e.g., the WAL/binlog position is no longer available). This causes Airbyte to fall back to a full snapshot. [CDC Docs] Example API Call
Copy code
curl -X GET "https://api.airbyte.com/v1/jobs?connectionId=<your-connection-uuid>&jobType=sync&limit=20" \
  -H "Authorization: Bearer <your-api-key>"
You can also filter by
status
or date ranges (
createdAtStart
,
createdAtEnd
) to narrow results. [Jobs API] Summary > Limitation: The API does not provide a direct
syncMode
field per job execution. For a definitive answer, you'd need to cross-reference
rowsSynced
against your known table sizes or monitor for
reset
job types. 👍 0 button 👎 0 button ℹ️ Tip: Mention @kapa.ai in the thread for follow-ups or DM the app for 1-to-1 help., with interactive elements