DSV

DSV WMS Inbound Notification API

Creates and updates inbound (pre-advice) orders for DSV Contract Logistics warehouses, with GS1 SSCC pallet/carton codes and container numbers on the line items.

OpenAPI Specification

dsv-warehousing-preadvice-demo-v1-openapi.json Raw ↑
{
  "openapi": "3.0.1",
  "info": {
    "title": "WMS Inbound Notification (DEMO)",
    "description": "Contract Logistics API - WMS Inbound Notification",
    "version": "v1"
  },
  "servers": [
    {
      "url": "https://api.dsv.com/cl-demo/inbound/v1"
    }
  ],
  "paths": {
    "/inboundNotification": {
      "post": {
        "tags": [
          "Inbound"
        ],
        "summary": "Create Inbound Notification(s)",
        "description": "Create Inbound Notification Order(s)",
        "operationId": "Inbound_Post",
        "parameters": [
          {
            "name": "api-version",
            "in": "header",
            "description": "api-version",
            "schema": {
              "type": "string"
            },
            "example": 1
          },
          {
            "name": "Authorization",
            "in": "header",
            "description": "OAuth header",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The request data containing list of InboundNotification.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/InboundNotificationDto"
              },
              "example": {
                "inboundNotifications": [
                  {
                    "warehouseId": "wid1234567",
                    "inboundId": "iid123456",
                    "inboundType": "NORMAL",
                    "expectedArrivalDate": "2025-03-25T12:30:00.0000000+00:00",
                    "incoterms": {
                      "code": "EXW",
                      "location": "Denmark"
                    },
                    "transportDetails": {
                      "carrierName": "FedEx",
                      "carrierReference": "#123456",
                      "modeOfTransport": "Road",
                      "containerType": "20FT",
                      "containerNumber": "#123456"
                    },
                    "supplier": {
                      "reference": "ABC",
                      "address": {
                        "partyId": "PId123456",
                        "companyName": "DSV",
                        "addressLine1": "AddressLine1",
                        "addressLine2": "AddressLine2",
                        "city": "Copenhagen",
                        "state": "Capital Region of Denmark",
                        "zipCode": "1000",
                        "countryCode": "AF",
                        "vatNumber": "#123456",
                        "contactName": "Test",
                        "contactPhone": "+1123456789",
                        "contactEmail": "test@gmail.com",
                        "contactMobile": "+1123456789"
                      }
                    },
                    "additionalInformations": {
                      "numericFields": [
                        {
                          "sequence": 1,
                          "value": 999999999.999999
                        }
                      ],
                      "textFields": [
                        {
                          "sequence": 1,
                          "value": "Value1"
                        }
                      ]
                    },
                    "inboundNotes": [
                      {
                        "code": "#123456",
                        "text": "This is Test"
                      }
                    ],
                    "lineDetails": [
                      {
                        "lineId": 1,
                        "productId": "PId123456",
                        "quantity": 1,
                        "sscc": "123456789012345678",
                        "conditionOfProduct": "OK1",
                        "origin": "AF",
                        "expirationDate": "2025-03-25",
                        "lotId": "LId123456789",
                        "productValue": {
                          "valueOfProduct": 999,
                          "currency": "AED"
                        },
                        "additionalInformations": {
                          "numericFields": [
                            {
                              "sequence": 1,
                              "value": 999999999.999999
                            }
                          ],
                          "textFields": [
                            {
                              "sequence": 1,
                              "value": "Value1"
                            }
                          ]
                        },
                        "inboundNotes": [
                          {
                            "code": "#123456",
                            "text": "This is Test"
                          }
                        ],
                        "serialNumbers": [
                          "SN1234567890",
                          "SN1234567891"
                        ]
                      }
                    ]
                  }
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success"
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDTO"
                },
                "example": {
                  "code": "ERR12345",
                  "message": "Not found id : 4025988810785188",
                  "fields": [
                    {
                      "name": "field_name",
                      "message": "validation error",
                      "code": "ERR12345"
                    }
                  ],
                  "development": {
                    "message": "string",
                    "exception": "string"
                  }
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDTO"
                },
                "example": {
                  "code": "ERR12345",
                  "message": "Not found id : 4025988810785188",
                  "fields": [
                    {
                      "name": "field_name",
                      "message": "validation error",
                      "code": "ERR12345"
                    }
                  ],
                  "development": {
                    "message": "string",
                    "exception": "string"
                  }
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDTO"
                },
                "example": {
                  "code": "ERR12345",
                  "message": "Not found id : 4025988810785188",
                  "fields": [
                    {
                      "name": "field_name",
                      "message": "validation error",
                      "code": "ERR12345"
                    }
                  ],
                  "development": {
                    "message": "string",
                    "exception": "string"
                  }
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Inbound"
        ],
        "summary": "Update Inbound Notification(s)",
        "description": "Update the data of the PreAdvice to be delivered to the DSV warehouse.",
        "operationId": "Inbound_Put",
        "parameters": [
          {
            "name": "api-version",
            "in": "header",
            "description": "api-version",
            "schema": {
              "type": "string"
            },
            "example": 1
          },
          {
            "name": "Authorization",
            "in": "header",
            "description": "OAuth header",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The request data containing list of InboundNotification.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/InboundNotificationDto"
              },
              "example": {
                "inboundNotifications": [
                  {
                    "warehouseId": "wid1234567",
                    "inboundId": "iid123456",
                    "inboundType": "NORMAL",
                    "expectedArrivalDate": "2025-03-25T12:30:00.0000000+00:00",
                    "incoterms": {
                      "code": "EXW",
                      "location": "Denmark"
                    },
                    "transportDetails": {
                      "carrierName": "FedEx",
                      "carrierReference": "#123456",
                      "modeOfTransport": "Road",
                      "containerType": "20FT",
                      "containerNumber": "#123456"
                    },
                    "supplier": {
                      "reference": "ABC",
                      "address": {
                        "partyId": "PId123456",
                        "companyName": "DSV",
                        "addressLine1": "AddressLine1",
                        "addressLine2": "AddressLine2",
                        "city": "Copenhagen",
                        "state": "Capital Region of Denmark",
                        "zipCode": "1000",
                        "countryCode": "AF",
                        "vatNumber": "#123456",
                        "contactName": "Test",
                        "contactPhone": "+1123456789",
                        "contactEmail": "test@gmail.com",
                        "contactMobile": "+1123456789"
                      }
                    },
                    "additionalInformations": {
                      "numericFields": [
                        {
                          "sequence": 1,
                          "value": 999999999.999999
                        }
                      ],
                      "textFields": [
                        {
                          "sequence": 1,
                          "value": "Value1"
                        }
                      ]
                    },
                    "inboundNotes": [
                      {
                        "code": "#123456",
                        "text": "This is Test"
                      }
                    ],
                    "lineDetails": [
                      {
                        "lineId": 1,
                        "productId": "PId123456",
                        "quantity": 1,
                        "sscc": "123456789012345678",
                        "conditionOfProduct": "OK1",
                        "origin": "AF",
                        "expirationDate": "2025-03-25",
                        "lotId": "LId123456789",
                        "productValue": {
                          "valueOfProduct": 999,
                          "currency": "AED"
                        },
                        "additionalInformations": {
                          "numericFields": [
                            {
                              "sequence": 1,
                              "value": 999999999.999999
                            }
                          ],
                          "textFields": [
                            {
                              "sequence": 1,
                              "value": "Value1"
                            }
                          ]
                        },
                        "inboundNotes": [
                          {
                            "code": "#123456",
                            "text": "This is Test"
                          }
                        ],
                        "serialNumbers": [
                          "SN1234567890",
                          "SN1234567891"
                        ]
                      }
                    ]
                  }
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Returns a success message with the received data."
          },
          "400": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDTO"
                },
                "example": {
                  "code": "ERR12345",
                  "message": "Not found id : 4025988810785188",
                  "fields": [
                    {
                      "name": "field_name",
                      "message": "validation error",
                      "code": "ERR12345"
                    }
                  ],
                  "development": {
                    "message": "string",
                    "exception": "string"
                  }
                }
              }
            }
          },
          "401": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDTO"
                },
                "example": {
                  "code": "ERR12345",
                  "message": "Not found id : 4025988810785188",
                  "fields": [
                    {
                      "name": "field_name",
                      "message": "validation error",
                      "code": "ERR12345"
                    }
                  ],
                  "development": {
                    "message": "string",
                    "exception": "string"
                  }
                }
              }
            }
          },
          "500": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorDTO"
                },
                "example": {
                  "code": "ERR12345",
                  "message": "Not found id : 4025988810785188",
                  "fields": [
                    {
                      "name": "field_name",
                      "message": "validation error",
                      "code": "ERR12345"
                    }
                  ],
                  "development": {
                    "message": "string",
                    "exception": "string"
                  }
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "ErrorDTO": {
        "required": [
          "code",
          "message"
        ],
        "type": "object",
        "properties": {
          "code": {
            "minLength": 1,
            "type": "string",
            "description": "Unique error code",
            "example": "ERR12345"
          },
          "message": {
            "minLength": 1,
            "type": "string",
            "description": "Error message passed to the user",
            "example": "Not found id : 4025988810785188"
          },
          "fields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/FieldDTO"
            }
          },
          "development": {
            "$ref": "#/components/schemas/DevelopmentDTO"
          }
        }
      },
      "FieldDTO": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Error name",
            "example": "field_name"
          },
          "message": {
            "type": "string",
            "description": "Description of error",
            "example": "validation error"
          },
          "code": {
            "type": "string",
            "description": "Type of error",
            "example": "ERR12345"
          }
        }
      },
      "DevelopmentDTO": {
        "type": "object",
        "properties": {
          "message": {
            "type": "string",
            "description": "Verbose, plain language description of the problem for the app developer with hints on how to fix it"
          },
          "exception": {
            "type": "string",
            "description": "Dump from exception"
          }
        }
      },
      "InboundNotificationDto": {
        "type": "object",
        "properties": {
          "inboundNotifications": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/InboundNotificationItemDto"
            },
            "description": "Array of inbound notifications."
          }
        },
        "description": "InboundNotificationDto"
      },
      "InboundNotificationItemDto": {
        "required": [
          "warehouseId",
          "inboundId",
          "inboundType",
          "lineDetails"
        ],
        "type": "object",
        "properties": {
          "warehouseId": {
            "maxLength": 20,
            "minLength": 0,
            "type": "string",
            "description": "To be resolved in Token database",
            "example": "wid1234567"
          },
          "inboundId": {
            "maxLength": 20,
            "minLength": 0,
            "type": "string",
            "description": "Unique reference identifier of the expected receipt",
            "example": "iid123456"
          },
          "inboundType": {
            "$ref": "#/components/schemas/InboundOrderType"
          },
          "expectedArrivalDate": {
            "maxLength": 25,
            "minLength": 0,
            "type": "string",
            "description": "Expected date/time of arrival Format: CCYY-MM-DDTHH:mm:ssZ",
            "example": "2025-03-25T12:30:00Z"
          },
          "incoterms": {
            "$ref": "#/components/schemas/IncotermsDto"
          },
          "transportDetails": {
            "$ref": "#/components/schemas/TransportDetailsDto"
          },
          "supplier": {
            "$ref": "#/components/schemas/SupplierDto"
          },
          "additionalInformations": {
            "$ref": "#/components/schemas/AdditionalInformationDto"
          },
          "inboundNotes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/InboundNoteDto"
            },
            "description": "The InboundNotes  for the warehouse."
          },
          "lineDetails": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LineDetailDto"
            },
            "description": "The LineDetails  for the warehouse."
          }
        },
        "description": "InboundNotificationItemDto"
      },
      "InboundOrderType": {
        "enum": [
          "NORMAL",
          "RETURN"
        ],
        "type": "string",
        "description": ""
      },
      "IncotermsDto": {
        "type": "object",
        "properties": {
          "code": {
            "$ref": "#/components/schemas/IncotermsEnum"
          },
          "location": {
            "maxLength": 60,
            "minLength": 0,
            "type": "string",
            "description": "Place related to Terms of Delivery (Incoterms)",
            "example": "Denmark"
          }
        },
        "description": "Incoterms"
      },
      "IncotermsEnum": {
        "enum": [
          "EXW",
          "FCA",
          "CPT",
          "CIP",
          "DAP",
          "DPU",
          "DDP",
          "FAS",
          "FOB",
          "CFR",
          "CIF",
          "DDU"
        ],
        "type": "string",
        "description": ""
      },
      "TransportDetailsDto": {
        "type": "object",
        "properties": {
          "carrierName": {
            "maxLength": 50,
            "minLength": 0,
            "type": "string",
            "description": "Carrier company transporting the goods",
            "example": "FedEx"
          },
          "carrierReference": {
            "maxLength": 20,
            "minLength": 0,
            "type": "string",
            "description": "Carrier Reference of the shipment",
            "example": "#123456"
          },
          "modeOfTransport": {
            "$ref": "#/components/schemas/ModeOfTransport"
          },
          "containerType": {
            "$ref": "#/components/schemas/ContainerType"
          },
          "containerNumber": {
            "maxLength": 35,
            "minLength": 0,
            "type": "string",
            "description": "Container number",
            "example": "#123456"
          }
        },
        "description": "TransportDetailsDto"
      },
      "ModeOfTransport": {
        "enum": [
          "Road",
          "Air",
          "Sea",
          "Rail"
        ],
        "type": "string",
        "description": ""
      },
      "ContainerType": {
        "enum": [
          "20FT",
          "40FT",
          "20HC",
          "40HC",
          "TRCK",
          "VAN",
          "CAR"
        ],
        "type": "string",
        "description": ""
      },
      "SupplierDto": {
        "type": "object",
        "properties": {
          "reference": {
            "maxLength": 20,
            "minLength": 0,
            "type": "string",
            "description": "Supplier reference",
            "example": "ABC"
          },
          "address": {
            "$ref": "#/components/schemas/AddressDto"
          }
        },
        "description": "SupplierDto"
      },
      "AddressDto": {
        "type": "object",
        "properties": {
          "partyId": {
            "maxLength": 15,
            "minLength": 0,
            "type": "string",
            "description": "Unique code identifying the address",
            "example": "PId123456"
          },
          "companyName": {
            "maxLength": 50,
            "minLength": 0,
            "type": "string",
            "description": "Company name",
            "example": "DSV"
          },
          "addressLine1": {
            "maxLength": 60,
            "minLength": 0,
            "type": "string",
            "description": "Address line 1.",
            "example": "AddressLine1"
          },
          "addressLine2": {
            "maxLength": 60,
            "minLength": 0,
            "type": "string",
            "description": "Address line 2.",
            "example": "AddressLine2"
          },
          "city": {
            "maxLength": 60,
            "minLength": 0,
            "type": "string",
            "description": "Address town",
            "example": "Copenhagen"
          },
          "state": {
            "maxLength": 60,
            "minLength": 0,
            "type": "string",
            "description": "Address county or state",
            "example": "Capital Region of Denmark"
          },
          "zipCode": {
            "maxLength": 20,
            "minLength": 0,
            "type": "string",
            "description": "Postal Code",
            "example": "1000"
          },
          "countryCode": {
            "$ref": "#/components/schemas/CountryCode"
          },
          "vatNumber": {
            "maxLength": 20,
            "minLength": 0,
            "type": "string",
            "description": "Supplier VAT number",
            "example": "#123456"
          },
          "contactName": {
            "maxLength": 25,
            "minLength": 0,
            "type": "string",
            "description": "Contact name",
            "example": "Test"
          },
          "contactPhone": {
            "maxLength": 25,
            "minLength": 0,
            "type": "string",
            "description": "Phone number",
            "example": "+1123456789"
          },
          "contactEmail": {
            "maxLength": 70,
            "minLength": 0,
            "type": "string",
            "description": "Email",
            "format": "email",
            "example": "test@gmail.com"
          },
          "contactMobile": {
            "maxLength": 15,
            "minLength": 0,
            "type": "string",
            "description": "Mobile number",
            "example": "+1123456789"
          }
        },
        "description": "Address"
      },
      "CountryCode": {
        "enum": [
          "AF",
          "AL",
          "DZ",
          "AS",
          "AD",
          "AO",
          "AI",
          "AQ",
          "AG",
          "AR",
          "AM",
          "AW",
          "AU",
          "AT",
          "AZ",
          "BS",
          "BH",
          "BD",
          "BB",
          "BY",
          "BE",
          "BZ",
          "BJ",
          "BM",
          "BT",
          "BO",
          "BQ",
          "BA",
          "BW",
          "BV",
          "BR",
          "IO",
          "BN",
          "BG",
          "BF",
          "BI",
          "CV",
          "KH",
          "CM",
          "CA",
          "KY",
          "CF",
          "TD",
          "CL",
          "CN",
          "CX",
          "CC",
          "CO",
          "KM",
          "CD",
          "CG",
          "CK",
          "CR",
          "HR",
          "CU",
          "CW",
          "CY",
          "CZ",
          "CI",
          "DK",
          "DJ",
          "DM",
          "DO",
          "EC",
          "EG",
          "SV",
          "GQ",
          "ER",
          "EE",
          "SZ",
          "ET",
          "FK",
          "FO",
          "FJ",
          "FI",
          "FR",
          "GF",
          "PF",
          "TF",
          "GA",
          "GM",
          "GE",
          "DE",
          "GH",
          "GI",
          "GR",
          "GL",
          "GD",
          "GP",
          "GU",
          "GT",
          "GG",
          "GN",
          "GW",
          "GY",
          "HT",
          "HM",
          "VA",
          "HN",
          "HK",
          "HU",
          "IS",
          "IN",
          "ID",
          "IR",
          "IQ",
          "IE",
          "IM",
          "IL",
          "IT",
          "JM",
          "JP",
          "JE",
          "JO",
          "KZ",
          "KE",
          "KI",
          "KP",
          "KR",
          "KW",
          "KG",
          "LA",
          "LV",
          "LB",
          "LR",
          "LY",
          "LI",
          "LT",
          "LU",
          "MO",
          "MG",
          "MW",
          "MY",
          "MV",
          "ML",
          "MT",
          "MH",
          "MQ",
          "MR",
          "MU",
          "YT",
          "MX",
          "FM",
          "MD",
          "MC",
          "MN",
          "ME",
          "MS",
          "MA",
          "MZ",
          "MM",
          "NA",
          "NR",
          "NP",
          "NL",
          "NC",
          "NZ",
          "NI",
          "NE",
          "NG",
          "NU",
          "NF",
          "MP",
          "NO",
          "OM",
          "PK",
          "PW",
          "PS",
          "PA",
          "PG",
          "PY",
          "PE",
          "PH",
          "PN",
          "PL",
          "PT",
          "PR",
          "QA",
          "MK",
          "RU",
          "RW",
          "RE",
          "BL",
          "SH",
          "KN",
          "LC",
          "MF",
          "PM",
          "VC",
          "WS",
          "SM",
          "ST",
          "SA",
          "SN",
          "RS",
          "SC",
          "SL",
          "SG",
          "SX",
          "SK",
          "SI",
          "SB",
          "SO",
          "ZA",
          "GS",
          "SS",
          "ES",
          "LK",
          "SD",
          "SR",
          "SJ",
          "SE",
          "CH",
          "SY",
          "TW",
          "TJ",
          "TZ",
          "TH",
          "TL",
          "TG",
          "TK",
          "TO",
          "TT",
          "TN",
          "TR",
          "TM",
          "TC",
          "TV",
          "UG",
          "UA",
          "AE",
          "GB",
          "UM",
          "US",
          "UY",
          "UZ",
          "VU",
          "VE",
          "VN",
          "VG",
          "VI",
          "WF",
          "EH",
          "YE",
          "ZM",
          "ZW",
          "AX"
        ],
        "type": "string",
        "description": ""
      },
      "AdditionalInformationDto": {
        "type": "object",
        "properties": {
          "numericFields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NumericFieldDto"
            },
            "description": "User defined numeric fields"
          },
          "textFields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TextFieldDto"
            },
            "description": "User defined text fields"
          }
        },
        "description": "Additional Information"
      },
      "NumericFieldDto": {
        "required": [
          "sequence"
        ],
        "type": "object",
        "properties": {
          "sequence": {
            "maximum": 4.0,
            "minimum": 1.0,
            "type": "integer",
            "description": "User Def Num 1-4",
            "format": "int32",
            "example": 1
          },
          "value": {
            "maximum": 999999999.999999,
            "minimum": 0.0,
            "type": "number",
            "description": "min: 0, max: 999999999.999999 (9.6)",
            "example": 999999999.999999
          }
        },
        "description": "User defined numeric fields"
      },
      "TextFieldDto": {
        "required": [
          "sequence"
        ],
        "type": "object",
        "properties": {
          "sequence": {
            "maximum": 8.0,
            "minimum": 1.0,
            "type": "integer",
            "description": "User Def Type 1-8",
            "format": "int32",
            "example": 1
          },
          "value": {
            "maxLength": 30,
            "minLength": 0,
            "type": "string",
            "description": "Max length 30 characters",
            "example": "Value1"
          }
        },
        "description": "User defined text fields"
      },
      "InboundNoteDto": {
        "required": [
          "code"
        ],
        "type": "object",
        "properties": {
          "code": {
            "maxLength": 20,
            "minLength": 0,
            "type": "string",
            "description": "Code of the inbound note.",
            "example": "#123456"
          },
          "text": {
            "maxLength": 180,
            "minLength": 0,
            "type": "string",
            "description": "Text of the inbound note.",
            "example": "This is Test"
          }
        },
        "description": "InboundNoteDto"
      },
      "LineDetailDto": {
        "required": [
          "lineId",
          "productId",
          "quantity"
        ],
        "type": "object",
        "properties": {
          "lineId": {
            "maximum": 999999.0,
            "minimum": 0.0,
            "type": "integer",
            "description": "Line identifier",
            "format": "int32",
            "example": 1
          },
          "productId": {
            "maxLength": 50,
            "minLength": 0,
            "type": "string",
            "description": "Stock Keeping Unit identifier",
            "example": "PId123456"
          },
          "quantity": {
            "maximum": 999999999.0,
            "minimum": 0.0,
            "type": "integer",
            "description": "Quantity expected",
            "format": "int32",
            "example": 1
          },
          "sscc": {
            "maxLength": 20,
            "minLength": 0,
            "type": "string",
            "description": "SSCC (Serial Shipping Container Code) Max 20 characters.",
            "example": "123456789012345678"
          },
          "conditionOfProduct": {
            "$ref": "#/components/schemas/ConditionCode"
          },
          "origin": {
            "$ref": "#/components/schemas/CountryCode"
          },
          "expirationDate": {
            "type": "string",
            "description": "Field can only be used if flag on ProductData productExpiration

# --- truncated at 32 KB (37 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/dsv/refs/heads/main/openapi/dsv-warehousing-preadvice-demo-v1-openapi.json