Offline sync
A per-collection change feed lets a client cache pull deltas incrementally — including deletions — so it can sync while offline and catch up on reconnect.
curl
# first sync: from cursor 0
curl "https://base.finiteskills.com/v1/databases/main/collections/notes/sync?cursor=0" -H "X-Appwrite-Project: <YOUR_PROJECT_ID>"
# later: pass the cursor from the previous response
curl "https://base.finiteskills.com/v1/databases/main/collections/notes/sync?cursor=1234" -H "X-Appwrite-Project: <YOUR_PROJECT_ID>"
The response is { cursor, hasMore, total, changes: [...] }. Each change has a
kind (create/update/delete), the $id, a
monotonic cursor, and — for non-deletes — the document. Store the returned
cursor and pass it next time; keep calling while hasMore is true. Requires
collection-level read access.