Does Zotero offer a direct connection to their database?

I'm trying to find a better way to connect to our institution's records we have in Zotero. We'd like to have all our research centers start using it to track publications, but syncing them 100 at a time is not feasible when one center has more than 6600 entries. I would love to be able to have a read only connection to our group library using sql/mysql or whatever the online database is built on.
  • RESTful APIs with a limit on items retrieved at once are industry standard for accessing database content. The Zotero API has methods implemented that make retrieving all items reasonably easy, or you can use a library like pyzotero that has those methods built in (Zotero's own sync uses the same API), but it's neither desirable nor feasible to give anyone read access to the online database.
  • RESTful APIs are one thing, I'm talking about being able to directly connect to my values in the main database like through MySQL Workbench. For example, if you have an account on Wordpress.com, you can access your database content directly through Workbench. We want to be able to copy all values for use in our centralized repository, and use Zotero as the input device. The Institute I work at has potentially tens of thousands of publications to track by our researchers, so I need something better than pulling them 100 at a time as limited by the REST API.
  • I understood the question but the answer is no, that doesn't exist and is not going to happen (WordPress is an entirely different case where each site has its own database).

    Again, though, Zotero runs sync and online display for hundreds of thousands of users with many million items through the API, so the idea that tens of thousands of items somehow wouldn't be feasible with an API is just confusion about how to work with the API. E.g. with pyzotero, a single line of code will return all items in a library (results = zot.everything(zot.top()).). The same thing can obviously be done in languages other than python.
  • Could you clarify a bit more the details of your use case?

    Could you accomplish your goal by exporting your Zotero data in a CSV file and then importing that into your research center(s) computer(s)? Why or why not?
  • Updating via the API should work fine. There is a limit of 100 items per transaction, but transactions can be paged. You may need to do some coding for it, but the documentation is solid and the service is very stable. (The item limit isn't there out of stinginess, but to assure that if a transaction fails, the amount of data that must be recouped in a retry is reasonable.)
Sign In or Register to comment.