This is an old revision of the document!
Changes from API Version 1
As announced on zotero-dev, version 2 of the Zotero Server API brings many changes to enable API-based syncing. While read-only clients may continue to work properly, clients that write to the API are likely to need updating.
This page provides a brief summary of changes and may not be comprehensive. See the appropriate documentation sections for full details on all changes.
- New: API versioning
- New: Delta writes
- Saved search metadata is now available via the API. It is not currently possible to retrieve the results of saved searches via the API.
- Related items and relations are now available in the
relationsproperty of item JSON. Currently, only the RDF predicates used by Zotero itself are available.
- Object ETags have been replaced by library/object versions.
If-Matchhas been replaced by
If-Unmodified-Since-Versionand JSON version properties.
- Object writes no longer return Atom feeds with the newly created objects. Single-object writes return
204 No Content, while multi-object writes return
200 OKwith a JSON document indicating the status of each write.
X-Zotero-Write-Tokenhas changed to
- Child items can no longer be created by including
attachmentproperties when creating top-level items or by POSTing to
<userOrGroupPrefix>/items/<itemKey>/children. Instead, child items can be created or moved by including a
parentItemproperty in the item's JSON.
- New collection JSON objects can no longer be POSTed directly. Instead, collections must be within a top-level
collectionsobject, similar to the
itemsobject used for items.
parentproperty for collections has been changed to
- The collections an item belongs to can be read and modified via the item's
collectionsproperty. The previous POST and DELETE requests have been removed.