GoogleDrive

Google Drive API v3 (2026) と Python クイックスタート完全ガイド

ⓘ本ページはプロモーションが含まれています

お得なお知らせ

スポンサードリンク
タイプ別にすぐ選べる

2026年、ビジネス競争力を上げる2ルート

"組織を動かす"立場と"個人スキルを伸ばす"立場では必要な打ち手が違います。自分の役割で選んでください。

▷ 部門・全社でAIリテラシー研修を入れたい管理職・人事・経営層

【Kindle本】イノベーションOps 組織を動かすDX&AI導入プロセスのすべて

▷ 個人のビジネススキル・思考法を"本から"底上げしたい実務担当者

Kindle Unlimited 30日無料|ビジネス書読み放題▶

※積極的な自己学習が成長への近道です

▶ 耳で学ぶビジネススキルなら オーディオブックAudible 。日経BP・東洋経済系の話題作も対象です。


スポンサードリンク

Google Drive API の現行バージョンと利用制限(2024‑10‑12 更新)

Google Drive API は v3 が現在の最新版で、公式リファレンスは随時更新されています。本節ではエンドポイント構造と Google が公表しているクオータ情報を中心に解説し、実装時に必ず確認すべきポイントを整理します。

エンドポイント

Google Drive の各リソースは RESTful な URL でアクセスできます。代表的なエンドポイントは以下の通りです。

リソース エンドポイント例
ファイル一覧・操作 https://www.googleapis.com/drive/v3/files
権限管理 https://www.googleapis.com/drive/v3/permissions
変更履歴 https://www.googleapis.com/drive/v3/changes

※エンドポイントはバージョン番号(v3)を URL に含めることで、将来のメジャーアップデートと明確に切り分けられます。

利用制限

Google が公開している「Google Workspace API の使用量と割当」ページによれば、Drive API の標準クオータは次の通りです【1】。

項目 上限
1 秒あたりのリクエスト数(Queries per second, QPS) 10 000
1 日あたりの総リクエスト数 1 000 000(プロジェクト単位)

上記を超過すると 429 Too Many Requests が返され、指数バックオフでの再試行が推奨されています。特定の組織や課金プランではカスタムクオータが付与される場合がありますので、Google Cloud Console の API とサービス > クオータ 画面でも必ず確認してください。

バージョン互換性

v2 から v3 への移行で主に変更された点は次の通りです。

  • デフォルトの fields が最小化され、不要なプロパティが除外されるようになった(レスポンスサイズが約30 %削減)。
  • MIME タイプや共有設定に関するエンドポイントが統合され、API 呼び出し回数を減らせる。

詳細は公式比較ガイドをご参照ください【2】。


Python 用公式クイックスタートと認証設定

Python から安全に Drive API を利用するには、Google が提供している Quickstart公式ページ)をベースに実装すると手間が最小化できます。本節では OAuth 2.0 とサービスアカウントの設定手順をコード例とともに解説します。

OAuth 2.0 認証フロー

ユーザー代理で操作するシナリオ(デスクトップアプリや Web アプリ)では、最小権限スコープのみを付与したトークン取得が基本です。以下は drive.file スコープだけを要求し、取得したトークンをローカルに永続化するサンプルです。

  • ポイント
  • credentials.json は Google Cloud Console の「OAuth クライアント ID」から取得し、決してリポジトリに含めないこと。
  • CI/CD 環境では環境変数や Secret Manager 経由で認証情報を注入し、ファイル保存は避ける。

サービスアカウントの作成とキー管理

バックエンドバッチやサーバー間連携ではサービスアカウントが推奨されます。以下は JSON キーを利用した認証コードです。

  • ベストプラクティス
  • キーは Google Cloud Secret Manager に暗号化保存し、実行時にだけ復号してメモリ上にロードする。
  • 定期的(例:90 日ごと)にローテーションを実施し、不要になったキーは即座に削除する。

最新 Python クライアントライブラリとインストール方法

2024‑10‑12 現在、PyPI の公式ページで公開されている google-api-python-client の最新バージョンは 2.136.0 です【3】。併せて推奨される認証周りのライブラリも同時にロックしておくと依存不整合を防げます。

パッケージ 推奨バージョン
google-api-python-client 2.136.0
google-auth 2.32.0
google-auth-httplib2 0.2.0
httplib2 0.22.0

venv でのインストール例

以下は仮想環境を作成し、上記バージョンを固定してインストールする手順です。

  • 注意点requirements.txt はリポジトリにコミットし、環境間のバージョン差異を排除します。

Poetry での管理例

Poetry を利用すると pyproject.toml とロックファイルだけで依存関係が完結します。

  • ベストプラクティス:CI では poetry install --no-root を実行し、ロックされたバージョン通りに環境を再現します。

代表的な API 操作例(fields 最適化と Chunked Upload)

実務で頻出する操作は「一覧取得」「大容量ファイルのアップロード」「ダウンロード・権限付与」の3パターンです。ここでは fields パラメータによるレスポンス最小化と、2024 年に導入された Chunked Upload の改善点を中心に示します。

ファイル一覧取得と検索クエリ

必要なプロパティだけを取得することで通信量が約 70 % 削減できます。以下は id, name, mimeType, modifiedTime を限定したサンプルです。

検索クエリ例: "name contains '報告書' and mimeType='application/pdf'"

大容量ファイルのチャンクアップロード

2024 年の更新で MediaFileUpload のデフォルト chunksize10 MB に拡大され、再開可能なアップロードが安定しました。以下は改良版サンプルです。

ダウンロードと権限設定

ダウンロードは MediaIoBaseDownload、権限付与は permissions().create() を使います。以下に簡潔な実装例を示します。

ポイント: fields で返却データを限定すれば、ネットワーク帯域とレイテンシが大幅に削減できます。


エラーハンドリング・リトライ戦略・セキュリティベストプラクティス

API 呼び出しは一時的な障害やレートリミットで失敗することがあります。公式推奨の 指数バックオフ と、認証情報・鍵管理に関する安全策をまとめます。

指数バックオフとリトライ実装

以下は汎用的な execute_with_retry ヘルパーです。対象エラーコード(429, 5xx 系)だけを再試行し、最大リトライ回数で止めます。

fields パラメータ活用による高速取得例

必要なプロパティだけを指定すると、レスポンスサイズが 約 80 % 短縮されます。典型的な最適化コードは次の通りです。

開発環境の安全な構築

項目 推奨手順
仮想環境管理 venv または Poetry で依存をロックし、requirements.txtpoetry.lock をリポジトリに含める。
認証情報の排除 credentials.json, service-account.json.gitignore に追加し、CI では GitHub SecretsSecret Manager 経由で注入する。
テスト用モック unittest.mockgoogleapiclient.discovery.build を置き換え、外部呼び出しを回避して高速テストと課金防止を実現する。

セキュリティ総括

  • 最小権限スコープ を徹底し、drive.readonlydrive.file のみ利用する。
  • キーの暗号化保管:Secret Manager に保存し、環境変数で取得した後に一時ファイルへ書き出す方式を採用。
  • トークン自動リフレッシュ:有効期限が近づいたら Credentials.refresh() を呼び出し、手動介入を排除。

まとめ

  1. Google Drive API は v3 が最新版(2024‑10‑12 更新)で、エンドポイントとクオータは公式ドキュメントに明記されています。
  2. Python 側は OAuth 2.0サービスアカウント のどちらかを選択し、最小権限スコープと安全なキー管理を徹底してください。
  3. 推奨ライブラリは google-api-python-client==2.136.0 で、venv または Poetry によるバージョンロックが必須です。
  4. 実装例(一覧取得・検索、Chunked Upload、ダウンロード・権限付与)は fields パラメータ を活用して通信量を削減し、2024 年のアップデートで改善されたチャンクサイズを利用すれば大容量ファイルも安定的に扱えます。
  5. エラー処理は 指数バックオフ とリトライ上限設定で堅牢化し、開発環境は認証情報をコードベースから除外・暗号化保存してセキュリティリスクを最小化します。

以上のポイントを踏まえて実装すれば、Google Drive API を Python で 安全・高速・コスト効率的 に活用できるでしょう。


参考文献

  1. Google Workspace APIs 使用量と割当 – https://developers.google.com/terms/api-services-terms#quota
  2. Drive API v2 ↔ v3 比較ガイド – https://developers.google.com/drive/api/v3/about-sdk?hl=ja
  3. PyPI: google-api-python-client 2.136.0 – https://pypi.org/project/google-api-python-client/2.136.0/

商標に関する注意

© Google は本記事の内容を保証していません。本稿中で使用されている「Google」およびロゴは Google の商標です。Google の商標使用ガイドライン(https://developers.google.com/terms/trademark)に従って記載していますが、掲載情報は執筆時点のものです。最新情報は必ず公式ドキュメントをご確認ください。

スポンサードリンク

お得なお知らせ

スポンサードリンク
タイプ別にすぐ選べる

2026年、ビジネス競争力を上げる2ルート

"組織を動かす"立場と"個人スキルを伸ばす"立場では必要な打ち手が違います。自分の役割で選んでください。

▷ 部門・全社でAIリテラシー研修を入れたい管理職・人事・経営層

【Kindle本】イノベーションOps 組織を動かすDX&AI導入プロセスのすべて

▷ 個人のビジネススキル・思考法を"本から"底上げしたい実務担当者

Kindle Unlimited 30日無料|ビジネス書読み放題▶

※積極的な自己学習が成長への近道です

▶ 耳で学ぶビジネススキルなら オーディオブックAudible 。日経BP・東洋経済系の話題作も対象です。


-GoogleDrive