# POST a unit's disposition update Client endpoint to which disposition update data is posted to. This endpoint along with any authentication mechanisms needed must be communicated to client's account manager. Endpoint: POST /dispositions Version: 1.0.0 ## Request fields (application/json): - `from_disposition` (string, required) Indicates which channel this unit is from. Options include: b2b, d2c, client_liquidation, destroy, dispose, donate, outlets, recycle, removed, rts, rts_drop_ship, rtv, stock_transfer Example: "needs_testing" - `to_disposition` (string, required) Indicates which channel this unit is designated to. Options include: b2b, d2c, client_liquidation, destroy, dispose, donate, outlets, recycle, removed, rts, rts_drop_ship, rtv, stock_transfer Example: "recycle" - `timestamp` (string, required) iso8601 formatted date string (YYYY-MM-DDT00:00:00) in UTC Example: "2018-03-20T00:00:00" - `location_identifier` (string, required) Shared storage location identifier (present in both Optoro and client’s system) representing the units current location Example: "RTS-1112" - `warehouse_identifier` (string, required) Indicates the warehouse where the unit is located. Identifier can be configured by the client; otherwise will default to Optoro’s internal warehouse identifier Example: "22" - `optiturn_lp` (string, required) Unique alphanumeric id of the unit Example: "LPAA1234567" - `program_identifier` (string, required) Either a client-provided program name or OptiTurn’s internal program id Example: "parcel_returns" - `from_sku` (string) Indicates the client SKU associated with the unit before a change - will be the same as to_sku if the unit didn’t change SKU Example: "012344566700" - `to_sku` (string) Indicates the client SKU associated with the unit after the change - will be the same as from_sku if the unit didn’t change SKU Example: "012344566700" - `sku` (string) This field is deprecated and may be removed in a future version of the API. Please use from_sku and to_sku above instead Example: "012344566700" - `upc` (string, required) UPC for the unit Example: "0123456789012" - `from_condition` (string, required) [N, TT, R, A, B, C, X] indicating which condition the unit was before its new disposition, a condition mapping is often created to match your internal conditions Enum: "N", "TT", "R", "A", "B", "C", "X" - `to_condition` (string, required) [N, TT, R, A, B, C, X] indicating which condition the unit is at its new disposition, a condition mapping is often created to match your internal conditions Enum: "N", "TT", "R", "A", "B", "C", "X" - `reference_unit_identifier` (string) A client-provided identifier for the unit, likely provided by an inbound integration Example: "Unit A" - `store_identifier` (string) The identifier of the store that returned the unit to the warehouse Example: "Store A" - `user_login` (string) OptiTurn username of the user that triggered the disposition change. Only included for client users, not 3PL Example: "client_user_login" ## Response 200 fields (application/json): - `message` (string) Example: "Success" ## Response 422 fields (application/json): - `message` (string, required) Summary of the error(s). - `errors` (array, required) Contains one or more error objects. - `errors.field` (string, required) JSON path of the field that failed validation. - `errors.code` (string, required) Categorization of validation failure. Defaults to 'invalid'. Enum: "missing_field", "invalid_type", "invalid" ## Response 400 fields ## Response 401 fields ## Response 500 fields ## Response 502 fields