Naujos kliento kortelės sukūrimas (kartu su papildoma informacija)
POST https://api.manorivile.lt/client/v2
ApiKey
: Privalomas. Unikalus API raktas išduodamas užsakant paslaugąContent-Type
: Privalomas. Kokiu formatu paduodami parametrai ir duomenys (request):
application/xml
application/json
Accept
: Neprivalomas. Gražinamo rezultato (response) formatas
application/xml
(default)application/json
(veikia nuo Manorivile-Gateway-1.1.0 versijos)method
: EDIT_N08_FULL
params
:
errorAction
- klaidos parametras nurodantis koks veiksmas bus atliekamas įvykus klaidai papildomos informacijos formavimo metu, kai yra sukuriama kliento kortelė (N08) ir gaunama klaida vykdant veiksmus su papildomos informacijos eilutėmis (N33). Parametras gali turėti tris reikšmes: EXIT, CONTINUE, ROLLBACK (default reikšmė). Reikšmė turi būti paduodama dydžiosiomis raidėmis!user
- vartotojo vardas (naudojamas dokumentų skaitliukams, parametrams ir kt.), veikia tik rakto prefix'ui įjungus parametrą RGI_USR_EDIT
data
: perduodami duomenys:
errorAction
reikšmė turi būti paduodama didžiosiomis raidėmis!
errorAction
reikšmių aprašymai:
Reikšmė | Aprašymas |
---|---|
ROLLBACK (default reikšmė) | Įvykus klaidai tolimesnės procedūros nebus vykdamos, bus ištrinamas dokumentas (N08) ir grąžinama klaida. Klaidos statusas 400 |
EXIT | Įvykus klaidai tolimesnės procedūros nebus vykdamos, bus grąžinamas sukurtas dokumentas (N08) ir klaidų sąrašas. Klaidos statusas 207 |
CONTINUE | Įvykus klaidai procedūros bus vykdamos iki pabaigos, o klaidos dedamos į sąrašą. Grąžinamas sukurtas dokumentas (N08) ir klaidų sąrašas pabaigoje. Klaidos statusas 207 |
Vienu metu veiksmai atliekami tik su vienu įrašu.
Pirmi 7 ApiKey simboliai (pvz USERABC.JQKPG1d7Pkjxj37ObsgdfEkvfEfvF1oL7h7UMOLo
-> USERABC
) yra vartotojo vardas Rivile GAMA programoje, kuriuo bus kuriami ar koreguojami įrašai.
Naujo kliento sukūrime galima nenurodyti N08_KODAS_KS - tuomet bus naudojamas Rivile GAMA skaitliukas.
pvz application/xml
:
<body>
<method>EDIT_N08_FULL</method>
<params>
<oper>I</oper>
</params>
<data>
<N08>
<N08_KODAS_KS>121411842</N08_KODAS_KS>
<N08_PAV>UAB "Rivilė"</N08_PAV>
<N08_RUSIS>3</N08_RUSIS>
<N08_IM_KODAS>121411842</N08_IM_KODAS>
<N08_PVM_KODAS>LT214118411</N08_PVM_KODAS>
<N08_KODAS_XS_P>PVM</N08_KODAS_XS_P>
<N08_KODAS_XS_T>PVM</N08_KODAS_XS_T>
<N08_KODAS_DS>PT001</N08_KODAS_DS>
<N33>
<N33_KODAS_AK>VILNIUS</N33_KODAS_AK>
<N33_PAV>Geležinio Vilko g. 5 – 48, LT-03131 Vilnius, Lietuva</N33_PAV>
</N33>
<N33>
<N33_KODAS_AK>KAUNAS</N33_KODAS_AK>
<N33_PAV>Savanorių pr. 349, 51480 Kaunas, Lietuva</N33_PAV>
</N33>
</N08>
</data>
</body>
pvz application/json
:
{
"method": "EDIT_N08_FULL",
"params": {
"oper": "I"
},
"data": {
"N08": {
"N08_KODAS_KS": "121411842",
"N08_PAV": "UAB \"Rivilė\"",
"N08_RUSIS": "3",
"N08_IM_KODAS": "121411842",
"N08_PVM_KODAS": "LT214118411",
"N08_KODAS_XS_P": "PVM",
"N08_KODAS_XS_T": "PVM",
"N08_KODAS_DS": "PT001",
"N33": [
{
"N33_KODAS_AK": "VILNIUS",
"N33_PAV": "Geležinio Vilko g. 5 – 48, LT-03131 Vilnius, Lietuva"
},
{
"N33_KODAS_AK": "KAUNAS",
"N33_PAV": "Savanorių pr. 349, 51480 Kaunas, Lietuva"
}
]
}
}
}
Grąžinama informacija XML formate tarp tag'ų <RET_DOK>..</RET_DOK>
.
pvz:
<RET_DOK>
<N08>
<N08_KODAS_KS>121411842</N08_KODAS_KS>
<N08_RUSIS>3</N08_RUSIS>
<N08_PVM_KODAS>LT214118411</N08_PVM_KODAS>
<N08_IM_KODAS>121411842</N08_IM_KODAS>
<N08_PAV>UAB "Rivilė"</N08_PAV>
<N08_ADR></N08_ADR>
<N08_KODAS_VS></N08_KODAS_VS>
<N08_PASTAS></N08_PASTAS>
...
<N33_KBAN>
<N33>
<N33_KODAS_KS>121411842</N33_KODAS_KS>
<N33_EIL_NR>2</N33_EIL_NR>
<N33_PAV>Savanorių pr. 349, 51480 Kaunas, Lietuva</N33_PAV>
<N33_ADRESAS></N33_ADRESAS>
<N33_KODAS_AK>KAUNAS</N33_KODAS_AK>
...
</N33>
<N33>
<N33_KODAS_KS>121411842</N33_KODAS_KS>
<N33_EIL_NR>1</N33_EIL_NR>
<N33_PAV>Geležinio Vilko g. 5 – 48, LT-03131 Vilnius, Lietuva</N33_PAV>
<N33_ADRESAS></N33_ADRESAS>
<N33_KODAS_AK>VILNIUS</N33_KODAS_AK>
...
</N33>
</N33_KBAN>
</N08>
</RET_DOK>
207 statusas gaunamas, kai procedūros yra vykdamos perduodant parametrą errorAction
su reikšme EXIT arba CONTINUE ir gaunama klaida kažkurioje iš procedūrų, pvz.:
<RET_DOK>
<N08>
<N08_KODAS_KS>121411842</N08_KODAS_KS>
<N08_RUSIS>3</N08_RUSIS>
<N08_PVM_KODAS>LT214118411</N08_PVM_KODAS>
<N08_IM_KODAS>121411842</N08_IM_KODAS>
<N08_PAV>UAB "Rivilė"</N08_PAV>
<N08_ADR></N08_ADR>
...
<N33_KBAN>
<N33>
<N33_KODAS_KS>121411842</N33_KODAS_KS>
<N33_EIL_NR>1</N33_EIL_NR>
<N33_PAV>Geležinio Vilko g. 5 – 48, LT-03131 Vilnius, Lietuva</N33_PAV>
<N33_ADRESAS></N33_ADRESAS>
<N33_KODAS_AK>VILNIUS</N33_KODAS_AK>
...
</N33>
</N33_KBAN>
</N08>
<errors>
<error>
<data><N33><N33_PAV>adresas</N33_PAV></N33></data>
<dataErrors>
<dataError>
<tag>N33_KODAS_AK</tag>
<code>3020</code>
<message>Nenurodytas adreso kodas</message>
</dataError>
</dataErrors>
</error>
</errors>
</RET_DOK>
Klaida paduodant duomenis / SQL sintaksės klaidos / kitos duomenų klaidos
<?xml version='1.0' encoding='UTF-8'?>
<RET_DOK>
<id>9357776210.1c62e1bb.1723638333091</id>
<durationMs>1141</durationMs>
<errorMessage>Nepavyko įvykdyti metodo</errorMessage>
<document/>
<errors>
<error>
<data><N08><num_row>1</num_row><N08_KODAS_DS>PT001</N08_KODAS_DS><N08_RUSIS>3</N08_RUSIS><N08_KODAS_XS_T>PVM</N08_KODAS_XS_T><N08_PAV>UAB&quot;Rivilė&quot;</N08_PAV><N08_PVM_KODAS>LT214118411</N08_PVM_KODAS><N08_KODAS_KS>121411842</N08_KODAS_KS><N08_KODAS_XS_P>PVM</N08_KODAS_XS_P><N08_IM_KODAS>121411842</N08_IM_KODAS></N08></data>
<dataErrors>
<dataError>
<tag>N08_KODAS_KS</tag>
<code>2011</code>
<message>Egzistuoja toks kliento kodas</message>
</dataError>
</dataErrors>
</error>
</errors>
</RET_DOK>
Blogai nurodytas adresas / neteisingai nurodytas API raktas / nenurodytas API raktas / pasibaigęs API rakto galiojimas, pvz
<?xml version='1.0' encoding='UTF-8'?>
<RET_DOK>
<id/>
<durationMs>0</durationMs>
<errorMessage>Api key is not valid</errorMessage>
</RET_DOK>
Nepaleistas MANO Rivile Gateway arba kitaip sutrikusi jo veikla
<?xml version='1.0' encoding='UTF-8'?>
<RET_DOK>
<id/>
<durationMs>0</durationMs>
<errorMessage>Rivile GAMA database is unavailable. Please check if the gateway is running and is set up correctly.</errorMessage>
</RET_DOK>
Laiku nebuvo gautas Rivile API užklausos atsakymas, pavyzdžiui, apkrauta GAMA duomenų bazė
<?xml version='1.0' encoding='UTF-8'?>
<RET_DOK>
<id/>
<durationMs>0</durationMs>
<errorMessage>No response received from client gateway</errorMessage>
</RET_DOK>
Bendrinė sistemos klaida, pvz
<?xml version='1.0' encoding='UTF-8'?>
<Map>
<timestamp>2020-02-05T12:34:26.890+0000</timestamp>
<status>500</status>
<error>Internal Server Error</error>
<message>No message available</message>
<path>/v1</path>
</Map>
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'ApiKey: uUCz6Hh.sKVrjWHRDJAH1c7l4qL2kOoN2K0jAWHvuHhdYsYT',
'Content-Type: application/json',
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $payload);
$response = curl_exec($ch);
curl_close($ch);
Nuoroda į lentelės aprašymą: n08
Nuoroda į lentelės aprašymą: n33