I know Youtube is doing semantic annotation using Freebase API. When does a new video get assigned a freebase topic? How many hours does it take? Is there any API for setting a trigger when these annotations are ready?
Annotations are produced in the order of minutes after upload but they show up in API calls around 2 to 4 hours later.
Related
It seems that the YouTube API doesn't give updated results for mostPopular videos in my country since few days.
Example:
This request (https://www.googleapis.com/youtube/v3/videos?part=snippet,contentDetails&chart=mostpopular®ionCode=FR) doesn't give me the same videos results than the ones displayed directly on YouTube for the French most popular channel (https://www.youtube.com/channel/UCmzy72gDEpfXoFV9Xdtd0DQ). It seems that the results of this request is not updated since the 1th of february. Results was real time updated before this.
Does someone know if something is wrong with my API request, or if there are some issues with the YouTube API at this moment?
There is nothing wrong with your request. This is a known issue with the YouTube API reported here for Saudi Arabia (but also applicable to multiple regions), and another related issue here with regard to content from France.
Your best bet would be to follow up with the YouTube team on one of those defects, or potentially (and dangerously) scrape the YouTube site for the correct results.
Problem seems to be solved since 13th of february (maybe someone from Google have seen my post..)
YouTube Channels and chart=mostPopular parameter data are separate data entities, aka you will get different results. They may be related but there is no guarantee you will get the same data. To get the data that you want you may need to query for channel itself and its videos.
I got this information from the thread #Jal linked, there was an update by matthewc...#google.com a few days ago:
The most popular channel for Saudia
Arabia and
the mostPopular chart parameter in the video.list
call
are separate and distinct entities. If you'd like to get the content
of the most popular channel for Saudia
Arabia
please use the Data API video.list call to list the videos with the
channel ID (in this case "UCWY-_j1MCth6yf24m58Bh_Q") by setting the
items/snippet/channelId parameter.
My current concern right now is that there is supposedly a way to get video information from the videos.list endpoint using a channelId, which does not seem the case in the API Explorer. I will update my answer once I figure out what this person meant exactly.
I am trying to use the youtube query API. From the google developers page, I got this sample:
https://gdata.youtube.com/feeds/api/videos?q=football+-soccer&orderby=published&start-index=11&max-results=10&v=2
But this does not work. What I really want to do is find a list of videos, not more than 10 min in length but with views more than 10,000, launched within the last 30 days.
This is the old depriciated API. Use the new V3 Api https://developers.google.com/youtube/v3/?hl=en
I noticed in the V3 API under Parameters there is a parameter called: suggestions.editorSuggestions[].
One of the items it takes is videoStabilize – The video appears shaky and could be stabilized.
Would this actually stabilize the video through the API or just offer it as a suggestion to the video owner? If the latter is there a way to stabilize through the API?
At the moment, the API response will offer that suggestion, but not let you act on it.
That being said... this upcoming Google I/O session is relevant to your question.
As pointed out in the question How do I fetch comments in version 3 of the YouTube API?, there is currently no way of fetching video comments using version 3 of the YouTube API. Now I'm trying to figure it out using version 2 instead.
What I want is the latest comment on any of my uploaded videos, in other words the latest comment in the "aggregated" comment feed of all my videos.
It seems like the only way to do this is too fetch all videos, and then make a call for each of them to get the comments. With a few hundred uploaded videos, this becomes very expensive in terms of number of API calls and total time for completion.
Is there a simpler and/or better way?
There's no way to be "notified" via the API when a video gets a new comment, so you're going to have to do some polling. The comments feed for a given video id, e.g. https://gdata.youtube.com/feeds/api/videos/fhWaJi1Hsfo/comments?v=2 for video id fhWaJi1Hsfo, is sorted in reverse-chronological order by default, so the last comment added should always be first in the list of entries.
Making a request for the comments feed of several hundred videos, even if you do that a couple of times a day, doesn't sound like an unreasonable amount of traffic. You should follow the best practices outlined in this blog post if you do run into any quota issues, though.
Is there a way to manage (create, update) annotations using the YouTube API?
I have a few hundred videos on YouTube that I would like to add annotations to.
There's an existing feature request for API access to annotations tracked at https://code.google.com/p/gdata-issues/issues/detail?id=558
I'd recommend "star"ing that feature request to be notified of any updates.
Update: It is possible to update InVideo programming annotations, but only those types. See http://www.youtube.com/watch?v=rqtuSRe3QLo
No, this is not supported.
The YouTube Data API v3 does allow you to create Invideo programming annotations and watermarks.
Unless it's just come out, there isn't a documented way of doing anything with annotations via the API yet. I'd be surprised if that kind of support doesn't appear soon, though.
Some time Annotation makes irritate users but sometimes useful to instruct redirect to other topics.
Note: YouTube Discontinued Annotations because it's not working on mobile & second reason is that 70 % user watch YouTube videos on mobile so for better serve youtube took this type of decision.
Please Watch This Video for full clarity: https://youtu.be/Awl1TTUSY78