Storage Equipment List
Storage Equipment endpoint
» click to learn about Filtering, Ordering and more...
Accepted filters:
- search: Search in the following fields: name, code, description, owner__full_name, responsible_person__full_name, catalogue_number, vendor, status, owned_by__name. (^startswith, $regex, =exact)
- deleted: Deleted (exact)
- deleted_by: Deleted by (exact)
- deleted_date: Deleted date (exact)
- type: Filter by the protocol type e.g. extract (exact)
- model_type: Filter by the protocol type e.g. extract (exact)
- owner: Owner Username (exact)
- owned_by: Filter on list of owned by group names [OR] (exact)
- public: Public (exact)
- name: Name starts with (istartswith)
- description: Description contains (icontains)
- query: Search filter on the name property (exact)
- created_by: Created by Username (exact)
- modified_by: Modified by Username (exact)
- id: ID (exact)
- code: Code contains (icontains)
- stock_locations: Stock locations Short name contains (icontains)
- responsible_person: Responsible Person Username contains (icontains)
- catalogue_number: Catalogue # contains (icontains)
- vendor: Origin/Vendor contains (icontains)
- status: Status (exact)
- maintained: Maintained (exact)
- temperature: Operating temperature contains (icontains)
- pressure: Pressure contains (icontains)
- lighting: Lighting contains (icontains)
- humidity: Humidity contains (icontains)
Advanced Filtering
You can also filter using a json object to process all search parameters. Currently this filter supports the syntax as produced/used by the http://summitroute.github.io/react-structured-filter/ search UI.
Example
?query_expression={"category":"name","operator":"contains","value":"Y00"},
{"category":"amount","operator":">","value":"10"},
{"category":"type__name","operator":"exact","value":"ANTIBODY"}
» more info about the query_expression param..
Preset mappings
- stock_locations: stock_locations__name
- responsible_person: responsible_person__username
- deleted: <function filter_deleted at 0x7f45063765f0>
- deleted_by: deleted_by__username
- type: type__name
- owner: owner__username
- owned_by: owned_by__name
- notes: notes__content
- created_by: created_by__username
- modified_by: modified_by__username
- instrumentmodel: instrumentmodel__name
Operators
- ==
- =
- >=
- >
- <=
- <
- contains
- icontains
- exact
- iexact
- startswith
- istartswith
- endswith
- iendswith
Permission filtering
Based on the current logged in user you can filter for objects that have a particular permission set:
- can_change: True/False, show objects that you can change
- can_delete: True/False, show objects that you can delete
# not applicable - will raise NotAcceptable:
- can_view: as this is always True, you can only view items you are allowed to see
Ordering
You can order on practically any field even spanning relations.
# reverse order on owner username
?ordering=-owner
# order on related field
?ordering=category__version
Storage Equipment endpoint
API endpoint that allows stocks to be viewed or edited.
None None None
The default modelviewset used in this project
Add JSONPatch like functionality to bulk update items.
### Bulk Delete
This view also allows for one to bulk delete items. The url needs to be appended by ``/bulk_delete/`` and the ids
need to be given by multiple query_params:
```
{current_url}/bulk_delete/?id=<id_1>,id=<id_2>
```
GET /api/v2/stocks/storageequipment/?format=api&ordering=lighting
{
"previous": null,
"next": null,
"current": 1,
"total": 1,
"total_pages": 1,
"results": [
{
"code": {
"name": "code",
"value": "L-30F",
"category": "property"
},
"model_type": {
"name": "model_type",
"category": "property",
"value": "FREEZER"
},
"maintained": {
"name": "maintained",
"value": true,
"category": "property"
},
"responsible_person": {
"name": "responsible_person",
"value": null,
"category": "property"
},
"catalogue_number": {
"name": "catalogue_number",
"category": "property",
"value": ""
},
"vendor": {
"name": "vendor",
"category": "property",
"value": ""
},
"status": {
"name": "status",
"value": {
"value": "AVAILABLE",
"label": "AVAILABLE"
},
"category": "property"
},
"stock_locations": {
"name": "stock_locations",
"value": [],
"category": "property"
},
"deleted": {
"name": "deleted",
"value": false,
"category": "property"
},
"deleted_by": {
"name": "deleted_by",
"value": null,
"category": "property"
},
"deleted_date": {
"name": "deleted_date",
"value": null,
"category": "property"
},
"produced": {
"name": "produced",
"value": "",
"category": "property"
},
"type": {
"name": "type",
"value": {
"name": "FREEZER",
"id": "18893d57-0b54-4b8e-b7de-5a08f16bf055"
},
"category": "property"
},
"owner": {
"name": "owner",
"value": {
"id": 3,
"username": "demo",
"full_name": "Demo User"
},
"category": "property"
},
"owned_by": {
"name": "owned_by",
"value": {
"id": 2,
"name": "Demo"
},
"category": "property"
},
"public": {
"name": "public",
"value": true,
"category": "property"
},
"permissions": {
"name": "permissions",
"value": {
"public": true,
"actions": {},
"allowed": [
"view"
]
},
"category": "property"
},
"notes": {
"name": "notes",
"category": "property",
"value": 0
},
"choice_label": {
"name": "choice_label",
"category": "property",
"value": "Liebherr-30freezer"
},
"model_name": {
"name": "model_name",
"category": "property",
"value": "storageequipment"
},
"app_name": {
"name": "app_name",
"category": "property",
"value": "stocks"
},
"name": {
"name": "name",
"value": {
"id": "c5e6bec8-5c0e-49de-b569-aa4be6d8b746",
"name": "Liebherr-30freezer",
"model_name": "storageequipment",
"app_name": "stocks",
"model_type": "FREEZER"
},
"category": "property"
},
"description": {
"name": "description",
"category": "property",
"value": ""
},
"id": {
"name": "id",
"category": "property",
"value": "c5e6bec8-5c0e-49de-b569-aa4be6d8b746"
},
"created": {
"name": "created",
"value": "2025-12-16T09:33:22.190237+01:00",
"category": "property"
},
"modified": {
"name": "modified",
"value": "2025-12-16T09:33:22.190375+01:00",
"category": "property"
},
"created_by": {
"name": "created_by",
"value": {
"id": 3,
"username": "demo",
"full_name": "Demo User"
},
"category": "property"
},
"modified_by": {
"name": "modified_by",
"value": {
"id": 3,
"username": "demo",
"full_name": "Demo User"
},
"category": "property"
},
"short_name": {
"name": "short_name",
"category": "property",
"value": "Liebherr-30freezer"
},
"serial_number": {
"name": "serial_number",
"category": "property",
"value": ""
},
"temperature": {
"name": "temperature",
"category": "property",
"value": "-30"
},
"pressure": {
"name": "pressure",
"category": "property",
"value": ""
},
"lighting": {
"name": "lighting",
"category": "property",
"value": ""
},
"humidity": {
"name": "humidity",
"category": "property",
"value": ""
}
}
]
}