0

I am building an application that uses google's unofficial suggestion's API. The backend service I created, rests in the google app engine's standard environment with default configurations.

It's a Django application that receives a POST request to the certain endpoint to calculate and return the result of the backend logic. The logic requires too many requests to the suggestions API, so that, after a couple of form submissions to that endpoint, suggestions API returns 403 error(I am exceeding the quota, quota restarts after a period of time).

I guess the suggestions API tracks the IP of the client that sends the requests. I am thinking of using multiple instances and some kind of 'controller service' that will route my POST requests to the available instance that hasn't exceeded the quota yet.

Here I am assuming different instances will have different IP, does this assumption correct? If so, how can I architect this controller service in the best possible way?

Cagri Uysal
  • 255
  • 3
  • 11
  • can you post the documentation of the API you talk about? I am not sure to read the good one. – chaiyachaiya Sep 23 '20 at 10:05
  • Generally speaking, a calling quota is discounted from a GCP project. Each process is associated to a project from which it will consume the quota. In general quota is per project and per user. Per project is an agregation of all users calls on a given sliding period. Per user is the agregation of a given user calls on a given sliding period. Nothing to do with IP. You imagine that Google wouldt expose themself to such hack you describe :) . your identity is defined by your appengine default service account (or the one you set). – chaiyachaiya Sep 23 '20 at 10:10

0 Answers0