OverDrive Developers

Library Account API

The Library Account API delivers general information about an account including available formats, OverDrive Advantage collections, and a products hypermedia link that returns all available titles in a library collection.

Note: The examples below show our production API URL. If you're using our integration environment, use https://integration.api.overdrive.com or https://integration-patron.api.overdrive.com. For more information on the integration environment, please see Getting Started.

To access the Library Account API, you'll need to know your library ID. If you don't know your library ID, contact support.

Accessing the Library Account API

The Library Account API serves as the starting point for most API clients to discover additional resources for a library account using hypermedia.

Library Account API resources include:

  • products: A library's digital collection, and the starting point for the Search API.
  • advantage accounts: Titles purchased to supplement a library's digital collection. These are in addition to the consortium titles available.

Resource URL

https://api.overdrive.com/v1/libraries/{Library ID}

This URL returns a JSON response that includes:

  • The library's name
  • The account type
  • A link for all products available in the digital media collection
  • A link for all advantageAccounts associated with the account
  • The formats supported by the library account

Example request

GET https://api.overdrive.com/v1/libraries/4225
User-Agent: {Your application}
Authorization: Bearer {OAuth access token}
Host: api.overdrive.com

Example response

200 OK
Pragma: no-cache
X-Frame-Options: deny
Content-Length: 1134
Cache-Control: no-cache
Content-Type: application/json; charset=utf-8
Date: Tue, 15 Nov 2022 18:50:57 GMT
Expires: -1

{
    "id": 4225,
    "name": "OverDrive API Integration Library (OH)",
    "type": "Library",
    "collectionToken": "v1L1BBQ0AAA2_",
    "links": {
        "self": {
            "href": "https://api.overdrive.com/v1/libraries/4425",
            "type": "application/vnd.overdrive.api+json"
        },
        "products": {
            "href": "https://api.overdrive.com/v1/collections/v1L1BBQ0AAA2_/products",
            "type": "application/vnd.overdrive.api+json"
        },
        "advantageAccounts": {
            "href": "https://api.overdrive.com/v1/libraries/4425/advantageAccounts",
            "type": "application/vnd.overdrive.api+json"
        },
        "dlrHomepage": {
            "href": "https://link.overdrive.com/?websiteID=100300",
            "type": "text/html"
        }
    },
    "formats": [
        {
            "id": "ebook-pdf-adobe",
            "name": "Adobe PDF eBook"
        },
        {
            "id": "ebook-mediado",
            "name": "MediaDo eBook"
        },
        {
            "id": "magazine-overdrive",
            "name": "OverDrive Magazine"
        },
        {
            "id": "ebook-epub-adobe",
            "name": "Adobe EPUB eBook"
        },
        {
            "id": "ebook-kindle",
            "name": "Kindle Book"
        },
        {
            "id": "audiobook-mp3",
            "name": "OverDrive MP3 Audiobook"
        },
        {
            "id": "ebook-pdf-open",
            "name": "Open PDF eBook"
        },
        {
            "id": "ebook-overdrive",
            "name": "OverDrive Read"
        },
        {
            "id": "audiobook-overdrive",
            "name": "OverDrive Listen"
        },
        {
            "id": "ebook-epub-open",
            "name": "Open EPUB eBook"
        }
    ]
}

Now that you have the library account products URL, you can access the Search API. From there, follow the hypermedia links to access the Metadata and Library Availability APIs to get the information you need to make your app work.

Seeing Kanopy subscription information

You can use the Kanopy subscription endpoint to see whether a library has an active Kanopy subscription. You can also get a link to the library's Kanopy URL.

Example request

GET https://api.overdrive.com/v1/libraries/612/kanopyinfo
User-Agent: {Your application}
Authorization: Bearer {OAuth access token}
Host: api.overdrive.com

Example response

200 OK
Cache-Control: no-cache
Pragma: no-cache
X-Frame-Options: DENY
Date: Thu, 03 Nov 2022 09:58:43 GMT
Content-Type: application/json; charset=utf-8
Expires: -1
Content-Length: 5269

{
    "subscriptions": [
        {
            "id": 10,
            "name": "Wayne County Public Library",
            "subscriptionId": "45ad1fd9fc03606fc71b4acae1b70d4a",
            "url": "https://www.kanopy.com/en/wcplohio",
            "status": "Active",
            "startDate": "2021-12-07T18:07:08Z",
            "endDate": "2022-12-07T05:00:00Z"
        },
        {
            "id": 11,
            "name": "Sandusky Library",
            "subscriptionId": "6f2f81ebd0673a01eab32ae30428c9c2",
            "url": "https://www.kanopy.com/en/sanduskylib",
            "status": "Active",
            "startDate": "2021-12-07T18:07:11Z",
            "endDate": "2022-12-07T05:00:00Z"
        },
        {
            "id": 12,
            "name": "Willoughby-Eastlake Public Library",
            "subscriptionId": "62279c2d54f6705782fe4f3cb10cb5aa",
            "url": "https://www.kanopy.com/en/welibrary",
            "status": "Active",
            "startDate": "2021-12-07T18:07:13Z",
            "endDate": "2022-12-07T05:00:00Z"
        },
        {
            "id": 13,
            "name": "Twinsburg Public Library",
            "subscriptionId": "164ae45e2b0e0c47987ad10206a78742",
            "url": "https://www.kanopy.com/en/twinsburg",
            "status": "Active",
            "startDate": "2021-12-07T18:07:18Z",
            "endDate": "2022-12-07T05:00:00Z"
        },
        {
            "id": 19,
            "name": "Ritter Public Library",
            "subscriptionId": "fd1c5a3fa0e030e27b1c06cabacc3654",
            "url": "https://www.kanopy.com/en/ritterlib",
            "status": "Active",
            "startDate": "2021-12-07T18:07:39Z",
            "endDate": "2022-12-07T05:00:00Z"
        },
        {
            "id": 20,
            "name": "Hudson Library & Historical Society",
            "subscriptionId": "19f0d3e1581ea5059c3931ccee65e6c3",
            "url": "https://www.kanopy.com/en/hudsonlibrary",
            "status": "Active",
            "startDate": "2021-12-07T18:07:43Z",
            "endDate": "2022-12-07T05:00:00Z"
        },
        {
            "id": 21,
            "name": "Euclid Public Library",
            "subscriptionId": "4e7686737d1377ca3c2b1f77d99b3bdb",
            "url": "https://www.kanopy.com/en/euclidlibrary",
            "status": "Active",
            "startDate": "2021-12-07T18:07:51Z",
            "endDate": "2022-12-07T05:00:00Z"
        },
        {
            "id": 22,
            "name": "Cleveland Hts-University Hts Public Library",
            "subscriptionId": "17934adde535b95b3d59c5074910ab1f",
            "url": "https://www.kanopy.com/en/heightslibrary",
            "status": "Active",
            "startDate": "2021-12-07T18:07:56Z",
            "endDate": "2022-12-07T05:00:00Z"
        },
        {
            "id": 26,
            "name": "McKinley Memorial Library",
            "subscriptionId": "b44f5035367d901695865bccb9be18c1",
            "url": "https://www.kanopy.com/en/mcklib",
            "status": "Active",
            "startDate": "2022-01-04T23:25:16Z",
            "endDate": "2023-01-04T05:00:00Z"
        },
        {
            "id": 27,
            "name": "Elyria Public Library",
            "subscriptionId": "644a084415e0ce1f4fd1cbc4442c5af4",
            "url": "https://www.kanopy.com/en/elyria",
            "status": "Active",
            "startDate": "2022-04-26T20:25:30Z",
            "endDate": "2023-04-26T04:00:00Z"
        },
        {
            "id": 28,
            "name": "Burton Public Library",
            "subscriptionId": "ec541e7a77ad9f7e8950465fd4c82afc",
            "url": "https://www.kanopy.com/en/burtonlibrary",
            "status": "Active",
            "startDate": "2021-12-07T18:08:18Z",
            "endDate": "2022-12-07T05:00:00Z"
        },
        {
            "id": 3,
            "name": "Shaker Heights Public Library",
            "subscriptionId": "ff9055d04629d57dca334e3fd1b1c289",
            "url": "https://www.kanopy.com/en/shakerlibrary",
            "status": "Active",
            "startDate": "2021-12-07T18:06:49Z",
            "endDate": "2022-12-07T05:00:00Z"
        },
        {
            "id": 31,
            "name": "Geauga County Public Library",
            "subscriptionId": "becee83232b9fae0af60f6872b08f2ba",
            "url": "https://www.kanopy.com/en/geaugalibrary",
            "status": "Active",
            "startDate": "2022-01-18T22:25:15Z",
            "endDate": "2023-01-18T05:00:00Z"
        },
        {
            "id": 32,
            "name": "Rocky River Public Library",
            "subscriptionId": "2e1dc004ac0ba45cf923c620b16837b0",
            "url": "https://www.kanopy.com/en/rrpl",
            "status": "Active",
            "startDate": "2021-12-07T18:08:40Z",
            "endDate": "2022-12-07T05:00:00Z"
        },
        {
            "id": 34,
            "name": "Huron Public Library",
            "subscriptionId": "e1be608d7e1bbdb92e11fd4ff691698e",
            "url": "https://www.kanopy.com/en/huronlibrary",
            "status": "Active",
            "startDate": "2021-12-07T18:08:48Z",
            "endDate": "2022-12-07T05:00:00Z"
        },
        {
            "id": 35,
            "name": "Lorain Public Library",
            "subscriptionId": "456651915e389319afe4cd8597e912b4",
            "url": "https://www.kanopy.com/en/lpls",
            "status": "Active",
            "startDate": "2021-12-07T18:08:51Z",
            "endDate": "2022-12-07T05:00:00Z"
        },
        {
            "id": 37,
            "name": "Bellevue Public Library",
            "subscriptionId": "067c619dce5a3637a67a9b2a3825c34b",
            "url": "https://www.kanopy.com/en/bellevuelib",
            "status": "Active",
            "startDate": "2022-04-26T20:25:35Z",
            "endDate": "2023-04-26T04:00:00Z"
        },
        {
            "id": 38,
            "name": "Mentor Public Library",
            "subscriptionId": "abca3cdbc7d5b7d6c88e030b51a85a71",
            "url": "https://www.kanopy.com/en/mentorpl",
            "status": "Active",
            "startDate": "2021-12-07T18:09:06Z",
            "endDate": "2022-12-07T05:00:00Z"
        },
        {
            "id": 40,
            "name": "Cleveland Public Library",
            "subscriptionId": "8726aab0122b086366365abd7f30a06a",
            "url": "https://www.kanopy.com/en/cpl",
            "status": "Active",
            "startDate": "2021-12-07T18:09:17Z",
            "endDate": "2022-12-07T05:00:00Z"
        },
        {
            "id": 52,
            "name": "Milan-Berlin Township Public Library",
            "subscriptionId": "224c0b0c8817fd17665aa4a9b52f0356",
            "url": "https://www.kanopy.com/en/milanberlin",
            "status": "Active",
            "startDate": "2021-12-07T18:09:58Z",
            "endDate": "2022-12-07T05:00:00Z"
        },
        {
            "id": 58,
            "name": "Girard Free Library",
            "subscriptionId": "ab65587d3cacfc4c9dc868b3fd95868b",
            "url": "https://www.kanopy.com/en/girardfreelibrary",
            "status": "Active",
            "startDate": "2021-12-07T18:10:20Z",
            "endDate": "2022-12-07T05:00:00Z"
        },
        {
            "id": 59,
            "name": "Stow-Munroe Falls Public Library",
            "subscriptionId": "59892f7323a3b76027738f421de81c6f",
            "url": "https://www.kanopy.com/en/smfpl",
            "status": "Active",
            "startDate": "2021-12-07T18:10:24Z",
            "endDate": "2022-12-07T05:00:00Z"
        },
        {
            "id": 9,
            "name": "Medina County District Library",
            "subscriptionId": "d10ccee5d03c023022d16e7c1ae41b7c",
            "url": "https://www.kanopy.com/en/mcdl",
            "status": "Active",
            "startDate": "2021-12-07T18:07:04Z",
            "endDate": "2022-12-07T05:00:00Z"
        }
    ]
}

If you want to see the Kanopy subscription information for an Advantage account, append the Advantage ID to the URL.

GET https://api.overdrive.com/v1/libraries/612/kanopyinfo/52
User-Agent: {Your application}
Authorization: Bearer {OAuth access token}
Host: api.overdrive.com

This will return information for only the individual Advantage account.

200 OK
Cache-Control: no-cache
Pragma: no-cache
X-Frame-Options: DENY
Date: Thu, 03 Nov 2022 09:59:08 GMT
Content-Type: application/json; charset=utf-8
Expires: -1
Content-Length: 239

{
    "id": 52,
    "name": "Milan-Berlin Township Public Library",
    "subscriptionId": "224c0b0c8817fd17665aa4a9b52f0356",
    "url": "https://www.kanopy.com/en/milanberlin",
    "status": "Active",
    "startDate": "2021-12-07T18:09:58Z",
    "endDate": "2022-12-07T05:00:00Z"
}