Cannot get samples to work with youtube-api; authorization problems - youtube-api

I'm trying to run sample: https://github.com/youtube/api-samples/blob/master/python/search.py and am getting errors. That is, I'm unsure what to replace DEVELOPER_KEY with.
Since I'm guess I'm not using OAuth, I should have Public API, but am unsure how to proceed, since all I want to do is run from terminal this script and get some output.
I've tried creating Server Public API access with ip set to 0.0.0.0/32; but when trying to run this sample with API key I get the following error:
An HTTP error 403 occurred:
{
"error": {
"errors": [
{
"domain": "usageLimits",
"reason": "accessNotConfigured",
"message": "Access Not Configured. Please use Google Developers Console to activate the API for your project."
}
],
"code": 403,
"message": "Access Not Configured. Please use Google Developers Console to activate the API for your project."
}
}
Ideally, my goal is to run a search query, get top few videos and print their view count.
EDIT:
I've opted out for using server API access with any key accepted. I fiddled with 0.0.0.0/32 because I misunderstood if I left the field blank any IP would be accepted. Now it works.

First you need to register your application.
STEP 1.
Creat a project. It's a large button you cannot miss him !
STEP 2.
Go in your project in the section APIs
Search on YouTube API use the version 3. You need to go down the page an enable YouTube Data API v3
Basically YouTube Data API v3 is now to ON
STEP 3.
Go in the section Credentials and click :
Creat a new key
After that, you will have several options :
Two kinds of API keys are available in the Google Developers Console:
Use a server key if your application is running on a server. Never
share this kind of API key outside your server code. For example,
never embed this key in a web page. To prevent quota theft, restrict
your key so that requests are only allowed from your servers' source
IP addresses. Use a browser key if your application is running on a
client, for example from JavaScript or any other client-side
web-browser context. To prevent your browser key from being used on
unauthorized sites, only allow referrals from domains that you
administer.
So after you have your API Key (wich is public)
Then use it in your code !

Related

YouTube Data API v3 quota for query per day set to 0

We are using YouTube Data API v3 for quite some time now but suddenly it started responding with error 403 saying that the access needs to be enabled.
Here is the error message:
{
"code": 403,
"errors": [
{
"domain": "usageLimits",
"message": "Access Not Configured. YouTube Data API has not been used in project {projectId} before or it is disabled. Enable it by visiting https://console.developers.google.com/apis/api/youtube.googleapis.com/overview?project={projectId} then retry. If you enabled this API recently, wait a few minutes for the action to propagate to our systems and retry.",
"reason": "accessNotConfigured",
"extendedHelp": "https://console.developers.google.com/apis/api/youtube.googleapis.com/overview?project={projectId}"
}
],
"message": "Access Not Configured. YouTube Data API has not been used in project {projectId} before or it is disabled. Enable it by visiting https://console.developers.google.com/apis/api/youtube.googleapis.com/overview?project={projectId} then retry. If you enabled this API recently, wait a few minutes for the action to propagate to our systems and retry."
}
We have disable and re-enable all api wee use (youtube-data-api-v3, contacts api, google+ api). We have also try to generate new client-id and client secret without success.
Finally we have noticed that quota for request per day have been set to 0.
This is certainly the raison of why request we can not make any request to API, but we can not change this value.
Anyone have faced this issue before ?
What can i do to raise the limit of the quota ?
See this issue #211012781
Hi. If you're seeing Queries per day quota set to 0 and the API is indeed enabled, then this means that your project’s access to YouTube Data API Service has been disabled.
You should’ve received a notice via email regarding this action, which also contains the steps that need to be taken to regain the project’s access. But just in case you missed it, please fill out and submit the exceptions form below:
https://support.google.com/youtube/contact/yt_api_form?hl=en
It is stated somewhere that you should link to a billing account and then you can raise the limit from zero to anything.

Is the Spotify search API no longer available without authentication?

For years I've been using Spotify's search API for various projects. It has always been available to use without authentication.
Example:
https://api.spotify.com/v1/search?q=kanye%20west&type=track
Now starting just today it is responding with the following
{
"error": {
"status": 401,
"message": "No token provided"
}
}
I can't find anything stating that they've changed their search API, but the docs now say authentication is required.
It has previously stated that requests without an auth token would be rate limited. Now it says a token is required. Does anyone know if they've updated their API, or if this is a permanent thing? I find it hard to believe they would make such a drastic change to their API without notice.
They did update their API. Bummer.
https://developer.spotify.com/news-stories/2017/01/27/removing-unauthenticated-calls-to-the-web-api/
You can find details on how to migrate your unauthorized calls here:
https://developer.spotify.com/migration-guide-for-unauthenticated-web-api-calls/

Google Drive API Download Error 403 Daily Limit -- Ruby

I'm having this daily limit problem with my ruby code when I try to issue a download request. This is a test program so I am running it in my terminal. I just call the ruby file.
I've followed this guide to quickly get into the Google Drive API.My code is pretty similar to that guide other than my scopes which are:
SCOPE = ["https://www.googleapis.com/auth/drive", "https://www.googleapis.com/auth/drive.file", "https://www.googleapis.com/auth/drive.appfolder", "https://www.googleapis.com/auth/drive.metadata"]
The credentials I am using is oAuth Service Key with "other" selected.
This is the line of code making the call.
content = HTTP.get('https://www.googleapis.com/drive/v3/files/' + file_id + "?alt=media").body
This is the error I am getting from the HTTP call.
{
"error": {
"errors": [
{
"domain": "usageLimits",
"reason": "dailyLimitExceededUnreg",
"message": "Daily Limit for Unauthenticated Use Exceeded. Continued use requires signup.",
"extendedHelp": "https://code.google.com/apis/console"
}
],
"code": 403,
"message": "Daily Limit for Unauthenticated Use Exceeded. Continued use requires signup."
}
}
I've followed this link and created all the necessary credentials to get it working, but still have had no success. Google Drive API is also enabled in my project.
How can you fix this error even after you've set up the Google API project and its credentials?
Edit: Wanted to note that I have search and upload working with the same code. Download is the only one that is giving me errors.
All the suggestions given here are not up to the mark . This is a routine error that Drive API throws and can be easily handled .As soon as you get the error , you can again request the Drive API to consider your request by using a strategy called exponential back-off . This ensures that you make a call to Drive API again , after a specified amount of time . There is a documentation about this issue by Google and is a common issue when you send too many requests at a time .Check this link right here, it is the answer to all your problems that you are facing https://developers.google.com/drive/v3/web/handle-errors#errors_and_suggested_actions . And also request an additional Quota from Google Developers Console . Additional quota can be requested under the Quotas tab in Google Developers Console. You might be lacking enough quota to make the request . The details for same are given in the link i posted above. You should create an account and request Quota as being an unauthenticated user your requests won't last long.Use Google OAuth to authenticate yourself into the Drive API.

Google Translate API integration in iOS app

I am trying to do a simple translation using Google Translate in my iOS app but as i call the url, i am getting the following error in response…
{
"error": {
"errors": [
{
"domain": "usageLimits",
"reason": "accessNotConfigured",
"message": "Access Not Configured. Please use Google Developers Console to activate the API for your project."
}
],
"code": 403,
"message": "Access Not Configured. Please use Google Developers Console to activate the API for your project."
}
}
I couldn't find anything close to any solution of this issue.. Please can anyone help here. thanks in advance…
Well after some detailed searching and RnD, i found out that Google Translate API doesn't work with Bundle Identifier in iOS.. People have filed it as a bug on google forums.. So anyone trying hard to solve this can stop the efforts till it is solved..
You need to set ON for the Google Translate API.
Read 3rd step of setup of Getting Started link.
In the sidebar on the left, select APIs & auth. In the list of APIs, make sure the status is ON for the Google Translate API.
And make sure have to enable billing?
Important: Google Translate API v2 requires billing information for all accounts before you can start using the service.
And also have to set API key in proper way?
Since bundle id is optional for Key. So you can escape adding bundle id and enable the billing on. It will work. Try and let me know.
This error comes when you hadn't add the Credit card detail with your Google Cloud account, as rules has changed in which you need to add credit card details if you use Google translate api.

YouTube V3 Api not configured

Trying to access Youtube v3 api using the following link:
https://www.googleapis.com/youtube/v3/search?part=snippet&maxResults=5&q=funny& key=AIzaSyDFiabJG7l7aLfdvsLL1_DqKbZipKLvaI4
which returns
{
"error": {
"errors": [
{
"domain": "usageLimits",
"reason": "accessNotConfigured",
"message": "Access Not Configured"
}
],
"code": 403,
"message": "Access Not Configured"
}
}
The Google Cloud Console is billing enable account for the registered app with a Browser Key as follows;
Access data that comes from a browser, and that is not associated with an account
Api Key
AIzaSyDFiabJG7l7aLfdvsLL1_DqKbZipKLvaI4
Allowed referrers - Any referrer is allowed.
Activated on
Dec 3, 2013 11:11 PM
What are the factors which would cause this condition?
Any referer allowed
Please click Edit Allowed Refers and the removed the bundle id (com.something) and again click update .
And then use same api key hope it will work
I think you haven't enabled access for "YouTube Data API v3" on your project.
Following procedure may solve your issue:
Access to Google Cloud Console
Select your project which uses YouTube Data API v3
Navigate to "APIs & auth" > "APIs", and toggle the switch next to API name.
In some cases, even with the project properly configured it gives the same error. In this case you may need to try one of the following:
Regenerate the key
Edit the allowed referrers
Remove any referrers altogether (if it complies with your project requirements, of course)
Use a Server Key instead of a Browser Key
See this question for more information

Resources