メインページ > 国立国会図書館サーチについて > 国立国会図書館サーチが提供する書影API

国立国会図書館サーチが提供する書影API


1. 書影APIについて

1-1. 概要

国立国会図書館サーチでは、図書館の蔵書検索システム(OPAC)等でご活用いただけるよう書影APIを提供しています。
書影APIは図書のISBNまたはJP-eコードを引数としてリクエストすることで、書影画像を返戻するAPIです。
※国立国会図書館サーチでは、資料がJP-eコードを持つ場合、書誌詳細画面の注記に「JP-e コード:」という接頭辞とともに表示しています。

1-2. データプロバイダ

書影APIで取得可能な書影は、次に示すデータプロバイダから提供されたものです。
下記の3つのデータプロバイダのデータは、いずれも出版書誌情報データベース(Books)から検索することができます。

  • 出版情報登録センター(JPRO)

    ※出版情報登録センター(JPRO)から提供されたメタデータについては発売予定日から60日経過した時点で国立国会図書館サーチから削除されますが、書影についてはメタデータの削除に関わらず提供を継続します。ただし、出版取消等の事情で当該書影の提供を停止する場合があります。また、提供される書影は、最終刊行版とは異なる場合があります。

  • 出版情報登録センター(JRPO)(電子書籍)
  • 出版情報登録センター(JPRO)(オーディオブック)

1-3. 更新

書影APIで取得可能な書影は、定期的に上記データプロバイダから提供を受け更新されます。書影APIから出力される書影については、変更・提供中止となる場合がありますのでご注意ください。
書影画像を蔵書検索システム等にキャッシュする場合は、定期的に書影APIから書影を取得しなおすことをおすすめします。

1-4. ご利用にあたって

書影APIの利用にあたってはあらかじめ以下をご確認ください。

  • APIのご利用について

  • 2. リクエスト方法

    書影画像を取得するためには以下のURLに対しHTTP GETリクエストを送信します。
    https://iss.ndl.go.jp/thumbnail/[isbn又はJP-eコード]
    ここで[isbn又はJP-eコード]は、書影画像を取得したい図書のISBNを13桁かつハイフン区切りなしで指定したもの、もしくはJP-eコードを20桁かつ区切りなしで指定したものです。

    例えばISBNが 978-4-422-31107-4 の資料の書影を取得するためのURLは
    https://iss.ndl.go.jp/thumbnail/9784422311074
    となり、
    JP-eコードが 0621849700100011000D の資料の書影を取得するためのURLは
    https://iss.ndl.go.jp/thumbnail/0621849700100011000D
    となります。

    1度のリクエストで指定可能なISBN/JP-eコードは1件となります。(複数のISBN/JP-eコードを指定するようなリクエストにはエラーが返戻されます。)

    3. 返戻形式

    国立国会図書館サーチが公開対象の書影を保持しているISBN/JP-eコードが指定された場合はその画像(JPEG形式)を返戻します。
    国立国会図書館サーチが公開対象の書影を保持していない場合(存在していないISBN/JP-eコードを指定した場合、ISBN/JP-eコードの形式が不正な場合や未指定の場合を含みます)は、エラーとしてHTTPステータスコード「404 not found」を返します。
    書影APIへのアクセスが集中し結果を正常に返戻できない場合は、HTTPステータスコード「503 Service Unavailable」を返します。

    4. 使用例

    例えば、ウェブページ上で書影表示などに本APIを使用することができます。
    その場合、HTMLのimgタグのsrcに本APIのURLを指定することで、書影を表示することが考えられます。
    <img src="https://iss.ndl.go.jp/thumbnail/9784422311074"/>
    ただし、書影APIは上述の通りHTTPステータスコード404または503を返す場合があります。その場合のハンドリングのために、たとえばonerrorイベントハンドラを使用することが考えられます。
    • 画像取得失敗時にimg要素を非表示とする場合の例
      <img src="https://iss.ndl.go.jp/thumbnail/9784999999996" onerror="this.style.display='none'"/>
    • 画像取得失敗時に代替画像を表示する場合の例
      (data URI schemeを使用して画像を出力しています)
      <img src="https://iss.ndl.go.jp/thumbnail/9784999999996" onerror="this.onerror=null;this.src='data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNNSA4LjVjMC0uODI4LjY3Mi0xLjUgMS41LTEuNXMxLjUuNjcyIDEuNSAxLjVjMCAuODI5LS42NzIgMS41LTEuNSAxLjVzLTEuNS0uNjcxLTEuNS0xLjV6bTkgLjVsLTIuNTE5IDQtMi40ODEtMS45Ni00IDUuOTZoMTRsLTUtOHptOC00djE0aC0yMHYtMTRoMjB6bTItMmgtMjR2MThoMjR2LTE4eiIvPjwvc3ZnPg==';" />