Denne artikkelen er rettet mot utviklere som ønsker å opprette forsendelser basert på Tokenet som returneres av metoden GetShipAdvise.
Merk: Dette er kun for å vise et enkelt eksempel.
Du må implementere egen forretningslogikk og feilhåndtering.
Innhold i denne artikkelen:
Token-nøkkelen
En spesiell nøkkel som kan inneholde Product, GoodsType, Services og verdier fra Expressions brukt i CSR-dokumentet.
Ideen med Token er at du ikke lenger trenger å utvide dataobjektet med informasjonen ovenfor.
Du trenger kun å legge til Token-nøkkelen i options-objektet.
Merk: Du kan bruke Developer Tools for å teste forespørslene
Eksempel
Sende en forespørsel til metoden GetShipAdvise med options- og dataobjektene nedenfor:
Options:
{
"ServiceLevel": "Service_Level_Configured_For_SA"
}Data:
{
"Addresses": [
{
"Kind": 1,
"Name1": "Name1 - Receiver",
"Street1": "Test address 1",
"PostCode": "7400",
"City": "Herning",
"CountryCode": "DK",
"Email": "noreply@nshift.com"
}
],
"Lines": [
{
"PkgWeight": 1000,
"Number": 1
}
]
}Vil resultere i et svar som dette:
{
"Products": [
{
"ProdConceptID": 113,
"ProdCSID": 349,
"ProdName": "GLS DK - Normal erhvervspakke",
"CustomFields": {
"type": "Home Delivery"
},
"Services": [
{
"serviceid": 11008,
"name": "Privat Levering"
},
{
"serviceid": 11014,
"name": "Flex Delivery"
}
],
"Token": "11008|11014_0_0_547_517_349_113_0_0__0_...",
"SupportsDropPoint": 0
}
]
}Se CSR-konfigurasjonen for å forstå hvorfor disse produktene ble returnert.
Hvis du nå bruker Token i options-objektet for forespørselen til metoden SubmitShipment:
Options:
{
"Labels": "PNG",
"Token": "11008|11014_0_0_547_517_349_113_0_0__0_..."
}Men fortsatt bruker det samme Data-objektet som i forespørselen til GetShipAdvise:
{
"Addresses": [
{
"Kind": 1,
"Name1": "Name1 - Receiver",
"Street1": "Test address 1",
"PostCode": "7400",
"City": "Herning",
"CountryCode": "DK",
"Email": "noreply@nshift.com"
}
],
"Lines": [
{
"PkgWeight": 1000,
"Number": 1
}
]
}Når du inspiserer svaret, skal det inneholde en forsendelse basert på Token fra produktet returnert fra GetShipAdvise.
ProdConceptID, senderadresse (Expressions), GoodsType og Services skal nå være anvendt.
{
"ShpCSID": 3375,
"ShpESID": 3233700847,
"ShpTag": "EF59D0A0-0EF3-4155-AEB9-3516B076ECC0",
"InstallationID": "30000364023",
...
"Services": [
11008,
11014
]
}
Shipping Rules
Konfigurasjonsfilen inneholder produktene og valideringene som brukes for metoden GetShipAdvise i denne artikkelen.
<?xml version="1.0" encoding="utf-8"?>
<CSR carriervalidation="0" defaultservicelevel="Service_Level_Configured_For_SA">
...
</CSR>