【YouTube Data API】クォータの使用量はどのように確認する?オーバーするとどうなる?読み取りでの使用量は?
| 更新: 2024/02/11 | 2025文字
今回は、管理人が自社運用サイトSSFに、youtubeとの連携機能をつけようと開発していて、ちょっとYouTube Data API関連でトラブった件についてお話します。結論から言うとAPI呼び出しでよくある『クォータの使用量オーバー』です。『使用量はどのように確認・オーバーすると・読み取りでの使用量は』などについて確認していきましょう。
目次
YouTube Data APIクォータの使用量オーバー(quotaExceeded)でどうなるか
YouTube Data APIでは、『1日あたり使えるクォータ コスト』というのが決められていて、特定の操作により消費します。他のAPIでいうと、リクエスト数制限みたいな感じでしょうか。通常だと1日10000クォータ コスト(ガンガン使う人は追加申請が必要)で、『リソースの単純な読み取り操作→1ユニット・書き込み操作→50ユニット・動画アップロード→1600ユニット』というように、アップロードに比べて読み取りはクォータ使用量が少なくなっています。しかし、不適切な読み込みをしてしまうと・・・
quotaExceeded(使用量オーバー)で、データが取れなくなります。『すぐオーバーしたじゃん』と思いましたが、要因は『アカウントにアップした動画全件のデータを読み込んでいた』『(テストのためだけど)読み込みプログラムを複数個所に設置していて、そのぶん読み込み回数が増えた』というのが言えます。
◆YouTube Data API の概要 – クォータの使用量
https://developers.google.cn/youtube/v3/getting-started?hl=ja#quota
YouTube Data APIクォータの使用量はどのように確認するか
まず、apiを利用開始の時点でAPIキーなどを取っているはずなので、『Google Cloud Platform』に行って確認します。管理人は相変わらず、この手の開発者向けサイトはページが複雑で苦手です(笑)まずはメニューの『API とサービス』。
『API とサービス』のページです。下のほうに、『YouTube Data API v3』のプロジェクトがありました。これでフィルタリングします。
『YouTube Data API v3』のプロジェクトのページが出てきました。『割り当て』という項目で、割り当てクォータの使用量データを確認できました。
◆Google Cloud Platform
https://console.cloud.google.com/
YouTube Data APIクォータ、読み取りでの使用量は?(snippet12件やid5件)
urlをいろいろなパラメータで表示させてみました。order=viewCount&maxResults=5で5件取るとか、そんな感じ。&part=snippetは情報量が多く、サムネ取ったりは便利ですが、件数が増えるとクオータ使用量に影響しやすいようです。
ある日のデータ。『&part=snippet&order=viewCount&maxResults=12』は、一発で400とか消費する様子。そりゃ全件取得を何回もやっていたらエラーにもなります。『&part=id&maxResults=5』だと、項目数が少ないからか、クオータ使用量は落とせました。
そのほか、『&part=snippet&order=viewCount&maxResults=5』のように、スニペットで取っても5件にしてみた例。200に落とせたけど、万が一アクセス集中が発生した場合、次の日までダウンするので(割り当て増加申請も可能)、油断はできません。
『idだけとってiframe内に出してループ回す』『一日一回だけスニペットを取って、あとはキャッシュする』など、クオータ使用を抑える手法はありそうです。
あとがき・まとめ
- YouTube Data APIクォータの使用量で、単純な読み取り操作→1ユニットと少ないが、動画全件読み込みみたいなことをやっていると、すぐオーバーするので注意
- Google Cloud Platformの、API とサービスページで、使用量は確認できる
- snippetで件数多めに取ると消費量が大きい
まとめるとこんなところでしょうか。動画コンテンツとwebサイトの連動は、今後も需要があると思うので、こちらでも安定稼働できる方法を検討していきます。
【カテゴリ】- 動画/PV等制作
【タグ】- youtube, YouTube-Data-API