CRM operacijos sukūrimas, koregavimas, trinimas
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_K56
params
:
oper
:
I
- naujos operacijos sukūrimasU
- operacijos koregavimasD
- operacijos išmetimasdata
: perduodami duomenys:
K56
-CRM operacijos informacija (k56) 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.
pvz application/xml
:
<body>
<method>EDIT_K56</method>
<params>
<oper>I</oper>
</params>
<data>
<K56>
<K56_KODAS_HP>PVZ_P01</K56_KODAS_HP>
<K56_KODAS_HU>PVZ_U01</K56_KODAS_HU>
<K56_DATE>2020-05-15</K56_DATE>
<K56_KODAS_KS>121411842</K56_KODAS_KS>
<K56_DATE_PRP>2020-05-14</K56_DATE_PRP>
<K56_DATE_PBP>2020-05-17</K56_DATE_PBP>
<K56_KODAS_HV>PVZ_V01</K56_KODAS_HV>
<K56_BUSENA>1</K56_BUSENA>
</K56>
</data>
</body>
pvz application/json
:
{
"method": "EDIT_K56",
"params": {
"oper": "I"
},
"data": {
"K56": {
"K56_KODAS_HP": "PVZ_P01",
"K56_KODAS_HU": "PVZ_U01",
"K56_DATE": "2020-05-15",
"K56_KODAS_KS": "121411842",
"K56_DATE_PRP": "2020-05-14",
"K56_DATE_PBP": "2020-05-17",
"K56_KODAS_HV": "PVZ_V01",
"K56_BUSENA": 1
}
}
}
Grąžinama informacija XML formate tarp tag'ų <RET_DOK>..</RET_DOK>
.
pvz:
<?xml version='1.0' encoding='UTF-8' ?>
<RET_DOK>
<K56>
<K56_KODAS_HO>010R00000001</K56_KODAS_HO>
<K56_KODAS_HP>PVZ_P01</K56_KODAS_HP>
<K56_PAV_HP>Pardavimas</K56_PAV_HP>
<K56_KODAS_HU>PVZ_U01</K56_KODAS_HU>
<K56_DATE>2020-05-15T00:00:00</K56_DATE>
<K56_KODAS_KS>121411842 </K56_KODAS_KS>
<K56_PAV_KS>UAB "Rivilė"</K56_PAV_KS>
<K56_KODAS_SM></K56_KODAS_SM>
<K56_ADRESAS>Geležinio Vilko 5-48, Vilnius</K56_ADRESAS>
<K56_ATSTOVAS></K56_ATSTOVAS>
<K56_E_MAIL>rivile@rivile.lt</K56_E_MAIL>
<K56_TELEFONAS> 8 5 2395535</K56_TELEFONAS>
<K56_KODAS_MS></K56_KODAS_MS>
<K56_ADDUSR>B1NOONQ</K56_ADDUSR>
<K56_ADD_DATE>2020-05-14T22:05:03</K56_ADD_DATE>
<K56_USERIS>B1NOONQ</K56_USERIS>
<K56_R_DATE>2020-05-14T22:05:03</K56_R_DATE>
<K56_DATE_PRP>2020-05-14T00:00:00</K56_DATE_PRP>
<K56_DATE_PBP>2020-05-17T00:00:00</K56_DATE_PBP>
<K56_DATE_PRV>2020-05-14T00:00:00</K56_DATE_PRV>
<K56_DATE_PBV>2020-05-14T00:00:00</K56_DATE_PBV>
<K56_PASTABOS></K56_PASTABOS>
<K56_KODAS_HV>PVZ_V01</K56_KODAS_HV>
<K56_PERKELTA>1</K56_PERKELTA>
<K56_KODAS_LS_1></K56_KODAS_LS_1>
<K56_KODAS_LS_2></K56_KODAS_LS_2>
<K56_KODAS_LS_3></K56_KODAS_LS_3>
<K56_KODAS_LS_4></K56_KODAS_LS_4>
<K56_BUSENA>1</K56_BUSENA>
</K56>
</RET_DOK>
Klaida paduodant duomenis / SQL sintaksės klaidos / kitos DB klaidos
<?xml version='1.0' encoding='UTF-8'?>
<?xml version='1.0' encoding='UTF-8'?>
<RET_DOK>
<id>21313695680.74d3838e.1589483464169</id>
<durationMs>5</durationMs>
<errorMessage>nepavyko įvykdyti metodo</errorMessage>
<errors>
<error>
<data><K56><K56_DATE>2020-05-15</K56_DATE><K56_KODAS_HP>PVZ_P01</K56_KODAS_HP><K56_KODAS_KS>121411842</K56_KODAS_KS><K56_BUSENA>1</K56_BUSENA><K56_DATE_PRP>2020-05-14</K56_DATE_PRP><K56_DATE_PBP>2020-05-17</K56_DATE_PBP><K56_KODAS_HU>PVZ_U01</K56_KODAS_HU><K56_KODAS_HV>PVZ_V01</K56_KODAS_HV></K56></data>
<dataErrors>
<dataError>
<tag>K56_KODAS_KS</tag>
<code>16013</code>
<message>Kliento kodui pasibaigęs terminas</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>
Koregavimas, trynimas vykdomas pagal lentelės raktą (Primary Key)
Koreguojant informaciją bus koreguojami tik perduodami laukai.
pvz trinimas:
<body>
<method>EDIT_K56</method>
<params>
<oper>D</oper>
</params>
<data>
<K56>
<K56_KODAS_HO>010R00000001</K56_KODAS_HO>
</K56>
</data>
</body>
pvz koregavimas:
<body>
<method>EDIT_K56</method>
<params>
<oper>U</oper>
</params>
<data>
<K56>
<K56_KODAS_HO>010R00000001</K56_KODAS_HO>
<K56_KODAS_HU>PVZ_U02</K56_KODAS_HU>
<K56_KODAS_HV>PVZ_V05</K56_KODAS_HV>
</K56>
</data>
</body>
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'ApiKey: uUCz6UD.sKVrjaWRDJAH1c7l4qL2nOoN2K0jARkvuHDdYsss',
'Content-Type: application/json',
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, '{
"method": "EDIT_K56",
"params": {
"oper": "I"
},
"data": {
"K56": {
"K56_KODAS_HP": "PVZ_P01",
"K56_KODAS_HU": "PVZ_U01",
"K56_DATE": "2020-05-15",
"K56_KODAS_KS": "121411842",
"K56_DATE_PRP": "2020-05-14",
"K56_DATE_PBP": "2020-05-17",
"K56_KODAS_HV": "PVZ_V01",
"K56_BUSENA": 1
}
}
}');
$response = curl_exec($ch);
curl_close($ch);
CRM operacijų lentelė.
Laukas | Tipas | Aprašymas | Pastabos naudojant EDIT metodus |
---|---|---|---|
K56_KODAS_HO | C(12) | Operacijos numeris | |
K56_KODAS_HP | C(12) | Projektas | |
K56_PAV_HP | C(150) | Projekto pavadinimas | |
K56_KODAS_HU | C(12) | Užduotis | |
K56_PAV_HU | C(150) | Užduoties pavadinimas | |
K56_DATE | T(8) | CRM operacijos data | |
K56_KODAS_KS | C(12) | Kliento kodas | |
K56_PAV_KS | C(150) | Kliento pavadinimas | |
K56_KODAS_SM | C(12) | Asmuo | |
K56_ADRESAS | C(150) | Adresas | |
K56_ATSTOVAS | C(150) | Kontaktinis asmuo | |
K56_E_MAIL | C(150) | E-mail adresas | |
K56_TELEFONAS | C(150) | Telefono numeris | |
K56_KODAS_MS | C(12) | Menedžeris | |
K56_ADDUSR | C(12) | Kas sukūrė | |
K56_ADD_DATE | T(8) | Kada sukūrė | |
K56_USERIS | C(12) | Kas koregavo | |
K56_R_DATE | T(8) | Kada koregavo | |
K56_DATE_PRP | T(8) | Planuojama pradžios data | |
K56_DATE_PBP | T(8) | Planuojama pabaigos data | |
K56_DATE_PRV | T(8) | Vykdymo pradžios data | |
K56_DATE_PBV | T(8) | Vykdymo pabaigos data | |
K56_PASTABOS | M(4) | Pastabos | |
K56_KODAS_HV | C(12) | Užduoties įvykdymo kodas | |
K56_PAV_REZ | C(150) | Rezultato pavadinimas | |
K56_PERKELTA | N(1) | Perkelta: 1-naujas;2-perkelta(baigta);3-koreguota(pradėta) | |
K56_KODAS_LS_1 | C(12) | Logistika 1 | |
K56_KODAS_LS_2 | C(12) | Logistika 2 | |
K56_KODAS_LS_3 | C(12) | Logistika 3 | |
K56_KODAS_LS_4 | C(12) | Logistika 4 | |
K56_APRASYMAS1 | C(100) | Aprašymas 1 | |
K56_APRASYMAS2 | C(100) | Aprašymas 2 | |
K56_APRASYMAS3 | C(100) | Aprašymas 3 | |
K56_APRASYMAS4 | C(100) | Aprašymas 4 | |
K56_NUM1 | N(12,3) | Skaičius 1 | |
K56_NUM2 | N(12,3) | Skaičius 2 | |
K56_NUM3 | N(12,3) | Skaičius 3 | |
K56_NUM4 | N(12,3) | Skaičius 4 | |
K56_BUSENA | N(3) | Būsena |