How to get user's subscriptions uploads - youtube-api

I'm currently developing a chrome extension that notifies you when one of your subscribed channels uploads a new video.
Now I'm having trouble finding the correct API method to aquire a list of recent uploads from the users subscribed channels, for example the list the user sees when he visits: https://www.youtube.com/feed/subscriptions
I maybe know about a workaround, but that would be overkill: list all subscribed channels, and for each one of them list the latest videos of the uploads playlist (would be 2 requests per channel i think)
Can anyone help me out here? Thanks in advance!

There is not an exact equivalent but you can get close with
youtube.activities.list(part=”snippet”, home=true)
then filter the one with snippet.type = upload
Was already answered here.

Related

Can I get a YouTube user's session data from the YouTube API?

I am a teacher and I have a YouTube channel with videos for my students. Every time one of my students see a video, I would love to know how he interacted with it: where he has paused it , where he has rewinded it, etc. This would help me in knowing the parts of the video that are difficult to understand.
My question is: is it possible to get all this data from a user's session? Specifically, can I get these detailed raw data from YouTube APIs?
From what I have explored so far, it seems that it is not possible, as YouTube APIs only seem to send "aggregated" data (example: total number of views of a video) or "properties" (example: title of the video).
I would really just need a Yes/No answer to my question, just to know if I am not waisting my time in exploring the APIs as a solution to my problem.
Thank you.
Yes and no,
But here is a more detailed explanation.
The YouTube Analytics api will give you analytics data on your own YouTube channel, but it wont be user specific you cant track who exactly did something. You may however be able to get some basic information about each video and what was clicked and how much was viewed. video reports But its not going to be user specific you wont know what Mike did as opposed to what Jane did.
The YouTube Data api will allow you to manage your own YouTube Channel for example upload videos and see subscriptions. It will also let you search for public videos on YouTube.
If you do want user specific then What you are looking for is session data related to user activity. Something like this is not publicly available. Google couldn't share your students activity without the students permission due to GDPR not to mention the fact that tracking anyone under the age of 13 would also be against some GDPR laws if i remember correctly.
Even Google analytics doesn't offer websites a decent way of tracking individual users activity on their websites. You can do it but you have to add additional tracking data to your website, and notify users that you are doing it.
SO your answer is yes kind of

How to create channel on youtube to upload videos and is it possible to create channel programmatically?

I am using https://github.com/youtube/yt-direct-lite-iOS sample to upload videos.
But the problem is that without having channel we can not upload video on youtube... New User have to setup channel first.. I want this in my app to create channel after user login( if user has no channel in its account).
When user accept the application authentication then i want to hit this url https://www.youtube.com/create_channel.
and let me know if it is possible to create channel programmatically.
Thanks in advance!
EDIT: You might want to use YouTube Data API.
This supports all possible user features for users in YouTube. In your case that it needs creation/uploading, you will use a SSO Method also supported by the YouTube API.
Cheers!
Went into details and did more reading on this. It seems that you cannot create a channel programatically in iOS or Android. Refer to https://support.google.com/youtube/answer/1646861?hl=en
wherein it has been clarified in Google support.
It also shows how to create channels which answers the first part of your question.
This link might help you. It mentions how to create a channel.

Tracking subs referral

Is it possible using the current APIs to track where one's subscribers are subscribing from?
For example perhaps I want to see how many subscribers an annotation on a certain video (that any user uploaded) generated for my channel.
The closest thing to what you're describing is running a YouTube Analytics API report with
ids=channel==UC...
dimensions=video
metrics=subscribersGained,subscribersLost
sort=-subscribersGained
This will return the top ten videos that led to subscriptions to your channel. But I don't think that videos uploaded in third-party channels that have annotations prompting people to subscribe to your channel will show up on that list. My understanding is that only videos in your own channel will show up on the list, and it might be that only subscriptions made via the Subscribe link on the web page (not via an annotation) would trigger inclusion on that report.
Sorry that I don't have more specific details.

How to get Youtube's Trending Music Feed using its API

Basically, what I want to get is Youtube's Trending Music in UK. I want to get the videos that are recently uploaded and is trending starting with few views.
Example:
http://www.youtube.com/channel/HCp-Rdqh3z4Uc/videos?query=NErAuLQauvw&view=22&feature=g-logo
I am confused which one of the feeds below is more applicable to me.
https://gdata.youtube.com/feeds/api/channelstandardfeeds/most_viewed?time=today&v=2
https://gdata.youtube.com/feeds/api/standardfeeds/UK/on_the_web_Music
Please help me with this. Your answer and ideas will be greatly appreciated. Thanks
Youtube channels usually start with the prefix UC. In this case the channel starts with HC what for as for I know means hidden channel. This means that you can only access them via the api if you have the right credentials.
This channels are maintained by youtube and they do not share that info for third party apps.
So if you want to rip it you will have to make a own webservice that searches the youtube site and stores the video id's or build an html parser or something like that in your application.

Expected delay for youtube feeds?

We switched over to YouTube from a previously developed internal video system, and right now I've got it going on public upload feeds for users. The problem comes when we first got only about a dozen out of 150 or so videos available from the primary user's account. Over time of the day that number rose to about 50, and its stayed there. I found one post on the YouTube API forums about delay, but no word on how long I can expect that.
Anyone have experience about this to tell me what to expect?
Expected latencies can vary, and are documented here (http://code.google.com/apis/youtube/2.0/reference.html) - ways you can minimize it:
1) Upload the video as public. If you upload the video as private first, this will leave the video out of the fast-track indexing
2) Make an authenticated request to the user feed, this will guarantee the freshest data that the API has.
ie. http://gdata.youtube.com/api/feeds/users/username/uploads (with a dev key and auth token for 'username') instead of http://gdata.youtube.com/api/feeds/videos?author=username

Resources