v12

latestOpenAPI 3.0.0raw.githubusercontent.com2023-07-14652587.5 KB
Search

Search for groups and devices.

Search results can be filtered by type, ancestorPath, and an arbitrary number of additional filter parameters. Each filter can reference a field of the search result, for example eq=fieldname:value or traverse the asset library graph to reference a related entry, for example eq=traversal1:out:traversal2:in:fieldname:value. All parameters are combined with a logical AND. For all search parameters that include a search key and search value separated by a colon (:) character, the HTTP parameter must be assembled using the following sequence of steps:

  1. URL-encode the search value.
  2. Concatenate the search key (incl. any traversals), the colon character, and result of step 1.
  3. URL-encode the output of step 2. Failure to do so can yield incorrect search results for any search values that include the colon character. For example, a search for entries with an outgoing "manufactured_by" relation whose name starts with "Mfg+Asy Inc" should be expressed as: /search?startsWith=manufactured_by%3Aout%3Aname%3AMfg%252BAsy%2520Inc
get/search

Query parameters

typestring[]

Type of group/device to filter for. This can be the high level group or device, as well as any custom group or device template that may have been registered.

ntypestring[]

Type of group/device to filter out. This can be the high level group or device, as well as any custom group or device template that may have been registered.

ancestorPathstring

The path of a common ancestor group to filter results by.

includeAncestorstring[]

Whether or not to include the ancestor in the search. Defaults to false

eqstring[]

Filter an attribute based on an exact match. E.g. ?eq=firmwareVersion:ABC123

neqstring[]

Filter by an attribute based on not matching. E.g. ?neq=firmwareVersion:ABC123

ltnumber[]

Filter an attribute based on having a value less than. E.g. ?lt=deploymentId:3

ltenumber[]

Filter an attribute based on having a value less than or equal to. E.g. ?lte=deploymentId:3

gtnumber[]

Filter an attribute based on having a value greater than. E.g. ?gt=deploymentId:3

gtenumber[]

Filter an attribute based on having a value greater than or equal to. E.g. ?gte=deploymentId:3

startsWithstring[]

Filter by an attribute based on starting with specific text. Case sensitive. For example: ?startsWith=model:MOD123

endsWithstring[]

Filter by an attribute based on ending with specific text. Case sensitive. For example: ?endsWith=model:limited%20edition

containsstring[]

Filter by an attribute based on ending with specific text. Case sensitive. For example: ?endsWith=model:quattro

existstring[]

Return a match if the device/group in context has a matching relation/atrribute. E.g. ?exists=installed_in:out:groupPath:/vehicle/001

nexiststring[]

Return a match if the device/group in context does not have a matching relation/atrribute. E.g. ?nxists=installed_in:out:groupPath:/vehicle/001

facetFieldstring

Perform a faceted query. Specify in the format of ?facetField=relation:direction:field

summarizeboolean

Summarize the search results by providing a total, instead of returning the results themselves.

offsetinteger
countinteger
sortstring

A comma delimited list of attributes to sort by, with an optional direction (asc/desc') provided per attribute separated by a colon. Id not provided, asc` is applied.

Response

successful operation