Custom Connector
OpenLibrary Connector
Global
The OpenLibrary Connector provides a robust interface to a wide range of OpenLibrary services, enabling retrieval of data about books, authors, subjects, and book cover images. It supports book metadata, author profiles, subject-based collections, and high-quality cover images.
Overview
Integration Overview
This document provides a comprehensive guide for each endpoint, its purpose, configuration, and workflow support using the OpenLibrary Connector. The connector forwards HTTP GET requests to OpenLibrary, handling query parameters and headers for reliable retrieval.
- get_books / get_volumes_brief. Retrieve book details by bibkeys, or brief volume info by key type and value.
- get_authors / get_authors_works. Retrieve an author’s details, or a list of their works, by OLID.
- get_book_by_olid / get_book_by_isbn. Retrieve book details by OLID or ISBN.
- get_covers. Retrieve book cover images by key type, value, and size.
- get_search / get_search_authors. Search for books or authors by a query string.
- get_subjects / get_works. Retrieve books for a subject, or details for a specific work by OLID.
Documentation
Detailed Integration Documentation
Books & Volumes
| Actions | get_books / get_volumes_brief |
|---|---|
| Endpoints | GET /api/books · GET /api/volumes/brief/{key_type}/{value}.json |
| Purpose | Retrieves detailed book information by bibkeys (ISBN, OCLC), or concise volume info for a key type and value. |
| Configuration | Configure the base URL via CONNECTOR_ENV_OPENLIBRARY_BASE_URL. |
| Parameters | get_books required: bibkeys (e.g. ISBN:9780140328721). Optional: format (json/javascript); callback; jscmd (viewapi/data). get_volumes_brief required: key_type (isbn/oclc); value. Optional: callback. |
| Output | Successful: JSON with book/volume details (title, authors, availability). Failure: 400 / 404 / 500. |
| Workflow example | GET /api/books with bibkeys=ISBN:9780140328721, or /api/volumes/brief/isbn/9780140328721.json. |
Authors & Works
| Actions | get_authors / get_authors_works |
|---|---|
| Endpoints | GET /authors/{olid}.json · GET /authors/{olid}/works.json |
| Purpose | Retrieves an author’s details (name, bio, birth date) or a list of their works, by OpenLibrary ID. |
| Configuration | Configure the base URL via CONNECTOR_ENV_OPENLIBRARY_BASE_URL. |
| Parameters | Required: olid (e.g. OL123A). Optional (works): limit (e.g. 10). |
| Output | Successful: JSON with author details or a list of works (titles, publication details). Failure: 400 / 404 / 500. |
| Workflow example | GET /authors/OL123A.json, then /authors/OL123A/works.json with limit=10. |
Book by OLID / ISBN
| Actions | get_book_by_olid / get_book_by_isbn |
|---|---|
| Endpoints | GET /books/{olid} · GET /isbn/{isbn} |
| Purpose | Retrieves detailed book information by OpenLibrary ID or ISBN. |
| Configuration | Configure the base URL via CONNECTOR_ENV_OPENLIBRARY_BASE_URL. |
| Parameters | Required: olid (e.g. OL123M) or isbn (e.g. 9780140328721). |
| Output | Successful: JSON with title, authors, and publication information. Failure: 400 / 404 / 500. |
| Workflow example | GET /books/OL123M or GET /isbn/9780140328721. |
Covers
| Action | get_covers |
|---|---|
| Endpoint | GET /covers/{key_type}/{value}-{size}.jpg |
| Purpose | Retrieves book cover images by key type, value, and size. |
| Configuration | Configure the base URL via CONNECTOR_ENV_OPENLIBRARY_BASE_URL. |
| Parameters | Required: key_type (isbn/oclc); value; size (S/M/L). |
| Output | Successful: a JPEG image of the book cover. Failure: 400 / 404 / 500. |
| Workflow example | GET /covers/isbn/9780140328721-M.jpg to display a cover image. |
Search (books / authors)
| Actions | get_search / get_search_authors |
|---|---|
| Endpoints | GET /search.json · GET /search/authors.json |
| Purpose | Searches for books (with pagination) or authors by a query string. |
| Configuration | Configure the base URL via CONNECTOR_ENV_OPENLIBRARY_BASE_URL. |
| Parameters | Required: q (e.g. lord of the rings / J.R.R. Tolkien). Optional (books): page. |
| Output | Successful: JSON with search results (titles, identifiers, or author names + OLIDs). Failure: 400 / 404 / 500. |
| Workflow example | GET /search.json?q=lord of the rings, or /search/authors.json?q=J.R.R. Tolkien. |
Subjects & Works
| Actions | get_subjects / get_works |
|---|---|
| Endpoints | GET /subjects/{subject}.json · GET /works/{olid} |
| Purpose | Retrieves books associated with a subject (optionally detailed), or details for a specific work by OLID. |
| Configuration | Configure the base URL via CONNECTOR_ENV_OPENLIBRARY_BASE_URL. |
| Parameters | Required: subject (e.g. fantasy) or olid (e.g. OL123W). Optional (subjects): details (true/false). |
| Output | Successful: JSON with a list of books for the subject, or work details (title, authors, editions). Failure: 400 / 404 / 500. |
| Workflow example | GET /subjects/fantasy.json?details=true, or /works/OL123W. |
Example Workflow: Book Search & Details
| Search | get_search with q=lord of the rings and page=1 to populate results. |
|---|---|
| Details | get_book_by_olid with olid=OL123M for title, authors, and publication details. |
| Cover | get_covers with key_type=isbn, value=9780140328721, size=M. |
| Author | get_authors with olid=OL123A to display the author’s name and bio. |
Support
For technical support, contact custom-connectors-support@isolutions.sa.