Get Sync Changes
GET/api/v1/sync/changes
Retrieve a cursor-paginated row-state change feed for incremental sync. Results are scoped to the API key's branch and organization. Notes use the same public/private and caller-owned draft visibility rules as note search. This is not an append-only event ledger: it returns the current upsert or delete state for each eligible resource row. While following data.pagination.next_cursor, clients must keep updated_since and resources unchanged. Over a stable eligibility set, traversing the complete cursor chain does not skip eligible note or entity-record rows. Malformed cursors and cursors for resources outside the selected resource set return PUBLIC_INVALID_SYNC_CURSOR instead of restarting from the first page.
Request
Responses
- 200
- 400
- 401
- 403
- 429
- 500
Success
v1-compatible public API error envelope. Some legacy endpoints still return data, message, and responseType; clients should prefer error.code when this envelope is present and fall back to message.
Unauthorized Access
No Permission Access
Rate limit exceeded
Response Headers
Active public API plan applied to the request. Free and Kickstarter are blocked before rate buckets are consumed.
Rate-limit bucket used for the request. List-style POST endpoints are counted as reads; mutation endpoints are counted as writes.
Maximum number of requests allowed for the active bucket in the current one-second rate-limit window.
Maximum read requests allowed per second for the active plan. Pro is 100; Unlimited is 500.
Maximum write requests allowed per second for the active plan. Pro is 25; Unlimited is 125.
Number of requests remaining for the active bucket in the current one-second rate-limit window.
Unix timestamp, in seconds, when the current rate-limit window resets.
HTTP date when the current limit resets. Present on 429 responses.
Internal Server Error