Doplňující dokumentace pro snadnou implementaci a integraci s nástrojem Postman je k dispozici zde. Budeme rádi za jakoukoliv zpětnou vazbu, vaše reakce zasílejte na email martin.krizan@airway.cz.
Připravujeme a podporujeme implementátory našeho API. Niže uvádíme seznam již ověřených implementací:
Název chyby | Číslo chyby | Popis |
---|---|---|
ERROR_NOT_AUTHORIZED | 401 | Neuvedeny anebo chybné příhlašovací údaje. |
ERROR_CONFIGURATION | 405 | Neplatná konfigurace API na straně Airway s.r.o. |
ERROR_REQUIRED_FIELDS | 400 | Některé z povinných polí ve vašem požadavku chybí. |
ERROR_DATETIME_INCORRECT | 409 | Naplánovaný čas je v minulosti. Týká se především požadavků 1.1 - 1.5 |
ERROR_INVALID_INPUT | 406 | Požadavek obsahuje chybu v zaslaných datech. Konkrétní chyba bude doplňena popisem v poli description . |
ERROR_PARCEL_STATUS | 403 | Nelze zpracovat požadavek kvůli stavu zakázky. |
ERROR_PARCEL_NOT_FOUND | 404 | Zásilka v systému neexistuje. Důvodem může být nepotvzení zásilky a odstranění po 48 hodinách anebo vaše dřívejší zrušní zásilky. |
ERROR_PARCEL_FINISHED | 410 | Nelze zprocesovat požadavek u ukončené zásilky. |
ERROR_INTERNAL | 500 | Interní chyba na straně aplikace Airway s.r.o. |
Nevalidní požadavky budete moci identifikovat podle vracené odpovědi jako je například tato:
{
"ok": false,
"data": {
"code": 401,
"name": "ERROR_NOT_AUTHORIZED",
"description": "Doplňující informace k chybové zprávě."
}
}
Pole description
není povinné a jeho hodnota může nabývat také hodnoty: null
Správná identifikace adres je vitálně závislá pro správný chod spolupráce našich systémů. V rámci výměny informaci o adresách budeme používat následující formát:
Název položky | Datový typ | Povinná | Výchozí hodnota | Popis položky |
---|---|---|---|---|
address | varchar(255) | ANO | - | Název ulice a číslo domu |
additionalInfo | varchar(255) | NE | null | Číslo skladu, podlaží, název domu, ... (Vše u adresy mimo název ulice a čisla) |
city | varchar(100) | ANO | - | Název města či obce |
postcode | varchar(50) | ANO | - | Poštovní směrovací číslo (PSČ) |
countryCode | char(2) | ANO | - | Aplha-2 kód země odpovídající formátu ISO 3166-1 . Aktuálně operujeme provozujeme sameday-delivery pouze v Praze a okolí. Náš systém je ovšem škálovatelný do celého světa. |
Pro geokódování adresy se použijí položky: address
, city
, postcode
, countryCode
. Položka additionalInfo
bude použita jako doplňující informace pro kurýra.
Název položky | Datový typ | Povinná | Může vyplnit zákazník | Výchozí hodnota | Popis položky |
---|---|---|---|---|---|
parcelId | varchar(36) | ANO | NE | - | Unikátní hodnota zásilky v systému Airway s.r.o. |
externalId | varchar(36) | ANO | ANO | - | Unikátní identifikátor ve vašem systému. |
isParcel | boolean | NE | ANO | false | Flag pro identifikaci doručení do výdejního boxu. |
parcelId | varchar(36) | NE | ANO | - | UUID výdejního boxu. |
slotId | varchar(36) | NE | ANO | - | Identifikátor slotu pro rozvoz. Přes tuto hodnotu si grupujte případné hromadné rozvozy. |
referenceNumber | varchar(36) | NE | ANO | - | Identifikátor zásilky pro kurýra (číslo objednávky, var. symbol, ...). |
status | integer | ANO | NE | - | Status zásilky. Seznam možných stavů je uveden níže. |
paymentType | integer | ANO | ANO | - | Typ platby zásilky. Výčet možných hodnot je uveden níže. |
vehicleType | integer | ANO | ANO | - | Druh přepravy zásilky. Výčet možných hodnot je uveden níže. |
courierId | integer | ANO | NE | 0 | Interní identifikátor kurýra. |
price | decimal(10,3) | ANO | NE | - | Cena objednávky bez DPH. |
vat | decimal(10,3) | ANO | NE | - | Sazba DPH. |
pickupContact | varchar(255) | ANO | ANO | - | Kontakt pro vyzvednutí zásilky (např. jméno odesilatele). |
pickupEmail | varchar(255) | NE | ANO | - | Uveďte pokud má být odesílatel kontaktován. |
pickupPhone | varchar(255) | ANO | ANO | - | Telefonní kontakt pro vyzvednutí zásilky. |
pickupCompany | varchar(255) | NE | ANO | - | Název firmy pro vyzvednutí zásilky. |
pickupAddress | Address | ANO | ANO | - | Objekt pro geokodování adresy vyzvednutí. Popis objektu adresy je uveden výše. |
earliestPickupTime | datetime | ANO | ANO | - | Nejranější čas pro vyzvednutí zásilky. V tuto dobu již musí být vaš balíček nachystán k předání kurýrovi. |
pickupDeadline | datetime | NE | ANO | null | Nejpozdější čas vyzvednutí. |
deliveryContact | varchar(255) | ANO | ANO | - | Kontakt pro doručení zásilky (např. jméno příjemce). |
deliveryEmail | varchar(255) | NE | ANO | - | Uveďte pokud má být příjemce kontaktován. |
deliveryPhone | varchar(255) | ANO | ANO | - | Telefonní kontakt pro doručení zásilky. |
deliveryCompany | varchar(255) | NE | ANO | - | Název firmy pro doručení zásilky. |
deliveryAddress | Address | ANO | ANO | - | Objekt pro geokodování adresy doručení. Popis objektu adresy je uveden výše. |
earliestDeliveryTime | datetime | NE | ANO | null | Nejranější čas pro doručení zásilky. |
deliveryDeadline | datetime | ANO | ANO | - | Nejpozdější čas doručení. |
hasCashOnDelivery | boolean | ANO | ANO | - | Má se u zásilky provést dobírka? |
cashOnDeliveryPrice | decimal(8,2) | NE | ANO | 0 | Hodnota dobírky v Kč. |
cashOnDeliveryType | integer | NE | NE | 0 | Označení způsobu platby dobírky příjemcem. Výčet možných typů je uveden v sekci 0.3.5 |
isFood | boolean | NE | ANO | false | Je převážené zboží jídlo? |
isFragile | boolean | NE | ANO | false | Jedná se o zásilku s křehkým zbožím? |
isLiquid | boolean | NE | ANO | false | Obsahuje zásilka převážně tekutinu? |
isNotRotatable | boolean | NE | ANO | false | Je zásilka omezena polohou převáženého zboží? |
isGlass | boolean | NE | ANO | false | Jde o zasilku převážne ze skla? |
isBaked | boolean | NE | ANO | false | Jde o zásilku s pečeným zbožím? |
isRefrigerated | boolean | NE | ANO | false | Jde o zásilku s chlazeného zboží? |
isFlower | boolean | NE | ANO | false | Obsahuje zboží květiny? |
isAlcohol | boolean | NE | ANO | false | Obsahuje zboží alkohol? |
isBeef | boolean | NE | ANO | false | Obsahuje zásilka hovězí maso? |
isPork | boolean | NE | ANO | false | Obsahuje zásilka vepřové maso? |
isPartiallyDeliverable | boolean | NE | ANO | false | Je možno zásilku doručit jenom částečně? Zásilky u kterých je tato možnost povolena mohou končit stavem PARTIALLY_DELIVERED . |
sizeX | decimal(7,2) | ANO | ANO | - | Šířka zásilky v milimetrech. |
sizeY | decimal(7,2) | ANO | ANO | - | Výška zásilky v milimetrech. |
sizeZ | decimal(7,2) | ANO | ANO | - | Hloubka zásilky v milimetrech. |
weight | decimal(7,2) | ANO | ANO | - | Váha zásilky v kg. |
amountOfPackages | integer | ANO | ANO | - | Počet balíků v objednávce. |
callbackUrl | text | NE | ANO | null | Adresa kam se mají zasílat informace o změnách stavů zásilky. Viz níže. |
distance | decimal(8,3) | ANO | NE | - | Vzdálenost zásilky v kilometrech. |
pickupEta | datetime | NE | NE | null | Přibližný čas vyzvednutí zásilky. Tato hodnota je doplněna až v momentě kdy je zásilka přiřazena kurýrovi, jde o stav ACCEPTED_BY_COURIER . |
deliveryEta | datetime | NE | NE | null | Přibližný čas doručení zásilky. Tato hodnota je doplněna až v momentě kdy je zásilka přiřazena kurýrovi, jde o stav ACCEPTED_BY_COURIER . |
courierName | varchar(255) | ANO | NE | null | Jméno kurýra. |
courierNotes | text | ANO | NE | null | Poznámky kurýra v rámci doručení zásilky. |
finalReceiverName | varchar(255) | ANO | NE | null | Jméno osoby, která převzala zásilku. |
printLabelUrl | varchar(255) | ANO | NE | - | URL adresa pro vytištění štítku zásilky. |
publicTrackerUrl | varchar(255) | ANO | NE | - | Veřejná URL adresa do našeho Track & Trace rozhraní. Tento odkaz můžete posílat komukoliv chcete. |
proofOfDelivery | array of varchar(512) | ANO | NE | - | Seznam odkazů na dokumenty o potvrzení o doručení anebo protokoly o nedoručení zásilky. |
refusedItems | text | NE | NE | - | Doplnění o zamítnutých položkach objednávky pokud je možné částečné doručení. |
cancellationReason | text | NE | NE | - | Důvod zrušení zásilky. |
Doplňující informace
datetime
) jsou chápány v časovém pásmu CET.Status | Hodnota | Konečná | Popis |
---|---|---|---|
NEW | 10 | NE | Nová zásilka, zrovna vytvořena (anebo draft) |
QUOTE_REJECTED | 20 | ANO | Zásilka byla zamítnuta anebo vypršela doba pro její doručení (48 hodin). |
CONFIRMED_BY_CUSTOMER | 30 | NE | Potvrzeno zákazníkem. Jde o finální stav tvorby zásilky klientem. |
COURIER_PROPOSED | 40 | NE | Zásilka byla nabídnuta kurýrovi, zatím nebyla akceptována. |
ACCEPTED_BY_COURIER | 50 | NE | Akceptována kurýrem, kurýr ještě není na cestě k odesílateli. |
AT_PICKUP | 60 | NE | Kurýr je na adrese odesílatele zásilky. |
EN_ROUTE | 70 | NE | Kurýr je na cestě k příjemci zásilky. |
AT_DELIVERY | 80 | NE | Kurýr je na adrese příjemce zásilky. |
TAKING_SIGNATURE | 90 | NE | Pořizování elektronického podpisu od příjemce anebo pořízení selfie. |
CANCELED | 100 | ANO | Zásilka je zrušena. |
DELIVERED | 110 | ANO | Zásilka je doručena. |
PARTIALLY_DELIVERED | 120 | ANO | Zásilka byla částečně doručena. U zásilky bude uveden seznam nepřijatých položek. |
REFUSED_BY_CONTACT | 130 | ANO | Zásilka byla odmítnuta odesilatelem či příjemcem. Například nebylo možné zaplatit dobírku. |
Typ platby | Hodnota | Popis |
---|---|---|
ONLINE | 100 | Předem online |
MONTHLY_BILL | 200 | V rámci měsíčního vyúčtování |
ON_SPOT_SENDER | 300 | Na místě odesilatelem |
ON_SPOT_RECIPIENT | 400 | Na místě příjemcem |
Druh dopravy | Hodnota | Popis |
---|---|---|
SINGLE_TRACK | 10 | Kolo či motocykl |
CAR | 20 | Osobní automobil |
VAN_SMALL | 30 | Malá dodávka, pickup |
VAN_LARGE | 40 | Velká dodávka, Dodávka se zvedací plošinou |
Název priority doručení | Hodnota | Popis |
---|---|---|
EXPRESS | 1 | Expresní doručení do 90 minut |
NORMAL | 2 | Doručení do 180 minut |
ECONOMY | 3 | Doručení do 300 minut a více |
Název priority doručení | Hodnota | Popis |
---|---|---|
PAID_BY_NONE | 0 | Výchozí hodnota pro nedoběrečné platby |
PAID_BY_CASH | 1 | Dobírka placena v hotovosti |
PAID_BY_CARD | 2 | Dobírka placena platební kartou |
Výchozí adresa API: https://www.airway.cz
Pro získání access tokenu použijte standardní proces v rámci OAuth2 pro grant_type = client_credentials
kdy vaše identifikační údaje naleznete v administrační sekci vašeho účtu v sekci Integrace
.
/api.partner.v1/authorization/access-token
POST
Oproti všem ostatním požadavkům není tělo požadavku ve formátu json
nýbrž jde o klasické form data.
grant_type=client_credentials
&client_id=xxxxxxxxxx
&client_secret=xxxxxxxxxx
Pro autorizaci vašich požadavků uvedených níže musí být v hlavičce požadavku uveden header Authorization
s získaným access tokenem. Tedy takto:
Authorization: Bearer xxxx.xxxx.xxxx
Požadavek pro získání nabídky doručení pro dané parametry.
/api.partner.v1/parcel/quote
POST
{
"vehicleType": 20,
"pickupAddress": {
"address": "Za strašnickou vozovnou 2523/7",
"city": "Praha",
"postcode": "10000",
"countryCode": "CZ"
},
"earliestPickupTime": "2020-01-04 08:30:00",
"pickupDeadline": "2020-01-04 09:00:00",
"deliveryAddress": {
"address": "Drahobejlova 36",
"city": "Praha 9",
"postcode": "19000",
"countryCode": "CZ"
},
"earliestDeliveryTime": "2020-01-04 11:30:00",
"deliveryDeadline": "2020-01-04 12:00:00",
"hasCashOnDelivery": true,
"cashOnDeliveryPrice": 1566.2,
"isFood": false,
"isFragile": false,
"isLiquid": false,
"isNotRotatable": true,
"isGlass": false,
"isBaked": false,
"isRefrigerated": true,
"isPartiallyDeliverable": false,
"isFlower": false,
"isAlcohol": false,
"isBeef": false,
"isPork": false,
"sizeX": 1000,
"sizeY": 200,
"sizeZ": 300,
"weight": 5.4,
"amountOfPackages": 1
}
Vracená data pro validní požadavek
{
"ok": true,
"data": {
"distance": 3.442,
"price": 209.1,
"vat": 21,
"priority": 1,
"vehicleType": 30
}
}
Požadavek pro založení zásilky.
/api.partner.v1/parcel/create
POST
{
"externalId": "a469a352-19a0-4feb-a6aa-963b4cf46ebb",
"slotId": "2020-01-01 01",
"referenceNumber": "2130332992",
"paymentType": 200,
"vehicleType": 30,
"pickupContact": "Jan Novák",
"pickupEmail": "jan.novak@example.com",
"pickupPhone": "+420123456789",
"pickupCompany": null,
"pickupAddress": {
"address": "Drahobejlova 1073/36",
"additionalInfo": "Hlaste se na recepci",
"city": "Praha",
"postcode": "19000",
"countryCode": "CZ"
},
"earliestPickupTime": "2020-01-04 08:30:00",
"pickupDeadline": null,
"deliveryContact": "Zdeněk Novotný",
"deliveryEmail": "zdenek.novotny@airway.cz",
"deliveryPhone": "+420123123321",
"deliveryCompany": "Airway s.r.o.",
"deliveryAddress": {
"address": "Za strašnickou vozovnou 2523/7",
"city": "Praha",
"postcode": "10000",
"countryCode": "CZ"
},
"earliestDeliveryTime": null,
"deliveryDeadline": "2020-01-04 12:00:00",
"hasCashOnDelivery": true,
"cashOnDeliveryPrice": 2731,
"isFood": false,
"isFragile": true,
"isLiquid": false,
"isNotRotatable": false,
"isGlass": false,
"isBaked": false,
"isRefrigerated": true,
"isPartiallyDeliverable": false,
"isFlower": false,
"isAlcohol": false,
"isBeef": false,
"isPork": false,
"sizeX": 1200,
"sizeY": 300,
"sizeZ": 200,
"weight": 3.1,
"amountOfPackages": 1,
"callbackUrl": "https://your.callback.url"
}
Vracená data pro validní požadavek
{
"ok": true,
"data": {
"parcelId": "f469a352-19a0-4feb-a6aa-963b4cf46ebc",
"externalId": "a469a352-19a0-4feb-a6aa-963b4cf46ebb",
"distance": 3.442,
"price": 209.1,
"vat": 21,
"priority": 1,
"vehicleType": 30,
"status": 10,
"pickupEta": "2020-01-04 09:00:00",
"deliveryEta": "2020-01-04 12:00:00",
"printLabelUrl": "https://www.airway.cz/parcel/print-label/f469a352-19a0-4feb-a6aa-963b4cf46ebc",
"publicTrackerUrl": "https://www.airway.cz/parcel/track-and-trace/f469a352-19a0-4feb-a6aa-963b4cf46ebc"
}
}
Požadavek pro aktualizaci položek zásilky. Pro aktualizaci je možné poslat libovolnou podmožinu položek z požadavku 1.2.
/api.partner.v1/parcel/update/{parcelId}
POST
{
"externalId": "f469a352-19a0-4feb-a6aa-963b4cf46ebc",
"vehicleType": 30,
"pickupContact": "Petr Novák",
"pickupAddress": {
"additionalInfo": "2.patro, číslo dveří 158"
},
"isFood": true
}
Vracená data pro validní požadavek
Vracená odpověď je identická s požadavkem 1.2
Požadavek pro potvrzení zásilky. Tento požadavek mění stav zásilky na CONFIRMED_BY_CUSTOMER
a je nezbytný pro potvrzení toho, že máme začít zpracovávat vaší zásilku.
/api.partner.v1/parcel/confirm/{parcelId}
POST
Vracená data pro validní požadavek
Vracená odpověď je identická s požadavkem 1.2
/api.partner.v1/parcel/create-and-confirm
POST
Obsah požadavku je stejný jako u požadavku 1.2
Vracená data pro validní požadavek
Vracená odpověď je identická s požadavkem 1.2
Tato metoda je zde pro snadnější implementaci z vaší strany. Zásilka ve standardním procesu probíhá skupinou stavů:
Tvorba zásilky
NEW
- Založení zásilky kdy ji lze ještě modifikovat.CONFIRMED_BY_CUSTOMER
- Potvrzení zásilky.Doručení zásilky
Stavy související s procesy doručení v rámci Airway s.r.o.
/api.partner.v1/parcel/cancel/{parcelId}
POST
Vracená data pro validní požadavek
{
"ok": true
}
Zásilka lze ze strany API zrušit pouze v případě, že ještě není vámi potvrzena (není ve stavu CONFIRMED_BY_CUSTOMER
) a je tedy ve stavu NEW
. Pro zrušení potvrzené zásilky kontaktujte dispečink.
/api.partner.v1/parcel/status/{parcelId}
GET
Vracená data pro validní požadavek
Výčet stavů zásilky je uveden v sekci 0.3.1
{
"ok": true,
"data": {
"status": 10,
"externalId": "a469a352-19a0-4feb-a6aa-963b4cf46ebb",
"pickupEta": "2020-01-04 08:42:00",
"deliveryEta": "2020-01-04 10:28:00",
"price": 148.1,
"vat": 21.0,
"courierName": "Jan Doručil",
"courierNotes": "Poznámky kurýra ohledně doručení zásilky.",
"finalReceiverName": "Radomila Štastná",
"cancellationReason": "",
"refusedItems": "",
"proofOfDelivery": [
"https://www.airway.cz/.../a469a352-19a0-4feb-a6aa-963b4cf46ebb",
"https://www.airway.cz/.../a469a352-19a0-4feb-a6aa-963b4cf46ebb",
"..."
]
}
}
/api.partner.v1/parcel/statuses
POST
{
"parcelIdList": [
"a469a352-19a0-4feb-a6aa-963b4cf46ebb",
"b469a352-19a0-4feb-a6aa-963b4cf46ebb",
"c469a352-19a0-4feb-a6aa-963b4cf46ebb"
]
}
Odpověď pro validní požadavek
{
"ok": true,
"data": [
{
"ok": true,
"parcelId": "a469a352-19a0-4feb-a6aa-963b4cf46ebb",
"data": {
"status": 10,
"externalId": "a469a352-19a0-4feb-a6aa-963b4cf46ebb",
"pickupEta": "2020-01-04 08:42:00",
"deliveryEta": "2020-01-04 10:28:00",
"price": 148.1,
"vat": 21.0,
"courierName": "Jan Doručil",
"courierNotes": "Poznámky kurýra ohledně doručení zásilky.",
"finalReceiverName": "Radomila Štastná",
"cancellationReason": "",
"refusedItems": "",
"proofOfDelivery": [
"https://www.airway.cz/.../a469a352-19a0-4feb-a6aa-963b4cf46ebb",
"https://www.airway.cz/.../a469a352-19a0-4feb-a6aa-963b4cf46ebb",
"..."
]
}
}
]
}
Požadavek pro získání seznamu identifikátorů aktivních zásilek.
/api.partner.v1/parcel/active
GET
Odpověď pro validní požadavek
{
"ok": true,
"data": [
{
"parcelId": "a469a352-19a0-4feb-a6aa-963b4cf46ebb",
"externalId": "1.id.in.your.system",
"slotId": "Your.Id.of.Slot"
},
{
"parcelId": "b469a352-19a0-4feb-a6aa-963b4cf46ebb",
"externalId": "2.id.in.your.system",
"slotId": ""
}
]
}
Testování callbacků vám může pomoci otestovat si správně váš software. Můžete si založit testovací objednávku a ověřit si chování vaší aplikace pro všechny stavy doručení v našem systému.
/api.partner.v1/parcel/simulate-callback
POST
{
"parcelId": "b469a352-19a0-4feb-a6aa-963b4cf46ebb",
"status": 50
}
Na vámi uvedenou adresu budeme posílat požadavek po změně stavu anebo času doručení zásilky v našem systému.
Hodnota "callbackUrl" z požadavku 1.2
POST
{
"parcelId": "c469a352-19a0-4feb-a6aa-963b4cf46ebb",
"externalId": "id.ve.vasem.systemu",
"isFinished": false,
"status": 50,
"pickupEta": "2020-01-04 08:42:00",
"deliveryEta": "2020-01-04 08:42:00",
"courierInternalId": 167,
"courierPhone": "+420 123 456 789",
"courierName": "Jan Novák",
"courierNotes": "Poznámky kurýra k doručení zásilky.",
"finalReceiverName": "Petr Příjemce"
}
Požadavek pro vašich získání aktivních slotů dle zaslaných zásilek. Slot je ukončen jakmile všechny zásilky ve slotu jsou v mají konečný status.
Důležité - Do slotů se dostanou pouze potvrzené zásilky, tzn. že jsou ve finálním stavu ze strany zadání klienta, jde o stav CONFIRMED_BY_CUSTOMER
jež má hodnotu 30.
/api.partner.v1/parcel/active-slots
GET
Odpověď pro validní požadavek
{
"ok": true,
"data": {
"slots": {
"2020-01-01 01": [
{
"parcelId": "bc1106fb-b357-442f-ad41-31b6ce0c1c22",
"externalId": "a469a352-19a0-4feb-a6aa-963b4ca46eba",
"slotId": "2020-01-01 01",
"status": 10,
"vehicleType": 20,
"price": 189.0,
"vat": 21.0,
"priority": 3,
"distance": 4.67,
"pickupEta": null,
"deliveryEta": null,
"courierName": "",
"courierNotes": "",
"finalReceiverName": "",
"cancellationReason": "",
"refusedItems": "",
"printLabelUrl": "https://www.airway.cz/customer/page/print-label/bc1106fb-b357-442f-ad41-31b6ce0c1c22",
"publicTrackerUrl": "https://www.airway.cz/customer/page/track-and-trace/bc1106fb-b357-442f-ad41-31b6ce0c1c22",
"proofOfDelivery": []
}
]
},
"withoutSlot": [
{
"parcelId": "bc1106fb-b357-442f-ad41-31b6ce0c1c21",
"externalId": "a469a352-19a0-4feb-a6aa-963b4ca46ebb",
"slotId": "",
"status": 10,
"vehicleType": 20,
"price": 189.0,
"vat": 21.0,
"priority": 3,
"distance": 4.67,
"pickupEta": null,
"deliveryEta": null,
"courierName": "",
"courierNotes": "",
"finalReceiverName": "",
"cancellationReason": "",
"refusedItems": "",
"printLabelUrl": "https://www.airway.cz/customer/page/print-label/bc1106fb-b357-442f-ad41-31b6ce0c1c21",
"publicTrackerUrl": "https://www.airway.cz/customer/page/track-and-trace/bc1106fb-b357-442f-ad41-31b6ce0c1c21",
"proofOfDelivery": []
}
]
}
}
Pro hromadné potvrzení zásilek ve vašem slotu můžete použít tudo metodu.
Pokud takto potvrdíte slot, tak dáte našemu systému pokyn k tomu abychom mohli tento slot rozplánovat pro naše kurýry a tedy nepůjde již nic dalšího do slotu přidat. Pokud se budete snažit nahrávat nové zásilky do nového slotu, budeme vám vracet chybu 406 tedy ERROR_INVALID_INPUT
.
/api.partner.v1/parcel/confirm-by-slot
POST
{
"slotId": "2020-01-01 01"
}
Odpověď pro validní požadavek
{
"ok": true,
"data": {
"slotId": "2020-01-01 01",
"slotParcels": [
{"parcelId": "uuid1", "externalId": "uid1"},
{"parcelId": "uuid2", "externalId": "uid2"}
]
}
}
Pro hromadné potvrzení zásilek výčtem hodnot parcelId
.
/api.partner.v1/parcel/confirm-by-parcel-id-list
POST
[
"c80ed180-d68e-4f95-9409-12db3e472b48",
"31192551-d983-4127-ad53-af49ec359325"
]
Odpověď pro validní požadavek
{
"ok": true,
"data": [
{
"ok": false,
"parcelId": "c80ed180-d68e-4f95-9409-12db3e472b48",
"code": 403,
"description": "Only new parcel should be confirmed by customer. You parcel has status `CONFIRMED_BY_CUSTOMER` with code 30."
},
{
"ok": true,
"parcelId": "31192551-d983-4127-ad53-af49ec359325"
}
]
}