クライアント ライブラリを使用すると、サポートされている言語で Google Cloud APIs に簡単にアクセスできます。サーバーにリクエストを送信して Google Cloud APIs を直接利用することもできますが、クライアント ライブラリでは、簡素化により記述するコードの量を大幅に削減できます。
このドキュメントでは、Google が Cloud APIs 用に提供しているさまざまなタイプのクライアント ライブラリについて説明します。また、使用しているプロダクトや言語で利用可能なライブラリの詳細については、プロダクトや言語のドキュメントをご覧ください。
Cloud クライアント ライブラリ
Cloud クライアント ライブラリは、Cloud APIs にプログラムでアクセスする場合におすすめの方法です。Cloud クライアント ライブラリでは、最新のクライアント ライブラリ モデルと以下が使用されます。
- Cloud APIs を簡単かつ直感的に使用できるように、各言語で慣用的なコードを提供します。
- 複数の Cloud サービスを簡単に操作できるように、クライアント ライブラリ全体で一貫したスタイルを提供します。
- Google での認証など、サーバーとの通信に関する下位レベルのすべての詳細を処理します。
npm
やpip
など、使い慣れたパッケージ管理ツールを使用してインストールできます。- 場合によっては、gRPC を使用してパフォーマンスを高めることもできます。詳細については、gRPC API をご覧ください。
Cloud クライアント ライブラリのインストール手順と参照マテリアルについては、使用している Cloud API のクライアント ライブラリ ページをご覧ください。Cloud クライアント ライブラリとそのリファレンス ドキュメントの使用を開始するためのリンクは、Cloud クライアント ライブラリ ページをご覧ください。
使ってみる
Google Cloud を初めて使用する場合は、アカウントを作成して、実際のシナリオでの Google プロダクトのパフォーマンスを評価してください。新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $300 分を差し上げます。
無料で開始Google API クライアント ライブラリ
一部の Google Cloud APIs では、言語によっては Cloud クライアント ライブラリを利用できません。これらの API のいずれかを使用する際に希望する言語の Cloud クライアント ライブラリが存在しない場合は、以前のスタイルのクライアント ライブラリ(Google API クライアント ライブラリ)を引き続き使用できます。 これらのライブラリをすでに使用しているプロジェクトをアップグレードする場合は、そのライブラリを使用することもできます。これらのライブラリの特徴は次のとおりです。
- API の REST インターフェースにのみアクセスできます。gRPC はサポートされていません。
- Cloud クライアント ライブラリほど慣用的ではありませんが、自動生成されたインターフェース コードが用意されています。
- Google での認証など、サーバーとの通信に関する下位レベルのすべての詳細を処理します。
npm
やpip
など、使い慣れたパッケージ管理ツールを使用してインストールできます。
これらのライブラリは、関連する Cloud API のクライアント ライブラリ ページにリンクされています。
Firebase モバイル プラットフォームの使用
Firebase は、モバイル デバイスのアプリケーションをビルドするための Google 全体のソリューションです。Firebase では、クライアント コードを含む SDK が提供されます。このコードを使用すると、iOS、Android、ウェブアプリからモバイル関連の Cloud APIs にアクセスすることができます。サポートされている Cloud APIs と、Firebase を始める方法については、Firebase のドキュメントをご覧ください。
独自のクライアント コードの使用
経験豊富なデベロッパーは、Google のクライアント ライブラリが特定のニーズに合わない場合に、独自のカスタムコードを記述して、サービスの下位レベルのサービス API に直接アクセスできます。
REST/HTTP API
すべての Cloud API では、従来のシンプルな JSON/REST インターフェースが公開されています。独自のカスタムコードを記述し、サードパーティの HTTP クライアント ライブラリを使用して REST API に直接アクセスする必要がある場合、異なる HTTP バージョンでの Cloud API の動作や実装の詳細については、HTTP ガイドラインをご覧ください。
gRPC API
gRPC は、Google で最初に開発された、言語やプラットフォームに依存しないオープンソースのリモート プロシージャ コール(RPC)システムです。詳細については、grpc.io をご覧ください。gRPC 対応の Cloud API には、通常、REST と RPC の両方のインターフェースが備えられているため、HTTP で JSON を使用して REST インターフェースと通信するのではなく、gRPC 対応の API クライアントでは、HTTP2 でプロトコル バッファと gRPC を使用し、RPC インターフェースと通信することもできます。API が gRPC 対応であるかどうかは、その API とリファレンス セクションをチェックすることによって確認できます。
gRPC 対応の Cloud APIs に対しては、gRPC でサポートされている任意の言語で、独自の gRPC クライアント ライブラリを生成することができます。このためには、API のプロトコル バッファ サービス定義(通常は GitHub のリポジトリから使用可能)が必要になります。この定義を取得したら、grpc.io に示された任意の言語の手順に従って、クライアントを生成して使用できます。
独自の gRPC コードを生成しない場合でも、gRPC を活用することができます。gRPC 対応 API のための Cloud クライアント ライブラリのうち、gRPC を「内部的に」使用して Google のサーバーと通信するものが増加しています。これにより、スループットと CPU の使用率が大幅に効率化されます。gRPC を使用して API にアクセスすると、JSON REST API と比較して 10 倍も CPU あたりのスループットを高めることができます。できる限り多くの Cloud クライアント ライブラリを gRPC にアップグレードする予定です。それまでの間は、クライアント ライブラリ コードのその他すべてのメリットを引き続きご利用いただけます。
Cloud API にアクセスするその他の方法
プログラムから API にアクセスしたくない場合は、Google Cloud CLI または Google Cloud Console のツールを使用して一部の同じ機能にアクセスできます。