Changes from API Version 1
As announced on zotero-dev, version 2 of the Zotero Web 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
relations
property of item JSON. Currently, only the RDF predicates used by Zotero itself are available. - Object ETags have been replaced by library/object versions.
If-Match
has been replaced byIf-Unmodified-Since-Version
and 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 return200 OK
with a JSON document indicating the status of each write. X-Zotero-Write-Token
has changed toZotero-Write-Token
.- Child items can no longer be created by including
note
orattachment
properties when creating top-level items or by POSTing to<userOrGroupPrefix>/items/<itemKey>/children
. Instead, child items can be created or moved by including aparentItem
property in the item's JSON. - New collection JSON objects can no longer be POSTed directly. Instead, collections must be within a top-level
collections
object, similar to theitems
object used for items. - The
parent
property for collections has been changed toparentCollection
. - The collections an item belongs to can be read and modified via the item's
collections
property. The previous POST and DELETE requests have been removed.