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!

Potřebujete pomoci?

Líbil se Vám článek? Máte dotaz nebo chcete v této oblasti s něčím pomoci? Neváhejte se na mě obrátit.

mirek@miroslavholec.cz

  • Řešení vývojářských problémů
  • Konzultace
  • Firemní školení a workshopy