K zásadním změnám došlo u práce se zásilkami. Ostatní zdroje by měly být plně kompatibilní. Stuktura dat vkládaných zásilek se změnila z:
{ "recipFirstname": "Jan", "recipSurname": "Malý", "recipStreet": "Revoluční 11", "recipCity": "Praha", "recipPostalCode": "11000", "recipState": "CZ", "recipEmail": "email@example.com", "recipPhone": "+420 608 111 000", "value": 1340, "currency": "CZK", "cod": 2000, "codCurrency": "CZK", "packagesCount": 1, "variableSymbol": "00015504", "deliveryType": "BP", "agent": "GLS", "weight": 3.1, "collectionPlace": "my-identifier", "extraServices": [ "ECOL" ] }
Na následující (v závorkách je původní název klíče či vysvětlení):
{ "variableSymbol": "00015504", (variableSymbol) "value": 1340, (value) "valueCurrency": "CZK", (currency) "cod": 2000, (cod) "codCurrency": "CZK", (codCurrency) "packages": [ { "weight": 3.1, (weight) "height": 20, (nové, povinné jen pro některé nové přepravce) "width": 10, (nové, povinné jen pro některé nové přepravce) "lenght": 8, (nové, povinné jen pro některé nové přepravce) } ], "agent": "GLS", (agent) "deliveryType": "BP", (deliveryType) "sender": { "type": "collectionPlace", (nové, odlišení typu odesílatele: address, collectionPlace) "collectionPlace": "my-identifier", (collectionPlace) }, "recipient": { "type": "address", (nové, odlišení typu příjemce: address, collectionPlace, pickUpPlace) "firstname": "Jan", (recipFirstname) "surname": "Malý", (recipSurname) "phone": "+420 608 111 000", (recipPhone) "email": "email@example.com", (recipEmail) "address": { "street": "Revoluční 11", (recipStreet) "state": "CZ", (recipState) "city": "Praha", (recipCity) "postalCode": "11000" (recipPostalCode) } }, "extraServices": [ { "code": "sms_advice_unload" (extraServices) "arguments": { "phone": "222 111 000" (nové, některé doplňkové služby vyžadují argumenty) } }, { "code": "think_green" (extraServices) } ] }
(sender|recipient).type
- rozhoduje o struktuře požadovaných dat, více ve standardní dokumentaci senderXxx
- nyní je přímá zásilka specifikována pokud je recipient.type
i sender.type
hodnota address
(v takovém případě vyžaduje pole sender stejné údaje jako recipient výše)
extraServices
- dříve šlo o výčet identifikátorů, nyní se identifikátory specifikují v objektech pod klíčem code a některé nově vyžadují argumenty (typicky avíza)
weight
- dříve šlo o hmotnost nejtěžšího balíku, nyní jsou vyžadovány hmotnosti jednotlivých balíků
packmachine
- dříve šlo o samostatné pole, nyní se identifikátor uvádí do recipient.pickUpPlace
pokud je recipient.type
hodnota pickUpPlace
Dříve se avíza zdarma (telefonní, emailové, sms) doplňovala automaticky ke každé zásilce, pokud byl uveden telefon či email. To však způsobovalo, že klient nikdy nevěděl, zda je avízo u zásilky objednané či nikoliv (například avíza po ČR byla u některých přepravců zdarma, ale do zahraničí nikoli). Proto je v nové verzi nutné specifikovat všechny doplňkové služby včetně avíz.
Ve verzi 2 docházelo k doplňování čísel zásilek u některých přepravců ihned po vytvoření zásilky. Nově jsou čísla zásilek dostupná konzistentně pro všechny přepravce až po jejich uvažení. Součástí odpovědi při uzavírání zásilek jsou nyní všechny informace o zásilce (i právě přiřazené číslo zásilky), takže již není nutné provádět další GET požadavek pro jeho zjištění.
Nově jsou striktněji validovány telefonní čísla. Validace bere v potaz stát odesílatele/příjemce, takže není možné zaslat zásilku na slovensko a uvést Afghánské telefonní číslo. Pokud není vyplněna předvolba čísla, předpokládá se právě stát příjemce/odesílatele.
Nyní lze uzavírat zásilky pouze stejného přepravce. Díky tomu už nebude docházet k napůl úspěšným operacím, kdy zásilky jednoho přepravce byly uzavřeny a zásilky jiného ne.
Nyní můžete vyžádat překlad chybových hlášek v poli errors.message
pomocí hlavičky accept-language: cs
.
Demo účet již není dostupný. Lze však testovat v testovacím prostředí (https://test.balikonos.cz) nad standardní registrací. Je však nutné vytvořit testovací přihlašovací údaje a případně typ svozu. Více ve standardní dokumentaci.
Tyto dvě doplňkové služby již nelze vyžádat (dříve BACK a DRCT).
Jejich použití implikuje přímo odeslaný požadavek.
Například přímá zásilka je použije, pokud odesíláte z adresy na adresu (recipient.type
a sender.type
je address
).
Více informací o těchto doplňkových službách je ve standardní dokumentaci.
Pošty jsou nyní odběrnými místy, takže není nutné specifikovat celou adresu pošty, ale stačí uvést PSČ pošty v poli recipient.pickUpPlace
(stejně jako například pro poštomaty).
Maximální počet vrácených zásilek je nyní 100.
Zkratky přepravců, typů zásilek, doplňkových služeb a jejich argumentů najdete v klienstké zóně v sekci API. Zobrazují se pouze používaní přepravci (ti, kde jsou dostupné autentizační údaje).
Došlo ke změně identifikátorů doplňkových služeb, nicméně staré identifikátory stále fungují. Pokud však migrujete, mapování je následující. Všechny ostatní identifikátory jsou totožné jako ve verzi 2.
BACK => back_delivery
EXCH => exchange_delivery
DOCS => documents_back
INSR => insurance
CRRY => carry
LOSS => loss
AUTH => authentication
CALL => call_advice_unload
CMPL => completation
SATR => saturday_delivery
FRAG => fragile
SUND => sunday_delivery
FIRM => company_delivery
NGHT => evening_delivery
DRCT => direct_delivery
IN24 => guaranteed_24
ECOL => think_green
INS1 => insurance
INS2 => insurance
INS3 => insurance
INS4 => insurance
PVER => addressee_only
SMAL => sms_advice_unload
MAIL => email_advice_unload
SMDE => sms_preadvice