Data je přes REST API CovIT možné posílat ve verzích:

               1. Form data

               2. JSON

V první verzi jsou metody na import nových záznamů, update existujících a možnost stažení informací o uživatelské registraci GARG testu. Další metody, jako na odesílání SMS apod., budou následovat brzy. Metody pro import dat a aktualizaci dat jsou asynchronní, vrací identifikátor úlohy. Je možné dotázat se na průběh procesu, který může být v rozsahu 0-100. Záporné hodnoty znamenají chybu.

Datové soubory jsou identické jako pro ruční importy a popis je přes https://confluence.imtm.cz/x/ShwCAg, https://confluence.imtm.cz/x/sxwCAg

Testovací prostředí:
autentizační klíč (auth=XXX) je generován pro každé laboratoř samostatně
- URL adresa: https://apptest.imtm.cz/covid19/publicapi

Produkční prostředí:
- autentizační klíč (auth=XXX) a je generován pro každou laboratoř jedinečně.

- K připojení na server je nezbytný speciální podepsaný klientský certifikát, který je chráněný heslem.
- URL adresa: https://covitapi.imtm.cz/publicapi
- stažení informací o registraci GARG testu: - URL: https://covitapi.imtm.cz/publicapi/checkgargcode
                                                                      - parametry: 
                                                                                         1.code – platný kód GARG sady
                                                                                         2.auth – autentikační kód                                                                                     
                                                                      - data jsou vrácena jako JSON ve formátu UZIS žádanky
                                                                      - informace o potenciální chybě je v poli výsledek: 
                                                                                         1.ChybnyKod – pole code obsahuje neplatný kód
                                                                                         2.ChybnyAuth – pole auth obsahuje neplatnou autentikaci
                                                                                         3.ZadankaNeexistuje – pole code obsahuje platný kód, ale uživatel nevyplnil registrační stránku
                                                                                         4.ZadankaExistuje – registrace pro daný kód existuje.

                                                                      - příklad stažení žádanky: curl -v -X POST --cert-type P12 --cert /home/cesta/certifikat.p12:HESLO -d "code=S0000000000&auth=AUTHKOD" https://covitapi.imtm.cz/publicapi/checkgargcode


1.Verze odesílání dat přes FORM DATA

Metoda pro import dat

curl -v -X POST -F study=IDLAB -F createNewUzisZadanka=false -F auth=XXX -F file=@/home/petrpa/insert.txt "https://apptest.imtm.cz/covid19/publicapi/importpatients"


Parametry:
               1. study – ID (kód) laboratoře
               2. createNewUzisZadanka – nepovinný parametr, určuje zdali má při importu být vytvořená nová žádanka UZIS
               3. auth – autentizační klíč

Návratová hodnota:
               1. přidělený identifikátor úlohy

 

Metoda pro aktualizaci dat

curl -v -X POST -F study=IDLAB -F writeToClosed=true -F auth=XXX -F file=@/home/petrpa/update.txt "https://apptest.imtm.cz/covid19/publicapi/updatepatients"


Parametry:
               1. study – ID (kód) laboratoře
               2. writeToClosed – určuje, zdali mohou být přepsány hodnoty i v již zavřených formulářích
               3. auth – autentizační klíč

Návratová hodnota:
               1. přidělený identifikátor úlohy

 

Metoda pro zjištění progresu

curl -v -X POST -d "idTask=2&auth=XXX" https://apptest.imtm.cz/covid19/publicapi/progress


Parametry:
               1. idTask – identifikátor úlohy
               2. auth – autentizační klíč

Návratová hodnota:
               1. progres tasku
               2. 0-začátek
               3. 100-ukončeno
               4. Záporné hodnoty – různé chyby


2.Verze odesílání dat přes JSON

Metoda pro import dat

curl -v -X POST -H "Content-Type: application/json" \

-d '{"code":"IDLAB","createNewUzisZadanka":"false","auth":"XXX", "separator":";","data": "firstName;lastName;sex;address;personalID;email;telephone;healthInsurance;city;postalCode;birthDate;param6385;param6406\nAnna;První;F;Brno;111111/1111;pepa@zdepa.cz;111111111;;Brno;61400;01/01/2012;Infekce neprokázána;05/05/2012"}' \

                "https://apptest.imtm.cz/covid19/publicapi/importjson"


Rozhraní /publicapi/importjson přijímá požadavek POST s daty JSON

Parametry:

               1. code – identifikátor laboratoře dle číselníku ministerstva
               2. auth – bezpečnostní kód  vztažený k laboratoři (aby si např. laboratoře neimportovali navzájem)
               3. createNewUzisZadanka – má-li být vytvořena žádanka UZIS při importu
               4. separator – co odděluje sloupce v datech – 1 znak (nové řádky jsou vždy oddělené pomocí \n)
               5. data – obsah dat k importu

Příklad vstupu:

                                {

                                "code":"IDLAB",

                                "createNewUzisZadanka":"false",

                                "auth":"XXX",

                                "separator":";",

                                "data":"data to import"

                                }


Výstup

               1. idTask – identifikátor tasku

      1. > 0 – task se podařilo vytvořit a identifikátor slouží k budoucím referencím
      2. -1 – obecná chyba, nutno zkontrolovat logy
      3. -2 – chybný bezpečnostní kód
      4. -3 – chybný kód laboratoře
      5. -4 – chyba při parsování dat k importu

               2. Příklad:

                                {

                                "idTask":"8"      

                                }

 


Metoda pro aktualizaci dat

curl -v -X POST -H "Content-Type: application/json" \

-d '{"code":"IDLAB","writeToClosed":"false","auth":"XXX", "separator":",", "data": "idPatient,param13799,param13846,param13848\n13481,04/10/2020,4/10/2020,Infekce prokázána"}' \

                "https://apptest.imtm.cz/covid19/publicapi/updatejson"


Parametry:

                1. code – ID (kód) laboratoře
                2. writeToClosed – určuje, zdali mohou být přepsány hodnoty i v již zavřených formulářích
                3. 
auth – autentizační klíč
                4. 
separator – označení použitého separátoru

Výstup:
                1. přidělený identifikátor úlohy


Metoda pro zjištění progresu

curl -v -X POST -d 'idTask=4&auth=XXX' "https://apptest.imtm.cz/covid19/publicapi/progress"


Rozhraní /publicapi/progress může přijímá POST s parametry ?idTask=8&auth=XXX

Parametry:

                1. idTask – identifikátor úlohy
                2. auth – autentizační klíč

Výstup:

                1. Progress -aktuální stav tasku

      1. -1 -task skončil chybou nebo cancel
      2. 0-99 – task probíhá
      3. 100 – task dokončen

                2. Příklad:

                               {

                               "progress":"99"              

                               }



  • No labels