Call Number, Location in Archive, and the API

Hi everyone. I've been working on importing the bibliographic entries for a website (http://www.stg.brown.edu/projects/Inscriptions/) into Zotero for the people who own the website, with the intention of using Zotero instead of the website's outdated database. Each entry was encoded using the MODS format, and included a unique identifier (something of the form IIP-123). I preserved that identifier by putting it into the "Call Number" and "Loc. in Archive" fields.

Now that I've got the entries in Zotero, and uploaded them to the website, I'm realizing that It's impossible to search by call number or location in archive, and impossible to search by them in an API read request, either. Ideally, we were hoping to change the website to query the Zotero API instead of keeping its own database of entries, and also use Zotero to upload new ones, but those identifiers are crucial to the workings of both those processes, and currently they're completely inaccessible.

Has anyone here worked on anything similar, or dealt with this problem before? Does anyone have any tips on how to deal with this?
  • We're planning to the ability to search by other fields via the API, but it's true that it's not possible at the moment. You can currently only search by title, creator, and year. (And the website just uses the API, so it wouldn't have functionality that the API itself doesn't has.)

    Additional search capability will likely happen in the not-too-distant future, but that won't help you if you need this functionality now. One alternative I could suggest would be to have the website load the full library as BibTeX via the API and then use a JS-based tool such as Citeline to query it client-side. (There are probably other JS tools as well. That's just the one I know off-hand.)

    If you do this, you should cache the retrieved BibTeX locally (using APC/APCu, say) and make conditional requests to v2 of the API for updates. (And as it says there, you might cache the response for a short period of time between the conditional requests as well.)
  • (Obviously if you're going client-side you can also export straight from Zotero, even using the Zotz extension that Citeline makes available. The main advantage to going via the API is that the person maintaining this wouldn't need to upload a new BibTeX file to the web server, etc.)
  • I'll add that going fully client-side is of course only a viable option if the data stays relatively small. Right now the full bibliography page on that site is about 120KB as HTML, and if served as BibTeX with gzip compression it would likely be 20KB or less, which would be fine.
  • Hello,
    I'd like to know if 8 years after, we can obtein call-number via Zotero API, using Zotpress?
    Thank you very much
  • @cmlocontes: You can retrieve all Zotero data via the API, but Zotpress questions need to be posted to the Zotpress forums. That's completely unrelated to this thread.

    (If you have questions about the Zotero API itself, please post to zotero-dev — we try to keep technical discussions there.)
  • Ok, thanks
    have a good day
Sign In or Register to comment.