I'm developer and I want to upload a video using the YouTube Data API v3, but it always return the error code "quotas exceeded". I never succeeded upload a video so it's strange...
Do you have a solution for this problem or support address mail to contact in order to solve the problem ?
I send to the API that video with attachment:
curl --request POST \
--url 'https://www.googleapis.com/upload/youtube/v3/videos?part=snippet%2Cstatus' \
--header 'authorization: Bearer MyAccessToken' \
--header 'cache-control: no-cache' \
--header 'content-type: application/octet-stream'
Here is the error:
{
"error": {
"errors": [{
"domain": "youtube.quota",
"reason": "quotaExceeded",
"message": "The request cannot be completed because you have exceeded your quota."
}],
"code": 403,
"message": "The request cannot be completed because you have exceeded your quota."
}
}
I had the same issue and found out that the "Queries per day" limit was set to 0. I created a new project, with a new key. The new project got a quota of 10k per day. Problem solved.
All Google APIs have quotas. This is the number of requests that you can make over a given amount of time. Some of the quotas are based per day others can be per second or per hour.
{
"error": {
"errors": [
{
"domain": "youtube.quota",
"reason": "quotaExceeded",
"message": "The request cannot be completed because you have exceeded your quota."
}
],
"code": 403,
"message": "The request cannot be completed because you have exceeded your quota."
}
}
Its a little hard to tell which quota this is you are hitting i am gong to have to guess its one of the daily quotas. Once you hit this quota you will not be able to make any more requests until midnight West Coast USA time this is when your quota will reset.
If you go to the Google developer console and check the quota tab under the YouTube API some of these quotas can be increased by clicking the little pencil icon and seeing the number up. Contacting google will not help you in this case we all have the same quota for the API contacting them and asking for more wont help they are just going to tell you to increase it yourself.
It would also be a good idea for you to go though what requests you are making so that you are only requesting the data you really need rather then making a large number of requests for data you may not really need.
Note: I believe the upper limit for uploading videos per day is between twenty five and fifty. There is no way to increase this number it is a hard set quota.
In early Oct 2020, I get this error too. FYI, my quota, on a fresh project and new fresh client after one attempt to upload one video (unsuccessful) shows 9,600 queries and there is a 10,000 query limit per day. Something seems broken. On https://console.developers.google.com on the OAuth consent screen, I do note that Scopes for Google APIs does not include YouTube video upload. If you have installed YouTube Data API v3, you can see that "../auth/youtube.upload" is one of the scopes available to add, but it is "Sensitive" and requires that your app be reviewed. Like, what app, Google? I'm just personally writing a script on my laptop to upload my videos to my own channel to save time. That should be an exception, but I get "Because you've added a sensitive scope, your consent screen requires verification by Google before it's published." Okay, sooo... "To protect you and your users, Google only allows applications that authenticate using OAuth to use Authorized Domains." In other words, not possible unless I write my script to run on a server?
Sharing some things we found out the hard way:
Quota:
The Quota number you see in google console equals "quota units", not "number of requests". For context, one insert request costs 1600 units.
When we first enabled the Youtube Data API on Google console, it gave us up a quota limit of 10000 but the "current quota" was set to 9600, so no video upload was possible. Just wait 24 hours.
Make sure to get authentication right first since the API counts "unauthorized" requests in the quota. That means 6 failed upload requests = 9600 quota = retry in 24h. Use something lighter like a list(my channel) request.
Auth:
Do not create a separate channel. Create a channel on your registered Gmail. You should be able to see your channel when shooting a list(my channel) request. The quota message still applies (and counts units) here, even if you are trying to upload to a channel that does not exist.
Service keys (used for machine-to-machine auth) don't work. Quota on those bound-to-fail requests still applies. You need to use OAUTH2. This standalone-scripts guide worked for us. Parts of the sample code provided will automatically handle fetching/refreshing the tokens for you.
Hello for resolve the problem you must use accessToken an apiClient and not that of the console oAuth Google. Api Client Youtube
When I use accessToken of this console not working... :) Google oAuth Console
I had the same problem BUT in Logger of Google Ads (from scripts section of Google Ads account).
I know that limit is about 10k quota units.
New day has come but limit hasn't updated.
I deleted script from Google Ads, then created again and signed in Youtube account - and script started working.
Maybe this will help someone
Related
My internally used web solution to retrieve YouTube video statistics that is based on this example (https://developers.google.com/youtube/v3/quickstart/js) now fails to work. Not sure when exactly it happened, but it used to work couple of months ago.
I now tried to run unedited example code (apart from adjusting the CLIENT_ID, of course), and I am getting exactly the same error:
{
"domain": "usageLimits",
"reason": "accessNotConfigured",
"message": "Access Not Configured. YouTube Data API has not been used in project 123 before or it is disabled. Enable it by visiting https://console.developers.google.com/apis/api/youtube.googleapis.com/overview?project=123 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=123" } ], "code": 403, "message": "Access Not Configured. YouTube Data API has not been used in project 123 before or it is disabled. Enable it by visiting https://console.developers.google.com/apis/api/youtube.googleapis.com/overview?project=123 then retry. If you enabled this API recently, wait a few minutes for the action to propagate to our systems and retry."
}
When I check the YouTube API in developer console, it shows enabled status, and the Credentials compatible with this API include the ID used to authenticate the client. I can see the statistics for credential use increment when I retry the API call attempts, and the metrics reflect the number of requests and also show that the error rate is 100%. But there is no extra info on those failed attempts in the console to help on debugging the problem.
I have deleted and recreated API key and OAuth key, but that did not change anything.
Had there been any extra info on those errors on the developer console side, for example client quote exceeded, I could see how to fix this. Now I am completely stuck.
Create a new project
Weirdly, creating a new project just gets the API to work properly!
The error message is unfortunately a red herring: your project's access to YouTube Data API Services is automatically disabled after a 90 day inactivity period.
You should have received a notice via email regarding this action, which also contains the steps that need to be taken to regain access: please fill out and submit the exceptions form.
Try to start a new Project with new oAuthCliedID & oAuthClientSecret
What seems to have done it for me after a lot of fiddling was to:
Go to the OAuth consent screen of the project.
Enter an Application name.
Press Save.
Lo and behold, after 5 minutes it started working.
I send the message via SparkPost API with option sandbox=true.
I get error "Fatal SparkPostError: Exceed Sending Limit"
I can't find description of the error in DOCs, Google or stackoverflow.
Anybody know what issues with sandbox of SparkPost? How much is limit for sandbox? When does it refresh?
The sandbox options allows you to send using the #sparkpostbox.com domain. It is currently limited to 50 sends for the lifetime of the account. At this time you should have a verified sending domain to use going forward. If you are looking for information on testing using SparkPost, take a look at this support document: https://support.sparkpost.com/customer/portal/articles/2361300.
Here is the error message:
"code": 403, "message": "Calendar usage limits exceeded."
But when I check in google developer console, there is no API limitation being hit. And have nowhere to check what is the limitation I am facing.
(I am creating around 150 events per day, I have a master account, and I using this account for inserting events for other account under the same domain, any suggestions are welcome)
After two days intense testing, finally find the error, we have an same attendee for every event, after delete this attendee, everything works again.
I'm using MailChimp v2.0 API at the moment to replicate, update and then send mail campaigns. All so far so good, but occasionally I'm getting this curious error when I call campaigns/send
{
"status": "error",
"code": -99,
"name": "Campaign_EgpPrediction_Exception",
"error": "Campaign_EgpPrediction"
}
If I try again, it may work. Seems sporadic.
Workflow: I replicate one of our standard campaigns then get the new ID, then with this ID I update the title, make it a URL-driven campaign by updating the url value, move it to a folder, then send it.
All the other API calls are successful, just the send sometimes says that.
I can't find reference to the error anywhere in MailChimp docs, I have asked their API support team but whilst I'm waiting...
This is caused by a predicted bounce rate warning. After I went ahead and sent the campaign despite the warning (which doesn't exist in MailChimp's documentation) I got the following from the compliance team shortly afterwards:
This is a note from the MailChimp compliance team. Omnivore, our automated abuse prevention system, detected a recent campaign that generated a bounce rate which exceeded allowable industry thresholds. Noting the account received an above threshold bounce rate, Omnivore has detected that this list requires removal from our system before we would be able to reactivate the account.
As a bulk delivery service we are required to enforce the industry thresholds that ISPs, anti-spam groups and corporate email protection services set regarding spam complaints, bounces and unsubscribe requests. When rates exceed industry thresholds, as your campaign did, Internet Service Providers can block service to the entire MailChimp ecosystem.
Keeping this in mind, the list must be removed from the account before we are able to support further sending. Because a list cannot be deleted for 7 days following a campaign send, we do ask that these contacts be bulk unsubscribed from the list following the instructions provided
So, it looks like the system will warn you with this error message via then API and then let's you send it anyway if you persist!
I hope this helps someone else in the future from sending to a list that may cause you larger problems later.
I'm trying to get the google translate API up and running. On the getting started guide, it gives the following example: https://www.googleapis.com/language/translate/v2/detect?key={MyAppId}&q=google+translate+is+fast
I just want to get this working for now, so I'm just trying to get it working view via a browser post, so I created a testing web application (screenshot):
and grabbed the API key, replaced the sample URL's key with my API key. I get the following response:
{
"error": {
"errors": [
{
"domain": "usageLimits",
"reason": "dailyLimitExceeded",
"message": "Daily Limit Exceeded"
}
],
"code": 403,
"message": "Daily Limit Exceeded"
}
}
I should also note, that I have signed my account up with the billing option (I plan on using the service quite a bit), so I should have no issues at the moment.
I'm obviously doing something wrong, but I don't know what. Any suggestions?
For getting data translated you have to enable billing and have to register your credit/debit card.After you register your card 1$ will be deducted and then you will be able to use your URL
I did it recently and it worked fine.
I am also working on translating project nowadays.
Let me know if you need any kind of help on this topic
Ishan
I would first confirm that the Translate API is enabled under the "APIs" link in the Cloud Console - if it is not enabled, that effectively sets the quota to zero and may produce a similar message.
If the API is enabled, then the following link describes how to check the usage limits for your project:
https://developers.google.com/translate/v2/pricing
You can change the quotas manually:
to complement #Ishan Arora, after you add the credit card info, go to the console, enter into the project, a message will popup asking to setup the billing account for your project, if you want to get ride of the error, just select "set project into the billing account" drop down list.
On my case, the same problem was caused by credit card expiration