Miroslav Holec

Software & Cloud Architect

miroslavholec.cz / blog / napojte-se-bleskove-na-idoklad-se-c-sdk

Napojte se bleskově na iDoklad se C# SDK

Miroslav Holec

Miroslav Holec

Publikován 7. dubna 2016

Oblíbený on-line fakturační systém iDoklad má už dlouhou dobu k dispozici RESTful API, díky kterému mohou uživatelé spravovat svou agendu. Pro Cígler Software jsem sestavil open source SDK, které umožňuje se současným API velmi jednoduše komunikovat. Aktuální stabilní verze 1.0.4 má podporu pro .NET >= 4.5 a je dostupná i ve formě NuGet balíčku.

Dostupnost

Současnou verzi iDoklad SDK 1.0.4 je možné nainstalovat jako NuGet package IdokladSdk:

PM> Install-Package IdokladSdk

Pro REST komunikaci je interně použita knihovna RestSharp společně s Newtonsoft.Json. V případě rozšíření SDK je projekt možné pro vlastní potřeby forknout na GitHubu. Knihovna RestSharp bude v dalších verzích dost možná nahrazena vlastní implementací REST klienta.

Použití

Současná verze API vyžaduje pro ověření email a heslo uživatele. Realizace v SDK je řešena pomocí tříd AuthClient a ApiContext.

var authClient = new OAuthClient("your@email.tld", "password");
var apiContext = new ApiContext(authClient.GetSecureToken())
{
    AppName = "Application name",
};

Dále je již možné sestavit vlastní ApiExplorer a dotazovat se na potřebná data. Příkladem budiž vytvoření nového kontaktu z výchozí šablony a jeho odstranění:

var api = new ApiExplorer(apiContext);

// get template for new contact
var template = api.Contacts.Default();

// cast to insert model
var contact = (ContactCreate)template;

// fill new contact
contact.CompanyName = "New Company";

// insert
var addedContact = api.Contacts.Create(contact);

// delete
bool isDeleted = api.Contacts.Delete(addedContact.Id);

Líbí se Vám SDK? Používáte iDoklad a máte nápad jak SDK vylepšit? Napište do diskuse!

Školení ASP.NET Core a Entity Framework Core

Budoucnost platformy .NET bude patřit technologiím ASP.NET Core a EF Core. Přijďte se naučit tyto moderní technologie používat na mém praktickém školení.

7.8.2017 - 9.8.2017 ASP.NET Core MVC
11.9.2017 - 12.9.2017 Entity Framework Core