|
API Description: Books Collection Specifics
The books collection provides information about books. You can get to a
set of books by keywords, subjects, ISBNs, etc.
The base URL for the books collection access is:
http://isbndb.com/api/books.xml
Arguments
Books collection supports the following indexes:
- isbn
- Search on ISBN, value is set the ISBN you are interested in. For
example:
/api/books.xml?access_key=Z&index1=isbn&value1=0061031321
The returned results subset consists of zero or at most one member for
this search type, ISBN records are unique in the database.
- title
- Keywords search on book title, long title, and latin-ized title for
unicode titles. Example:
/api/books.xml?access_key=Z&index1=title&value1=thief+of+time
The search follows the same rules and syntax as the
search on the website itself -- you can group words together using
double quotes, all non-ignored words must be present in the results.
- combined
- Search index that combines titles, authors, and publisher name. Example:
/api/books.xml?access_key=Z&index1=combined&value1=hacks+by+o'reilly
This helps to answer queries "Title by John Doe" that many seem to type
when searching for a book. Another possibility is searching for a book
with a generic title and qualifying it by author or publisher as in the
example above -- looking for O'Reilly's "hacks" serie.
- full
- Search index that includes titles, authors, publisher name, summary,
notes, awards information, etc -- practically every bit of textual
information ISBNdb.com has about books. Example:
/api/books.xml?access_key=Z&index1=full&value1=221b+baker+street
This helps to find books where some phrase or keywords are mentioned in
other textual fields. The search above, for instance, comes up with a
Rex Stout book that only mentions this address in its annotation.
- book_id
- Retrieving book data by ISBNdb.com's book ID. Returns at most one
match. Example:
/api/books.xml?access_key=Z&index1=book_id&value1=fer_de_lance
- person_id
- Retrieves a list of books by the given author, editor, etc. The
ID of the person needs to be first retrieved by searching on 'persons'
collection. Example:
/api/books.xml?access_key=Z&index1=person_id&value1=doyle_arthur_conan
- publisher_id
- Retrieves a list of books by the given publisher ID that can be
retrieved by searching on the 'publishers' collection or by a reference
from another book's data. Example:
/api/books.xml?access_key=Z&index1=publisher_id&value1=oreilly
- subject_id
- Retrieves a list of books on the given subject. The subject ID can
be looked up by searching in 'subjects' collection or by a reference
from another book. Example:
/api/books.xml?access_key=Z&index1=subject_id&value1=artificial_intelligence
- dewey_decimal
- Retrieves a list of books by the given Dewey Decimal Classification number.
Example:
/api/books.xml?access_key=Z&index1=dewey_decimal&value1=302.2/3
Or using DDC class:
/api/books.xml?access_key=Z&index1=dewey_decimal&value1=302
- lcc_number
- Retrieves a list of books by the given Library of Congress Classification number.
Example:
/api/books.xml?access_key=Z&index1=lcc_number&value1=PN4888
Results
In addition to common 'results' blocks the books collection adds some
that are book specific. The syntax remains the same -- comma separated
values in the 'results' argument.
- details
- Show more details about books -- LCC and Dewey decimal
classification, release data, etc. Example:
/api/books.xml?access_key=Z&results=details&index1=isbn&value1=0061031321
<?xml version="1.0" encoding="UTF-8"?>
<ISBNdb server_time="2005-07-29T02:41:22">
<BookList total_results="1" page_size="10" page_number="1" shown_results="1">
<BookData book_id="law_and_disorder" isbn="0210406240">
<Title>Law and disorder</Title>
<TitleLong>
Law and disorder: law enforcement in television network news
</TitleLong>
<AuthorsText>V. M. Mishra</AuthorsText>
<PublisherText publisher_id="asia_pub_house">
New York: Asia Pub. House, c1979.
</PublisherText>
<Details dewey_decimal="302.2/3"
dewey_decimal_normalized="302.23"
lcc_number="PN4888"
language="eng"
physical_description_text="x, 127 p. ; 22 cm."
edition_info=""
change_time="2004-10-19T23:52:56"
price_time="2005-07-29T02:06:41" />
</BookData>
</BookList>
</ISBNdb>
Attributes in the Details tag have the following meaning:
- dewey_decimal - Dewey Decimal Classification number for the book as
received from libraries.
- dewey_decimal_normalized - Normalized Dewey Decimal Classification
number. Unfortunately, in many cases the number as received has
inconsistent characters or formatting. This attribute represents our
best effort at normalizing it.
- lcc_number - Library of Congress Classification number.
- language - Language code for the book.
- physical_description_text - free form text describing physical
characteristics of the book.
- edition_info - free form text describing a particular edition of
some text represented by this book.
- change_time - timestamp of the last change to the book's data
- price_time - timestamp of the last prices update for the book. You
can use 'prices' results code to retrieve actual price records.
- texts
- Show textual blocks for the book -- notes, summary, awards
information, related URLs, etc.
/api/books.xml?access_key=Z&results=texts&index1=isbn&value1=0061031321
<?xml version="1.0" encoding="UTF-8"?>
<ISBNdb server_time="2005-07-29T03:02:22">
<BookList total_results="1" page_size="10" page_number="1" shown_results="1">
<BookData book_id="paul_laurence_dunbar" isbn="0766013502">
<Title>Paul Laurence Dunbar</Title>
<TitleLong>Paul Laurence Dunbar: portrait of a poet</TitleLong>
<AuthorsText>Catherine Reef</AuthorsText>
<PublisherText publisher_id="enslow_publishers">Berkeley Heights, NJ:
Enslow Publishers, c2000.</PublisherText>
<Summary>
A biography of the poet who faced racism and devoted himself to
depicting the black experience in America.
</Summary>
<Notes>
"Works by Paul Laurence Dunbar": p. 113-114.
Includes bibliographical references (p. 124) and index.
</Notes>
<UrlsText></UrlsText>
<AwardsText></AwardsText>
</BookData>
</BookList>
</ISBNdb>
Text values returned are free-form and can be relatively large -- up to
several kb.
- prices
- Show current prices for the found books. Here is an example:
/api/books.xml?access_key=Z&results=prices&index1=isbn&value1=0061031321
<?xml version="1.0" encoding="UTF-8"?>
<ISBNdb server_time="2005-07-29T01:39:11">
<BookList total_results="1" page_size="10" page_number="1" shown_results="1">
<BookData book_id="thief_of_time" isbn="0061031321">
<Title>Thief of Time</Title>
<TitleLong></TitleLong>
<AuthorsText>Terry Pratchett, </AuthorsText>
<PublisherText>HarperTorch</PublisherText>
<Prices>
<Price store_isbn="" store_title=""
store_url="http://isbndb.com/x/book/thief_of_time/buy/isbn/ecampus.html"
store_id="ecampus" currency_code="USD" is_in_stock="1" is_new="1"
check_time="2005-07-29T01:18:18" currency_rate="1" price="5.25"/>
<Price store_isbn="" store_title=""
store_url="http://isbndb.com/x/book/thief_of_time/buy/isbn/alibris.html"
store_id="alibris" currency_code="USD" is_in_stock="1" is_new="1"
check_time="2005-07-29T01:18:19" currency_rate="1" price="6.75" />
<Price store_isbn="" store_title=""
store_url="http://isbndb.com/x/book/thief_of_time/buy/isbn/abebooks.html"
store_id="abebooks" currency_code="USD" is_in_stock="1" is_new="0"
check_time="2005-07-29T01:18:19" currency_rate="1" price="2" />
<Price store_isbn="" store_title=""
store_url="http://www.biblio.com/details.php?dcx=33695224&aid=isbndb"
store_id="biblio" currency_code="USD" is_in_stock="1" is_new="0"
check_time="2005-07-29T01:18:19" currency_rate="1" price="4.5" />
<Price store_isbn="" store_title=""
store_url="http://isbndb.com/x/book/thief_of_time/buy/isbn/amazon.html"
store_id="amazon" currency_code="USD" is_in_stock="1" is_new="0"
check_time="2005-07-29T01:18:19" currency_rate="1" price="0.99" />
<Price store_isbn="" store_title=""
store_url="http://isbndb.com/x/book/thief_of_time/buy/isbn/amazon.html"
store_id="amazon" currency_code="USD" is_in_stock="1" is_new="1"
check_time="2005-07-29T01:18:19" currency_rate="1" price="7.5" />
</Prices>
</BookData>
</BookList>
</ISBNdb>
Most attributes of the resulting 'Prices' tag are self-descriptive, but
here is a short summary:
- store_id - merchant store identificator
- store_url - URL of this book at the merchant's site. Note, that
oftentimes links go
through ISBNdb.com redirection and ISBNdb.com receives a small percentage
of sales generated through the use of these links. Since ISBNdb.com is an
independent company such revenue share and advertisements are the only
source of our income. Please consider using these links.
- store_title - book title at the merchant if different from ISBNdb.com's title
- store_isbn - book ISBN at the merchant store if different from ISBNdb.com's
- currency_code - currency code for the price
- currency_rate - currency rate to USD at the time of price query
- is_new - 1 if the book is new, 0 if the book is being resold used
- is_in_stock - 1 if the merchant reports book in stock, 0 otherwise
- is_historic - 1 if the price was overriden by a newer record, 0 for current prices
- check_time - timestamp of when the price record was received from the merchant
Caution: You need to pay attention to 'check_time' and
'is_historic' attributes. Even if you see that is_historic equals zero, but the
check_time is 24 hours or more in the past -- you should consider this
price a historic one. The server notices that too when returning results
of your request and will schedule the book for a re-query -- you might
want to send another prices request in 30 seconds or so to get updated
prices.
- pricehistory
- The same as 'prices', but the results are not limited to most
current prices -- including full set of historic prices known for the
books. Note that amount of historic records depends on book popularity
and on how frequently prices change for a given book -- a new record is
stored only if it is different from the previous one, without strong
correspondence to specific points in time.
- subjects
- This argument tells ISBNdb.com server to return a list of subjects
for each book found. Here is an example:
/api/books.xml?access_key=Z&results=subjects&index1=combined&value1=law+disorder
<?xml version="1.0" encoding="UTF-8"?>
<ISBNdb server_time="2005-07-29T02:23:10">
<BookList total_results="1" page_size="10" page_number="1" shown_results="1">
<BookData book_id="law_and_disorder" isbn="0210406240">
<Title>Law and disorder</Title>
<TitleLong>
Law and disorder: law enforcement in television network news
</TitleLong>
<AuthorsText>V. M. Mishra</AuthorsText>
<PublisherText>New York : Asia Pub. House, c1979.</PublisherText>
<Subjects>
<Subject subject_id="television_broadcasting_of_news_united_states">
Television broadcasting of news -- United States
</Subject>
<Subject subject_id="journalism_objectivity">
Journalism -- Objectivity
</Subject>
<Subject subject_id="crime_and_the_press_united_states">
Crime and the press -- United States
</Subject>
<Subject subject_id="police_and_the_press_united_states">
Police and the press -- United States
</Subject>
<Subject subject_id="violence_on_television">
Violence on television
</Subject>
</Subjects>
</BookData>
</BookList>
</ISBNdb>
Additional information on subjects (subject composition, parts, etc)
can be found by queries on 'subjects' data collection.
You can also search for additional books on these subjects by using
'subject_id' index described above in this section.
- marc
- This argument tells ISBNdb.com server to return a list of URLs to
the book's MARC records if it has any. Here is an example:
/api/books.xml?access_key=Z&results=marc&index1=isbn&value1=0585329516
<?xml version="1.0" encoding="UTF-8"?>
<ISBNdb server_time="2006-02-14T04:13:05">
<BookList total_results="1" page_size="10" page_number="1" shown_results="1">
<BookData book_id="1001_vocabulary_and_spelling_questions" isbn="0585329516">
<Title>1001 vocabulary and spelling questions</Title>
<PublisherText publisher_id="learningexpress">
New York : LearningExpress, 1999.
</PublisherText>
<MARCRecords>
<MARC library_name="North Carolina (Coastal) Database"
last_update="2003-11-11T16:06:27"
marc_url="http://isbndb.com/x/libdata/isbndb-122-1001_vocabulary_and_spelling_questions-20031111.mrc"
/>
<MARC library_name="North Carolina (Western) Database"
last_update="2005-01-14T04:38:38"
marc_url="http://isbndb.com/x/libdata/isbndb-297-1001_vocabulary_and_spelling_questions-20050113.mrc"
/>
<MARC library_name="Morehead State University (Morehead, KY)"
last_update="2005-10-14T20:59:08"
marc_url="http://isbndb.com/x/libdata/isbndb-75-1001_vocabulary_and_spelling_questions-20051014.mrc"
/>
</MARCRecords>
</BookData>
</BookList>
</ISBNdb>
- authors
- This argument tells ISBNdb.com server to return a list of authors, editors, etc
for each book found. Here is an example:
/api/books.xml?access_key=Z&results=authors&index1=book_id&value1=law_and_disorder
<?xml version="1.0" encoding="UTF-8"?>
<ISBNdb server_time="2006-08-03T15:24:57">
<BookList total_results="1" page_size="10" page_number="1" shown_results="1">
<BookData book_id="law_and_disorder" isbn="0210406240">
<Title>Law and disorder</Title>
<TitleLong>Law and disorder: law enforcement in television network news</TitleLong>
<AuthorsText>V. M. Mishra</AuthorsText>
<PublisherText publisher_id="asia_pub_house">New York : Asia Pub. House, c1979.</PublisherText>
<Authors>
<Person person_id="mishra_vishwa_mohan">Mishra, Vishwa Mohan</Person>
</Authors>
</BookData>
</BookList>
</ISBNdb>
Additional information on authors can be found by queries on 'authors'
data collection.
|