Active account
POST /v1/sync
Re-read every watch with no cache and return only new diffs. The first successful read of a watch is a baseline, not an event.
Auth. Active account. Body {}. Reads every watch on the account with no cache and returns only new diffs.
curl -sS -X POST "$BASE/v1/sync" \
-H "X-API-Key: $UW_KEY" -H 'Content-Type: application/json' \
-d '{}'
{
"synced": 2,
"events": [{
"subject": "16977660098955",
"label": "suction Catheter",
"summary": "Market status: On the market → No longer on the market",
"changes": [{
"field": "Market status",
"old": "On the market",
"new": "No longer on the market"
}]
}],
"error": null
}
An empty events array means the baseline held. A per-watch read failure stays on that watch as last_error and does not fail the whole call. 401 if signed out. 402 if the period has ended. A new value that is empty is not a change. A timeout is not “certificate removed”.

UdiWatch