Aplicatia Gcouriers poate fi apelata prin API, astfel ca, orice site de tip Magazin Online, Site de Vanzari, aplicatie de livrari la domiciliu, etc. poate integra serviciile de curierat rapid (livrari in 1-2 ore, As soon as possible - ASAP) sau Next Days (Serviciu postal prin curierii rapid consacrati) pe care le ofera Gcouriers.
Se recomanda ca integrarea sa fie la nivelul /admin a aplicatiilor / site-urilor, astfel incat sa se solicite curierul doar cand administratorii site-ului are coletul deja pregatit pentru livrare. Practic, la nivel de check-out se poate doar afisa un cost mediu estimat, iar in /admin se va afla cotatia reala pe care o ofera curierii prin licitatie.
De asemenea, se poate contracta un cost fix pe raza unui oras / judet, iar spre clientii magazinulului afisandu-se de asemenea un cost fix pentru livrari ASAP.
Prin Gcouriers, se pot face livrari imediate, iar parametrii de conectare sunt prezentati mai jos, astfel:
Definim urmatoarele constante:
Constante | Valori | Descriere |
---|---|---|
API_URL | https://www.gcouriers.com/apiMagazine | Url-ul platformei Gcouriers |
TIP_EXPEDITIE_ASAP | ASAP | Se va trimite acest tip daca expedierea se vrea in acceasi zi |
TIP_EXPEDITIE_POSTAL | SERVICIU_POSTAL | Se va trimite acest tip daca se doreste expedierea in 1-3 zile prin Curieri Consacrati |
Un apel catre API se va face sub forma unui request POST catre un URL sub forma
API_URL/actiune
Ex: https://www.gcouriers.com/apiMagazine/getCostEstimat
Fiecare apel catre API Gcouriers trebuie sa contina urmatoarele variabile:
Variabila | Tip | Descriere |
---|---|---|
apiKey | STRING | Cheia dvs din contul Gcouriers |
orderId | INTEGER | Id-ul unic al comenzii |
Cereri disponibile:
ACTIUNE | URL | Descriere |
---|---|---|
getCostEstimat | API_URL/getCostEstimat | Obtine un cost estimat fara a crea o expeditie |
sendExpedition | API_URL/sendExpedition | Salveaza sau actualizeaza o expeditie, returneaza costul estimat si distanta intre adrese |
searchCouriers | API_URL/searchCouriers | Cauta curieri pentru o expeditie, daca e de tip TIP_EXPEDITIE_POSTAL va intoarce lista de curieri disponibili |
getCouriersList | API_URL/getCouriersList | Obtine lista de curieri care au aplicat pentru expeditie |
selectCourier | API_URL/selectCourier | Alege curierul care va livra expeditia |
getExpeditionStatus | API_URL/getExpeditionStatus | Obtine statusul expeditie |
getAwb | API_URL/getAwb | Obtine awb-ul expeditiei in format pdf |
In afara de getAWB toate cererile vor intoarce un JSON
1. getCostEstimat
Intoarce costul estimat al expeditiei fara a salva expeditia
Date extra necesare:
Variabile | Tip | Descriere |
---|---|---|
adresaExpeditor | ARRAY | Datele expeditorului, pentru detalii vezi 1.a |
adresaDestinatar | ARRAY | Datele expeditorului, pentru detalii vezi 1.a |
greutate | INTEGER | Greutatea totala a coletului |
plicuri* | INTEGER | Nr total de plicuri |
colete* | INTEGER | Nr total de colete |
dimensiuni | ARRAY | Date despre dimensiunile coletului, vezi 1.b |
tip | STRING | Se accepta doar: TIP_EXPEDITIE_ASAP Sau TIP_EXPEDITIE_POSTAL |
*Atentie o expeditie trebuie sa contina cel putin un plic sau un colet
1.a Adresa
Variabile | Tip | Descriere |
---|---|---|
tara | STRING | Tara |
judet | STRING | Judetul |
localitate | STRING | Localitatea |
strada | STRING | Strada |
nr | STRING | Numarul strazii |
1.b Dimensiuni
Variabile | Tip | Descriere |
---|---|---|
lungime | STRING | Lungimea coletului |
latime | STRING | Latimea coletului |
inaltime | STRING | Inaltimea coletului |
Response:
Variabile | Tip | Conditie | Descriere |
---|---|---|---|
error | INTEGER | Apare mereu | 0 - nu exista erori 1 - exista erori |
messages | ARRAY | Error = 1 | Lista cu mesajele erorilor |
costEstimat | DOUBLE | Error = 0 | Costul estimat |
2.sendExpedition
Trimitem datele comenzii pentru a crea o expeditie. Daca exista o expeditie deja asociata deja orderId se vor actualiza datele. Atentie expeditia se poate actualiza cat timp nu s-a ales un curier sau a fost anulata, de asemenea o tipul expeditiei nu poate fi modificat.
Date extra necesare:
Variabile | Tip | Descriere |
---|---|---|
expeditor | ARRAY | Datele expeditorului, pentru detalii vezi 2.a |
destinatar | ARRAY | Datele destinatarului, pentru detalii vezi 2.a |
greutate | INTEGER | Greutatea totala a coletului |
plicuri* | INTEGER | Nr total de plicuri |
colete* | INTEGER | Nr total de colete |
dimensiuni | ARRAY | Date despre dimensiunile coletului, vezi 2.b |
observatii | STRING | Observatii despre expeditie |
tip | STRING | Se accepta doar: TIP_EXPEDITIE_ASAP Sau TIP_EXPEDITIE_POSTAL |
*Atentie o expeditie trebuie sa contina cel putin un plic sau un colet
2.a Date Contact (expeditor / destinatar )
Variabile | Tip | Descriere |
---|---|---|
nume | STRING | Numele expeditorului / destinatarului |
STRING | Adresa de email | |
telefon | STRING | Nr de telefon pentru a putea contacta expeditorul / destinatarul |
adresa | STRING | Adresa vezi 2.a.1 |
2.a.1 Adresa
Variabile | Tip | Descriere |
---|---|---|
tara | STRING | Tara |
judet | STRING | Judetul |
localitate | STRING | Localitatea |
strada | STRING | Strada |
nr | INTEGER | Numarul strazii |
detalii | STRING | Detalii extra despre expeditie |
2.b Dimensiuni
Variabile | Tip | Descriere |
---|---|---|
lungime | INTEGER | Lungimea coletului |
latime | INTEGER | Latimea coletului |
inaltime | INTEGER | Inaltimea coletului |
Response:
Variabile | Tip | Conditie | Descriere |
---|---|---|---|
error | INTEGER | Apare mereu | 0 - nu exista erori 1 - exista erori |
messages | ARRAY | Error = 1 | Lista cu mesajele erorilor |
costEstimat | DOUBLE | Error = 0 | Costul estimat |
distanta | DOUBLE | Error = 0 | Distanta intre expeditor si destinatar |
3.searchCouriers
Cautam curieri disponibili pentru a livra expeditia. Nu se trimit date extra
Cazuri:
- TIP_EXPEDITIE_ASAP - trebuie sa asteptati 140 secunde pentru a putea apela getCouriersList sa obtinem lista curierilor care au aplicat pentru a livra expeditia
- TIP_EXPEDITIE_POSTAL - intoarce curierii pentru acest serviciu
Response:
Variabile | Tip | Conditie | Descriere |
---|---|---|---|
error | INTEGER | Apare mereu | 0 - nu exista erori 1 - exista erori |
messages | ARRAY | Error = 1 sau Error = 0 Si expeditia este de tip TIP_EXPEDITIE_ASAP | Lista cu mesajele erorilor sau mesajul de success |
couriers | ARRAY | Error = 0 si expeditiei este de tip TIP_EXPEDITIE_POSTAL | Lista de curieri disponibili, vezi 4.1 pentru detalii |
4.getCouriersList
Obtinem lista de curieri pentru expeditie. Nu se trimit date extra
Cazuri:
- TIP_EXPEDITIE_ASAP - trebuie sa asteptati 140 secunde de la apelarea searchCouriers , in acest timp curierii activi vor aplica si vor aparea in lista returnata
- TIP_EXPEDITIE_POSTAL - se poate apela imediat pentru a obtine curierii pentru acest serviciu
Response:
Variabile | Tip | Conditie | Descriere |
---|---|---|---|
error | INTEGER | Apare mereu | 0 - nu exista erori 1 - exista erori |
messages | ARRAY | Error = 1 | Lista cu mesajele erorilor |
couriers | ARRAY | Error = 0 | Lista de curieri disponibili, vezi 4.1 pentru detalii |
4.1 Element din couriers
Variabile | Tip | Descriere |
---|---|---|
id | INTEGER | Id-ul unic asociat curierului |
nume | STRING | Numele curierului |
timp_ridicare | STRING | Timp estimat ridicare colet |
timp_predare | STRING | Timp estimat livare colet |
cost | DOUBLE | Costul total al expeditiei |
moneda | STRING | Moneda |
distanta | STRING | Distanta intre curier si expeditor |
raiting | INTEGER | Rating-ul curierului |
img_byte | STRING | Imaginea curierului in format base64 |
tip_curier | STRING | Tipul curierului |
5.selectCourier
Trimitem id-ul curierului ales pentru a incepe livrarea
Date extra necesare:
Variabile | Tip | Descriere |
---|---|---|
courierId | INTEGER | Id-ul curierului primit de la getCouriersList sau searchCouriers |
Response:
Variabile | Tip | Descriere |
---|---|---|
error | INTEGER | 0 - nu exista erori 1 - exista erori |
messages | ARRAY | Lista cu mesajele erorilor sau cu mesajul de success |
6.getExpeditionStatus
Intoarce statusul expeditiei, nu se trimit date extra
Response:
Variabile | Tip | Conditie | Descriere |
---|---|---|---|
error | INTEGER | Apare mereu | 0 - nu exista erori 1 - exista erori |
messages | ARRAY | Error = 1 | Lista cu mesajele erorilor |
status | STRING | Error = 0 | Statusul expeditiei |
7.getAwb
Obtine awb-ul unei expeditii sub forma de pdf, daca nu exista o expeditie asociata orderId trimis, pdf-ul va fi gol. Nu se trimit date extra