Ran across what feels like a bit of an oddity today. I’m getting an error (I believe this comes from Bubble, reporting an issue with either the Google Map or Google Geocode API). This shows up in my console:
Uncaught Error: Timezone fetching issue {"errorMessage":"You have exceeded your daily request quota for this API. We recommend registering for a key at the Google Developers Console: https://console.developers.google.com/apis/credentials?project=_","status":"OVER_QUERY_LIMIT"}
But of course, I do have my own API keys set up in Bubble for Maps and Geocoding. So clearly, I’m exceeding either the request-per-second quota or overall daily request quota.
Where it seems this is coming from is that I am, in fact, debugging some issues related to timezones / date-time stuff (always fun!) and so as part of that I have some repeating groups displaying various dates as I work through my issues.
And I’m presenting those dates in various timezones. Specifically, I’m displaying dates in a certain format using a dynamically specified timezone IDs. Those Timezone IDs are coming from an expression like this that’s retrieving the timezone from a GEOGRAPHIC ADDRESS datatype stored in my database:
Like: “Location’s time zone ID”
I would have THOUGHT that a geographic address thing’s “time zone ID” would essentially be STATIC. That this field would in fact only update if one CHANGED THE ADDRESS. However, it looks like Bubble may actually make an API call to Google whenever one references that field.
This seems very strange. Can anyone confirm that that’s actually how fetching a timezone ID works? (i.e., it’s not a static value stored in the database but just reading that value from a geographic location pings the Google API?)
If that’s the case, I guess in my app I’m going to have to add my own field for Timezone ID that I just snag the Timezone ID for the location whenever an address is first created or modified so that I don’t (inadvertently) keep spamming the Google API in question (I assume it’s Geocoding, but it may be the Map API – the error message is unclear on this point).