Denne artikkelen beskriver hvordan du konstruerer en SubmitShipment-forespørsel for ShipmentServer API.
Denne API-en lar deg programmessig bestille forsendelser og generere etiketter.
Endepunkt og metode:
Forespørselen skal være en POST-forespørsel til følgende endepunkt:
- Produksjon - https://www.shipmentserver.com
- Sandbox - https://demo.shipmentserver.com
Forespørselskropp (multipart/form-data):
Forespørselskroppen skal formateres som multipart/form-data med følgende nøkkel-verdi-par:
-
command: Alltid satt til"SubmitShipment". Dette forteller API-en hvilken handling som skal utføres. -
actor: Id-en til aktøren. Dette er ditt brukernavn. -
key: Nøkkelen til aktøren. Dette er ditt passord. -
data(JSON-streng): Dette feltet inneholder kjernen i forsendelsesinformasjonen. -
options(JSON-streng): Dette feltet lar deg spesifisere tilleggsmuligheter, som etikettformat.
data.json-filen inneholder nødvendige detaljer for å bestille en forsendelse, inkludert unike identifikatorer, avsender- og mottakeradresser, og pakkespesifikasjoner som dimensjoner og vekt.
-- filename: data.json
{
"ProdConceptID": 1782, // Din produktkonsept-ID
"OrderNo": "Order123", // Ditt ordrenummer
"Addresses": [
{
"Kind": 1, // 1 for mottaker, 2 for avsender
"Name1": "Receiver Name",
"Street1": "Receiver Street",
"PostCode": "Receiver Postal Code",
"City": "Receiver City",
"CountryCode": "Receiver Country Code",
"Phone": "Receiver Phone",
"Email": "receiver@example.com",
"Attention": "Receiver Attention" // Valgfritt
},
{
"Kind": 2, // 1 for mottaker, 2 for avsender
"Name1": "Sender Name",
"Street1": "Sender Street",
"PostCode": "Sender Postal Code",
"City": "Sender City",
"CountryCode": "Sender Country Code",
"Phone": "Sender Phone",
"Email": "sender@example.com",
"Attention": "Sender Attention" // Valgfritt
}
],
"Lines": [
{
"Number": 1, // Linjenummer
"PkgWeight": 1000, // Pakkens vekt i gram
"Height": 10, // Høyde i mm
"Length": 20, // Lengde i mm
"Width": 15, // Bredde i mm
"References": [
{ "Kind": 23, "Value": "Reference 1" }
]
}
]
}
options.json-filen spesifiserer etikettformatet, og angir at etiketten skal genereres i ZPL-format for utskrift på Zebra-skrivere.
-- filename: options.json
{
"Labels": "ZPLGK"
}
Konstruksjon av payload (data)-objektet
Selv om det teknisk sett er mulig å konstruere JSON-payloaden for data manuelt, anbefales det sterkt å først opprette forsendelsen gjennom Ship UI og få den validert av transportøren før du forsøker å automatisere prosessen. Dette trinnet sikrer datanøyaktighet og unngår potensielle problemer forårsaket av feil formatering eller manglende obligatoriske felt.
For å lære om utviklerverktøyet i Ship UI:
https://helpcenter.nshift.com/hc/no/articles/17147027547804
Eksempel med curl.
curl -X POST "https://demo.shipmentserver.com" \
-F "command=SubmitShipment" \
-F "actor=YOUR_ACTOR_ID" \
-F "key=YOUR_ACTOR_KEY" \
-F "data=@data.json" \
-F "options=@options.json"