Soenneker.YouTube.Client
11.0.2495
Prefix Reserved
dotnet add package Soenneker.YouTube.Client --version 11.0.2495
NuGet\Install-Package Soenneker.YouTube.Client -Version 11.0.2495
<PackageReference Include="Soenneker.YouTube.Client" Version="11.0.2495" />
<PackageVersion Include="Soenneker.YouTube.Client" Version="11.0.2495" />
<PackageReference Include="Soenneker.YouTube.Client" />
paket add Soenneker.YouTube.Client --version 11.0.2495
#r "nuget: Soenneker.YouTube.Client, 11.0.2495"
#:package Soenneker.YouTube.Client@11.0.2495
#addin nuget:?package=Soenneker.YouTube.Client&version=11.0.2495
#tool nuget:?package=Soenneker.YouTube.Client&version=11.0.2495
Soenneker.YouTube.Client
Provides a lazily created YoutubeExplode.YoutubeClient for reading public YouTube metadata and media streams.
Install
dotnet add package Soenneker.YouTube.Client
Registration
using Soenneker.YouTube.Client.Registrars;
services.AddYouTubeClientUtilAsSingleton();
Scoped registration is also available:
services.AddYouTubeClientUtilAsScoped();
Each provider owns its cached HTTP client. Scoped providers use independent cache entries, so disposing one scope does not remove another scope's client.
Usage
public sealed class VideoReader
{
private readonly IYouTubeClientUtil _youtube;
public VideoReader(IYouTubeClientUtil youtube)
{
_youtube = youtube;
}
public async Task PrintTitle(string videoUrl, CancellationToken cancellationToken)
{
YoutubeClient client = await _youtube.Get(cancellationToken);
var video = await client.Videos.GetAsync(videoUrl, cancellationToken);
Console.WriteLine($"{video.Title} — {video.Author.ChannelTitle}");
}
}
The package does not use the official YouTube Data API and does not require an API key. Behavior follows YouTubeExplode and can be affected by changes to YouTube's public site.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net11.0 is compatible. |
-
net11.0
- Soenneker.Utils.HttpClientCache (>= 11.0.2139)
- YoutubeExplode (>= 6.6.3)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 11.0.2495 | 0 | 10/27/2026 |
| 11.0.2494 | 39 | 10/26/2026 |
| 11.0.2492 | 48 | 10/26/2026 |
| 11.0.2490 | 42 | 10/26/2026 |
| 11.0.2489 | 43 | 10/26/2026 |
| 11.0.2488 | 47 | 10/26/2026 |
| 11.0.2487 | 46 | 10/26/2026 |
| 11.0.2486 | 55 | 10/26/2026 |
| 4.0.2485 | 57 | 10/25/2026 |
| 4.0.2484 | 105 | 10/15/2026 |
| 4.0.2483 | 90 | 10/15/2026 |
| 4.0.2482 | 86 | 10/14/2026 |
| 4.0.2481 | 87 | 10/14/2026 |
| 4.0.2478 | 102 | 10/14/2026 |
| 4.0.2471 | 85 | 10/13/2026 |
| 4.0.2470 | 100 | 10/13/2026 |
| 4.0.2467 | 93 | 10/12/2026 |
| 4.0.2466 | 99 | 10/12/2026 |
| 4.0.2465 | 96 | 10/11/2026 |
| 4.0.2464 | 100 | 10/11/2026 |
Remove redundant framework conditions