API Anything

Open Library APIunofficial

Open Library (the Internet Archive's book catalog): book search from the site's search page, and a work's or an author's record from the site's own JSON. Public, logged out.

all live 7 operations, checked by the installs that call them.

Seeded by the maintainers.

Try it

Set up API Anything for your agents:

npx -y api-anything setup

Then ask your agent, which finds this site by itself, or call it from a shell:

api-anything pull openlibrary
api-anything call openlibrary getAuthor authorId=OL31353A

Run it here, no install

Run one of these from the catalog's server, with no install: one live read, sent once without cookies, limited per network and cached for 10 minutes. Your agent calls the site from your own machine instead.

getWork One work (a book across all its editions): workId, title, description, authorIds ("/authors/OL31353A" keys), subjects, subjectPlaces and coverId.

curl -s 'https://api-anything-registry.forth-site.workers.dev/v1/try/openlibrary/getWork?workId=OL59800W'

getAuthor One author: authorId, name, birthDate, deathDate, bio and alternateNames.

curl -s 'https://api-anything-registry.forth-site.workers.dev/v1/try/openlibrary/getAuthor?authorId=OL31353A'

Operations

OperationMethodLoginWritesStatus
getAuthor(authorId) -> authorId, name, birthDate, deathDate, bio, alternateNames

One author: authorId, name, birthDate, deathDate, bio and alternateNames.

GET no no Live0 confirmations · success unknown; last worked unknown
getAuthorWorks(authorId) -> workId, title, firstPublished

List the first page of an author’s works and their first publication dates when recorded.

GET no no Live0 confirmations · success unknown; last worked unknown
getByIsbn(isbn) -> editionId, title, publishers, publishDate, pages, works, authors

Look up a book edition by ISBN.

GET no no Live0 confirmations · success unknown; last worked unknown
getEditions(workId) -> editionId, title, publishers, publishDate, isbn10, isbn13, pages, languages

List the first page of a work’s editions, including ISBNs and publication details.

GET no no Live0 confirmations · success unknown; last worked unknown
getSubject(subject) -> workId, title, authors, firstPublished

List the first page of works for a subject, with authors and first publication year when available.

GET no no Live0 confirmations · success unknown; last worked unknown
getWork(workId) -> workId, title, description, authorIds, subjects, subjectPlaces, coverId

One work (a book across all its editions): workId, title, description, authorIds ("/authors/OL31353A" keys), subjects, subjectPlaces and coverId.

GET no no Live0 confirmations · success unknown; last worked unknown
searchBooks(q) -> workId, title, author, authorId, firstPublished, editions

Search books by title, author or subject, from the site's search page (page 1, up to 20 works): workId, title, author (list), authorId (the first author), firstPublished ("First published in 1969") and editions ("92 editions").

GET no no Live0 confirmations · success unknown; last worked unknown

Notes

No account is needed.

  • A work is a book across all its editions. Ids look like OL59800W (work) and OL31353A (author).
  • searchBooks returns page 1 only (20 works), ranked by the site. Several works can share a title (study guides, other editions catalogued apart): pick by author and by editions, the largest usually being the main one. authorId is the first author only; author lists them all.
  • getWork description is sometimes plain text and sometimes an object whose text is in value. It, subjects, subjectPlaces and coverId are missing when the catalog has none. authorIds are keys like /authors/OL31353A: the last part is the getAuthor arg.
  • getAuthor: bio follows the same text-or-object rule. birthDate and deathDate are free text in whatever format the record has (21 October 1929, January 4, 1976), and each can be missing.
  • getEditions returns the first 50 editions, not all editions. Edition ids are keys like /books/OL7353617M; language values are keys like /languages/eng. ISBNs, publisher, publication date, pages and languages may be missing.
  • getByIsbn accepts an ISBN-10 or ISBN-13 without hyphens. Work and author values are keys such as /works/OL45804W and /authors/OL34184A, and may be absent.
  • getAuthorWorks returns the first 50 works. Its work ids are /works/ keys, and first publication dates are free text and often missing.
  • getSubject takes a subject slug such as science_fiction and returns the first 12 works. It does not return the subject's total work count. Authors and first publication year may be missing.
  • A cover image is https://covers.openlibrary.org/b/id/<coverId>-M.jpg (-S, -M or -L).

About these operations

Each operation is a request learned from Open Library's own web pages: API Anything replays it over plain HTTP and falls back to a browser when it must. Read them as JSON.

← All shared sites