Přeskočit na hlavní obsah

Vytvoření a zrušení účelu GDPR

Jak pracovat s účely GDPR přes REST API

Autor: Petr Pech

Účel GDPR spojuje konkrétní záznam s definicí účelu zpracování osobních údajů. Přes REST API se účely nezakládají samostatným voláním — vytvářejí a ruší se vnořenými elementy vytvor-ucel a zrus-ucel uvnitř importovaného záznamu. Tento návod popisuje oba případy včetně toho, jak zjistit identifikátor už existujícího účelu.


Předpoklady

Aby se vnořené elementy provedly, musí být splněné tři podmínky:

  • Zpracování GDPR je zapnuté v nastavení firmy. Dokud zapnuté není, import skončí chybou a nezmění se nic.

  • Definice účelu je ručně generovatelná. Účely, které si ABRA Flexi zakládá sama, přes API vytvořit nelze.

  • Definice účelu je použitelná v dané evidenci. Každá definice je navázaná na typ záznamu, ke kterému patří — definici pro vydané faktury nelze použít na přijatou fakturu.

⚠️ Dokud je zpracování GDPR vypnuté, nejsou dostupné ani evidence ucel a definice-ucelu — dotaz na ně vrací chybu akcePristupOdepren.


Vytvoření účelu

Účel se vytvoří elementem vytvor-ucel uvnitř záznamu evidence, která GDPR podporuje:

<?xml version="1.0"?>
<winstrom version="1.0">
<faktura-vydana>
<!-- záznam, může být z kterékoliv podporované evidence -->
<id>code:FAKTURA1</id>
<!-- lze normálně uvést další vlastnosti záznamu jako při běžném importu -->
<vytvor-ucel>
<definiceUcelu>code:DEFINICE</definiceUcelu>
<poznam>Uživatelská poznámka</poznam>
<!-- nepovinné -->
</vytvor-ucel>
</faktura-vydana>
</winstrom>

Element vytvor-ucel přijímá:

Element

Povinný

Popis

definiceUcelu

ano

Odkaz na záznam evidence definice-ucelu. Lze uvést číselné ID i zkratku ve tvaru code:.

poznam

ne

Uživatelská poznámka k účelu.

Samotný záznam, ke kterému účel patří, se identifikuje stejně jako při běžném importu — číselným ID, zkratkou nebo externím identifikátorem.

ℹ️ Ve návratových hodnotách je jako updated uvedený nadřízený záznam, nikoli účel — vytvořený ani zrušený účel se do created a deleted nepočítá. Import s parametrem ?dry-run=true pouze zkontroluje vstup a účel nevytvoří.


Zrušení účelu

Účel se od záznamu odváže a smaže elementem zrus-ucel, do kterého se uvede identifikátor účelu:

<?xml version="1.0"?>
<winstrom version="1.0">
<faktura-vydana>
<!-- záznam, může být z kterékoliv podporované evidence -->
<id>code:FAKTURA1</id>
<!-- lze normálně uvést další vlastnosti záznamu jako při běžném importu -->
<zrus-ucel>
<id>1</id>
</zrus-ucel>
</faktura-vydana>
</winstrom>


Zjištění identifikátoru účelu

Identifikátor účelu se získá dotazem na konkrétní evidenci. Evidence, které GDPR podporují, obsahují relaci ucely:

GET https://demo.flexibee.eu/c/demo/faktura-vydana/1.json?relations=ucely

Odpověď obsahuje identifikátory účelů navázaných na záznam:

{
"winstrom": {
"@version": "1.0",
"faktura-vydana": [
{
"id": "1",
"ucely": [
{ "id": "1" }
]
}
]
}
}

Podrobnosti o účelech vrací samostatná evidence ucel — kromě navázané definice obsahuje i platnost účelu a příznaky pozastaveno a vyreseno:

GET https://demo.flexibee.eu/c/demo/ucel.json?detail=full

Evidence s relací ucely

Relaci ucely mají tyto evidence:

Oblast

Evidence

Adresář

adresar, kontakt

Faktury a ostatní pohledávky a závazky

faktura-vydana, faktura-prijata, pohledavka, zavazek

Obchodní doklady

objednavka-prijata, nabidka-vydana, poptavka-prijata a další obchodní doklady

Peněžní a interní doklady

banka, pokladni-pohyb, interni-doklad

Sklad

skladovy-pohyb

Smlouvy a zakázky

smlouva, zakazka

📝 Neznámý název relace API tiše ignoruje — v odpovědi se pak žádná relace neobjeví. Pokud v odpovědi klíč ucely chybí, evidence GDPR nepodporuje, nebo je zpracování GDPR vypnuté.


Chybové stavy

Všechny níže uvedené případy vracejí 400 a celý import se neprovede:

Kód chyby

Příčina

gdprVypnuto

Zpracování GDPR je v nastavení firmy vypnuté.

definiceUceluNegener

Uvedená definice účelu není ručně generovatelná — účely podle ní zakládá ABRA Flexi sama.

definiceUceluNeVEvid

Uvedená definice účelu není použitelná v evidenci, do které importujete.

nestedObjectNotFound

Element definiceUcelu odkazuje na neexistující definici účelu, nebo element id uvnitř zrus-ucel na neexistující účel.


Související

Dostali jste odpověď na svou otázku?