[API] Jak przekazać informację do Apilo o utworzonej poza Apilo przesyłce
Aby poinformować Apilo o przesyłce utworzonej poza systemem Apilo należy skorzystać z endpointu:
POST http://{{apilo_client_account}}.apilo.com/rest/api/orders/{{example_order_id}}/shipment/
i przesłać treść:
{ "idExternal": "AL240800063", "tracking": "521000019901900018413826", "carrierProviderId": 144, "postDate": "2024-09-05T15:19:22+0200", "media": "2dcb6011-5d20-4af6-bc73-659538569b9e" }
gdzie:
idExternal – Numer przesyłki zewnętrzny (np. w InPost)
tracking – Numer śledzenia przesyłki (może ulegać zmianie, np. gdy przeadresujemy paczkę u kuriera
carrierProviderId – Identyfikator przewoźnika
postDate – Data nadania paczki (opcjonalna; domyślnie data dzisiejsza)
media – UUID pliku z etykietą
Jak uzyskać carrierProvideId? (kontekst informowania o przesyłce tworzonej poza Apilo)
GET https://{{apilo_client_account}}.apilo.com/rest/api/orders/carrier/map/
UWAGA: Zostanie zwrócona lista obiektów, którą należy podać uważnej ocenie, a zwłaszcza właściwość „isBroker”.
Standardowi przewoźnicy tacy jak: GLS, DPD, InPost będą mieli dla tego pola wartość false.
Natomiast przewoźnicy tacy jak: Apaczka, Bliska Paczka, Wysyłam z Allegro będą mieli dla tego pola wartość true.
Co to zmienia? Otóż dla Apilo oraz zewnętrznych integracji z którymi jest połączone,
najważniejszym jest kto finalnie przewozi paczkę, a nie kto pośredniczy w tym procesie.
Dlatego w endpoint-cie do informowania Apilo o przesyłce należy podawać ID tych przewoźników, którzy mają wartość pola „isBroker” = false.
[ { "id": 3, "key": "CARRIER_253", "name": "Inpost (Kurier, Paczkomaty, Allegro)",333 "description": null, "isBroker": false }, { "id": 143, "key": "CARRIER_258", "name": "Wysyłam z Allegro", "description": null, "isBroker": true }, { "id": 5, "key": "CARRIER_257", "name": "Poczta Polska", "description": null, "isBroker": false }, { "id": 25, "key": "CARRIER_249", "name": "DPD Polska", "description": null, "isBroker": false }, { "id": 6, "key": "CARRIER_252", "name": "GLS Polska", "description": null, "isBroker": false }, { "id": 111, "key": "CARRIER_265", "name": "UPS", "description": null, "isBroker": false }, { "id": 110, "key": "CARRIER_256", "name": "ORLEN Paczka", "description": null, "isBroker": false }, { "id": 160, "key": "CARRIER_375", "name": "ShipCenter", "description": null, "isBroker": true }, { "id": 145, "key": "CARRIER_236", "name": "Furgonetka", "description": null, "isBroker": true }, { "id": 142, "key": "CARRIER_245", "name": "Apaczka", "description": null, "isBroker": true }, { "id": 28, "key": "CARRIER_231", "name": "DHL Polska", "description": null, "isBroker": false }, { "id": 115, "key": "CARRIER_250", "name": "Fedex Polska", "description": null, "isBroker": false }, { "id": 149, "key": "CARRIER_251", "name": "Global24", "description": null, "isBroker": true }, { "id": 141, "key": "CARRIER_246", "name": "Bliska Paczka (SendIT)", "description": null, "isBroker": true }, { "id": 146, "key": "CARRIER_235", "name": "Dostawy Erli.pl", "description": null, "isBroker": true }, { "id": 140, "key": "CARRIER_232", "name": "Eurohermes", "description": null, "isBroker": true }, { "id": 119, "key": "CARRIER_233", "name": "Geodis", "description": null, "isBroker": false }, { "id": 112, "key": "CARRIER_254", "name": "Kurier zewnętrzny", "description": null, "isBroker": false }, { "id": 144, "key": "CARRIER_144", "name": "AllegroOneBox", "description": null, "isBroker": false } ... ]
Uwaga: Allegro pojawiło się na liście dwa razy.
Allegro prócz bycia brokerem ma też swoją własną metodę wysyłki, tj. Allegro One Box.
Jak uzyskać media UUID? (kontekst informowania o przesyłce tworzonej poza Apilo)
UUID jest nadawany plikowi w momencie jego tworzenia, a w tym przypadku podczas wysyłania żądania HTTP z nagłówkiem informującym o nazwie pliku i plikiem w treści żądania (body)
POST http://{{apilo_client_account}}.apilo.com/rest/api/media/
Authorization: Bearer {{access_token}}
Content-Disposition: filename=inpost-label-nr-987654.pdf
W odpowiedzi zostanie zwrócony m.in. UUID.
{
„uuid”: „f419bdcf-1a4c-56bf-b28c-15a59a32fbad”,
„name”: „inpost-label-nr-987654.pdf”,
„type”: „application\/pdf”,
„expiresAt”: „2024-09-25T16:07:44+0200”
}