Free TRIALLogin Online Application

DGAssistant Dangerous Goods API (2.10.0)

The DGAssistant Dangerous Goods API is a JSON REST API that connects your ERP, warehouse or transport management system to DGAssistant and returns dangerous goods documents compliant with ADR, IMDG, IATA and 49 CFR.

Your system sends the data of each consignment and DGAssistant supplies the regulatory knowledge: it checks every product and package against the applicable regulation, applies the most favourable exemption and returns the Transport Document, the IMO Dangerous Goods Declaration, the Shipper's Declaration for Dangerous Goods, the checklist and the marking and labelling of packages, ready to print.

It also covers consolidation and transport (master consignments, segregation checks, the dangerous goods manifest, the Notification to Captain (NOTOC) and CMR and e-CMR consignment notes), with webhooks that keep your system informed. Fewer manual steps, fewer errors and documents that follow every change in the regulations.

OpenAPI 3.0 specification

OpenAPI 2.0 (Swagger 2.0) specification

Create Batch Consignment & Start Interactive Consignment

Consignments batch processing or start of interactive consignment

Creates a new consignment with all contents for Batch processing or starts a new consignment with the first content for Interactive processing.

Creates a new consignment, optionally including the first contents for interactive workflows. Overpacks in the body are processed for every regulation (ADR, IMDG and IATA). In batch processing, when a line aborts the transaction of the batch, every remaining line is reported as not added, with its position in the list, starting at 0.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

participants (shipper, carrier, loader ...) and goods

consignmentType
required
string
Enum: "PackagesAndReceptacles" "Tank" "Bulk"

Type of consignment by load configuration: PackagesAndReceptacles, Tank or Bulk.

workPlaceCode
required
string

Code of the workplace issuing the consignment.

date
required
string <date>

Issue date of the consignment, in ISO 8601 format.

regulation
required
string
Enum: "Adr" "Imdg" "Iata" "Cfr49"

Dangerous goods regulation applicable to the consignment: Adr, Imdg, Iata or Cfr49.

predefinedShipperCode
string

Code of an existent Shipper

object

Shipper participant data provided directly without using a predefined record.

predefinedConsigneeCode
string

Code of an existent Consignee

object

Consignee participant data provided directly without using a predefined record.

Array of objects (SimpleProductTransportMode)

List of predefined simple products to include in the consignment.

Array of objects (SimpleProductTransportModeOnTheFly)

List of simple products fully described in the request, without predefined record.

Array of objects (MixedPackingProductTransportMode)

List of predefined mixed packing products to include in the consignment.

Array of objects (MixedPackingProductTransportModeOnTheFly)

List of mixed packing products fully described in the request, without predefined record.

Array of objects (Overpack)

Overpacks of the consignment. Processed for every regulation (ADR 5.1.2, IMDG 5.1.2, IATA 5.0.1.5). Up to version 2.7.2 they were only applied to air consignments and silently ignored otherwise.

predefinedLoaderCode
string

Code of an existent Loader

object

Loader participant data provided directly without using a predefined record.

predefinedCarrierCode
string

Code of an existent Carrier

object

Carrier participant data provided directly without using a predefined record.

driver
string

Full name of the driver in charge of the transport.

vehicleRegistration
string

Registration plate of the vehicle.

trailerRegistration
string

Registration plate of the trailer, if applicable.

deliveryNoteNumber
string

Reference number of the delivery note associated with the consignment.

emergencyPhone
string

Emergency telephone number available during transport.

shipperReferenceNumber
string

Reference number assigned to the consignment by the shipper.

freightForwarderReference
string

Reference number assigned to the consignment by the freight forwarder.

additionalInformation
string

Additional information of the consignment.

isExclusiveUseShipment
boolean

True when the consignment travels under exclusive use. Cross-modal header-level flag: renders the 'EXCLUSIVE USE SHIPMENT' mention on every Class 7 item for the three regulatory documents (ADR 5.4.1.2.5.1, IMDG 5.4.1.5.7.1.7, IATA DGR 10.8.3.9). If the property is omitted (null) the existing header value is preserved.

object

IATA-specific data of the consignment, when transport mode is air.

object

IMDG-specific data of the consignment, when transport mode is sea.

object

ADR-specific data of the consignment, when transport mode is road: the data that only Spain requires, such as the administrative control document.

specialFeatures
Array of strings (ConsignmentSpecialFeature)
Items Enum: "ShowRedStripes" "ShowBlueStripes" "ShowMarksForAllPackages" "ShowLabelsForAllPackages" "ShowMultimodalIataDeclaration" "DuplicateIataIdentification" "AdministrativeControlDocument"

Optional features of the consignment. Each one enables a specific behaviour or document and applies only to certain regulations; a feature that does not apply to the regulation of the consignment is rejected. When the field is omitted, the applicable defaults are applied.

Responses

Request samples

Content type
application/json
{
  • "consignmentType": "PackagesAndReceptacles",
  • "regulation": "Adr",
  • "date": "2020-12-31",
  • "workPlaceCode": "WP001",
  • "predefinedShipperCode": "SHI001",
  • "onTheFlyShipper": {
    },
  • "predefinedConsigneeCode": "CON001",
  • "onTheFlyConsignee": {
    },
  • "predefinedSimpleProducts": [
    ],
  • "onTheFlySimpleProducts": [
    ],
  • "predefinedMixedPackingProducts": [
    ],
  • "onTheFlyMixedPackingProducts": [
    ],
  • "overpacks": [
    ],
  • "predefinedLoaderCode": "LOA001",
  • "onTheFlyLoader": {
    },
  • "predefinedCarrierCode": "CAR001",
  • "onTheFlyCarrier": {
    },
  • "driver": "David Martin",
  • "vehicleRegistration": "VEHREG 8917",
  • "trailerRegistration": "TRAREG 4885",
  • "deliveryNoteNumber": "INV0001",
  • "emergencyPhone": "+1 888 387 2848",
  • "shipperReferenceNumber": "SRN001",
  • "freightForwarderReference": "FFN001",
  • "additionalInformation": "Contact person: John Smith",
  • "isExclusiveUseShipment": false,
  • "iataData": {
    },
  • "imdgData": {
    },
  • "adrData": {
    },
  • "specialFeatures": [
    ]
}

Response samples

Content type
application/json
{
  • "newItemId": 23,
  • "newItemIsValid": true,
  • "success": true,
  • "httpStatusCode": 201,
  • "message": "Item Created OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Get & Delete Consignment

Retrieves data of Consignment & Delete Consignment

Get consignment data in JSON Format.

Returns the consignment header, participants, items and calculated regulatory data in JSON format.

Note on overpacks: for ADR and IMDG consignments the items collection does not include overpack containers nor their nesting; the contents of an overpack are returned as top-level items. Overpack items are only returned for IATA.

Authorizations:
basicAuthbearerAuth
path Parameters
consignmentId
required
integer <int64>

Id of the consignment

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "consignmentResponse": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Delete consignment.

Permanently removes the consignment and all its associated items and overpacks. The consignment is removed from its master consignment, its packages are unloaded from every transport equipment, and its live consolidation request is withdrawn when it is pending or rejected when it was accepted. The request is rejected with 400 when the master consignment of the consignment, or one that owns transport equipment carrying its packages, is approved, closed or cancelled.

Authorizations:
basicAuthbearerAuth
path Parameters
consignmentId
required
integer <int64>

Id of the consignment

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Consignment Reporting

Consignments report management

downloads a frozen document by its public token

Returns the PDF of a frozen document snapshot. This operation is anonymous by design: the administrative control document of national road transport requires the address encoded in its QR code to produce the download directly, without credentials and without any intermediate page. The only protection of the resource is the unpredictability of the token, together with TLS and the expiry date. An unknown, disabled or expired token returns 404, never 403, so that the response does not reveal whether the document exists. The token can also be the public token of a cargo transport unit, encoded in the QR code of its consolidation label: it returns the latest packing list issued for the unit, in any language, until seven days after the arrival of the voyage of the unit, or seven days after the date of its master consignment when no arrival is known; before the first packing list is issued it returns 404.

path Parameters
documentToken
required
string

Public token of the document snapshot, or of the cargo transport unit, as encoded in the QR code of the document or of the consolidation label. 32 hexadecimal characters.

Responses

gets a report document of a consignment

Generates a base 64 encoded transport document, checklist, package marking or, for air consignments, the air waybill data sheet (AirWaybillData) with the dangerous goods statements to be shown on the air waybill. When none of the requested document types applies to the regulation of the consignment, the request is rejected with 400.

Authorizations:
basicAuthbearerAuth
path Parameters
consignmentId
required
integer <int64>

Id of the consignment

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

type of document

documentTypes
required
Array of strings (DocumentType) non-empty
Items Enum: "TransportDocument" "CheckList" "PackageMarking" "PackageMarkingSmallCustomSize" "AirWaybillData"

List of document types to be generated.

documentFormat
required
string
Enum: "PDF" "XLSX" "DOCX"

Output file format of the generated document: PDF, XLSX or DOCX.

documentSettings
Array of strings (DocumentSetting) >= 0 items
Items Enum: "HideRedStripesForIATATransportDocument" "ShowBlueStripesForIMDGTransportDocument" "EnglishCheckList" "SpanishCheckList" "FrenchCheckList" "GermanCheckList" "PortugueseCheckList" "RussianCheckList" "ChineseCheckList" "ItalianCheckList" "DutchCheckList" "TurkishCheckList" "PolishCheckList" "SwedishCheckList" "NorwegianCheckList" "CzechCheckList" "DanishCheckList" "GreekCheckList" "HungarianCheckList" "SlovakCheckList" "RomanianCheckList" "FinnishCheckList"

Optional rendering settings to customize the generated document.

Responses

Request samples

Content type
application/json
{
  • "documentTypes": [
    ],
  • "documentFormat": "PDF",
  • "documentSettings": [
    ]
}

Response samples

Content type
application/json
{
  • "base64EncodedFile": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

send by email a report document of a consignment

Generates and sends the requested consignment documents by email to the supplied recipients.

Authorizations:
basicAuthbearerAuth
path Parameters
consignmentId
required
integer <int64>

Id of the consignment

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

consignment document to be delivered and email addresses

documentTypes
required
Array of strings (DocumentType) non-empty
Items Enum: "TransportDocument" "CheckList" "PackageMarking" "PackageMarkingSmallCustomSize" "AirWaybillData"

List of document types to be generated.

documentFormat
required
string
Enum: "PDF" "XLSX" "DOCX"

Output file format of the generated document: PDF, XLSX or DOCX.

emailTo
required
string

Primary email recipient address.

documentSettings
Array of strings (DocumentSetting) >= 0 items
Items Enum: "HideRedStripesForIATATransportDocument" "ShowBlueStripesForIMDGTransportDocument" "EnglishCheckList" "SpanishCheckList" "FrenchCheckList" "GermanCheckList" "PortugueseCheckList" "RussianCheckList" "ChineseCheckList" "ItalianCheckList" "DutchCheckList" "TurkishCheckList" "PolishCheckList" "SwedishCheckList" "NorwegianCheckList" "CzechCheckList" "DanishCheckList" "GreekCheckList" "HungarianCheckList" "SlovakCheckList" "RomanianCheckList" "FinnishCheckList"

Optional rendering settings to customize the generated document.

emailCC
string

Email recipients to receive a carbon copy.

emailBCC
string

Email recipients to receive a blind carbon copy.

Responses

Request samples

Content type
application/json
{
  • "documentTypes": [
    ],
  • "documentFormat": "PDF",
  • "documentSettings": [
    ],
  • "emailTo": "dgmailbox@massivedynamics.com",
  • "emailCC": "dgmailboxcc@massivedynamics.com",
  • "emailBCC": "dgmailboxbcc@massivedynamics.com"
}

Response samples

Content type
application/json
{
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Add Contents to Interactive Consignment

Consignments interactive processing. Add contents to existing consignment

add a predefined product to an existent consignment

Adds a predefined simple product, identified by reference, to an existing interactive consignment.

Authorizations:
basicAuthbearerAuth
path Parameters
consignmentId
required
integer <int64>

Id of the consignment

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

predefined product to be added to the consignment

reference
required
string

Unique reference of the predefined product in the catalogue.

numberOfPackages
required
integer

Number of identical outer packages of this product in the consignment.

unitaryQuantity
number

Net quantity of substance per outer package.

unitaryGrossQuantity
number

Gross mass of one outer package, expressed in kilograms.

unitaryQuantityExplosive
number

Net explosive content per outer package, expressed in kilograms.

fillingDegree
number

Filling degree of the package, expressed as percentage.

authorizations
string

Authorizations or special provisions applicable to the transport.

innerPackagesNumber
integer

Number of inner packages contained in each outer package.

innerPackageQuantity
number

Net quantity per inner package.

innerPackageCapacity
number

Capacity of each inner package, in litres (for aerosols, the capacity of the dispenser). It decides the IMDG stowage category of aerosols (SW22) and the statement of IMDG 5.4.1.5.8.

innerPackageQuantityExplosive
number

Net explosive content per inner package, expressed in kilograms.

object

Optional per-shipment radiological override for Class 7 products. Defaults to the values stored in the product catalogue.

consignmentItemCode
string

Optional client identifier of the item within the consignment.

Responses

Request samples

Content type
application/json
{
  • "reference": "PROMOD001",
  • "numberOfPackages": 3,
  • "unitaryQuantity": 1.2,
  • "unitaryGrossQuantity": 2,
  • "unitaryQuantityExplosive": 0,
  • "fillingDegree": 100,
  • "authorizations": "Auth 0001",
  • "innerPackagesNumber": 0,
  • "innerPackageQuantity": 0,
  • "innerPackageCapacity": 0.5,
  • "innerPackageQuantityExplosive": 0,
  • "radiological": {
    },
  • "consignmentItemCode": "ITEM-9515-4013-AA46"
}

Response samples

Content type
application/json
{
  • "newItemId": 23,
  • "newItemIsValid": true,
  • "success": true,
  • "httpStatusCode": 201,
  • "message": "Item Created OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

add a product defined on the fly to an existent consignment

Adds a non predefined simple product, fully described in the request, to an existing consignment.

Authorizations:
basicAuthbearerAuth
path Parameters
consignmentId
required
integer <int64>

Id of the consignment

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

defined on the fly product to be added to the consignment

isDangerousGood
required
boolean

Indicates whether the product is regulated as dangerous goods.

isEnvironmentallyHazardous
required
boolean

Indicates whether the substance is environmentally hazardous (marine pollutant). Optional when the catalogue determines it for every regulation enabled for the product: if omitted, the value is taken from the catalogue marks of the enabled regulations (UN 3077 and UN 3082 for IATA); when the catalogue leaves it undecided for any of them, the field is required.

isEmpty
required
boolean

Indicates whether the package is empty and uncleaned.

physicalState
required
string
Enum: "Liquid" "Solid" "Gas"

Physical state of the substance: Liquid, Solid or Gas.

measureUnit
required
string
Enum: "Kg" "L"

Measurement unit for quantities: Kg or L.

pureMixOrSolution
required
string
Enum: "Pure" "Mix" "Solution"

Indicates whether the substance is pure, a mixture or a solution.

numberOfPackages
required
integer

Number of identical outer packages of this product in the consignment.

packageId
required
integer

Identifier of the outer package type from master data.

hasInnerPackages
required
boolean

Indicates whether the outer package contains inner packages.

productName
string

Commercial name of the product.

productCode
string

Internal product code assigned by the customer.

dangerousGoodId
integer

Identifier of the dangerous good entry in master data.

mixOrSolutionPercentage
number

Percentage of the dangerous component in the mixture or solution.

flashPoint
number

Closed-cup flash point of the substance, expressed in Celsius. For Class 3 it is checked against the packing group of the dangerous good in each enabled regulation (ADR 2.2.3.1.3, IMDG 2.3.2.6, IATA 3.3.2): a flash point of 23 °C or above with packing group II is rejected when strictPackingInstructionCheck is true and reported as a warning otherwise, and a flash point below 23 °C with packing group III is always reported as a warning, since it is only admissible for viscous substances. Under 49 CFR, which is not available yet, this behaviour will be described when it is.

controlTemperature
number

Control temperature in Celsius (ADR 5.4.1.2.3.1 / IMDG 5.4.1.5.4 and 5.4.1.5.5). Mandatory together with emergencyTemperature for temperature-controlled substances (UN 3111-3120, 3231-3240, 3533 and 3534); optional for stabilized substances that allow temperature control. Must be lower than emergencyTemperature.

emergencyTemperature
number

Emergency temperature in Celsius (ADR 5.4.1.2.3.1 / IMDG 5.4.1.5.4 and 5.4.1.5.5). Provided in pair with controlTemperature and strictly higher than it.

density
number

Density of the substance, expressed in kilograms per liter. Under ADR and IMDG it is needed to verify a quantity limit expressed in a unit other than the measure unit of the product, such as a limit in kilograms for a product declared in liters; without it, that limit is not verified and the response reports it as a warning (an error with strictPackingInstructionCheck). Under 49 CFR, which is not available yet, this behaviour will be described when it is.

packageHomologationId
integer

Identifier of the package UN homologation code from master data. Under ADR and IMDG, the net quantity and gross mass limits of the single or outer packaging are taken from the row of this homologation in the packing instruction: when it is omitted for a packaging that requires homologation, those limits are not verified and the response reports it as a warning (an error with strictPackingInstructionCheck). Under 49 CFR, which is not available yet, this behaviour will be described when it is.

packingInstructionId
integer

Identifier of the applicable packing instruction. Under ADR and IMDG it may be omitted: the packing instruction of the dangerous good that admits the declared packaging is then applied, and its quantity limits are checked. When none or several of them admit the packaging, none is applied and its quantity limits are not verified: with strictPackingInstructionCheck the request is rejected, naming the candidates when there are several, and otherwise the response reports it as a warning with the rule reference ADR 4.1.4 or IMDG 4.1.4. Under IATA, when omitted, it is deduced from the packaging and the net quantity. Under 49 CFR, which is not available yet, this behaviour will be described when it is.

strictPackingInstructionCheck
boolean

Optional. When true, the packing instruction must belong to the dangerous good and the packaging must be included in the packing instruction list for each enabled ADR or IMDG regulation: the homologation of the single or outer packaging and the inner packaging material. When absent or false, these verifications are not performed for ADR and IMDG. The IATA regulation applies this verification in all cases. Under ADR and IMDG, a quantity limit that cannot be verified because the request lacks the density (in a packing instruction or in the excepted quantity code) or the homologation of the packaging is reported as an error when true and as a warning otherwise; when true, a flash point that is not consistent with packing group II is also reported as an error instead of a warning. Not returned by any response: it is a write-time validation switch only and is not stored. When true and packingInstructionId is omitted for ADR or IMDG, the request is rejected when no packing instruction, or more than one, admits the declared packaging. Under 49 CFR, which is not available yet, this behaviour will be described when it is.

imdgSegregationGroupId
integer

Identifier of the IMDG segregation group of the substance (IMDG Code 3.1.4), or 255 for no segregation group. It applies to the IMDG Code only. When the entry of the Dangerous Goods List already assigns segregation groups, those apply and this value is ignored. Otherwise, when it is omitted, an entry that is not an N.O.S. entry is recorded without segregation group, and an N.O.S. entry is rejected, because the consignor has to state its group.

englishTechnicalName
string

Technical name of the substance in English: the name, such as the chemical name of the components that give the hazard, that is added in parentheses to the proper shipping name of an N.O.S. entry or of another entry that requires a technical name. It is required when the dangerous good requires a technical name under the regulations that apply to the product, and it is the name printed on the IMDG Multimodal Dangerous Goods Form and on the Shipper's Declaration for Dangerous Goods, which are issued in English.

countryOfOriginLanguageTechnicalName
string

Technical name of the substance in the language of the country of the account, such as Spanish for an account in Spain. It is printed on the transport documents that are issued in that language, such as the IMDG Multimodal Dangerous Goods Form, which uses it as second language after English. It is required, together with englishTechnicalName, when the dangerous good requires a technical name and this language is not English. It is ignored when this language is English or when another technical name of the product is already given in this language.

adrPrincipalLanguageTechnicalName
string

Technical name of the substance in the ADR official language configured for the user (English, French or German). The ADR transport document is printed in the language of the country of the account and also in this language when it is a different one. It applies to ADR only, and it is required, together with englishTechnicalName, when the dangerous good requires a technical name and the ADR official language of the user is French or German; when that language is English, englishTechnicalName is used and this value is ignored.

unitaryQuantity
number

Net quantity of substance per outer package.

unitaryGrossQuantity
number

Gross mass of one outer package, expressed in kilograms.

unitaryQuantityExplosive
number

Net explosive content per outer package, expressed in kilograms.

fillingDegree
number

Filling degree of the package, expressed as percentage.

authorizations
string

Authorizations or special provisions applicable to the transport.

innerPackageMaterialId
integer

Identifier of the inner package material from master data.

innerPackagesNumber
integer

Number of inner packages contained in each outer package.

innerPackageQuantity
number

Net quantity per inner package.

innerPackageCapacity
number

Capacity of each inner package, in litres (for aerosols, the capacity of the dispenser). It decides the IMDG stowage category of aerosols (SW22) and the statement of IMDG 5.4.1.5.8.

innerPackageQuantityExplosive
number

Net explosive content per inner package, expressed in kilograms.

object

Radiological data. Mandatory when the on-the-fly product belongs to Class 7 (radioactive). Must be omitted for non-radioactive products.

specialFeatures
string
Enum: "IsExtraViscousAccordingAdr" "IsExtraViscousAccordingImdg" "IsSalvagePackage"

Special features of the product transport mode. The extra viscous features apply to Class 3 substances under the corresponding regulation; the salvage packaging feature has no restriction.

consignmentItemCode
string

Optional client identifier of the item within the consignment.

Responses

Request samples

Content type
application/json
{
  • "productName": "PRONAM001",
  • "productCode": "PROCOD001",
  • "isDangerousGood": true,
  • "dangerousGoodId": 2301,
  • "isEnvironmentallyHazardous": false,
  • "isEmpty": false,
  • "physicalState": "Liquid",
  • "measureUnit": "Kg",
  • "pureMixOrSolution": "Pure",
  • "mixOrSolutionPercentage": 0,
  • "flashPoint": 30.2,
  • "controlTemperature": 15,
  • "emergencyTemperature": 20,
  • "density": 1,
  • "numberOfPackages": 3,
  • "packageId": 14,
  • "packageHomologationId": 43,
  • "packingInstructionId": 0,
  • "strictPackingInstructionCheck": true,
  • "imdgSegregationGroupId": 0,
  • "englishTechnicalName": "XYLENE AND BENZENE",
  • "countryOfOriginLanguageTechnicalName": "XILENO Y BENCENO",
  • "adrPrincipalLanguageTechnicalName": "XYLOL UND BENZOL",
  • "hasInnerPackages": false,
  • "unitaryQuantity": 1.2,
  • "unitaryGrossQuantity": 2,
  • "unitaryQuantityExplosive": 0,
  • "fillingDegree": 100,
  • "authorizations": "Auth 0001",
  • "innerPackageMaterialId": 0,
  • "innerPackagesNumber": 0,
  • "innerPackageQuantity": 0,
  • "innerPackageCapacity": 0.5,
  • "innerPackageQuantityExplosive": 0,
  • "radiological": {
    },
  • "specialFeatures": "IsExtraViscousAccordingAdr",
  • "consignmentItemCode": "ITEM-9515-4013-AA46"
}

Response samples

Content type
application/json
{
  • "newItemId": 23,
  • "newItemIsValid": true,
  • "success": true,
  • "httpStatusCode": 201,
  • "message": "Item Created OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

add a predefined mixed packing to an existent consignment

Adds a predefined mixed packing product, identified by reference, to an existing interactive consignment. It is also the attach step of the interactive workflow: reference is the productCode given to POST /mixedPackingProductInteractive, and the product must already have at least two contents. A mixed packing whose contents include Class 7 (radioactive) material is rejected, including products created before that restriction existed.

Authorizations:
basicAuthbearerAuth
path Parameters
consignmentId
required
integer <int64>

Id of the consignment

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

predefined mixed packing to be added to the consignment

reference
required
string

Unique reference of the predefined mixed packing in the catalogue.

numberOfPackages
required
integer

Number of identical outer packages of this mixed packing in the consignment.

unitaryGrossQuantity
number

Gross mass of one outer package, expressed in kilograms.

consignmentItemCode
string

Optional client identifier of the item within the consignment.

Responses

Request samples

Content type
application/json
{
  • "reference": "MIXPACMOD001",
  • "numberOfPackages": 3,
  • "unitaryGrossQuantity": 21,
  • "consignmentItemCode": "ITEM-9515-4013-AA46"
}

Response samples

Content type
application/json
{
  • "newItemId": 23,
  • "newItemIsValid": true,
  • "success": true,
  • "httpStatusCode": 201,
  • "message": "Item Created OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

add a mixed packing defined on the fly to an existent consignment

Adds a non predefined mixed packing product, described in request, to existing consignment.

Authorizations:
basicAuthbearerAuth
path Parameters
consignmentId
required
integer <int64>

Id of the consignment

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

defined on the fly mixed packing to be added to the consignment

numberOfPackages
required
integer

Number of identical outer packages of this mixed packing in the consignment.

outerPackageId
required
integer

Identifier of the outer package type from master data.

outerPackageHomologationId
required
integer

Identifier of the outer package UN homologation code from master data.

required
Array of objects (MixedPackingProductTransportModeContent)

List of contents within the mixed packing.

productName
string

Commercial name of the mixed packing product.

productCode
string

Internal product code assigned by the customer.

unitaryGrossQuantity
number

Gross mass of one outer package, expressed in kilograms.

consignmentItemCode
string

Optional client identifier of the item within the consignment.

Responses

Request samples

Content type
application/json
{
  • "productName": "MIXPACNAM001",
  • "productCode": "MIXPACCOD001",
  • "numberOfPackages": 3,
  • "unitaryGrossQuantity": 21,
  • "outerPackageId": 14,
  • "outerPackageHomologationId": 43,
  • "contents": [
    ],
  • "consignmentItemCode": "ITEM-9515-4013-AA46"
}

Response samples

Content type
application/json
{
  • "newItemId": 23,
  • "newItemIsValid": true,
  • "success": true,
  • "httpStatusCode": 201,
  • "message": "Item Created OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

add content to an existent mixed packing in a consignment

Adds an additional inner content to an existing mixed packing of the consignment.

Authorizations:
basicAuthbearerAuth
path Parameters
consignmentId
required
integer <int64>

Id of the consignment

mixedPackingProductId
required
integer <int64>

Id of the mixed packing product

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

content to be added to the mixed packing product

isEnvironmentallyHazardous
required
boolean

Indicates whether the substance is environmentally hazardous (marine pollutant). Optional when the catalogue determines it for every regulation enabled for the product: if omitted, the value is taken from the catalogue marks of the enabled regulations (UN 3077 and UN 3082 for IATA); when the catalogue leaves it undecided for any of them, the field is required.

physicalState
required
string
Enum: "Liquid" "Solid" "Gas"

Physical state of the substance: Liquid, Solid or Gas.

measureUnit
required
string
Enum: "Kg" "L"

Measurement unit for quantities: Kg or L.

pureMixOrSolution
required
string
Enum: "Pure" "Mix" "Solution"

Indicates whether the substance is pure, a mixture or a solution.

numberOfInnerPackages
required
integer

Number of inner packages of this content within the mixed packing.

innerPackageMaterialId
required
integer

Identifier of the inner package material from master data.

innerPackageQuantity
required
number

Net quantity per inner package.

dangerousGoodId
integer

Identifier of the dangerous good entry in master data. Class 7 (radioactive) entries are rejected as contents of a mixed packing: declare radioactive material as a simple product with radiological.nuclides[].

mixOrSolutionPercentage
number

Percentage of the dangerous component in the mixture or solution.

flashPoint
number

Closed-cup flash point of the substance, expressed in Celsius. For Class 3 it is checked against the packing group of the dangerous good in each enabled regulation (ADR 2.2.3.1.3, IMDG 2.3.2.6, IATA 3.3.2): a flash point of 23 °C or above with packing group II is rejected when strictPackingInstructionCheck is true and reported as a warning otherwise, and a flash point below 23 °C with packing group III is always reported as a warning, since it is only admissible for viscous substances. Under 49 CFR, which is not available yet, this behaviour will be described when it is.

density
number

Density of the substance, expressed in kilograms per liter. Under ADR and IMDG it is needed to verify a quantity limit expressed in a unit other than the measure unit of the content, such as the net quantity limit in kilograms of the outer packaging for a content declared in liters, or an excepted quantity limit in milliliters for a liquid declared in kilograms; without it, that limit is not verified and the response reports it as a warning (an error with strictPackingInstructionCheck). Under 49 CFR, which is not available yet, this behaviour will be described when it is.

imdgSegregationGroupId
integer

Identifier of the IMDG segregation group of the substance (IMDG Code 3.1.4), or 255 for no segregation group. It applies to the IMDG Code only. When the entry of the Dangerous Goods List already assigns segregation groups, those apply and this value is ignored. Otherwise, when it is omitted, an entry that is not an N.O.S. entry is recorded without segregation group, and an N.O.S. entry is rejected, because the consignor has to state its group.

englishTechnicalName
string

Technical name of the substance in English: the name, such as the chemical name of the components that give the hazard, that is added in parentheses to the proper shipping name of an N.O.S. entry or of another entry that requires a technical name. It is required when the dangerous good requires a technical name under the regulations that apply to the product, and it is the name printed on the IMDG Multimodal Dangerous Goods Form and on the Shipper's Declaration for Dangerous Goods, which are issued in English.

countryOfOriginLanguageTechnicalName
string

Technical name of the substance in the language of the country of the account, such as Spanish for an account in Spain. It is printed on the transport documents that are issued in that language, such as the IMDG Multimodal Dangerous Goods Form, which uses it as second language after English. It is required, together with englishTechnicalName, when the dangerous good requires a technical name and this language is not English. It is ignored when this language is English or when another technical name of the product is already given in this language.

adrPrincipalLanguageTechnicalName
string

Technical name of the substance in the ADR official language configured for the user (English, French or German). The ADR transport document is printed in the language of the country of the account and also in this language when it is a different one. It applies to ADR only, and it is required, together with englishTechnicalName, when the dangerous good requires a technical name and the ADR official language of the user is French or German; when that language is English, englishTechnicalName is used and this value is ignored.

authorizations
string

Authorizations or special provisions applicable to the transport.

packingInstructionId
integer

Identifier of the applicable packing instruction. Under ADR and IMDG it may be omitted: the packing instruction of the dangerous good that admits the outer packaging of the mixed packing and the inner packaging material of the content is then applied, and its quantity limits are checked. When none or several of them admit it, none is applied and its quantity limits are not verified: with strictPackingInstructionCheck the request is rejected, naming the candidates when there are several, and otherwise the response reports it as a warning with the rule reference ADR 4.1.4 or IMDG 4.1.4. Under IATA, when omitted, it is deduced from the packaging and the net quantity. Under 49 CFR, which is not available yet, this behaviour will be described when it is.

strictPackingInstructionCheck
boolean

Optional. When true, for each enabled ADR or IMDG regulation the packing instruction of the content must belong to the dangerous good, and the outer packaging of the mixed packing and the inner packaging material of the content must be included in its list. When absent or false, these verifications are not performed for ADR and IMDG. The IATA regulation applies this verification in all cases. Under ADR and IMDG, a quantity limit that cannot be verified because the request lacks the density, in a packing instruction or in the excepted quantity code, is reported as an error when true and as a warning otherwise; when true, a flash point that is not consistent with packing group II is also reported as an error instead of a warning. Not returned by any response: it is a write-time validation switch only and is not stored. When true and packingInstructionId is omitted for ADR or IMDG, the request is rejected when no packing instruction, or more than one, admits the packaging of the content. Under 49 CFR, which is not available yet, this behaviour will be described when it is.

innerPackageCapacity
number

Capacity of each inner package, in litres (for aerosols, the capacity of the dispenser). It decides the IMDG stowage category of aerosols (SW22) and the statement of IMDG 5.4.1.5.8.

innerPackageQuantityExplosive
number

Net explosive content per inner package, expressed in kilograms.

consignmentItemCode
string

Optional client identifier of the item within the consignment.

Responses

Request samples

Content type
application/json
{
  • "dangerousGoodId": 2301,
  • "isEnvironmentallyHazardous": false,
  • "physicalState": "Liquid",
  • "measureUnit": "Kg",
  • "pureMixOrSolution": "Pure",
  • "mixOrSolutionPercentage": 0,
  • "flashPoint": 30.2,
  • "density": 1,
  • "imdgSegregationGroupId": 0,
  • "englishTechnicalName": "XYLENE AND BENZENE",
  • "countryOfOriginLanguageTechnicalName": "XILENO Y BENCENO",
  • "adrPrincipalLanguageTechnicalName": "XYLOL UND BENZOL",
  • "authorizations": "Auth 0001",
  • "innerPackageMaterialId": 1,
  • "packingInstructionId": 0,
  • "strictPackingInstructionCheck": true,
  • "numberOfInnerPackages": 3,
  • "innerPackageQuantity": 0.1,
  • "innerPackageCapacity": 0.5,
  • "innerPackageQuantityExplosive": 0,
  • "consignmentItemCode": "ITEM-9515-4013-AA46"
}

Response samples

Content type
application/json
{
  • "newItemId": 23,
  • "newItemIsValid": true,
  • "success": true,
  • "httpStatusCode": 201,
  • "message": "Item Created OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

delete a product (simpleProduct, simpleProductOnTheFly, mixedPackingProduct or mixedPackingProductOnTheFly)

Removes a product (simple or mixed packing) from the consignment by its identifier. Its packages are unloaded from every transport equipment. The request is rejected with 400 when the master consignment of the consignment, or one that owns transport equipment carrying its packages, is approved, closed or cancelled.

Authorizations:
basicAuthbearerAuth
path Parameters
consignmentId
required
integer <int64>

Id of the consignment

productId
required
integer <int64>

Id of the product

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

add an overpack to an existent consignment

Adds an overpack, optionally with grouped products, to an existing interactive consignment.

Authorizations:
basicAuthbearerAuth
path Parameters
consignmentId
required
integer <int64>

Id of the consignment

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

overpack to be added to a consignment

identifiersOfOverpacks
required
Array of strings

identifier for each identical overpacks

numberOfOverpacks
required
integer >= 1

number of identical overpacks

Array of objects (SimpleProductTransportMode)

Predefined simple products grouped within the overpack.

Array of objects (SimpleProductTransportModeOnTheFly)

Simple products fully described in the request, grouped within the overpack.

Array of objects (MixedPackingProductTransportMode)

Predefined mixed packing products grouped within the overpack.

Array of objects (MixedPackingProductTransportModeOnTheFly)

Mixed packing products fully described in the request, grouped within the overpack.

consignmentItemCode
string

Optional client identifier of the item within the consignment.

Responses

Request samples

Content type
application/json
{
  • "numberOfOverpacks": 2,
  • "identifiersOfOverpacks": [
    ],
  • "predefinedSimpleProducts": [
    ],
  • "onTheFlySimpleProducts": [
    ],
  • "predefinedMixedPackingProducts": [
    ],
  • "onTheFlyMixedPackingProducts": [
    ],
  • "consignmentItemCode": "ITEM-9515-4013-AA46"
}

Response samples

Content type
application/json
{
  • "newItemId": 23,
  • "newItemIsValid": true,
  • "success": true,
  • "httpStatusCode": 201,
  • "message": "Item Created OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

add a predefined product to overpack

Adds a predefined simple product, identified by reference, to an existing overpack of the consignment.

Authorizations:
basicAuthbearerAuth
path Parameters
consignmentId
required
integer <int64>

Id of the consignment

overpackId
required
integer <int64>

Id of the overpack

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

predefined product to be added to the overpack

reference
required
string

Unique reference of the predefined product in the catalogue.

numberOfPackages
required
integer

Number of identical outer packages of this product in the consignment.

unitaryQuantity
number

Net quantity of substance per outer package.

unitaryGrossQuantity
number

Gross mass of one outer package, expressed in kilograms.

unitaryQuantityExplosive
number

Net explosive content per outer package, expressed in kilograms.

fillingDegree
number

Filling degree of the package, expressed as percentage.

authorizations
string

Authorizations or special provisions applicable to the transport.

innerPackagesNumber
integer

Number of inner packages contained in each outer package.

innerPackageQuantity
number

Net quantity per inner package.

innerPackageCapacity
number

Capacity of each inner package, in litres (for aerosols, the capacity of the dispenser). It decides the IMDG stowage category of aerosols (SW22) and the statement of IMDG 5.4.1.5.8.

innerPackageQuantityExplosive
number

Net explosive content per inner package, expressed in kilograms.

object

Optional per-shipment radiological override for Class 7 products. Defaults to the values stored in the product catalogue.

consignmentItemCode
string

Optional client identifier of the item within the consignment.

Responses

Request samples

Content type
application/json
{
  • "reference": "PROMOD001",
  • "numberOfPackages": 3,
  • "unitaryQuantity": 1.2,
  • "unitaryGrossQuantity": 2,
  • "unitaryQuantityExplosive": 0,
  • "fillingDegree": 100,
  • "authorizations": "Auth 0001",
  • "innerPackagesNumber": 0,
  • "innerPackageQuantity": 0,
  • "innerPackageCapacity": 0.5,
  • "innerPackageQuantityExplosive": 0,
  • "radiological": {
    },
  • "consignmentItemCode": "ITEM-9515-4013-AA46"
}

Response samples

Content type
application/json
{
  • "newItemId": 23,
  • "newItemIsValid": true,
  • "success": true,
  • "httpStatusCode": 201,
  • "message": "Item Created OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

add a product defined on the fly to overpack

Adds a non predefined simple product, fully described in the request, to an existing overpack.

Authorizations:
basicAuthbearerAuth
path Parameters
consignmentId
required
integer <int64>

Id of the consignment

overpackId
required
integer <int64>

Id of the overpack

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

defined on the fly product to be added to overpack

isDangerousGood
required
boolean

Indicates whether the product is regulated as dangerous goods.

isEnvironmentallyHazardous
required
boolean

Indicates whether the substance is environmentally hazardous (marine pollutant). Optional when the catalogue determines it for every regulation enabled for the product: if omitted, the value is taken from the catalogue marks of the enabled regulations (UN 3077 and UN 3082 for IATA); when the catalogue leaves it undecided for any of them, the field is required.

isEmpty
required
boolean

Indicates whether the package is empty and uncleaned.

physicalState
required
string
Enum: "Liquid" "Solid" "Gas"

Physical state of the substance: Liquid, Solid or Gas.

measureUnit
required
string
Enum: "Kg" "L"

Measurement unit for quantities: Kg or L.

pureMixOrSolution
required
string
Enum: "Pure" "Mix" "Solution"

Indicates whether the substance is pure, a mixture or a solution.

numberOfPackages
required
integer

Number of identical outer packages of this product in the consignment.

packageId
required
integer

Identifier of the outer package type from master data.

hasInnerPackages
required
boolean

Indicates whether the outer package contains inner packages.

productName
string

Commercial name of the product.

productCode
string

Internal product code assigned by the customer.

dangerousGoodId
integer

Identifier of the dangerous good entry in master data.

mixOrSolutionPercentage
number

Percentage of the dangerous component in the mixture or solution.

flashPoint
number

Closed-cup flash point of the substance, expressed in Celsius. For Class 3 it is checked against the packing group of the dangerous good in each enabled regulation (ADR 2.2.3.1.3, IMDG 2.3.2.6, IATA 3.3.2): a flash point of 23 °C or above with packing group II is rejected when strictPackingInstructionCheck is true and reported as a warning otherwise, and a flash point below 23 °C with packing group III is always reported as a warning, since it is only admissible for viscous substances. Under 49 CFR, which is not available yet, this behaviour will be described when it is.

controlTemperature
number

Control temperature in Celsius (ADR 5.4.1.2.3.1 / IMDG 5.4.1.5.4 and 5.4.1.5.5). Mandatory together with emergencyTemperature for temperature-controlled substances (UN 3111-3120, 3231-3240, 3533 and 3534); optional for stabilized substances that allow temperature control. Must be lower than emergencyTemperature.

emergencyTemperature
number

Emergency temperature in Celsius (ADR 5.4.1.2.3.1 / IMDG 5.4.1.5.4 and 5.4.1.5.5). Provided in pair with controlTemperature and strictly higher than it.

density
number

Density of the substance, expressed in kilograms per liter. Under ADR and IMDG it is needed to verify a quantity limit expressed in a unit other than the measure unit of the product, such as a limit in kilograms for a product declared in liters; without it, that limit is not verified and the response reports it as a warning (an error with strictPackingInstructionCheck). Under 49 CFR, which is not available yet, this behaviour will be described when it is.

packageHomologationId
integer

Identifier of the package UN homologation code from master data. Under ADR and IMDG, the net quantity and gross mass limits of the single or outer packaging are taken from the row of this homologation in the packing instruction: when it is omitted for a packaging that requires homologation, those limits are not verified and the response reports it as a warning (an error with strictPackingInstructionCheck). Under 49 CFR, which is not available yet, this behaviour will be described when it is.

packingInstructionId
integer

Identifier of the applicable packing instruction. Under ADR and IMDG it may be omitted: the packing instruction of the dangerous good that admits the declared packaging is then applied, and its quantity limits are checked. When none or several of them admit the packaging, none is applied and its quantity limits are not verified: with strictPackingInstructionCheck the request is rejected, naming the candidates when there are several, and otherwise the response reports it as a warning with the rule reference ADR 4.1.4 or IMDG 4.1.4. Under IATA, when omitted, it is deduced from the packaging and the net quantity. Under 49 CFR, which is not available yet, this behaviour will be described when it is.

strictPackingInstructionCheck
boolean

Optional. When true, the packing instruction must belong to the dangerous good and the packaging must be included in the packing instruction list for each enabled ADR or IMDG regulation: the homologation of the single or outer packaging and the inner packaging material. When absent or false, these verifications are not performed for ADR and IMDG. The IATA regulation applies this verification in all cases. Under ADR and IMDG, a quantity limit that cannot be verified because the request lacks the density (in a packing instruction or in the excepted quantity code) or the homologation of the packaging is reported as an error when true and as a warning otherwise; when true, a flash point that is not consistent with packing group II is also reported as an error instead of a warning. Not returned by any response: it is a write-time validation switch only and is not stored. When true and packingInstructionId is omitted for ADR or IMDG, the request is rejected when no packing instruction, or more than one, admits the declared packaging. Under 49 CFR, which is not available yet, this behaviour will be described when it is.

imdgSegregationGroupId
integer

Identifier of the IMDG segregation group of the substance (IMDG Code 3.1.4), or 255 for no segregation group. It applies to the IMDG Code only. When the entry of the Dangerous Goods List already assigns segregation groups, those apply and this value is ignored. Otherwise, when it is omitted, an entry that is not an N.O.S. entry is recorded without segregation group, and an N.O.S. entry is rejected, because the consignor has to state its group.

englishTechnicalName
string

Technical name of the substance in English: the name, such as the chemical name of the components that give the hazard, that is added in parentheses to the proper shipping name of an N.O.S. entry or of another entry that requires a technical name. It is required when the dangerous good requires a technical name under the regulations that apply to the product, and it is the name printed on the IMDG Multimodal Dangerous Goods Form and on the Shipper's Declaration for Dangerous Goods, which are issued in English.

countryOfOriginLanguageTechnicalName
string

Technical name of the substance in the language of the country of the account, such as Spanish for an account in Spain. It is printed on the transport documents that are issued in that language, such as the IMDG Multimodal Dangerous Goods Form, which uses it as second language after English. It is required, together with englishTechnicalName, when the dangerous good requires a technical name and this language is not English. It is ignored when this language is English or when another technical name of the product is already given in this language.

adrPrincipalLanguageTechnicalName
string

Technical name of the substance in the ADR official language configured for the user (English, French or German). The ADR transport document is printed in the language of the country of the account and also in this language when it is a different one. It applies to ADR only, and it is required, together with englishTechnicalName, when the dangerous good requires a technical name and the ADR official language of the user is French or German; when that language is English, englishTechnicalName is used and this value is ignored.

unitaryQuantity
number

Net quantity of substance per outer package.

unitaryGrossQuantity
number

Gross mass of one outer package, expressed in kilograms.

unitaryQuantityExplosive
number

Net explosive content per outer package, expressed in kilograms.

fillingDegree
number

Filling degree of the package, expressed as percentage.

authorizations
string

Authorizations or special provisions applicable to the transport.

innerPackageMaterialId
integer

Identifier of the inner package material from master data.

innerPackagesNumber
integer

Number of inner packages contained in each outer package.

innerPackageQuantity
number

Net quantity per inner package.

innerPackageCapacity
number

Capacity of each inner package, in litres (for aerosols, the capacity of the dispenser). It decides the IMDG stowage category of aerosols (SW22) and the statement of IMDG 5.4.1.5.8.

innerPackageQuantityExplosive
number

Net explosive content per inner package, expressed in kilograms.

object

Radiological data. Mandatory when the on-the-fly product belongs to Class 7 (radioactive). Must be omitted for non-radioactive products.

specialFeatures
string
Enum: "IsExtraViscousAccordingAdr" "IsExtraViscousAccordingImdg" "IsSalvagePackage"

Special features of the product transport mode. The extra viscous features apply to Class 3 substances under the corresponding regulation; the salvage packaging feature has no restriction.

consignmentItemCode
string

Optional client identifier of the item within the consignment.

Responses

Request samples

Content type
application/json
{
  • "productName": "PRONAM001",
  • "productCode": "PROCOD001",
  • "isDangerousGood": true,
  • "dangerousGoodId": 2301,
  • "isEnvironmentallyHazardous": false,
  • "isEmpty": false,
  • "physicalState": "Liquid",
  • "measureUnit": "Kg",
  • "pureMixOrSolution": "Pure",
  • "mixOrSolutionPercentage": 0,
  • "flashPoint": 30.2,
  • "controlTemperature": 15,
  • "emergencyTemperature": 20,
  • "density": 1,
  • "numberOfPackages": 3,
  • "packageId": 14,
  • "packageHomologationId": 43,
  • "packingInstructionId": 0,
  • "strictPackingInstructionCheck": true,
  • "imdgSegregationGroupId": 0,
  • "englishTechnicalName": "XYLENE AND BENZENE",
  • "countryOfOriginLanguageTechnicalName": "XILENO Y BENCENO",
  • "adrPrincipalLanguageTechnicalName": "XYLOL UND BENZOL",
  • "hasInnerPackages": false,
  • "unitaryQuantity": 1.2,
  • "unitaryGrossQuantity": 2,
  • "unitaryQuantityExplosive": 0,
  • "fillingDegree": 100,
  • "authorizations": "Auth 0001",
  • "innerPackageMaterialId": 0,
  • "innerPackagesNumber": 0,
  • "innerPackageQuantity": 0,
  • "innerPackageCapacity": 0.5,
  • "innerPackageQuantityExplosive": 0,
  • "radiological": {
    },
  • "specialFeatures": "IsExtraViscousAccordingAdr",
  • "consignmentItemCode": "ITEM-9515-4013-AA46"
}

Response samples

Content type
application/json
{
  • "newItemId": 23,
  • "newItemIsValid": true,
  • "success": true,
  • "httpStatusCode": 201,
  • "message": "Item Created OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

add a predefined mixed packing to an existent overpack

Adds a predefined mixed packing product, identified by reference, to an existing overpack.

Authorizations:
basicAuthbearerAuth
path Parameters
consignmentId
required
integer <int64>

Id of the consignment

overpackId
required
integer <int64>

Id of the overpack

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

predefined mixed packing to be added to overpack

reference
required
string

Unique reference of the predefined mixed packing in the catalogue.

numberOfPackages
required
integer

Number of identical outer packages of this mixed packing in the consignment.

unitaryGrossQuantity
number

Gross mass of one outer package, expressed in kilograms.

consignmentItemCode
string

Optional client identifier of the item within the consignment.

Responses

Request samples

Content type
application/json
{
  • "reference": "MIXPACMOD001",
  • "numberOfPackages": 3,
  • "unitaryGrossQuantity": 21,
  • "consignmentItemCode": "ITEM-9515-4013-AA46"
}

Response samples

Content type
application/json
{
  • "newItemId": 23,
  • "newItemIsValid": true,
  • "success": true,
  • "httpStatusCode": 201,
  • "message": "Item Created OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

add a mixed packing defined on the fly to an existent consignment

Adds a non predefined mixed packing product, described in request, to existing overpack.

Authorizations:
basicAuthbearerAuth
path Parameters
consignmentId
required
integer <int64>

Id of the consignment

overpackId
required
integer <int64>

Id of the overpack

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

defined on the fly mixed packing to be added to overpack

numberOfPackages
required
integer

Number of identical outer packages of this mixed packing in the consignment.

outerPackageId
required
integer

Identifier of the outer package type from master data.

outerPackageHomologationId
required
integer

Identifier of the outer package UN homologation code from master data.

required
Array of objects (MixedPackingProductTransportModeContent)

List of contents within the mixed packing.

productName
string

Commercial name of the mixed packing product.

productCode
string

Internal product code assigned by the customer.

unitaryGrossQuantity
number

Gross mass of one outer package, expressed in kilograms.

consignmentItemCode
string

Optional client identifier of the item within the consignment.

Responses

Request samples

Content type
application/json
{
  • "productName": "MIXPACNAM001",
  • "productCode": "MIXPACCOD001",
  • "numberOfPackages": 3,
  • "unitaryGrossQuantity": 21,
  • "outerPackageId": 14,
  • "outerPackageHomologationId": 43,
  • "contents": [
    ],
  • "consignmentItemCode": "ITEM-9515-4013-AA46"
}

Response samples

Content type
application/json
{
  • "newItemId": 23,
  • "newItemIsValid": true,
  • "success": true,
  • "httpStatusCode": 201,
  • "message": "Item Created OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

add content to an existent mixed packing in an overpack

Adds an additional inner content to a mixed packing located inside an existing overpack.

Authorizations:
basicAuthbearerAuth
path Parameters
consignmentId
required
integer <int64>

Id of the consignment

overpackId
required
integer <int64>

Id of the overpack

mixedPackingProductId
required
integer <int64>

Id of the mixed packing product

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

content to be added to the mixed packing product inside the overpack

isEnvironmentallyHazardous
required
boolean

Indicates whether the substance is environmentally hazardous (marine pollutant). Optional when the catalogue determines it for every regulation enabled for the product: if omitted, the value is taken from the catalogue marks of the enabled regulations (UN 3077 and UN 3082 for IATA); when the catalogue leaves it undecided for any of them, the field is required.

physicalState
required
string
Enum: "Liquid" "Solid" "Gas"

Physical state of the substance: Liquid, Solid or Gas.

measureUnit
required
string
Enum: "Kg" "L"

Measurement unit for quantities: Kg or L.

pureMixOrSolution
required
string
Enum: "Pure" "Mix" "Solution"

Indicates whether the substance is pure, a mixture or a solution.

numberOfInnerPackages
required
integer

Number of inner packages of this content within the mixed packing.

innerPackageMaterialId
required
integer

Identifier of the inner package material from master data.

innerPackageQuantity
required
number

Net quantity per inner package.

dangerousGoodId
integer

Identifier of the dangerous good entry in master data. Class 7 (radioactive) entries are rejected as contents of a mixed packing: declare radioactive material as a simple product with radiological.nuclides[].

mixOrSolutionPercentage
number

Percentage of the dangerous component in the mixture or solution.

flashPoint
number

Closed-cup flash point of the substance, expressed in Celsius. For Class 3 it is checked against the packing group of the dangerous good in each enabled regulation (ADR 2.2.3.1.3, IMDG 2.3.2.6, IATA 3.3.2): a flash point of 23 °C or above with packing group II is rejected when strictPackingInstructionCheck is true and reported as a warning otherwise, and a flash point below 23 °C with packing group III is always reported as a warning, since it is only admissible for viscous substances. Under 49 CFR, which is not available yet, this behaviour will be described when it is.

density
number

Density of the substance, expressed in kilograms per liter. Under ADR and IMDG it is needed to verify a quantity limit expressed in a unit other than the measure unit of the content, such as the net quantity limit in kilograms of the outer packaging for a content declared in liters, or an excepted quantity limit in milliliters for a liquid declared in kilograms; without it, that limit is not verified and the response reports it as a warning (an error with strictPackingInstructionCheck). Under 49 CFR, which is not available yet, this behaviour will be described when it is.

imdgSegregationGroupId
integer

Identifier of the IMDG segregation group of the substance (IMDG Code 3.1.4), or 255 for no segregation group. It applies to the IMDG Code only. When the entry of the Dangerous Goods List already assigns segregation groups, those apply and this value is ignored. Otherwise, when it is omitted, an entry that is not an N.O.S. entry is recorded without segregation group, and an N.O.S. entry is rejected, because the consignor has to state its group.

englishTechnicalName
string

Technical name of the substance in English: the name, such as the chemical name of the components that give the hazard, that is added in parentheses to the proper shipping name of an N.O.S. entry or of another entry that requires a technical name. It is required when the dangerous good requires a technical name under the regulations that apply to the product, and it is the name printed on the IMDG Multimodal Dangerous Goods Form and on the Shipper's Declaration for Dangerous Goods, which are issued in English.

countryOfOriginLanguageTechnicalName
string

Technical name of the substance in the language of the country of the account, such as Spanish for an account in Spain. It is printed on the transport documents that are issued in that language, such as the IMDG Multimodal Dangerous Goods Form, which uses it as second language after English. It is required, together with englishTechnicalName, when the dangerous good requires a technical name and this language is not English. It is ignored when this language is English or when another technical name of the product is already given in this language.

adrPrincipalLanguageTechnicalName
string

Technical name of the substance in the ADR official language configured for the user (English, French or German). The ADR transport document is printed in the language of the country of the account and also in this language when it is a different one. It applies to ADR only, and it is required, together with englishTechnicalName, when the dangerous good requires a technical name and the ADR official language of the user is French or German; when that language is English, englishTechnicalName is used and this value is ignored.

authorizations
string

Authorizations or special provisions applicable to the transport.

packingInstructionId
integer

Identifier of the applicable packing instruction. Under ADR and IMDG it may be omitted: the packing instruction of the dangerous good that admits the outer packaging of the mixed packing and the inner packaging material of the content is then applied, and its quantity limits are checked. When none or several of them admit it, none is applied and its quantity limits are not verified: with strictPackingInstructionCheck the request is rejected, naming the candidates when there are several, and otherwise the response reports it as a warning with the rule reference ADR 4.1.4 or IMDG 4.1.4. Under IATA, when omitted, it is deduced from the packaging and the net quantity. Under 49 CFR, which is not available yet, this behaviour will be described when it is.

strictPackingInstructionCheck
boolean

Optional. When true, for each enabled ADR or IMDG regulation the packing instruction of the content must belong to the dangerous good, and the outer packaging of the mixed packing and the inner packaging material of the content must be included in its list. When absent or false, these verifications are not performed for ADR and IMDG. The IATA regulation applies this verification in all cases. Under ADR and IMDG, a quantity limit that cannot be verified because the request lacks the density, in a packing instruction or in the excepted quantity code, is reported as an error when true and as a warning otherwise; when true, a flash point that is not consistent with packing group II is also reported as an error instead of a warning. Not returned by any response: it is a write-time validation switch only and is not stored. When true and packingInstructionId is omitted for ADR or IMDG, the request is rejected when no packing instruction, or more than one, admits the packaging of the content. Under 49 CFR, which is not available yet, this behaviour will be described when it is.

innerPackageCapacity
number

Capacity of each inner package, in litres (for aerosols, the capacity of the dispenser). It decides the IMDG stowage category of aerosols (SW22) and the statement of IMDG 5.4.1.5.8.

innerPackageQuantityExplosive
number

Net explosive content per inner package, expressed in kilograms.

consignmentItemCode
string

Optional client identifier of the item within the consignment.

Responses

Request samples

Content type
application/json
{
  • "dangerousGoodId": 2301,
  • "isEnvironmentallyHazardous": false,
  • "physicalState": "Liquid",
  • "measureUnit": "Kg",
  • "pureMixOrSolution": "Pure",
  • "mixOrSolutionPercentage": 0,
  • "flashPoint": 30.2,
  • "density": 1,
  • "imdgSegregationGroupId": 0,
  • "englishTechnicalName": "XYLENE AND BENZENE",
  • "countryOfOriginLanguageTechnicalName": "XILENO Y BENCENO",
  • "adrPrincipalLanguageTechnicalName": "XYLOL UND BENZOL",
  • "authorizations": "Auth 0001",
  • "innerPackageMaterialId": 1,
  • "packingInstructionId": 0,
  • "strictPackingInstructionCheck": true,
  • "numberOfInnerPackages": 3,
  • "innerPackageQuantity": 0.1,
  • "innerPackageCapacity": 0.5,
  • "innerPackageQuantityExplosive": 0,
  • "consignmentItemCode": "ITEM-9515-4013-AA46"
}

Response samples

Content type
application/json
{
  • "newItemId": 23,
  • "newItemIsValid": true,
  • "success": true,
  • "httpStatusCode": 201,
  • "message": "Item Created OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

delete an overpack from consignment

Removes an overpack and all its grouped products from the consignment.

Authorizations:
basicAuthbearerAuth
path Parameters
consignmentId
required
integer <int64>

Id of the consignment

overpackId
required
integer <int64>

Id of the overpack

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Creation of mixed packing interactively

Creation of mixed packing interactively to be added to an interactive consignment

Create a mixed packing product

Creates an EMPTY mixed packing product bound to the account and regulation of consignmentId, ready for interactive content additions. Three-step workflow: (1) this call; (2) one POST /mixedPackingProductInteractive/{id}/content per content, at least two; (3) POST /consignment/{consignmentId}/mixedPackingProduct with reference = productCode to attach the product to the consignment. Creating the product does NOT add it to the consignment. productCode is required since version 2.7.3 because it is the reference used to attach the product.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

mixed packing product definition

numberOfPackages
required
integer

Number of identical outer packages of this mixed packing in the consignment.

outerPackageId
required
integer

Identifier of the outer package type from master data.

outerPackageHomologationId
required
integer

Identifier of the outer package UN homologation code from master data.

productCode
required
string

Internal product code assigned by the customer. Required: it is the reference to pass to POST /consignment/{consignmentId}/mixedPackingProduct to attach the product to the consignment once its contents are added. It is trimmed of surrounding blanks, must not be blank and must not be already in use by another product of the account, because the attach step requires exactly one product with that reference.

consignmentId
integer

Consignment that fixes the account and the regulation used to validate the contents. Creating the product does NOT add it to this consignment: attach it afterwards with POST /consignment/{consignmentId}/mixedPackingProduct.

productName
string

Commercial name of the mixed packing product.

unitaryGrossQuantity
number

Gross mass of one outer package, expressed in kilograms.

consignmentItemCode
string

Optional client identifier of the item within the consignment.

Array of objects (MixedPackingProductTransportModeContent)

Contents of the mixed packing. Substances supplied here are created together with the mixed packing; further substances may be added afterwards with the dedicated content operation.

Responses

Request samples

Content type
application/json
{
  • "consignmentId": 354357254,
  • "productName": "MIXPACNAM001",
  • "productCode": "MIXPACCOD001",
  • "numberOfPackages": 3,
  • "unitaryGrossQuantity": 21,
  • "outerPackageId": 14,
  • "outerPackageHomologationId": 43,
  • "consignmentItemCode": "ITEM-9515-4013-AA46",
  • "contents": [
    ]
}

Response samples

Content type
application/json
{
  • "newItemId": 23,
  • "newItemIsValid": true,
  • "success": true,
  • "httpStatusCode": 201,
  • "message": "Item Created OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Add content to a mixed packing product

Adds an inner content to a mixed packing product previously created interactively. The product is not part of any consignment until it is attached with POST /consignment/{consignmentId}/mixedPackingProduct. Class 7 (radioactive) entries are rejected: a package containing radioactive material shall not contain any other items; declare radioactive material as a simple product with radiological.nuclides[]. The mixed packing product must have been created with POST /mixedPackingProductInteractive, be enabled and belong to an account that the user can modify; otherwise the request is rejected with 400 naming mixedPackingProductInteractiveId.

Authorizations:
basicAuthbearerAuth
path Parameters
mixedPackingProductInteractiveId
required
integer <int64>

Id of the mixed packing

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

content to be added to the mixed packing

isEnvironmentallyHazardous
required
boolean

Indicates whether the substance is environmentally hazardous (marine pollutant). Optional when the catalogue determines it for every regulation enabled for the product: if omitted, the value is taken from the catalogue marks of the enabled regulations (UN 3077 and UN 3082 for IATA); when the catalogue leaves it undecided for any of them, the field is required.

physicalState
required
string
Enum: "Liquid" "Solid" "Gas"

Physical state of the substance: Liquid, Solid or Gas.

measureUnit
required
string
Enum: "Kg" "L"

Measurement unit for quantities: Kg or L.

pureMixOrSolution
required
string
Enum: "Pure" "Mix" "Solution"

Indicates whether the substance is pure, a mixture or a solution.

numberOfInnerPackages
required
integer

Number of inner packages of this content within the mixed packing.

innerPackageMaterialId
required
integer

Identifier of the inner package material from master data.

innerPackageQuantity
required
number

Net quantity per inner package.

dangerousGoodId
integer

Identifier of the dangerous good entry in master data. Class 7 (radioactive) entries are rejected as contents of a mixed packing: declare radioactive material as a simple product with radiological.nuclides[].

mixOrSolutionPercentage
number

Percentage of the dangerous component in the mixture or solution.

flashPoint
number

Closed-cup flash point of the substance, expressed in Celsius. For Class 3 it is checked against the packing group of the dangerous good in each enabled regulation (ADR 2.2.3.1.3, IMDG 2.3.2.6, IATA 3.3.2): a flash point of 23 °C or above with packing group II is rejected when strictPackingInstructionCheck is true and reported as a warning otherwise, and a flash point below 23 °C with packing group III is always reported as a warning, since it is only admissible for viscous substances. Under 49 CFR, which is not available yet, this behaviour will be described when it is.

density
number

Density of the substance, expressed in kilograms per liter. Under ADR and IMDG it is needed to verify a quantity limit expressed in a unit other than the measure unit of the content, such as the net quantity limit in kilograms of the outer packaging for a content declared in liters, or an excepted quantity limit in milliliters for a liquid declared in kilograms; without it, that limit is not verified and the response reports it as a warning (an error with strictPackingInstructionCheck). Under 49 CFR, which is not available yet, this behaviour will be described when it is.

imdgSegregationGroupId
integer

Identifier of the IMDG segregation group of the substance (IMDG Code 3.1.4), or 255 for no segregation group. It applies to the IMDG Code only. When the entry of the Dangerous Goods List already assigns segregation groups, those apply and this value is ignored. Otherwise, when it is omitted, an entry that is not an N.O.S. entry is recorded without segregation group, and an N.O.S. entry is rejected, because the consignor has to state its group.

englishTechnicalName
string

Technical name of the substance in English: the name, such as the chemical name of the components that give the hazard, that is added in parentheses to the proper shipping name of an N.O.S. entry or of another entry that requires a technical name. It is required when the dangerous good requires a technical name under the regulations that apply to the product, and it is the name printed on the IMDG Multimodal Dangerous Goods Form and on the Shipper's Declaration for Dangerous Goods, which are issued in English.

countryOfOriginLanguageTechnicalName
string

Technical name of the substance in the language of the country of the account, such as Spanish for an account in Spain. It is printed on the transport documents that are issued in that language, such as the IMDG Multimodal Dangerous Goods Form, which uses it as second language after English. It is required, together with englishTechnicalName, when the dangerous good requires a technical name and this language is not English. It is ignored when this language is English or when another technical name of the product is already given in this language.

adrPrincipalLanguageTechnicalName
string

Technical name of the substance in the ADR official language configured for the user (English, French or German). The ADR transport document is printed in the language of the country of the account and also in this language when it is a different one. It applies to ADR only, and it is required, together with englishTechnicalName, when the dangerous good requires a technical name and the ADR official language of the user is French or German; when that language is English, englishTechnicalName is used and this value is ignored.

authorizations
string

Authorizations or special provisions applicable to the transport.

packingInstructionId
integer

Identifier of the applicable packing instruction. Under ADR and IMDG it may be omitted: the packing instruction of the dangerous good that admits the outer packaging of the mixed packing and the inner packaging material of the content is then applied, and its quantity limits are checked. When none or several of them admit it, none is applied and its quantity limits are not verified: with strictPackingInstructionCheck the request is rejected, naming the candidates when there are several, and otherwise the response reports it as a warning with the rule reference ADR 4.1.4 or IMDG 4.1.4. Under IATA, when omitted, it is deduced from the packaging and the net quantity. Under 49 CFR, which is not available yet, this behaviour will be described when it is.

strictPackingInstructionCheck
boolean

Optional. When true, for each enabled ADR or IMDG regulation the packing instruction of the content must belong to the dangerous good, and the outer packaging of the mixed packing and the inner packaging material of the content must be included in its list. When absent or false, these verifications are not performed for ADR and IMDG. The IATA regulation applies this verification in all cases. Under ADR and IMDG, a quantity limit that cannot be verified because the request lacks the density, in a packing instruction or in the excepted quantity code, is reported as an error when true and as a warning otherwise; when true, a flash point that is not consistent with packing group II is also reported as an error instead of a warning. Not returned by any response: it is a write-time validation switch only and is not stored. When true and packingInstructionId is omitted for ADR or IMDG, the request is rejected when no packing instruction, or more than one, admits the packaging of the content. Under 49 CFR, which is not available yet, this behaviour will be described when it is.

innerPackageCapacity
number

Capacity of each inner package, in litres (for aerosols, the capacity of the dispenser). It decides the IMDG stowage category of aerosols (SW22) and the statement of IMDG 5.4.1.5.8.

innerPackageQuantityExplosive
number

Net explosive content per inner package, expressed in kilograms.

consignmentItemCode
string

Optional client identifier of the item within the consignment.

Responses

Request samples

Content type
application/json
{
  • "dangerousGoodId": 2301,
  • "isEnvironmentallyHazardous": false,
  • "physicalState": "Liquid",
  • "measureUnit": "Kg",
  • "pureMixOrSolution": "Pure",
  • "mixOrSolutionPercentage": 0,
  • "flashPoint": 30.2,
  • "density": 1,
  • "imdgSegregationGroupId": 0,
  • "englishTechnicalName": "XYLENE AND BENZENE",
  • "countryOfOriginLanguageTechnicalName": "XILENO Y BENCENO",
  • "adrPrincipalLanguageTechnicalName": "XYLOL UND BENZOL",
  • "authorizations": "Auth 0001",
  • "innerPackageMaterialId": 1,
  • "packingInstructionId": 0,
  • "strictPackingInstructionCheck": true,
  • "numberOfInnerPackages": 3,
  • "innerPackageQuantity": 0.1,
  • "innerPackageCapacity": 0.5,
  • "innerPackageQuantityExplosive": 0,
  • "consignmentItemCode": "ITEM-9515-4013-AA46"
}

Response samples

Content type
application/json
{
  • "newItemId": 23,
  • "newItemIsValid": true,
  • "success": true,
  • "httpStatusCode": 201,
  • "message": "Item Created OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Products management

Create, get and delete Products

Create a new simple product

Creates a new predefined simple product in the catalogue for later reuse in consignments. A product with a correctable error, such as a missing technical name, is created with newItemIsValid false and its problems in warnings; it can be read with GET /simpleProduct/{reference} and removed with DELETE /simpleProduct/{reference}.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

simple Product

accountCode
required
string

Customer account code identifying the tenant in the system.

enabledDangerousGoodsRegulations
required
Array of strings (DangerousGoodsRegulation) non-empty
Items Enum: "Adr" "Imdg" "Iata" "Cfr49"

List of dangerous goods regulations enabled for this product.

reference
required
string

Unique reference of the product in the catalogue.

isDangerousGood
required
boolean

Indicates whether the product is regulated as dangerous goods.

isEnvironmentallyHazardous
required
boolean

Indicates whether the substance is environmentally hazardous (marine pollutant).

isEmpty
required
boolean

Indicates whether the package is empty and uncleaned.

physicalState
required
string
Enum: "Liquid" "Solid" "Gas"

Physical state of the substance: Liquid, Solid or Gas.

measureUnit
required
string
Enum: "Kg" "L"

Measurement unit for quantities: Kg or L.

pureMixOrSolution
required
string
Enum: "Pure" "Mix" "Solution"

Indicates whether the substance is pure, a mixture or a solution.

packageId
required
integer

Identifier of the outer package type from master data.

hasInnerPackages
required
boolean

Indicates whether the outer package contains inner packages.

productCode
string

Internal product code assigned by the customer.

productName
string

Commercial name of the product.

dangerousGoodId
integer

Identifier of the dangerous good entry in master data.

object

Technical names of the substance in different languages.

mixOrSolutionPercentage
number

Percentage of the dangerous component in the mixture or solution.

flashPoint
number

Closed-cup flash point of the substance, expressed in Celsius. For Class 3 it is checked against the packing group of the dangerous good in each enabled regulation (ADR 2.2.3.1.3, IMDG 2.3.2.6, IATA 3.3.2): a flash point of 23 °C or above with packing group II is rejected when strictPackingInstructionCheck is true and reported as a warning otherwise, and a flash point below 23 °C with packing group III is always reported as a warning, since it is only admissible for viscous substances. Under 49 CFR, which is not available yet, this behaviour will be described when it is.

controlTemperature
number

Control temperature in Celsius (ADR 5.4.1.2.3.1 / IMDG 5.4.1.5.4 and 5.4.1.5.5). Mandatory together with emergencyTemperature for temperature-controlled substances (UN 3111-3120, 3231-3240, 3533 and 3534); optional for stabilized substances that allow temperature control. Must be lower than emergencyTemperature.

emergencyTemperature
number

Emergency temperature in Celsius (ADR 5.4.1.2.3.1 / IMDG 5.4.1.5.4 and 5.4.1.5.5). Provided in pair with controlTemperature and strictly higher than it.

density
number

Density of the substance, expressed in kilograms per liter. Under ADR and IMDG it is needed to verify a quantity limit expressed in a unit other than the measure unit of the product, such as a limit in kilograms for a product declared in liters; without it, that limit is not verified and the response reports it as a warning (an error with strictPackingInstructionCheck). Under 49 CFR, which is not available yet, this behaviour will be described when it is.

packageHomologationId
integer

Identifier of the package UN homologation code from master data. Under ADR and IMDG, the net quantity and gross mass limits of the single or outer packaging are taken from the row of this homologation in the packing instruction: when it is omitted for a packaging that requires homologation, those limits are not verified and the response reports it as a warning (an error with strictPackingInstructionCheck). Under 49 CFR, which is not available yet, this behaviour will be described when it is.

packingInstructionId
integer

Identifier of the applicable packing instruction. Under ADR and IMDG it may be omitted: the packing instruction of the dangerous good that admits the declared packaging is then applied, and its quantity limits are checked. When none or several of them admit the packaging, none is applied and its quantity limits are not verified: with strictPackingInstructionCheck the request is rejected, naming the candidates when there are several, and otherwise the response reports it as a warning with the rule reference ADR 4.1.4 or IMDG 4.1.4. Under IATA, when omitted, it is deduced from the packaging and the net quantity. Under 49 CFR, which is not available yet, this behaviour will be described when it is.

strictPackingInstructionCheck
boolean

Optional. When true, the packing instruction must belong to the dangerous good and the packaging must be included in the packing instruction list for each enabled ADR or IMDG regulation: the homologation of the single or outer packaging and the inner packaging material. When absent or false, these verifications are not performed for ADR and IMDG. The IATA regulation applies this verification in all cases. Under ADR and IMDG, a quantity limit that cannot be verified because the request lacks the density (in a packing instruction or in the excepted quantity code) or the homologation of the packaging is reported as an error when true and as a warning otherwise; when true, a flash point that is not consistent with packing group II is also reported as an error instead of a warning. Not returned by any response: it is a write-time validation switch only and is not stored. When true and packingInstructionId is omitted for ADR or IMDG, the request is rejected when no packing instruction, or more than one, admits the declared packaging. Under 49 CFR, which is not available yet, this behaviour will be described when it is.

imdgSegregationGroupId
integer

Identifier of the IMDG segregation group of the substance (IMDG Code 3.1.4), or 255 for no segregation group. It applies to the IMDG Code only. When the entry of the Dangerous Goods List already assigns segregation groups, those apply and this value is ignored. Otherwise, when it is omitted, an entry that is not an N.O.S. entry is recorded without segregation group, and an N.O.S. entry is rejected, because the consignor has to state its group.

unitaryQuantity
number

Net quantity of substance per outer package.

unitaryGrossQuantity
number

Gross mass of one outer package, expressed in kilograms.

unitaryQuantityExplosive
number

Net explosive content per outer package, expressed in kilograms.

fillingDegree
number

Filling degree of the package, expressed as percentage.

authorizations
string

Authorizations or special provisions applicable to the transport.

innerPackageMaterialId
integer

Identifier of the inner package material from master data.

innerPackagesNumber
integer

Number of inner packages contained in each outer package.

innerPackageQuantity
number

Net quantity per inner package.

innerPackageCapacity
number

Capacity of each inner package, in litres (for aerosols, the capacity of the dispenser). It decides the IMDG stowage category of aerosols (SW22) and the statement of IMDG 5.4.1.5.8.

innerPackageQuantityExplosive
number

Net explosive content per inner package, expressed in kilograms.

object

Radiological data. Mandatory when the product belongs to Class 7 (radioactive). Must be omitted for non-radioactive products.

specialFeatures
string
Enum: "IsExtraViscousAccordingAdr" "IsExtraViscousAccordingImdg" "IsSalvagePackage"

Special features of the product transport mode. The extra viscous features apply to Class 3 substances under the corresponding regulation; the salvage packaging feature has no restriction.

Responses

Request samples

Content type
application/json
{
  • "accountCode": "CO001",
  • "enabledDangerousGoodsRegulations": [
    ],
  • "reference": "REF001",
  • "productCode": "PROCOD001",
  • "productName": "PRONAM001",
  • "isDangerousGood": true,
  • "dangerousGoodId": 2301,
  • "technicalNames": {
    },
  • "isEnvironmentallyHazardous": false,
  • "isEmpty": false,
  • "physicalState": "Liquid",
  • "measureUnit": "Kg",
  • "pureMixOrSolution": "Pure",
  • "mixOrSolutionPercentage": 0,
  • "flashPoint": 30.2,
  • "controlTemperature": 15,
  • "emergencyTemperature": 20,
  • "density": 1,
  • "packageId": 14,
  • "packageHomologationId": 43,
  • "packingInstructionId": 0,
  • "strictPackingInstructionCheck": true,
  • "imdgSegregationGroupId": 0,
  • "hasInnerPackages": false,
  • "unitaryQuantity": 1.2,
  • "unitaryGrossQuantity": 2,
  • "unitaryQuantityExplosive": 0,
  • "fillingDegree": 100,
  • "authorizations": "Auth 0001",
  • "innerPackageMaterialId": 0,
  • "innerPackagesNumber": 0,
  • "innerPackageQuantity": 0,
  • "innerPackageCapacity": 0.5,
  • "innerPackageQuantityExplosive": 0,
  • "radiological": {
    },
  • "specialFeatures": "IsExtraViscousAccordingAdr"
}

Response samples

Content type
application/json
{
  • "newItemId": 23,
  • "newItemIsValid": true,
  • "success": true,
  • "httpStatusCode": 201,
  • "message": "Item Created OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Validate a simple product without creating it

Performs the complete validation of a predefined simple product, applying the same checks as the creation service, without persisting anything in the catalogue.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

simple Product

accountCode
required
string

Customer account code identifying the tenant in the system.

enabledDangerousGoodsRegulations
required
Array of strings (DangerousGoodsRegulation) non-empty
Items Enum: "Adr" "Imdg" "Iata" "Cfr49"

List of dangerous goods regulations enabled for this product.

reference
required
string

Unique reference of the product in the catalogue.

isDangerousGood
required
boolean

Indicates whether the product is regulated as dangerous goods.

isEnvironmentallyHazardous
required
boolean

Indicates whether the substance is environmentally hazardous (marine pollutant).

isEmpty
required
boolean

Indicates whether the package is empty and uncleaned.

physicalState
required
string
Enum: "Liquid" "Solid" "Gas"

Physical state of the substance: Liquid, Solid or Gas.

measureUnit
required
string
Enum: "Kg" "L"

Measurement unit for quantities: Kg or L.

pureMixOrSolution
required
string
Enum: "Pure" "Mix" "Solution"

Indicates whether the substance is pure, a mixture or a solution.

packageId
required
integer

Identifier of the outer package type from master data.

hasInnerPackages
required
boolean

Indicates whether the outer package contains inner packages.

productCode
string

Internal product code assigned by the customer.

productName
string

Commercial name of the product.

dangerousGoodId
integer

Identifier of the dangerous good entry in master data.

object

Technical names of the substance in different languages.

mixOrSolutionPercentage
number

Percentage of the dangerous component in the mixture or solution.

flashPoint
number

Closed-cup flash point of the substance, expressed in Celsius. For Class 3 it is checked against the packing group of the dangerous good in each enabled regulation (ADR 2.2.3.1.3, IMDG 2.3.2.6, IATA 3.3.2): a flash point of 23 °C or above with packing group II is rejected when strictPackingInstructionCheck is true and reported as a warning otherwise, and a flash point below 23 °C with packing group III is always reported as a warning, since it is only admissible for viscous substances. Under 49 CFR, which is not available yet, this behaviour will be described when it is.

controlTemperature
number

Control temperature in Celsius (ADR 5.4.1.2.3.1 / IMDG 5.4.1.5.4 and 5.4.1.5.5). Mandatory together with emergencyTemperature for temperature-controlled substances (UN 3111-3120, 3231-3240, 3533 and 3534); optional for stabilized substances that allow temperature control. Must be lower than emergencyTemperature.

emergencyTemperature
number

Emergency temperature in Celsius (ADR 5.4.1.2.3.1 / IMDG 5.4.1.5.4 and 5.4.1.5.5). Provided in pair with controlTemperature and strictly higher than it.

density
number

Density of the substance, expressed in kilograms per liter. Under ADR and IMDG it is needed to verify a quantity limit expressed in a unit other than the measure unit of the product, such as a limit in kilograms for a product declared in liters; without it, that limit is not verified and the response reports it as a warning (an error with strictPackingInstructionCheck). Under 49 CFR, which is not available yet, this behaviour will be described when it is.

packageHomologationId
integer

Identifier of the package UN homologation code from master data. Under ADR and IMDG, the net quantity and gross mass limits of the single or outer packaging are taken from the row of this homologation in the packing instruction: when it is omitted for a packaging that requires homologation, those limits are not verified and the response reports it as a warning (an error with strictPackingInstructionCheck). Under 49 CFR, which is not available yet, this behaviour will be described when it is.

packingInstructionId
integer

Identifier of the applicable packing instruction. Under ADR and IMDG it may be omitted: the packing instruction of the dangerous good that admits the declared packaging is then applied, and its quantity limits are checked. When none or several of them admit the packaging, none is applied and its quantity limits are not verified: with strictPackingInstructionCheck the request is rejected, naming the candidates when there are several, and otherwise the response reports it as a warning with the rule reference ADR 4.1.4 or IMDG 4.1.4. Under IATA, when omitted, it is deduced from the packaging and the net quantity. Under 49 CFR, which is not available yet, this behaviour will be described when it is.

strictPackingInstructionCheck
boolean

Optional. When true, the packing instruction must belong to the dangerous good and the packaging must be included in the packing instruction list for each enabled ADR or IMDG regulation: the homologation of the single or outer packaging and the inner packaging material. When absent or false, these verifications are not performed for ADR and IMDG. The IATA regulation applies this verification in all cases. Under ADR and IMDG, a quantity limit that cannot be verified because the request lacks the density (in a packing instruction or in the excepted quantity code) or the homologation of the packaging is reported as an error when true and as a warning otherwise; when true, a flash point that is not consistent with packing group II is also reported as an error instead of a warning. Not returned by any response: it is a write-time validation switch only and is not stored. When true and packingInstructionId is omitted for ADR or IMDG, the request is rejected when no packing instruction, or more than one, admits the declared packaging. Under 49 CFR, which is not available yet, this behaviour will be described when it is.

imdgSegregationGroupId
integer

Identifier of the IMDG segregation group of the substance (IMDG Code 3.1.4), or 255 for no segregation group. It applies to the IMDG Code only. When the entry of the Dangerous Goods List already assigns segregation groups, those apply and this value is ignored. Otherwise, when it is omitted, an entry that is not an N.O.S. entry is recorded without segregation group, and an N.O.S. entry is rejected, because the consignor has to state its group.

unitaryQuantity
number

Net quantity of substance per outer package.

unitaryGrossQuantity
number

Gross mass of one outer package, expressed in kilograms.

unitaryQuantityExplosive
number

Net explosive content per outer package, expressed in kilograms.

fillingDegree
number

Filling degree of the package, expressed as percentage.

authorizations
string

Authorizations or special provisions applicable to the transport.

innerPackageMaterialId
integer

Identifier of the inner package material from master data.

innerPackagesNumber
integer

Number of inner packages contained in each outer package.

innerPackageQuantity
number

Net quantity per inner package.

innerPackageCapacity
number

Capacity of each inner package, in litres (for aerosols, the capacity of the dispenser). It decides the IMDG stowage category of aerosols (SW22) and the statement of IMDG 5.4.1.5.8.

innerPackageQuantityExplosive
number

Net explosive content per inner package, expressed in kilograms.

object

Radiological data. Mandatory when the product belongs to Class 7 (radioactive). Must be omitted for non-radioactive products.

specialFeatures
string
Enum: "IsExtraViscousAccordingAdr" "IsExtraViscousAccordingImdg" "IsSalvagePackage"

Special features of the product transport mode. The extra viscous features apply to Class 3 substances under the corresponding regulation; the salvage packaging feature has no restriction.

Responses

Request samples

Content type
application/json
{
  • "accountCode": "CO001",
  • "enabledDangerousGoodsRegulations": [
    ],
  • "reference": "REF001",
  • "productCode": "PROCOD001",
  • "productName": "PRONAM001",
  • "isDangerousGood": true,
  • "dangerousGoodId": 2301,
  • "technicalNames": {
    },
  • "isEnvironmentallyHazardous": false,
  • "isEmpty": false,
  • "physicalState": "Liquid",
  • "measureUnit": "Kg",
  • "pureMixOrSolution": "Pure",
  • "mixOrSolutionPercentage": 0,
  • "flashPoint": 30.2,
  • "controlTemperature": 15,
  • "emergencyTemperature": 20,
  • "density": 1,
  • "packageId": 14,
  • "packageHomologationId": 43,
  • "packingInstructionId": 0,
  • "strictPackingInstructionCheck": true,
  • "imdgSegregationGroupId": 0,
  • "hasInnerPackages": false,
  • "unitaryQuantity": 1.2,
  • "unitaryGrossQuantity": 2,
  • "unitaryQuantityExplosive": 0,
  • "fillingDegree": 100,
  • "authorizations": "Auth 0001",
  • "innerPackageMaterialId": 0,
  • "innerPackagesNumber": 0,
  • "innerPackageQuantity": 0,
  • "innerPackageCapacity": 0.5,
  • "innerPackageQuantityExplosive": 0,
  • "radiological": {
    },
  • "specialFeatures": "IsExtraViscousAccordingAdr"
}

Response samples

Content type
application/json
{
  • "newItemId": 0,
  • "newItemIsValid": true,
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Get simple product

Returns a predefined simple product from the catalogue, identified by its unique reference. Only simple products are found: a mixed packing product with that reference answers 404 and is read with GET /mixedPackingProduct/{reference}. A product saved with a correctable error, such as a missing technical name, is also returned, with isValid false.

Authorizations:
basicAuthbearerAuth
path Parameters
reference
required
string

Reference of the simple product

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "simpleProductResponse": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Delete simple product

Removes a predefined simple product from the catalogue, identified by its unique reference. Only simple products are found: a mixed packing product with that reference answers 404 and is removed with DELETE /mixedPackingProduct/{reference}. A product saved with a correctable error (isValid false) is also removed.

Authorizations:
basicAuthbearerAuth
path Parameters
reference
required
string

Reference of the simple product

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Create a mixed packing product in the catalogue

Creates a predefined mixed packing product in the catalogue, with its outer packaging and at least two contents, for later reuse in consignments: its reference is the value to send in predefinedMixedPackingProducts or to POST /consignment/{consignmentId}/mixedPackingProduct. The reference must not be in use by any other product of the accounts visible to the user, because the consignment requires exactly one product with that reference. The contents are checked in the order of the list against the rules of the enabled regulations; when one of them is rejected, the response names its position in contents, starting at 0, and the following contents are not evaluated.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

mixed packing product with its outer packaging and its contents

accountCode
required
string

Customer account code identifying the tenant in the system.

enabledDangerousGoodsRegulations
required
Array of strings (DangerousGoodsRegulation) non-empty
Items Enum: "Adr" "Imdg" "Iata" "Cfr49"

Dangerous goods regulations for which the mixed packing product is enabled: Adr, Imdg or Iata. Cfr49 is not available for mixed packings.

reference
required
string [ 1 .. 50 ] characters

Unique reference of the mixed packing product in the catalogue, also used as its product code. It is trimmed of surrounding blanks, must not be blank and must not be in use by any other product of the accounts visible to the user, because the consignment finds the product by this value.

outerPackageId
required
integer

Identifier of the outer package type from master data: box, drum, limited quantity box or drum, or excepted quantity box.

outerPackageHomologationId
required
integer

Identifier of the UN homologation code of the outer package from master data. It must belong to the outer package type.

required
Array of objects (MixedPackingProductTransportModeContent) >= 2 items

Contents of the mixed packing, at least two, checked and saved in the order of the list.

productName
string <= 150 characters

Commercial name of the mixed packing product. When it is omitted, a name is generated automatically.

unitaryGrossQuantity
number

Gross mass of one outer package, expressed in kilograms. Required when the Imdg regulation is enabled.

Responses

Request samples

Content type
application/json
{
  • "accountCode": "CO001",
  • "enabledDangerousGoodsRegulations": [
    ],
  • "reference": "MPREF-0001",
  • "productName": "MIXPACNAM001",
  • "outerPackageId": 5,
  • "outerPackageHomologationId": 116,
  • "unitaryGrossQuantity": 12.5,
  • "contents": [
    ]
}

Response samples

Content type
application/json
{
  • "newItemId": 23,
  • "newItemIsValid": true,
  • "success": true,
  • "httpStatusCode": 201,
  • "message": "Item Created OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Validate a mixed packing product without creating it

Performs the complete validation of a predefined mixed packing product, applying the same checks as the creation service, contents included, without saving anything in the catalogue.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

mixed packing product with its outer packaging and its contents

accountCode
required
string

Customer account code identifying the tenant in the system.

enabledDangerousGoodsRegulations
required
Array of strings (DangerousGoodsRegulation) non-empty
Items Enum: "Adr" "Imdg" "Iata" "Cfr49"

Dangerous goods regulations for which the mixed packing product is enabled: Adr, Imdg or Iata. Cfr49 is not available for mixed packings.

reference
required
string [ 1 .. 50 ] characters

Unique reference of the mixed packing product in the catalogue, also used as its product code. It is trimmed of surrounding blanks, must not be blank and must not be in use by any other product of the accounts visible to the user, because the consignment finds the product by this value.

outerPackageId
required
integer

Identifier of the outer package type from master data: box, drum, limited quantity box or drum, or excepted quantity box.

outerPackageHomologationId
required
integer

Identifier of the UN homologation code of the outer package from master data. It must belong to the outer package type.

required
Array of objects (MixedPackingProductTransportModeContent) >= 2 items

Contents of the mixed packing, at least two, checked and saved in the order of the list.

productName
string <= 150 characters

Commercial name of the mixed packing product. When it is omitted, a name is generated automatically.

unitaryGrossQuantity
number

Gross mass of one outer package, expressed in kilograms. Required when the Imdg regulation is enabled.

Responses

Request samples

Content type
application/json
{
  • "accountCode": "CO001",
  • "enabledDangerousGoodsRegulations": [
    ],
  • "reference": "MPREF-0001",
  • "productName": "MIXPACNAM001",
  • "outerPackageId": 5,
  • "outerPackageHomologationId": 116,
  • "unitaryGrossQuantity": 12.5,
  • "contents": [
    ]
}

Response samples

Content type
application/json
{
  • "newItemId": 0,
  • "newItemIsValid": true,
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Get a mixed packing product of the catalogue

Returns a predefined mixed packing product of the catalogue, identified by its reference, with its outer packaging, its enabled regulations and its contents in the order in which they were created. Only mixed packing products of the catalogue are found: a simple product, or a mixed packing created within a consignment, with that reference answers 404.

Authorizations:
basicAuthbearerAuth
path Parameters
reference
required
string <= 50 characters
Example: MPREF-0001

Reference of the mixed packing product in the catalogue, as given on creation.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "mixedPackingProductResponse": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Delete a mixed packing product of the catalogue

Removes a predefined mixed packing product from the catalogue, identified by its reference. Only mixed packing products of the catalogue are found: a simple product with that reference answers 404. The consignments that already include it keep their own copy unchanged.

Authorizations:
basicAuthbearerAuth
path Parameters
reference
required
string <= 50 characters
Example: MPREF-0001

Reference of the mixed packing product in the catalogue, as given on creation.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Participants management

Create, get, update and delete participants: Shippers, Consignees, Loaders, Carriers and Drivers

Create a new predefined participant

Creates a new predefined participant (shipper, consignee, loader, carrier, supplier or driver). For a participant of type Driver, adrData records its ADR driver training certificate, which is checked against the load of the road movements under Adr to which the driver is assigned.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

participant (shipper, carrier, loader ...)

accountCode
required
string

Customer account code identifying the tenant in the system.

types
required
Array of strings (ParticipantType) non-empty
Items Enum: "Shipper" "Loader" "Carrier" "Consignee" "Supplier" "Driver" "Consolidator" "NotifyParty" "FreightForwarder" "ShippingAgent"

List of participant types: Shipper, Loader, Carrier, Consignee, Supplier, Driver, Consolidator, NotifyParty, FreightForwarder or ShippingAgent.

code
required
string

Unique code identifying this participant within the account.

name
required
string

Legal or commercial name of the participant.

address
required
string

Postal address of the participant.

city-town
required
string

City or town of the participant.

province-region-state
required
string

Province, region or state of the participant, as free text of up to 50 characters with no fixed format. It cannot be empty when the participant is of type Shipper, Loader, Carrier, Consignee or Supplier; for the other types it may be empty. When the participant has no province, region or state, send a hyphen (-); a dot or a comma are also accepted, and the transport documents and the package marks then leave the value out.

postalCode
required
string

Postal code of the participant address, as free text of up to 50 characters with no fixed format. It cannot be empty when the participant is of type Shipper, Loader, Carrier, Consignee or Supplier; for the other types it may be empty. When the address has no postal code, send a hyphen (-); a dot or a comma are also accepted, and the transport documents and the package marks then leave the value out.

countryId
required
integer

Identifier of the country from master data.

telephone
string

Telephone number of the participant.

fax
string

Fax number of the participant.

contactPerson
string

Name of the contact person at the participant.

taxCode
string

Tax identification code of the participant.

status
string

Position or capacity of the contact person within the participant organisation, such as Managing Director or Shipping Manager.

object

Data of ADR of the participant: the ADR driver training certificate of a participant of type Driver. When omitted, the recorded data are kept.

Responses

Request samples

Content type
application/json
{
  • "accountCode": "CO001",
  • "types": [
    ],
  • "code": "PAR01",
  • "name": "TransOne Inc.",
  • "address": "Mary Ann St",
  • "city-town": "Cardiff",
  • "province-region-state": "Wales",
  • "postalCode": "CF10 2EQ",
  • "countryId": 234,
  • "telephone": "+44 29 2023 4500",
  • "fax": "",
  • "contactPerson": "",
  • "taxCode": "",
  • "status": "Shipping manager",
  • "adrData": {
    }
}

Response samples

Content type
application/json
{
  • "newItemId": 23,
  • "newItemIsValid": true,
  • "success": true,
  • "httpStatusCode": 201,
  • "message": "Item Created OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Get predefined participant

Returns a predefined participant identified by its unique participant code. It includes adrData with the ADR driver training certificate when it is recorded.

Authorizations:
basicAuthbearerAuth
path Parameters
participantCode
required
string

Code of the participant

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "participantResponse": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Update predefined participant

Updates the data of a predefined participant identified by its unique participant code. For a participant of type Driver, adrData records its ADR driver training certificate, which is checked against the load of the road movements under Adr to which the driver is assigned.

Authorizations:
basicAuthbearerAuth
path Parameters
participantCode
required
string

Code of the participant

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

participant (shipper, carrier, loader ...)

accountCode
required
string

Customer account code identifying the tenant in the system.

types
required
Array of strings (ParticipantType) non-empty
Items Enum: "Shipper" "Loader" "Carrier" "Consignee" "Supplier" "Driver" "Consolidator" "NotifyParty" "FreightForwarder" "ShippingAgent"

List of participant types: Shipper, Loader, Carrier, Consignee, Supplier, Driver, Consolidator, NotifyParty, FreightForwarder or ShippingAgent.

code
required
string

Unique code identifying this participant within the account.

name
required
string

Legal or commercial name of the participant.

address
required
string

Postal address of the participant.

city-town
required
string

City or town of the participant.

province-region-state
required
string

Province, region or state of the participant, as free text of up to 50 characters with no fixed format. It cannot be empty when the participant is of type Shipper, Loader, Carrier, Consignee or Supplier; for the other types it may be empty. When the participant has no province, region or state, send a hyphen (-); a dot or a comma are also accepted, and the transport documents and the package marks then leave the value out.

postalCode
required
string

Postal code of the participant address, as free text of up to 50 characters with no fixed format. It cannot be empty when the participant is of type Shipper, Loader, Carrier, Consignee or Supplier; for the other types it may be empty. When the address has no postal code, send a hyphen (-); a dot or a comma are also accepted, and the transport documents and the package marks then leave the value out.

countryId
required
integer

Identifier of the country from master data.

telephone
string

Telephone number of the participant.

fax
string

Fax number of the participant.

contactPerson
string

Name of the contact person at the participant.

taxCode
string

Tax identification code of the participant.

status
string

Position or capacity of the contact person within the participant organisation, such as Managing Director or Shipping Manager.

object

Data of ADR of the participant: the ADR driver training certificate of a participant of type Driver. When omitted, the recorded data are kept.

Responses

Request samples

Content type
application/json
{
  • "accountCode": "CO001",
  • "types": [
    ],
  • "code": "PAR01",
  • "name": "TransOne Inc.",
  • "address": "Mary Ann St",
  • "city-town": "Cardiff",
  • "province-region-state": "Wales",
  • "postalCode": "CF10 2EQ",
  • "countryId": 234,
  • "telephone": "+44 29 2023 4500",
  • "fax": "",
  • "contactPerson": "",
  • "taxCode": "",
  • "status": "Shipping manager",
  • "adrData": {
    }
}

Response samples

Content type
application/json
{
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Delete predefined participant

Removes a predefined participant identified by its unique participant code.

Authorizations:
basicAuthbearerAuth
path Parameters
participantCode
required
string

Code of the participant

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Vessels, vehicles and locations

Vessels, vehicles, trailers, locations of the account and their restrictions

Create a vessel

Creates a vessel in the account given in accountCode with its identification and its Document of Compliance. The name must be unique among the vessels of the accounts in which the user can write.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

vessel with its identification and Document of Compliance

accountCode
required
string

Code of the customer account to which the vessel belongs, among the accounts in which the user can write. Required when creating and when updating the vessel: on update, another code moves the vessel to that account. In responses, it is omitted when the account has no code.

name
required
string <= 250 characters

Name of the vessel, unique among the vessels of its account.

vesselType
required
string
Enum: "Containership" "RoRo" "HatchlessContainership" "BargeCarrying" "GeneralCargo"

Type of ship, relevant to the IMDG segregation tables.

imoNumber
string <= 7 characters

IMO number: seven digits, the last of which is a check digit.

callSign
string <= 10 characters

Radio call sign.

flagCountryCode
string <= 2 characters

ISO 3166-1 alpha-2 code of the flag country.

officialNumber
string <= 20 characters

Official number given by the flag State.

mmsi
string <= 9 characters

Maritime Mobile Service Identity, nine digits.

isPassengerShip
boolean
Default: false

True for a passenger ship whose number of passengers exceeds 25 or one passenger for every 3 m of overall length, whichever is the greater (IMDG 7.1.3.2): goods of stowage categories D and E are not accepted on board and goods of categories B and C only on deck. A passenger ship within that limit is recorded as false. When maximumNumberOfPassengers is given, the value is calculated from it and from overallLength, and the value sent is ignored.

maximumNumberOfPassengers
integer [ 0 .. 9999 ]

Maximum number of passengers of the passenger ship safety certificate of the vessel. With more than 12, the vessel is a passenger ship for the stowage of class 1 (IMDG 7.1.3.1); with more than 25, or more than one passenger for every 3 m of overall length if that number is greater, it is also one for classes 2 to 9 (IMDG 7.1.3.2) and isPassengerShip is set to true.

overallLength
number [ 0.01 .. 500 ]

Overall length of the vessel in metres, with up to two decimals. Required when maximumNumberOfPassengers is greater than 25, to apply the limit of one passenger for every 3 m of overall length (IMDG 7.1.3.2).

predefinedCarrierCode
string

Code of the Carrier participant that operates the vessel. On update, when the field is omitted the current shipping line is kept, and an empty string removes it. In responses, the code is omitted when the shipping line belongs to an account that the user cannot read.

Array of objects (VesselDocumentOfCompliance)

Classes that the vessel may carry and where, according to its Document of Compliance. On update, the list replaces the current one. Only with the Consolidation role: it is omitted from the responses, a request that includes it is rejected with 403 for users without that role, and an update from them keeps the saved entries.

Responses

Request samples

Content type
application/json
{
  • "accountCode": "WP001",
  • "name": "MSC ANNA",
  • "imoNumber": "9123453",
  • "callSign": "P3AB7",
  • "flagCountryCode": "MT",
  • "officialNumber": "12345-A",
  • "mmsi": "248123456",
  • "vesselType": "Containership",
  • "isPassengerShip": false,
  • "maximumNumberOfPassengers": 400,
  • "overallLength": 180.5,
  • "predefinedCarrierCode": "CAR001",
  • "documentOfComplianceEntries": [
    ]
}

Response samples

Content type
application/json
{
  • "newItemId": 23,
  • "newItemIsValid": true,
  • "success": true,
  • "httpStatusCode": 201,
  • "message": "Item Created OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

List the vessels of the accounts

Returns the vessels of the accounts that the user can read, each with its accountCode and its Document of Compliance.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "vessels": [
    ],
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Get a vessel

Returns a vessel of the accounts that the user can read with its accountCode and its Document of Compliance.

Authorizations:
basicAuthbearerAuth
path Parameters
vesselId
required
integer <int64>
Example: 12

Identifier of the vessel.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "vesselResponse": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Update a vessel

Updates the vessel; the entries of the Document of Compliance in the request replace the current ones. When predefinedCarrierCode is omitted, the current shipping line is kept. Another accountCode moves the vessel to that account; the user must be able to write in both accounts, and a vessel used by transport movements cannot be moved.

Authorizations:
basicAuthbearerAuth
path Parameters
vesselId
required
integer <int64>
Example: 12

Identifier of the vessel.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

vessel data that replace the current ones

accountCode
required
string

Code of the customer account to which the vessel belongs, among the accounts in which the user can write. Required when creating and when updating the vessel: on update, another code moves the vessel to that account. In responses, it is omitted when the account has no code.

name
required
string <= 250 characters

Name of the vessel, unique among the vessels of its account.

vesselType
required
string
Enum: "Containership" "RoRo" "HatchlessContainership" "BargeCarrying" "GeneralCargo"

Type of ship, relevant to the IMDG segregation tables.

imoNumber
string <= 7 characters

IMO number: seven digits, the last of which is a check digit.

callSign
string <= 10 characters

Radio call sign.

flagCountryCode
string <= 2 characters

ISO 3166-1 alpha-2 code of the flag country.

officialNumber
string <= 20 characters

Official number given by the flag State.

mmsi
string <= 9 characters

Maritime Mobile Service Identity, nine digits.

isPassengerShip
boolean
Default: false

True for a passenger ship whose number of passengers exceeds 25 or one passenger for every 3 m of overall length, whichever is the greater (IMDG 7.1.3.2): goods of stowage categories D and E are not accepted on board and goods of categories B and C only on deck. A passenger ship within that limit is recorded as false. When maximumNumberOfPassengers is given, the value is calculated from it and from overallLength, and the value sent is ignored.

maximumNumberOfPassengers
integer [ 0 .. 9999 ]

Maximum number of passengers of the passenger ship safety certificate of the vessel. With more than 12, the vessel is a passenger ship for the stowage of class 1 (IMDG 7.1.3.1); with more than 25, or more than one passenger for every 3 m of overall length if that number is greater, it is also one for classes 2 to 9 (IMDG 7.1.3.2) and isPassengerShip is set to true.

overallLength
number [ 0.01 .. 500 ]

Overall length of the vessel in metres, with up to two decimals. Required when maximumNumberOfPassengers is greater than 25, to apply the limit of one passenger for every 3 m of overall length (IMDG 7.1.3.2).

predefinedCarrierCode
string

Code of the Carrier participant that operates the vessel. On update, when the field is omitted the current shipping line is kept, and an empty string removes it. In responses, the code is omitted when the shipping line belongs to an account that the user cannot read.

Array of objects (VesselDocumentOfCompliance)

Classes that the vessel may carry and where, according to its Document of Compliance. On update, the list replaces the current one. Only with the Consolidation role: it is omitted from the responses, a request that includes it is rejected with 403 for users without that role, and an update from them keeps the saved entries.

Responses

Request samples

Content type
application/json
{
  • "accountCode": "WP001",
  • "name": "MSC ANNA",
  • "imoNumber": "9123453",
  • "callSign": "P3AB7",
  • "flagCountryCode": "MT",
  • "officialNumber": "12345-A",
  • "mmsi": "248123456",
  • "vesselType": "Containership",
  • "isPassengerShip": false,
  • "maximumNumberOfPassengers": 400,
  • "overallLength": 180.5,
  • "predefinedCarrierCode": "CAR001",
  • "documentOfComplianceEntries": [
    ]
}

Response samples

Content type
application/json
{
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Delete a vessel

Deletes a vessel of the accounts in which the user can write that no transport movement uses.

Authorizations:
basicAuthbearerAuth
path Parameters
vesselId
required
integer <int64>
Example: 12

Identifier of the vessel.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Create a vehicle or trailer

Creates a vehicle or trailer in the account given in accountCode with its registration, type and ADR approval. The registration must be unique among the vehicles and trailers of the accounts in which the user can write.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

vehicle or trailer

accountCode
required
string

Code of the customer account to which the vehicle or trailer belongs, among the accounts in which the user can write. Required when creating and when updating the vehicle or trailer: on update, another code moves it to that account. In responses, it is omitted when the account has no code.

registration
required
string <= 20 characters

Registration plate, unique among the vehicles and trailers of its account.

transportMeansType
required
string
Enum: "Tractor" "RigidTruck" "SemiTrailer" "Trailer" "Van" "Wagon"

Kind of vehicle or trailer.

registrationCountryCode
string <= 2 characters

ISO 3166-1 alpha-2 code of the country of registration.

object

Data of ADR of the vehicle or trailer: its approval type.

maximumPermissibleMass
integer >= 0

Maximum permissible mass of the vehicle or trailer in kilograms. Under ADR, the mass of the transport unit (vehicle and trailer) decides the limited quantity marking of ADR 3.4.13, required for more than 8 000 kg of limited quantities in a transport unit above 12 t, and the fire extinguishers of ADR 8.1.4.1.

description
string <= 100 characters

Free description, such as the make and model.

Responses

Request samples

Content type
application/json
{
  • "accountCode": "WP001",
  • "registration": "1234 KLM",
  • "registrationCountryCode": "ES",
  • "transportMeansType": "Tractor",
  • "adrData": {
    },
  • "maximumPermissibleMass": 18000,
  • "description": "Rigid truck, 18 t"
}

Response samples

Content type
application/json
{
  • "newItemId": 23,
  • "newItemIsValid": true,
  • "success": true,
  • "httpStatusCode": 201,
  • "message": "Item Created OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

List the vehicles and trailers of the accounts

Returns the vehicles and trailers of the accounts that the user can read, each with its accountCode, its registration and its type.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "transportMeans": [
    ],
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Get a vehicle or trailer

Returns a vehicle or trailer of the accounts that the user can read with its accountCode, its registration and its type.

Authorizations:
basicAuthbearerAuth
path Parameters
transportMeansId
required
integer <int64>
Example: 34

Identifier of the vehicle or trailer.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "transportMeansResponse": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Update a vehicle or trailer

Updates the registration, type, ADR approval and mass of a vehicle or trailer of the account. Another accountCode moves the vehicle or trailer to that account; the user must be able to write in both accounts, and a vehicle or trailer used by transport movements cannot be moved.

Authorizations:
basicAuthbearerAuth
path Parameters
transportMeansId
required
integer <int64>
Example: 34

Identifier of the vehicle or trailer.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

vehicle or trailer data that replace the current ones

accountCode
required
string

Code of the customer account to which the vehicle or trailer belongs, among the accounts in which the user can write. Required when creating and when updating the vehicle or trailer: on update, another code moves it to that account. In responses, it is omitted when the account has no code.

registration
required
string <= 20 characters

Registration plate, unique among the vehicles and trailers of its account.

transportMeansType
required
string
Enum: "Tractor" "RigidTruck" "SemiTrailer" "Trailer" "Van" "Wagon"

Kind of vehicle or trailer.

registrationCountryCode
string <= 2 characters

ISO 3166-1 alpha-2 code of the country of registration.

object

Data of ADR of the vehicle or trailer: its approval type.

maximumPermissibleMass
integer >= 0

Maximum permissible mass of the vehicle or trailer in kilograms. Under ADR, the mass of the transport unit (vehicle and trailer) decides the limited quantity marking of ADR 3.4.13, required for more than 8 000 kg of limited quantities in a transport unit above 12 t, and the fire extinguishers of ADR 8.1.4.1.

description
string <= 100 characters

Free description, such as the make and model.

Responses

Request samples

Content type
application/json
{
  • "accountCode": "WP001",
  • "registration": "1234 KLM",
  • "registrationCountryCode": "ES",
  • "transportMeansType": "Tractor",
  • "adrData": {
    },
  • "maximumPermissibleMass": 18000,
  • "description": "Rigid truck, 18 t"
}

Response samples

Content type
application/json
{
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Delete a vehicle or trailer

Deletes a vehicle or trailer of the accounts in which the user can write that no transport movement uses.

Authorizations:
basicAuthbearerAuth
path Parameters
transportMeansId
required
integer <int64>
Example: 34

Identifier of the vehicle or trailer.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Create a location restriction

Creates a restriction of the account given in accountCode for a port, airport or terminal among the locations of that account, of its company or of its group. It is applied when transport equipment is planned or loaded in a transport movement that calls at the location.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

restriction to apply at a port, airport or terminal

accountCode
required
string

Code of the customer account of the restriction, among the accounts in which the user can write. In responses, it is omitted when the account has no code.

locationCode
required
string <= 20 characters

Code of the port, airport or terminal among the locations of the account given in accountCode, of its company or of its group (UN/LOCODE or code given by the account).

restrictionType
required
string
Enum: "Forbidden" "TransitOnly" "PermitRequired" "DischargeFirstLoadLast" "OutsideStorage"

Kind of restriction.

classOrDivision
string

Class or division to which the restriction applies; omit it to apply the restriction to every class. A restriction applies either to a class or to an identification number: sending both is rejected with 400 naming classOrDivision.

identificationNumber
string <= 6 characters ^(UN|NA|ID)[0-9]{4}$

Identification number, when the restriction applies to a single entry. Identification number with its prefix: UN for UN numbers, NA for North American numbers (49 CFR only) and ID for ID 8000. Four digits, without spaces. NA numbers are rejected with 400 until 49 CFR is available. It cannot be sent together with classOrDivision.

remarks
string <= 500 characters

Remarks on the restriction, such as the time needed to obtain a permit.

validFrom
string <date-time>

Start of the validity of the restriction, in ISO 8601 format (UTC).

validUntil
string <date-time>

End of the validity of the restriction, in ISO 8601 format (UTC); empty for a restriction without an end date.

source
string <= 100 characters

Origin of the rule, such as a port circular, a notice of the shipping line or the experience of the account.

Responses

Request samples

Content type
application/json
{
  • "accountCode": "WP001",
  • "locationCode": "NLRTM",
  • "classOrDivision": "3",
  • "identificationNumber": "UN1263",
  • "restrictionType": "Forbidden",
  • "remarks": "Permit requested 48 hours in advance",
  • "validFrom": "2026-01-01T00:00:00Z",
  • "validUntil": "2026-12-31T23:59:59Z",
  • "source": "Port circular 12/2026"
}

Response samples

Content type
application/json
{
  • "newItemId": 23,
  • "newItemIsValid": true,
  • "success": true,
  • "httpStatusCode": 201,
  • "message": "Item Created OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

List the location restrictions of the accounts

Returns a page of the location restrictions of the accounts that the user can read, each with its accountCode, optionally only those of one location.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

locationCode
string
Example: locationCode=NLRTM

Code of a location (UN/LOCODE or code given by the account), to return only its restrictions.

page
integer
Default: 1
Example: page=1

Page number, starting at 1.

pageSize
integer [ 1 .. 200 ]
Default: 50
Example: pageSize=50

Number of items per page, between 1 and 200.

Responses

Response samples

Content type
application/json
{
  • "locationRestrictions": [
    ],
  • "page": 1,
  • "pageSize": 50,
  • "total": 137,
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Delete a location restriction

Deletes a location restriction of the account, which is no longer applied from then on.

Authorizations:
basicAuthbearerAuth
path Parameters
locationRestrictionId
required
integer <int64>
Example: 41

Identifier of the location restriction.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

List the locations of the accounts

Returns a page of the ports, airports and terminals selected or created by the accounts that the user can read, each with the accountCode of its account and its alias; a location among the locations of several accounts appears once for each of them. Locations created by an account have no unlocode.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

search
string
Example: search=ESV

Beginning of the code or of the name of the location.

page
integer
Default: 1
Example: page=1

Page number, starting at 1.

pageSize
integer [ 1 .. 200 ]
Default: 50
Example: pageSize=50

Number of items per page, between 1 and 200.

Responses

Response samples

Content type
application/json
{
  • "locations": [
    ],
  • "page": 1,
  • "pageSize": 50,
  • "total": 137,
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Add a location to an account

Adds a location of the UN/LOCODE catalogue to the locations of the account given in accountCode, with an optional alias, or creates a location of that account when the code is not in the catalogue, which requires a name and a country. The code must be unique among the locations of the account.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

catalogue location or location of the account

accountCode
required
string

Code of the customer account to whose locations the location is added, among the accounts in which the user can write.

locationCode
required
string <= 20 characters

Code of the location: a UN/LOCODE of the catalogue, or the code of a new location of the account.

alias
string <= 50 characters

Short name given to the location by the account.

name
string <= 250 characters

Name of a new location of the account; required when the code is not in the catalogue.

countryCode
string <= 2 characters

ISO 3166-1 alpha-2 code of the country of a new location of the account; required when the code is not in the catalogue.

isPort
boolean

True when a new location of the account is a sea port.

isAirport
boolean

True when a new location of the account is an airport.

isRoadTerminal
boolean

True when a new location of the account is a road terminal.

isRailTerminal
boolean

True when a new location of the account is a rail terminal.

Responses

Request samples

Content type
application/json
{
  • "accountCode": "WP001",
  • "locationCode": "ESVLC",
  • "alias": "Valencia terminal",
  • "name": "Paterna rail terminal",
  • "countryCode": "ES",
  • "isPort": true,
  • "isAirport": true,
  • "isRoadTerminal": true,
  • "isRailTerminal": true
}

Response samples

Content type
application/json
{
  • "newItemId": 23,
  • "newItemIsValid": true,
  • "success": true,
  • "httpStatusCode": 201,
  • "message": "Item Created OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Remove a location from an account

Removes a location from the locations of the account given in accountCode; a location created by the account is deleted. It is rejected with 409 when the account has restrictions at the location, or when restrictions, calls, transport movements or master consignments that depend on it use the location.

Authorizations:
basicAuthbearerAuth
path Parameters
locationCode
required
string <= 20 characters
Example: ESVLC

Code of the location among the locations of the account: the UN/LOCODE for catalogue locations, or the code given by the account to a location of its own.

query Parameters
accountCode
required
string
Example: accountCode=WP001

Code of the customer account from whose locations the location is removed.

requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Transport equipment

Transport equipment, its content, its movement history and its segregation checks

Create transport equipment

Creates transport equipment in the workplace given in workPlaceCode, which is required: a customer workplace in which the user can write. Container numbers are validated against ISO 6346, and the equipment can be assigned to a master consignment on creation: the master consignment must be enabled, of a workplace of the same company that the user can write, and its status must allow changes; the carrying transport equipment must be of an account the user can read. A master consignment or carrying equipment that does not exist is a 404; one that does not meet these conditions, a 400.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

transport equipment

equipmentType
required
string
Enum: "Container" "TankContainer" "Vehicle" "Trailer" "Wagon" "UnitLoadDevice" "SwapBody"

Kind of transport equipment.

identification
required
string <= 20 characters

Identification, unique in the company: ISO 6346 container number (four letters, six digits and a check digit, validated for containers and tank containers), registration plate of a vehicle or trailer, wagon number or ULD identifier.

workPlaceCode
string

Code of the workplace of the transport equipment, among the workplaces in which the user can write, as in the consignment API. Required when creating or validating the transport equipment. On update it can be omitted; when given, it must be the code of the workplace of the transport equipment, because transport equipment does not change workplace.

isoContainerTypeCode
string <= 4 characters

ISO 6346 size and type code of the container, from the ISO container type catalogue; a tank container requires a tank code.

sizeAndType
string <= 250 characters

Size and type as free text when no ISO 6346 code applies, as for vehicles and ULDs.

loadState
string
Enum: "Full" "Empty" "Residue"

Load state; Full when omitted.

sealNumbers
Array of strings

Seal numbers, printed on the manifest and on the packing certificate.

tareMass
number

Tare mass in kilograms.

totalGrossMass
number

Total gross mass in kilograms (tare and cargo); it cannot be lower than the tare mass.

setTemperature
number

Set temperature in degrees Celsius of a refrigerated container; only allowed when the ISO type is a reefer.

parentEquipmentId
integer

Identifier of the transport equipment that carries this one, such as the chassis of a container or the wagon of a swap body. When it is set or changed, it must be transport equipment of an account the user can read.

masterConsignmentId
integer

Identifier of the master consignment (booking) that owns the transport equipment. It may exist before any consignment is added; equipment shared by two bookings (part load) has one owner and is listed by the other booking through its consignments. When it is set or changed, the master consignment must be enabled, of a workplace of the company of the transport equipment that the user can write, and its status must allow changes; the one that is left must also allow changes.

object

Data of the container or vehicle packing certificate.

object

Data of the fumigation (UN 3359).

object

Coolant or conditioner carried.

remarks
string <= 1000 characters

Remarks printed with the transport equipment.

Responses

Request samples

Content type
application/json
{
  • "workPlaceCode": "WP001",
  • "equipmentType": "Container",
  • "identification": "MSCU1234566",
  • "isoContainerTypeCode": "22G1",
  • "sizeAndType": "13.6 m curtain-sided trailer",
  • "loadState": "Full",
  • "sealNumbers": [
    ],
  • "tareMass": 2200,
  • "totalGrossMass": 12000,
  • "setTemperature": -18,
  • "parentEquipmentId": 1190,
  • "masterConsignmentId": 97,
  • "packingCertificate": {
    },
  • "fumigation": {
    },
  • "coolant": {
    },
  • "remarks": "Residue only 250 kg - 500 kg"
}

Response samples

Content type
application/json
{
  • "newItemId": 23,
  • "newItemIsValid": true,
  • "success": true,
  • "httpStatusCode": 201,
  • "message": "Item Created OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Search the transport equipment of the account

Returns a page of the transport equipment of the account. Transport equipment created automatically from the IMDG or IATA data of a consignment is excluded unless includeImplicit is true.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

identification
string
Example: identification=MSCU

Beginning of the container number, registration plate or ULD identifier.

equipmentType
string (TransportEquipmentType)
Enum: "Container" "TankContainer" "Vehicle" "Trailer" "Wagon" "UnitLoadDevice" "SwapBody"

Kind of transport equipment.

loadState
string (TransportEquipmentLoadState)
Enum: "Full" "Empty" "Residue"

Load state of the transport equipment.

masterConsignmentId
integer <int64>
Example: masterConsignmentId=97

Identifier of a master consignment, to return only the transport equipment assigned to it.

movementId
integer <int64>
Example: movementId=311

Identifier of a transport movement, to return only its transport equipment.

consignmentId
integer <int64>
Example: consignmentId=48213

Identifier of a consignment, to return only the transport equipment that contains its items.

includeImplicit
boolean

True to include the transport equipment created automatically from the IMDG or IATA data of a consignment; false when omitted.

page
integer
Default: 1
Example: page=1

Page number, starting at 1.

pageSize
integer [ 1 .. 200 ]
Default: 50
Example: pageSize=50

Number of items per page, between 1 and 200.

Responses

Response samples

Content type
application/json
{
  • "transportEquipment": [
    ],
  • "page": 1,
  • "pageSize": 50,
  • "total": 137,
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Get transport equipment

Returns the transport equipment with its loaded items, its transport movements and its most recent segregation check.

Authorizations:
basicAuthbearerAuth
path Parameters
equipmentId
required
integer <int64>
Example: 1207

Identifier of the transport equipment.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "transportEquipmentResponse": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Update transport equipment

Updates the identification, type, seals, masses, load state, master consignment, packing certificate, fumigation and coolant data. Transport equipment does not change workplace: workPlaceCode can be omitted and, when given, must be the code of its workplace. Updating transport equipment created automatically from a consignment adopts it. When the master consignment changes, the new one must meet the same conditions as on creation and the one that is left must allow changes; when the carrying transport equipment changes, it must be of an account the user can read.

Authorizations:
basicAuthbearerAuth
path Parameters
equipmentId
required
integer <int64>
Example: 1207

Identifier of the transport equipment.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

transport equipment data that replace the current ones

equipmentType
required
string
Enum: "Container" "TankContainer" "Vehicle" "Trailer" "Wagon" "UnitLoadDevice" "SwapBody"

Kind of transport equipment.

identification
required
string <= 20 characters

Identification, unique in the company: ISO 6346 container number (four letters, six digits and a check digit, validated for containers and tank containers), registration plate of a vehicle or trailer, wagon number or ULD identifier.

workPlaceCode
string

Code of the workplace of the transport equipment, among the workplaces in which the user can write, as in the consignment API. Required when creating or validating the transport equipment. On update it can be omitted; when given, it must be the code of the workplace of the transport equipment, because transport equipment does not change workplace.

isoContainerTypeCode
string <= 4 characters

ISO 6346 size and type code of the container, from the ISO container type catalogue; a tank container requires a tank code.

sizeAndType
string <= 250 characters

Size and type as free text when no ISO 6346 code applies, as for vehicles and ULDs.

loadState
string
Enum: "Full" "Empty" "Residue"

Load state; Full when omitted.

sealNumbers
Array of strings

Seal numbers, printed on the manifest and on the packing certificate.

tareMass
number

Tare mass in kilograms.

totalGrossMass
number

Total gross mass in kilograms (tare and cargo); it cannot be lower than the tare mass.

setTemperature
number

Set temperature in degrees Celsius of a refrigerated container; only allowed when the ISO type is a reefer.

parentEquipmentId
integer

Identifier of the transport equipment that carries this one, such as the chassis of a container or the wagon of a swap body. When it is set or changed, it must be transport equipment of an account the user can read.

masterConsignmentId
integer

Identifier of the master consignment (booking) that owns the transport equipment. It may exist before any consignment is added; equipment shared by two bookings (part load) has one owner and is listed by the other booking through its consignments. When it is set or changed, the master consignment must be enabled, of a workplace of the company of the transport equipment that the user can write, and its status must allow changes; the one that is left must also allow changes.

object

Data of the container or vehicle packing certificate.

object

Data of the fumigation (UN 3359).

object

Coolant or conditioner carried.

remarks
string <= 1000 characters

Remarks printed with the transport equipment.

Responses

Request samples

Content type
application/json
{
  • "workPlaceCode": "WP001",
  • "equipmentType": "Container",
  • "identification": "MSCU1234566",
  • "isoContainerTypeCode": "22G1",
  • "sizeAndType": "13.6 m curtain-sided trailer",
  • "loadState": "Full",
  • "sealNumbers": [
    ],
  • "tareMass": 2200,
  • "totalGrossMass": 12000,
  • "setTemperature": -18,
  • "parentEquipmentId": 1190,
  • "masterConsignmentId": 97,
  • "packingCertificate": {
    },
  • "fumigation": {
    },
  • "coolant": {
    },
  • "remarks": "Residue only 250 kg - 500 kg"
}

Response samples

Content type
application/json
{
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Delete transport equipment

Deletes empty transport equipment that is not in any transport movement, does not carry other transport equipment and is not referred to by any consignment note; otherwise the request is rejected with 400, naming each consignment note that refers to it.

Authorizations:
basicAuthbearerAuth
path Parameters
equipmentId
required
integer <int64>
Example: 1207

Identifier of the transport equipment.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Load consignment items into transport equipment

Loads packages of one or more consignments into the transport equipment. The segregation inside the equipment and the packing and quantity limits are checked, and every problem is reported at once: when an item cannot be loaded, nothing is loaded, but the segregation of the other items with the current content is still evaluated. The packages carried by transport equipment created automatically from a consignment do not count as loaded. When the transport equipment is planned or loaded in a transport movement, the Document of Compliance of the vessel, the IMDG stowage category of the goods against the type of ship and the deck (IMDG 7.1.3.2) and the restrictions of the route are checked with the new content and, for road movements under Adr, the ADR approval types of the vehicle and of the trailer against the load of each leg of the movement (ADR 7.4.2, 7.2.4 V2 and 7.5.5.2). Conditions are returned in warnings, and forbidden combinations and prohibitions are rejected with 400. When the master consignment that owns the transport equipment, or the one of a consignment of the request, is approved, closed or cancelled, the request is rejected with 409. Each error and warning of the segregation check carries the pair of items in segregation. Returns the whole content of the transport equipment after the load.

Authorizations:
basicAuthbearerAuth
path Parameters
equipmentId
required
integer <int64>
Example: 1207

Identifier of the transport equipment.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

consignment items to load

required
Array of objects (TransportEquipmentContentItem) non-empty

Consignment items to load into the transport equipment.

Responses

Request samples

Content type
application/json
{
  • "contents": [
    ]
}

Response samples

Content type
application/json
{
  • "transportEquipmentContents": [
    ],
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Get the content of transport equipment

Returns every item loaded into the transport equipment, with the packages loaded into it.

Authorizations:
basicAuthbearerAuth
path Parameters
equipmentId
required
integer <int64>
Example: 1207

Identifier of the transport equipment.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "transportEquipmentContents": [
    ],
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Unload an item from transport equipment

Unloads an item from the transport equipment and frees its packages for other transport equipment. When the master consignment that owns the transport equipment, or the one of the consignment of the item, is approved, closed or cancelled, the request is rejected with 409.

Authorizations:
basicAuthbearerAuth
path Parameters
equipmentId
required
integer <int64>
Example: 1207

Identifier of the transport equipment.

contentId
required
integer <int64>
Example: 5521

Identifier of the loading of an item into the transport equipment.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Validate planned transport equipment

Validates planned transport equipment and the items that would be loaded into it, without storing anything: segregation and packing and quantity limits, for warehouse and planning systems before picking. Both transportEquipment and at least one element of contents are required, and transportEquipment.workPlaceCode is required as on creation: the identification is checked against the transport equipment of the company of that workplace.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

planned transport equipment and the items to load into it

required
object

Transport equipment to validate; it is not stored.

required
Array of objects (TransportEquipmentContentItem) non-empty

Consignment items that would be loaded into the transport equipment.

Responses

Request samples

Content type
application/json
{
  • "transportEquipment": {
    },
  • "contents": [
    ]
}

Response samples

Content type
application/json
{
  • "newItemId": 0,
  • "newItemIsValid": true,
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Get the movement history of transport equipment

Returns the transport movements of the transport equipment, oldest first, with where and when it was loaded and discharged.

Authorizations:
basicAuthbearerAuth
path Parameters
equipmentId
required
integer <int64>
Example: 1207

Identifier of the transport equipment.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "transportEquipmentMovements": [
    ],
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Check the segregation inside transport equipment

Evaluates every pair of items loaded in the transport equipment (IMDG 7.2.4 and SG codes; ADR 7.5.2 mixed loading), under IMDG when a consignment is under IMDG and under ADR when every consignment is under ADR. Transport equipment with consignments under another regulation and none under IMDG is rejected with 400, because that regulation has no segregation rules in the application. The result is stored as the current check and returned.

Authorizations:
basicAuthbearerAuth
path Parameters
equipmentId
required
integer <int64>
Example: 1207

Identifier of the transport equipment.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "segregationCheckResponse": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Transport movements and calls

Voyages, flights and road journeys with their calls and transport equipment, segregation checks, load threshold calculation (ADR 1.1.3.6) and restrictions

Create a transport movement

Creates a transport movement in the workplace given in workPlaceCode, which is required: a customer workplace in which the user can write. Location codes are resolved in the lists of that workplace, of its company and of its group. A sea movement requires a vessel and a road movement a vehicle. When the calls are omitted, they are created from the origin and the destination; when given, there must be at least two.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

transport movement with its calls

transportMode
required
string
Enum: "Sea" "Rail" "Road" "Air"

Mode of transport, which decides the mandatory fields: sea requires vesselId and road requires vehicleId.

movementNumber
required
string <= 50 characters

Voyage, flight or journey number, unique in the company for the same mode and departure.

regulation
required
string
Enum: "Adr" "Imdg" "Iata" "Cfr49"

Regulation applied to the carriage. Allowed values per mode: Adr for road and rail, Imdg for sea and Iata for air; Cfr49 will be accepted for every mode when it is available and is rejected with 400 until then. The checks of ADR for road (load threshold, vehicles, driver and ADR documents) apply only to road movements under Adr. The consignments keep the regulation of their own documentation. The edition applied is always the current one: transitional periods are not supported, and the current edition applies from the day it enters into force. Earlier results of the checks are kept by the application, but only the last one is returned.

workPlaceCode
string

Code of the workplace of the transport movement, among the workplaces in which the user can write, as in the consignment API. Required when creating the transport movement. On update it can be omitted; when given, it must be the code of the workplace of the transport movement, because a transport movement does not change workplace.

vesselId
integer

Identifier of a vessel of the account; required for sea movements.

vesselMasterName
string <= 100 characters

Name of the master of the vessel for this voyage, box 18 of the IMO FAL Form 7 (name and signature); it is data of the voyage, not of the vessel.

predefinedShippingAgentCode
string

Code of the participant that acts as shipping agent: the agent of the vessel at the port, box 19 of the IMO FAL Form 7 and contact of the electronic submission (data elements IMO0007 to IMO0012).

aircraftType
string <= 20 characters

Aircraft type, for air movements.

aircraftRegistration
string <= 10 characters

Aircraft registration, for air movements; printed in the header of the NOTOC.

isCargoAircraftOnly
boolean

For air movements, true when the aircraft carries cargo only, which allows packages restricted to cargo aircraft.

object

Declarant of the documents issued for the movement.

vehicleId
integer

Identifier of the tractor or rigid truck of the account; required for road movements.

trailerId
integer

Identifier of the trailer or semi-trailer of the account, for road movements.

predefinedDriverCode
string

Code of an existing participant of type Driver.

predefinedCarrierCode
string

Code of an existing participant of type Carrier that performs the movement (shipping line, airline or haulier).

originLocationCode
string <= 20 characters

Code of the location of origin among the locations of the lists of the workplace of the transport movement, of its company and of its group (UN/LOCODE or code given by the account); it is always the location of the first call. It is required on creation when calls is omitted, in which case it becomes the first call; in any other case, when given, it must be the location of the first call.

destinationLocationCode
string <= 20 characters

Code of the location of destination among the locations of the lists of the workplace of the transport movement, of its company and of its group (UN/LOCODE or code given by the account); it is always the location of the last call. It is required on creation when calls is omitted, in which case it becomes the last call; in any other case, when given, it must be the location of the last call.

departure
string <date-time>

Planned departure from the origin, in ISO 8601 format (UTC).

arrival
string <date-time>

Planned arrival at the destination, in ISO 8601 format (UTC).

Array of objects (TransportMovementCall)

Calls in order. When omitted on creation, the origin and the destination become calls 1 and 2. On update, when present, the list replaces the itinerary: each call is matched by callId, or by sequence when callId is missing; calls that are not present are deleted only when no transport equipment is loaded or discharged at them, otherwise the update is rejected with 409. When present, it must hold at least two calls; an empty list is rejected on update and, on creation, is treated as if the calls were omitted.

remarks
string <= 1000 characters

Remarks on the movement.

Responses

Request samples

Content type
application/json
{
  • "workPlaceCode": "WP001",
  • "transportMode": "Sea",
  • "movementNumber": "PT 092S",
  • "regulation": "Adr",
  • "vesselId": 12,
  • "vesselMasterName": "J. Smith",
  • "predefinedShippingAgentCode": "AGE001",
  • "aircraftType": "A330-300",
  • "aircraftRegistration": "EC-MXV",
  • "isCargoAircraftOnly": true,
  • "declarant": {
    },
  • "vehicleId": 34,
  • "trailerId": 35,
  • "predefinedDriverCode": "DRI001",
  • "predefinedCarrierCode": "CAR001",
  • "originLocationCode": "ESVLC",
  • "destinationLocationCode": "DEHAM",
  • "departure": "2026-11-02T10:00:00Z",
  • "arrival": "2026-11-06T08:00:00Z",
  • "calls": [
    ],
  • "remarks": "Berth confirmed"
}

Response samples

Content type
application/json
{
  • "newItemId": 23,
  • "newItemIsValid": true,
  • "success": true,
  • "httpStatusCode": 201,
  • "message": "Item Created OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Search the transport movements of the account

Returns a page of the transport movements of the account, filtered by mode of transport, number, vessel, vehicle, status, location and dates.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

transportMode
string (TransportMode)
Enum: "Sea" "Rail" "Road" "Air"

Mode of transport of the movement.

movementNumber
string
Example: movementNumber=PT 09

Beginning of the voyage, flight or journey number.

vesselId
integer <int64>
Example: vesselId=12

Identifier of a vessel of the account.

vehicleId
integer <int64>
Example: vehicleId=34

Identifier of a vehicle or trailer of the account.

status
string (TransportMovementStatus)
Enum: "Planned" "InProgress" "Completed" "Cancelled"

Status of the transport movement.

locationCode
string
Example: locationCode=NLRTM

Code of a location (UN/LOCODE or code given by the account), to return only the movements that call at it.

departureFrom
string <date-time>
Example: departureFrom=2026-11-02T00:00:00Z

Earliest planned departure, inclusive, in ISO 8601 format (UTC).

departureTo
string <date-time>
Example: departureTo=2026-11-30T23:59:59Z

Latest planned departure, inclusive, in ISO 8601 format (UTC).

page
integer
Default: 1
Example: page=1

Page number, starting at 1.

pageSize
integer [ 1 .. 200 ]
Default: 50
Example: pageSize=50

Number of items per page, between 1 and 200.

Responses

Response samples

Content type
application/json
{
  • "transportMovements": [
    ],
  • "page": 1,
  • "pageSize": 50,
  • "total": 137,
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Get a transport movement

Returns the transport movement with its calls, its transport equipment and its latest checks.

Authorizations:
basicAuthbearerAuth
path Parameters
movementId
required
integer <int64>
Example: 311

Identifier of the transport movement.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "transportMovementResponse": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Update a transport movement

Updates the data of the transport movement, including the master, the shipping agent and the aircraft registration. A transport movement does not change workplace: workPlaceCode can be omitted and, when given, must be the code of its workplace. Location codes are resolved in the lists of the workplace of the transport movement, of its company and of its group. When the request includes the calls, they replace the itinerary: there must be at least two, and a call at which transport equipment is loaded or discharged cannot be removed (the update is rejected with 409). When the vessel changes or the request includes the calls, the Document of Compliance of the vessel, the IMDG stowage category of the goods against the type of ship and the deck (IMDG 7.1.3.2) and the restrictions of the route are checked again for every transport equipment planned or loaded in the movement: prohibitions reject the whole update with 400 and the other findings are returned as warnings. For road movements under Adr, when the vehicle, the trailer or the calls change, the ADR approval types of the vehicle and of the trailer are checked against the load of each leg of the movement, with the transport equipment that is not cancelled on board between its calls of loading and of discharge (carriage in tanks, ADR 7.4.2; packages of Class 1 with special provision V2, ADR 7.2.4; maximum net explosive mass per transport unit, ADR 7.5.5.2): a requirement that is not met rejects the whole update with 400 and what cannot be verified is returned as a warning.

Authorizations:
basicAuthbearerAuth
path Parameters
movementId
required
integer <int64>
Example: 311

Identifier of the transport movement.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

transport movement data that replace the current ones

transportMode
required
string
Enum: "Sea" "Rail" "Road" "Air"

Mode of transport, which decides the mandatory fields: sea requires vesselId and road requires vehicleId.

movementNumber
required
string <= 50 characters

Voyage, flight or journey number, unique in the company for the same mode and departure.

regulation
required
string
Enum: "Adr" "Imdg" "Iata" "Cfr49"

Regulation applied to the carriage. Allowed values per mode: Adr for road and rail, Imdg for sea and Iata for air; Cfr49 will be accepted for every mode when it is available and is rejected with 400 until then. The checks of ADR for road (load threshold, vehicles, driver and ADR documents) apply only to road movements under Adr. The consignments keep the regulation of their own documentation. The edition applied is always the current one: transitional periods are not supported, and the current edition applies from the day it enters into force. Earlier results of the checks are kept by the application, but only the last one is returned.

workPlaceCode
string

Code of the workplace of the transport movement, among the workplaces in which the user can write, as in the consignment API. Required when creating the transport movement. On update it can be omitted; when given, it must be the code of the workplace of the transport movement, because a transport movement does not change workplace.

vesselId
integer

Identifier of a vessel of the account; required for sea movements.

vesselMasterName
string <= 100 characters

Name of the master of the vessel for this voyage, box 18 of the IMO FAL Form 7 (name and signature); it is data of the voyage, not of the vessel.

predefinedShippingAgentCode
string

Code of the participant that acts as shipping agent: the agent of the vessel at the port, box 19 of the IMO FAL Form 7 and contact of the electronic submission (data elements IMO0007 to IMO0012).

aircraftType
string <= 20 characters

Aircraft type, for air movements.

aircraftRegistration
string <= 10 characters

Aircraft registration, for air movements; printed in the header of the NOTOC.

isCargoAircraftOnly
boolean

For air movements, true when the aircraft carries cargo only, which allows packages restricted to cargo aircraft.

object

Declarant of the documents issued for the movement.

vehicleId
integer

Identifier of the tractor or rigid truck of the account; required for road movements.

trailerId
integer

Identifier of the trailer or semi-trailer of the account, for road movements.

predefinedDriverCode
string

Code of an existing participant of type Driver.

predefinedCarrierCode
string

Code of an existing participant of type Carrier that performs the movement (shipping line, airline or haulier).

originLocationCode
string <= 20 characters

Code of the location of origin among the locations of the lists of the workplace of the transport movement, of its company and of its group (UN/LOCODE or code given by the account); it is always the location of the first call. It is required on creation when calls is omitted, in which case it becomes the first call; in any other case, when given, it must be the location of the first call.

destinationLocationCode
string <= 20 characters

Code of the location of destination among the locations of the lists of the workplace of the transport movement, of its company and of its group (UN/LOCODE or code given by the account); it is always the location of the last call. It is required on creation when calls is omitted, in which case it becomes the last call; in any other case, when given, it must be the location of the last call.

departure
string <date-time>

Planned departure from the origin, in ISO 8601 format (UTC).

arrival
string <date-time>

Planned arrival at the destination, in ISO 8601 format (UTC).

Array of objects (TransportMovementCall)

Calls in order. When omitted on creation, the origin and the destination become calls 1 and 2. On update, when present, the list replaces the itinerary: each call is matched by callId, or by sequence when callId is missing; calls that are not present are deleted only when no transport equipment is loaded or discharged at them, otherwise the update is rejected with 409. When present, it must hold at least two calls; an empty list is rejected on update and, on creation, is treated as if the calls were omitted.

remarks
string <= 1000 characters

Remarks on the movement.

Responses

Request samples

Content type
application/json
{
  • "workPlaceCode": "WP001",
  • "transportMode": "Sea",
  • "movementNumber": "PT 092S",
  • "regulation": "Adr",
  • "vesselId": 12,
  • "vesselMasterName": "J. Smith",
  • "predefinedShippingAgentCode": "AGE001",
  • "aircraftType": "A330-300",
  • "aircraftRegistration": "EC-MXV",
  • "isCargoAircraftOnly": true,
  • "declarant": {
    },
  • "vehicleId": 34,
  • "trailerId": 35,
  • "predefinedDriverCode": "DRI001",
  • "predefinedCarrierCode": "CAR001",
  • "originLocationCode": "ESVLC",
  • "destinationLocationCode": "DEHAM",
  • "departure": "2026-11-02T10:00:00Z",
  • "arrival": "2026-11-06T08:00:00Z",
  • "calls": [
    ],
  • "remarks": "Berth confirmed"
}

Response samples

Content type
application/json
{
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Delete a transport movement

Deletes a transport movement in status Planned that has no transport equipment.

Authorizations:
basicAuthbearerAuth
path Parameters
movementId
required
integer <int64>
Example: 311

Identifier of the transport movement.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Add a call to a transport movement

Adds a call at a port, airport or terminal, whose code is resolved in the lists of the workplace of the transport movement, of its company and of its group. When omitted, the cut-off times are calculated from the estimated time of arrival: 96 hours before for the dangerous goods applications and 72 hours before for the final documentation. The Document of Compliance of the vessel, the IMDG stowage category of the goods against the type of ship and the deck (IMDG 7.1.3.2) and the restrictions of the route are checked again for every transport equipment planned or loaded in the movement: prohibitions reject the request with 400 and the other findings are returned as warnings. For road movements under Adr, the ADR approval types of the vehicle and of the trailer and the registered certificate of the driver (ADR 8.2.1) are checked again against the load of each leg.

Authorizations:
basicAuthbearerAuth
path Parameters
movementId
required
integer <int64>
Example: 311

Identifier of the transport movement.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

call to add

locationCode
required
string <= 20 characters

Code of the port, airport or terminal among the locations of the lists of the workplace of the transport movement, of its company and of its group: the UN/LOCODE or the code given by the account.

callId
integer

Identifier of the call, only when a transport movement is updated: it identifies the existing call, so that its transport equipment keeps its load and discharge calls. Omit it for a new call.

sequence
integer >= 1

Order of the call in the itinerary, starting at 1; sequences must be consecutive. It is required in the calls of a movement; when a call is added on its own it may be omitted to add the call after the last one, and when a call is updated it cannot be changed.

portCallReference
string <= 30 characters

Port call reference assigned by the port (data element IMO0153 of the IMO Compendium), required to submit the dangerous goods manifest to the maritime single window.

predefinedShippingAgentCode
string

Code of the participant that acts as shipping agent at this call, box 19 of the IMO FAL Form 7; the shipping agent of the movement when omitted. In responses, it is omitted when the participant belongs to an account that the user cannot read.

eta
string <date-time>

Estimated time of arrival, in ISO 8601 format (UTC). It cannot be earlier than the estimated time of departure from the previous call.

etd
string <date-time>

Estimated time of departure, in ISO 8601 format (UTC). It cannot be earlier than the estimated time of arrival at the same call.

ata
string <date-time>

Actual time of arrival, in ISO 8601 format (UTC).

atd
string <date-time>

Actual time of departure, in ISO 8601 format (UTC).

dangerousGoodsApplicationCutoff
string <date-time>

Deadline for the dangerous goods applications of this call, in ISO 8601 format (UTC). When omitted, it is calculated as 96 hours before the estimated time of arrival and recalculated when that time changes.

finalDocumentationCutoff
string <date-time>

Deadline for the final documentation of this call, in ISO 8601 format (UTC). When omitted, it is calculated as 72 hours before the estimated time of arrival and recalculated when that time changes.

isTranshipment
boolean

True when the call is a transhipment port.

remarks
string <= 500 characters

Remarks on the call.

Responses

Request samples

Content type
application/json
{
  • "callId": 902,
  • "sequence": 2,
  • "locationCode": "NLRTM",
  • "portCallReference": "NLRTM26-001234",
  • "predefinedShippingAgentCode": "AGE001",
  • "eta": "2026-11-02T10:00:00Z",
  • "etd": "2026-11-02T18:00:00Z",
  • "ata": "2026-11-02T10:00:00Z",
  • "atd": "2026-11-02T18:00:00Z",
  • "dangerousGoodsApplicationCutoff": "2026-10-29T10:00:00Z",
  • "finalDocumentationCutoff": "2026-10-30T10:00:00Z",
  • "isTranshipment": true,
  • "remarks": "Berth 12"
}

Response samples

Content type
application/json
{
  • "newItemId": 23,
  • "newItemIsValid": true,
  • "success": true,
  • "httpStatusCode": 201,
  • "message": "Item Created OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Update a call of a transport movement

Updates the call. The location code is resolved in the lists of the workplace of the transport movement, of its company and of its group. Changing the estimated time of arrival recalculates the cut-off times that the application calculated. When the location or any of the dates of the call change, the Document of Compliance of the vessel, the IMDG stowage category of the goods against the type of ship and the deck (IMDG 7.1.3.2) and the restrictions of the route are checked again for every transport equipment planned or loaded in the movement (prohibitions reject the update with 400 and the other findings are returned as warnings) and, for road movements under Adr, the ADR approval types of the vehicle and of the trailer and the registered certificate of the driver (ADR 8.2.1). Changing only other data of the call, such as the remarks, does not repeat these checks.

Authorizations:
basicAuthbearerAuth
path Parameters
movementId
required
integer <int64>
Example: 311

Identifier of the transport movement.

callId
required
integer <int64>
Example: 902

Identifier of the call of the transport movement.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

call data that replace the current ones

locationCode
required
string <= 20 characters

Code of the port, airport or terminal among the locations of the lists of the workplace of the transport movement, of its company and of its group: the UN/LOCODE or the code given by the account.

callId
integer

Identifier of the call, only when a transport movement is updated: it identifies the existing call, so that its transport equipment keeps its load and discharge calls. Omit it for a new call.

sequence
integer >= 1

Order of the call in the itinerary, starting at 1; sequences must be consecutive. It is required in the calls of a movement; when a call is added on its own it may be omitted to add the call after the last one, and when a call is updated it cannot be changed.

portCallReference
string <= 30 characters

Port call reference assigned by the port (data element IMO0153 of the IMO Compendium), required to submit the dangerous goods manifest to the maritime single window.

predefinedShippingAgentCode
string

Code of the participant that acts as shipping agent at this call, box 19 of the IMO FAL Form 7; the shipping agent of the movement when omitted. In responses, it is omitted when the participant belongs to an account that the user cannot read.

eta
string <date-time>

Estimated time of arrival, in ISO 8601 format (UTC). It cannot be earlier than the estimated time of departure from the previous call.

etd
string <date-time>

Estimated time of departure, in ISO 8601 format (UTC). It cannot be earlier than the estimated time of arrival at the same call.

ata
string <date-time>

Actual time of arrival, in ISO 8601 format (UTC).

atd
string <date-time>

Actual time of departure, in ISO 8601 format (UTC).

dangerousGoodsApplicationCutoff
string <date-time>

Deadline for the dangerous goods applications of this call, in ISO 8601 format (UTC). When omitted, it is calculated as 96 hours before the estimated time of arrival and recalculated when that time changes.

finalDocumentationCutoff
string <date-time>

Deadline for the final documentation of this call, in ISO 8601 format (UTC). When omitted, it is calculated as 72 hours before the estimated time of arrival and recalculated when that time changes.

isTranshipment
boolean

True when the call is a transhipment port.

remarks
string <= 500 characters

Remarks on the call.

Responses

Request samples

Content type
application/json
{
  • "callId": 902,
  • "sequence": 2,
  • "locationCode": "NLRTM",
  • "portCallReference": "NLRTM26-001234",
  • "predefinedShippingAgentCode": "AGE001",
  • "eta": "2026-11-02T10:00:00Z",
  • "etd": "2026-11-02T18:00:00Z",
  • "ata": "2026-11-02T10:00:00Z",
  • "atd": "2026-11-02T18:00:00Z",
  • "dangerousGoodsApplicationCutoff": "2026-10-29T10:00:00Z",
  • "finalDocumentationCutoff": "2026-10-30T10:00:00Z",
  • "isTranshipment": true,
  • "remarks": "Berth 12"
}

Response samples

Content type
application/json
{
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Delete a call of a transport movement

Deletes a call at which no transport equipment is loaded or discharged; otherwise the request is rejected with 409. The Document of Compliance of the vessel, the IMDG stowage category of the goods and the restrictions of the route are checked again with the remaining calls, as when the movement is updated: prohibitions reject the deletion with 400.

Authorizations:
basicAuthbearerAuth
path Parameters
movementId
required
integer <int64>
Example: 311

Identifier of the transport movement.

callId
required
integer <int64>
Example: 902

Identifier of the call of the transport movement.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Load transport equipment into a transport movement

Plans or loads transport equipment between two calls. The transport equipment must be of a workplace of the company of the transport movement and of an account the user can write (404 when it is not among the accounts the user can write, 400 when it is of another company), and the movement must have at least two calls (400 naming movementId). The Document of Compliance of the vessel, the IMDG stowage category of the goods against the type of ship and the deck (IMDG 7.1.3.2) and the restrictions of every location between the load and discharge calls are checked, and every problem is reported at once: prohibitions reject the request and the other findings are returned in warnings. For road movements under Adr, the load of each leg of the transport movement together with the new transport equipment, between its calls of loading and of discharge, is also checked against the ADR approval types of the vehicle and of the trailer (ADR 7.4.2, 7.2.4 V2 and 7.5.5.2): a requirement that is not met rejects the request, and what cannot be verified is returned in warnings. newItemId is the identifier of the transport equipment, which addresses it in /transportMovement/{movementId}/equipment/{equipmentId}.

Authorizations:
basicAuthbearerAuth
path Parameters
movementId
required
integer <int64>
Example: 311

Identifier of the transport movement.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

transport equipment to load and its calls

equipmentId
required
integer

Identifier of the transport equipment. On planning, it must be of a workplace of the company of the transport movement. When the equipment is updated in the movement, it must be the one in the path.

loadCallId
integer

Identifier of the call where the transport equipment is loaded; the first call when omitted.

dischargeCallId
integer

Identifier of the call where the transport equipment is discharged, which must come after the load call; the last call when omitted.

stowagePosition
string <= 20 characters

Stowage position, normally the bay, row and tier code supplied by the ship planner. It is never mandatory.

isOnDeck
boolean or null

True when stowed on deck, false when stowed under deck and null when unknown. It is given explicitly because the IMDG segregation tables 7.4.3.2 (on deck) and 7.4.3.3 (under deck) differ and the stowage position may be missing.

sequence
integer

Order of presentation in the manifest.

status
string
Enum: "Planned" "Loaded" "Discharged" "Cancelled"

Status to set, on update only: Loaded when the transport equipment has actually been loaded and Discharged when it has been unloaded.

loadedOn
string <date-time>

Actual time at which the transport equipment was loaded, in ISO 8601 format (UTC). It does not change the actual time of arrival of the call.

dischargedOn
string <date-time>

Actual time at which the transport equipment was discharged, in ISO 8601 format (UTC). It does not change the actual time of arrival of the call, which is the arrival of the means of transport.

Responses

Request samples

Content type
application/json
{
  • "equipmentId": 1207,
  • "loadCallId": 901,
  • "dischargeCallId": 903,
  • "stowagePosition": "0310482",
  • "isOnDeck": true,
  • "sequence": 1,
  • "status": "Planned",
  • "loadedOn": "2026-11-02T10:00:00Z",
  • "dischargedOn": "2026-11-06T08:00:00Z"
}

Response samples

Content type
application/json
{
  • "newItemId": 23,
  • "newItemIsValid": true,
  • "success": true,
  • "httpStatusCode": 201,
  • "message": "Item Created OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Update transport equipment in a transport movement

Updates the load and discharge calls, the status, the stowage position and whether the transport equipment is stowed on deck or under deck. Stowage positions normally come from the ship planner. When the body gives equipmentId, it must be the one of the path. When the transport equipment stays planned or loaded, the Document of Compliance of the vessel, the IMDG stowage category of the goods against the type of ship and the deck (IMDG 7.1.3.2) and the restrictions of the route are checked again with the final calls and deck: prohibitions reject the request with 400 and the other findings are returned as warnings. For road movements under Adr, when transport equipment that was cancelled returns to the movement, changes to Loaded or its call of loading or of discharge changes, the ADR approval types of the vehicle and of the trailer are checked in the same way against the load of each leg of the movement.

Authorizations:
basicAuthbearerAuth
path Parameters
movementId
required
integer <int64>
Example: 311

Identifier of the transport movement.

equipmentId
required
integer <int64>
Example: 1207

Identifier of the transport equipment.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

calls, status and stowage of the transport equipment

equipmentId
required
integer

Identifier of the transport equipment. On planning, it must be of a workplace of the company of the transport movement. When the equipment is updated in the movement, it must be the one in the path.

loadCallId
integer

Identifier of the call where the transport equipment is loaded; the first call when omitted.

dischargeCallId
integer

Identifier of the call where the transport equipment is discharged, which must come after the load call; the last call when omitted.

stowagePosition
string <= 20 characters

Stowage position, normally the bay, row and tier code supplied by the ship planner. It is never mandatory.

isOnDeck
boolean or null

True when stowed on deck, false when stowed under deck and null when unknown. It is given explicitly because the IMDG segregation tables 7.4.3.2 (on deck) and 7.4.3.3 (under deck) differ and the stowage position may be missing.

sequence
integer

Order of presentation in the manifest.

status
string
Enum: "Planned" "Loaded" "Discharged" "Cancelled"

Status to set, on update only: Loaded when the transport equipment has actually been loaded and Discharged when it has been unloaded.

loadedOn
string <date-time>

Actual time at which the transport equipment was loaded, in ISO 8601 format (UTC). It does not change the actual time of arrival of the call.

dischargedOn
string <date-time>

Actual time at which the transport equipment was discharged, in ISO 8601 format (UTC). It does not change the actual time of arrival of the call, which is the arrival of the means of transport.

Responses

Request samples

Content type
application/json
{
  • "equipmentId": 1207,
  • "loadCallId": 901,
  • "dischargeCallId": 903,
  • "stowagePosition": "0310482",
  • "isOnDeck": true,
  • "sequence": 1,
  • "status": "Planned",
  • "loadedOn": "2026-11-02T10:00:00Z",
  • "dischargedOn": "2026-11-06T08:00:00Z"
}

Response samples

Content type
application/json
{
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Remove transport equipment from a transport movement

Removes transport equipment in status Planned from the transport movement.

Authorizations:
basicAuthbearerAuth
path Parameters
movementId
required
integer <int64>
Example: 311

Identifier of the transport movement.

equipmentId
required
integer <int64>
Example: 1207

Identifier of the transport equipment.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Get what is on board at a call

Returns everything on board when departing from the selected call, including the transport equipment loaded at previous calls, with the remaining route. It is the content of the IMO FAL Form 7 for that call.

Authorizations:
basicAuthbearerAuth
path Parameters
movementId
required
integer <int64>
Example: 311

Identifier of the transport movement.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

callId
integer <int64>
Example: callId=902

Identifier of the call; the first call when omitted.

manifestVariant
string (ManifestVariant)
Enum: "OnBoard" "Arrival" "Discharge" "Load" "Departure"

Manifest selection; OnBoard when omitted.

Responses

Response samples

Content type
application/json
{
  • "transportMovementOnBoard": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Check the segregation between the transport equipment on board

Evaluates the separation required between the transport equipment that travels together at the selected call, according to the regulation of the transport movement: IMDG 7.2.4 with the tables of 7.4 for containers, on deck or under deck, for sea movements under Imdg; ADR 7.5.2 for road movements under Adr. Air and rail movements are rejected with 400, because the application has no segregation rules between their transport equipment. The result is stored as the current check and returned. Every property of the request body is optional; send an empty object to use the defaults.

Authorizations:
basicAuthbearerAuth
path Parameters
movementId
required
integer <int64>
Example: 311

Identifier of the transport movement.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

call to evaluate, or an empty object to evaluate the departure from the first call

callId
integer

For the movement scope only: identifier of the call whose transport equipment on board is evaluated; the departure from the first call when omitted.

Responses

Request samples

Content type
application/json
{
  • "callId": 902
}

Response samples

Content type
application/json
{
  • "segregationCheckResponse": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Calculate the load threshold of a transport movement

For road movements under Adr, adds up the weighted quantities of ADR 1.1.3.6 (factors 50, 20 for category 1 of note a, 3 and 1) for each leg of the movement, from the departure of each call to the next one, and returns every leg in adrData.legs with the most loaded leg as the result: a leg that is not exempt before an exempt one, then the one with more points, then the first one. The marking of limited quantities (ADR 3.4.13) is required for the movement when any leg requires it, and their gross mass is the largest of the legs. A single piece of transport equipment is evaluated as a whole, without legs. It also reports the consignment with which the threshold is exceeded and those that could be removed to keep the exemption. Other modes and other regulations are rejected with 400. The result is stored as the current calculation and returned. Every property of the request body is optional; send an empty object to use the defaults.

Authorizations:
basicAuthbearerAuth
path Parameters
movementId
required
integer <int64>
Example: 311

Identifier of the transport movement.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

transport equipment to evaluate alone, or an empty object to evaluate the whole transport unit leg by leg

equipmentId
integer

Identifier of a single piece of transport equipment of the movement to evaluate as a whole; when omitted, the whole transport unit (vehicle and trailer) is evaluated leg by leg.

Responses

Request samples

Content type
application/json
{
  • "equipmentId": 1207
}

Response samples

Content type
application/json
{
  • "loadThresholdCalculationResponse": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Get the restrictions of a transport movement

Returns, as data for warehouse and transport management systems, what the TripRestrictionSheet document prints. It is derived from the current content of the transport equipment and the restrictions of the locations of the route; regulation gives the regulation whose rules were applied. For road movements under Adr, adrData adds the tunnel restriction code, the last load threshold calculation (ADR 1.1.3.6), the orange plates and the safety equipment, the ADR approval types that the load requires of the vehicles (requiredVehicleApprovals), every finding of the check of the vehicle and of the trailer against the load (vehicleRestrictions), the training that the ADR driver training certificate shall cover (requiredDriverTraining), what could not be verified about it (driverTrainingNotes) and every finding of the check of the certificate recorded for the driver (driverRestrictions). isObsolete warns when the content changed after the last calculation or segregation check.

Authorizations:
basicAuthbearerAuth
path Parameters
movementId
required
integer <int64>
Example: 311

Identifier of the transport movement.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "transportMovementRestrictions": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Master consignments

Master consignments with their consignments and approval workflow

Create a master consignment

Creates a master consignment in status Draft. Consignments can be added on creation or later, and the number is generated when omitted.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

master consignment

consolidationType
required
string
Enum: "Road" "SeaLcl" "SeaFcl" "Air"

Kind of consolidation, which decides the fields that apply: sea consolidations use the vessel and ports, air consolidations the master air waybill and airports, and road consolidations the vehicles. It cannot change once the master consignment has consignments or its own transport equipment.

regulation
required
string
Enum: "Adr" "Imdg" "Iata" "Cfr49"

Regulation of the master consignment, which must be the one of its type of consolidation: Adr for road consolidation, Imdg for sea and Iata for air; Cfr49 is rejected with 400 until it is available. It is the regulation of the documentation of the consignments: today every consignment must have the regulation of the master consignment.

workPlaceCode
required
string

Code of the workplace that issues the master consignment, as in the consignment API; on creation, a workplace in which the user can write. On update it must be the workplace of the master consignment.

masterConsignmentNumber
string <= 50 characters

Number of the master consignment, unique in the company; generated from the sequence of the company when omitted.

bookingNumber
string <= 50 characters

Booking number given by the shipping line or airline; the main search key for sea consolidations.

masterDocumentNumber
string <= 50 characters

Master document number: the 11-digit master air waybill number (three-digit airline prefix and eight digits, the last of which is a modulus 7 check digit) or the master bill of lading number.

description
string <= 250 characters

Free description of the master consignment.

date
string <date>

Date of the master consignment, in ISO 8601 format; today when omitted.

originLocationCode
string <= 20 characters

Code of the contractual port or airport of loading (POL) in the lists of the work place given in workPlaceCode (on update, of the account of the master consignment), of its company and of its group (UN/LOCODE or code given by the account).

destinationLocationCode
string <= 20 characters

Code of the contractual port or airport of discharge (POD) in the lists of the work place given in workPlaceCode (on update, of the account of the master consignment), of its company and of its group (UN/LOCODE or code given by the account).

finalDestinationLocationCode
string <= 20 characters

Code of the final place of delivery (FPOD) in the lists of the work place given in workPlaceCode (on update, of the account of the master consignment), of its company and of its group, when it differs from the destination, such as an inland terminal.

nominatedMovementId
integer

Identifier of the transport movement (vessel and voyage, flight or journey) nominated for the booking. It must be of a workplace of the company of the master consignment. The Document of Compliance of the vessel and the port restrictions of the route are checked when transport equipment is placed on that transport movement, not when consignments are added.

isCargoAircraftOnly
boolean or null

For air consolidations only: true when the goods are restricted to cargo aircraft (IATA DGR packing instructions for cargo aircraft only); null for sea and road.

Array of objects (MasterConsignmentParty)

Parties of the master consignment. The Consolidator is mandatory; the others are optional.

Array of objects (MasterConsignmentReference)

References of the master consignment.

consignmentIds
Array of integers

Identifiers of existing consignments of the account to add on creation, with the same rules as when consignments are added later.

remarks
string <= 1000 characters

Free remarks, such as information on a part load.

Responses

Request samples

Content type
application/json
{
  • "consolidationType": "Road",
  • "regulation": "Adr",
  • "masterConsignmentNumber": "MC-2026-0007",
  • "bookingNumber": "NPDL-4471209",
  • "masterDocumentNumber": "020-12345675",
  • "description": "Weekly LCL to Hamburg",
  • "date": "2026-11-02",
  • "workPlaceCode": "WP001",
  • "originLocationCode": "ESVLC",
  • "destinationLocationCode": "DEHAM",
  • "finalDestinationLocationCode": "DEDUI",
  • "nominatedMovementId": 311,
  • "isCargoAircraftOnly": true,
  • "parties": [
    ],
  • "references": [
    ],
  • "consignmentIds": [
    ],
  • "remarks": "Part load shared with booking NPDL-4471210"
}

Response samples

Content type
application/json
{
  • "newItemId": 23,
  • "newItemIsValid": true,
  • "success": true,
  • "httpStatusCode": 201,
  • "message": "Item Created OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Search the master consignments of the account

Returns a page of the master consignments of the account, filtered by number, booking, master document, status, kind of consolidation, date or consignment.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

masterConsignmentNumber
string
Example: masterConsignmentNumber=MC-2026-0007

Number of the master consignment, exact match.

bookingNumber
string
Example: bookingNumber=NPDL-4471209

Booking number, exact match.

masterDocumentNumber
string
Example: masterDocumentNumber=020-12345675

Master air waybill or master bill of lading number, exact match.

status
string (MasterConsignmentStatus)
Enum: "Draft" "Submitted" "InformationRequested" "PreApproved" "FinalDocumentationSubmitted" "Approved" "Rejected" "Closed" "Cancelled"

Workflow status of the master consignment.

consolidationType
string (ConsolidationType)
Enum: "Road" "SeaLcl" "SeaFcl" "Air"

Kind of consolidation of the master consignment.

consignmentId
integer <int64>
Example: consignmentId=48213

Identifier of a consignment, to return the master consignment that contains it.

dateFrom
string <date>
Example: dateFrom=2026-11-01

Earliest date of the master consignment, inclusive, in ISO 8601 format.

dateTo
string <date>
Example: dateTo=2026-11-30

Latest date of the master consignment, inclusive, in ISO 8601 format.

page
integer
Default: 1
Example: page=1

Page number, starting at 1.

pageSize
integer [ 1 .. 200 ]
Default: 50
Example: pageSize=50

Number of items per page, between 1 and 200.

Responses

Response samples

Content type
application/json
{
  • "masterConsignments": [
    ],
  • "page": 1,
  • "pageSize": 50,
  • "total": 137,
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Get a master consignment

Returns the master consignment with its parties, references, consignments and transport equipment.

Authorizations:
basicAuthbearerAuth
path Parameters
masterConsignmentId
required
integer <int64>
Example: 97

Identifier of the master consignment, as returned in newItemId on creation.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "masterConsignmentResponse": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Update a master consignment

Updates the data, parties and references of the master consignment; the lists in the request replace the current ones. Consignments are added and removed separately. Not allowed in status Closed or Cancelled. The consolidation type cannot change while the master consignment has consignments or its own transport equipment (400 naming consolidationType).

Authorizations:
basicAuthbearerAuth
path Parameters
masterConsignmentId
required
integer <int64>
Example: 97

Identifier of the master consignment, as returned in newItemId on creation.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

master consignment data that replace the current ones

consolidationType
required
string
Enum: "Road" "SeaLcl" "SeaFcl" "Air"

Kind of consolidation, which decides the fields that apply: sea consolidations use the vessel and ports, air consolidations the master air waybill and airports, and road consolidations the vehicles. It cannot change once the master consignment has consignments or its own transport equipment.

regulation
required
string
Enum: "Adr" "Imdg" "Iata" "Cfr49"

Regulation of the master consignment, which must be the one of its type of consolidation: Adr for road consolidation, Imdg for sea and Iata for air; Cfr49 is rejected with 400 until it is available. It is the regulation of the documentation of the consignments: today every consignment must have the regulation of the master consignment.

workPlaceCode
required
string

Code of the workplace that issues the master consignment, as in the consignment API; on creation, a workplace in which the user can write. On update it must be the workplace of the master consignment.

masterConsignmentNumber
string <= 50 characters

Number of the master consignment, unique in the company; generated from the sequence of the company when omitted.

bookingNumber
string <= 50 characters

Booking number given by the shipping line or airline; the main search key for sea consolidations.

masterDocumentNumber
string <= 50 characters

Master document number: the 11-digit master air waybill number (three-digit airline prefix and eight digits, the last of which is a modulus 7 check digit) or the master bill of lading number.

description
string <= 250 characters

Free description of the master consignment.

date
string <date>

Date of the master consignment, in ISO 8601 format; today when omitted.

originLocationCode
string <= 20 characters

Code of the contractual port or airport of loading (POL) in the lists of the work place given in workPlaceCode (on update, of the account of the master consignment), of its company and of its group (UN/LOCODE or code given by the account).

destinationLocationCode
string <= 20 characters

Code of the contractual port or airport of discharge (POD) in the lists of the work place given in workPlaceCode (on update, of the account of the master consignment), of its company and of its group (UN/LOCODE or code given by the account).

finalDestinationLocationCode
string <= 20 characters

Code of the final place of delivery (FPOD) in the lists of the work place given in workPlaceCode (on update, of the account of the master consignment), of its company and of its group, when it differs from the destination, such as an inland terminal.

nominatedMovementId
integer

Identifier of the transport movement (vessel and voyage, flight or journey) nominated for the booking. It must be of a workplace of the company of the master consignment. The Document of Compliance of the vessel and the port restrictions of the route are checked when transport equipment is placed on that transport movement, not when consignments are added.

isCargoAircraftOnly
boolean or null

For air consolidations only: true when the goods are restricted to cargo aircraft (IATA DGR packing instructions for cargo aircraft only); null for sea and road.

Array of objects (MasterConsignmentParty)

Parties of the master consignment. The Consolidator is mandatory; the others are optional.

Array of objects (MasterConsignmentReference)

References of the master consignment.

consignmentIds
Array of integers

Identifiers of existing consignments of the account to add on creation, with the same rules as when consignments are added later.

remarks
string <= 1000 characters

Free remarks, such as information on a part load.

Responses

Request samples

Content type
application/json
{
  • "consolidationType": "Road",
  • "regulation": "Adr",
  • "masterConsignmentNumber": "MC-2026-0007",
  • "bookingNumber": "NPDL-4471209",
  • "masterDocumentNumber": "020-12345675",
  • "description": "Weekly LCL to Hamburg",
  • "date": "2026-11-02",
  • "workPlaceCode": "WP001",
  • "originLocationCode": "ESVLC",
  • "destinationLocationCode": "DEHAM",
  • "finalDestinationLocationCode": "DEDUI",
  • "nominatedMovementId": 311,
  • "isCargoAircraftOnly": true,
  • "parties": [
    ],
  • "references": [
    ],
  • "consignmentIds": [
    ],
  • "remarks": "Part load shared with booking NPDL-4471210"
}

Response samples

Content type
application/json
{
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Delete a master consignment

Deletes a master consignment in status Draft or Cancelled. Its consignments and transport equipment are removed from it, not deleted. Its accepted consolidation requests are rejected with the reason that the master consignment was deleted, and their requesters are notified; no consolidation request refers to it afterwards.

Authorizations:
basicAuthbearerAuth
path Parameters
masterConsignmentId
required
integer <int64>
Example: 97

Identifier of the master consignment, as returned in newItemId on creation.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Add consignments to a master consignment

Adds consignments of the account, or of the client accounts of its consultancy (directly or through an accepted consolidation request). Each consignment may belong to one master consignment only. The regulation of every consignment and the rule against mixing paper and electronic shipper declarations in air consolidations are checked; every problem is reported at once. The Document of Compliance of the vessel and the port restrictions of the route are checked when the transport equipment is placed on the transport movement.

Authorizations:
basicAuthbearerAuth
path Parameters
masterConsignmentId
required
integer <int64>
Example: 97

Identifier of the master consignment, as returned in newItemId on creation.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

consignments to add

consignmentIds
required
Array of integers non-empty

Identifiers of existing consignments of the account, or of the client accounts of its consultancy, to add.

Responses

Request samples

Content type
application/json
{
  • "consignmentIds": [
    ]
}

Response samples

Content type
application/json
{
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Remove a consignment from a master consignment

Removes the consignment from the master consignment; its packages are unloaded from the transport equipment of the master consignment.

Authorizations:
basicAuthbearerAuth
path Parameters
masterConsignmentId
required
integer <int64>
Example: 97

Identifier of the master consignment, as returned in newItemId on creation.

consignmentId
required
integer <int64>
Example: 48213

Identifier of the consignment.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Submit the master consignment to the carrier

Sends the dangerous goods application: allowed in Draft and InformationRequested, leads to Submitted. Takes a data snapshot of the master consignment (dataSnapshotId of the event). The optional remarks are recorded in the event. Every transition is recorded as an event and notified with the MasterConsignmentStatusChanged webhook. A transition that the current status does not allow answers 409.

Authorizations:
basicAuthbearerAuth
path Parameters
masterConsignmentId
required
integer <int64>
Example: 97

Identifier of the master consignment, as returned in newItemId on creation.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

remarks of the transition, or an empty object when none are needed

remarks
string <= 1000 characters

Reason for the transition, recorded in its event; mandatory for reject and requestInformation.

Responses

Request samples

Content type
application/json
{
  • "remarks": "Missing safety data sheet"
}

Response samples

Content type
application/json
{
  • "masterConsignmentResponse": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Request more information about the master consignment

Allowed in Submitted and FinalDocumentationSubmitted, leads to InformationRequested. The remarks are mandatory: they state the information requested. Every transition is recorded as an event and notified with the MasterConsignmentStatusChanged webhook. A transition that the current status does not allow answers 409.

Authorizations:
basicAuthbearerAuth
path Parameters
masterConsignmentId
required
integer <int64>
Example: 97

Identifier of the master consignment, as returned in newItemId on creation.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

remarks of the transition, or an empty object when none are needed

remarks
string <= 1000 characters

Reason for the transition, recorded in its event; mandatory for reject and requestInformation.

Responses

Request samples

Content type
application/json
{
  • "remarks": "Missing safety data sheet"
}

Response samples

Content type
application/json
{
  • "masterConsignmentResponse": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Pre-approve the master consignment

Allowed in Submitted, leads to PreApproved: the transport equipment may be packed. Takes a data snapshot of the master consignment. Every transition is recorded as an event and notified with the MasterConsignmentStatusChanged webhook. A transition that the current status does not allow answers 409.

Authorizations:
basicAuthbearerAuth
path Parameters
masterConsignmentId
required
integer <int64>
Example: 97

Identifier of the master consignment, as returned in newItemId on creation.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

remarks of the transition, or an empty object when none are needed

remarks
string <= 1000 characters

Reason for the transition, recorded in its event; mandatory for reject and requestInformation.

Responses

Request samples

Content type
application/json
{
  • "remarks": "Missing safety data sheet"
}

Response samples

Content type
application/json
{
  • "masterConsignmentResponse": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Record the final documentation of the master consignment

Allowed in PreApproved, leads to FinalDocumentationSubmitted. Takes a data snapshot of the master consignment and records the differences with the snapshot taken at the pre-approval. Every transition is recorded as an event and notified with the MasterConsignmentStatusChanged webhook. A transition that the current status does not allow answers 409.

Authorizations:
basicAuthbearerAuth
path Parameters
masterConsignmentId
required
integer <int64>
Example: 97

Identifier of the master consignment, as returned in newItemId on creation.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

remarks of the transition, or an empty object when none are needed

remarks
string <= 1000 characters

Reason for the transition, recorded in its event; mandatory for reject and requestInformation.

Responses

Request samples

Content type
application/json
{
  • "remarks": "Missing safety data sheet"
}

Response samples

Content type
application/json
{
  • "masterConsignmentResponse": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Approve the master consignment

Allowed in FinalDocumentationSubmitted, leads to Approved. Requires a valid segregation check, not obsolete, of every piece of transport equipment and, for road movements under Adr, a valid load threshold calculation (ADR 1.1.3.6) of the nominated transport movement; otherwise every reason is returned at once and the status does not change. Records the differences with the snapshot taken at the pre-approval. Every transition is recorded as an event and notified with the MasterConsignmentStatusChanged webhook. A transition that the current status does not allow answers 409.

Authorizations:
basicAuthbearerAuth
path Parameters
masterConsignmentId
required
integer <int64>
Example: 97

Identifier of the master consignment, as returned in newItemId on creation.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

remarks of the transition, or an empty object when none are needed

remarks
string <= 1000 characters

Reason for the transition, recorded in its event; mandatory for reject and requestInformation.

Responses

Request samples

Content type
application/json
{
  • "remarks": "Missing safety data sheet"
}

Response samples

Content type
application/json
{
  • "masterConsignmentResponse": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Reject the master consignment

Allowed in Submitted, InformationRequested, PreApproved and FinalDocumentationSubmitted, leads to Rejected. The remarks are mandatory: they state the reason. Every transition is recorded as an event and notified with the MasterConsignmentStatusChanged webhook. A transition that the current status does not allow answers 409.

Authorizations:
basicAuthbearerAuth
path Parameters
masterConsignmentId
required
integer <int64>
Example: 97

Identifier of the master consignment, as returned in newItemId on creation.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

remarks of the transition, or an empty object when none are needed

remarks
string <= 1000 characters

Reason for the transition, recorded in its event; mandatory for reject and requestInformation.

Responses

Request samples

Content type
application/json
{
  • "remarks": "Missing safety data sheet"
}

Response samples

Content type
application/json
{
  • "masterConsignmentResponse": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Close the master consignment

Allowed in Approved, leads to Closed: the master consignment becomes read-only and its accepted consolidation requests are completed. Every transition is recorded as an event and notified with the MasterConsignmentStatusChanged webhook. A transition that the current status does not allow answers 409.

Authorizations:
basicAuthbearerAuth
path Parameters
masterConsignmentId
required
integer <int64>
Example: 97

Identifier of the master consignment, as returned in newItemId on creation.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

remarks of the transition, or an empty object when none are needed

remarks
string <= 1000 characters

Reason for the transition, recorded in its event; mandatory for reject and requestInformation.

Responses

Request samples

Content type
application/json
{
  • "remarks": "Missing safety data sheet"
}

Response samples

Content type
application/json
{
  • "masterConsignmentResponse": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Cancel the master consignment

Allowed in Draft, InformationRequested, PreApproved and Approved, leads to Cancelled; the consolidation requests accepted into it are rejected. Every transition is recorded as an event and notified with the MasterConsignmentStatusChanged webhook. A transition that the current status does not allow answers 409.

Authorizations:
basicAuthbearerAuth
path Parameters
masterConsignmentId
required
integer <int64>
Example: 97

Identifier of the master consignment, as returned in newItemId on creation.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

remarks of the transition, or an empty object when none are needed

remarks
string <= 1000 characters

Reason for the transition, recorded in its event; mandatory for reject and requestInformation.

Responses

Request samples

Content type
application/json
{
  • "remarks": "Missing safety data sheet"
}

Response samples

Content type
application/json
{
  • "masterConsignmentResponse": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Reopen a rejected master consignment

Allowed in Rejected, takes the master consignment back to Draft. Every transition is recorded as an event and notified with the MasterConsignmentStatusChanged webhook. A transition that the current status does not allow answers 409.

Authorizations:
basicAuthbearerAuth
path Parameters
masterConsignmentId
required
integer <int64>
Example: 97

Identifier of the master consignment, as returned in newItemId on creation.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

remarks of the transition, or an empty object when none are needed

remarks
string <= 1000 characters

Reason for the transition, recorded in its event; mandatory for reject and requestInformation.

Responses

Request samples

Content type
application/json
{
  • "remarks": "Missing safety data sheet"
}

Response samples

Content type
application/json
{
  • "masterConsignmentResponse": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Get the history of a master consignment

Returns the history of the master consignment: status transitions, consignments added and removed, transport equipment assigned and released, and comments, oldest first.

Authorizations:
basicAuthbearerAuth
path Parameters
masterConsignmentId
required
integer <int64>
Example: 97

Identifier of the master consignment, as returned in newItemId on creation.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "masterConsignmentEvents": [
    ],
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Consolidation Reporting

Documents of transport equipment, transport movements and master consignments

Generate documents of transport equipment

Generates documents of the transport equipment: the packing certificate covering every consignment loaded, as a standalone form, the multimodal dangerous goods form, the segregation report, the pre-signature checklist or the consolidation labels. With read-only access to the account of the transport equipment, the document is generated but not stored as a version.

Authorizations:
basicAuthbearerAuth
path Parameters
equipmentId
required
integer <int64>
Example: 1207

Identifier of the transport equipment.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

documents to generate

documentTypes
required
Array of strings (TransportEquipmentDocumentType) non-empty
Items Enum: "ContainerPackingCertificate" "MultimodalDangerousGoodsForm" "UnitSegregationReport" "UnitCheckList" "ConsolidationLabel"

Documents to generate.

documentFormat
required
string
Enum: "PDF" "XLSX" "DOCX"

Output format: PDF, XLSX or DOCX.

language
string <= 2 characters
Default: "en"

ISO 639-1 code of the language of the documents: en, es, fr, de, it, pt, nl, pl, ru, sv, no, cs, da, el, hu, sk, ro, fi or tr; en when omitted.

Responses

Request samples

Content type
application/json
{
  • "documentTypes": [
    ],
  • "documentFormat": "PDF",
  • "language": "en"
}

Response samples

Content type
application/json
{
  • "base64EncodedFile": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Generate documents of a transport movement

Generates documents of the transport movement: the IMO FAL Form 7 manifest for the selected call and selection, the segregation report between transport equipment, the load threshold report, the restriction sheet, the consolidation load sheet, the consolidated ADR transport document of the whole load, the load checklist of the vehicle or the NOTOC. The load threshold report, the restriction sheet, the consolidated transport document and the load checklist of the vehicle are available for road movements under Adr only; for other movements they are rejected with 400. They need the regulation of the movement only, so an account with the consolidation licence for ADR alone issues them. Manifests are versioned: a new issue supersedes the previous one. With read-only access to the account of the transport movement, the document is generated but not stored as a version and no MovementDocumentIssued notification is sent.

Authorizations:
basicAuthbearerAuth
path Parameters
movementId
required
integer <int64>
Example: 311

Identifier of the transport movement.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

documents to generate

documentTypes
required
Array of strings (TransportMovementDocumentType) non-empty
Items Enum: "DangerousGoodsManifest" "InterUnitSegregationReport" "LoadThresholdReport" "TripRestrictionSheet" "ConsolidationLoadSheet" "Notoc" "ConsolidatedTransportDocument" "VehicleLoadCheckList"

Documents to generate.

documentFormat
required
string
Enum: "PDF" "XLSX" "DOCX"

Output format: PDF, XLSX or DOCX.

language
string <= 2 characters
Default: "en"

ISO 639-1 code of the language of the documents: en, es, fr, de, it, pt, nl, pl, ru, sv, no, cs, da, el, hu, sk, ro, fi or tr; en when omitted.

callId
integer

Identifier of the call to which the document refers (manifest and segregation report between transport equipment); the first call when omitted.

manifestVariant
string
Enum: "OnBoard" "Arrival" "Discharge" "Load" "Departure"

Manifest selection; OnBoard when omitted.

Responses

Request samples

Content type
application/json
{
  • "documentTypes": [
    ],
  • "documentFormat": "PDF",
  • "language": "en",
  • "callId": 902,
  • "manifestVariant": "OnBoard"
}

Response samples

Content type
application/json
{
  • "base64EncodedFile": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Generate documents of a master consignment

Generates documents of the master consignment: consolidation manifest, container list, packing list, consolidation load sheet or master document data. The document is returned base 64 encoded and stored with its version. With read-only access to the account of the master consignment, the document is generated but not stored as a version.

Authorizations:
basicAuthbearerAuth
path Parameters
masterConsignmentId
required
integer <int64>
Example: 97

Identifier of the master consignment, as returned in newItemId on creation.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

documents to generate

documentTypes
required
Array of strings (MasterConsignmentDocumentType) non-empty
Items Enum: "ConsolidationManifest" "ContainerList" "PackingList" "ConsolidationLoadSheet" "MasterDocumentData"

Documents to generate; several types are merged into one document.

documentFormat
required
string
Enum: "PDF" "XLSX" "DOCX"

Output format: PDF, XLSX or DOCX.

language
string <= 2 characters
Default: "en"

ISO 639-1 code of the language of the documents: en, es, fr, de, it, pt, nl, pl, ru, sv, no, cs, da, el, hu, sk, ro, fi or tr; en when omitted.

Responses

Request samples

Content type
application/json
{
  • "documentTypes": [
    ],
  • "documentFormat": "PDF",
  • "language": "en"
}

Response samples

Content type
application/json
{
  • "base64EncodedFile": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Consignment notes

CMR, eCMR and national consignment notes, from creation to delivery

Create a consignment note

Creates a consignment note in status Draft for a consignment and consignee. Parties, vehicle, driver, references and one line per dangerous goods item, with the description of the regulation of the consignment generated, are taken from the consignment; any field given in the request overrides them. There is one note in force per consignment and consignee: a cancelled or failed note can be replaced by a new one, which records the replaced note in replacesConsignmentNoteId. National notes, with taking over and delivery in the same country, are not available in every country: when they are not available in the country of the route, the request is rejected with an error on consignmentNoteType. Consignments under 49 CFR are rejected with 400 until it is available.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

consignment note to create from a consignment

consignmentId
required
integer

Identifier of the consignment to which the note belongs; it cannot be changed, so on update it must be the consignment of the note.

clientReference
string <= 100 characters

Identifier of the note in the system of the API client (TMS or ERP); unique in the account and searchable.

equipmentId
integer

Identifier of the transport equipment (container, swap body or trailer) carried in this leg; its identification and seals are printed on the note (box 18).

sealNumbers
Array of strings

Seal numbers at loading, checked at unloading; the seals of the transport equipment or of the consignment when omitted.

predefinedConsigneeCode
string

Code of the Consignee participant (CMR article 6.1 (e); box 2). There is one note per consignment and consignee; the first consignee of the consignment when omitted.

consignmentNoteType
string
Enum: "InternationalCmr" "National"

International CMR or national note; derived from the countries of taking over and delivery when omitted.

language
string <= 2 characters

ISO 639-1 code of the main language of the printed note; the documents of the note are bilingual with the criterion of the ADR transport document: the main language and the ADR official language configured for the user (English, French or German), unless it is the same as the main language, in which case they are printed in one language only. The language configured for the account when omitted.

issuePlace
string <= 100 characters

Place where the note is made out (CMR article 6.1 (a); box 21).

issueDate
string <date>

Date on which the note is made out (CMR article 6.1 (a)), in ISO 8601 format; today when omitted.

object

Place and date of taking over of the goods (CMR article 6.1 (d); box 4); printedText is mandatory.

object

Place designated for delivery (CMR article 6.1 (d); box 3). Without a participant the address of the consignee is used; scheduledOn is the planned delivery date.

Array of objects (ConsignmentNoteCarrier)

Carriers of the note. A Contractual carrier is mandatory for CMR notes. When omitted on creation, the carriers are taken from the consignment.

Array of objects (ConsignmentNoteLine)

Goods lines. On creation, one line is generated for each dangerous goods item of the consignment for the consignee, and lines without dangerous goods may be added. On update, the list replaces the current lines.

Array of objects (ConsignmentNoteReference)

References printed on the note; taken from the references of the consignment when omitted.

Array of objects (ConsignmentNoteCharge)

Charges (CMR article 6.1 (i); box 20).

Array of objects (ConsignmentNoteContact)

Signers at loading and delivery and notification contacts, who receive the one-time PIN, the signature link and the signed copy.

shipperInstructions
string <= 500 characters

Instructions of the shipper for customs and other formalities (CMR article 6.1 (j); box 13).

attachedDocumentsText
string <= 500 characters

List of the documents handed to the carrier (CMR article 6.2 (g); box 5); the documents themselves are attachments.

paymentInstruction
string
Enum: "CarriagePaid" "CarriageForward"

Instruction as to payment for carriage (box 14).

cashOnDeliveryAmount
number

Cash on delivery amount (CMR article 6.2 (c); box 15), in currency.

currency
string <= 3 characters

ISO 4217 code of the currency of every amount of the note; mandatory when any amount is given.

declaredValue
number

Declared value of the goods (CMR articles 6.2 (d) and 24), in currency.

specialInterestValue
number

Amount representing a special interest in delivery (CMR articles 6.2 (d) and 26), in currency.

insuranceInstructions
string <= 250 characters

Instructions of the shipper regarding insurance of the goods (CMR article 6.2 (e)).

agreedTimeLimit
string <= 100 characters

Agreed time limit within which the carriage is to be carried out (CMR article 6.2 (f)).

isTranshipmentForbidden
boolean
Default: false

True when transhipment is not permitted (CMR article 6.2 (a)).

specialAgreements
string <= 500 characters

Special agreements between the shipper and the carrier (box 19).

incoterm
string <= 3 characters

Incoterms 2020 rule, three letters.

incotermPlace
string <= 100 characters

Named place of the Incoterms rule.

temperatureInstructions
string <= 100 characters

Temperature instructions for the carrier (goods under temperature control, ADR 7.1.7, and refrigerated equipment).

otherParticulars
string <= 500 characters

Other useful particulars (CMR article 6.3; box 18), such as batches or SSCC.

driverInstructions
string <= 500 characters

Operational instructions shown to the driver and not printed on the note.

object

Data of ADR of the note: the statement of ADR 5.4.1.1.1 (f), in responses, and the data that only Spain requires.

Responses

Request samples

Content type
application/json
{
  • "consignmentId": 48213,
  • "clientReference": "TMS-889201",
  • "equipmentId": 1207,
  • "sealNumbers": [
    ],
  • "predefinedConsigneeCode": "CON001",
  • "consignmentNoteType": "InternationalCmr",
  • "language": "es",
  • "issuePlace": "Valencia",
  • "issueDate": "2026-11-02",
  • "takingOver": {
    },
  • "delivery": {
    },
  • "carriers": [
    ],
  • "lines": [
    ],
  • "references": [
    ],
  • "charges": [
    ],
  • "contacts": [
    ],
  • "shipperInstructions": "Customs clearance at destination",
  • "attachedDocumentsText": "Commercial invoice, safety data sheet",
  • "paymentInstruction": "CarriagePaid",
  • "cashOnDeliveryAmount": 0,
  • "currency": "EUR",
  • "declaredValue": 12500,
  • "specialInterestValue": 0,
  • "insuranceInstructions": "Insured by the shipper",
  • "agreedTimeLimit": "48 hours",
  • "isTranshipmentForbidden": false,
  • "specialAgreements": "Delivery by appointment",
  • "incoterm": "DAP",
  • "incotermPlace": "Hamburg",
  • "temperatureInstructions": "Keep below 25 degrees Celsius",
  • "otherParticulars": "Batch 2026-117",
  • "driverInstructions": "Call the warehouse 30 minutes before arrival",
  • "adrData": {
    }
}

Response samples

Content type
application/json
{
  • "newItemId": 23,
  • "newItemIsValid": true,
  • "success": true,
  • "httpStatusCode": 201,
  • "message": "Item Created OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Search the consignment notes of the account

Returns a page of the consignment notes of the account, filtered by number, consignment, type, status, client reference, issue mode, dates and errors.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

consignmentNoteNumber
string
Example: consignmentNoteNumber=CP-2026-0118

Number of the note, exact match.

consignmentId
integer <int64>
Example: consignmentId=48213

Identifier of a consignment, to return only its notes.

consignmentNoteType
string (ConsignmentNoteType)
Enum: "InternationalCmr" "National"

International CMR or national note.

status
string (ConsignmentNoteStatus)
Enum: "Draft" "Validated" "Issued" "InProgress" "Delivered" "Cancelled" "Failed"

Status of the note.

clientReference
string
Example: clientReference=TMS-889201

Identifier of the note in the system of the client, exact match.

hasError
boolean

True to return only the notes whose last issue or synchronisation failed.

issueMode
string (ConsignmentNoteIssueMode)
Enum: "Electronic" "Paper"

Electronic note or paper.

dateFrom
string <date>
Example: dateFrom=2026-11-01

Earliest issue date, inclusive, in ISO 8601 format.

dateTo
string <date>
Example: dateTo=2026-11-30

Latest issue date, inclusive, in ISO 8601 format.

page
integer
Default: 1
Example: page=1

Page number, starting at 1.

pageSize
integer [ 1 .. 200 ]
Default: 50
Example: pageSize=50

Number of items per page, between 1 and 200.

Responses

Response samples

Content type
application/json
{
  • "consignmentNotes": [
    ],
  • "page": 1,
  • "pageSize": 50,
  • "total": 137,
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Get a consignment note

Returns the consignment note with its carriers, lines, charges, attachments and issue state.

Authorizations:
basicAuthbearerAuth
path Parameters
consignmentNoteId
required
integer <int64>
Example: 5120

Identifier of the consignment note.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "consignmentNoteResponse": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Update a consignment note

Updates the data of the note while its status is Draft, Validated or Failed; the lists (carriers, lines, references and charges) replace the current ones. The consignment of the note cannot change. After issue the data is locked: changes are recorded as events, and a substantive correction requires cancelling the note and issuing a new one. A change that leaves taking over and delivery in the same country, where national notes are not available, is rejected with an error on consignmentNoteType.

Authorizations:
basicAuthbearerAuth
path Parameters
consignmentNoteId
required
integer <int64>
Example: 5120

Identifier of the consignment note.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

consignment note data that replace the current ones

consignmentId
required
integer

Identifier of the consignment to which the note belongs; it cannot be changed, so on update it must be the consignment of the note.

clientReference
string <= 100 characters

Identifier of the note in the system of the API client (TMS or ERP); unique in the account and searchable.

equipmentId
integer

Identifier of the transport equipment (container, swap body or trailer) carried in this leg; its identification and seals are printed on the note (box 18).

sealNumbers
Array of strings

Seal numbers at loading, checked at unloading; the seals of the transport equipment or of the consignment when omitted.

predefinedConsigneeCode
string

Code of the Consignee participant (CMR article 6.1 (e); box 2). There is one note per consignment and consignee; the first consignee of the consignment when omitted.

consignmentNoteType
string
Enum: "InternationalCmr" "National"

International CMR or national note; derived from the countries of taking over and delivery when omitted.

language
string <= 2 characters

ISO 639-1 code of the main language of the printed note; the documents of the note are bilingual with the criterion of the ADR transport document: the main language and the ADR official language configured for the user (English, French or German), unless it is the same as the main language, in which case they are printed in one language only. The language configured for the account when omitted.

issuePlace
string <= 100 characters

Place where the note is made out (CMR article 6.1 (a); box 21).

issueDate
string <date>

Date on which the note is made out (CMR article 6.1 (a)), in ISO 8601 format; today when omitted.

object

Place and date of taking over of the goods (CMR article 6.1 (d); box 4); printedText is mandatory.

object

Place designated for delivery (CMR article 6.1 (d); box 3). Without a participant the address of the consignee is used; scheduledOn is the planned delivery date.

Array of objects (ConsignmentNoteCarrier)

Carriers of the note. A Contractual carrier is mandatory for CMR notes. When omitted on creation, the carriers are taken from the consignment.

Array of objects (ConsignmentNoteLine)

Goods lines. On creation, one line is generated for each dangerous goods item of the consignment for the consignee, and lines without dangerous goods may be added. On update, the list replaces the current lines.

Array of objects (ConsignmentNoteReference)

References printed on the note; taken from the references of the consignment when omitted.

Array of objects (ConsignmentNoteCharge)

Charges (CMR article 6.1 (i); box 20).

Array of objects (ConsignmentNoteContact)

Signers at loading and delivery and notification contacts, who receive the one-time PIN, the signature link and the signed copy.

shipperInstructions
string <= 500 characters

Instructions of the shipper for customs and other formalities (CMR article 6.1 (j); box 13).

attachedDocumentsText
string <= 500 characters

List of the documents handed to the carrier (CMR article 6.2 (g); box 5); the documents themselves are attachments.

paymentInstruction
string
Enum: "CarriagePaid" "CarriageForward"

Instruction as to payment for carriage (box 14).

cashOnDeliveryAmount
number

Cash on delivery amount (CMR article 6.2 (c); box 15), in currency.

currency
string <= 3 characters

ISO 4217 code of the currency of every amount of the note; mandatory when any amount is given.

declaredValue
number

Declared value of the goods (CMR articles 6.2 (d) and 24), in currency.

specialInterestValue
number

Amount representing a special interest in delivery (CMR articles 6.2 (d) and 26), in currency.

insuranceInstructions
string <= 250 characters

Instructions of the shipper regarding insurance of the goods (CMR article 6.2 (e)).

agreedTimeLimit
string <= 100 characters

Agreed time limit within which the carriage is to be carried out (CMR article 6.2 (f)).

isTranshipmentForbidden
boolean
Default: false

True when transhipment is not permitted (CMR article 6.2 (a)).

specialAgreements
string <= 500 characters

Special agreements between the shipper and the carrier (box 19).

incoterm
string <= 3 characters

Incoterms 2020 rule, three letters.

incotermPlace
string <= 100 characters

Named place of the Incoterms rule.

temperatureInstructions
string <= 100 characters

Temperature instructions for the carrier (goods under temperature control, ADR 7.1.7, and refrigerated equipment).

otherParticulars
string <= 500 characters

Other useful particulars (CMR article 6.3; box 18), such as batches or SSCC.

driverInstructions
string <= 500 characters

Operational instructions shown to the driver and not printed on the note.

object

Data of ADR of the note: the statement of ADR 5.4.1.1.1 (f), in responses, and the data that only Spain requires.

Responses

Request samples

Content type
application/json
{
  • "consignmentId": 48213,
  • "clientReference": "TMS-889201",
  • "equipmentId": 1207,
  • "sealNumbers": [
    ],
  • "predefinedConsigneeCode": "CON001",
  • "consignmentNoteType": "InternationalCmr",
  • "language": "es",
  • "issuePlace": "Valencia",
  • "issueDate": "2026-11-02",
  • "takingOver": {
    },
  • "delivery": {
    },
  • "carriers": [
    ],
  • "lines": [
    ],
  • "references": [
    ],
  • "charges": [
    ],
  • "contacts": [
    ],
  • "shipperInstructions": "Customs clearance at destination",
  • "attachedDocumentsText": "Commercial invoice, safety data sheet",
  • "paymentInstruction": "CarriagePaid",
  • "cashOnDeliveryAmount": 0,
  • "currency": "EUR",
  • "declaredValue": 12500,
  • "specialInterestValue": 0,
  • "insuranceInstructions": "Insured by the shipper",
  • "agreedTimeLimit": "48 hours",
  • "isTranshipmentForbidden": false,
  • "specialAgreements": "Delivery by appointment",
  • "incoterm": "DAP",
  • "incotermPlace": "Hamburg",
  • "temperatureInstructions": "Keep below 25 degrees Celsius",
  • "otherParticulars": "Batch 2026-117",
  • "driverInstructions": "Call the warehouse 30 minutes before arrival",
  • "adrData": {
    }
}

Response samples

Content type
application/json
{
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Delete a consignment note

Deletes a note in status Draft, Validated or Failed that has not been issued.

Authorizations:
basicAuthbearerAuth
path Parameters
consignmentNoteId
required
integer <int64>
Example: 5120

Identifier of the consignment note.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Check the eCMR Protocol coverage of a route

Returns whether the countries of taking over and delivery are both parties to the 2008 Additional Protocol to the CMR on the given date (today when omitted), with the date on which each one joined. When one of them is not a party, an international note for that route can only be issued on paper. Transit countries are not evaluated: a printed copy is recommended when the route may cross a country that is not a party.

Authorizations:
basicAuthbearerAuth
query Parameters
takingOverCountryCode
required
string
Example: takingOverCountryCode=ES

ISO 3166-1 alpha-2 code of the country of taking over.

deliveryCountryCode
required
string
Example: deliveryCountryCode=FR

ISO 3166-1 alpha-2 code of the country of delivery.

requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

date
string <date>
Example: date=2026-11-02

Issue date to evaluate, in ISO 8601 format; today when omitted.

Responses

Response samples

Content type
application/json
{
  • "consignmentNoteCoverage": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Validate a consignment note

Checks the note in one pass: parties with a complete address and ISO country, places of taking over and delivery, at least one line with packages and gross mass, the ADR description of every dangerous line, a contractual carrier with a vehicle registration, the currency when amounts are given, that national notes are available in the country of the route and, for international notes, the coverage of the eCMR Protocol on the issue date. Warnings, such as a plate without a country, are also returned. When there are no errors, the status of the note becomes Validated; nothing else is modified.

Authorizations:
basicAuthbearerAuth
path Parameters
consignmentNoteId
required
integer <int64>
Example: 5120

Identifier of the consignment note.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "newItemId": 0,
  • "newItemIsValid": true,
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Issue a consignment note

Validates the note and issues it with the attachments marked to travel with it, assigns its number and records the Issued event; nothing is issued when the validation fails, and every problem is returned at once. An international note whose route is not covered by the eCMR Protocol is issued on paper (issueMode Paper, paperReason RouteNotCovered), and so is a note that the account cannot issue electronically, because the user has no electronic consignment note licence or no electronic note service is configured for the account (paperReason ElectronicIssueNotEnabled): the application generates a printable note numbered by the application, and the delivery is recorded with the paper delivery operation. An international note issued electronically returns a warning that recommends carrying a printed copy, because the route may cross countries that are not parties to the Protocol. An issued note cannot be issued again. A cancelled note cannot be issued either: a new note of the same consignment and consignee replaces it, and its replacesConsignmentNoteId identifies the cancelled one. When the issue fails, the note becomes Failed and lastError describes the reason. requestGuid is also the idempotency key of the issue, for this note and while it remains issued: repeating the request with the same value returns the note as it is, without issuing it again, even when the body differs; another value on an issued note is rejected with 409. While the issue waits for the electronic note, a repetition with the same value is also rejected with 409 and must be retried later. Every property of the request body is optional; send an empty object to use the defaults. While the issue waits for the answer of the electronic note service, a new issue, a change, the cancellation or the deletion of the note is rejected with 409; if the note was cancelled or issued again in the meantime, the request is rejected with 409 and the note is not issued.

Authorizations:
basicAuthbearerAuth
path Parameters
consignmentNoteId
required
integer <int64>
Example: 5120

Identifier of the consignment note.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it. This operation also uses it as an idempotency key, as its description explains.

Request Body schema: application/json
required

issue parameters, or an empty object to use the defaults

signatureMethod
string <= 30 characters

Signature method: SignOnGlass, QrCode or WithoutCounterparty; the method configured for the account when omitted.

sendToDriver
boolean
Default: true

True to send the access code to the phone of the driver at issue, so that the driver can open the note; true when omitted.

object

DeCA mode in spainData.decaMode to use for a national note, instead of the one of the note; the other data of the object are ignored.

Responses

Request samples

Content type
application/json
{
  • "signatureMethod": "SignOnGlass",
  • "sendToDriver": true,
  • "adrData": {
    }
}

Response samples

Content type
application/json
{
  • "consignmentNoteResponse": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Refresh the status and events of a consignment note

Reads the current status and the new events of an issued note, records them and updates its status. Use it when the notifications of the journey have not arrived.

Authorizations:
basicAuthbearerAuth
path Parameters
consignmentNoteId
required
integer <int64>
Example: 5120

Identifier of the consignment note.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "consignmentNoteResponse": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Cancel a consignment note

Cancels the note and records the Cancelled event with the reason, when one is given; an electronic note is also cancelled where it was issued, and the reason is sent with the cancellation. For an electronic note, an Accepted event that refers to the Cancelled event with relatedEventId is recorded when the cancellation is accepted; when it is rejected, an Error event that refers to it is recorded and the note is not cancelled. Only the Accepted or Error event is notified by webhook. A cancelled note can be replaced by creating a new one for the same consignment and consignee.

Authorizations:
basicAuthbearerAuth
path Parameters
consignmentNoteId
required
integer <int64>
Example: 5120

Identifier of the consignment note.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

reason of the cancellation, or an empty object when there is none

remarks
string <= 1000 characters

Reason of the cancellation, recorded with the Cancelled event and sent with the cancellation of the electronic note.

Responses

Request samples

Content type
application/json
{
  • "remarks": "Load held at customs"
}

Response samples

Content type
application/json
{
  • "consignmentNoteResponse": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Get the events of a consignment note

Returns the events of the note, oldest first: those produced by the application, those received during the journey and the changes recorded after issue. Signatures and evidence remain in the signed PDF and in the evidence report; a photo or document added with an event is downloaded with the event document operation.

Authorizations:
basicAuthbearerAuth
path Parameters
consignmentNoteId
required
integer <int64>
Example: 5120

Identifier of the consignment note.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "consignmentNoteEvents": [
    ],
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Record a change to an issued consignment note

Only for issued notes. Updates the affected data (carrier, place of delivery or consignee) and records the change as an event. When the change is applied, an Accepted event that refers to it with relatedEventId is recorded; when it cannot be applied, an Error event that refers to it is recorded and the note is not modified. Only the Accepted or Error event is notified by webhook. Returns the updated note.

Authorizations:
basicAuthbearerAuth
path Parameters
consignmentNoteId
required
integer <int64>
Example: 5120

Identifier of the consignment note.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

change to record

changeType
required
string
Enum: "PlateChange" "DriverChange" "CarrierTransfer" "Reconsignment" "Observation"

Kind of change.

carrierSequence
integer >= 1

Sequence of the carrier affected by PlateChange, DriverChange or CarrierTransfer; the contractual carrier when omitted.

vehicleRegistration
string <= 20 characters

New registration plate of the vehicle, for PlateChange.

vehicleRegistrationCountryCode
string <= 2 characters

ISO 3166-1 alpha-2 code of the country of the new vehicle plate.

trailerRegistration
string <= 20 characters

New registration plate of the trailer, for PlateChange.

trailerRegistrationCountryCode
string <= 2 characters

ISO 3166-1 alpha-2 code of the country of the new trailer plate.

predefinedDriverCode
string

Code of the new Driver participant, for DriverChange.

driverName
string <= 100 characters

Name of the new driver when the driver is not a participant.

driverPhone
string <= 50 characters

Mobile phone of the new driver in international format.

predefinedCarrierCode
string

Code of the successive Carrier participant that takes over, for CarrierTransfer; a new carrier of type Successive is added to the note.

predefinedConsigneeCode
string

Code of the new Consignee participant, for Reconsignment.

object

New place of delivery, for Reconsignment.

remarks
string <= 1000 characters

Reason for the change or text of the observation, shown in the events of the note.

occurredOn
string <date-time>

Date and time of the change, in ISO 8601 format (UTC); the current time when omitted.

Responses

Request samples

Content type
application/json
{
  • "changeType": "PlateChange",
  • "carrierSequence": 1,
  • "vehicleRegistration": "5555 KKK",
  • "vehicleRegistrationCountryCode": "ES",
  • "trailerRegistration": "R-9999-BBC",
  • "trailerRegistrationCountryCode": "ES",
  • "predefinedDriverCode": "DRI002",
  • "driverName": "Luis Ortega",
  • "driverPhone": "+34 600 222 333",
  • "predefinedCarrierCode": "CAR002",
  • "predefinedConsigneeCode": "CON002",
  • "delivery": {
    },
  • "remarks": "Vehicle breakdown",
  • "occurredOn": "2026-11-02T10:00:00Z"
}

Response samples

Content type
application/json
{
  • "consignmentNoteResponse": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Record the delivery of a paper consignment note

Only for notes issued on paper (issueMode Paper) in status Issued or InProgress; any other note is rejected with 409. Stores the scanned signed copy as the signed document of the note when it is given, records a Delivered event with the signer and sets the status to Delivered. Returns the updated note.

Authorizations:
basicAuthbearerAuth
path Parameters
consignmentNoteId
required
integer <int64>
Example: 5120

Identifier of the consignment note.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

delivery signed on paper

deliveredOn
required
string <date-time>

Date and time of the delivery signed on paper, in ISO 8601 format (UTC); a time with an offset is accepted and converted to UTC. It cannot be earlier than the issue of the note (to the minute) nor later than the current time plus five minutes; otherwise the request is rejected with 400 naming deliveredOn.

signerName
string <= 100 characters

Name of the person who signed the delivery.

remarks
string <= 1000 characters

Reservations or remarks written on the paper note.

base64EncodedContent
string

Scanned signed copy, base 64 encoded (PDF, JPEG or PNG, maximum 6 MB once decoded); stored as the signed document of the note.

Responses

Request samples

Content type
application/json
{
  • "deliveredOn": "2026-11-02T10:00:00Z",
  • "signerName": "M. Weber",
  • "remarks": "One drum damaged",
  • "base64EncodedContent": "string"
}

Response samples

Content type
application/json
{
  • "consignmentNoteResponse": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Get the document added with a consignment note event

Returns, base 64 encoded, the document or photo added with a DocumentAdded event, such as a signed delivery note or a weight ticket. It is retrieved once and then kept with the documents of the note; the application never fetches an arbitrary address. An event without a document is rejected with 400. A user who can only read the account of the note gets the stored document, or the one retrieved for the request, which is not kept.

Authorizations:
basicAuthbearerAuth
path Parameters
consignmentNoteId
required
integer <int64>
Example: 5120

Identifier of the consignment note.

eventId
required
integer <int64>
Example: 20431

Identifier of the event of the consignment note.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "base64EncodedFile": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Share a consignment note

Sends the note to its contacts and to the additional recipients: the signed copy once it exists and the draft PDF before that. It is recorded as a Shared event with the recipients and the user. Every property of the request body is optional; send an empty object to use the defaults. At most 10 email recipients, the contacts of the note included; every additional address must be a valid email address. When the note is sent by email and some recipients cannot be reached, the request succeeds with a warning that names them and only the reached recipients are recorded; when none can be reached, it fails.

Authorizations:
basicAuthbearerAuth
path Parameters
consignmentNoteId
required
integer <int64>
Example: 5120

Identifier of the consignment note.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

recipients and message, or an empty object to send the note to its contacts

contactTypes
Array of strings (ConsignmentNoteContactType)
Items Enum: "TakingOverSigner" "DeliverySigner" "Notification"

Kinds of contacts of the note to send it to; every contact with receivesSignedCopy true when omitted.

emails
Array of strings <email> <= 10 items [ items <email > ]

Additional email addresses; every address must be valid, and at most 10 addresses receive the note by email, the contacts of the note included.

phones
Array of strings

Additional mobile phones in international format (SMS or messaging).

message
string <= 500 characters

Optional message included in the notification.

includeSignedPdf
boolean
Default: true

True to attach or link the signed PDF; false to send only the tracking link. True when omitted.

Responses

Request samples

Content type
application/json
{
  • "contactTypes": [
    ],
  • "emails": [
    ],
  • "phones": [
    ],
  • "message": "Signed copy of your delivery",
  • "includeSignedPdf": true
}

Response samples

Content type
application/json
{
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Add an attachment to a consignment note

Stores the file, or generates it for TransportDocument, and, when the note is already issued and isCarriedWithNote is true, attaches it to the electronic note. When fileName is omitted, the application generates it.

Authorizations:
basicAuthbearerAuth
path Parameters
consignmentNoteId
required
integer <int64>
Example: 5120

Identifier of the consignment note.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

attachment to add

attachmentType
required
string
Enum: "TransportDocument" "DeliveryNote" "Invoice" "Certificate" "Deca" "Other"

Kind of attachment.

fileName
string <= 200 characters

Name of the file shown to the driver and the consignee. When omitted, the application generates one.

contentType
string <= 60 characters

MIME type of the content; when given, it must match the type detected in the content.

base64EncodedContent
string

Content of the file, base 64 encoded; not needed for TransportDocument, which the application generates. Maximum 6 MB once decoded; only PDF, JPEG and PNG content is accepted, and anything else is rejected with 400.

isCarriedWithNote
boolean
Default: true

True to attach the file to the electronic note so that the driver carries it; true when omitted.

Responses

Request samples

Content type
application/json
{
  • "attachmentType": "TransportDocument",
  • "fileName": "delivery-note.pdf",
  • "contentType": "application/pdf",
  • "base64EncodedContent": "string",
  • "isCarriedWithNote": true
}

Response samples

Content type
application/json
{
  • "newItemId": 23,
  • "newItemIsValid": true,
  • "success": true,
  • "httpStatusCode": 201,
  • "message": "Item Created OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

List the attachments of a consignment note

Returns the attachments of the note without their content.

Authorizations:
basicAuthbearerAuth
path Parameters
consignmentNoteId
required
integer <int64>
Example: 5120

Identifier of the consignment note.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "consignmentNoteAttachments": [
    ],
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Delete an attachment of a consignment note

Removes the attachment from the note; when it travels with the electronic note, it is also withdrawn from it.

Authorizations:
basicAuthbearerAuth
path Parameters
consignmentNoteId
required
integer <int64>
Example: 5120

Identifier of the consignment note.

attachmentId
required
integer <int64>
Example: 771

Identifier of the attachment of the consignment note.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Get a document of a consignment note

Returns the requested document base 64 encoded. SignedPdf and EvidenceReport are stored once, the signed PDF as soon as the delivery is notified, so later requests return the same document. A user who can only read the account of the note gets the stored document when there is one, or a document generated for the request that is not stored.

Authorizations:
basicAuthbearerAuth
path Parameters
consignmentNoteId
required
integer <int64>
Example: 5120

Identifier of the consignment note.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

document to return

documentType
required
string
Enum: "DraftPdf" "SignedPdf" "Deca" "TransportDocument" "EvidenceReport"

Document to return.

language
string <= 2 characters

ISO 639-1 code of the language of the documents that the application generates (DraftPdf and TransportDocument); the language of the note when omitted.

Responses

Request samples

Content type
application/json
{
  • "documentType": "DraftPdf",
  • "language": "en"
}

Response samples

Content type
application/json
{
  • "base64EncodedFile": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Consolidation requests

Consolidation requests of client accounts, or of their adviser on their behalf, and decisions of the consolidator

Request the consolidation of a consignment

For client accounts of an external safety adviser that holds the consolidation add-on, and for that adviser on behalf of its clients: a user with consolidation can also request it, so one user can both request and decide. The consignment, given by consignmentId, must be valid, must not belong to a master consignment and must not have a pending or accepted request. A data snapshot of the consignment is taken, the request is recorded and the consolidator is notified by email and by the ConsolidationRequestCreated webhook event. Every problem is reported at once.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

consignment to consolidate, with an optional reference and remarks for the consolidator

consignmentId
required
integer

Identifier of the consignment to consolidate; it must belong to the account of the user.

clientReference
string <= 50 characters

Reference of the client, such as an order or delivery note number.

remarks
string <= 1000 characters

Remarks for the consolidator, such as the requested date or delivery instructions.

Responses

Request samples

Content type
application/json
{
  • "consignmentId": 48213,
  • "clientReference": "PO-9001",
  • "remarks": "Delivery required before 15 November"
}

Response samples

Content type
application/json
{
  • "newItemId": 23,
  • "newItemIsValid": true,
  • "success": true,
  • "httpStatusCode": 201,
  • "message": "Item Created OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Search consolidation requests

Returns a page of consolidation requests: a client account sees its own requests and a consolidator account sees the requests addressed to it.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

status
string (ConsolidationRequestStatus)
Enum: "Requested" "Accepted" "Rejected" "Withdrawn" "Completed"

Status of the request.

consignmentId
integer <int64>
Example: consignmentId=48213

Identifier of the consignment to consolidate.

masterConsignmentId
integer <int64>
Example: masterConsignmentId=97

Identifier of the master consignment into which the request was accepted.

requesterAccountCode
string
Example: requesterAccountCode=WP001

Code of the client account, for consolidator accounts.

dateFrom
string <date>
Example: dateFrom=2026-11-01

Earliest request date, inclusive, in ISO 8601 format.

dateTo
string <date>
Example: dateTo=2026-11-30

Latest request date, inclusive, in ISO 8601 format.

page
integer
Default: 1
Example: page=1

Page number, starting at 1.

pageSize
integer [ 1 .. 200 ]
Default: 50
Example: pageSize=50

Number of items per page, between 1 and 200.

Responses

Response samples

Content type
application/json
{
  • "consolidationRequests": [
    ],
  • "page": 1,
  • "pageSize": 50,
  • "total": 137,
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Get a consolidation request

Returns the request, the summary of the consignment and, once accepted, the master consignment, the nominated transport movement and its planned dates.

Authorizations:
basicAuthbearerAuth
path Parameters
consolidationRequestId
required
integer <int64>
Example: 88

Identifier of the consolidation request.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "consolidationRequestResponse": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Withdraw a consolidation request

For the client account, or for its adviser on its behalf. Withdraws a request in status Requested and notifies the consolidator; in any other status the request is rejected with 409.

Authorizations:
basicAuthbearerAuth
path Parameters
consolidationRequestId
required
integer <int64>
Example: 88

Identifier of the consolidation request.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "consolidationRequestResponse": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Accept a consolidation request

For the consolidator account. Adds the consignment to the given master consignment, or to a new one created in status Draft, with the same checks as addConsignmentsToMasterConsignment; takes the acceptance snapshot and notifies the client. Only in status Requested; otherwise the request is rejected with 409.

Authorizations:
basicAuthbearerAuth
path Parameters
consolidationRequestId
required
integer <int64>
Example: 88

Identifier of the consolidation request.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

master consignment that receives the consignment

masterConsignmentId
integer

Identifier of an existing master consignment of the consolidator account, with the same regulation and in status Draft, Submitted, InformationRequested or PreApproved.

object

Master consignment to create in status Draft for this request, when no masterConsignmentId is given.

remarks
string <= 1000 characters

Conditions of the acceptance, shown to the client.

Responses

Request samples

Content type
application/json
{
  • "masterConsignmentId": 97,
  • "newMasterConsignment": {
    },
  • "remarks": "Delivery to the terminal by 10 November"
}

Response samples

Content type
application/json
{
  • "consolidationRequestResponse": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Reject a consolidation request

For the consolidator account. The reason is mandatory and is shown to the client. Only in status Requested; otherwise the request is rejected with 409.

Authorizations:
basicAuthbearerAuth
path Parameters
consolidationRequestId
required
integer <int64>
Example: 88

Identifier of the consolidation request.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

reason for the rejection

remarks
required
string <= 1000 characters

Reason for the rejection, shown to the client.

Responses

Request samples

Content type
application/json
{
  • "remarks": "The consignment is not ready for the cut-off"
}

Response samples

Content type
application/json
{
  • "consolidationRequestResponse": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Webhooks

Webhook subscriptions of the account and their deliveries

Create a webhook subscription

Creates a webhook subscription. Returns the identifier of the subscription in newItemId and the signing secret in secret, in the Standard Webhooks format, shown only once. At most five subscriptions per account; the address must use HTTPS. The notifications posted to the address are described by the WebhookNotification schema. Only the administrators of the account manage its webhook subscriptions; any other user receives 403.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

endpoint and events to subscribe to

url
required
string <= 500 characters

HTTPS endpoint that receives the notifications; the body posted to it is described by the WebhookNotification schema.

eventTypes
Array of strings (WebhookEventType)
Items Enum: "ConsolidationRequestCreated" "ConsolidationRequestAccepted" "ConsolidationRequestRejected" "ConsolidationRequestWithdrawn" "MasterConsignmentStatusChanged" "MovementDocumentIssued" "ConsignmentNoteEventRecorded" "Ping"

Events to deliver; every event of the account when empty.

description
string <= 100 characters

Free description of the subscription.

Responses

Callbacks

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{
  • "newItemId": 23,
  • "newItemIsValid": true,
  • "secret": "string",
  • "success": true,
  • "httpStatusCode": 201,
  • "message": "Item Created OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Callback payload samples

Callback
POST: Receive a webhook notification
Content type
application/json
Example
{
  • "deliveryId": 90412,
  • "eventType": "ConsolidationRequestCreated",
  • "occurredOn": "2026-11-02T10:00:00Z",
  • "accountCode": "CO001",
  • "subjectType": "ConsolidationRequest",
  • "subjectId": 97,
  • "subjectNumber": "MC-2026-0007",
  • "data": {
    }
}

List the webhook subscriptions of the account

Returns every webhook subscription of the account with its state and the number of consecutive failed deliveries. Only the administrators of the account manage its webhook subscriptions; any other user receives 403.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "webhookSubscriptions": [
    ],
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Delete a webhook subscription

Deletes the webhook subscription; its pending deliveries are discarded. Only the administrators of the account manage its webhook subscriptions; any other user receives 403.

Authorizations:
basicAuthbearerAuth
path Parameters
webhookSubscriptionId
required
integer <int64>
Example: 3

Identifier of the webhook subscription of the account.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Test a webhook subscription

Delivers a Ping notification synchronously and reports the result: 200 when the endpoint answers with a 2xx status, and 400 with the status or the error otherwise. A successful test enables again a subscription that was disabled after failed deliveries. Only the administrators of the account manage its webhook subscriptions; any other user receives 403.

Authorizations:
basicAuthbearerAuth
path Parameters
webhookSubscriptionId
required
integer <int64>
Example: 3

Identifier of the webhook subscription of the account.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

List the recent deliveries of a webhook subscription

Returns the last 200 deliveries of the subscription, newest first, with their attempts and the last response. Only the administrators of the account manage its webhook subscriptions; any other user receives 403.

Authorizations:
basicAuthbearerAuth
path Parameters
webhookSubscriptionId
required
integer <int64>
Example: 3

Identifier of the webhook subscription of the account.

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "webhookDeliveries": [
    ],
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Authentication

OAuth2 access token issuance

Issue an OAuth2 access token

Issues an OAuth2 access token using the client_credentials grant (RFC 6749 section 4.4).

The client credentials are the same ones used for HTTP Basic: client_id is the API user name and client_secret is that user's password. They may be supplied either in the request body or in an Authorization: Basic header, as permitted by RFC 6749 section 2.3.1, but not both at the same time.

The request body must be application/x-www-form-urlencoded and must contain grant_type=client_credentials. The optional scope parameter is accepted and ignored: authority is determined by the roles and licences of the user, not by scopes.

This operation does NOT use the standard response envelope of the rest of the API: both the success body and the error body follow the flat shape defined by RFC 6749 sections 5.1 and 5.2, so that off-the-shelf OAuth2 clients can consume them.

The token is valid for one hour. Clients should cache it and reuse it until shortly before it expires; requesting one token per call would be slower than plain Basic. A password change invalidates every outstanding token of that user. There is no individual token revocation and no refresh token, which RFC 6749 section 4.4.3 explicitly discourages for this grant.

Request Body schema: application/x-www-form-urlencoded
required

Token request, form-urlencoded as required by RFC 6749 section 3.2.

grant_type
required
string

Must be client_credentials.

client_id
string

API user name. Omit when the credentials travel in the Authorization header.

client_secret
string

Password of that API user. Omit when the credentials travel in the Authorization header.

scope
string

Optional. The authority granted to the token is determined by the roles and licences of the user.

Responses

Response samples

Content type
application/json
{
  • "access_token": "string",
  • "token_type": "bearer",
  • "expires_in": 3599
}

Master Data

Get Master Data for OnTheFly Shipments, Participants and Consolidation

Get Simple Dangerous Goods list

Returns the simplified master data list of dangerous goods: identifier, UN number, name, packing group, classification code, labels and the regulatory status of the entry under ADR, IMDG and IATA. When the authenticated user does not hold the ApiUserFullMasterData role, the response is limited to a sample of the catalogue, the entries whose UN number ends in 4. For the complete row of each entry in the dangerous goods list of every regulation, use the detailedDangerousGood resource. The list can be narrowed by UN number, by a text of the name and by class, and paged with page and pageSize; the paging data is returned only when a page is requested.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

unNumber
string

Optional filter by identification number. Accepts one to four digits, with an optional UN, ID or NA prefix (1203, UN1203, ID8000), and is completed with leading zeros (6 is read as 0006). NA numbers (49 CFR) are not in the catalogue yet, so a filter with the NA prefix returns no entries. When it is omitted, the whole accessible catalogue is returned.

search
string

Optional text searched in the name of the dangerous good, without distinguishing upper and lower case or accents. At most 100 characters.

class
string

Optional filter by class or division, with the code published in the list, such as 3, 4.1 or 6.1. An unknown code is rejected with 400.

page
integer <int32> >= 1

Optional page number, starting at 1. Without page and pageSize the whole list is returned; when only pageSize is sent, the first page is returned.

pageSize
integer <int32> [ 1 .. 200 ]

Optional number of items per page, between 1 and 200. When only page is sent, pages of 50 items are returned.

Responses

Response samples

Content type
application/json
{
  • "simpleDangerousGoods": [
    ],
  • "page": 1,
  • "pageSize": 50,
  • "total": 137,
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Get Detailed Dangerous Goods list

Returns the detailed dangerous goods list: for each entry of the catalogue, its row in the dangerous goods list of every regulation for which the authenticated user holds the corresponding role: Table A of Chapter 3.2 of ADR, the Dangerous Goods List of Chapter 3.2 of the IMDG Code, and the List of Dangerous Goods of Section 4.2 of the IATA Dangerous Goods Regulations. Each regulation block is included only when the user holds its role (ApiUserDangerousGoodsADR, ApiUserDangerousGoodsIMDG or ApiUserDangerousGoodsIATA). When the user holds none of the four dangerous goods roles, the response is limited to a sample of the catalogue, the entries whose UN number ends in 4, and that sample does carry the three regulation blocks: what the roles grant is the whole catalogue, not the detail. Packing instructions are reported by name only; their details are not included. For the simplified list, with identification and regulatory status only, use the simpleDangerousGood resource. The catalogue is the same one served by simpleDangerousGood and by the application: entries excluded for the road regulation configured for the user are not returned. The four dangerous goods roles only decide which regulation blocks travel; without any of them the response is the sample of UN numbers ending in 4, with the three blocks. Quantities travel separated from their unit: limitedQuantity, exceptedQuantity and transportCategory are objects with the code of the table, the numeric quantity and its measure unit. The response carries an ETag header (weak validator): send it back in If-None-Match and the service answers 304 Not Modified without body while the published content of the catalogue, the application version, the language, the roles and the filters are unchanged, so the client keeps its copy; the same value is returned, without the list, by getDetailedDangerousGoodVersion; the response is private (Cache-Control: private, no-cache) and must be revalidated before reuse. The list can be narrowed by UN number, by a text of the name and by class, and paged with page and pageSize; the paging data is returned only when a page is requested.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

unNumber
string

Optional filter by identification number. Accepts one to four digits, with an optional UN, ID or NA prefix (1203, UN1203, ID8000), and is completed with leading zeros (6 is read as 0006). NA numbers (49 CFR) are not in the catalogue yet, so a filter with the NA prefix returns no entries. When it is omitted, the whole accessible catalogue is returned.

search
string

Optional text searched in the name of the dangerous good, without distinguishing upper and lower case or accents. At most 100 characters.

class
string

Optional filter by class or division, with the code published in the list, such as 3, 4.1 or 6.1. An unknown code is rejected with 400.

page
integer <int32> >= 1

Optional page number, starting at 1. Without page and pageSize the whole list is returned; when only pageSize is sent, the first page is returned.

pageSize
integer <int32> [ 1 .. 200 ]

Optional number of items per page, between 1 and 200. When only page is sent, pages of 50 items are returned.

Responses

Response samples

Content type
application/json
{
  • "detailedDangerousGoods": [
    ],
  • "page": 1,
  • "pageSize": 50,
  • "total": 137,
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Get the version of the dangerous goods catalogue

Returns the version of the detailed dangerous goods list for the given filters, without the list: the same value as the ETag header that getDetailedDangerousGoods returns with the same filters and language. It only changes when the published content of the catalogue, the application version, the language, the roles or the filters change, so a client can compare it with the version of its copy and download the list again only when it differs. The value is also returned in the ETag header. Invalid filters are rejected with 400, as in the list.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

unNumber
string

Optional filter by identification number. Accepts one to four digits, with an optional UN, ID or NA prefix (1203, UN1203, ID8000), and is completed with leading zeros (6 is read as 0006). NA numbers (49 CFR) are not in the catalogue yet, so a filter with the NA prefix returns no entries. When it is omitted, the whole accessible catalogue is returned.

search
string

Optional text searched in the name of the dangerous good, without distinguishing upper and lower case or accents. At most 100 characters.

class
string

Optional filter by class or division, with the code published in the list, such as 3, 4.1 or 6.1. An unknown code is rejected with 400.

page
integer <int32> >= 1

Optional page number, starting at 1. Without page and pageSize the whole list is returned; when only pageSize is sent, the first page is returned.

pageSize
integer <int32> [ 1 .. 200 ]

Optional number of items per page, between 1 and 200. When only page is sent, pages of 50 items are returned.

Responses

Response samples

Content type
application/json
{
  • "detailedDangerousGoodVersionResponse": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Get Packages list

Returns the master data list of available outer package types.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "packages": [
    ],
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Get Package Homologations list

Returns the master data list of UN homologation codes for outer packages.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "packageHomologations": [
    ],
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Get Inner Package Materials list

Returns the master data list of materials available for inner packages.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "innerPackageMaterials": [
    ],
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Get Packing Instructions list

Returns the master data list of IATA packing instructions.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "packingInstructions": [
    ],
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Get IMDG Segregation Groups list

Returns the master data list of IMDG segregation groups.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "imdgSegregationGroups": [
    ],
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Get Countries list

Returns the master data list of countries used for participants and addresses.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "countries": [
    ],
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Get Radionuclides list

Returns the master data list of radionuclides available for Class 7 (radioactive material) products and consignments.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "radionuclides": [
    ],
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Search ports, airports and terminals

Returns a page of the ports, airports and terminals of the UN/LOCODE catalogue and of the locations of the account given in accountCode (by default, the account of the user), of its company and of its group.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

search
string
Example: search=ESV

Beginning of the code or of the name of the location.

countryCode
string <= 2 characters
Example: countryCode=ES

ISO 3166-1 alpha-2 code of the country, to return only its locations.

isPort
boolean

True to return only sea ports.

isAirport
boolean

True to return only airports.

accountListOnly
boolean

True to return only the locations among the locations of those accounts.

accountCode
string
Example: accountCode=WP001

Code of a customer account the user can read: the search covers the lists of that account, of its company and of its group. Without it, the account of the user.

page
integer
Default: 1
Example: page=1

Page number, starting at 1.

pageSize
integer [ 1 .. 200 ]
Default: 50
Example: pageSize=50

Number of items per page, between 1 and 200.

Responses

Response samples

Content type
application/json
{
  • "locations": [
    ],
  • "page": 1,
  • "pageSize": 50,
  • "total": 137,
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Get the ISO 6346 container size and type codes

Returns the ISO 6346 container size and type codes, common to every account.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Responses

Response samples

Content type
application/json
{
  • "isoContainerTypes": [
    ],
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Get the IMDG stowage categories

Returns the stowage categories of the IMDG Code: A to E for packaged goods and 01 to 05 for goods of class 1. Each entry gives its regulation; a regulation other than Imdg is rejected with 400.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

regulation
string (DangerousGoodsRegulation)
Enum: "Adr" "Imdg" "Iata" "Cfr49"

Regulation of the stowage data. Optional; Imdg when omitted, the only regulation with these data today. Any other value is rejected with 400.

Responses

Response samples

Content type
application/json
{
  • "stowageCategories": [
    ],
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Get the IMDG stowage, handling and segregation codes

Returns the stowage (SW), handling (H) and segregation (SG) codes of the IMDG Code, with their texts in the language of the API user, or in English when no translation exists. Each entry gives its regulation; a regulation other than Imdg is rejected with 400.

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

regulation
string (DangerousGoodsRegulation)
Enum: "Adr" "Imdg" "Iata" "Cfr49"

Regulation of the stowage data. Optional; Imdg when omitted, the only regulation with these data today. Any other value is rejected with 400.

Responses

Response samples

Content type
application/json
{
  • "stowageCodes": [
    ],
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Support

API testing

Checks if API is Alive

Returns a message and the UTC Time

Responses

Response samples

Content type
application/json
"DGAssistant Software Service Is Alive!. UTC Time: 24/07/2026 9:25:59. Version: v18.09.05. Location: EMEA"

Checks login of user/password

Checks login of user/password and shows the granted roles

Authorizations:
basicAuthbearerAuth

Responses

Response samples

Content type
application/json
"Login OK at UTC Time: 2026-03-06 10:30:00. Roles: ApiUser"

Checks simple post operation without authorization

Return two values doubled

query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

values to be doubled

a
required
integer

First integer to be doubled.

b
required
integer

Second integer to be doubled.

Responses

Request samples

Content type
application/json
{
  • "a": 1,
  • "b": 2
}

Response samples

Content type
application/json
{
  • "twoIntegers": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}

Checks simple post operation with authorization

Return two values doubled

Authorizations:
basicAuthbearerAuth
query Parameters
requestGuid
required
string

Identifier of the request, up to 36 characters, used to trace it.

Request Body schema: application/json
required

values to be doubled

a
required
integer

First integer to be doubled.

b
required
integer

Second integer to be doubled.

Responses

Request samples

Content type
application/json
{
  • "a": 1,
  • "b": 2
}

Response samples

Content type
application/json
{
  • "twoIntegers": {
    },
  • "success": true,
  • "httpStatusCode": 200,
  • "message": "Operation Completed OK",
  • "messageType": "Information",
  • "requestGuid": "F8AEC2D1-9515-4013-AA46-10405EB688A2",
  • "warnings": [
    ]
}