Rhombus Systems Rules Webservice API

The Rules Webservice API from Rhombus Systems — 10 operation(s) for rules webservice.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/rhombus-systems-rules-webservice-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

rhombus-systems-rules-webservice-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  contact:
    email: developer@rhombussystems.com
  description: 'This API is for use by Rhombus customers and partners.


    ## Authentication


    All requests require two headers:

    - `x-auth-scheme` — The authentication scheme identifier. Use `api-token` for standard API key auth, or `partner-api-token` for partner API auth.

    - `x-auth-apikey` — Your Rhombus API key.


    Example:

    ```

    POST /api/camera/getMinimalCameraStateList

    x-auth-scheme: api-token

    x-auth-apikey: YOUR_API_KEY

    Content-Type: application/json

    ```'
  title: Rhombus Rules Webservice API
  version: '1.0'
servers:
- description: Production Server
  url: https://api2.rhombussystems.com
security:
- ApiKeyAuth: []
tags:
- name: Rules Webservice
paths:
  /api/rules/createRule:
    post:
      description: Create a rule
      operationId: createRule
      parameters:
      - description: Authentication scheme identifier. Use `api-token` for standard API key authentication, `partner-api-token` for partner API key authentication. Must be paired with the `x-auth-apikey` header containing your API key.
        example: api-token
        in: header
        name: x-auth-scheme
        required: true
        schema:
          type: string
          default: api-token
          enum:
          - api-token
          - api
          - partner-api-token
          - partner-api
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Rules_CreateRuleWSRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Rules_CreateRuleWSResponse'
          description: OK
      summary: Create rule
      tags:
      - Rules Webservice
  /api/rules/deleteIncomingWebhookToken:
    post:
      description: Delete an incoming webhook trigger token so its URL no longer fires rules
      operationId: deleteIncomingWebhookToken
      parameters:
      - description: Authentication scheme identifier. Use `api-token` for standard API key authentication, `partner-api-token` for partner API key authentication. Must be paired with the `x-auth-apikey` header containing your API key.
        example: api-token
        in: header
        name: x-auth-scheme
        required: true
        schema:
          type: string
          default: api-token
          enum:
          - api-token
          - api
          - partner-api-token
          - partner-api
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Rules_DeleteIncomingWebhookTokenWSRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Rules_DeleteIncomingWebhookTokenWSResponse'
          description: OK
      summary: Delete incoming webhook trigger token
      tags:
      - Rules Webservice
  /api/rules/deleteRule:
    post:
      description: Delete a rule
      operationId: deleteRule
      parameters:
      - description: Authentication scheme identifier. Use `api-token` for standard API key authentication, `partner-api-token` for partner API key authentication. Must be paired with the `x-auth-apikey` header containing your API key.
        example: api-token
        in: header
        name: x-auth-scheme
        required: true
        schema:
          type: string
          default: api-token
          enum:
          - api-token
          - api
          - partner-api-token
          - partner-api
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Rules_DeleteRuleWSRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Rules_DeleteRuleWSResponse'
          description: OK
      summary: Delete rule
      tags:
      - Rules Webservice
  /api/rules/deleteRulePauseSetting:
    post:
      description: Delete a rule pause setting
      operationId: deleteRulePauseSetting
      parameters:
      - description: Authentication scheme identifier. Use `api-token` for standard API key authentication, `partner-api-token` for partner API key authentication. Must be paired with the `x-auth-apikey` header containing your API key.
        example: api-token
        in: header
        name: x-auth-scheme
        required: true
        schema:
          type: string
          default: api-token
          enum:
          - api-token
          - api
          - partner-api-token
          - partner-api
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Rules_DeleteRulePauseSettingWSRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Rules_DeleteRulePauseSettingWSResponse'
          description: OK
      summary: Delete rule pause setting
      tags:
      - Rules Webservice
  /api/rules/generateIncomingWebhookToken:
    post:
      description: Generate a token and public URL that fires INCOMING_WEBHOOK_EVENT rule triggers when requested
      operationId: generateIncomingWebhookToken
      parameters:
      - description: Authentication scheme identifier. Use `api-token` for standard API key authentication, `partner-api-token` for partner API key authentication. Must be paired with the `x-auth-apikey` header containing your API key.
        example: api-token
        in: header
        name: x-auth-scheme
        required: true
        schema:
          type: string
          default: api-token
          enum:
          - api-token
          - api
          - partner-api-token
          - partner-api
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Rules_GenerateIncomingWebhookTokenWSRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Rules_GenerateIncomingWebhookTokenWSResponse'
          description: OK
      summary: Generate incoming webhook trigger token
      tags:
      - Rules Webservice
  /api/rules/getRulePauseSettings:
    post:
      description: Get the current and planned rule pause details
      operationId: getRulePauseSettings
      parameters:
      - description: Authentication scheme identifier. Use `api-token` for standard API key authentication, `partner-api-token` for partner API key authentication. Must be paired with the `x-auth-apikey` header containing your API key.
        example: api-token
        in: header
        name: x-auth-scheme
        required: true
        schema:
          type: string
          default: api-token
          enum:
          - api-token
          - api
          - partner-api-token
          - partner-api
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Rules_GetRulePauseSettingsWSRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Rules_GetRulePauseSettingsResponse'
          description: OK
      summary: Get rule pause settings
      tags:
      - Rules Webservice
  /api/rules/getRulesFiltered:
    post:
      description: Get rules with Uuid and Type filtering
      operationId: getRulesFiltered
      parameters:
      - description: Authentication scheme identifier. Use `api-token` for standard API key authentication, `partner-api-token` for partner API key authentication. Must be paired with the `x-auth-apikey` header containing your API key.
        example: api-token
        in: header
        name: x-auth-scheme
        required: true
        schema:
          type: string
          default: api-token
          enum:
          - api-token
          - api
          - partner-api-token
          - partner-api
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Rules_records_GetRulesFilteredWSRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Rules_GetRulesForOrgWSResponse'
          description: OK
      summary: Get rules filtered
      tags:
      - Rules Webservice
  /api/rules/getRulesForOrg:
    post:
      description: List rules for org
      operationId: getRulesForOrg
      parameters:
      - description: Authentication scheme identifier. Use `api-token` for standard API key authentication, `partner-api-token` for partner API key authentication. Must be paired with the `x-auth-apikey` header containing your API key.
        example: api-token
        in: header
        name: x-auth-scheme
        required: true
        schema:
          type: string
          default: api-token
          enum:
          - api-token
          - api
          - partner-api-token
          - partner-api
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Rules_GetRulesForOrgWSRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Rules_GetRulesForOrgWSResponse'
          description: OK
      summary: Get rules for org
      tags:
      - Rules Webservice
  /api/rules/pauseRule:
    post:
      description: Pause rule
      operationId: pauseRule
      parameters:
      - description: Authentication scheme identifier. Use `api-token` for standard API key authentication, `partner-api-token` for partner API key authentication. Must be paired with the `x-auth-apikey` header containing your API key.
        example: api-token
        in: header
        name: x-auth-scheme
        required: true
        schema:
          type: string
          default: api-token
          enum:
          - api-token
          - api
          - partner-api-token
          - partner-api
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Rules_PauseRuleWSRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Rules_PauseRuleWSResponse'
          description: OK
      summary: Pause rule
      tags:
      - Rules Webservice
  /api/rules/updateRule:
    post:
      description: Update a rule
      operationId: updateRule
      parameters:
      - description: Authentication scheme identifier. Use `api-token` for standard API key authentication, `partner-api-token` for partner API key authentication. Must be paired with the `x-auth-apikey` header containing your API key.
        example: api-token
        in: header
        name: x-auth-scheme
        required: true
        schema:
          type: string
          default: api-token
          enum:
          - api-token
          - api
          - partner-api-token
          - partner-api
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Rules_UpdateRuleWSRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Rules_UpdateRuleWSResponse'
          description: OK
      summary: Update rule
      tags:
      - Rules Webservice
components:
  schemas:
    Rules_DeleteRulePauseSettingWSRequest:
      type: object
      description: Request object for deleting a rule pause setting.
      properties:
        uuid:
          type:
          - string
          - 'null'
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
    ConnectAudioDeviceToMobileAppActionType:
      type: object
      properties:
        audioDeviceUuid:
          type:
          - string
          - 'null'
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
        deviceType:
          $ref: '#/components/schemas/DeviceTypeEnum'
        doorUuid:
          type:
          - string
          - 'null'
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
        targetUserUuids:
          type:
          - array
          - 'null'
          items:
            type:
            - string
            - 'null'
            format: RUUID
            description: base 64 (url-safe) uuid string
            example: AAAAAAAAAAAAAAAAAAAAAA
    RuleType:
      type: object
      description: Updated rule data
      properties:
        action:
          $ref: '#/components/schemas/RuleActionType'
        conjunction:
          $ref: '#/components/schemas/RuleTriggerConjunctionEnum'
        name:
          type:
          - string
          - 'null'
        orgUuid:
          type:
          - string
          - 'null'
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
        ownerUuid:
          type:
          - string
          - 'null'
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
        ruleFilters:
          $ref: '#/components/schemas/RuleFilterType'
        ruleType:
          $ref: '#/components/schemas/RuleTypeEnum'
        triggers:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/BaseRuleTriggerType'
        uuid:
          type:
          - string
          - 'null'
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
    CustomLLMEventRuleTriggerType:
      type:
      - object
      - 'null'
      allOf:
      - type: object
        properties:
          deviceFacetUuids:
            type:
            - array
            - 'null'
            items:
              type:
              - string
              - 'null'
              format: DeviceFacetUuid
              description: RUUID with optional appended facet information
              example: AAAAAAAAAAAAAAAAAAAAAA.v0
          promptUuid:
            type:
            - string
            - 'null'
            format: RUUID
            description: base 64 (url-safe) uuid string
            example: AAAAAAAAAAAAAAAAAAAAAA
      properties:
        type:
          $ref: '#/components/schemas/RuleTriggerTypeEnum'
    PointType:
      type: object
      properties:
        x:
          type:
          - integer
          - 'null'
          format: int32
        y:
          type:
          - integer
          - 'null'
          format: int32
    Rules_GetRulesForOrgWSRequest:
      type: object
      description: Request object for getting rules for an organization.
    Rules_records_GetRulesFilteredWSRequest:
      type: object
      description: Request object for getting filtered rules.
      properties:
        associatedUuids:
          type:
          - array
          - 'null'
          description: List of associated UUIDs to filter by
          items:
            type:
            - string
            - 'null'
            format: RUUID
            description: base 64 (url-safe) uuid string
            example: AAAAAAAAAAAAAAAAAAAAAA
        ruleTypeFilter:
          type:
          - array
          - 'null'
          description: List of rule types to filter by
          items:
            $ref: '#/components/schemas/RuleTypeEnum'
    IncomingWebhookRuleTriggerType:
      type:
      - object
      - 'null'
      allOf:
      - type: object
        properties:
          displayName:
            type:
            - string
            - 'null'
          webhookToken:
            type:
            - string
            - 'null'
            format: RUUID
            description: base 64 (url-safe) uuid string
            example: AAAAAAAAAAAAAAAAAAAAAA
      properties:
        type:
          $ref: '#/components/schemas/RuleTriggerTypeEnum'
    RuleTypeEnum:
      type: string
      enum:
      - BUTTON_DEFINED
      - USER_DEFINED
      - DOORBELL_CAMERA_DEFINED
      - DOOR_CONTROLLER_DEFINED
      - LOCKDOWN_PLAN_DEFINED
      - CUSTOM_LLM_DEFINED
      - ROBOT_DEFINED
      - SCHEDULED_REPORT_DEFINED
    ScheduledIntervalType:
      type: object
      description: Map of location UUIDs to snooze intervals
      properties:
        durationSecs:
          type:
          - integer
          - 'null'
          format: int64
        timestampSec:
          type:
          - integer
          - 'null'
          format: int64
        uuid:
          type:
          - string
          - 'null'
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
    AccessStateOverrideExpirationStrategyEnum:
      type: string
      enum:
      - TIME_DELAY
      - TIME_OF_DAY_LOCAL
      - NONE
    ChangeComponentCompositeAccessStateActionType:
      type: object
      properties:
        accessState:
          $ref: '#/components/schemas/AccessControlledDoorStateEnumType'
        alwaysCreateOverrideIfNoFirstIn:
          type:
          - boolean
          - 'null'
        componentCompositeUuid:
          type:
          - string
          - 'null'
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
        expirationStrategy:
          $ref: '#/components/schemas/AccessStateOverrideExpirationStrategyEnum'
        expireTimeDelaySeconds:
          type:
          - integer
          - 'null'
          format: int64
        expireTimeOfDayLocalSeconds:
          type:
          - integer
          - 'null'
          format: int64
        useFirstInRulesIfPossible:
          type:
          - boolean
          - 'null'
        version:
          type:
          - integer
          - 'null'
          format: int32
          readOnly: true
    ReportLookbackTypeEnum:
      type: string
      enum:
      - ROLLING
      - PREVIOUS_DAY
      - PREVIOUS_WEEK
      - PREVIOUS_MONTH
    EnableDisableAudioRecordActionType:
      type: object
      properties:
        audioDeviceUuid:
          type:
          - string
          - 'null'
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
        enable:
          type:
          - boolean
          - 'null'
    IntegrationNotificationActionType:
      type: object
      properties:
        integration:
          $ref: '#/components/schemas/IntegrationEnum'
        notificationEntity:
          type:
          - string
          - 'null'
        notificationTarget:
          type:
          - string
          - 'null'
    NoOpAction:
      type:
      - object
      - 'null'
      allOf: []
      properties:
        deviceUuid:
          type:
          - string
          - 'null'
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
        type:
          $ref: '#/components/schemas/RobotActionTypeEnum'
    Rules_DeleteRuleWSRequest:
      type: object
      description: Request object for deleting a rule.
      properties:
        ruleUuid:
          type:
          - string
          - 'null'
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
    SensorValType:
      type: object
      properties:
        sensorBoolean:
          type:
          - boolean
          - 'null'
        sensorDouble:
          type:
          - number
          - 'null'
          format: double
        sensorLong:
          type:
          - integer
          - 'null'
          format: int64
    Rules_GenerateIncomingWebhookTokenWSRequest:
      type: object
      description: Request object for generating an incoming webhook trigger token.
      properties:
        displayName:
          type:
          - string
          - 'null'
          description: Optional display name for the webhook token, shown in api token listings
    CreateAlarmTriggerTypeEnum:
      type: string
      enum:
      - PANIC_BUTTON
      - ALARM_INTEGRATION
    ComponentRelayOutputTypeEnum:
      type: string
      enum:
      - TRANSIENT
      - STEADY
    ActivityEnum:
      type: string
      enum:
      - SOUND_LOUD
      - SOUND_GUN_SHOT
      - TAMPER
      - VISUAL_TAMPER
      - MOTION_TAMPER
      - MOTION
      - MOTION_HUMAN
      - MOTION_CAR
      - MOTION_ANIMAL
      - FACE
      - FACE_IDENTIFIED
      - FACE_UNIDENTIFIED
      - FACE_BLACKLISTED
      - FACE_ALERT
      - POSE_ANOMALOUS
      - POSE_FALL
      - LICENSEPLATE
      - LICENSEPLATE_IDENTIFIED
      - LICENSEPLATE_UNIDENTIFIED
      - LICENSEPLATE_ALERT
      - LICENSEPLATE_BLACKLISTED
      - LICENSEPLATE_TRUSTED
      - PEOPLECOUNT_HIGH
      - PEOPLECOUNT_HIGH_RESET
      - PEOPLECOUNT_LOW
      - PEOPLECOUNT_LOW_RESET
      - HUMAN_ENTER
      - HUMAN_EXIT
      - CAR_ENTER
      - CAR_EXIT
      - TEMPERATURE_EXCEEDED_HIGH
      - TEMPERATURE_EXCEEDED_LOW
      - HUMIDITY_EXCEEDED_HIGH
      - HUMIDITY_EXCEEDED_LOW
      - PM25_EXCEEDED_HIGH
      - TVOC_EXCEEDED_HIGH
      - ETOH_EXCEEDED_HIGH
      - IAQ_EXCEEDED_HIGH
      - CO2_EXCEEDED_HIGH
      - CO2_EXCEEDED_LOW
      - PROBE_TEMPERATURE_EXCEEDED_HIGH
      - PROBE_TEMPERATURE_EXCEEDED_LOW
      - PROBE_DISCONNECTED
      - PROBE_CONNECTED
      - HEAT_INDEX_EXCEEDED_HIGH
      - PRESSURE_EXCEEDED_HIGH
      - PRESSURE_EXCEEDED_LOW
      - PM10_EXCEEDED_HIGH
      - PM40_EXCEEDED_HIGH
      - PM100_EXCEEDED_HIGH
      - VOC_IDX_EXCEEDED_HIGH
      - NOX_IDX_EXCEEDED_HIGH
      - FORMALDEHYDE_EXCEEDED_HIGH
      - CARBON_MONOXIDE_EXCEEDED_HIGH
      - AQI_EXCEEDED_HIGH
      - DOOR_AJAR
      - DOOR_OPENED
      - DOOR_CLOSED
      - BUTTON_SINGLE_PRESSED
      - BUTTON_DOUBLE_PRESSED
      - BUTTON_LONG_PRESSED
      - TAG_ARRIVED
      - TAG_DEPARTED
      - TAG_MOVED
      - TAG_POSITIONING_CHANGED
      - TAG_BOUNDARY_INGRESS
      - TAG_BOUNDARY_EGRESS
      - TAG_PANIC
      - BADGE_AUTHORIZED
      - BADGE_UNAUTHORIZED
      - BADGE_UNAUTHORIZED_V2
      - BADGE_AJAR
      - BADGE_MANUAL
      - BADGE_FORCED_OPEN
      - BADGE_LOCKDOWN
      - BADGE_REQUEST_TO_EXIT
      - BADGE_DURESS
      - BADGE_SECURITY_BREACH
      - BADGE_TAMPER
      - BADGE_FACE_MISMATCH
      - POS_ORDER
      - GUN_DETECT_EVENT
      - IOT_SOUND_AGGRESSION
      - IOT_SOUND_HELP
      - IOT_AIR_CO
      - IOT_AIR_CO2
      - IOT_AIR_MASKING
      - IOT_AIR_THC
      - IOT_AIR_VAPE
      - IOT_AIR_VOC
      - IOT_AIR_TEMP
      - IOT_TAMPER
      - IOT_GUNSHOT
      - IOT_BUTTON_SINGLE_CLICK
      - IOT_BUTTON_DOUBLE_CLICK
      - IOT_BUTTON_HOLD
      - IOT_PANIC_BUTTON_TRIGGERED
      - AUDIO_SOUND_SIGNIFICANT
      - AUDIO_SOUND_LOUD
      - AUDIO_SOUND_ABUSIVE
      - AUDIO_SOUND_GREETING
      - AUDIO_SOUND_HELP
      - AUDIO_SOUND_GUN
      - AUDIO_SOUND_GLASS_BREAK
      - AUDIO_SOUND_ALARM_SMOKE_FIRE
      - AUDIO_SOUND_ALARM_CARBON_MONOXIDE
      - AUDIO_SOUND_SIREN
      - CLIMATE_VOC
      - CLIMATE_VAPE
      - CLIMATE_SMOKE
      - CLIMATE_THC
      - CLIMATE_CO2
      - CLIMATE_ETOH
      - CLIMATE_PM25
      - CLIMATE_IAQ
      - CLIMATE_LEAK
      - SOUND_AGGRESSION
      - SOUND_HELP
      - AIR_CO
      - AIR_CO2
      - AIR_MASKING
      - AIR_THC
      - AIR_VAPE
      - AIR_VOC
      - MASK_MISSING
      - HELMET_MISSING
      - GLOVES_MISSING
      - PIR_OCCUPIED
      - PIR_MOVEMENT
      - PIR_VACANT
      - CUSTOM
      - VISITOR_ARRIVED
      - VISITOR_DEPARTED
      - AC_DR_CONNECTED
      - AC_DR_DISCONNECTED
      - AC_DPI_DOOR_OPEN
      - AC_DPI_DOOR_CLOSED
      - AC_DPI_DOOR_AJAR
      - AC_DPI_DOOR_FORCED_OPEN
      - AC_DSR_UNLOCKED
      - AC_DSR_LOCKED
      - AC_DB_TRIGGERED
      - AC_PANIC_BUTTON_TRIGGERED
      - AC_REMOTE_UNLOCK
      - AC_BADGE_AUTHORIZED
      - AC_BADGE_UNAUTHORIZED
      - AC_BADGE_FACE_MISMATCH
      - AC_LOCKDOWN_ACTIVATED
      - AC_LOCKDOWN_DEACTIVATED
      - AC_TAMPER_PROX
      - AC_TAMPER_ACCEL
      - AC_TAMPER_SWITCH
      - AC_GR_ACTIVE
      - AC_GR_INACTIVE
      - AC_GI_ACTIVE
      - AC_GI_INACTIVE
      - AC_REX_ACTIVE
      - AC_REX_INACTIVE
      - AC_APERIO_DEVICE_DISCONNECTED
      - AC_APERIO_DEVICE_CONNECTED
      - AC_APERIO_DEVICE_REBOOT
      - AC_APERIO_DEVICE_TAMPER
      - AC_APERIO_LOW_BATTERY
      - AC_APERIO_FLAT_BATTERY
      - AC_APERIO_OK_BATTERY
      - POWER_SWITCH_BATTERY
      - POWER_SWITCH_PRIMARY
      - AI_SEARCH_MATCH
      - CUSTOM_LLM_BOOLEAN_TRUE
      - CUSTOM_LLM_BOOLEAN_FALSE
      - CUSTOM_LLM_THRESHOLD_EXCEEDED_LOW
      - CUSTOM_LLM_THRESHOLD_EXCEEDED_HIGH
      - ALM_AUTHORITIES_CONTACTED
      - ALM_MONITORING_ENABLED
      - ALM_MONITORING_DISABLED
      - ALM_MONITORING_SETTINGS_CHANGE
      - ALM_THREAT_CASE_CLOSED
      - ALM_THREAT_DETECTED
      - ALM_MONITORING_EVENT_DETECTED
      - ROBOT_DOG_DETECTED
      - ROBOT_ARRIVED_AT_WAYPOINT
      - ROBOT_ARRIVED_AT_POSE
      - ROBOT_WAITING_AT_POSE
      - ROBOT_MANUAL_CMD_VEL
      - ROBOT_MANUAL_ACTION
      - ROBOT_MANUAL_POSTURE
      - ROBOT_NAVIGATE_TO_POSE_START
      - ROBOT_NAVIGATE_TO_POSE_END
      - ROBOT_NAVIGATE_TO_HOME_START
      - ROBOT_NAVIGATE_TO_HOME_END
      - ROBOT_NAVIGATE_TO_WAYPOINT_START
      - ROBOT_NAVIGATE_TO_WAYPOINT_END
      - ROBOT_ROUTE_RUN_START
      - ROBOT_ROUTE_RUN_END
      - ROBOT_LOW_BATTERY_DOCKING
      - ROBOT_IDLE_DOCKING
      - ROBOT_EMERGENCY
      - LOITER_HUMAN
      - REID_HUMAN
      - INACTIVITY_HUMAN
      - INACTIVITY_CAR
      - ONGUARD_BADGE_AUTHORIZED
      - ONGUARD_BADGE_ANOMALY
      - ONGUARD_NO_ENTRY_MADE
      - ELEMENTS_BADGE_AUTHORIZED
      - ELEMENTS_BADGE_ANOMALY
      - ELEMENTS_NO_ENTRY_MADE
      - NETBOX_BADGE_AUTHORIZED
      - NETBOX_BADGE_ANOMALY
      - NETBOX_NO_ENTRY_MADE
      - THERMAL_TEMPERATURE_ALARM
      - THERMAL_TEMPERATURE_WARNING
      - THERMAL_FIRE_DETECTED
      - THERMAL_SMOKING_DETECTED
      - THERMAL_FIRE_VERIFIED
      - THERMAL_HEAT_NO_THREAT
      - THERMAL_VISUAL_HOTSPOT
      - THERMAL_VISUAL_HEAT_RISE
      - THERMAL_VISUAL_WARM_BODY
      - UNKNOWN
    CancelLoopingAudioPlaybackActionType:
      type: object
      properties:
        _audioDevices:
          type:
          - array
          - 'null'
          items:
            type:
            - string
            - 'null'
            format: DeviceFacetUuid
            description: RUUID with optional appended facet information
            example: AAAAAAAAAAAAAAAAAAAAAA.v0
        audioDevices:
          type:
          - array
          - 'null'
          items:
            type:
            - string
            - 'null'
            format: DeviceFacetUuid
            description: RUUID with optional appended facet information
            example: AAAAAAAAAAAAAAAAAAAAAA.v0
    RuleActionType:
      type: object
      description: The action to take when this lockdown rule is triggered.
      properties:
        activateLocationLockdown:
          $ref: '#/components/schemas/ActivateLocationLockdownActionType'
        alertAction:
          type:
          - boolean
          - 'null'
        audioPlaybackActions:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/AudioPlaybackActionType'
        cancelLoopingAudioPlaybackAction:
          $ref: '#/components/schemas/CancelLoopingAudioPlaybackActionType'
        changeComponentCompositeAccessStateActions:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/ChangeComponentCompositeAccessStateActionType'
        connectAudioDeviceToMobileAppAction:
          $ref: '#/components/schemas/ConnectAudioDeviceToMobileAppActionType'
        connectAudioDeviceToPhoneNumberAction:
          $ref: '#/components/schemas/ConnectAudioDeviceToPhoneNumberActionType'
        createAlarmAction:
          $ref: '#/components/schemas/CreateAlarmActionType'
        customActions:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/CustomRuleAction'
        customLLMActions:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/CustomLLMActionType'
        emailAuditLogExportActions:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/EmailAuditLogExportActionType'
        enableDisableAudioRecordActions:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/EnableDisableAudioRecordActionType'
        integrationCommandActions:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/IntegrationCommandActionType'
        integrationNotificationActions:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/IntegrationNotificationActionType'
        liveNotificationAction:
          type:
          - boolean
          - 'null'
        remoteDoorUnlockActions:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/RemoteDoorUnlockActionType'
        robotActions:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/RobotAction'
        thirdPartyAudioPlaybackAction:
          $ref: '#/components/schemas/ThirdPartyAudioPlaybackActionType'
        thirdPartyStrobeSirenAction:
          $ref: '#/components/schemas/ThirdPartyStrobeSirenActionType'
        triggerComponentRelayActions:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/TriggerComponentRelayActionType'
        webhookActions:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/WebhookActionType'
    ToastOrderIdType:
      type: object
      properties:
        employeeName:
          type:
          - string
          - 'null'
        guid:
          type:
          - string
          - 'null'
        locationName:
          type:
          - string
          - 'null'
        restaurantName:
          type:
          - string
          - 'null'
        toastCheckInfo:
          $ref: '#/components/schemas/ToastCheckInfo'
    ActivateLocationLockdownActionType:
      type: object
      properties:
        locationLockdownPlanUuid:
          type:
          - string
          - 'null'
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
        locationUuid:
          type:
          - string
          - 'null'
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
    CustomRuleAction:
      type: object
      properties:
        headers:
          type:
          - object
          - 'null'
          additionalProperties:
            type:
            - string
            - 'null'
        path:
          type:
          - string
          - 'null'
    BadgeIntegrationRuleTriggerType:
      type:
      - object
      - 'null'
      allOf: []
      properties:
        type:
          $ref: '#/components/schemas/RuleTriggerTypeEnum'
    GenericRelayStateEnumType:
      type: string
      enum:
      - ACTIVE
      - INACTIVE
      - UNKNOWN
    AudioPlaybackActionType:
      type: object
      properties:
        audioClipUuid:
          type:
          - string
          - 'null'
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
        audioGateways:
          type:
          - array
          - 'null'
          items:
            type:
            - string
            - 'null'
            format: RUUID
            description: base 64 (url-safe) uuid string
            example: AAAAAAAAAAAAAAAAAAAAAA
        loopDurationSec:
          type:
          - integer
          - 'null'
          format: int32
        playCount:
          type:
          - integer
          - 'null'
       

# --- truncated at 32 KB (89 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/rhombus-systems/refs/heads/main/openapi/rhombus-systems-rules-webservice-api-openapi.yml