Hey Reader,
I've always been curious about tinkering with YouTube's API using .NET—like fetching all the videos from any channel, updating video descriptions, and more. If that sounds like your cup of tea, you'll want to stick around.
In the latest video, I walk you through the initial steps for working with the YouTube API via a .NET Web API. We kick things off by securing the necessary credentials and proceed to list out all the videos from any channel (yes, not just yours!) in an easy-to-read format using a Data Transfer Object (DTO). Check out the video below.
If you're someone who'd rather dive straight into the code, no worries, I've got your back.
First things first, grab the "Google.Apis.YouTube.v3" NuGet Package.
To obtain your YouTube API key, just follow the guide over here: YouTube API Getting Started.
Let's jump into coding!
Initially, you'll want to build two models: one for the specific video details and another for the collective response. We'll only need one controller method to get this rolling.
Now onto crafting the controller method. I've included two parameters: a pageToken and the max number of results. Please note, the API caps your request at 50 results, so the pageToken is your ticket to more.
We'll initiate by creating a YouTubeService instance and laying out the search query.
With the ChannelId, you can specify the channel you want the videos from—and this can be any channel, not just your own! We then sort the videos by their release date and request for a "snippet", which will return just the relevant info like title, description, and thumbnails. After that, we execute the query and build our response in a way that's more convenient for us.
Lastly, we formulate our YouTubeResponse using the list of videos and the tokens for navigating to the next and previous pages.
That's the whole shebang!
For the full code rundown, either watch the video or head to my Patreon for the repository download.
💌 If you've got questions or particular topics on your mind, just hit 'reply'—your feedback is golden. A big shoutout to everyone who makes this community so awesome! 🙌 Extra gratitude to my Patrons for powering this newsletter and the YouTube channel.
Catch you on our next coding adventure. Take care and code on! 💻
Patrick
Become a .NET & Blazor expert with weekly tutorials featuring best practices and the latest improvements, right in your inbox.
Hey Reader, If you're building apps with Blazor, you've probably asked yourself this: 👉 Should I use SSR, Blazor Server, or WebAssembly? It’s a common question - and I get it a lot. So I made a brand-new YouTube video walking you through how to choose the best one for your app. 🎥 Watch it here: If you're building a Blazor app or planning to do so soon, this should help clear up a lot of confusion. Let me know what you think, and feel free to reply if you have any questions. Take care, Patrick...
Hey Reader, You may have seen the recent blog post from Jimmy Bogard (creator of MediatR and AutoMapper) announcing that these libraries are going commercial. And to be clear, I fully support that. Time is money, and supporting your family always comes first. BUT… In most of my projects, I don’t actually use everything MediatR offers. I usually just need a small part of it, the classic "send a request, get a response" pattern. So I thought: why not build a simple version myself? 👉 That’s...
Hey Reader, In my last video, I showed you how to build a CRUD app using Vertical Slice Architecture and controllers in .NET 9. But… What if you could do the same thing - cleaner, simpler, and without all that controller clutter? 👉 That’s exactly what I show you in my brand-new video: In this one, you’ll learn how to: Use Minimal APIs instead of controllers Keep your Program.cs neat and tidy Stay fully organized with the Vertical Slice Architecture Work with Carter, a super helpful library...