I have a few questions about the Youtube Data API quota increase process.
Is it possible to request an increase if you have not yet released your app? Because mine is currently under development, and the 10,000 quota is only really enough for some development testing. If it is possible, is there anything I will need to do different in the application?
And how extensive do these documents need to be:
"Send documents (e.g., design documents, etc.) relating to your implementation, access, integration and use of YouTube API Services by each of your API Client/If the API Client is not accessible publicly, please upload a detailed screencast of each YouTube API Service functionality and YouTube data, content and information as displayed on, or integrated into, this API Client. *"
Oh, and finally; is 4 million quota reasonable? This number is based on some approx math, but could probably be lowered if it is unreasonable.
Thanks in advance :D
I've currently got 100k quota (received an increase). But I can't really scale it at the moment because costs are high for quota (e.g posting a comment is 50 unitsx20 comments day = 100 users). I'd like to know if anyone has received any quota beyond this, thanks!
https://developers.google.com/youtube/v3/determine_quota_cost
Videos
Does anyone have a script to find YouTube channels that have been inactive for a while but not too long? For example, channels that haven't posted videos or shorts in the last 4 months but have done so in the last 2 years. It would be helpful to include additional filters, such as the language used.
What my project does:
Hey everyone! I work with social media analytics and found myself sourcing data with YouTube API V3 quite often. After looking around for existing wrappers, I thought it would be a fun idea to make my own and deploy it as an open-source package.
So I'm introducing the yt-stats-wrangler, which is now available with a simple pip install (see install instructions on links below). Using a google developer key, the package quickly allows you to gather data from the YouTube Data API V3, and then output them into a specified format of your choice. This includes public data and stats on channels, videos and comments.
My goals were as follows:
Create a modular package that can collect public YouTube data in a logical workflow
Gather Channels -> Gather videos on channels -> Gather stats for videos -> Gather comments on videos
Keep the package lightweight and avoid unnecessary dependencies, but offer optional integration of popular data libraries (pandas, polars) for ease of use
This is the first python package that I have ever released. I would love any feedback whether it be in technical implementation, or organizational/documentation structure. I've also attached an MIT license to the project, so you are free to contribute to it as well! Appreciate you for taking a look : )
Target Audience:
Anyone looking to collect and use YouTube data, whether it be for personal projects or commercial use.
Comparisons:
python-youtube-api
Links:
Github Repository: https://github.com/ChristianD37/yt-stats-wrangler
PyPI page: https://pypi.org/project/yt-stats-wrangler/
Example notebook you can follow along: https://github.com/ChristianD37/yt-stats-wrangler/blob/main/example_notebooks/gather_videos_and_stats_for_channel.ipynb
Try it out with pip install yt-stats-wrangler
Hey, I am planning to use YouTube API, but I'm not sure how the free plan works. When you reach the limit does it just not allow you to use it anymore that day or does it take your money then and upgrades it automatically for the more expensive plan?
i'm trying to upload a short video to my channel by a python script using "Youtube Data Api v3"
its a splitscreen video with some podcast on top and some minecraft gameplay on bottom (you saw them everywhere...)
the problem is when i set that video to public, it immediately get "Terms and policies" Restriction and Visibility go to " Private (locked) ".
then i receive an email that says :
...Our team has reviewed your content, and we think you may need to make changes to make sure it doesn't violate our spam, deceptive practices and scams policy. ...
but when i upload the video manually, it works fine.
can somebody tell me whats the problem and how to fix it?
Hi. I'm building a tool for YouTube creators. This tool is a RoR app, using one API key generated via the 'Google Developers Console'. The dashboard shows me that I have only 10,000 requests per day. Now, this quota is going to get exhausted pretty quickly if there are going to be many users on the app.
My question is - Can I somehow make the 10K limit to a per user basis? Like maybe create this user-specific quota through authenticating the user with my app?
(If it's a noob question, my apologies!)
Ive been taking a look at the Youtube api docs and example code (in Python) and Im just wondering what kind of data can be pulled with it? Is it only for using with your own Youtube account/channel or from one that you have permission to access?
From what I can gather in the comments for these Python samples that does seem to be the case
https://developers.google.com/youtube/reporting/v1/code_samples/python#retrieve_reports
so how do sites like SocialBlade.com get all their data?
thanks
You can get public stats from any Youtube channel with the Youtube V3 API. You will need to apply for a API key. Getting Started
Then you can get the info with an API call such as:
https://www.googleapis.com/youtube/v3/channels?part=statistics&id=[a channel ID goes here]&key=[your API key goes here]
A channel id is in the last part of the url for a channel ex: https://www.youtube.com/channel/UC2C_jShtL725hvbm1arSV9w So the channel ID is UC2C_jShtL725hvbm1arSV9w
i was just messing it with it recently. You can do way more than that. I was able to search and embed video results in my webpage using the api
I've been playing with YT API for a few hours, and mainly practicing searching for videos..
and for each video I'm checking the snippet data (status and stuff)
I left the search params mostly default so I'm getting around 10 results per page only therefore I assume for every time I run my code I hit the API with 11 requests
Again, 1 for listing of videos (search)
$apiUrl = "https://www.googleapis.com/youtube/v3/search?part=snippet&maxResults={$maxResults}&q=" . urlencode($searchTerm) . "&key={$apiKey}&isVideoEmbeddable=true";
and 10 for checking each video's status
$apiUrl = "https://www.googleapis.com/youtube/v3/videos?part=status&id={$videoId}&key={$apiKey}";
Now I estimate I've run my code definitely less than 100x so I'm baffled why I hit the 10K requests per day limit!
confused
There are some things in general for all api of google services. First of all you have to head over to Google developer console and make a new project. Then in Api and Services section enable Youtube data v3 api.
Then create a credential called "api key". This key is what we will use to search using api.
I am assuming you have your key ready.
To search a video by keyword
A1: HTTP Request [ Method:GET URL:https://www.googleapis.com/youtube/v3/search Headers: Query Parameters:key:YOUR_API_KEY part:snippet order:relevance maxResults:50 type:video q:Happy birthday song Body: File To Send: File/Directory To Save With Output:A.txt Timeout (Seconds):30 Trust Any Certificate:Off Automatically Follow Redirects:Off Use Cookies:Off ]
The parameter 'q' is your search term. In parameter 'order' you can search by date, relevance etc. You can also add other filter like date filters. To see entire list of parameters you can use see youtube api v3 search documentation. Note that you can specify the number of results you want in 'maxResults' parameter. Minimum value can be 1 and maximum can be 50.
Channel id: Channel id is important to know if you want to filter video based on a channel. When ever you copy the yt channel url the last string is usually the channel url. For example, in this channel https://www.youtube.com/channel/UCprClSB4iADb0qpUktnRgkw UCprClSB4iADb0qpUktnRgkw is the channel Id.
If the channel url is custom url for example https://www.youtube.com/c/PhnixhamstaSC
Then you need to head over to this site and find the channel id from there.
https://commentpicker.com/youtube-channel-id.php
To get search results from a particular channel only, simply add 'channeld' parameter.
A1: HTTP Request [ Method:GET URL:https://www.googleapis.com/youtube/v3/search Headers: Query Parameters:key:YOUR_API_KEY part:snippet order:relevance maxResults:50 type:video q:Happy birthday song channelId:UCj4zC1Hfj-uc90FUXzRamNw Body: File To Send: File/Directory To Save With Output:A.txt Timeout (Seconds):30 Trust Any Certificate:Off Automatically Follow Redirects:Off Use Cookies:Off ]
To get all videos of a particular channel sorted by date of upload.
A1: HTTP Request [ Method:GET URL:https://www.googleapis.com/youtube/v3/search Headers: Query Parameters:key:YOUR_API_KEY channelId:UCj4zC1Hfj-uc90FUXzRamNw part:snippet order:date maxResults:50 Body: File To Send: File/Directory To Save With Output:A.txt Timeout (Seconds):30 Trust Any Certificate:Off Automatically Follow Redirects:Off Use Cookies:Off ]
Simply don't specify the 'q' parameter and it will list all videos from a particular channel.
How to get more than 50 results.
Youtube limits the number of search results to 50. To get more than 50 you have to add an additional parameter to request called 'pageToken'.
If a search output has more than 50 results, output will also contain a 'nextPageToken'. You have to supply this token as 'pageToken' in subsequent request to get to next 50 results.
Hopefully it might help you and help us depend less on plugins to automate our stuff.
Here is the task to demonstrate youtube search api. You have to set your api key and enable youtube api for this task.
This site updates every 3 hours using YouTube API to show the most viewed videos in the world and across different continents.
Itโs built mainly for fun and curiosity tracking viral trends over time.
Let me know what you think or what you'd add!
Last year we decided to develop this Android app and the plan was to sell it on CodeCanyon as a template. Due to various restrictions of YouTube Data API, the template didn't perform well and hence we removed it. A considerate amount of effort was given to develop this app and it remained unused for almost a year.
Open-source apps and libraries have helped me a lot in my Android development career. So, we decided to open source the app. This app may not follow all the best practices but still, you may find something useful. Also, the app hasn't been updated for almost a year and hence you may find some libraries running on the older versions.
The tech stack of the app is as follows:
Koin for dependency injection
Room
Jetpack Navigation
Retrofit for networking
Coil for image loading
Paging library
Firebase
GitHub Link: https://github.com/aculix/Channelify
Google Play Link: https://play.google.com/store/apps/details?id=aculix.channelify.app
Also, there is detailed documentation on how you can build and customize the app as per your needs.