Medium.Client
0.4.1
See the version list below for details.
dotnet add package Medium.Client --version 0.4.1
NuGet\Install-Package Medium.Client -Version 0.4.1
<PackageReference Include="Medium.Client" Version="0.4.1" />
paket add Medium.Client --version 0.4.1
#r "nuget: Medium.Client, 0.4.1"
// Install Medium.Client as a Cake Addin
#addin nuget:?package=Medium.Client&version=0.4.1
// Install Medium.Client as a Cake Tool
#tool nuget:?package=Medium.Client&version=0.4.1
Unofficial Medium API .NET SDK
This SDK was developed based on Unofficial Medium API.
Installation
Install the package from NuGet.org Medium.Client.
Assumptions
You need to have a Rapid API account and subscribe to the Medium API. Follow the steps from the official documentation here.
Configuration
After installing the NuGet package in your project you just need to use the following extension method to add the medium client interfaces to your service collection.
services.AddMediumClient();
Once you have the API Key from Rapid API, you just need to add it in the following variable in your settings file or as an environment variable.
{
"Medium": {
"ApiKey": "your-key"
}
}
How to user it?
In your class you have 2 options to use the Medium client functionalities.
- Option 1 (using the main IMediumClient interface)
public class MyService
{
private readonly IMediumClient _mediumClient;
public Worker(IMediumClient mediumClient)
{
_mediumClient = mediumClient;
}
public async Task ExecuteAsync()
{
var user = await _mediumClient.Users.GetListsByUserIdAsync("user-id");
var article = await _mediumClient.Articles.GetResponsesAsync("article-id");
}
}
- Option 2 (using the specific interface)
public class MyService
{
private readonly IUserClient _userClient;
public Worker(IUserClient userClient)
{
_userClient = userClient;
}
public async Task ExecuteAsync()
{
var user = await _userClient.GetListsByUserIdAsync("user-id");
}
}
Roadmap ✈️
Add in memory mock client implementation to simplify the development. With this, we can try the SDK without having Rapid API access.
Add retry policy.
Give me a star if you like it ⭐
License
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
-
net6.0
- Microsoft.Extensions.Configuration (>= 6.0.0)
- Microsoft.Extensions.Configuration.Abstractions (>= 6.0.0)
- Microsoft.Extensions.Configuration.Binder (>= 6.0.0)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 6.0.0)
- Microsoft.Extensions.Http (>= 6.0.0)
- Newtonsoft.Json (>= 13.0.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.