List Manufacturing Resources
list_manufacturing_resourcesRetrieve manufacturing resources like devices and plants from Connhex IoT platform using filters, sorting, and relationship includes.
Instructions
List resources of a given type from a JSON:API service.
Supports filtering, sorting, relationship includes, and pagination. Argument details are provided in the parameter schema.
If available, call the get_schema tool first to discover valid resource types, attributes, and relationships.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | Comma-separated sort fields. Prefix a field with "-" for descending. | |
| filter | No | JSON:API filter tree. The dict is walked recursively and translated into `filter[...][...]=value` query params. Examples: {"serial": "ABC"} → exact match (default) {"serial": ["A", "B"]} → match any of A or B {"serial": {"fuzzy-match": "ABC"}} → case-insensitive prefix {"createdAt": {"min": "2024-01-01", "max": "2024-12-31"}} → range {"site": {"exists": True}} → presence check {"address.city": "Milan"} → object property (dot) {"site:name": {"fuzzy-match": "Plant"}} → related-resource property (colon) {"or": {"name": {"fuzzy-match": "x"}, "serial": {"fuzzy-match": "x"}}} → OR across fields NOTE: do not filter a relationship directly by its resource ID (for example, {"installation": "<installation-id>"} is not supported). Relationship filters must end in an actual attribute from the related resource, such as {"installation:name": "Plant A"}. When only a related resource ID is known, first call `get_resource` for it, extract a suitable attribute, then call `list_resources` with a `relationship:attribute` filter. For example: get the installation by ID, read its `name`, then list devices with {"installation:name": "<installation-name>"}. A relation path is one literal, flat dict key: use {"installation:name": "Plant A"}, never nest it as {"installation": {"name": "Plant A"}}. To verify that a match belongs to a specific related resource ID, set `include` to the relationship name (for example, `include="installation"`) and compare its returned ID. Operators: match (default, can be omitted), fuzzy-match, min, max, exists. Combinators: and (default), or — top-level only, cannot be mixed. Field names come from the schema resource. | |
| include | No | Comma-separated relationship names to include inline. Use this whenever the answer needs data from related resources: it replaces relationship references with full nested included resources and avoids a second API call. Example: to find devices for an installation, call resource_type="devices", filter={"installation:name": "Plant A"}, include="installation" so each device result includes the matched installation details. | |
| page_limit | No | Number of results per page. | |
| page_offset | No | Pagination offset. | |
| resource_type | Yes | Resource type name from get_schema, e.g. "devices" or "plants". |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | ||
| total | No | ||
| has_next | Yes |