Locations
Locations are specific places in your warehouses where you can place products. When you manage your locations consequently, it speeds up your operations.
You can manage your locations with these endpoints. You can use locations to link to products.
Attributes
Name |
Type |
Required |
Description |
idlocation |
integer |
generated |
Unique Picqer reference |
idwarehouse |
integer |
required |
Linked to resource Warehouse |
idlocation_type |
integer |
optional |
Linked to resource LocationType, will be linked to default value if empty |
parent_idlocation |
integer |
optional |
Linked to resource Location, for nested locations |
name |
string |
required |
Name of location |
unlink_on_empty |
boolean |
optional |
If true, products will be unlinked from this location if their stock reaches 0 (default: false) |
is_bulk_location |
boolean |
optional |
If true, location will be used for bulk stock (default: false) |
Get all locations
GET
https://example.picqer.com/api/v1/locations
HTTP/1.1 200 OK
[
{
"idlocation": 1,
"idwarehouse": 13,
"parent_idlocation": null,
"name": "A",
"remarks": null,
"unlink_on_empty": false,
"location_type": {
"idlocation_type": 2,
"name": "Standaard",
"default": true,
"color": "#0000f0"
},
"is_bulk_location": false
},
{
"idlocation": 2,
"idwarehouse": 13,
"parent_idlocation": 1,
"name": "A.1",
"remarks": null,
"unlink_on_empty": false,
"location_type": {
"idlocation_type": 2,
"name": "Standaard",
"default": true,
"color": "#0000f0"
},
"is_bulk_location": true
}
]
Filters
You can filter the products with the following parameters. Add these filters as querystring parameters to the URL.
Attribute |
Description |
Example |
idlocation_type |
Only get locations from this type |
2 |
idwarehouse |
Only get locations for this warehouse |
13 |
only_available |
If true, only get locations that do not have any products linked yet |
true |
name |
Search for a specific location name |
A.B.12 |
Get single location
GET
https://example.picqer.com/api/v1/locations/{idlocation}
HTTP/1.1 200 OK
{
"idlocation": 14,
"idwarehouse": 13,
"parent_idlocation": 13,
"name": "A.05.12",
"remarks": null,
"unlink_on_empty": false,
"location_type": {
"idlocation_type": 2,
"name": "Standaard",
"default": true,
"color": "#0000f0"
}
}
Create new location
POST
https://example.picqer.com/api/v1/locations
{
"name": "G.12.22",
"idwarehouse": 13
}
HTTP/1.1 201 Created
{
"idlocation": 1511,
"idwarehouse": 13,
"parent_idlocation": null,
"name": "G.12.22",
"remarks": null,
"unlink_on_empty": null,
"location_type": {
"idlocation_type": 2,
"name": "Standaard",
"default": true,
"color": "#0000f0"
}
}
You can also create a location with the param auto_link_to_parent set to 1. This will look for a obvious parent in your naming, and link to the parent if it exists, or otherwise create the parent. So the endpoint is https://example.picqer.com/api/v1/locations?auto_link_to_parent=1
Update location
PUT
https://example.picqer.com/api/v1/locations/{idlocation}
{
"name": "A.33.33"
}
HTTP/1.1 200 OK
{
"idlocation": 1511,
"idwarehouse": 13,
"parent_idlocation": null,
"name": "A.33.33",
"remarks": null,
"unlink_on_empty": null,
"location_type": {
"idlocation_type": 2,
"name": "Standaard",
"default": true,
"color": "#0000f0"
}
}
Delete location
Location can only be deleted if there are no products linked.
DELETE
https://example.picqer.com/api/v1/locations/{idlocation}
HTTP/1.1 204 No Content
Get products on location
This gives you the products (with or without stock) that are currently linked to this location.
GET
https://example.picqer.com/api/v1/locations/{idlocation}/products
HTTP/1.1 200 OK
[
{
"idproduct": 1105339,
"productcode": "AB519042",
"name": "Mars Blue Wide-Format",
"price": 506.89,
"stock": {
"idwarehouse": 13,
"stock": 22,
"reserved": 28,
"reservedbackorders": 6,
"reservedpicklists": 22,
"reservedallocations": 0,
"freestock": -6
},
"image_url": "https://example.org\/49706b1a-b18f\/thumbnail-100-100-0-0-50.jpg"
}
]
Link products to locations
This is documented on the product endpoint page.