Add Parcel

Gestione dei colli in modo dinamico

Generalità

La funzionalità Add Parcel da la possibilità, una volta creata la spedizione principale, di aggiungere o rimuovere colli in modo indipendente ottenendo le relative etichette.

Lista corrieri supportati

* vedi note

La lista dei corrieri abilitati è soggetta a modifiche, si prega i verificare gli aggiornamenti ad intervalli regolari

Note sui corrieri
  • BRT -> solamente soluzione B2

Logica di funzionamento processo Add Parcel

Per utilizzare nel modo corretto la funzionalità Add Parcel bisogna utilizzare 3 endpoint:

  1. Shipment POST - Per la creazione della spedizione

  2. Parcels POST o DELETE - Per l'aggiunta o la rimozione dei colli

  3. ShipmentConfirm POST - Per la conferma finale della spedizione e relativa chiusura alle modifiche

ATTENZIONE: La rimozione dell'unico collo di una spedizione equivale alla cancellazione della stessa.

ATTENZIONE: La conferma di una spedizione inibisce la possibilità di aggiungere o rimuover colli da una spedizione

Aggiunta singolo collo a spedizione

POST https://api.gsped.it/[istanza]/Parcels

Body in JSON. Utilizzabile in 2 modi: 1 - Solo con ID spedizione + dati del collo 2 - Dati del destinatario + dati del collo

Request Body

{
    "id_collo": 2,
    "id_sped": "123456789",
    "labels": {
        "jpg": "Stringa base64",
        "pdf": "Stringa base64",
        "zpl": "Stringa ZPL"
    },
    "tracking_collo": "JJD01111111111"
}

Oggetto Collo

Esempio Payload Parcels POST

{
  "id_sped":"1234567",
  "collo": {
    "peso": "5",
    "volume": "0.01",
    "larghezza": "35",
    "altezza": "15",
    "lunghezza": "10"
  }
}

Snippet codice di esempio Parcel POST

<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://api.gsped.it/sandbox/Parcels",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "{\n  \"id_sped\":\"1\",\n  \"collo\": {\n    \"peso\": \"5\",\n    \"volume\": \"0.01\",\n    \"larghezza\": \"35\",\n    \"altezza\": \"15\",\n    \"lunghezza\": \"10\"\n  }\n}",
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/json",
    "x-api-key: YOUR-API-KEY"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}

Rimozione collo da spedizione

DELETE https://api.gsped.it/[istanza]/Parcels

Form Url-Encoded Body Utilizzabile in 2 modi: 1 - Solo con ID spedizione + dati del collo 2 - Dati del destinatario + dati del collo

Request Body

{
    "id": "50000723",
    "num_spedizione": "7004525883",
    "num_collo": 1
}

Snippet di codice esempio Parcels DELETE

<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://api.gsped.it/sandbox/Parcels",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "DELETE",
  CURLOPT_POSTFIELDS => "id_sped=69562763",
  CURLOPT_HTTPHEADER => [
    "Content-Type: application/x-www-form-urlencoded",
    "x-api-key: YOUR-API-KEY"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}

Note

Quando il cliente effettua una spedizione con AddParcel, è possibile risalire nella data di creazione originaria di essa dalla data di creazione delle etichette, visibili sul bucket apposito in S3.

Last updated