Manage equipment master data
User interface
The eECD application allows users with an eECD admin role of an EquipmentOperator to manually add and manage Equipment data (see tutorial movie) and/or use a standard CSV template to manage the equipment master data. Typically, the requested equipment master data are related to a specific Use Case; For the eECD Use Case where a cleaning process is performed, the equipment master data refer to equipment ID, equipment type, license plate, internal equipment code, nr of compartments , volume per compartment, nr of baffles.
A tankcontainer is uniquely defined by its tankcontainer ID number and EquipmentOperator. A dry bulk or liquid bulk trailer is typically defined by the licence plate in combination with the internal equipment code.
Integrated master data management
Next to the option to upload and maintain equipment master data via the eECD application menu and CSV upload process, the Equipment Operators can also use a set of API calls to further integrate and automate the equipment master data with their own ERP or transport management systems used for their daily operations.
Create new equipment
POST {eecdapi}/equipment
Usage
Allows an equipment operator to create new equipments.
Information
All equipment data fields are described https://nxtport.atlassian.net/wiki/spaces/ESUP/pages/1681719433
Allowed values
Allowed values for equipmentType:
Tankcontainer
Tanktrailer
IBC
Railtank
Validation
The Id is automatically generated by the system.
The last change to the equipment record is being retained and old values linked to the unique equipment ID are overwritten. Such change applies immediately to the open eECD data records. historical and completed/frozen eECD's , do not change when updating the master data.
In case the field type format does not fit or input values are different compared to the allowed values in the drill down menu, such data filed record cannot be updated.
OperatorID need to be a registered companies with the role "Equipment operator". Please refer to "Identify company" to retrieve the relevant OperatorID
Body (JSON object)
Create Equipment
{
"operatorId": "Guid",
"equipmentType": "TANKCONTAINER",
"subGroup": "string",
"numberOfManholes": 0,
"numberOfCompartments": 0,
"compartments": [
{
"key": "string",
"volume": 0,
"baffles": 0
}
],
"isSubContracted": true,
"subContractor": "string",
"licensePlate": "string",
"internalEquipmentCode": "string",
"containerId": "string",
"isIso6346Compliant": true,
"productType": "string",
"licensePlateCountry": "string",
"tareWeight": 0,
"netWeight": 0,
"maxWeight": 0,
"tankTypeAdr": "string",
"minPressureAdr": "string",
"openingsAdr": "string",
"valvesAdr": "string",
"lastInspectionAdr": "2021-05-12T08:45:27.765Z",
"lastPressureTestAdr": "2021-05-12T08:45:27.765Z",
"te": "string",
"tc": "string",
"fl": "2021-05-12T08:45:27.765Z",
"at": "2021-05-12T08:45:27.765Z",
"tankInstructionUn": "string",
"lastInspectionUn": "2021-05-12T08:45:27.765Z",
"nextExaminationCsc": "2021-05-12T08:45:27.765Z",
"lastInspectionCsc": "2021-05-12T08:45:27.766Z",
"mainInspection": "2021-05-12T08:45:27.766Z",
"validitySp": "2021-05-12T08:45:27.766Z"
}
Response (expand to open)
Create Equipment response
{
"id": "Guid",
"operatorId": "Guid",
"equipmentType": "TANKCONTAINER",
"subGroup": "string",
"numberOfManholes": 0,
"numberOfCompartments": 0,
"compartments": [
{
"key": "string",
"volume": 0,
"baffles": 0
}
],
"isSubContracted": true,
"subContractor": "string",
"licensePlate": "string",
"internalEquipmentCode": "string",
"containerId": "string",
"isIso6346Compliant": true,
"productType": "string",
"licensePlateCountry": "string",
"tareWeight": 0,
"netWeight": 0,
"maxWeight": 0,
"tankTypeAdr": "string",
"minPressureAdr": "string",
"openingsAdr": "string",
"valvesAdr": "string",
"lastInspectionAdr": "2021-05-12T08:47:02.927Z",
"lastPressureTestAdr": "2021-05-12T08:47:02.927Z",
"te": "string",
"tc": "string",
"fl": "2021-05-12T08:47:02.927Z",
"at": "2021-05-12T08:47:02.927Z",
"tankInstructionUn": "string",
"lastInspectionUn": "2021-05-12T08:47:02.927Z",
"nextExaminationCsc": "2021-05-12T08:47:02.927Z",
"lastInspectionCsc": "2021-05-12T08:47:02.927Z",
"mainInspection": "2021-05-12T08:47:02.927Z",
"validitySp": "2021-05-12T08:47:02.927Z",
"cleanliness": {
"state": "CompletelyClean",
"compartments": {
"additionalProp1": {
"cleanliness": "Clean",
"polymerCompleteness": "PolymerComplete"
},
"additionalProp2": {
"cleanliness": "Clean",
"polymerCompleteness": "PolymerComplete"
},
"additionalProp3": {
"cleanliness": "Clean",
"polymerCompleteness": "PolymerComplete"
}
}
},
"lastUpdatedOn": "2021-05-12T08:47:02.927Z"
}
Search equipments
GET {eecdapi}/equipment/paged
Usage
Returns a (paged) list of equipments that satisfies the search conditions
Query string parameters
operatorId: the ID of the operator for which you wish to retrieve the equipments (mandatory)
search: Searches for license plates and container IDs. Needs to be at least 2 characters long (mandatory)
Page: The page index that needs to be returned. Optional; defaults to 1.
Pagesize: The size of each page that gets returned. Optional; defaults to 20.
Response (expand to open)
Search Equipment from equipment operator
{
"hitCountTotal": 0,
"hitCountPage": 0,
"pageCurrent": 0,
"pageSize": 0,
"pageTotal": 0,
"hasMorePages": true,
"comment": "string",
"results": [
{
"id": "Guid",
"operatorId": "Guid",
"equipmentType": "TANKCONTAINER",
"subGroup": "string",
"numberOfManholes": 0,
"numberOfCompartments": 0,
"compartments": [
{
"key": "string",
"volume": 0,
"baffles": 0
}
],
"isSubContracted": true,
"subContractor": "string",
"licensePlate": "string",
"internalEquipmentCode": "string",
"containerId": "string",
"isIso6346Compliant": true,
"productType": "string",
"licensePlateCountry": "string",
"tareWeight": 0,
"netWeight": 0,
"maxWeight": 0,
"tankTypeAdr": "string",
"minPressureAdr": "string",
"openingsAdr": "string",
"valvesAdr": "string",
"lastInspectionAdr": "2021-05-12T08:47:48.865Z",
"lastPressureTestAdr": "2021-05-12T08:47:48.865Z",
"te": "string",
"tc": "string",
"fl": "2021-05-12T08:47:48.865Z",
"at": "2021-05-12T08:47:48.865Z",
"tankInstructionUn": "string",
"lastInspectionUn": "2021-05-12T08:47:48.865Z",
"nextExaminationCsc": "2021-05-12T08:47:48.865Z",
"lastInspectionCsc": "2021-05-12T08:47:48.865Z",
"mainInspection": "2021-05-12T08:47:48.865Z",
"validitySp": "2021-05-12T08:47:48.865Z",
"cleanliness": {
"state": "CompletelyClean",
"compartments": {
"additionalProp1": {
"cleanliness": "Clean",
"polymerCompleteness": "PolymerComplete"
},
"additionalProp2": {
"cleanliness": "Clean",
"polymerCompleteness": "PolymerComplete"
},
"additionalProp3": {
"cleanliness": "Clean",
"polymerCompleteness": "PolymerComplete"
}
}
},
"lastUpdatedOn": "2021-05-12T08:47:48.865Z"
}
]
}
Get an equipment
GET {eecdapi}/equipment/{id}
Usage
Gets a piece of equipment. It is possible to also include the cleanliness state per compartment, giving an overview of the compartments and whether or not they're clean.
Query string parameters
includeCleanliness: boolean (?includecleanliness=true). Whether or not to include the cleanliness state. Optional; defaults to false.
Response (expand to open)
Get equipment details
{
"id": "Guid",
"operatorId": "Guid",
"equipmentType": "TANKCONTAINER",
"subGroup": "string",
"numberOfManholes": 0,
"numberOfCompartments": 0,
"compartments": [
{
"key": "string",
"volume": 0,
"baffles": 0
}
],
"isSubContracted": true,
"subContractor": "string",
"licensePlate": "string",
"internalEquipmentCode": "string",
"containerId": "string",
"isIso6346Compliant": true,
"productType": "string",
"licensePlateCountry": "string",
"tareWeight": 0,
"netWeight": 0,
"maxWeight": 0,
"tankTypeAdr": "string",
"minPressureAdr": "string",
"openingsAdr": "string",
"valvesAdr": "string",
"lastInspectionAdr": "2021-05-12T08:48:20.456Z",
"lastPressureTestAdr": "2021-05-12T08:48:20.456Z",
"te": "string",
"tc": "string",
"fl": "2021-05-12T08:48:20.456Z",
"at": "2021-05-12T08:48:20.456Z",
"tankInstructionUn": "string",
"lastInspectionUn": "2021-05-12T08:48:20.456Z",
"nextExaminationCsc": "2021-05-12T08:48:20.456Z",
"lastInspectionCsc": "2021-05-12T08:48:20.456Z",
"mainInspection": "2021-05-12T08:48:20.456Z",
"validitySp": "2021-05-12T08:48:20.456Z",
"cleanliness": {
"state": "CompletelyClean",
"compartments": {
"additionalProp1": {
"cleanliness": "Clean",
"polymerCompleteness": "PolymerComplete"
},
"additionalProp2": {
"cleanliness": "Clean",
"polymerCompleteness": "PolymerComplete"
},
"additionalProp3": {
"cleanliness": "Clean",
"polymerCompleteness": "PolymerComplete"
}
}
},
"lastUpdatedOn": "2021-05-12T08:48:20.456Z"
}
Update equipment
PUT {eecdapi}/equipment/{id}
Usage
Updates an equipment
Information
As with creating an equipment, the updated equipment has to have a unique license plate or container ID within the organisation
The ID of the equipment is a required parameter. If necessary, it can be retrieved by searching the equipment based on the license plate or container number
Body (JSON object)
Update equipment
{
"equipmentType": "TANKCONTAINER",
"subGroup": "string",
"numberOfManholes": 0,
"numberOfCompartments": 0,
"compartments": [
{
"key": "string",
"volume": 0,
"baffles": 0
}
],
"isSubContracted": true,
"subContractor": "string",
"licensePlate": "string",
"containerId": "string",
"isIso6346Compliant": true,
"internalEquipmentCode": "string",
"productType": "string",
"licensePlateCountry": "string",
"tareWeight": 0,
"netWeight": 0,
"maxWeight": 0,
"tankTypeAdr": "string",
"minPressureAdr": "string",
"openingsAdr": "string",
"valvesAdr": "string",
"lastInspectionAdr": "2021-05-12T08:49:09.765Z",
"lastPressureTestAdr": "2021-05-12T08:49:09.765Z",
"te": "string",
"tc": "string",
"fl": "2021-05-12T08:49:09.765Z",
"at": "2021-05-12T08:49:09.765Z",
"tankInstructionUn": "string",
"lastInspectionUn": "2021-05-12T08:49:09.765Z",
"nextExaminationCsc": "2021-05-12T08:49:09.765Z",
"lastInspectionCsc": "2021-05-12T08:49:09.765Z",
"mainInspection": "2021-05-12T08:49:09.765Z",
"validitySp": "2021-05-12T08:49:09.765Z"
}
Response (expand to open)
Update equipment
{
"id": "Guid",
"operatorId": "Guid",
"equipmentType": "TANKCONTAINER",
"subGroup": "string",
"numberOfManholes": 0,
"numberOfCompartments": 0,
"compartments": [
{
"key": "string",
"volume": 0,
"baffles": 0
}
],
"isSubContracted": true,
"subContractor": "string",
"licensePlate": "string",
"internalEquipmentCode": "string",
"containerId": "string",
"isIso6346Compliant": true,
"productType": "string",
"licensePlateCountry": "string",
"tareWeight": 0,
"netWeight": 0,
"maxWeight": 0,
"tankTypeAdr": "string",
"minPressureAdr": "string",
"openingsAdr": "string",
"valvesAdr": "string",
"lastInspectionAdr": "2021-05-12T08:49:02.157Z",
"lastPressureTestAdr": "2021-05-12T08:49:02.157Z",
"te": "string",
"tc": "string",
"fl": "2021-05-12T08:49:02.157Z",
"at": "2021-05-12T08:49:02.157Z",
"tankInstructionUn": "string",
"lastInspectionUn": "2021-05-12T08:49:02.157Z",
"nextExaminationCsc": "2021-05-12T08:49:02.157Z",
"lastInspectionCsc": "2021-05-12T08:49:02.157Z",
"mainInspection": "2021-05-12T08:49:02.157Z",
"validitySp": "2021-05-12T08:49:02.157Z",
"cleanliness": {
"state": "CompletelyClean",
"compartments": {
"additionalProp1": {
"cleanliness": "Clean",
"polymerCompleteness": "PolymerComplete"
},
"additionalProp2": {
"cleanliness": "Clean",
"polymerCompleteness": "PolymerComplete"
},
"additionalProp3": {
"cleanliness": "Clean",
"polymerCompleteness": "PolymerComplete"
}
}
},
"lastUpdatedOn": "2021-05-12T08:49:02.157Z"
}
Delete equipment
DELETE {eecdapi}/equipment/{id}
Usage
Deletes an equipment
Response
204 success
Identify company
GET {eecdapi}/organisations/{type}/{code}
Usage
Identify the owner of the equipment.
Information
Gets an organization by either its DUNS, VAT or EORI code
Query string parameters
type: Either VAT, DUNS or EORI
code: The value of either the VAT number, DUNS code or EORI code
Response
Get organization
{
"id": "Guid",
"organisationName": "string",
"addressLines": {
"Street and number": "string",
"City": "string",
"PostalCode": "string"
},
"phone": "string",
"fax": "string",
"webSite": "string",
"duns": "string",
"vat": "string",
"eori": "string",
"roles": [
{
"id": "Guid",
"name": "string"
}
]
}