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.
Related
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
From everything I have researched I have not been able to find a way to grab past subscriber count on a certain date. If I can't do it through Youtube API is there any other site that would have this kind of data I could grab for a bunch of different channels?
I'm not sure if this is possible with all of the updates to YouTube showing rounded subscriber counts. I would recommend checking out the YouTube Analytics & Reporting APIs at https://developers.google.com/youtube/analytics. Other than that, I would say not.
If you look at YouTube V3 Docs it will say
YouTube uses playlists to identify special collections of videos for a channel, such as: (...) watch history (...).
Now, if you go to Channels List API and make a call for part=contentDetails&mine=true it will list your information but watchHistory will appear as HL and watchLater as WL.
It makes me wonder, and so far I couldn't find any explicit mention, from Google/YouTube, were those playlists removed from API? IS there any way to actually get that information from an authenticated user?
For quite some time I observed the same values you mentioned on various channels. According to the docs, watch history and watch later playlists are deprecated.
According to google support:
Use Messages to send private messages to other members of the YouTube
community. [...] The messages system utilizes Google+
messaging so your channel must be connected with a Google+ in order to
use this feature.
https://support.google.com/youtube/answer/57955?hl=en
Is it possible to send direct messages to followers via youtube or google plus API?
I think the closest thing that's currently implemented is the Subscriptions resource, which
"contains information about a YouTube user subscription. A
subscription notifies a user when new videos are added to a channel or
when another user takes one of several actions on YouTube, such as
uploading a video, rating a video, or commenting on a video." [source]
So your subscribers should be getting a notification when you upload a video or do something similar anyways. If you wanted to message each of them directly, I suppose you could use Subscriptions.list() with mySubscribers to get your list of subscribers, but I don't think there's a way to mass message them programmatically (seems like it could be easily abused).
I'd like to create a Youtube app that rewards users after they have watched a certain number of my Youtube-channel's videos - or that rewards "experience points" based on the amount of time spent watching my channel.
Can I query the Youtube API to see if an authenticated user has watched a specific video associated with the app?
Seems like I can query against "likes" and "dislikes" - but curious if anyone has tracked "watch-time" or just "watched" in general.
My hesitation here is that I don't want access to a user's full history - I'd like a very unobtrusive approach to connecting authenticated users to specific video content.
I'm not seeing an API endpoint for querying or notifying if an associated Youtube video has been seen. Any help you can provide would be very helpful!
Considering user privacy I don't think you can acces this information. If you search through the API, you'll find that Youtube does come with insights, like viewcount and even demographic information.
It might be a solution to embed your videos in your app and then track which users watch that specific video within the app.
Inside your app catch the the onStateChange event to log that a user viewed a video. It will only work for video they view from inside your app.