Description
I'm building a mobile app that allows people to scan ISBNs and get some info on the book that they've scanned. However, I'm not sure I can always get the description, particularly when the scanned ISBN is for an edition that "inherits" the description from the original work.
Evidence
I have ISBN: 9780091953638
For that, I can get data via:
However, none of the above see to return the "parent" OLID, or some way to get to https://openlibrary.org/works/OL17507444W.json, which is the data for the "parent object".
Admitedly, I can get the "works" array if I use jscmd=details but according to the docs, it's unrecommended/deprecated, and I'm not comfortable with using it in the app in that case.
Expectation
I expected more control over the available fields to be retrieved through the Books API. At the very least, the description field should always be available when jscmd=data, if it exists on either the specific edition or the parent work.
Proposal & Constraints
Adding the description field as described shouldn't break any existing integrations of the API.
For the long run, some control over the granularity of the returned data would be nice. I'd imagine something like:
https://openlibrary.org/api/books
?bibkeys=ISBN:9780091953638
&fields=author,cover,description,... // This can be an enum field documented in the API docs
&format=json
Description
I'm building a mobile app that allows people to scan ISBNs and get some info on the book that they've scanned. However, I'm not sure I can always get the description, particularly when the scanned ISBN is for an edition that "inherits" the description from the original work.
Evidence
I have ISBN: 9780091953638
For that, I can get data via:
jscmd=data.jsonto the normal book URLHowever, none of the above see to return the "parent" OLID, or some way to get to https://openlibrary.org/works/OL17507444W.json, which is the data for the "parent object".
Admitedly, I can get the "works" array if I use
jscmd=detailsbut according to the docs, it's unrecommended/deprecated, and I'm not comfortable with using it in the app in that case.Expectation
I expected more control over the available fields to be retrieved through the Books API. At the very least, the description field should always be available when
jscmd=data, if it exists on either the specific edition or the parent work.Proposal & Constraints
Adding the description field as described shouldn't break any existing integrations of the API.
For the long run, some control over the granularity of the returned data would be nice. I'd imagine something like: