I want to heavily use the Vimeo API (and possibly YouTube too), to get thumbnails for videos. So my question is, are there any limitations to how many calls you can make to both of the services?
I've read on a YouTube FAQ that
If your application does send API traffic in excess of the quota
limits, the API will return a too_many_recent_calls error
My problem with this is that I'm not sure that I actually use the API for YouTube. I get my thumbnail from an URL, which I'm not sure it's qualifying as an API call. The url is something like: http://img.youtube.com/vi/ORdY5xWzKzY/0.jpg
But on Vimeo I'm sure I use the API.
Any ideas to what the limitations are?
Related
In the select scope screen for YouTube Data API v3 you can select the following scope:
Scope risk
API
Scope
User-facing description?
(non-sensitive)
YouTube Data API v3
.../auth/youtube.download
Download your public YouTube videos
To me, it sounds a lot like the API would allow users to download some videos. Since it's a non-sensitive scope, it doesn't even need verification. But as far as I can tell, the API neither supports nor allows downloading videos, not even your own. Then what is this scope for? Can I use it, and if so, how?
I have confirmed that the scope does indeed show up in the Google sign-in that's shown to users.
However, it does not grant access to resources that are available to the .../auth/youtube.readonly scope, which seems to be the scope with the lowest permissions otherwise.
I have also found that the scope is not in the official API reference, or in this list of scopes. As I have not been able to find any more information about the scope, we must assume in the absence of evidence that it cannot be used (by ordinary users) to access YouTube resources, downloading your own public YouTube videos or otherwise.
I can see this answer being improved by any of the following:
A proof that it is in fact possible to access resources with the scope
An official statement concurring with the answer
A proof that shows systematically that none of the API endpoints accept the scope
EDIT: Before any points are confirmed officially by Google, it is important to note, that as per Developer Policies (as #stvar pointed in the comment)
Undocumented Services
You must not use undocumented APIs without express permission. You
must access data from YouTube API services only according to the means
stipulated in the authorized documentation of that YouTube API
service.
You must not reverse engineer undocumented YouTube API services or
otherwise attempt to derive the underlying source code of these API
services.
I created an issue in the official tracker, reporting that the scope appeared but was undocumented. The response stated, however:
This is working as intended. It is not available for public use and therefore will not be documented.
In other words, the scope is intended to appear in the selection screen but cannot be used by ordinary users.
Considering that the scope youtube.download does require OAuth, it is used for downloading videos of the authenticated user, though according to the description of the scope in the YouTube Data API, this seems to only be possible for public videos.
So the clarification here is that whilst you cannot download any YouTube video, it does seem to be possible to just fetch the ones of the current OAuth user.
I want to get data from YouTube via IMPORTXML function in Google Docs.
It used to work before, but now "Imported content is empty."
For example, to get likes, I use the query:
=IF(ISNA(IMPORTXML("https://www.youtube.com/watch?v=MkgR0SxmMKo","(//*[contains(#class,'like-button-renderer-like-button')])[1]"))=TRUE,0,
IMPORTXML("https://www.youtube.com/watch?v=MkgR0SxmMKo","(//*[contains(#class,'like-button-renderer-like-button')])[1]"))
but it is not working now, the imported content is empty.
So, the question is, what query should be to get data.
Your code above is scraping the YouTube site, relying on undocumented features of YouTube's API.
Instead of being in contradiction with DTOS -- e.g. paragraphs D.7 and E.6 --, I would suggest you to use the YouTube Data API's endpoint Videos.list, for obtaining the number of likes of any given video through the property statistics.likeCount.
Here is what DTOS says about undocumented features and scraping:
[D.7] Undocumented Services
You must not use undocumented APIs without express permission. You must access data from YouTube API services only according to the means stipulated in the authorized documentation of that YouTube API service.
You must not reverse engineer undocumented YouTube API services or otherwise attempt to derive the underlying source code of these API services.
[E.6] Scraping
You and your API Clients must not, and must not encourage, enable, or require others to, directly or indirectly, scrape YouTube Applications or Google Applications, or obtain scraped YouTube data or content. Public search engines may scrape data only in accordance with YouTube's robots.txt file or with YouTube's prior written permission.
I am going to implement a python client that search videos on youtube with different queries. Apparently I should use youtube data api for this. Even though I read quata cost I just want to be sure that using youtube api is totally free of charge. Sorry it is too basic.
Yes, using the YouTube API does not incur any monetary cost for the entity calling the API. If you go over your quota an 403 Error will be returned by the API.
Links:
YouTube API Quota DetailsYouTube Quota Calculator
Google already provides a Python client for all of its APIs, including YouTube, which handles authentication, forming and making the API request as well as some datatype translation (i.e. JSON to dictionary, etc.). (link)
Yes it is, but some restrictions like limit you can use only 100000 units per day.
and 3000 per second per 100 user per day. For more quotas you have to apply for it. You can apply key or oauth id at HERE. Hope it will help you.
I want to develop some stuff with the twitter streaming API and twitter4j in university. I read now about shutting down the share-count API (https://blog.twitter.com/2015/hard-decisions-for-a-sustainable-platform). Will this effect the twitter streaming API and how it works in any way? Because I need this service for at least 6 month.
The Share-Count and the Streaming API do not cross paths, actually you can obtain the share-count from the Streaming API data as suggested in this post.
Since they are discontinuing that service, it will have no effect on the data that you're able to obtain from the Streaming API so it won't effect the progress of your project.
As far as GNIP goes, that's overkill, it should not have been suggested at all. For research base, especially during initial stages and possibly later phases, the Streaming API will provide you with excellent amount of data. You can even request a limit increase through Twitter's Sale Department but it's up to them to make the final decision. They can be contacted at data-sales#twitter.com
Share count and streaming are totally separate APIs.
If you need guaranteed access, I suggest paying for Twitter's GNIP service - https://www.gnip.com/
Is there a way to get YouTube audience retention data of a particular video via API? This doesn't seem to be available via API (even in youtube experimental API). Any other way, like parsing the UI data or contacting Youtube to get this data?
Or any idea whether this data will be available via API in near future?
It's a common feature request that we've heard from developers, and there's a good chance that it will be added. I don't have any specific details to share about when that might happen, though.
Your best bet is to file a formal feature request and we'll track things there.