SkillAgentSearch skills...

KuttSharp

🔪 .NET Package for kutt.it url shortener

Install / Use

/learn @avestura/KuttSharp
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

KuttSharp

.NET Package for kutt.it url shortener

⚠️ WARNING

⚠️ KuttSharp currently only supports v1 of the Kutt API. I have no plans to support v2, therefore you might want to look for an alternative.

ℹ️ Since the newer version of Kutt API uses OpenAPI, the best option probably would be to just use an OpenAPI client generator.

Installation

NuGet NuGet Downloads Build status

Simply add KuttSharp nuget package to your project

API

First create a new instance of KuttApi then use examples below:

// Use defualt Kutt server
var api = new KuttApi("apiKey");

// Use a self-hosted Kutt server as string or System.Uri
var api = new KuttApi("apiKey", "https://MyOwnSelfHostedKutt.it")

Submit

var submitedItem = await api.SubmitAsync(
      target: "https://example.com",
      customUrl: "customUrl",
      password: "password",
      reuse: true
    );

// Now you can use properties of created item
if (submitedItem.IsPasswordRequired)
{
    Console.WriteLine(submitedItem.CreatedAt.Year);
}

Delete

await api.DeleteAsync(id: "url_id");

GetUrls

var list = await api.GetUrlsAsync();
Console.WriteLine($"First item visits count: {list[0].Visits}");

GetStats

var stats = await api.GetStatsAsync(id: "url_id");

Console.WriteLine(stats.LastWeek.ClientStats.Referrer[0].Name);

Error handling

var api = new KuttApi("apiKey");

try
{
    var result = await api.SubmitAsync("https://example.com", reuse: true);
}
catch (KuttException kex) when (kex.Message == "No id has been provided.")
{
    // Handle custom kutt exception
}
catch (KuttException)
{
    // Handle all other kutt exceptions
}
catch
{
    // Handle other errors
}

Related Skills

View on GitHub
GitHub Stars30
CategoryDevelopment
Updated2y ago
Forks5

Languages

C#

Security Score

80/100

Audited on Jan 31, 2024

No findings