Just do IT

思うは招く

Google::Apis::ClientError: forbidden: The provided API key has an IP address restriction 自然解決?

問題

ウェブフレームワークRails を採用し、Google Search JSON API を使って開発していたとき。

コード側はなにも変えておらず、突然以下のようなエラーが出た。

Failures:

  1) Google #rankings_ary
     Failure/Error: @search_results = searcher.list_cses(q: @query, cx: @cse_id, start: 1).items
     
     Google::Apis::ClientError:
       forbidden: The provided API key has an IP address restriction. The originating IP address of the call (<IPアドレス>) violates this restriction.

解決?

APIキーとIPアドレスに制限がかかっている・・・?

Google Custom Search APIを利用した検索結果の取得方法【無料枠】 | プラスブログ

そもそも、このAPIを使うにあたって、IPアドレスについては上記事を参考に設定した。

しかし、APIキーの制限を一時的に削除した。設定していたIPアドレスも消した。

時間を少しおいて、再度アクセスすると直ってエラーが発生しなくなった。ただ、これだとAPIキーに制限がかかっていないので、あまりよろしくない。

今後またAPIキーに制限をかけたときにも同じエラーが出るかも知れないが、とりあえずこれで開発を進めていく。