When I use the Google calendar API to create a new Calendar, I randomly get "Backend Error". Do you have any idea why ? Have you experienced the same behavior ?
First request :
POST https://www.googleapis.com/calendar/v3/calendars Authorization:
Bearer ya29.UQEd-xxx
Content-Type: application/json; charset=utf-8
{"summary":"My new calendar name"}
Google answer (around 20 seconds later):
{ "error": { "errors": [ { "domain": "global", "reason":
"backendError", "message": "Backend Error" } ] "code": 503, "message":
"Backend Error" } }
The calendar is not created
Another request :
POST https://www.googleapis.com/calendar/v3/calendars Authorization:
Bearer ya29.UQEd-yyy
Content-Type: application/json; charset=utf-8
{"summary":"My new calendar name"}
Google answer (around 5 seconds later) : 200
The calendar is created
503 Service Unavailable
The server is currently unavailable (because it is overloaded or down for maintenance). Generally, this is a temporary state.
503 is a standard HTTP error that happens sometimes. Google ops probably has a graph somewhere showing the frequency of the errors and depending on their priorities may be working to fix it. You should catch the error and either give a human the chance to retry or implement exponential backoff.
Google Apps Calendar Resource API Limits and Quotas
For all errors that are time based (maximum of N things for N seconds per thread), especially the 503 status code errors, we recommend your code catch the exception and, using an exponential backoff algorithm, wait for a small delay before retrying the failed call.
https://twitter.com/googlecalendar/with_replies
Yes google calendar services are currently unavailable. Confirmed from twitter.
For people visiting this in the future, I think that a 503 error can also be thrown when there are an insane number of events and Google Calendar simply chokes on them. I had a event that somehow got duplicated 18k times on a single day and event trying to use events.list with a maxResults of 1 resulted in a 503 error.
Related
I am suddenly getting a 403 error when sending requests to YouTube's data-API.
This is the error I am getting in production for all requests:
"error": {
"errors": [
{
"domain": "usageLimits",
"reason": "accessNotConfigured",
"message": "Access Not Configured. YouTube Data API has not been used in project 944988770273 before or it is disabled. Enable it by visiting https://console.developers.google.com/apis/api/youtube.googleapis.com/overview?project=944988770273 then retry. If you enabled this API recently, wait a few minutes for the action to propagate to our systems and retry.",
"extendedHelp": "https://console.developers.google.com/apis/api/youtube.googleapis.com/overview?project=944988770273"
}
],
"code": 403,
"message": "Access Not Configured. YouTube Data API has not been used in project 944988770273 before or it is disabled. Enable it by visiting https://console.developers.google.com/apis/api/youtube.googleapis.com/overview?project=944988770273 then retry. If you enabled this API recently, wait a few minutes for the action to propagate to our systems and retry."
}
}
I haven't done anything do disable the keys, and the dashboard still says the project and key is enabled?
This seems to be due to YouTube setting my daily limit to 0 for some reason, effectively "banning" the usage on the current project in use.
If this happens error-message happens to anyone, remember to check the quotas for the project.
I filled an issue on Youtube Bug Tracker related to it. The feedback was:
This means that your project’s access to YouTube Data API Service has been disabled.
Please fill out and submit the exceptions form below: https://support.google.com/youtube/contact/yt_api_form?hl=en
No reasons why.
I've got project, where I have to login through google sign in. I have created google project. Set up client/secret keys. I got to the point where I'm making post request to my web app server and sending there the accessToken:
OAuth2ConnectionFactory<Google> connectionFactory = (OAuth2ConnectionFactory<Google>) connectionFactoryLocator().getConnectionFactory(Google.class);
AccessGrant accessGrant = new AccessGrant(accessToken);
Connection<Google> connection = connectionFactory.createConnection(accessGrant);
The request is:
GET https://www.googleapis.com/plus/v1/people/me
Accept: application/json, application/*+json
Authorization: Bearer etc.
Here I got exception: 403 Forbidden. I had to manually track what the actual request is done and made rest request manually to replicate the issue with given headers.
Here is the result I'm getting:
"code": 403, "message": "Legacy People API has not been used in
project ... before or it is disabled. Enable it by visiting
https://console.developers.google.com/apis/api/legacypeople.googleapis.com/overview?project=...
then retry. If you enabled this API recently, wait a few minutes for
the action to propagate to our systems and retry."
First of all the link fails to load. I didn't find any "Legacy People API". Only new People API.
I wonder if there is any solution to this problem? I have enabled People API and waited for long enough but the same error remains.
EDIT 1:
I think the project spring-social is dead. Will rewrite login logic and kick spring-social out of it..
ME TOO . this my problem. I'm waiting 6 hours
"code": 403, "message": "Legacy People API has not been used in project
Try using the Google Identity Platform OAuth API instead of the Legacy People API.
{
"error": {
"errors": [
{
"domain": "global",
"reason": "backendFailed",
"message": "Service temporarily unavailable.",
"locationType": "other",
"location": "backend_flow"
}
],
"code": 503,
"message": "Service temporarily unavailable."
}
}
Started to get this error several hours ago in response to Google Books API: Volume: list
For example, copy-paste the following line into the URL box of your internet browser:
https://www.googleapis.com/books/v1/volumes?q=orwell
It may be useful to refer to the definition of a 503 response code for insight into what to expect.
503 Service Unavailable
The server is currently unable to handle the request due to a temporary overloading or maintenance of the server. The implication is that this is a temporary condition which will be alleviated after some delay. If known, the length of the delay MAY be indicated in a Retry-After header. If no Retry-After is given, the client SHOULD handle the response as it would for a 500 response.
Note: In my experiment the endpoint mentioned did not provide any Retry-After header.
What to do...
"If I'm not back in 5 minutes, just wait longer." — Ace Ventura, Pet Detective.
I am trying to implement the YouTube Data API v3 in my Python project. However it seems that I always get a error with usage limits.
Here is the specific error I am seeing:
{
"error": {
"errors": [
{
"domain": "usageLimits",
"reason": "accessNotConfigured",
"message": "Access Not Configured. YouTube Data API has not been used in project 236433974813 before or it is disabled. Enable it by visiting https://console.developers.google.com/apis/api/youtube.googleapis.com/overview?project=236433974813 then retry. If you enabled this API recently, wait a few minutes for the action to propagate to our systems and retry.",
"extendedHelp": "https://console.developers.google.com/apis/api/youtube.googleapis.com/overview?project=236433974813"
}
],
"code": 403,
"message": "Access Not Configured. YouTube Data API has not been used in project 236433974813 before or it is disabled. Enable it by visiting https://console.developers.google.com/apis/api/youtube.googleapis.com/overview?project=236433974813 then retry. If you enabled this API recently, wait a few minutes for the action to propagate to our systems and retry."
}
}
The console says 0 quota (I cannot post images due to low reputation, but it says this when looking at the quotas.)
I have the free trial activated.
You need to first go to the GCP console and activate the YouTube Data API for your project. You must do this for each API in each project.
https://console.cloud.google.com
When I submit a request using the nextPage token to paginate through lists larger than 500, i get the following error:
500 HTTP/2.0 500
- Show headers -
{
"error": {
"code": 500,
"message": "Internal error encountered.",
"status": "INTERNAL"
}
}
Fiddling with the token gives appropriate detailed error on a bad token.
thanks for reporting the issue. We've identified a bug in one of the backend services when sync is requested and pagination is done on the first sync request without passing in the sync token. We have submitted a fix, which should be rolled out shortly.