akenza.io
WebsiteAPI DocumentationWhat's newLogin
  • Overview
  • Getting Started
    • Connect a Device
  • Changelog
  • General
    • Applications
    • Organization context
    • Workspace Context
    • Users
      • User Roles
  • Device Management
    • Managing an organization
      • API keys
      • Users (Organization)
        • Add & removing users from your organization
    • Managing a workspace
      • General Settings
        • Device Lifecycle Reports
        • Workspace properties
        • Occupancy settings
        • Device Setup Assistant
      • Custom fields
      • Tags
      • Users (Workspace)
    • Devices
      • Device
      • Device Simulator
      • Bulk actions
      • Bulk import CSV templates
    • Rules
      • Input
      • Logic blocks
        • Comparison
        • Custom Logic
          • Logic Block Scripting
      • Timed Rules
      • Rule Actions
        • Downlink
    • Data Flows
      • Device Connectors
        • Device Security
          • Using Device Credentials
            • Creating Public/Private Key Pairs
            • Using JSON Web Tokens (JWTs)
              • Python
              • Java
        • HTTP
        • MQTT
        • CoAP
        • LoRaWAN
          • Connectivity Management
          • Swisscom LoRaWAN
          • The Things Network
          • Loriot
          • Actility’s ThingPark Wireless
          • EWZ
          • Cibicom
          • Helium
          • ChirpStack
        • NB-IoT
        • mioty
        • Disruptive Technologies
        • VergeSense
        • Spaceti
        • Haltian
      • Device Types
        • Custom Device Types
          • Uplink
          • Downlink
          • Scripting
        • Library
      • Output Connectors
        • Databases
          • akenza DB
          • InfluxDB
          • SQL Databases
        • Streaming
          • Webhook
          • Azure IoT Hub
          • AWS Kinesis
          • Google Cloud Pub/Sub
          • Apache Kafka
        • Notifications
          • E-Mail
          • SMS
          • Microsoft Teams
          • Slack
    • Custom Components
    • Integrations
    • Reference
      • REST API
        • Filtering
        • Querying Device Data
      • WebSocket API
      • Scripting
        • Stateful Operations
        • Utility Functions
      • Payload Templating
  • Reference
  • Dashboard Builder
    • Managing Dashboards
      • Embedding dashboards
    • Components
      • Map
      • Floorplan
  • Device Setup Assistant
    • Device Setup Assistant - Overview
  • Tutorials
    • BI Tools
      • Grafana Data Source Plugin
      • How to build a dashboard with Retool
      • How to analyze data with AWS QuickSight
    • Devices
      • How to integrate the XDK device from Legic via MQTT on akenza
      • How to connect the Disruptive Technologies-cloud on akenza
      • How to send Downlinks to the Kuando Busylight device
      • How to integrate an Arduino device via MQTT on akenza
      • Integrate a MClimate Vicki LoRaWAN Radiator Thermostat on akenza
      • How to integrate an ERS Elsys device with Loriot on akenza
      • How to integrate the IAM Decentlab device with TTN on akenza
      • How to integrate the Seeed SenseCAP T1000 tracker on akenza
      • How to integrate a Swisscom Multisense device on akenza
    • Notifications
      • How to send SMS notifications
      • How to send notifications to Slack
      • How to send notifications to Microsoft Teams
    • Enterprise solutions
      • How to send data to Azure IoT Hub
      • How to send data to the Google Cloud Pub/Sub
      • How to send data to InfluxDB
      • How to send data to AWS Kinesis
      • How to send data to Azure Event Hubs with Apache Kafka
    • IoT Starter Kits
      • How to integrate the IAQ Kit with Actility on akenza
      • How to integrate the CoWork Kit with Actility on akenza
      • How to integrate the Smart Building Kit with Actility on akenza
      • How to integrate the Pepperl+Fuchs Kit with Actility on akenza
  • Support Center
    • FAQ
    • Status Page
    • Service Desk
    • Request a feature
  • Deprecated
    • SIM-Cards
    • Everynet
    • Sigfox
    • How to connect the Yanzi Lifecycle cloud on akenza
Powered by GitBook
On this page

Was this helpful?

Last updated 5 months ago

Was this helpful?

Filters allow to restrict the response of list endpoints. The available filter options for a supported list endpoint are returned by the filter options endpoint (e.g. /v3/assets/filter-options-v2).

Get asset list

POST https://api.akenza.io/v3/assets/list

Filter the asset inventory

Query Parameters

Name
Type
Description

Request Body

Name
Type
Description

Endpoints that support the filter format described on this page:

  • get asset list (/v3/assets/list)

Filter options request

The filter options endpoint response contains information about the supported fields, their type, and supported predicates.

Filter options

The filter options part contains all filterable fields. Each option provides the applicable filterTypes and can list available values.

Definitions

The definitions define the supported predicates based on the filterType.

Supported Predicates

The supported predicates contain the supported predicates by filterType.

Predicates

Depending on the predicate a different amount of values are expected.

Filter Expressions

There are two constructs that can be set as an expression, the expression list and a Filter.

A filter is has three fields, the field name, a predicate and a list of values. The amount of values differ by the used predicate.

An expression list is used to combine multiple expressions and contains only two fields the operator and the a list of expressions. The operator which defines how the containing expressions are combined, it can be ether AND or OR. The expressions list has a max depth of 3.

Example:

Predicate
Number of values
Explanation

EQUALS

1

This predicate checks for an exact match. For strings, it is not case-sensitive

NOT_EQUALS

1

This predicate returns the inverse of EQUALS including null values

IN

1+

This predicate checks if one field value matches one of the values

NOT_IN

1+

This predicate returns the inverse of in

LESS_THAN

1

This predicate checks if the field value is less than the value

LESS_THAN_OR_EQUALS

1

This predicate checks if the field value is less than or equal to the value

LESS_THAN

1

This predicate checks if the field value is greater than the value

GREATER_THAN_OR_EQUALS

1

This predicate checks if the field value is greater than or equal to the value

BETWEEN

2

This predicate checks if the field value is between the two provided values. The order of values will automatically be ensured

CONTAINS_ALL

1+

This predicate checks that the field value contains all values

CONTAINS_NONE

1+

Works like NOT_IN but is used for list fields

CONTAINS_ANY

1+

Works like IN but is used for list fields

CONTAINS

1

This predicate checks if a string contains a given value

STARTS_WITH

1

This predicate checks if a string starts with a given value

ENDS_WITH

1

This predicate checks if a string ends with a given value

BEFORE

1

checks if a date is before the given value

AFTER

1

checks if a date is after the given value

IS_NULL

0

checks if a field value exists

IS_NOT_NULL

0

checks if a field value does not exist

{
    "field" : "id",
    "predicate" : "IN",
    "values": [
         "6600000000000000",
         "6600000000000001",
         "6600000000000002"
     ]
}
{
  "operator": "AND",
  "expressions": [
    {
      "operator": "OR",
      "expressions": [
        ...
      ]
    },
    {
      "operator": "FILTER",
      "field": "uplinkMetrics.timestamp",
      "predicate": "BETWEEN",
      "values": [
        1693815659321,
        1693815359321
      ]
    },
    ...
  ]
}
{
    "search": "abc",
    "organizationId": "280000000000000",
    "expression": {
        "operator": "AND",
        "expressions": [
            {
                "field": "id",
                "predicate": "IN",
                "values": [
                    "0200000000000000",
                    "0200000000000001",
                    "0200000000000002"
                ]
            },
            {
                "operator": "OR",
                "expressions": [
                    {
                        "field": "name",
                        "predicate": "STARTS_WITH",
                        "values": [
                            "someething"
                        ]
                    },
                    {
                        "field": "name",
                        "predicate": "ENDS_WITH",
                        "values": [
                            "else"
                        ]
                    }
                ]
            }
        ]
    }
}
  1. Device Management
  2. Reference
  3. REST API

Filtering

PreviousREST APINextQuerying Device Data
  • Get asset list
  • Filter options request
  • Filter options
  • Definitions
  • Supported Predicates
  • Predicates
  • Filter Expressions

page

Interger

Page number (default 0)

sort

String

Sort string (field, direction)

organizationId

String

Id of the organization

workspaceIds

List

List of workspace ids

expression

Expression

Filter expression

search

String

Search string

✅