Incremental sync delta
zotero_syncRetrieve changes since a given library version—changed keys and deletions—so you can sync only updated items.
Instructions
Return what changed in a library since a given version, for efficient incremental sync. Provide since (a library version; 0 = everything). Returns, per object type (items/collections/searches/tags), the map of keys→version that changed after since, plus the deletion log (keys removed since since). This is the version-based delta the Zotero sync algorithm uses: fetch the changed keys, then pull only those with zotero_get_item/zotero_search_items. Follows the library route: a running Zotero desktop app serves the delta for any library it holds, with no cloud API key, and otherwise the cloud Web API does; backend says which one answered. The whole delta comes from that one API, because the two number library versions independently. The desktop app serves item and collection versions but no tag versions and no deletion log; those are reported in unavailable, naming what is missing and why, and never as an empty result.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| since | No | Library version to diff from (default 0). | |
| types | No | Which object types to check (default all). | |
| library_id | No | Numeric id of the library to address, e.g. 5234875 for a group (zotero_groups lists the ids you can reach). Omit to use the configured default library; an id given without library_type is read as a group id. | |
| library_type | No | Which library to address: "user" (a personal library) or "group" (a shared group library). Omit to use the library this server is configured for. "group" on its own is refused: pass library_id with it. | |
| include_deleted | No | Include the deletion log (default true). |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| since | Yes | The version this delta was taken from, echoed back. | |
| backend | Yes | Which API answered: "local" (Zotero desktop app) or "cloud". The two number versions independently. | |
| changed | Yes | Per object type (items/collections/searches/tags), what changed after `since`. | |
| deleted | No | The deletion log per object type; absent when include_deleted was false or the backend has none. | |
| unavailable | No | What was asked for and could not be answered, instead of an empty result. |