Skip to content

Move stock, several lines at once

POST
/stock/movements/batch
curl --request POST \
--url https://example.com/stock/movements/batch \
--header 'Content-Type: application/json' \
--cookie bottle.session_token=<bottle.session_token> \
--data '{ "movements": [ { "productId": "019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f", "condition": "full", "quantity": 1, "fromKind": "place", "toKind": "place", "fromLocationId": "019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f", "fromVehicleId": "019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f", "toLocationId": "019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f", "toVehicleId": "019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f", "reason": "loaded", "note": "example" } ], "note": "example" }'

A delivery note with a dozen lines on it, or a stocktake across every rack, recorded as one event. All the lines go in or none do.

Media typeapplication/json
object
movements
required
Array<object>
>= 1 items <= 200 items
object
productId
required

UUID v7

string format: uuid
Example
019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f
condition
required
string
Allowed values: full empty
quantity
required
integer
> 0 <= 100000
fromKind
required
string
Allowed values: place vehicle customer supplier nowhere
toKind
required
string
Allowed values: place vehicle customer supplier nowhere
fromLocationId

UUID v7

string | null format: uuid
Example
019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f
fromVehicleId

UUID v7

string | null format: uuid
Example
019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f
toLocationId

UUID v7

string | null format: uuid
Example
019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f
toVehicleId

UUID v7

string | null format: uuid
Example
019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f
reason
required
string
Allowed values: loaded delivered collected unloaded received sent_for_refill stocktake damaged correction
note
string | null
<= 500 characters
note
string | null
<= 500 characters

Moved

Not signed in

Media typeapplication/json
object
error
required
string
message
required
string
Example
{
"error": "not_found",
"message": "Customer not found"
}

Not a member, or without the permission this needs

Media typeapplication/json
object
error
required
string
message
required
string
Example
{
"error": "not_found",
"message": "Customer not found"
}

Validation failed

Media typeapplication/json
object
error
required
string
Allowed values: validation
message
required
string
issues
required
Array<object>
object
path
required
string
message
required
string
Example
{
"error": "validation",
"issues": [
{
"path": "email",
"message": "Invalid email"
}
]
}