API Documentation
Italiano
Search
K

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
CORRIERE (ID Gsped)
AGGIUNTA COLLI
RIMOZIONE COLLI
BRT* (1)
TNT* (2)
Italsempione (90)
Logisticando (91)
ARCO (100)
GLS (101)
No
Fercam (131)
LICCARDI (179)
SI
SI
DHL WLA (182)
La lista dei corrieri abilitati è soggetta a modifiche, si prega i verificare gli aggiornamenti ad intervalli regolari
Note sui corrieri
  • BRT --> solamente soluzione B2
  • TNT --> solo per la stessa data di creazione etichetta e prima della data/ora ritiro della stessa

Logica di funzionamento processo Add Parcel

Per utilizzare nel modo corretto la funzionalità Add Parcel bisogna utilizzare 3 endpoint:
  1. 1.
    Shipment POST - Per la creazione della spedizione
  2. 2.
    Parcels POST o DELETE - Per l'aggiunta o la rimozione dei colli
  3. 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
post
https://api.gsped.it
/[istanza]/Parcels
Aggiunta singolo collo a spedizione

Oggetto Collo

Attributo
Tipo
Required
peso
integer
X
volume
float
X
larghezza
integer
X
altezza
integer
X
lunghezza
integer
X

Esempio Payload Parcels POST

ID Spedizione
Dati Destinatario
{
"id_sped":"1234567",
"collo": {
"peso": "5",
"volume": "0.01",
"larghezza": "35",
"altezza": "15",
"lunghezza": "10"
}
}
{
"ddt_alpha":"test_parcel_8",
"rcpt_name":"Rossi Gino",
"rcpt_addr":"Via Milano 8",
"rcpt_cap":"20123",
"rcpt_city":"Milano",
"rcpt_prov":"MI",
"rcpt_country_code" : "IT",
"collo": {
"peso": "5",
"volume": "0.01",
"larghezza": "35",
"altezza": "15",
"lunghezza": "20"
}
}

Snippet codice di esempio Parcel POST

PHP
Python
GO
C#
cURL
<?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;
}
import http.client
conn = http.client.HTTPSConnection("api.gsped.it")
payload = "{\n \"id_sped\":\"1\",\n \"collo\": {\n \"peso\": \"5\",\n \"volume\": \"0.01\",\n \"larghezza\": \"35\",\n \"altezza\": \"15\",\n \"lunghezza\": \"10\"\n }\n}"
headers = {
'Content-Type': "application/json",
'x-api-key': "YOUR-API-KEY"
}
conn.request("POST", "/sandbox/Parcels", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.gsped.it/sandbox/Parcels"
payload := strings.NewReader("{\n \"id_sped\":\"1\",\n \"collo\": {\n \"peso\": \"5\",\n \"volume\": \"0.01\",\n \"larghezza\": \"35\",\n \"altezza\": \"15\",\n \"lunghezza\": \"10\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
req.Header.Add("x-api-key", "YOUR-API-KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Post,
RequestUri = new Uri("https://api.gsped.it/sandbox/Parcels"),
Headers =
{
{ "x-api-key", "YOUR-API-KEY" },
},
Content = new StringContent("{\n \"id_sped\":\"1\",\n \"collo\": {\n \"peso\": \"5\",\n \"volume\": \"0.01\",\n \"larghezza\": \"35\",\n \"altezza\": \"15\",\n \"lunghezza\": \"10\"\n }\n}")
{
Headers =
{
ContentType = new MediaTypeHeaderValue("application/json")
}
}
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}
curl --request POST \
--url https://api.gsped.it/sandbox/Parcels \
--header 'Content-Type: application/json' \
--header 'x-api-key: YOUR-API-KEY' \
--data '{
"id_sped":"1",
"collo": {
"peso": "5",
"volume": "0.01",
"larghezza": "35",
"altezza": "15",
"lunghezza": "10"
}
}'
delete
https://api.gsped.it
/[istanza]/Parcels
Rimozione collo da spedizione

Snippet di codice esempio Parcels DELETE

PHP
Python
GO
C#
cURL
<?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;
}
import http.client
conn = http.client.HTTPSConnection("api.gsped.it")
payload = "id_sped=69562763"
headers = {
'Content-Type': "application/x-www-form-urlencoded",
'x-api-key': "YOUR-API-KEY"
}
conn.request("DELETE", "/sandbox/Parcels", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.gsped.it/sandbox/Parcels"
payload := strings.NewReader("id_sped=69562763")
req, _ := http.NewRequest("DELETE", url, payload)
req.Header.Add("Content-Type", "application/x-www-form-urlencoded")
req.Header.Add("x-api-key", "YOUR-API-KEY")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Delete,
RequestUri = new Uri("https://api.gsped.it/sandbox/Parcels"),
Headers =
{
{ "x-api-key", "YOUR-API-KEY" },
},
Content = new FormUrlEncodedContent(new Dictionary<string, string>
{
{ "id_sped", "69562763" },
}),
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
}c
curl --request DELETE \
--url https://api.gsped.it/sandbox/Parcels \
--header 'Content-Type: application/x-www-form-urlencoded' \
--header 'x-api-key: YOUR-API-KEY' \
--data id_sped=69562763