---
title: "Find Alarms by Query"
method: POST
path: "/api/alarmsQuery/find"
tags: ["entity-query-controller"]
---

# Find Alarms by Query

`POST /api/alarmsQuery/find`

This method description defines how Alarm Data Query extends the Entity Data Query. See method 'Find Entity Data by Query' first to get the info about 'Entity Data Query'.

 The platform will first search the entities that match the entity and key filters. Then, the platform will use 'Alarm Page Link' to filter the alarms related to those entities. Finally, platform fetch the properties of alarm that are defined in the **'alarmFields'** and combine them with the other entity, attribute and latest time series fields to return the result. 

 See example of the alarm query below. The query will search first 100 active alarms with type 'Temperature Alarm' or 'Fire Alarm' for any device with current temperature > 0. The query will return combination of the entity fields: name of the device, device model and latest temperature reading and alarms fields: createdTime, type, severity and status: 

```json
{
  "entityFilter": {
    "type": "entityType",
    "resolveMultiple": true,
    "entityType": "DEVICE"
  },
  "pageLink": {
    "page": 0,
    "pageSize": 100,
    "textSearch": null,
    "searchPropagatedAlarms": false,
    "statusList": [
      "ACTIVE"
    ],
    "severityList": [
      "CRITICAL",
      "MAJOR"
    ],
    "typeList": [
      "Temperature Alarm",
      "Fire Alarm"
    ],
    "sortOrder": {
      "key": {
        "key": "createdTime",
        "type": "ALARM_FIELD"
      },
      "direction": "DESC"
    },
    "timeWindow": 86400000
  },
  "keyFilters": [
    {
      "key": {
        "type": "TIME_SERIES",
        "key": "temperature"
      },
      "valueType": "NUMERIC",
      "predicate": {
        "operation": "GREATER",
        "value": {
          "defaultValue": 0,
          "dynamicValue": null
        },
        "type": "NUMERIC"
      }
    }
  ],
  "alarmFields": [
    {
      "type": "ALARM_FIELD",
      "key": "createdTime"
    },
    {
      "type": "ALARM_FIELD",
      "key": "type"
    },
    {
      "type": "ALARM_FIELD",
      "key": "severity"
    },
    {
      "type": "ALARM_FIELD",
      "key": "status"
    }
  ],
  "entityFields": [
    {
      "type": "ENTITY_FIELD",
      "key": "name"
    }
  ],
  "latestValues": [
    {
      "type": "ATTRIBUTE",
      "key": "model"
    },
    {
      "type": "TIME_SERIES",
      "key": "temperature"
    }
  ]
}
```

## Request body

- AlarmDataQuery — A JSON value representing the alarm data query. See API call notes above for more details.
  - `entityFilter` union
    - ApiUsageStateFilter
      - `type` string, required
      - `customerId` CustomerId
        - `id` string, uuid, required — ID of the entity, time-based UUID v1
        - `entityType` 'CUSTOMER', required — string
    - AssetSearchQueryFilter
      - `type` string, required
      - `rootEntity` AliasEntityId
        - `aliasEntityType` 'CURRENT_CUSTOMER' | 'CURRENT_TENANT' | 'CURRENT_USER' | 'CURRENT_USER_OWNER'
        - `id` string, uuid, required — ID of the entity, time-based UUID v1
        - `entityType` 'TENANT' | 'CUSTOMER' | 'USER' | 'DASHBOARD' | 'ASSET' | 'DEVICE' | 'ALARM' | 'RULE_CHAIN' | 'RULE_NODE' | 'ENTITY_VIEW' | 'WIDGETS_BUNDLE' | 'WIDGET_TYPE' | 'TENANT_PROFILE' | 'DEVICE_PROFILE' | 'ASSET_PROFILE' | 'API_USAGE_STATE' | 'TB_RESOURCE' | 'OTA_PACKAGE' | 'EDGE' | 'RPC' | 'QUEUE' | 'NOTIFICATION_TARGET' | 'NOTIFICATION_TEMPLATE' | 'NOTIFICATION_REQUEST' | 'NOTIFICATION' | 'NOTIFICATION_RULE' | 'QUEUE_STATS' | 'OAUTH2_CLIENT' | 'DOMAIN' | 'MOBILE_APP' | 'MOBILE_APP_BUNDLE' | 'CALCULATED_FIELD' | 'JOB' | 'ADMIN_SETTINGS' | 'AI_MODEL' | 'API_KEY', required
      - `relationType` string
      - `direction` 'FROM' | 'TO'
      - `maxLevel` integer
      - `fetchLastLevelOnly` boolean
      - `rootStateEntity` boolean
      - `defaultStateEntity` AliasEntityId
        - `aliasEntityType` 'CURRENT_CUSTOMER' | 'CURRENT_TENANT' | 'CURRENT_USER' | 'CURRENT_USER_OWNER'
        - `id` string, uuid, required — ID of the entity, time-based UUID v1
        - `entityType` 'TENANT' | 'CUSTOMER' | 'USER' | 'DASHBOARD' | 'ASSET' | 'DEVICE' | 'ALARM' | 'RULE_CHAIN' | 'RULE_NODE' | 'ENTITY_VIEW' | 'WIDGETS_BUNDLE' | 'WIDGET_TYPE' | 'TENANT_PROFILE' | 'DEVICE_PROFILE' | 'ASSET_PROFILE' | 'API_USAGE_STATE' | 'TB_RESOURCE' | 'OTA_PACKAGE' | 'EDGE' | 'RPC' | 'QUEUE' | 'NOTIFICATION_TARGET' | 'NOTIFICATION_TEMPLATE' | 'NOTIFICATION_REQUEST' | 'NOTIFICATION' | 'NOTIFICATION_RULE' | 'QUEUE_STATS' | 'OAUTH2_CLIENT' | 'DOMAIN' | 'MOBILE_APP' | 'MOBILE_APP_BUNDLE' | 'CALCULATED_FIELD' | 'JOB' | 'ADMIN_SETTINGS' | 'AI_MODEL' | 'API_KEY', required
      - `assetTypes` string[]
    - AssetTypeFilter
      - `type` string, required
      - `assetType` string
      - `assetTypes` string[]
      - `assetNameFilter` string
    - DeviceSearchQueryFilter
      - `type` string, required
      - `rootEntity` AliasEntityId
        - `aliasEntityType` 'CURRENT_CUSTOMER' | 'CURRENT_TENANT' | 'CURRENT_USER' | 'CURRENT_USER_OWNER'
        - `id` string, uuid, required — ID of the entity, time-based UUID v1
        - `entityType` 'TENANT' | 'CUSTOMER' | 'USER' | 'DASHBOARD' | 'ASSET' | 'DEVICE' | 'ALARM' | 'RULE_CHAIN' | 'RULE_NODE' | 'ENTITY_VIEW' | 'WIDGETS_BUNDLE' | 'WIDGET_TYPE' | 'TENANT_PROFILE' | 'DEVICE_PROFILE' | 'ASSET_PROFILE' | 'API_USAGE_STATE' | 'TB_RESOURCE' | 'OTA_PACKAGE' | 'EDGE' | 'RPC' | 'QUEUE' | 'NOTIFICATION_TARGET' | 'NOTIFICATION_TEMPLATE' | 'NOTIFICATION_REQUEST' | 'NOTIFICATION' | 'NOTIFICATION_RULE' | 'QUEUE_STATS' | 'OAUTH2_CLIENT' | 'DOMAIN' | 'MOBILE_APP' | 'MOBILE_APP_BUNDLE' | 'CALCULATED_FIELD' | 'JOB' | 'ADMIN_SETTINGS' | 'AI_MODEL' | 'API_KEY', required
      - `relationType` string
      - `direction` 'FROM' | 'TO'
      - `maxLevel` integer
      - `fetchLastLevelOnly` boolean
      - `rootStateEntity` boolean
      - `defaultStateEntity` AliasEntityId
        - `aliasEntityType` 'CURRENT_CUSTOMER' | 'CURRENT_TENANT' | 'CURRENT_USER' | 'CURRENT_USER_OWNER'
        - `id` string, uuid, required — ID of the entity, time-based UUID v1
        - `entityType` 'TENANT' | 'CUSTOMER' | 'USER' | 'DASHBOARD' | 'ASSET' | 'DEVICE' | 'ALARM' | 'RULE_CHAIN' | 'RULE_NODE' | 'ENTITY_VIEW' | 'WIDGETS_BUNDLE' | 'WIDGET_TYPE' | 'TENANT_PROFILE' | 'DEVICE_PROFILE' | 'ASSET_PROFILE' | 'API_USAGE_STATE' | 'TB_RESOURCE' | 'OTA_PACKAGE' | 'EDGE' | 'RPC' | 'QUEUE' | 'NOTIFICATION_TARGET' | 'NOTIFICATION_TEMPLATE' | 'NOTIFICATION_REQUEST' | 'NOTIFICATION' | 'NOTIFICATION_RULE' | 'QUEUE_STATS' | 'OAUTH2_CLIENT' | 'DOMAIN' | 'MOBILE_APP' | 'MOBILE_APP_BUNDLE' | 'CALCULATED_FIELD' | 'JOB' | 'ADMIN_SETTINGS' | 'AI_MODEL' | 'API_KEY', required
      - `deviceTypes` string[]
    - DeviceTypeFilter
      - `type` string, required
      - `deviceType` string
      - `deviceTypes` string[]
      - `deviceNameFilter` string
    - EdgeSearchQueryFilter
      - `type` string, required
      - `rootEntity` AliasEntityId
        - `aliasEntityType` 'CURRENT_CUSTOMER' | 'CURRENT_TENANT' | 'CURRENT_USER' | 'CURRENT_USER_OWNER'
        - `id` string, uuid, required — ID of the entity, time-based UUID v1
        - `entityType` 'TENANT' | 'CUSTOMER' | 'USER' | 'DASHBOARD' | 'ASSET' | 'DEVICE' | 'ALARM' | 'RULE_CHAIN' | 'RULE_NODE' | 'ENTITY_VIEW' | 'WIDGETS_BUNDLE' | 'WIDGET_TYPE' | 'TENANT_PROFILE' | 'DEVICE_PROFILE' | 'ASSET_PROFILE' | 'API_USAGE_STATE' | 'TB_RESOURCE' | 'OTA_PACKAGE' | 'EDGE' | 'RPC' | 'QUEUE' | 'NOTIFICATION_TARGET' | 'NOTIFICATION_TEMPLATE' | 'NOTIFICATION_REQUEST' | 'NOTIFICATION' | 'NOTIFICATION_RULE' | 'QUEUE_STATS' | 'OAUTH2_CLIENT' | 'DOMAIN' | 'MOBILE_APP' | 'MOBILE_APP_BUNDLE' | 'CALCULATED_FIELD' | 'JOB' | 'ADMIN_SETTINGS' | 'AI_MODEL' | 'API_KEY', required
      - `relationType` string
      - `direction` 'FROM' | 'TO'
      - `maxLevel` integer
      - `fetchLastLevelOnly` boolean
      - `rootStateEntity` boolean
      - `defaultStateEntity` AliasEntityId
        - `aliasEntityType` 'CURRENT_CUSTOMER' | 'CURRENT_TENANT' | 'CURRENT_USER' | 'CURRENT_USER_OWNER'
        - `id` string, uuid, required — ID of the entity, time-based UUID v1
        - `entityType` 'TENANT' | 'CUSTOMER' | 'USER' | 'DASHBOARD' | 'ASSET' | 'DEVICE' | 'ALARM' | 'RULE_CHAIN' | 'RULE_NODE' | 'ENTITY_VIEW' | 'WIDGETS_BUNDLE' | 'WIDGET_TYPE' | 'TENANT_PROFILE' | 'DEVICE_PROFILE' | 'ASSET_PROFILE' | 'API_USAGE_STATE' | 'TB_RESOURCE' | 'OTA_PACKAGE' | 'EDGE' | 'RPC' | 'QUEUE' | 'NOTIFICATION_TARGET' | 'NOTIFICATION_TEMPLATE' | 'NOTIFICATION_REQUEST' | 'NOTIFICATION' | 'NOTIFICATION_RULE' | 'QUEUE_STATS' | 'OAUTH2_CLIENT' | 'DOMAIN' | 'MOBILE_APP' | 'MOBILE_APP_BUNDLE' | 'CALCULATED_FIELD' | 'JOB' | 'ADMIN_SETTINGS' | 'AI_MODEL' | 'API_KEY', required
      - `edgeTypes` string[]
    - EdgeTypeFilter
      - `type` string, required
      - `edgeType` string
      - `edgeTypes` string[]
      - `edgeNameFilter` string
    - EntityListFilter
      - `type` string, required
      - `entityType` 'TENANT' | 'CUSTOMER' | 'USER' | 'DASHBOARD' | 'ASSET' | 'DEVICE' | 'ALARM' | 'RULE_CHAIN' | 'RULE_NODE' | 'ENTITY_VIEW' | 'WIDGETS_BUNDLE' | 'WIDGET_TYPE' | 'TENANT_PROFILE' | 'DEVICE_PROFILE' | 'ASSET_PROFILE' | 'API_USAGE_STATE' | 'TB_RESOURCE' | 'OTA_PACKAGE' | 'EDGE' | 'RPC' | 'QUEUE' | 'NOTIFICATION_TARGET' | 'NOTIFICATION_TEMPLATE' | 'NOTIFICATION_REQUEST' | 'NOTIFICATION' | 'NOTIFICATION_RULE' | 'QUEUE_STATS' | 'OAUTH2_CLIENT' | 'DOMAIN' | 'MOBILE_APP' | 'MOBILE_APP_BUNDLE' | 'CALCULATED_FIELD' | 'JOB' | 'ADMIN_SETTINGS' | 'AI_MODEL' | 'API_KEY'
      - `entityList` string[]
    - EntityNameFilter
      - `type` string, required
      - `entityType` 'TENANT' | 'CUSTOMER' | 'USER' | 'DASHBOARD' | 'ASSET' | 'DEVICE' | 'ALARM' | 'RULE_CHAIN' | 'RULE_NODE' | 'ENTITY_VIEW' | 'WIDGETS_BUNDLE' | 'WIDGET_TYPE' | 'TENANT_PROFILE' | 'DEVICE_PROFILE' | 'ASSET_PROFILE' | 'API_USAGE_STATE' | 'TB_RESOURCE' | 'OTA_PACKAGE' | 'EDGE' | 'RPC' | 'QUEUE' | 'NOTIFICATION_TARGET' | 'NOTIFICATION_TEMPLATE' | 'NOTIFICATION_REQUEST' | 'NOTIFICATION' | 'NOTIFICATION_RULE' | 'QUEUE_STATS' | 'OAUTH2_CLIENT' | 'DOMAIN' | 'MOBILE_APP' | 'MOBILE_APP_BUNDLE' | 'CALCULATED_FIELD' | 'JOB' | 'ADMIN_SETTINGS' | 'AI_MODEL' | 'API_KEY'
      - `entityNameFilter` string
    - EntityTypeFilter
      - `type` string, required
      - `entityType` 'TENANT' | 'CUSTOMER' | 'USER' | 'DASHBOARD' | 'ASSET' | 'DEVICE' | 'ALARM' | 'RULE_CHAIN' | 'RULE_NODE' | 'ENTITY_VIEW' | 'WIDGETS_BUNDLE' | 'WIDGET_TYPE' | 'TENANT_PROFILE' | 'DEVICE_PROFILE' | 'ASSET_PROFILE' | 'API_USAGE_STATE' | 'TB_RESOURCE' | 'OTA_PACKAGE' | 'EDGE' | 'RPC' | 'QUEUE' | 'NOTIFICATION_TARGET' | 'NOTIFICATION_TEMPLATE' | 'NOTIFICATION_REQUEST' | 'NOTIFICATION' | 'NOTIFICATION_RULE' | 'QUEUE_STATS' | 'OAUTH2_CLIENT' | 'DOMAIN' | 'MOBILE_APP' | 'MOBILE_APP_BUNDLE' | 'CALCULATED_FIELD' | 'JOB' | 'ADMIN_SETTINGS' | 'AI_MODEL' | 'API_KEY'
    - EntityViewSearchQueryFilter
      - `type` string, required
      - `rootEntity` AliasEntityId
        - `aliasEntityType` 'CURRENT_CUSTOMER' | 'CURRENT_TENANT' | 'CURRENT_USER' | 'CURRENT_USER_OWNER'
        - `id` string, uuid, required — ID of the entity, time-based UUID v1
        - `entityType` 'TENANT' | 'CUSTOMER' | 'USER' | 'DASHBOARD' | 'ASSET' | 'DEVICE' | 'ALARM' | 'RULE_CHAIN' | 'RULE_NODE' | 'ENTITY_VIEW' | 'WIDGETS_BUNDLE' | 'WIDGET_TYPE' | 'TENANT_PROFILE' | 'DEVICE_PROFILE' | 'ASSET_PROFILE' | 'API_USAGE_STATE' | 'TB_RESOURCE' | 'OTA_PACKAGE' | 'EDGE' | 'RPC' | 'QUEUE' | 'NOTIFICATION_TARGET' | 'NOTIFICATION_TEMPLATE' | 'NOTIFICATION_REQUEST' | 'NOTIFICATION' | 'NOTIFICATION_RULE' | 'QUEUE_STATS' | 'OAUTH2_CLIENT' | 'DOMAIN' | 'MOBILE_APP' | 'MOBILE_APP_BUNDLE' | 'CALCULATED_FIELD' | 'JOB' | 'ADMIN_SETTINGS' | 'AI_MODEL' | 'API_KEY', required
      - `relationType` string
      - `direction` 'FROM' | 'TO'
      - `maxLevel` integer
      - `fetchLastLevelOnly` boolean
      - `rootStateEntity` boolean
      - `defaultStateEntity` AliasEntityId
        - `aliasEntityType` 'CURRENT_CUSTOMER' | 'CURRENT_TENANT' | 'CURRENT_USER' | 'CURRENT_USER_OWNER'
        - `id` string, uuid, required — ID of the entity, time-based UUID v1
        - `entityType` 'TENANT' | 'CUSTOMER' | 'USER' | 'DASHBOARD' | 'ASSET' | 'DEVICE' | 'ALARM' | 'RULE_CHAIN' | 'RULE_NODE' | 'ENTITY_VIEW' | 'WIDGETS_BUNDLE' | 'WIDGET_TYPE' | 'TENANT_PROFILE' | 'DEVICE_PROFILE' | 'ASSET_PROFILE' | 'API_USAGE_STATE' | 'TB_RESOURCE' | 'OTA_PACKAGE' | 'EDGE' | 'RPC' | 'QUEUE' | 'NOTIFICATION_TARGET' | 'NOTIFICATION_TEMPLATE' | 'NOTIFICATION_REQUEST' | 'NOTIFICATION' | 'NOTIFICATION_RULE' | 'QUEUE_STATS' | 'OAUTH2_CLIENT' | 'DOMAIN' | 'MOBILE_APP' | 'MOBILE_APP_BUNDLE' | 'CALCULATED_FIELD' | 'JOB' | 'ADMIN_SETTINGS' | 'AI_MODEL' | 'API_KEY', required
      - `entityViewTypes` string[]
    - EntityViewTypeFilter
      - `type` string, required
      - `entityViewType` string
      - `entityViewTypes` string[]
      - `entityViewNameFilter` string
    - RelationsQueryFilter
      - `type` string, required
      - `rootEntity` AliasEntityId
        - `aliasEntityType` 'CURRENT_CUSTOMER' | 'CURRENT_TENANT' | 'CURRENT_USER' | 'CURRENT_USER_OWNER'
        - `id` string, uuid, required — ID of the entity, time-based UUID v1
        - `entityType` 'TENANT' | 'CUSTOMER' | 'USER' | 'DASHBOARD' | 'ASSET' | 'DEVICE' | 'ALARM' | 'RULE_CHAIN' | 'RULE_NODE' | 'ENTITY_VIEW' | 'WIDGETS_BUNDLE' | 'WIDGET_TYPE' | 'TENANT_PROFILE' | 'DEVICE_PROFILE' | 'ASSET_PROFILE' | 'API_USAGE_STATE' | 'TB_RESOURCE' | 'OTA_PACKAGE' | 'EDGE' | 'RPC' | 'QUEUE' | 'NOTIFICATION_TARGET' | 'NOTIFICATION_TEMPLATE' | 'NOTIFICATION_REQUEST' | 'NOTIFICATION' | 'NOTIFICATION_RULE' | 'QUEUE_STATS' | 'OAUTH2_CLIENT' | 'DOMAIN' | 'MOBILE_APP' | 'MOBILE_APP_BUNDLE' | 'CALCULATED_FIELD' | 'JOB' | 'ADMIN_SETTINGS' | 'AI_MODEL' | 'API_KEY', required
      - `multiRootEntitiesType` 'TENANT' | 'CUSTOMER' | 'USER' | 'DASHBOARD' | 'ASSET' | 'DEVICE' | 'ALARM' | 'RULE_CHAIN' | 'RULE_NODE' | 'ENTITY_VIEW' | 'WIDGETS_BUNDLE' | 'WIDGET_TYPE' | 'TENANT_PROFILE' | 'DEVICE_PROFILE' | 'ASSET_PROFILE' | 'API_USAGE_STATE' | 'TB_RESOURCE' | 'OTA_PACKAGE' | 'EDGE' | 'RPC' | 'QUEUE' | 'NOTIFICATION_TARGET' | 'NOTIFICATION_TEMPLATE' | 'NOTIFICATION_REQUEST' | 'NOTIFICATION' | 'NOTIFICATION_RULE' | 'QUEUE_STATS' | 'OAUTH2_CLIENT' | 'DOMAIN' | 'MOBILE_APP' | 'MOBILE_APP_BUNDLE' | 'CALCULATED_FIELD' | 'JOB' | 'ADMIN_SETTINGS' | 'AI_MODEL' | 'API_KEY'
      - `multiRootEntityIds` string[]
      - `direction` 'FROM' | 'TO'
      - `filters` RelationEntityTypeFilter[]
        - `relationType` string — Type of the relation between root entity and other entity (e.g. 'Contains' or 'Manages').
        - `entityTypes` string[] — Array of entity types to filter the related entities (e.g. 'DEVICE', 'ASSET').
        - `negate` boolean — Negate relation type between root entity and other entity.
      - `maxLevel` integer
      - `fetchLastLevelOnly` boolean
      - `negate` boolean
      - `rootStateEntity` boolean
      - `defaultStateEntity` AliasEntityId
        - `aliasEntityType` 'CURRENT_CUSTOMER' | 'CURRENT_TENANT' | 'CURRENT_USER' | 'CURRENT_USER_OWNER'
        - `id` string, uuid, required — ID of the entity, time-based UUID v1
        - `entityType` 'TENANT' | 'CUSTOMER' | 'USER' | 'DASHBOARD' | 'ASSET' | 'DEVICE' | 'ALARM' | 'RULE_CHAIN' | 'RULE_NODE' | 'ENTITY_VIEW' | 'WIDGETS_BUNDLE' | 'WIDGET_TYPE' | 'TENANT_PROFILE' | 'DEVICE_PROFILE' | 'ASSET_PROFILE' | 'API_USAGE_STATE' | 'TB_RESOURCE' | 'OTA_PACKAGE' | 'EDGE' | 'RPC' | 'QUEUE' | 'NOTIFICATION_TARGET' | 'NOTIFICATION_TEMPLATE' | 'NOTIFICATION_REQUEST' | 'NOTIFICATION' | 'NOTIFICATION_RULE' | 'QUEUE_STATS' | 'OAUTH2_CLIENT' | 'DOMAIN' | 'MOBILE_APP' | 'MOBILE_APP_BUNDLE' | 'CALCULATED_FIELD' | 'JOB' | 'ADMIN_SETTINGS' | 'AI_MODEL' | 'API_KEY', required
      - `multiRoot` boolean
    - SingleEntityFilter
      - `type` string, required
      - `singleEntity` AliasEntityId
        - `aliasEntityType` 'CURRENT_CUSTOMER' | 'CURRENT_TENANT' | 'CURRENT_USER' | 'CURRENT_USER_OWNER'
        - `id` string, uuid, required — ID of the entity, time-based UUID v1
        - `entityType` 'TENANT' | 'CUSTOMER' | 'USER' | 'DASHBOARD' | 'ASSET' | 'DEVICE' | 'ALARM' | 'RULE_CHAIN' | 'RULE_NODE' | 'ENTITY_VIEW' | 'WIDGETS_BUNDLE' | 'WIDGET_TYPE' | 'TENANT_PROFILE' | 'DEVICE_PROFILE' | 'ASSET_PROFILE' | 'API_USAGE_STATE' | 'TB_RESOURCE' | 'OTA_PACKAGE' | 'EDGE' | 'RPC' | 'QUEUE' | 'NOTIFICATION_TARGET' | 'NOTIFICATION_TEMPLATE' | 'NOTIFICATION_REQUEST' | 'NOTIFICATION' | 'NOTIFICATION_RULE' | 'QUEUE_STATS' | 'OAUTH2_CLIENT' | 'DOMAIN' | 'MOBILE_APP' | 'MOBILE_APP_BUNDLE' | 'CALCULATED_FIELD' | 'JOB' | 'ADMIN_SETTINGS' | 'AI_MODEL' | 'API_KEY', required
  - `keyFilters` KeyFilter[]
    - `key` EntityKey
      - `type` 'ATTRIBUTE' | 'CLIENT_ATTRIBUTE' | 'SHARED_ATTRIBUTE' | 'SERVER_ATTRIBUTE' | 'TIME_SERIES' | 'ENTITY_FIELD' | 'ALARM_FIELD'
      - `key` string
    - `valueType` 'STRING' | 'NUMERIC' | 'BOOLEAN' | 'DATE_TIME'
    - `predicate` union
      - BooleanFilterPredicate
        - `type` string, required
        - `operation` 'EQUAL' | 'NOT_EQUAL'
        - `value` FilterPredicateValueBoolean
          - `defaultValue` boolean
          - `userValue` boolean
          - `dynamicValue` DynamicValueBoolean
            - `sourceType` 'CURRENT_TENANT' | 'CURRENT_CUSTOMER' | 'CURRENT_USER' | 'CURRENT_DEVICE'
            - `sourceAttribute` string
            - `inherit` boolean
            - `resolvedValue` boolean
      - ComplexFilterPredicate
        - `type` string, required
        - `operation` 'AND' | 'OR'
        - `predicates` union[]
          - union
            - BooleanFilterPredicate
              - …
            - ComplexFilterPredicate — recursive
            - NumericFilterPredicate
              - …
            - StringFilterPredicate
              - …
      - NumericFilterPredicate
        - `type` string, required
        - `operation` 'EQUAL' | 'NOT_EQUAL' | 'GREATER' | 'LESS' | 'GREATER_OR_EQUAL' | 'LESS_OR_EQUAL'
        - `value` FilterPredicateValueDouble
          - `defaultValue` number, double
          - `userValue` number, double
          - `dynamicValue` DynamicValueDouble
            - `sourceType` 'CURRENT_TENANT' | 'CURRENT_CUSTOMER' | 'CURRENT_USER' | 'CURRENT_DEVICE'
            - `sourceAttribute` string
            - `inherit` boolean
            - `resolvedValue` number, double
      - StringFilterPredicate
        - `type` string, required
        - `operation` 'EQUAL' | 'NOT_EQUAL' | 'STARTS_WITH' | 'ENDS_WITH' | 'CONTAINS' | 'NOT_CONTAINS' | 'IN' | 'NOT_IN'
        - `value` FilterPredicateValueString
          - `defaultValue` string
          - `userValue` string
          - `dynamicValue` DynamicValueString
            - `sourceType` 'CURRENT_TENANT' | 'CURRENT_CUSTOMER' | 'CURRENT_USER' | 'CURRENT_DEVICE'
            - `sourceAttribute` string
            - `inherit` boolean
            - `resolvedValue` string
        - `ignoreCase` boolean
  - `pageLink` AlarmDataPageLink
    - `startTs` integer
    - `endTs` integer
    - `timeWindow` integer
    - `typeList` string[]
    - `statusList` string[]
    - `severityList` string[]
    - `searchPropagatedAlarms` boolean
    - `assigneeId` UserId
      - `id` string, uuid, required — ID of the entity, time-based UUID v1
      - `entityType` 'USER', required — string
    - `pageSize` integer
    - `page` integer
    - `textSearch` string
    - `sortOrder` EntityDataSortOrder
      - `key` EntityKey
        - `type` 'ATTRIBUTE' | 'CLIENT_ATTRIBUTE' | 'SHARED_ATTRIBUTE' | 'SERVER_ATTRIBUTE' | 'TIME_SERIES' | 'ENTITY_FIELD' | 'ALARM_FIELD'
        - `key` string
      - `direction` 'ASC' | 'DESC'
    - `dynamic` boolean
  - `entityFields` EntityKey[]
    - `type` 'ATTRIBUTE' | 'CLIENT_ATTRIBUTE' | 'SHARED_ATTRIBUTE' | 'SERVER_ATTRIBUTE' | 'TIME_SERIES' | 'ENTITY_FIELD' | 'ALARM_FIELD'
    - `key` string
  - `latestValues` EntityKey[]
    - `type` 'ATTRIBUTE' | 'CLIENT_ATTRIBUTE' | 'SHARED_ATTRIBUTE' | 'SERVER_ATTRIBUTE' | 'TIME_SERIES' | 'ENTITY_FIELD' | 'ALARM_FIELD'
    - `key` string
  - `alarmFields` EntityKey[]
    - `type` 'ATTRIBUTE' | 'CLIENT_ATTRIBUTE' | 'SHARED_ATTRIBUTE' | 'SERVER_ATTRIBUTE' | 'TIME_SERIES' | 'ENTITY_FIELD' | 'ALARM_FIELD'
    - `key` string

## Response `200`

OK

- PageDataAlarmData
  - `data` AlarmData[] — Array of the entities
    - `entityId` EntityId
      - `id` string, uuid, required — ID of the entity, time-based UUID v1
      - `entityType` 'TENANT' | 'CUSTOMER' | 'USER' | 'DASHBOARD' | 'ASSET' | 'DEVICE' | 'ALARM' | 'RULE_CHAIN' | 'RULE_NODE' | 'ENTITY_VIEW' | 'WIDGETS_BUNDLE' | 'WIDGET_TYPE' | 'TENANT_PROFILE' | 'DEVICE_PROFILE' | 'ASSET_PROFILE' | 'API_USAGE_STATE' | 'TB_RESOURCE' | 'OTA_PACKAGE' | 'EDGE' | 'RPC' | 'QUEUE' | 'NOTIFICATION_TARGET' | 'NOTIFICATION_TEMPLATE' | 'NOTIFICATION_REQUEST' | 'NOTIFICATION' | 'NOTIFICATION_RULE' | 'QUEUE_STATS' | 'OAUTH2_CLIENT' | 'DOMAIN' | 'MOBILE_APP' | 'MOBILE_APP_BUNDLE' | 'CALCULATED_FIELD' | 'JOB' | 'ADMIN_SETTINGS' | 'AI_MODEL' | 'API_KEY', required
    - `latest` object
    - `id` AlarmId
      - `id` string, uuid, required — ID of the entity, time-based UUID v1
      - `entityType` 'ALARM', required — string
    - `createdTime` integer — Timestamp of the alarm creation, in milliseconds
    - `tenantId` TenantId
      - `id` string, uuid, required — ID of the entity, time-based UUID v1
      - `entityType` 'TENANT', required — string
    - `customerId` CustomerId
      - `id` string, uuid, required — ID of the entity, time-based UUID v1
      - `entityType` 'CUSTOMER', required — string
    - `type` string, required — representing type of the Alarm
    - `originator` EntityId, required
      - `id` string, uuid, required — ID of the entity, time-based UUID v1
      - `entityType` 'TENANT' | 'CUSTOMER' | 'USER' | 'DASHBOARD' | 'ASSET' | 'DEVICE' | 'ALARM' | 'RULE_CHAIN' | 'RULE_NODE' | 'ENTITY_VIEW' | 'WIDGETS_BUNDLE' | 'WIDGET_TYPE' | 'TENANT_PROFILE' | 'DEVICE_PROFILE' | 'ASSET_PROFILE' | 'API_USAGE_STATE' | 'TB_RESOURCE' | 'OTA_PACKAGE' | 'EDGE' | 'RPC' | 'QUEUE' | 'NOTIFICATION_TARGET' | 'NOTIFICATION_TEMPLATE' | 'NOTIFICATION_REQUEST' | 'NOTIFICATION' | 'NOTIFICATION_RULE' | 'QUEUE_STATS' | 'OAUTH2_CLIENT' | 'DOMAIN' | 'MOBILE_APP' | 'MOBILE_APP_BUNDLE' | 'CALCULATED_FIELD' | 'JOB' | 'ADMIN_SETTINGS' | 'AI_MODEL' | 'API_KEY', required
    - `severity` 'CRITICAL' | 'MAJOR' | 'MINOR' | 'WARNING' | 'INDETERMINATE', required — Alarm severity
    - `acknowledged` boolean, required — Acknowledged
    - `cleared` boolean, required — Cleared
    - `assigneeId` UserId
      - `id` string, uuid, required — ID of the entity, time-based UUID v1
      - `entityType` 'USER', required — string
    - `startTs` integer — Timestamp of the alarm start time, in milliseconds
    - `endTs` integer — Timestamp of the alarm end time(last time update), in milliseconds
    - `ackTs` integer — Timestamp of the alarm acknowledgement, in milliseconds
    - `clearTs` integer — Timestamp of the alarm clearing, in milliseconds
    - `assignTs` integer — Timestamp of the alarm assignment, in milliseconds
    - `propagate` boolean — Propagation flag to specify if alarm should be propagated to parent entities of alarm originator
    - `propagateToOwner` boolean — Propagation flag to specify if alarm should be propagated to the owner (tenant or customer) of alarm originator
    - `propagateToTenant` boolean — Propagation flag to specify if alarm should be propagated to the tenant entity
    - `propagateRelationTypes` string[] — JSON array of relation types that should be used for propagation. By default, 'propagateRelationTypes' array is empty which means that the alarm will be propagated based on any relation type to parent entities. This parameter should be used only in case when 'propagate' parameter is set to true, otherwise, 'propagateRelationTypes' array will be ignored.
    - `originatorName` string — Alarm originator name
    - `originatorLabel` string — Alarm originator label
    - `originatorDisplayName` string — Originator display name
    - `assignee` AlarmAssignee
      - `id` UserId
        - `id` string, uuid, required — ID of the entity, time-based UUID v1
        - `entityType` 'USER', required — string
      - `firstName` string
      - `lastName` string
      - `email` string
    - `name` string, required — representing type of the Alarm
    - `status` 'ACTIVE_UNACK' | 'ACTIVE_ACK' | 'CLEARED_UNACK' | 'CLEARED_ACK', required — status of the Alarm
    - `details` unknown
  - `totalPages` integer — Total number of available pages. Calculated based on the 'pageSize' request parameter and total number of entities that match search criteria
  - `totalElements` integer — Total number of elements in all available pages
  - `hasNext` boolean — 'false' value indicates the end of the result set

---

[API](https://skmtc.net/thingsboard/apis/thingsboard-rest-api.md) · [All operations](https://skmtc.net/thingsboard/apis/thingsboard-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/thingsboard/thingsboard-rest-api/revisions/40169ccdec5c/schema)
