# Create or update a shipment item

Endpoint: POST /shipments/{shipmentID}/items
Version: 1.0.457.36910
Security: OAuth2

## Security:

  - `OAuth2` (unknown)
    oauth2 scopes: FullAccess, ShipmentAdmin

## Path parameters:

  - `shipmentID` (string, required)
    ID of the shipment.

## Request fields (application/json):

  - `OrderID` (string)

  - `LineItemID` (string)

  - `QuantityShipped` (integer)

  - `Product` (object)
    Example: {"ID":"","Name":"","Description":"","Returnable":false,"QuantityMultiplier":0,"ShipWeight":0,"ShipHeight":0,"ShipWidth":0,"ShipLength":0,"DefaultSupplierID":"","ParentID":"","xp":{}}

  - `Product.ID` (string)

  - `Product.Name` (string)

  - `Product.Description` (string)

  - `Product.Returnable` (boolean)

  - `Product.QuantityMultiplier` (integer)

  - `Product.ShipWeight` (number)

  - `Product.ShipHeight` (number)

  - `Product.ShipWidth` (number)

  - `Product.ShipLength` (number)

  - `Product.DefaultSupplierID` (string)

  - `Product.ParentID` (string)

  - `Product.xp` (object)

  - `Variant` (object)
    Example: {"ID":"","Name":"","Description":"","ShipWeight":0,"ShipHeight":0,"ShipWidth":0,"ShipLength":0,"xp":{}}

  - `Variant.ID` (string)

  - `Variant.Name` (string)

  - `Variant.Description` (string)

  - `Variant.ShipWeight` (number)

  - `Variant.ShipHeight` (number)

  - `Variant.ShipWidth` (number)

  - `Variant.ShipLength` (number)

  - `Variant.xp` (object)

## Response 200 fields (application/json):

  - `OrderID` (string)

  - `LineItemID` (string)

  - `QuantityShipped` (integer)

  - `UnitPrice` (number)

  - `CostCenter` (string)

  - `DateNeeded` (string)

  - `Product` (object)
    Example: {"ID":"","Name":"","Description":"","Returnable":false,"QuantityMultiplier":0,"ShipWeight":0,"ShipHeight":0,"ShipWidth":0,"ShipLength":0,"DefaultSupplierID":"","ParentID":"","xp":{}}

  - `Product.ID` (string)

  - `Product.Name` (string)

  - `Product.Description` (string)

  - `Product.Returnable` (boolean)

  - `Product.QuantityMultiplier` (integer)

  - `Product.ShipWeight` (number)

  - `Product.ShipHeight` (number)

  - `Product.ShipWidth` (number)

  - `Product.ShipLength` (number)

  - `Product.DefaultSupplierID` (string)

  - `Product.ParentID` (string)

  - `Product.xp` (object)

  - `Variant` (object)
    Example: {"ID":"","Name":"","Description":"","ShipWeight":0,"ShipHeight":0,"ShipWidth":0,"ShipLength":0,"xp":{}}

  - `Variant.ID` (string)

  - `Variant.Name` (string)

  - `Variant.Description` (string)

  - `Variant.ShipWeight` (number)

  - `Variant.ShipHeight` (number)

  - `Variant.ShipWidth` (number)

  - `Variant.ShipLength` (number)

  - `Variant.xp` (object)

  - `Specs` (array)

  - `Specs.SpecID` (string)

  - `Specs.Name` (string)

  - `Specs.OptionID` (string)

  - `Specs.Value` (string)

  - `Specs.PriceMarkupType` (string)
    Enum: "NoMarkup", "AmountPerQuantity", "AmountTotal", "Percentage"

  - `Specs.PriceMarkup` (number)

  - `xp` (object)
    For reference only, represents line item XP from the given line item ID

## Response 4XX:

  - `4XX` (unknown)
    Expected errors range from 400-409. Anything in the 5XX range indicates a server issue and should be reported to support.

## Response 4XX fields (application/json):

  - `StatusCode` (integer)
    Example: 404

  - `ErrorCode` (string)
    Example: NotFoundError

  - `Message` (string)
    Example: Object not found

  - `Data` (object)
    Example: {"ObjectType":"","ObjectID":""}

