> ## Documentation Index
> Fetch the complete documentation index at: https://api-docs.rhombus.community/llms.txt
> Use this file to discover all available pages before exploring further.

# Retrieve component shadows by the specified owner device uuid

> Retrieve component shadows by the specified owner device uuid



## OpenAPI

````yaml https://api2.rhombussystems.com/api/openapi/public.json post /api/component/findComponentShadowsByOwnerDevice
openapi: 3.0.1
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 API
  version: '1.0'
servers:
  - description: Production Server
    url: https://api2.rhombussystems.com
security:
  - ApiKeyAuth: []
paths:
  /api/component/findComponentShadowsByOwnerDevice:
    post:
      tags:
        - Component Webservice
      summary: Retrieve component shadows by the specified owner device uuid
      description: Retrieve component shadows by the specified owner device uuid
      operationId: findComponentShadowsByOwnerDevice
      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/Component_FindComponentShadowsByOwnerDeviceWSRequest
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/Component_FindComponentShadowsByOwnerDeviceWSResponse
          description: OK
components:
  schemas:
    Component_FindComponentShadowsByOwnerDeviceWSRequest:
      type: object
      properties:
        ownerDeviceUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
    Component_FindComponentShadowsByOwnerDeviceWSResponse:
      type: object
      properties:
        componentShadows:
          type: array
          items:
            $ref: '#/components/schemas/ComponentShadowType'
          nullable: true
    ComponentShadowType:
      type: object
      discriminator:
        propertyName: type
      oneOf:
        - $ref: '#/components/schemas/DoorReaderShadowType'
        - $ref: '#/components/schemas/DoorRelayShadowType'
        - $ref: '#/components/schemas/DoorPositionIndicatorShadowType'
        - $ref: '#/components/schemas/RequestToExitShadowType'
        - $ref: '#/components/schemas/GenericInputShadowType'
        - $ref: '#/components/schemas/IntegratedDoorRelayType'
        - $ref: '#/components/schemas/GenericRelayShadowType'
        - $ref: '#/components/schemas/GenericButtonShadowType'
        - $ref: '#/components/schemas/AperioGatewayShadow'
        - $ref: '#/components/schemas/AperioDoorExtensionShadow'
      properties:
        componentUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        createdAtMillis:
          type: integer
          format: int64
          nullable: true
        orgUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        ownerDeviceUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        type:
          $ref: '#/components/schemas/ComponentShadowEnumType'
        updatedAtMillis:
          type: integer
          format: int64
          nullable: true
    DoorReaderShadowType:
      type: object
      allOf:
        - type: object
          properties:
            state:
              $ref: '#/components/schemas/DoorReaderStateEnumType'
            stateUpdateEventTimestampMs:
              type: integer
              format: int64
              nullable: true
      nullable: true
      properties:
        componentUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        createdAtMillis:
          type: integer
          format: int64
          nullable: true
        orgUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        ownerDeviceUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        type:
          $ref: '#/components/schemas/ComponentShadowEnumType'
        updatedAtMillis:
          type: integer
          format: int64
          nullable: true
    DoorRelayShadowType:
      type: object
      allOf:
        - type: object
          properties:
            state:
              $ref: '#/components/schemas/DoorRelayStateEnumType'
            stateUpdateEventTimestampMs:
              type: integer
              format: int64
              nullable: true
      nullable: true
      properties:
        componentUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        createdAtMillis:
          type: integer
          format: int64
          nullable: true
        orgUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        ownerDeviceUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        type:
          $ref: '#/components/schemas/ComponentShadowEnumType'
        updatedAtMillis:
          type: integer
          format: int64
          nullable: true
    DoorPositionIndicatorShadowType:
      type: object
      allOf:
        - type: object
          properties:
            state:
              $ref: '#/components/schemas/DoorPositionIndicatorStateEnumType'
            stateUpdateEventTimestampMs:
              type: integer
              format: int64
              nullable: true
            supervisionState:
              $ref: '#/components/schemas/SupervisionStateEnumType'
      nullable: true
      properties:
        componentUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        createdAtMillis:
          type: integer
          format: int64
          nullable: true
        orgUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        ownerDeviceUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        type:
          $ref: '#/components/schemas/ComponentShadowEnumType'
        updatedAtMillis:
          type: integer
          format: int64
          nullable: true
    RequestToExitShadowType:
      type: object
      allOf:
        - type: object
          properties:
            state:
              $ref: '#/components/schemas/RequestToExitStateEnumType'
            stateUpdateEventTimestampMs:
              type: integer
              format: int64
              nullable: true
            supervisionState:
              $ref: '#/components/schemas/SupervisionStateEnumType'
      nullable: true
      properties:
        componentUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        createdAtMillis:
          type: integer
          format: int64
          nullable: true
        orgUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        ownerDeviceUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        type:
          $ref: '#/components/schemas/ComponentShadowEnumType'
        updatedAtMillis:
          type: integer
          format: int64
          nullable: true
    GenericInputShadowType:
      type: object
      allOf:
        - type: object
          properties:
            state:
              $ref: '#/components/schemas/GenericInputStateEnumType'
            stateUpdateEventTimestampMs:
              type: integer
              format: int64
              nullable: true
            supervisionState:
              $ref: '#/components/schemas/SupervisionStateEnumType'
      nullable: true
      properties:
        componentUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        createdAtMillis:
          type: integer
          format: int64
          nullable: true
        orgUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        ownerDeviceUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        type:
          $ref: '#/components/schemas/ComponentShadowEnumType'
        updatedAtMillis:
          type: integer
          format: int64
          nullable: true
    IntegratedDoorRelayType:
      type: object
      properties:
        baseType:
          $ref: '#/components/schemas/ComponentBaseEnumType'
        createdAtMillis:
          type: integer
          format: int64
          nullable: true
        name:
          type: string
          nullable: true
        orgUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        ownerDeviceUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        ownerHardwareType:
          $ref: '#/components/schemas/HardwareVariationEnum'
        port:
          $ref: '#/components/schemas/DoorRelayPortType'
        portImmutable:
          type: boolean
          nullable: true
        rateLimitingEnabled:
          type: boolean
          nullable: true
        relayType:
          $ref: '#/components/schemas/DoorRelayEnumType'
        type:
          $ref: '#/components/schemas/ComponentEnumType'
        updatedAtMillis:
          type: integer
          format: int64
          nullable: true
        uuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
    GenericRelayShadowType:
      type: object
      allOf:
        - type: object
          properties:
            originator:
              $ref: '#/components/schemas/BaseEventOriginator'
            state:
              $ref: '#/components/schemas/GenericRelayStateEnumType'
            stateUpdateEventTimestampMs:
              type: integer
              format: int64
              nullable: true
      nullable: true
      properties:
        componentUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        createdAtMillis:
          type: integer
          format: int64
          nullable: true
        orgUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        ownerDeviceUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        type:
          $ref: '#/components/schemas/ComponentShadowEnumType'
        updatedAtMillis:
          type: integer
          format: int64
          nullable: true
    GenericButtonShadowType:
      type: object
      allOf:
        - type: object
          properties:
            state:
              $ref: '#/components/schemas/GenericButtonStateEnumType'
            stateUpdateEventTimestampMs:
              type: integer
              format: int64
              nullable: true
            supervisionState:
              $ref: '#/components/schemas/SupervisionStateEnumType'
      nullable: true
      properties:
        componentUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        createdAtMillis:
          type: integer
          format: int64
          nullable: true
        orgUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        ownerDeviceUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        type:
          $ref: '#/components/schemas/ComponentShadowEnumType'
        updatedAtMillis:
          type: integer
          format: int64
          nullable: true
    AperioGatewayShadow:
      type: object
      allOf:
        - type: object
          properties:
            aperioId:
              type: array
              items:
                type: string
                format: byte
                nullable: true
              nullable: true
            connected:
              type: boolean
              nullable: true
            connectionStateUpdatedAtMs:
              type: integer
              format: int64
              nullable: true
            deviceClockSec:
              type: integer
              format: int64
              nullable: true
            deviceTimezone:
              type: integer
              format: int32
              nullable: true
            dtcs:
              type: array
              items:
                $ref: '#/components/schemas/DtcInfo'
              nullable: true
            firmwareVersion:
              type: string
              nullable: true
            hwVersion:
              type: array
              items:
                type: string
                format: byte
                nullable: true
              nullable: true
            ipAddress:
              type: string
              nullable: true
            lastSeenMs:
              type: integer
              format: int64
              nullable: true
            oemCode:
              type: string
              nullable: true
            oemCodeFetchedAtMs:
              type: integer
              format: int64
              nullable: true
            protocolVersionMajor:
              type: integer
              format: int32
              nullable: true
            protocolVersionMinor:
              type: integer
              format: int32
              nullable: true
            protocolVersionPatch:
              type: integer
              format: int32
              nullable: true
            rawTamperState:
              type: integer
              format: int32
              nullable: true
            stateUpdatedAtMs:
              type: integer
              format: int64
              nullable: true
      nullable: true
      properties:
        componentUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        createdAtMillis:
          type: integer
          format: int64
          nullable: true
        orgUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        ownerDeviceUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        type:
          $ref: '#/components/schemas/ComponentShadowEnumType'
        updatedAtMillis:
          type: integer
          format: int64
          nullable: true
    AperioDoorExtensionShadow:
      type: object
      allOf:
        - type: object
          properties:
            activatorState:
              type: integer
              format: int32
              nullable: true
            activatorStateUpdatedAtMs:
              type: integer
              format: int64
              nullable: true
            aperioDoorDeviceId:
              type: array
              items:
                type: string
                format: byte
                nullable: true
              nullable: true
            aperioGatewayId:
              type: array
              items:
                type: string
                format: byte
                nullable: true
              nullable: true
            aperioId:
              type: string
              nullable: true
            clockRetrievedAtMs:
              type: integer
              format: int64
              nullable: true
            connected:
              type: boolean
              nullable: true
            connectionStateUpdatedAtMs:
              type: integer
              format: int64
              nullable: true
            deviceClockSec:
              type: integer
              format: int64
              nullable: true
            deviceTimezone:
              type: integer
              format: int32
              nullable: true
            doorMode:
              type: integer
              format: int32
              nullable: true
            doorModeUpdatedAtMs:
              type: integer
              format: int64
              nullable: true
            dtcs:
              type: array
              items:
                $ref: '#/components/schemas/DtcInfo'
              nullable: true
            dtcsUpdatedAtMs:
              type: integer
              format: int64
              nullable: true
            gatewayComponentId:
              type: string
              format: RUUID
              description: base 64 (url-safe) uuid string
              example: AAAAAAAAAAAAAAAAAAAAAA
              nullable: true
            handleState:
              type: integer
              format: int32
              nullable: true
            handleStateUpdatedAtMs:
              type: integer
              format: int64
              nullable: true
            keyCylinderState:
              type: integer
              format: int32
              nullable: true
            keyCylinderStateUpdatedAtMs:
              type: integer
              format: int64
              nullable: true
            lastSeenMs:
              type: integer
              format: int64
              nullable: true
            name:
              type: string
              nullable: true
            removed:
              type: boolean
              nullable: true
            stateUpdatedAtMs:
              type: integer
              format: int64
              nullable: true
            tamperState:
              type: integer
              format: int32
              nullable: true
            tamperStateUpdatedAtMs:
              type: integer
              format: int64
              nullable: true
      nullable: true
      properties:
        componentUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        createdAtMillis:
          type: integer
          format: int64
          nullable: true
        orgUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        ownerDeviceUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        type:
          $ref: '#/components/schemas/ComponentShadowEnumType'
        updatedAtMillis:
          type: integer
          format: int64
          nullable: true
    ComponentShadowEnumType:
      type: string
      enum:
        - DoorReaderShadow
        - DoorRelayShadow
        - DoorPositionIndicatorShadow
        - RequestToExitShadow
        - GenericRelayShadow
        - GenericInputShadow
        - GenericButtonShadow
        - AperioGatewayShadow
        - AperioDoorExtensionShadow
    DoorReaderStateEnumType:
      type: string
      enum:
        - CONNECTED
        - DISCONNECTED
        - UNKNOWN
    DoorRelayStateEnumType:
      type: string
      enum:
        - UNLOCKED
        - LOCKED
        - UNKNOWN
    DoorPositionIndicatorStateEnumType:
      type: string
      enum:
        - OPEN
        - CLOSED
        - AJAR
        - FORCED_OPEN
        - ERROR
        - UNKNOWN
    SupervisionStateEnumType:
      type: string
      enum:
        - CUT_DETECTED
        - SHORT_DETECTED
        - NORMAL
        - INVALID
        - UNKNOWN
    RequestToExitStateEnumType:
      type: string
      enum:
        - ACTIVE
        - INACTIVE
        - UNKNOWN
    GenericInputStateEnumType:
      type: string
      enum:
        - ACTIVE
        - INACTIVE
        - UNKNOWN
    ComponentBaseEnumType:
      type: string
      enum:
        - reader
        - dpi
        - relay
        - rex
        - aux
        - aperio
        - button
    HardwareVariationEnum:
      type: string
      enum:
        - RASPBERRY_PI_3
        - CAMERA_R1
        - CAMERA_R2
        - CAMERA_R2_LONG_RANGE
        - CAMERA_R2_180
        - CAMERA_R3
        - CAMERA_R4
        - CAMERA_R100
        - CAMERA_R120
        - CAMERA_R170
        - CAMERA_R200
        - CAMERA_R500
        - CAMERA_R510
        - CAMERA_R520
        - CAMERA_R600
        - SENSOR_ASSET_TAG_T1
        - SENSOR_DOOR_D1
        - SENSOR_DOOR_D20
        - SENSOR_ENVIRONMENTAL_E1
        - SENSOR_ENVIRONMENTAL_E15
        - SENSOR_ENVIRONMENTAL_E2
        - SENSOR_MOTION_M1
        - SENSOR_MOTION_M15
        - GATEWAY_A1
        - GATEWAY_A100
        - GATEWAY_ENVIRONMENTAL_E50
        - CAMERA_R220
        - CAMERA_R230
        - CAMERA_R36S
        - CAMERA_R410
        - CAMERA_R540
        - CAMERA_R545
        - BADGE_READER_DR1
        - BADGE_READER_DR40
        - BADGE_READER_DR20
        - DOOR_CONTROLLER_DC1
        - DOOR_CONTROLLER_DC20
        - DOOR_CONTROLLER_DC10
        - ETHERNET_TESTER_ET1
        - IO_BOARD_TB1
        - BLE_BUTTON_B10
        - BLE_BUTTON_B15
        - CAMERA_THIRD_PARTY_RELAY
        - CAMERA_THIRD_PARTY_NVR
        - NVR_N100
        - CAMERA_R130
        - NVR_N500
        - CAMERA_R150
        - ROBOT_RC1
        - CAMERA_R210
        - CAMERA_R650
        - UNSPECIFIED
    DoorRelayPortType:
      type: object
      properties:
        boardNum:
          type: integer
          format: int32
          nullable: true
        portNum:
          type: integer
          format: int32
          nullable: true
        portType:
          $ref: '#/components/schemas/DoorRelayPhysicalPortEnumType'
    DoorRelayEnumType:
      type: string
      enum:
        - integrated
        - remote
    ComponentEnumType:
      type: string
      enum:
        - RhombusOsdpDoorReader
        - OsdpDoorReader
        - WiegandDoorReader
        - IntegratedDoorPositionIndicator
        - IntegratedRequestToExit
        - IntegratedDoorRelay
        - IntegratedGenericRelay
        - IntegratedGenericInput
        - IntegratedGenericButton
        - AperioGateway
        - AperioDoorExtension
        - AperioDoorRelay
        - AperioDoorPositionIndicator
        - AperioDoorReader
        - AperioDoorRequestToExit
    BaseEventOriginator:
      type: object
      discriminator:
        propertyName: type
      oneOf:
        - $ref: '#/components/schemas/SupportAuthorityEventOriginator'
        - $ref: '#/components/schemas/ApiTokenEventOriginator'
        - $ref: '#/components/schemas/UserEventOriginator'
        - $ref: '#/components/schemas/RuleEventOriginator'
        - $ref: '#/components/schemas/ComponentCompositeEventOriginator'
        - $ref: '#/components/schemas/GuestPassEventOriginator'
        - $ref: '#/components/schemas/DeviceServiceEventOriginator'
      properties:
        type:
          $ref: '#/components/schemas/EventOriginatorEnum'
    GenericRelayStateEnumType:
      type: string
      enum:
        - ACTIVE
        - INACTIVE
        - UNKNOWN
    GenericButtonStateEnumType:
      type: string
      enum:
        - BUTTON_DOWN
        - BUTTON_UP
        - UNKNOWN
    DtcInfo:
      type: object
      nullable: true
      properties:
        code:
          type: array
          items:
            type: string
            format: byte
            nullable: true
          nullable: true
        failing:
          type: boolean
          nullable: true
        hasFailed:
          type: boolean
          nullable: true
        testCompleted:
          type: boolean
          nullable: true
        time:
          type: integer
          format: int64
          nullable: true
    DoorRelayPhysicalPortEnumType:
      type: string
      enum:
        - GPIO_OUTPUT
    SupportAuthorityEventOriginator:
      type: object
      allOf:
        - type: object
          properties:
            grantedToInternalEntityUuid:
              type: string
              format: RUUID
              description: base 64 (url-safe) uuid string
              example: AAAAAAAAAAAAAAAAAAAAAA
              nullable: true
            grantedToName:
              type: string
              nullable: true
            supportAuthorityUuid:
              type: string
              format: RUUID
              description: base 64 (url-safe) uuid string
              example: AAAAAAAAAAAAAAAAAAAAAA
              nullable: true
            supportUserEmail:
              type: string
              nullable: true
            supportUsername:
              type: string
              nullable: true
      nullable: true
      properties:
        type:
          $ref: '#/components/schemas/EventOriginatorEnum'
    ApiTokenEventOriginator:
      type: object
      allOf:
        - type: object
          properties:
            tokenName:
              type: string
              nullable: true
            tokenUuid:
              type: string
              format: RUUID
              description: base 64 (url-safe) uuid string
              example: AAAAAAAAAAAAAAAAAAAAAA
              nullable: true
      nullable: true
      properties:
        type:
          $ref: '#/components/schemas/EventOriginatorEnum'
    UserEventOriginator:
      type: object
      allOf:
        - type: object
          properties:
            userEmail:
              type: string
              nullable: true
            userUuid:
              type: string
              format: RUUID
              description: base 64 (url-safe) uuid string
              example: AAAAAAAAAAAAAAAAAAAAAA
              nullable: true
            username:
              type: string
              nullable: true
      nullable: true
      properties:
        type:
          $ref: '#/components/schemas/EventOriginatorEnum'
    RuleEventOriginator:
      type: object
      allOf:
        - type: object
          properties:
            ruleName:
              type: string
              nullable: true
            ruleUuid:
              type: string
              format: RUUID
              description: base 64 (url-safe) uuid string
              example: AAAAAAAAAAAAAAAAAAAAAA
              nullable: true
      nullable: true
      properties:
        type:
          $ref: '#/components/schemas/EventOriginatorEnum'
    ComponentCompositeEventOriginator:
      type: object
      allOf:
        - type: object
          properties:
            componentCompositeName:
              type: string
              nullable: true
            componentCompositeUuid:
              type: string
              format: RUUID
              description: base 64 (url-safe) uuid string
              example: AAAAAAAAAAAAAAAAAAAAAA
              nullable: true
            correlationId:
              type: string
              nullable: true
            eventUuid:
              type: string
              format: RUUID
              description: base 64 (url-safe) uuid string
              example: AAAAAAAAAAAAAAAAAAAAAA
              nullable: true
            originator:
              $ref: '#/components/schemas/BaseEventOriginator'
      nullable: true
      properties:
        type:
          $ref: '#/components/schemas/EventOriginatorEnum'
    GuestPassEventOriginator:
      type: object
      allOf:
        - type: object
          properties:
            guestPassName:
              type: string
              nullable: true
            guestPassUuid:
              type: string
              format: RUUID
              description: base 64 (url-safe) uuid string
              example: AAAAAAAAAAAAAAAAAAAAAA
              nullable: true
      nullable: true
      properties:
        type:
          $ref: '#/components/schemas/EventOriginatorEnum'
    DeviceServiceEventOriginator:
      type: object
      allOf:
        - type: object
          properties:
            deviceUuid:
              type: string
              format: RUUID
              description: base 64 (url-safe) uuid string
              example: AAAAAAAAAAAAAAAAAAAAAA
              nullable: true
            serviceName:
              type: string
              nullable: true
      nullable: true
      properties:
        type:
          $ref: '#/components/schemas/EventOriginatorEnum'
    EventOriginatorEnum:
      type: string
      enum:
        - USER
        - SUPPORT_AUTHORITY
        - API_TOKEN
        - RULE
        - COMPONENT_COMPOSITE_EVENT
        - GUEST_PASS
        - DEVICE_SERVICE
        - UNKNOWN
  securitySchemes:
    ApiKeyAuth:
      description: >-
        Your Rhombus API key. Must be accompanied by the `x-auth-scheme` header
        set to `api-token` (or `partner-api-token` for partner endpoints).
      in: header
      name: x-auth-apikey
      type: apiKey

````