Python wrapper for the Zotero API
Pull request Compare This branch is 357 commits behind urschrei:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

from pyzotero import zotero
zot = zotero.Zotero(library_id, library_type, api_key)
items = = 5)
# we have now retrieved the last five top-level items in our library
# we can print each item's item type and ID
for item in items:
    print 'Item Type: %s | Key: %s' % (item['itemType'], item['key'])


Pyzotero is a Python wrapper for the Zotero read and write APIs. You'll require a library ID and access key, which can be set up here.

See Read The Docs for full documentation of available Pyzotero methods, code examples, and sample output.


  • using pip: pip install pyzotero
  • From a local clone, if you wish to install Pyzotero from a specific branch:


git clone git://
cd pyzotero
git checkout dev
pip install .

Installation using easy_install may be successful, but is neither tested nor officially supported – pip is the preferred method.


Run in the pyzotero directory, or, using Nose, nosetests from the top-level directory.


Pyzotero remains in development as of March 2012. The latest commits can be found on the dev branch. If you encounter an error, please open an issue.

Pull Requests

Pull requests are welcomed. Please ensure that you base your changes on the most recent commit in the dev branch, rebasing against it prior to opening the request if necessary.


Pyzotero is licensed under version 3 of the GNU General Public License. See license.txt for details.