shipment-status
Schema downloads
The JSON schema for this format can be downloaded here.
Use this link to download the strict schema, which will disallow unknown properties for as much as that is possible witin the schema language. Our internal processes simply ignore unknown properties but the strict schema can be usefull to notice typo's.
We will on occasion add new fields without notifying all recipients of the file. Therefore please do not use the strict schema for validation of files we send to you. If you want to validate our files at your end, the standard schema can be used. We will notify all recipients before doing a change in a file that would cause it to no longer match the standard schema.
Sample files
Sample files for this format can be downloaded here:
root
source |
[O] String
|
|
Source system or customer code. |
messageId |
[O] String
|
|
Unique id for the message. |
messageReference |
[O] String
|
|
Customer reference for the message. |
messageType |
[O] String
|
|
Type name of the message. |
messageRootId |
[O] String
|
|
Message id of the first message in a chain of messages. |
timeStamp |
[O] String
|
Format: date-time
|
Date and time the message was generated. If time zone information is omitted, is UTC. |
statuses
event |
[M] String
|
Possible values:
"statusChange"
"backwardStatusChange"
"legStatusChange"
"positionChange"
"routeChange"
"arrivedAtGeoFence"
"updatedShipment"
"manuallyCompleted"
"alert"
Expand
Collapse
|
The actual events sent will changed depending on the setup. For instance, positionChange requires management approval. |
status |
[M] String
|
Possible values:
"booked"
"prePlanned"
"planned"
"loading"
"inOperation"
"unloading"
"delivered"
"cancelled"
"completed"
Expand
Collapse
|
The current status of the item. In the case of a statusChange or backwardStatusChange event, this will be the NEW status. |
statusNumber |
[M] Integer
|
Possible values:
0
10
20
30
40
50
60
70
90
Expand
Collapse
|
Numeric value matching the status. Can be used to easily do 'before status x' or 'after status y' logic since the numbering matches the normal chronological order.
booked: 0
prePlanned: 10
planned: 20
loading: 30
inOperation: 40
unloading: 50
delivered: 60
cancelled: 70
completed: 90 |
previousStatus |
[O] String
|
Possible values:
null
"booked"
"prePlanned"
"planned"
"loading"
"inOperation"
"unloading"
"delivered"
"cancelled"
"completed"
Expand
Collapse
|
The previous status of the item for events statusChange and backwardStatusChange. In other cases, this will match the status. |
previousStatusNumber |
[O] Integer
|
Possible values:
null
0
10
20
30
40
50
60
70
90
Expand
Collapse
|
Numeric value matching the previousStatus. Can be used to easily do 'before status x' or 'after status y' logic since the numbering matches the normal chronological order.
booked: 0
prePlanned: 10
planned: 20
loading: 30
inOperation: 40
unloading: 50
delivered: 60
cancelled: 70
completed: 90 |
isFirstLeg |
[O] Boolean
|
|
|
isFinalLeg |
[O] Boolean
|
|
|
finalLoadingDone |
[O] Boolean
|
|
True if any intermediate stops are done and the shipment is en-route directly to the final unloading. This indicates that for instance the vehicle and driver information will be accurate for delivery. |
tripId |
[O] String
|
|
|
statuses.order
number |
[M] String
|
Pattern: ^(([0-9]{12})|([0-9]{15}))$
|
Internal Jan de Rijk number for the original order of the customer. |
reference |
[M] String
|
Max 30 char
|
Customer's reference for the order. This is the reference that would be used to refer to the order in any communication between the customer and Jan de Rijk. Comes from transportorder-main: $.orders. |
departmentCode |
[O] String
|
Max 3 char
Pattern: ^[0-9]{3}$
|
The code of the Jan de Rijk department handling the order. |
product |
[O] String
|
Possible values:
"generalCargo"
"importContainers"
"exportContainers"
null
|
The Jan de Rijk product relevant for the order. |
customer |
[M] Object
|
|
|
statuses.order.customer
name |
[M] String
|
Max 100 char
|
|
code |
[M] String
|
Max 20 char
|
Jan de Rijk code for the customer. |
statuses.shipment
number |
[M] String
|
Pattern: ^(([0-9]{12})|([0-9]{15}))$
|
Internal Jan de Rijk number for the original order of the customer. |
order |
[O] Object
|
|
|
creationDateTime |
[O] String
|
Format: date-time
|
Includes time zone indicator. |
reference |
[M] String
|
Max 30 char
|
Customer's reference for the shipment. This is the reference that would be used to refer to the order in any communication between the customer and Jan de Rijk. This reference also appears on invoices and status messages, and is searchable in JConnect. |
requirements |
[M] Object
|
|
Special requirements relating to the shipment. |
security |
[M] Object
|
|
Specifies security above the standard security level of TSR 01. The actual security level is explained in the SOP and arranged by the Jan de Rijk planning team. |
transportInstructions |
[O] String
|
|
|
customAttributes |
[O] Object
|
|
Attributes saved as part of the integration process. Generally not used. |
measurement |
[M] Object
|
|
|
goodsLines |
[M] Array of Object
|
|
|
remarks |
[M] String
|
|
|
alerts |
[O] Array of Object
|
|
|
clearingIn |
[O] Object
|
|
|
clearingOut |
[O] Object
|
|
|
originalLoading |
[M] Object
|
|
|
finalUnloading |
[M] Object
|
|
|
vehicle |
[O] Object
|
|
|
drivers |
[O] Array of Object
|
|
|
pulledUnit |
[O] Object
|
|
|
freightUnits |
[O] Array of Object
|
|
|
documents |
[O] Array of Object
|
|
|
statuses.shipment.order
departmentCode |
[O] String
|
|
|
product |
[O] String
|
Possible values:
"generalCargo"
"importContainers"
"exportContainers"
null
|
The relevant Jan de Rijk product. |
financials |
[O] Object
|
|
|
statuses.shipment.order.financials
totalRevenueLocalCurrency |
[O] Number
|
|
|
currencyCode |
[O] String
|
|
|
statuses.shipment.requirements
Special requirements relating to the shipment.
freightUnitType |
[M] String
|
Possible values:
null
"mega"
"flatBox"
"box"
"isolation"
"tautliner"
"unspecified"
Expand
Collapse
|
|
roadTrain |
[M] Boolean
|
|
|
dangerousCargo |
[M] Boolean
|
|
This means LZV (longer truck). |
urgent |
[M] Boolean
|
|
|
heater |
[M] Boolean
|
|
|
cooler |
[M] Boolean
|
|
|
exclusive |
[M] Boolean
|
|
If true, Jan de Rijk won't co-load the cargo with other customers' cargo. Co-loading regulations are taken into account regardless. |
maximumTemperature |
[O] Number
|
|
|
minimumTemperature |
[O] Number
|
|
|
pharmaceuticals |
[O] Boolean
|
|
It concerns pharmaceutical cargo, and all requirements for that apply. |
statuses.shipment.security
Specifies security above the standard security level of TSR 01. The actual security level is explained in the SOP and arranged by the Jan de Rijk planning team.
secured |
[M] Boolean
|
|
|
level |
[O] String
|
Possible values:
null
"TAPA1"
"TAPA2"
|
|
statuses.shipment.customAttributes
Attributes saved as part of the integration process. Generally not used.
statuses.shipment.measurement
grossWeight |
[O] Number
|
3 decimals
|
Kilograms. |
quantity |
[O] Integer
|
|
|
volume |
[O] Number
|
3 decimals
|
Cubic metres. |
volumeWeight |
[O] Number
|
3 decimals
|
Kilograms. Usually only used for air freight. |
loadIndex |
[O] Number
|
3 decimals
|
|
palletPlaces |
[O] Number
|
3 decimals
|
|
statuses.shipment.goodsLines
mark |
[O] String
|
Max 50 char
|
|
packageType |
[O] String
|
Possible values:
null
"pallet"
"colli"
"euroPallet"
"trailer"
"uld"
"container16Feet"
"container20Feet"
"container20FeetReefer"
"container40Feet"
"container45Feet"
"container45FeetHighCube"
"ake"
"containerCc"
"chepPallet"
"deciMeterLoadIndex"
"airplaneEngine"
"flowPallet"
"container40FeetHighCube"
"helicopter"
"halfPlanePlate"
"container40FeetReefer"
"ibc"
"kilograms"
"meterLoadIndex"
"otherPalletType"
"planePlate"
"rollContainer217LoadIndex"
"rollContainer240LoadIndex"
"rollContainer278LoadIndex"
"rollContainer373LoadIndex"
"rollContainer233LoadIndex"
"roadTrain"
Expand
Collapse
|
|
measurement |
[M] Object
|
|
|
goodsType |
[O] String
|
Possible values:
null
"airCargo"
"airCargoPalletized"
"carParts"
"general"
"empty"
"aluminium"
"beer"
"ceramics"
"cheese"
"chemicals"
"chocolate"
"cigarettes"
"computerParts"
"consumerElectronics"
"cosmetics"
"flowers"
"food"
"fruit"
"furniture"
"glass"
"householdArticles"
"lighting"
"machines"
"mail"
"meat"
"medicalEquipment"
"nickel"
"paint"
"paper"
"perishables"
"pharmaceuticals"
"plants"
"plastics"
"textile"
"tobacco"
"toys"
"vegetables"
"packingMaterials"
"wine"
"wood"
Expand
Collapse
|
|
goodsDescription |
[O] String
|
Max 20 char
|
|
dimensions |
[O] Object
|
|
|
detailLines |
[O] Array of Object
|
|
Further breakdown of the goods. If this was not provided when the shipment was created, there will be a single detail line for each goods line. |
dangerousGoods |
[O] Array of Object
|
|
|
statuses.shipment.goodsLines.measurement
grossWeight |
[O] Number
|
3 decimals
|
Kilograms. |
quantity |
[O] Integer
|
|
|
volume |
[O] Number
|
3 decimals
|
Cubic metres. |
volumeWeight |
[O] Number
|
3 decimals
|
Kilograms. Usually only used for air freight. |
loadIndex |
[O] Number
|
3 decimals
|
|
palletPlaces |
[O] Number
|
3 decimals
|
|
statuses.shipment.goodsLines.dimensions
length |
[O] Number
|
3 decimals
|
Metres. |
width |
[O] Number
|
3 decimals
|
Metres. |
height |
[O] Number
|
3 decimals
|
Metres. |
statuses.shipment.goodsLines.detailLines
mark |
[O] String
|
Max 50 char
|
|
packageType |
[O] String
|
Possible values:
null
"pallet"
"colli"
"euroPallet"
"trailer"
"uld"
"container16Feet"
"container20Feet"
"container20FeetReefer"
"container40Feet"
"container45Feet"
"container45FeetHighCube"
"ake"
"containerCc"
"chepPallet"
"deciMeterLoadIndex"
"airplaneEngine"
"flowPallet"
"container40FeetHighCube"
"helicopter"
"halfPlanePlate"
"container40FeetReefer"
"ibc"
"kilograms"
"meterLoadIndex"
"otherPalletType"
"planePlate"
"rollContainer217LoadIndex"
"rollContainer240LoadIndex"
"rollContainer278LoadIndex"
"rollContainer373LoadIndex"
"rollContainer233LoadIndex"
"roadTrain"
Expand
Collapse
|
|
measurement |
[M] Object
|
|
|
goodsType |
[O] String
|
Possible values:
null
"airCargo"
"airCargoPalletized"
"carParts"
"general"
"empty"
"aluminium"
"beer"
"ceramics"
"cheese"
"chemicals"
"chocolate"
"cigarettes"
"computerParts"
"consumerElectronics"
"cosmetics"
"flowers"
"food"
"fruit"
"furniture"
"glass"
"householdArticles"
"lighting"
"machines"
"mail"
"meat"
"medicalEquipment"
"nickel"
"paint"
"paper"
"perishables"
"pharmaceuticals"
"plants"
"plastics"
"textile"
"tobacco"
"toys"
"vegetables"
"packingMaterials"
"wine"
"wood"
Expand
Collapse
|
|
goodsDescription |
[O] String
|
Max 20 char
|
|
id |
[O] String
|
|
Unique within the goods line. |
awb |
[O] String
|
Max 12 char
Pattern: ^[0-9]{3}[-][0-9]{8}$
|
|
statuses.shipment.goodsLines.detailLines.measurement
grossWeight |
[O] Number
|
3 decimals
|
Kilograms. |
quantity |
[O] Integer
|
|
|
volume |
[O] Number
|
3 decimals
|
Cubic metres. |
volumeWeight |
[O] Number
|
3 decimals
|
Kilograms. Usually only used for air freight. |
loadIndex |
[O] Number
|
3 decimals
|
|
palletPlaces |
[O] Number
|
3 decimals
|
|
statuses.shipment.goodsLines.dangerousGoods
code |
[M] String
|
Max 4 char
Pattern: ^[0-9]{1,4}$
|
UN code. |
suffix |
[O] String
|
Max 3 char
Pattern: ^[0-9]{1,3}$
|
|
tunnelCode |
[O] String
|
|
|
statuses.shipment.alerts
type |
[O] String
|
|
|
id |
[O] String
|
|
|
systemTime |
[O] String
|
Format: date-time
|
|
reason |
[O] String
|
|
|
reasonCode |
[O] String
|
|
|
remark |
[O] String
|
|
|
communicatedTimeLoad |
[O] String
|
Format: date-time
|
|
communicatedTimeUnload |
[O] String
|
Format: date-time
|
|
statuses.shipment.clearingIn
statuses.shipment.clearingIn.party
name |
[O] String
|
|
|
number |
[O] String
|
Max 6 char
Pattern: ^[0-9]{6}$
|
Jan de Rijk number of the existing party in Jan de Rijk system. |
code |
[O] String
|
Max 20 char
|
Jan de Rijk code of the existing party in Jan de Rijk system. |
address |
[M] Object
|
|
|
contact |
[O] Object
|
|
|
statuses.shipment.clearingIn.party.address
locationCode |
[O] String
|
Max 100 char
|
In case the location is an airport, this will be the IATA code. |
name1 |
[O] String
|
Max 100 char
|
|
line1 |
[O] String
|
Max 100 char
|
Street name and number. |
city |
[O] String
|
Max 100 char
|
|
postalCode |
[M] String
|
Max 10 char
|
|
countryName |
[O] String
|
Max 100 char
|
|
countryCode |
[O] String
|
Max 2 char
Pattern: ^[A-Z]{2}$
|
ISO-2 country code. |
longitude |
[O] Number
|
|
|
latitude |
[O] Number
|
|
|
type |
[O] String
|
Possible values:
"normal"
|
|
value |
[O] String
|
|
E-mail address. |
type |
[O] String
|
Possible values:
"normal"
|
|
value |
[O] String
|
|
Phone number. |
statuses.shipment.clearingOut
statuses.shipment.clearingOut.party
name |
[O] String
|
|
|
number |
[O] String
|
Max 6 char
Pattern: ^[0-9]{6}$
|
Jan de Rijk number of the existing party in Jan de Rijk system. |
code |
[O] String
|
Max 20 char
|
Jan de Rijk code of the existing party in Jan de Rijk system. |
address |
[M] Object
|
|
|
contact |
[O] Object
|
|
|
statuses.shipment.clearingOut.party.address
locationCode |
[O] String
|
Max 100 char
|
In case the location is an airport, this will be the IATA code. |
name1 |
[O] String
|
Max 100 char
|
|
line1 |
[O] String
|
Max 100 char
|
Street name and number. |
city |
[O] String
|
Max 100 char
|
|
postalCode |
[M] String
|
Max 10 char
|
|
countryName |
[O] String
|
Max 100 char
|
|
countryCode |
[O] String
|
Max 2 char
Pattern: ^[A-Z]{2}$
|
ISO-2 country code. |
longitude |
[O] Number
|
|
|
latitude |
[O] Number
|
|
|
type |
[O] String
|
Possible values:
"normal"
|
|
value |
[O] String
|
|
E-mail address. |
type |
[O] String
|
Possible values:
"normal"
|
|
value |
[O] String
|
|
Phone number. |
statuses.shipment.originalLoading
party |
[M] Object
|
|
|
dateTimes |
[M] Object
|
|
Estimated date/time of relevant events. Actual date/time if the event has already happened. |
milestones |
[M] Object
|
|
Actual date/time of relevant events. null if the event did not yet happen. |
reference |
[O] String
|
|
|
statuses.shipment.originalLoading.party
name |
[O] String
|
|
|
number |
[O] String
|
Max 6 char
Pattern: ^[0-9]{6}$
|
Jan de Rijk number of the existing party in Jan de Rijk system. |
code |
[O] String
|
Max 20 char
|
Jan de Rijk code of the existing party in Jan de Rijk system. |
address |
[M] Object
|
|
|
contact |
[O] Object
|
|
|
statuses.shipment.originalLoading.party.address
locationCode |
[O] String
|
Max 100 char
|
In case the location is an airport, this will be the IATA code. |
name1 |
[O] String
|
Max 100 char
|
|
line1 |
[O] String
|
Max 100 char
|
Street name and number. |
city |
[O] String
|
Max 100 char
|
|
postalCode |
[M] String
|
Max 10 char
|
|
countryName |
[O] String
|
Max 100 char
|
|
countryCode |
[O] String
|
Max 2 char
Pattern: ^[A-Z]{2}$
|
ISO-2 country code. |
longitude |
[O] Number
|
|
|
latitude |
[O] Number
|
|
|
type |
[O] String
|
Possible values:
"normal"
|
|
value |
[O] String
|
|
E-mail address. |
type |
[O] String
|
Possible values:
"normal"
|
|
value |
[O] String
|
|
Phone number. |
statuses.shipment.originalLoading.dateTimes
Estimated date/time of relevant events. Actual date/time if the event has already happened.
opening |
[O] String
|
Format: date-time
|
Includes time zone indicator. |
closing |
[O] String
|
Format: date-time
|
Includes time zone indicator. |
arrival |
[O] String
|
Format: date-time
|
Includes time zone indicator. |
start |
[O] String
|
Format: date-time
|
Includes time zone indicator. |
end |
[O] String
|
Format: date-time
|
Includes time zone indicator. |
statuses.shipment.originalLoading.milestones
Actual date/time of relevant events. null if the event did not yet happen.
arrival |
[O] String
|
Format: date-time
|
Includes time zone indicator. |
start |
[O] String
|
Format: date-time
|
Includes time zone indicator. |
end |
[O] String
|
Format: date-time
|
Includes time zone indicator. |
statuses.shipment.finalUnloading
party |
[M] Object
|
|
|
dateTimes |
[M] Object
|
|
Estimated date/time of relevant events. Actual date/time if the event has already happened. |
milestones |
[M] Object
|
|
Actual date/time of relevant events. null if the event did not yet happen. |
reference |
[O] String
|
|
|
statuses.shipment.finalUnloading.party
name |
[O] String
|
|
|
number |
[O] String
|
Max 6 char
Pattern: ^[0-9]{6}$
|
Jan de Rijk number of the existing party in Jan de Rijk system. |
code |
[O] String
|
Max 20 char
|
Jan de Rijk code of the existing party in Jan de Rijk system. |
address |
[M] Object
|
|
|
contact |
[O] Object
|
|
|
statuses.shipment.finalUnloading.party.address
locationCode |
[O] String
|
Max 100 char
|
In case the location is an airport, this will be the IATA code. |
name1 |
[O] String
|
Max 100 char
|
|
line1 |
[O] String
|
Max 100 char
|
Street name and number. |
city |
[O] String
|
Max 100 char
|
|
postalCode |
[M] String
|
Max 10 char
|
|
countryName |
[O] String
|
Max 100 char
|
|
countryCode |
[O] String
|
Max 2 char
Pattern: ^[A-Z]{2}$
|
ISO-2 country code. |
longitude |
[O] Number
|
|
|
latitude |
[O] Number
|
|
|
type |
[O] String
|
Possible values:
"normal"
|
|
value |
[O] String
|
|
E-mail address. |
type |
[O] String
|
Possible values:
"normal"
|
|
value |
[O] String
|
|
Phone number. |
statuses.shipment.finalUnloading.dateTimes
Estimated date/time of relevant events. Actual date/time if the event has already happened.
opening |
[O] String
|
Format: date-time
|
Includes time zone indicator. |
closing |
[O] String
|
Format: date-time
|
Includes time zone indicator. |
arrival |
[O] String
|
Format: date-time
|
Includes time zone indicator. |
start |
[O] String
|
Format: date-time
|
Includes time zone indicator. |
end |
[O] String
|
Format: date-time
|
Includes time zone indicator. |
statuses.shipment.finalUnloading.milestones
Actual date/time of relevant events. null if the event did not yet happen.
arrival |
[O] String
|
Format: date-time
|
Includes time zone indicator. |
start |
[O] String
|
Format: date-time
|
Includes time zone indicator. |
end |
[O] String
|
Format: date-time
|
Includes time zone indicator. |
statuses.shipment.vehicle
id |
[O] String
|
|
|
licensePlate |
[O] String
|
|
|
typeDescription |
[O] String
|
|
|
charter |
[O] Object
|
|
|
position |
[O] Object
|
|
|
statuses.shipment.vehicle.charter
name |
[M] String
|
|
|
code |
[M] String
|
|
Jan de Rijk code for the charter. |
statuses.shipment.vehicle.position
longitude |
[O] Number
|
|
|
latitude |
[O] Number
|
|
|
addressDescription |
[O] String
|
|
|
dateTime |
[O] String
|
Format: date-time
|
Date/time the position was registered. Includes time zone indicator. |
statuses.shipment.drivers
id |
[M] String
|
|
|
name |
[O] String
|
|
|
hasAdrLicense |
[O] Boolean
|
|
|
statuses.shipment.pulledUnit
id |
[O] String
|
|
|
licensePlate |
[O] String
|
|
|
typeDescription |
[O] String
|
|
|
statuses.shipment.freightUnits
id |
[M] String
|
|
|
licensePlate |
[O] String
|
|
|
typeDescription |
[O] String
|
|
|
position |
[O] Object
|
|
|
condition |
[O] Object
|
|
|
statuses.shipment.freightUnits.position
longitude |
[O] Number
|
|
|
latitude |
[O] Number
|
|
|
addressDescription |
[O] String
|
|
|
dateTime |
[O] String
|
Format: date-time
|
Date/time the position was registered. Includes time zone indicator. |
statuses.shipment.freightUnits.condition
statuses.shipment.freightUnits.condition.temperatures
sensorKey |
[O] String
|
Possible values:
"front"
"back"
|
|
value |
[O] Number
|
|
|
statuses.shipment.documents
type |
[O] String
|
|
|
reference |
[O] String
|
|
|