Google Books APIを使う機会があり、いろいろ調べていましたが、
詳細な情報が少なかったので、まとめてみました。
本記事はGoogle Books APIの開発者向けサイトを翻訳して簡潔にまとめたものです。
内容もボリューミーなので、記事は何回かに分けて掲載します。
今回は「Google Books APIの概要」と「Googleブックスの基礎」についてです。
#Google Books APIの概要
Google Books APIを利用することで、
Googleブックスの機能をサイトまたはアプリケーションに組み込むことができます。
ただし、APIを使用して取得したデータの配布などは禁止されており、
商用サービスとしてAPIを利用することもできないようです。
利用規約に違反した場合はAPIへのアクセスが一時停止されます。
Google Books APIには「Books API v1」と「Embedded Viewer API」の2種類があります。
Books API v1
Googleブックスに対して以下の操作を実行できます。
- 特定のクエリに一致する書籍のリストを検索して閲覧する
- メタデータ、在庫状況、価格、プレビューページへのリンクなど、書籍に関する情報を表示する
- 自分の本棚を管理する
Embedded Viewer API
Googleブックスの書籍をWebページに直接埋め込むことができます。
#Google Books APIを利用するには
基本的にはGoogleアカウントが必要です。
"基本的に"と書いたのは、アカウントがなくても一部のデータは取得可能だからです。
Google ブックスの基礎
コンセプト
Googleブックスには、次の4つのコンセプトがあります。
Volume
・本や雑誌に関するデータ。
Bookshelf
・Volumeのコレクション。
・ユーザーごとにあらかじめ用意されている本棚と、ユーザーが手動で追加した本棚があります。
・ユーザーは自由にVolumeを追加・変更・削除ができますが、
おすすめの書籍などの一部の本棚は自動でVolumeが追加されます。
・本棚はプライベート(非公開)とパブリック(公開)のどちらかに設定できます。
Review
・Volumeに対するレビュー。
・ユーザーはVolumeごとに1つのレビューを設定できます。
・外部のソースからも利用できます。
Reading Position
・ユーザーのVolume内の最後の読み取り位置。
・ユーザーはVolumeごとに1つの読み取り位置しか持つことができません。
・ユーザーがそのVolumeを以前に開いていない場合、読み取り位置は存在しません。
・単語の解像度まで詳細な位置情報を保存されています。
・ユーザーに公開されません。
データモデル
リソース
一意の識別子を持つ個別のデータエンティティのことを指します。
Volume resource
ボリューム
Bookshelf resource
特定のユーザーの単一の本棚
コレクション
リソースの集まりのことを指します。
Volume collection
・Googleブックスが管理するすべてのVolume resourceのコレクション。
・すべてのVolume resourceをリストにすることはできませんが、
検索条件に一致するVolume resourceをリストにすることはできます。
Bookshelf collection
・Googleブックスが管理するすべてのBookshelf resourceのコレクション。
####*あらかじめ用意されている本棚
本棚 | 説明 |
---|---|
Favorites | 手動での追加・削除が可能です。 |
Purchased | 購入した書籍が入ります。手動での追加・削除ができません。 |
To Read | 手動での追加・削除が可能です。 |
Reading Now | 手動での追加・削除が可能です。 |
Have Read | 手動での追加・削除が可能です。 |
Reviewed | レビューをつけた書籍が入ります。手動での追加・削除ができません。 |
Recently Viewed | 最近Webリーダーで開いた書籍が入ります。手動での追加・削除ができません。 |
My eBooks | 購入した書籍が自動的に追加されますが、手動で削除が可能です。 |
Books For You | おすすめと判定された書籍が入ります。おすすめがない場合、この本棚は存在しません。 |
オペレーション
コレクションとリソースに対して以下の5つのメソッドを使用できます。
メソッド | 説明 | REST HTTP マッピング |
---|---|---|
list | コレクション内のリソースの指定されたサブセットをリスト | コレクションURIに対するGET |
insert | 新しいリソースを追加 | 新しいリソースのデータを渡すコレクションURIに対するPOST |
get | 特定のリソースを取得 | リソースURIに対するGET |
update | 特定のリソースを更新 | 更新されたリソースのデータを渡すリソースURIのPUT |
delete | 特定のリソースを削除 | 削除するリソースのデータを渡すリソースURIでのDELETE |
各リソースに対して許可されているメソッドは以下の通りです。
リソース | list | insert | get | update | delete |
---|---|---|---|---|---|
Volumes | △ | × | ○ | × | × |
Bookshelves | △ | ◎ | △ | ◎ | ◎ |
Reading Positions | × | ◎ | ◎ | ◎ | ◎ |
×:利用不可 | |||||
○:認証なしで利用可 | |||||
△:認証なしで利用できるが、プライベートデータに対しては認証が必要。 | |||||
◎:認証により利用可 |
#最後に
以上、「Google Books APIの概要」と「Googleブックスの基礎」でした。
次回は「Google Books APIの呼び出し方」です。