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

# Get related Space resources

> Gets all related resources for one or more Spaces.



## OpenAPI

````yaml /openapi.json post /spaces/get_related
openapi: 3.0.0
info:
  title: Seam Connect
  version: 1.0.0
servers:
  - url: https://connect.getseam.com
security: []
tags:
  - description: access_codes
    name: /access_codes
  - description: acs
    name: /acs
  - description: action_attempts
    name: /action_attempts
  - description: client_sessions
    name: /client_sessions
  - description: connected_accounts
    name: /connected_accounts
  - description: connect_webviews
    name: /connect_webviews
  - description: devices
    name: /devices
  - description: events
    name: /events
  - description: health
    name: /health
  - description: locks
    name: /locks
  - description: networks
    name: /networks
  - description: noise_sensors
    name: /noise_sensors
  - description: phones
    name: /phones
  - description: thermostats
    name: /thermostats
  - description: user_identities
    name: /user_identities
  - description: webhooks
    name: /webhooks
  - description: workspaces
    name: /workspaces
paths:
  /spaces/get_related:
    post:
      tags: []
      summary: Get related Space resources
      description: Gets all related resources for one or more Spaces.
      operationId: spacesGetRelatedPost
      requestBody:
        content:
          application/json:
            schema:
              properties:
                exclude:
                  items:
                    enum:
                      - spaces
                      - devices
                      - acs_entrances
                      - connected_accounts
                      - acs_systems
                      - access_methods
                    type: string
                  type: array
                include:
                  items:
                    enum:
                      - spaces
                      - devices
                      - acs_entrances
                      - connected_accounts
                      - acs_systems
                      - access_methods
                    type: string
                  type: array
                space_ids:
                  description: >-
                    IDs of the spaces that you want to get along with their
                    related resources.
                  items:
                    format: uuid
                    type: string
                  type: array
                space_keys:
                  description: >-
                    Keys of the spaces that you want to get along with their
                    related resources.
                  items:
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  batch:
                    description: A batch of workspace resources.
                    properties:
                      access_methods:
                        items:
                          $ref: '#/components/schemas/access_method'
                        type: array
                      acs_entrances:
                        items:
                          $ref: '#/components/schemas/acs_entrance'
                        type: array
                      acs_systems:
                        items:
                          $ref: '#/components/schemas/acs_system'
                        type: array
                      connected_accounts:
                        items:
                          $ref: '#/components/schemas/connected_account'
                        type: array
                      devices:
                        items:
                          $ref: '#/components/schemas/device'
                        type: array
                      spaces:
                        items:
                          $ref: '#/components/schemas/space'
                        type: array
                    type: object
                    x-route-path: /workspaces
                required:
                  - batch
                type: object
          description: OK
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
      security:
        - pat_with_workspace: []
        - console_session_with_workspace: []
        - api_key: []
        - client_session_with_customer: []
components:
  schemas:
    access_method:
      description: >-
        Represents an access method for an Access Grant. Access methods describe
        the modes of access, such as PIN codes, plastic cards, and mobile keys.
        For a mobile key, the access method also stores the URL for the
        associated Instant Key. See the [access_method
        object](/api/access_methods/object).
      properties:
        access_method_id:
          description: ID of the access method.
          format: uuid
          type: string
        client_session_token:
          description: Token of the client session associated with the access method.
          type: string
        code:
          description: The actual PIN code for code access methods.
          nullable: true
          type: string
        created_at:
          description: Date and time at which the access method was created.
          format: date-time
          type: string
        customization_profile_id:
          description: ID of the customization profile associated with the access method.
          format: uuid
          type: string
        display_name:
          description: Display name of the access method.
          type: string
        instant_key_url:
          description: URL of the Instant Key for mobile key access methods.
          format: uri
          type: string
        is_assignment_required:
          description: >-
            Indicates whether an existing card credential must be assigned to
            this access method before it can be issued. Only applies to
            card-mode access methods on systems that support credential
            assignment.
          type: boolean
        is_encoding_required:
          description: >-
            Indicates whether encoding with an card encoder is required to issue
            or reissue the plastic card associated with the access method.
          type: boolean
        is_issued:
          description: Indicates whether the access method has been issued.
          type: boolean
        is_ready_for_assignment:
          description: >-
            Indicates whether the access method is ready for card assignment.
            This is true when the access method is in card mode, has not yet
            been issued, and the system supports credential assignment.
          type: boolean
        is_ready_for_encoding:
          description: >-
            Indicates whether the access method is ready to be encoded. This is
            true when the credential has been created and the card has not yet
            been issued.
          type: boolean
        issued_at:
          description: Date and time at which the access method was issued.
          format: date-time
          nullable: true
          type: string
        mode:
          description: >-
            Access method mode. Supported values: `code`, `card`, `mobile_key`,
            `cloud_key`.
          enum:
            - code
            - card
            - mobile_key
            - cloud_key
          type: string
        pending_mutations:
          description: >-
            Pending mutations for the [access
            method](/use-cases/granting-access/creating-an-access-grant).
            Indicates operations that are in progress.
          items:
            discriminator:
              propertyName: mutation_code
            oneOf:
              - description: >-
                  Seam is in the process of provisioning access for this access
                  method on new devices.
                properties:
                  created_at:
                    description: Date and time at which the mutation was created.
                    format: date-time
                    type: string
                  from:
                    description: Previous device configuration.
                    properties:
                      device_ids:
                        description: Previous device IDs where access was provisioned.
                        items:
                          format: uuid
                          type: string
                        type: array
                    required:
                      - device_ids
                    type: object
                  message:
                    description: Detailed description of the mutation.
                    type: string
                  mutation_code:
                    description: >-
                      Mutation code to indicate that Seam is in the process of
                      provisioning access for this access method on new devices.
                    enum:
                      - provisioning_access
                    type: string
                  to:
                    description: New device configuration.
                    properties:
                      device_ids:
                        description: New device IDs where access is being provisioned.
                        items:
                          format: uuid
                          type: string
                        type: array
                    required:
                      - device_ids
                    type: object
                required:
                  - created_at
                  - message
                  - mutation_code
                  - from
                  - to
                type: object
              - description: >-
                  Seam is in the process of revoking access for this access
                  method from devices.
                properties:
                  created_at:
                    description: Date and time at which the mutation was created.
                    format: date-time
                    type: string
                  from:
                    description: Previous device configuration.
                    properties:
                      device_ids:
                        description: Previous device IDs where access existed.
                        items:
                          format: uuid
                          type: string
                        type: array
                    required:
                      - device_ids
                    type: object
                  message:
                    description: Detailed description of the mutation.
                    type: string
                  mutation_code:
                    description: >-
                      Mutation code to indicate that Seam is in the process of
                      revoking access for this access method from devices.
                    enum:
                      - revoking_access
                    type: string
                  to:
                    description: New device configuration.
                    properties:
                      device_ids:
                        description: New device IDs where access should remain.
                        items:
                          format: uuid
                          type: string
                        type: array
                    required:
                      - device_ids
                    type: object
                required:
                  - created_at
                  - message
                  - mutation_code
                  - from
                  - to
                type: object
              - description: >-
                  Seam is in the process of updating the access times for this
                  access method.
                properties:
                  created_at:
                    description: Date and time at which the mutation was created.
                    format: date-time
                    type: string
                  from:
                    description: Previous access time configuration.
                    properties:
                      ends_at:
                        description: Previous end time for access.
                        format: date-time
                        nullable: true
                        type: string
                      starts_at:
                        description: Previous start time for access.
                        format: date-time
                        nullable: true
                        type: string
                    required:
                      - starts_at
                      - ends_at
                    type: object
                  message:
                    description: Detailed description of the mutation.
                    type: string
                  mutation_code:
                    description: >-
                      Mutation code to indicate that Seam is in the process of
                      updating the access times for this access method.
                    enum:
                      - updating_access_times
                    type: string
                  to:
                    description: New access time configuration.
                    properties:
                      ends_at:
                        description: New end time for access.
                        format: date-time
                        nullable: true
                        type: string
                      starts_at:
                        description: New start time for access.
                        format: date-time
                        nullable: true
                        type: string
                    required:
                      - starts_at
                      - ends_at
                    type: object
                required:
                  - created_at
                  - message
                  - mutation_code
                  - from
                  - to
                type: object
          type: array
        warnings:
          description: >-
            Warnings associated with the [access
            method](/use-cases/granting-access/creating-an-access-grant).
          items:
            description: >-
              Warning associated with the [access
              method](/use-cases/granting-access/creating-an-access-grant).
            discriminator:
              propertyName: warning_code
            oneOf:
              - description: >-
                  Indicates that the [access
                  method](/use-cases/granting-access/creating-an-access-grant)
                  is being deleted.
                properties:
                  created_at:
                    description: Date and time at which Seam created the warning.
                    format: date-time
                    type: string
                  message:
                    description: >-
                      Detailed description of the warning. Provides insights
                      into the issue and potentially how to rectify it.
                    type: string
                  warning_code:
                    description: >-
                      Unique identifier of the type of warning. Enables quick
                      recognition and categorization of the issue.
                    enum:
                      - being_deleted
                    type: string
                required:
                  - created_at
                  - message
                  - warning_code
                type: object
              - description: >-
                  Indicates that the access times for this [access
                  method](/use-cases/granting-access/creating-an-access-grant)
                  are being updated.
                properties:
                  created_at:
                    description: Date and time at which Seam created the warning.
                    format: date-time
                    type: string
                  message:
                    description: >-
                      Detailed description of the warning. Provides insights
                      into the issue and potentially how to rectify it.
                    type: string
                  warning_code:
                    description: >-
                      Unique identifier of the type of warning. Enables quick
                      recognition and categorization of the issue.
                    enum:
                      - updating_access_times
                    type: string
                required:
                  - created_at
                  - message
                  - warning_code
                type: object
              - description: >-
                  Indicates that all attempts to create an access code on this
                  device before the start time failed and a backup access code
                  was used to ensure access was provided in time.
                properties:
                  created_at:
                    description: Date and time at which Seam created the warning.
                    format: date-time
                    type: string
                  message:
                    description: >-
                      Detailed description of the warning. Provides insights
                      into the issue and potentially how to rectify it.
                    type: string
                  original_access_method_id:
                    description: >-
                      ID of the original access method from which this backup
                      access method was split, if applicable.
                    format: uuid
                    type: string
                  warning_code:
                    description: >-
                      Unique identifier of the type of warning. Enables quick
                      recognition and categorization of the issue.
                    enum:
                      - pulled_backup_access_code
                    type: string
                required:
                  - created_at
                  - message
                  - warning_code
                type: object
          type: array
        workspace_id:
          description: ID of the Seam workspace associated with the access method.
          format: uuid
          type: string
      required:
        - workspace_id
        - access_method_id
        - display_name
        - mode
        - created_at
        - issued_at
        - is_issued
        - warnings
        - pending_mutations
      type: object
      x-route-path: /access_methods
    acs_entrance:
      description: >-
        Represents an
        [entrance](/low-level-apis/access-systems/retrieving-entrance-details)
        within an [access control system](/low-level-apis/access-systems). See
        the [acs_entrance object](/api/acs/entrances/object).
      properties:
        acs_entrance_id:
          description: >-
            ID of the
            [entrance](/low-level-apis/access-systems/retrieving-entrance-details).
          format: uuid
          type: string
        acs_system_id:
          description: >-
            ID of the [access control system](/low-level-apis/access-systems)
            that contains the
            [entrance](/low-level-apis/access-systems/retrieving-entrance-details).
          format: uuid
          type: string
        assa_abloy_vostio_metadata:
          description: >-
            ASSA ABLOY Vostio-specific metadata associated with the
            [entrance](/low-level-apis/access-systems/retrieving-entrance-details).
          properties:
            door_name:
              description: Name of the door in the Vostio access system.
              type: string
            door_number:
              description: Number of the door in the Vostio access system.
              format: float
              type: number
            door_type:
              description: Type of the door in the Vostio access system.
              enum:
                - CommonDoor
                - EntranceDoor
                - GuestDoor
                - Elevator
              type: string
            pms_id:
              description: PMS ID of the door in the Vostio access system.
              type: string
            stand_open:
              description: >-
                Indicates whether keys are allowed to set the door in stand open
                mode in the Vostio access system.
              type: boolean
          required:
            - door_type
            - door_name
          type: object
        avigilon_alta_metadata:
          description: >-
            Avigilon Alta-specific metadata associated with the
            [entrance](/low-level-apis/access-systems/retrieving-entrance-details).
          properties:
            entry_name:
              description: Entry name for an Avigilon Alta system.
              type: string
            entry_relays_total_count:
              description: Total count of entry relays for an Avigilon Alta system.
              format: float
              type: number
            org_name:
              description: Organization name for an Avigilon Alta system.
              type: string
            site_id:
              description: Site ID for an Avigilon Alta system.
              format: float
              type: number
            site_name:
              description: Site name for an Avigilon Alta system.
              type: string
            zone_id:
              description: Zone ID for an Avigilon Alta system.
              format: float
              type: number
            zone_name:
              description: Zone name for an Avigilon Alta system.
              type: string
          required:
            - entry_name
            - org_name
            - zone_id
            - zone_name
            - site_id
            - site_name
            - entry_relays_total_count
          type: object
        brivo_metadata:
          description: >-
            Brivo-specific metadata associated with the
            [entrance](/low-level-apis/access-systems/retrieving-entrance-details).
          properties:
            access_point_id:
              description: ID of the access point in the Brivo access system.
              type: string
            site_id:
              description: ID of the site that the access point belongs to.
              format: float
              type: number
            site_name:
              description: Name of the site that the access point belongs to.
              type: string
          required:
            - access_point_id
            - site_id
            - site_name
          type: object
        can_belong_to_reservation:
          description: >-
            Indicates whether the ACS entrance can belong to a reservation via
            an access_grant.reservation_key.
          type: boolean
        can_unlock_with_card:
          description: >-
            Indicates whether the ACS entrance can be unlocked with card
            credentials.
          type: boolean
        can_unlock_with_cloud_key:
          description: >-
            Indicates whether the ACS entrance can be unlocked with cloud key
            credentials.
          type: boolean
        can_unlock_with_code:
          description: Indicates whether the ACS entrance can be unlocked with pin codes.
          type: boolean
        can_unlock_with_mobile_key:
          description: >-
            Indicates whether the ACS entrance can be unlocked with mobile key
            credentials.
          type: boolean
        connected_account_id:
          description: >-
            ID of the [connected
            account](/low-level-apis/access-systems/retrieving-entrance-details)
            associated with the
            [entrance](/low-level-apis/access-systems/retrieving-entrance-details).
          format: uuid
          type: string
        created_at:
          description: >-
            Date and time at which the
            [entrance](/low-level-apis/access-systems/retrieving-entrance-details)
            was created.
          format: date-time
          type: string
        display_name:
          description: >-
            Display name for the
            [entrance](/low-level-apis/access-systems/retrieving-entrance-details).
          type: string
        dormakaba_ambiance_metadata:
          description: >-
            dormakaba Ambiance-specific metadata associated with the
            [entrance](/low-level-apis/access-systems/retrieving-entrance-details).
          properties:
            access_point_name:
              description: >-
                Name of the access point in the dormakaba Ambiance access
                system.
              type: string
          required:
            - access_point_name
          type: object
        dormakaba_community_metadata:
          description: >-
            dormakaba Community-specific metadata associated with the
            [entrance](/low-level-apis/access-systems/retrieving-entrance-details).
          properties:
            access_point_profile:
              description: >-
                Type of access point profile in the dormakaba Community access
                system.
              type: string
          required:
            - access_point_profile
          type: object
        errors:
          description: >-
            Errors associated with the
            [entrance](/low-level-apis/access-systems/retrieving-entrance-details).
          items:
            properties:
              error_code:
                description: >-
                  Unique identifier of the type of error. Enables quick
                  recognition and categorization of the issue.
                type: string
              message:
                description: >-
                  Detailed description of the error. Provides insights into the
                  issue and potentially how to rectify it.
                type: string
            required:
              - error_code
              - message
            type: object
          type: array
        hotek_metadata:
          description: >-
            Hotek-specific metadata associated with the
            [entrance](/low-level-apis/access-systems/retrieving-entrance-details).
          properties:
            common_area_name:
              description: Display name of the entrance.
              type: string
            common_area_number:
              description: Display name of the entrance.
              type: string
            room_number:
              description: Room number of the entrance.
              type: string
          type: object
        is_locked:
          description: >-
            Indicates whether the
            [entrance](/low-level-apis/access-systems/retrieving-entrance-details)
            is currently locked.
          type: boolean
        latch_metadata:
          description: >-
            Latch-specific metadata associated with the
            [entrance](/low-level-apis/access-systems/retrieving-entrance-details).
          properties:
            accessibility_type:
              description: Accessibility type in the Latch access system.
              type: string
            door_name:
              description: Name of the door in the Latch access system.
              type: string
            door_type:
              description: Type of the door in the Latch access system.
              type: string
            is_connected:
              description: Indicates whether the entrance is connected.
              type: boolean
          required:
            - accessibility_type
            - door_name
            - door_type
            - is_connected
          type: object
        salto_ks_metadata:
          description: >-
            Salto KS-specific metadata associated with the
            [entrance](/low-level-apis/access-systems/retrieving-entrance-details).
          properties:
            battery_level:
              description: Battery level of the door access device.
              type: string
            door_name:
              description: Name of the door in the Salto KS access system.
              type: string
            intrusion_alarm:
              description: Indicates whether an intrusion alarm is active on the door.
              type: boolean
            left_open_alarm:
              description: Indicates whether the door is left open.
              type: boolean
            lock_type:
              description: Type of the lock in the Salto KS access system.
              type: string
            locked_state:
              description: Locked state of the door in the Salto KS access system.
              type: string
            online:
              description: Indicates whether the door access device is online.
              type: boolean
            privacy_mode:
              description: Indicates whether privacy mode is enabled for the lock.
              type: boolean
          required:
            - door_name
            - locked_state
            - lock_type
            - battery_level
          type: object
        salto_space_metadata:
          description: >-
            Salto Space-specific metadata associated with the
            [entrance](/low-level-apis/access-systems/retrieving-entrance-details).
          properties:
            audit_on_keys:
              description: >-
                Indicates whether AuditOnKeys is enabled for the door in the
                Salto Space access system.
              type: boolean
            door_description:
              description: Description of the door in the Salto Space access system.
              type: string
            door_id:
              description: Door ID in the Salto Space access system.
              type: string
            door_name:
              description: Name of the door in the Salto Space access system.
              type: string
            room_description:
              description: Description of the room in the Salto Space access system.
              type: string
            room_name:
              description: Name of the room in the Salto Space access system.
              type: string
          type: object
        space_ids:
          description: IDs of the spaces that the entrance is in.
          items:
            format: uuid
            type: string
          type: array
        visionline_metadata:
          description: >-
            Visionline-specific metadata associated with the
            [entrance](/low-level-apis/access-systems/retrieving-entrance-details).
          properties:
            door_category:
              description: Category of the door in the Visionline access system.
              enum:
                - entrance
                - guest
                - elevator reader
                - common
                - common (PMS)
              type: string
            door_name:
              description: Name of the door in the Visionline access system.
              type: string
            profiles:
              description: Profile for the door in the Visionline access system.
              items:
                properties:
                  visionline_door_profile_id:
                    description: Door profile ID in the Visionline access system.
                    type: string
                  visionline_door_profile_type:
                    description: Door profile type in the Visionline access system.
                    enum:
                      - BLE
                      - commonDoor
                      - touch
                    type: string
                required:
                  - visionline_door_profile_id
                  - visionline_door_profile_type
                type: object
              type: array
          required:
            - door_name
            - door_category
          type: object
        warnings:
          type: array
          description: >-
            Warnings associated with the
            [entrance](/low-level-apis/access-systems/retrieving-entrance-details).
          items:
            type: object
            properties:
              error_code:
                type: string
                description: Error or warning code.
              message:
                type: string
                description: Human-readable description.
              created_at:
                type: string
                format: date-time
                description: When this error or warning was generated.
      required:
        - acs_system_id
        - acs_entrance_id
        - space_ids
        - created_at
        - display_name
        - connected_account_id
        - errors
        - warnings
      type: object
      x-route-path: /acs/entrances
    acs_system:
      description: >-
        Represents an [access control system](/low-level-apis/access-systems).


        Within an `acs_system`, create [`acs_user`s](/api/acs/users/object) and
        [`acs_credential`s](/api/acs/credentials/object) to grant access to the
        `acs_user`s.


        For details about the resources associated with an access control
        system, see the [access control systems namespace](/api/acs/object). See
        the [acs_system object](/api/acs/systems/object).
      properties:
        acs_access_group_count:
          description: >-
            Number of access groups in the [access control
            system](/low-level-apis/access-systems).
          format: float
          type: number
        acs_system_id:
          description: ID of the [access control system](/low-level-apis/access-systems).
          format: uuid
          type: string
        acs_user_count:
          description: >-
            Number of users in the [access control
            system](/low-level-apis/access-systems).
          format: float
          type: number
        connected_account_id:
          description: >-
            ID of the connected account associated with the [access control
            system](/low-level-apis/access-systems).
          format: uuid
          type: string
        connected_account_ids:
          deprecated: true
          description: >-
            Deprecated. Use `connected_account_id`.


            IDs of the [connected accounts](/core-concepts/connected-accounts)
            associated with the [access control
            system](/low-level-apis/access-systems).
          items:
            format: uuid
            type: string
          type: array
        created_at:
          description: >-
            Date and time at which the [access control
            system](/low-level-apis/access-systems) was created.
          format: date-time
          type: string
        default_credential_manager_acs_system_id:
          description: >-
            ID of the default credential manager `acs_system` for this [access
            control system](/low-level-apis/access-systems).
          format: uuid
          nullable: true
          type: string
        errors:
          type: array
          description: >-
            Errors associated with the [access control
            system](/low-level-apis/access-systems).
          items:
            type: object
            properties:
              error_code:
                type: string
                description: Error or warning code.
              message:
                type: string
                description: Human-readable description.
              created_at:
                type: string
                format: date-time
                description: When this error or warning was generated.
        external_type:
          description: >-
            Brand-specific terminology for the [access control
            system](/low-level-apis/access-systems) type.
          enum:
            - pti_site
            - avigilon_alta_org
            - salto_ks_site
            - salto_space_system
            - brivo_account
            - hid_credential_manager_organization
            - visionline_system
            - assa_abloy_credential_service
            - latch_building
            - dormakaba_community_site
            - dormakaba_ambiance_site
            - legic_connect_credential_service
            - assa_abloy_vostio
            - assa_abloy_vostio_credential_service
            - hotek_site
            - kisi_organization
          type: string
        external_type_display_name:
          description: >-
            Display name that corresponds to the brand-specific terminology for
            the [access control system](/low-level-apis/access-systems) type.
          type: string
        image_alt_text:
          description: >-
            Alternative text for the [access control
            system](/low-level-apis/access-systems) image.
          type: string
        image_url:
          description: >-
            URL for the image that represents the [access control
            system](/low-level-apis/access-systems).
          type: string
        is_credential_manager:
          description: Indicates whether the `acs_system` is a credential manager.
          type: boolean
        location:
          description: >-
            Location information for the [access control
            system](/low-level-apis/access-systems).
          properties:
            time_zone:
              description: >-
                Time zone in which the [access control
                system](/low-level-apis/access-systems) is located.
              nullable: true
              type: string
          required:
            - time_zone
          type: object
        name:
          description: Name of the [access control system](/low-level-apis/access-systems).
          type: string
        system_type:
          deprecated: true
          enum:
            - pti_site
            - avigilon_alta_org
            - salto_ks_site
            - salto_space_system
            - brivo_account
            - hid_credential_manager_organization
            - visionline_system
            - assa_abloy_credential_service
            - latch_building
            - dormakaba_community_site
            - dormakaba_ambiance_site
            - legic_connect_credential_service
            - assa_abloy_vostio
            - assa_abloy_vostio_credential_service
            - hotek_site
            - kisi_organization
          type: string
          description: Deprecated. Use `external_type`.
        system_type_display_name:
          deprecated: true
          type: string
          description: Deprecated. Use `external_type_display_name`.
        visionline_metadata:
          description: >-
            Visionline-specific metadata for the [access control
            system](/low-level-apis/access-systems).
          properties:
            lan_address:
              description: >-
                IP address or hostname of the main Visionline server relative to
                [Seam Bridge](/capability-guides/seam-bridge) on the local
                network.
              type: string
            mobile_access_uuid:
              description: >-
                Keyset loaded into a reader. Mobile keys and reader
                administration tools securely authenticate only with readers
                programmed with a matching keyset.
              type: string
            system_id:
              description: >-
                Unique ID assigned by the ASSA ABLOY licensing team that
                identifies each hotel in your credential manager.
              type: string
          required:
            - mobile_access_uuid
            - system_id
            - lan_address
          type: object
        warnings:
          description: >-
            Warnings associated with the [access control
            system](/low-level-apis/access-systems).
          items:
            description: >-
              Warning associated with the [access control
              system](/low-level-apis/access-systems).
            discriminator:
              propertyName: warning_code
            oneOf:
              - description: >-
                  Indicates that the Salto KS site has exceeded 80% of the
                  maximum number of allowed users. Increase your subscription
                  limit or delete some users from your site to rectify the
                  issue.
                properties:
                  created_at:
                    description: Date and time at which Seam created the warning.
                    format: date-time
                    type: string
                  message:
                    description: >-
                      Detailed description of the warning. Provides insights
                      into the issue and potentially how to rectify it.
                    type: string
                  warning_code:
                    description: >-
                      Unique identifier of the type of warning. Enables quick
                      recognition and categorization of the issue.
                    enum:
                      - salto_ks_subscription_limit_almost_reached
                    type: string
                required:
                  - created_at
                  - message
                  - warning_code
                type: object
              - description: >-
                  Indicates the [access control
                  system](/low-level-apis/access-systems) time zone could not be
                  determined because the reported physical location does not
                  match the time zone configured on the physical [ACS
                  entrances](/low-level-apis/access-systems/retrieving-entrance-details).
                properties:
                  created_at:
                    description: Date and time at which Seam created the warning.
                    format: date-time
                    type: string
                  message:
                    description: >-
                      Detailed description of the warning. Provides insights
                      into the issue and potentially how to rectify it.
                    type: string
                  misconfigured_acs_entrance_ids:
                    deprecated: true
                    items:
                      format: uuid
                      type: string
                    type: array
                    description: Deprecated. this field is deprecated.
                  warning_code:
                    description: >-
                      Unique identifier of the type of warning. Enables quick
                      recognition and categorization of the issue.
                    enum:
                      - time_zone_does_not_match_location
                    type: string
                required:
                  - created_at
                  - message
                  - warning_code
                type: object
              - description: >-
                  Indicates that the access control system requires additional
                  setup before it can be fully operational. Follow the
                  instructions in the warning message to complete the setup.
                properties:
                  created_at:
                    description: Date and time at which Seam created the warning.
                    format: date-time
                    type: string
                  message:
                    description: >-
                      Detailed description of the warning. Provides insights
                      into the issue and potentially how to rectify it.
                    type: string
                  warning_code:
                    description: >-
                      Unique identifier of the type of warning. Enables quick
                      recognition and categorization of the issue.
                    enum:
                      - setup_required
                    type: string
                required:
                  - created_at
                  - message
                  - warning_code
                type: object
          type: array
        workspace_id:
          description: >-
            ID of the workspace that contains the [access control
            system](/low-level-apis/access-systems).
          format: uuid
          type: string
      required:
        - acs_system_id
        - is_credential_manager
        - location
        - name
        - created_at
        - workspace_id
        - connected_account_ids
        - connected_account_id
        - image_url
        - image_alt_text
        - errors
        - warnings
      type: object
      x-route-path: /acs/systems
    connected_account:
      description: >-
        Represents a [connected account](/core-concepts/connected-accounts). A
        connected account is an external third-party account to which your user
        has authorized Seam to get access, for example, an August account with a
        list of door locks. See the [connected_account
        object](/api/connected_accounts/object).
      properties:
        accepted_capabilities:
          description: >-
            List of capabilities that were accepted during the account
            connection process.
          items:
            description: |2

                High-level device capabilities that can be restricted in connect webviews.
                These represent the main device categories that customers can opt into.
            enum:
              - lock
              - thermostat
              - noise_sensor
              - access_control
              - camera
            type: string
          type: array
        account_type:
          description: Type of connected account.
          type: string
        account_type_display_name:
          description: Display name for the connected account type.
          type: string
        automatically_manage_new_devices:
          description: >-
            Indicates whether Seam should [import all new
            devices](/core-concepts/connect-webviews/customizing-connect-webviews#automatically_manage_new_devices)
            for the connected account to make these devices available for
            management by the Seam API.
          type: boolean
        connected_account_id:
          description: ID of the connected account.
          format: uuid
          type: string
        created_at:
          description: Date and time at which the connected account was created.
          format: date-time
          type: string
        custom_metadata:
          additionalProperties:
            oneOf:
              - type: string
              - type: boolean
          description: >-
            Set of key:value pairs. Adding custom metadata to a resource, such
            as a [Connect
            Webview](/core-concepts/connect-webviews/attaching-custom-data-to-the-connect-webview),
            [connected
            account](/core-concepts/connected-accounts/adding-custom-metadata-to-a-connected-account),
            or
            [device](/core-concepts/devices/adding-custom-metadata-to-a-device),
            enables you to store custom information, like customer details or
            internal IDs from your application.
          type: object
        customer_key:
          description: >-
            Your unique key for the customer associated with this connected
            account.
          type: string
        default_checkin_time:
          description: >-
            Default reservation check-in time for this connected account, as
            `HH:mm` (24-hour). Sourced from the connector configuration — set
            during the connect_webview for providers like Lodgify whose API does
            not expose check-in times.
          type: string
        default_checkout_time:
          description: >-
            Default reservation check-out time for this connected account, as
            `HH:mm` (24-hour). Sourced from the connector configuration.
          type: string
        display_name:
          description: Display name for the connected account.
          type: string
        errors:
          description: Errors associated with the connected account.
          items:
            discriminator:
              propertyName: error_code
            oneOf:
              - description: Indicates that the account is disconnected.
                properties:
                  created_at:
                    description: Date and time at which Seam created the error.
                    format: date-time
                    type: string
                  error_code:
                    description: >-
                      Unique identifier of the type of error. Enables quick
                      recognition and categorization of the issue.
                    enum:
                      - account_disconnected
                    type: string
                  is_bridge_error:
                    description: >-
                      Indicates whether the error is related to [Seam
                      Bridge](/capability-guides/seam-bridge).
                    type: boolean
                  is_connected_account_error:
                    description: >-
                      Indicates whether the error is related specifically to the
                      connected account.
                    type: boolean
                  message:
                    description: >-
                      Detailed description of the error. Provides insights into
                      the issue and potentially how to rectify it.
                    type: string
                required:
                  - created_at
                  - message
                  - error_code
                type: object
                x-resource-type: connected_account
              - description: >-
                  Indicates that the Seam API cannot communicate with [Seam
                  Bridge](/capability-guides/seam-bridge), for example, if the
                  Seam Bridge executable has stopped or if the computer running
                  the Seam Bridge executable is offline. See also
                  [Troubleshooting Your Access Control
                  System](/low-level-apis/access-systems/troubleshooting-your-access-control-system#acs_system-errors-seam_bridge_disconnected).
                properties:
                  created_at:
                    description: Date and time at which Seam created the error.
                    format: date-time
                    type: string
                  error_code:
                    description: >-
                      Unique identifier of the type of error. Enables quick
                      recognition and categorization of the issue.
                    enum:
                      - bridge_disconnected
                    type: string
                  is_bridge_error:
                    description: >-
                      Indicates whether the error is related to [Seam
                      Bridge](/capability-guides/seam-bridge).
                    type: boolean
                  is_connected_account_error:
                    description: >-
                      Indicates whether the error is related specifically to the
                      connected account.
                    type: boolean
                  message:
                    description: >-
                      Detailed description of the error. Provides insights into
                      the issue and potentially how to rectify it.
                    type: string
                required:
                  - created_at
                  - message
                  - error_code
                type: object
                x-resource-type: connected_account
              - description: >-
                  Indicates that the maximum number of users allowed for the
                  site has been reached. This means that new access codes cannot
                  be created. Contact Salto support to increase the user limit.
                properties:
                  created_at:
                    description: Date and time at which Seam created the error.
                    format: date-time
                    type: string
                  error_code:
                    description: >-
                      Unique identifier of the type of error. Enables quick
                      recognition and categorization of the issue.
                    enum:
                      - salto_ks_subscription_limit_exceeded
                    type: string
                  is_bridge_error:
                    description: >-
                      Indicates whether the error is related to [Seam
                      Bridge](/capability-guides/seam-bridge).
                    type: boolean
                  is_connected_account_error:
                    description: >-
                      Indicates whether the error is related specifically to the
                      connected account.
                    type: boolean
                  message:
                    description: >-
                      Detailed description of the error. Provides insights into
                      the issue and potentially how to rectify it.
                    type: string
                  salto_ks_metadata:
                    description: >-
                      Salto KS metadata associated with the connected account
                      that has an error.
                    properties:
                      sites:
                        description: >-
                          Salto sites associated with the connected account that
                          has an error.
                        items:
                          description: >-
                            Salto site associated with the connected account
                            that has an error.
                          properties:
                            site_id:
                              description: >-
                                ID of a Salto site associated with the connected
                                account that has an error.
                              type: string
                            site_name:
                              description: >-
                                Name of a Salto site associated with the
                                connected account that has an error.
                              type: string
                            site_user_subscription_limit:
                              description: >-
                                Subscription limit of site users for a Salto
                                site associated with the connected account that
                                has an error.
                              minimum: 0
                              type: integer
                            subscribed_site_user_count:
                              description: >-
                                Count of subscribed site users for a Salto site
                                associated with the connected account that has
                                an error.
                              minimum: 0
                              type: integer
                          required:
                            - site_id
                            - site_name
                            - subscribed_site_user_count
                            - site_user_subscription_limit
                          type: object
                        type: array
                    required:
                      - sites
                    type: object
                required:
                  - created_at
                  - message
                  - error_code
                  - salto_ks_metadata
                type: object
                x-resource-type: connected_account
              - description: >-
                  Indicates that one or more dormakaba sites associated with the
                  connected account could not be connected. Contact dormakaba
                  support.
                properties:
                  created_at:
                    description: Date and time at which Seam created the error.
                    format: date-time
                    type: string
                  error_code:
                    description: >-
                      Unique identifier of the type of error. Enables quick
                      recognition and categorization of the issue.
                    enum:
                      - dormakaba_sites_disconnected
                    type: string
                  is_bridge_error:
                    description: >-
                      Indicates whether the error is related to [Seam
                      Bridge](/capability-guides/seam-bridge).
                    type: boolean
                  is_connected_account_error:
                    description: >-
                      Indicates whether the error is related specifically to the
                      connected account.
                    type: boolean
                  message:
                    description: >-
                      Detailed description of the error. Provides insights into
                      the issue and potentially how to rectify it.
                    type: string
                required:
                  - created_at
                  - message
                  - error_code
                type: object
                x-resource-type: connected_account
          type: array
        ical_feed_origin:
          description: >-
            For iCal connected accounts, the platform that produced the feed
            (for example, `airbnb`, `vrbo`, or `booking`), or `unknown` when it
            could not be determined. Intended for rendering the source
            platform's logo.
          type: string
        ical_url:
          description: >-
            For iCal connected accounts, the feed URL for the connection.
            Sourced from the connector configuration.
          type: string
        image_url:
          description: Logo URL for the connected account provider.
          format: uri
          type: string
        time_zone:
          description: >-
            IANA time zone (e.g. America/Los_Angeles) for this connected
            account. Sourced from the connector configuration.
          type: string
        user_identifier:
          deprecated: true
          description: |-
            Deprecated. Use `display_name` instead.

            User identifier associated with the connected account.
          properties:
            api_url:
              description: >-
                API URL for the user identifier associated with the connected
                account.
              type: string
            email:
              description: >-
                Email address of the user identifier associated with the
                connected account.
              type: string
            exclusive:
              description: >-
                Indicates whether the user identifier associated with the
                connected account is exclusive.
              type: boolean
            phone:
              description: >-
                Phone number of the user identifier associated with the
                connected account.
              type: string
            username:
              description: >-
                Username of the user identifier associated with the connected
                account.
              type: string
          type: object
        warnings:
          type: array
          description: Warnings associated with the connected account.
          items:
            type: object
            properties:
              error_code:
                type: string
                description: Error or warning code.
              message:
                type: string
                description: Human-readable description.
              created_at:
                type: string
                format: date-time
                description: When this error or warning was generated.
      required:
        - connected_account_id
        - account_type_display_name
        - display_name
        - errors
        - warnings
        - custom_metadata
        - automatically_manage_new_devices
        - accepted_capabilities
      type: object
      x-route-path: /connected_accounts
    device:
      description: >-
        Represents a [device](/core-concepts/devices) that has been connected to
        Seam. See the [device object](/api/devices/object).
      properties:
        can_configure_auto_lock:
          description: Indicates whether the lock supports configuring automatic locking.
          type: boolean
        can_hvac_cool:
          description: Indicates whether the thermostat supports cooling.
          type: boolean
        can_hvac_heat:
          description: Indicates whether the thermostat supports heating.
          type: boolean
        can_hvac_heat_cool:
          description: >-
            Indicates whether the thermostat supports simultaneous heating and
            cooling.
          type: boolean
        can_program_offline_access_codes:
          description: >-
            Indicates whether the device supports programming offline access
            codes.
          type: boolean
        can_program_online_access_codes:
          description: >-
            Indicates whether the device supports programming online access
            codes.
          type: boolean
        can_program_thermostat_programs_as_different_each_day:
          description: >-
            Indicates whether the thermostat supports different climate programs
            for each day of the week.
          type: boolean
        can_program_thermostat_programs_as_same_each_day:
          description: >-
            Indicates whether the thermostat supports a single climate program
            applied to every day.
          type: boolean
        can_program_thermostat_programs_as_weekday_weekend:
          description: >-
            Indicates whether the thermostat supports weekday/weekend climate
            programs.
          type: boolean
        can_remotely_lock:
          description: Indicates whether the device supports remote locking.
          type: boolean
        can_remotely_unlock:
          description: Indicates whether the device supports remote unlocking.
          type: boolean
        can_run_thermostat_programs:
          description: Indicates whether the thermostat supports running climate programs.
          type: boolean
        can_simulate_connection:
          description: >-
            Indicates whether the device supports simulating connection in a
            sandbox.
          type: boolean
        can_simulate_disconnection:
          description: >-
            Indicates whether the device supports simulating disconnection in a
            sandbox.
          type: boolean
        can_simulate_hub_connection:
          description: >-
            Indicates whether the hub supports simulating connection in a
            sandbox.
          type: boolean
        can_simulate_hub_disconnection:
          description: >-
            Indicates whether the hub supports simulating disconnection in a
            sandbox.
          type: boolean
        can_simulate_paid_subscription:
          description: >-
            Indicates whether the device supports simulating a paid subscription
            in a sandbox.
          type: boolean
        can_simulate_removal:
          description: >-
            Indicates whether the device supports simulating removal in a
            sandbox.
          type: boolean
        can_turn_off_hvac:
          description: Indicates whether the thermostat can be turned off.
          type: boolean
        can_unlock_with_code:
          description: Indicates whether the lock supports unlocking with an access code.
          type: boolean
        capabilities_supported:
          description: |2-

                    Collection of capabilities that the device supports when connected to Seam. Values are `access_code`, which indicates that the device can manage and utilize digital PIN codes for secure access; `lock`, which indicates that the device controls a door locking mechanism, enabling the remote opening and closing of doors and other entry points; `noise_detection`, which indicates that the device supports monitoring and responding to ambient noise levels; `thermostat`, which indicates that the device can regulate and adjust indoor temperatures; `battery`, which indicates that the device can manage battery life and health; and `phone`, which indicates that the device is a mobile device, such as a smartphone. **Important:** Superseded by [capability flags](/capability-guides/device-and-system-capabilities#capability-flags).
                    
          items:
            description: |2-

                      Collection of capabilities that the device supports when connected to Seam. **Important:** Superseded by [capability flags](/capability-guides/device-and-system-capabilities#capability-flags).
                      
            enum:
              - access_code
              - lock
              - noise_detection
              - thermostat
              - battery
              - phone
            type: string
          type: array
        connected_account_id:
          description: Unique identifier for the account associated with the device.
          format: uuid
          type: string
        created_at:
          description: Date and time at which the device object was created.
          format: date-time
          type: string
        custom_metadata:
          additionalProperties:
            oneOf:
              - type: string
              - type: boolean
          description: >-
            Set of key:value pairs. Adding custom metadata to a resource, such
            as a [Connect
            Webview](/core-concepts/connect-webviews/attaching-custom-data-to-the-connect-webview),
            [connected
            account](/core-concepts/connected-accounts/adding-custom-metadata-to-a-connected-account),
            or
            [device](/core-concepts/devices/adding-custom-metadata-to-a-device),
            enables you to store custom information, like customer details or
            internal IDs from your application.
          type: object
        device_id:
          description: ID of the device.
          format: uuid
          type: string
        device_manufacturer:
          description: >-
            Manufacturer of the device. Represents the hardware brand, which may
            differ from the provider.
          properties:
            display_name:
              description: >-
                Display name for the manufacturer, such as `August`, `Yale`,
                `Salto`, and so on.
              type: string
            image_url:
              description: Image URL for the manufacturer logo.
              format: uri
              type: string
            manufacturer:
              description: >-
                Manufacturer identifier, such as `august`, `yale`, `salto`, and
                so on.
              type: string
          required:
            - manufacturer
            - display_name
          type: object
          x-property-group-key: hardware
        device_provider:
          description: >-
            Provider of the device. Represents the third-party service through
            which the device is controlled.
          properties:
            device_provider_name:
              description: >-
                Device provider name. Corresponds to the integration type, such
                as `august`, `schlage`, `yale_access`, and so on.
              type: string
            display_name:
              description: Display name for the device provider type.
              type: string
            image_url:
              description: Image URL for the device provider.
              format: uri
              type: string
            provider_category:
              description: >-
                Provider category. Indicates the third-party provider type, such
                as `stable`, for stable integrations, or `internal`, for
                internal integrations.
              type: string
          required:
            - provider_category
            - device_provider_name
            - display_name
          type: object
          x-property-group-key: hardware
        device_type:
          description: Type of the device.
          oneOf:
            - description: |-
                Device type for smartlocks.
                          
              enum:
                - akuvox_lock
                - august_lock
                - brivo_access_point
                - butterflymx_panel
                - avigilon_alta_entry
                - doorking_lock
                - genie_door
                - igloo_lock
                - linear_lock
                - lockly_lock
                - kwikset_lock
                - nuki_lock
                - salto_lock
                - schlage_lock
                - smartthings_lock
                - wyze_lock
                - yale_lock
                - two_n_intercom
                - controlbyweb_device
                - ttlock_lock
                - igloohome_lock
                - four_suites_door
                - dormakaba_oracode_door
                - tedee_lock
                - akiles_lock
                - ultraloq_lock
                - keyincode_lock
                - omnitec_lock
                - kisi_lock
              type: string
            - description: |-
                Device type for keys.
                          
              enum:
                - keynest_key
              type: string
            - description: |-
                Device type for noise sensors.
                          
              enum:
                - noiseaware_activity_zone
                - minut_sensor
              type: string
            - description: |-
                Device type for thermostats.
                          
              enum:
                - ecobee_thermostat
                - nest_thermostat
                - honeywell_resideo_thermostat
                - tado_thermostat
                - sensi_thermostat
                - smartthings_thermostat
              type: string
            - description: |-
                Device type for phones.
                          
              enum:
                - ios_phone
                - android_phone
              type: string
            - description: Device type for cameras.
              enum:
                - ring_camera
              type: string
        display_name:
          description: >-
            Display name of the device, defaults to nickname (if it is set) or
            `properties.appearance.name`, otherwise. Enables administrators and
            users to identify the device easily, especially when there are
            numerous devices.
          type: string
        errors:
          type: array
          description: >-
            Array of errors associated with the device. Each error object within
            the array contains two fields: `error_code` and `message`.
            `error_code` is a string that uniquely identifies the type of error,
            enabling quick recognition and categorization of the issue.
            `message` provides a more detailed description of the error,
            offering insights into the issue and potentially how to rectify it.
          items:
            type: object
            properties:
              error_code:
                type: string
                description: Error or warning code.
              message:
                type: string
                description: Human-readable description.
              created_at:
                type: string
                format: date-time
                description: When this error or warning was generated.
        is_managed:
          description: >-
            Indicates whether Seam manages the device. See also [Managed and
            Unmanaged
            Devices](/core-concepts/devices/managed-and-unmanaged-devices).
          enum:
            - true
          type: boolean
        location:
          description: Location information for the device.
          properties:
            location_name:
              description: |-
                Name of the device location.
                          
              type: string
            time_zone:
              description: |-
                Time zone of the device location.
                          
              type: string
            timezone:
              deprecated: true
              description: |-
                Deprecated. Use `time_zone` instead.

                Time zone of the device location.
              type: string
          type: object
          x-property-group-key: hardware
        nickname:
          description: Optional nickname to describe the device, settable through Seam.
          type: string
        properties:
          allOf:
            - allOf:
                - allOf:
                    - properties:
                        accessory_keypad:
                          description: Accessory keypad properties and state.
                          properties:
                            battery:
                              description: |-
                                Keypad battery properties.
                                          
                              properties:
                                level:
                                  format: float
                                  maximum: 1
                                  minimum: 0
                                  type: number
                              required:
                                - level
                              type: object
                            is_connected:
                              description: >-
                                Indicates if an accessory keypad is connected to
                                the device.
                                        
                              type: boolean
                          required:
                            - is_connected
                          type: object
                          x-property-group-key: hardware
                        appearance:
                          description: >-
                            Appearance-related properties, as reported by the
                            device.
                          properties:
                            name:
                              description: >-
                                Name of the device as seen from the provider API
                                and application, not settable through Seam.
                              type: string
                          required:
                            - name
                          type: object
                          x-property-group-key: hardware
                        battery:
                          description: >-
                            Represents the current status of the battery charge
                            level.
                          properties:
                            level:
                              description: >-
                                Battery charge level as a value between 0 and 1,
                                inclusive.
                                          
                              format: float
                              maximum: 1
                              minimum: 0
                              type: number
                            status:
                              description: >-
                                Represents the current status of the battery
                                charge level. Values are `critical`, which
                                indicates an extremely low level, suggesting
                                imminent shutdown or an urgent need for
                                charging; `low`, which signifies that the
                                battery is under the preferred threshold and
                                should be charged soon; `good`, which denotes a
                                satisfactory charge level, adequate for normal
                                use without the immediate need for recharging;
                                and `full`, which represents a battery that is
                                fully charged, providing the maximum duration of
                                usage.
                                          
                              enum:
                                - critical
                                - low
                                - good
                                - full
                              type: string
                          required:
                            - level
                            - status
                          type: object
                          x-property-group-key: hardware
                        battery_level:
                          description: >-
                            Indicates the battery level of the device as a
                            decimal value between 0 and 1, inclusive.
                          format: float
                          maximum: 1
                          minimum: 0
                          type: number
                          x-property-group-key: hardware
                        currently_triggering_noise_threshold_ids:
                          description: >-
                            Array of noise threshold IDs that are currently
                            triggering.
                          items:
                            type: string
                          type: array
                          x-property-group-key: noise_sensors
                        has_direct_power:
                          description: Indicates whether the device has direct power.
                          type: boolean
                          x-property-group-key: hardware
                        image_alt_text:
                          description: Alt text for the device image.
                          type: string
                          x-property-group-key: hardware
                        image_url:
                          description: Image URL for the device.
                          format: uri
                          type: string
                          x-property-group-key: hardware
                        manufacturer:
                          description: >-
                            Manufacturer of the device. When a device, such as a
                            smart lock, is connected through a smart hub, the
                            manufacturer of the device might be different from
                            that of the smart hub.
                          type: string
                          x-property-group-key: hardware
                        model:
                          description: Device model-related properties.
                          properties:
                            accessory_keypad_supported:
                              deprecated: true
                              type: boolean
                              description: >-
                                Deprecated. use
                                device.properties.model.can_connect_accessory_keypad
                            can_connect_accessory_keypad:
                              description: |2-

                                          Indicates whether the device can connect a accessory keypad.
                                      
                              type: boolean
                            display_name:
                              description: |2-

                                          Display name of the device model.
                                      
                              type: string
                            has_built_in_keypad:
                              description: |2-

                                          Indicates whether the device has a built in accessory keypad.
                                      
                              type: boolean
                            manufacturer_display_name:
                              description: |2-

                                          Display name that corresponds to the manufacturer-specific terminology for the device.
                                      
                              type: string
                            offline_access_codes_supported:
                              deprecated: true
                              type: boolean
                              description: >-
                                Deprecated. use
                                device.can_program_offline_access_codes.
                            online_access_codes_supported:
                              deprecated: true
                              type: boolean
                              description: >-
                                Deprecated. use
                                device.can_program_online_access_codes.
                          required:
                            - display_name
                            - manufacturer_display_name
                          type: object
                        name:
                          deprecated: true
                          description: |-
                            Deprecated. use device.display_name instead

                            Name of the device.
                          type: string
                        noise_level_decibels:
                          description: >-
                            Indicates current noise level in decibels, if the
                            device supports noise detection.
                          format: float
                          type: number
                          x-property-group-key: noise_sensors
                        offline_access_codes_enabled:
                          deprecated: true
                          description: >-
                            Deprecated. use
                            device.can_program_offline_access_codes


                            Indicates whether it is currently possible to use
                            offline access codes for the device.
                          type: boolean
                          x-property-group-key: access_codes
                        online:
                          description: Indicates whether the device is online.
                          type: boolean
                        online_access_codes_enabled:
                          deprecated: true
                          description: >-
                            Deprecated. use
                            device.can_program_online_access_codes


                            Indicates whether it is currently possible to use
                            online access codes for the device.
                          type: boolean
                          x-property-group-key: access_codes
                        serial_number:
                          description: Serial number of the device.
                          type: string
                          x-property-group-key: hardware
                        supports_accessory_keypad:
                          deprecated: true
                          type: boolean
                          x-property-group-key: access_codes
                          description: >-
                            Deprecated. use
                            device.properties.model.can_connect_accessory_keypad
                        supports_offline_access_codes:
                          deprecated: true
                          type: boolean
                          x-property-group-key: access_codes
                          description: Deprecated. use offline_access_codes_enabled
                      required:
                        - online
                        - name
                        - appearance
                        - model
                      type: object
                    - description: |2-

                                  Properties of the phone.
                                  
                      properties:
                        assa_abloy_credential_service_metadata:
                          description: >-
                            ASSA ABLOY Credential Service metadata for the
                            phone.
                          properties:
                            endpoints:
                              description: Endpoints associated with the phone.
                              items:
                                properties:
                                  endpoint_id:
                                    description: ID of the associated endpoint.
                                    type: string
                                  is_active:
                                    description: Indicated whether the endpoint is active.
                                    type: boolean
                                required:
                                  - endpoint_id
                                  - is_active
                                type: object
                              type: array
                            has_active_endpoint:
                              description: >-
                                Indicates whether the credential service has
                                active endpoints associated with the phone.
                              type: boolean
                          required:
                            - has_active_endpoint
                            - endpoints
                          type: object
                        salto_space_credential_service_metadata:
                          description: >-
                            Salto Space credential service metadata for the
                            phone.
                          properties:
                            has_active_phone:
                              description: >-
                                Indicates whether the credential service has an
                                active associated phone.
                              type: boolean
                          required:
                            - has_active_phone
                          type: object
                      type: object
                - description: Provider-specific metadata.
                  properties:
                    akiles_metadata:
                      description: Metadata for an Akiles device.
                      properties:
                        _member_group_id:
                          description: Group ID to which to add users for an Akiles device.
                          type: string
                        gadget_id:
                          description: Gadget ID for an Akiles device.
                          type: string
                        gadget_name:
                          description: Gadget name for an Akiles device.
                          type: string
                        product_name:
                          description: Product name for an Akiles device.
                          type: string
                      required:
                        - gadget_name
                        - gadget_id
                        - product_name
                      type: object
                    assa_abloy_vostio_metadata:
                      description: Metadata for an ASSA ABLOY Vostio system.
                      properties:
                        encoder_name:
                          description: Encoder name for an ASSA ABLOY Vostio system.
                          type: string
                      required:
                        - encoder_name
                      type: object
                    august_metadata:
                      description: Metadata for an August device.
                      properties:
                        has_keypad:
                          description: Indicates whether an August device has a keypad.
                          type: boolean
                        house_id:
                          description: House ID for an August device.
                          type: string
                        house_name:
                          description: House name for an August device.
                          type: string
                        keypad_battery_level:
                          description: Keypad battery level for an August device.
                          type: string
                        lock_id:
                          description: Lock ID for an August device.
                          type: string
                        lock_name:
                          description: Lock name for an August device.
                          type: string
                        model:
                          description: Model for an August device.
                          type: string
                      required:
                        - lock_id
                        - lock_name
                        - house_name
                        - has_keypad
                      type: object
                    avigilon_alta_metadata:
                      description: Metadata for an Avigilon Alta system.
                      properties:
                        entry_name:
                          description: Entry name for an Avigilon Alta system.
                          type: string
                        entry_relays_total_count:
                          description: >-
                            Total count of entry relays for an Avigilon Alta
                            system.
                          format: float
                          type: number
                        org_name:
                          description: Organization name for an Avigilon Alta system.
                          type: string
                        site_id:
                          description: Site ID for an Avigilon Alta system.
                          format: float
                          type: number
                        site_name:
                          description: Site name for an Avigilon Alta system.
                          type: string
                        zone_id:
                          description: Zone ID for an Avigilon Alta system.
                          format: float
                          type: number
                        zone_name:
                          description: Zone name for an Avigilon Alta system.
                          type: string
                      required:
                        - entry_name
                        - org_name
                        - zone_id
                        - zone_name
                        - site_id
                        - site_name
                        - entry_relays_total_count
                      type: object
                    brivo_metadata:
                      description: Metadata for a Brivo device.
                      properties:
                        activation_enabled:
                          description: >-
                            Indicates whether the Brivo access point has
                            activation (remote unlock) enabled.
                          type: boolean
                        device_name:
                          description: Device name for a Brivo device.
                          type: string
                      type: object
                    controlbyweb_metadata:
                      description: Metadata for a ControlByWeb device.
                      properties:
                        device_id:
                          description: Device ID for a ControlByWeb device.
                          type: string
                        device_name:
                          description: Device name for a ControlByWeb device.
                          type: string
                        relay_name:
                          description: Relay name for a ControlByWeb device.
                          nullable: true
                          type: string
                      required:
                        - device_id
                        - device_name
                        - relay_name
                      type: object
                    dormakaba_oracode_metadata:
                      description: Metadata for a dormakaba Oracode device.
                      properties:
                        device_id:
                          description: Device ID for a dormakaba Oracode device.
                          oneOf:
                            - format: float
                              type: number
                            - type: string
                        door_id:
                          description: Door ID for a dormakaba Oracode device.
                          format: float
                          type: number
                        door_is_wireless:
                          description: >-
                            Indicates whether a door is wireless for a dormakaba
                            Oracode device.
                          type: boolean
                        door_name:
                          description: Door name for a dormakaba Oracode device.
                          type: string
                        iana_timezone:
                          description: IANA time zone for a dormakaba Oracode device.
                          type: string
                        predefined_time_slots:
                          description: >-
                            Predefined time slots for a dormakaba Oracode
                            device.
                          items:
                            description: Time slot for a dormakaba Oracode device.
                            properties:
                              check_in_time:
                                description: >-
                                  Check in time for a time slot for a dormakaba
                                  Oracode device.
                                type: string
                              check_out_time:
                                description: >-
                                  Checkout time for a time slot for a dormakaba
                                  Oracode device.
                                type: string
                              dormakaba_oracode_user_level_id:
                                description: >-
                                  ID of a user level for a dormakaba Oracode
                                  device.
                                format: uuid
                                type: string
                              dormakaba_oracode_user_level_prefix:
                                description: >-
                                  Prefix for a user level for a dormakaba
                                  Oracode device.
                                format: float
                                type: number
                              is_24_hour:
                                description: >-
                                  Indicates whether a time slot for a dormakaba
                                  Oracode device is a 24-hour time slot.
                                type: boolean
                              is_biweekly_mode:
                                description: >-
                                  Indicates whether a time slot for a dormakaba
                                  Oracode device is in biweekly mode.
                                type: boolean
                              is_master:
                                description: >-
                                  Indicates whether a time slot for a dormakaba
                                  Oracode device is a master time slot.
                                type: boolean
                              is_one_shot:
                                description: >-
                                  Indicates whether a time slot for a dormakaba
                                  Oracode device is a one-shot time slot.
                                type: boolean
                              name:
                                description: >-
                                  Name of a time slot for a dormakaba Oracode
                                  device.
                                type: string
                              prefix:
                                description: >-
                                  Prefix for a time slot for a dormakaba Oracode
                                  device.
                                format: float
                                type: number
                            required:
                              - name
                              - prefix
                              - check_in_time
                              - check_out_time
                              - is_24_hour
                              - is_biweekly_mode
                              - is_one_shot
                              - is_master
                              - dormakaba_oracode_user_level_prefix
                              - dormakaba_oracode_user_level_id
                            type: object
                          type: array
                        site_id:
                          deprecated: true
                          description: |-
                            Deprecated. Previously marked as "@DEPRECATED."

                            Site ID for a dormakaba Oracode device.
                          format: float
                          nullable: true
                          type: number
                        site_name:
                          description: Site name for a dormakaba Oracode device.
                          type: string
                      required:
                        - door_name
                        - door_is_wireless
                        - site_id
                        - site_name
                      type: object
                    ecobee_metadata:
                      description: Metadata for an ecobee device.
                      properties:
                        device_name:
                          description: Device name for an ecobee device.
                          type: string
                        ecobee_device_id:
                          description: Device ID for an ecobee device.
                          type: string
                      required:
                        - ecobee_device_id
                        - device_name
                      type: object
                    four_suites_metadata:
                      description: Metadata for a 4SUITES device.
                      properties:
                        device_id:
                          description: Device ID for a 4SUITES device.
                          format: float
                          type: number
                        device_name:
                          description: Device name for a 4SUITES device.
                          type: string
                        reclose_delay_in_seconds:
                          description: Reclose delay, in seconds, for a 4SUITES device.
                          format: float
                          type: number
                      required:
                        - device_id
                        - device_name
                        - reclose_delay_in_seconds
                      type: object
                    genie_metadata:
                      description: Metadata for a Genie device.
                      properties:
                        device_name:
                          description: Lock name for a Genie device.
                          type: string
                        door_name:
                          description: Door name for a Genie device.
                          type: string
                      required:
                        - device_name
                        - door_name
                      type: object
                    honeywell_resideo_metadata:
                      description: Metadata for a Honeywell Resideo device.
                      properties:
                        device_name:
                          description: Device name for a Honeywell Resideo device.
                          type: string
                        honeywell_resideo_device_id:
                          description: Device ID for a Honeywell Resideo device.
                          type: string
                      required:
                        - honeywell_resideo_device_id
                        - device_name
                      type: object
                    igloo_metadata:
                      description: Metadata for an igloo device.
                      properties:
                        bridge_id:
                          description: Bridge ID for an igloo device.
                          type: string
                        device_id:
                          description: Device ID for an igloo device.
                          type: string
                        model:
                          description: Model for an igloo device.
                          type: string
                      required:
                        - device_id
                        - bridge_id
                      type: object
                    igloohome_metadata:
                      description: Metadata for an igloohome device.
                      properties:
                        bridge_id:
                          description: Bridge ID for an igloohome device.
                          type: string
                        bridge_name:
                          description: Bridge name for an igloohome device.
                          type: string
                        device_id:
                          description: Device ID for an igloohome device.
                          type: string
                        device_name:
                          description: Device name for an igloohome device.
                          type: string
                        is_accessory_keypad_linked_to_bridge:
                          description: >-
                            Indicates whether a keypad is linked to a bridge for
                            an igloohome device.
                          type: boolean
                        keypad_id:
                          description: Keypad ID for an igloohome device.
                          type: string
                      required:
                        - device_id
                        - device_name
                      type: object
                    keynest_metadata:
                      description: Metadata for a KeyNest device.
                      properties:
                        address:
                          description: Address for a KeyNest device.
                          nullable: true
                          type: string
                        current_or_last_store_id:
                          description: Current or last store ID for a KeyNest device.
                          format: float
                          type: number
                        current_status:
                          description: Current status for a KeyNest device.
                          nullable: true
                          type: string
                        current_user_company:
                          description: Current user company for a KeyNest device.
                          nullable: true
                          type: string
                        current_user_email:
                          description: Current user email for a KeyNest device.
                          nullable: true
                          type: string
                        current_user_name:
                          description: Current user name for a KeyNest device.
                          nullable: true
                          type: string
                        current_user_phone_number:
                          description: Current user phone number for a KeyNest device.
                          nullable: true
                          type: string
                        default_office_id:
                          description: Default office ID for a KeyNest device.
                          format: float
                          type: number
                        device_name:
                          description: Device name for a KeyNest device.
                          type: string
                        fob_id:
                          description: Fob ID for a KeyNest device.
                          format: float
                          type: number
                        handover_method:
                          description: Handover method for a KeyNest device.
                          nullable: true
                          type: string
                        has_photo:
                          description: Whether the KeyNest device has a photo.
                          type: boolean
                        is_quadient_locker:
                          description: >-
                            Whether the key is in a locker that does not support
                            the access codes API.
                          type: boolean
                        key_id:
                          description: Key ID for a KeyNest device.
                          type: string
                        key_notes:
                          description: Key notes for a KeyNest device.
                          nullable: true
                          type: string
                        keynest_app_user:
                          description: KeyNest app user for a KeyNest device.
                          nullable: true
                          type: string
                        last_movement:
                          description: Last movement timestamp for a KeyNest device.
                          type: string
                        property_id:
                          description: Property ID for a KeyNest device.
                          nullable: true
                          type: string
                        property_postcode:
                          description: Property postcode for a KeyNest device.
                          nullable: true
                          type: string
                        status_type:
                          description: Status type for a KeyNest device.
                          type: string
                        subscription_plan:
                          description: Subscription plan for a KeyNest device.
                          type: string
                      type: object
                    kisi_metadata:
                      description: Metadata for a Kisi device.
                      properties:
                        description:
                          description: Description for a Kisi device.
                          nullable: true
                          type: string
                        lock_id:
                          description: Lock ID for a Kisi device.
                          format: float
                          type: number
                        lock_name:
                          description: Lock name for a Kisi device.
                          type: string
                        place_name:
                          description: Place name for a Kisi device.
                          nullable: true
                          type: string
                      required:
                        - lock_id
                        - lock_name
                        - place_name
                        - description
                      type: object
                    korelock_metadata:
                      description: Metadata for a Korelock device.
                      properties:
                        device_id:
                          description: Device ID for a Korelock device.
                          type: string
                        device_name:
                          description: Device name for a Korelock device.
                          type: string
                        firmware_version:
                          description: Firmware version for a Korelock device.
                          type: string
                        location_id:
                          description: >-
                            Location ID for a Korelock device. Required for
                            timebound access codes.
                          nullable: true
                          type: string
                        model_code:
                          description: Model code for a Korelock device.
                          type: string
                        serial_number:
                          description: Serial number for a Korelock device.
                          type: string
                        wifi_signal_strength:
                          description: WiFi signal strength (0-1) for a Korelock device.
                          format: float
                          type: number
                      type: object
                    kwikset_metadata:
                      description: Metadata for a Kwikset device.
                      properties:
                        device_id:
                          description: Device ID for a Kwikset device.
                          type: string
                        device_name:
                          description: Device name for a Kwikset device.
                          type: string
                        model_number:
                          description: Model number for a Kwikset device.
                          type: string
                      required:
                        - device_id
                        - device_name
                        - model_number
                      type: object
                    lockly_metadata:
                      description: Metadata for a Lockly device.
                      properties:
                        device_id:
                          description: Device ID for a Lockly device.
                          type: string
                        device_name:
                          description: Device name for a Lockly device.
                          type: string
                        model:
                          description: Model for a Lockly device.
                          type: string
                      required:
                        - device_id
                        - device_name
                      type: object
                    minut_metadata:
                      description: Metadata for a Minut device.
                      properties:
                        device_id:
                          description: Device ID for a Minut device.
                          type: string
                        device_name:
                          description: Device name for a Minut device.
                          type: string
                        latest_sensor_values:
                          description: Latest sensor values for a Minut device.
                          properties:
                            accelerometer_z:
                              description: >-
                                Latest accelerometer Z-axis reading for a Minut
                                device.
                              properties:
                                time:
                                  description: >-
                                    Time of latest accelerometer Z-axis reading
                                    for a Minut device.
                                  type: string
                                value:
                                  description: >-
                                    Value of latest accelerometer Z-axis reading
                                    for a Minut device.
                                  format: float
                                  type: number
                              required:
                                - time
                                - value
                              type: object
                            humidity:
                              description: Latest humidity reading for a Minut device.
                              properties:
                                time:
                                  description: >-
                                    Time of latest humidity reading for a Minut
                                    device.
                                  type: string
                                value:
                                  description: >-
                                    Value of latest humidity reading for a Minut
                                    device.
                                  format: float
                                  type: number
                              required:
                                - time
                                - value
                              type: object
                            pressure:
                              description: Latest pressure reading for a Minut device.
                              properties:
                                time:
                                  description: >-
                                    Time of latest pressure reading for a Minut
                                    device.
                                  type: string
                                value:
                                  description: >-
                                    Value of latest pressure reading for a Minut
                                    device.
                                  format: float
                                  type: number
                              required:
                                - time
                                - value
                              type: object
                            sound:
                              description: Latest sound reading for a Minut device.
                              properties:
                                time:
                                  description: >-
                                    Time of latest sound reading for a Minut
                                    device.
                                  type: string
                                value:
                                  description: >-
                                    Value of latest sound reading for a Minut
                                    device.
                                  format: float
                                  type: number
                              required:
                                - time
                                - value
                              type: object
                            temperature:
                              description: Latest temperature reading for a Minut device.
                              properties:
                                time:
                                  description: >-
                                    Time of latest temperature reading for a
                                    Minut device.
                                  type: string
                                value:
                                  description: >-
                                    Value of latest temperature reading for a
                                    Minut device.
                                  format: float
                                  type: number
                              required:
                                - time
                                - value
                              type: object
                          required:
                            - temperature
                            - sound
                            - humidity
                            - pressure
                            - accelerometer_z
                          type: object
                      required:
                        - device_id
                        - device_name
                        - latest_sensor_values
                      type: object
                    nest_metadata:
                      description: Metadata for a Google Nest device.
                      properties:
                        device_custom_name:
                          description: >-
                            Custom device name for a Google Nest device. The
                            device owner sets this value.
                          type: string
                        device_name:
                          description: >-
                            Device name for a Google Nest device. Google sets
                            this value.
                          type: string
                        display_name:
                          description: Display name for a Google Nest device.
                          type: string
                        nest_device_id:
                          description: Device ID for a Google Nest device.
                          type: string
                      required:
                        - nest_device_id
                        - device_name
                        - device_custom_name
                      type: object
                    noiseaware_metadata:
                      description: Metadata for a NoiseAware device.
                      properties:
                        device_id:
                          description: Device ID for a NoiseAware device.
                          type: string
                        device_model:
                          description: Device model for a NoiseAware device.
                          enum:
                            - indoor
                            - outdoor
                          type: string
                        device_name:
                          description: Device name for a NoiseAware device.
                          type: string
                        noise_level_decibel:
                          description: Noise level, in decibels, for a NoiseAware device.
                          format: float
                          type: number
                        noise_level_nrs:
                          description: >-
                            Noise level, expressed as a Noise Risk Score (NRS),
                            for a NoiseAware device.
                          format: float
                          type: number
                      required:
                        - device_model
                        - noise_level_nrs
                        - noise_level_decibel
                        - device_name
                        - device_id
                      type: object
                    nuki_metadata:
                      description: Metadata for a Nuki device.
                      properties:
                        device_id:
                          description: Device ID for a Nuki device.
                          type: string
                        device_name:
                          description: Device name for a Nuki device.
                          type: string
                        keypad_2_paired:
                          description: >-
                            Indicates whether keypad 2 is paired for a Nuki
                            device.
                          type: boolean
                        keypad_battery_critical:
                          description: >-
                            Indicates whether the keypad battery is in a
                            critical state for a Nuki device.
                          type: boolean
                        keypad_paired:
                          description: >-
                            Indicates whether the keypad is paired for a Nuki
                            device.
                          type: boolean
                      required:
                        - device_id
                        - device_name
                      type: object
                    omnitec_metadata:
                      description: Metadata for an Omnitec device.
                      properties:
                        has_gateway:
                          description: >-
                            Whether the Omnitec lock has a connected gateway for
                            remote operations.
                          type: boolean
                        lock_alias:
                          description: Operator-assigned alias for an Omnitec device.
                          type: string
                        lock_id:
                          description: Lock ID for an Omnitec device.
                          format: float
                          type: number
                        lock_mac:
                          description: Bluetooth MAC address for an Omnitec device.
                          type: string
                        lock_name:
                          description: Lock name for an Omnitec device.
                          type: string
                        time_zone:
                          description: >-
                            IANA time zone for the Omnitec device, used to
                            schedule time-bound access codes at the correct
                            local time (accounting for DST).
                          nullable: true
                          type: string
                        timezone_raw_offset_ms:
                          description: >-
                            Static UTC offset of the Omnitec lock in
                            milliseconds. Does not account for DST.
                          format: float
                          type: number
                      required:
                        - lock_id
                        - lock_name
                        - lock_mac
                        - has_gateway
                        - timezone_raw_offset_ms
                      type: object
                    ring_metadata:
                      description: Metadata for a Ring device.
                      properties:
                        device_id:
                          description: Device ID for a Ring device.
                          type: string
                        device_name:
                          description: Device name for a Ring device.
                          type: string
                      required:
                        - device_id
                        - device_name
                      type: object
                    salto_ks_metadata:
                      description: Metadata for a Salto KS device.
                      properties:
                        battery_level:
                          description: Battery level for a Salto KS device.
                          type: string
                        customer_reference:
                          description: Customer reference for a Salto KS device.
                          type: string
                        has_custom_pin_subscription:
                          description: >-
                            Indicates whether the site has a Salto KS
                            subscription that supports custom PINs.
                          type: boolean
                        lock_id:
                          description: Lock ID for a Salto KS device.
                          type: string
                        lock_type:
                          description: Lock type for a Salto KS device.
                          type: string
                        locked_state:
                          description: Locked state for a Salto KS device.
                          type: string
                        model:
                          description: Model for a Salto KS device.
                          type: string
                        site_id:
                          description: >-
                            Site ID for the Salto KS site to which the device
                            belongs.
                          type: string
                        site_name:
                          description: >-
                            Site name for the Salto KS site to which the device
                            belongs.
                          type: string
                      required:
                        - lock_id
                        - customer_reference
                        - lock_type
                        - battery_level
                        - locked_state
                      type: object
                    salto_metadata:
                      deprecated: true
                      description: |-
                        Deprecated. Use `salto_ks_metadata ` instead.

                        Metada for a Salto device.
                      properties:
                        battery_level:
                          description: Battery level for a Salto device.
                          type: string
                        customer_reference:
                          description: Customer reference for a Salto device.
                          type: string
                        lock_id:
                          description: Lock ID for a Salto device.
                          type: string
                        lock_type:
                          description: Lock type for a Salto device.
                          type: string
                        locked_state:
                          description: Locked state for a Salto device.
                          type: string
                        model:
                          description: Model for a Salto device.
                          type: string
                        site_id:
                          description: >-
                            Site ID for the Salto KS site to which the device
                            belongs.
                          type: string
                        site_name:
                          description: >-
                            Site name for the Salto KS site to which the device
                            belongs.
                          type: string
                      required:
                        - lock_id
                        - customer_reference
                        - lock_type
                        - battery_level
                        - locked_state
                      type: object
                    schlage_metadata:
                      description: Metadata for a Schlage device.
                      properties:
                        device_id:
                          description: Device ID for a Schlage device.
                          type: string
                        device_name:
                          description: Device name for a Schlage device.
                          type: string
                        model:
                          description: Model for a Schlage device.
                          type: string
                      required:
                        - device_id
                        - device_name
                      type: object
                    seam_bridge_metadata:
                      description: Metadata for Seam Bridge.
                      properties:
                        device_num:
                          description: Device number for Seam Bridge.
                          format: float
                          type: number
                        name:
                          description: Name for Seam Bridge.
                          type: string
                        unlock_method:
                          description: Unlock method for Seam Bridge.
                          enum:
                            - bridge
                            - doorking
                          type: string
                      required:
                        - device_num
                        - name
                      type: object
                    sensi_metadata:
                      description: Metadata for a Sensi device.
                      properties:
                        device_id:
                          description: Device ID for a Sensi device.
                          type: string
                        device_name:
                          description: Device name for a Sensi device.
                          type: string
                        dual_setpoints_not_supported:
                          description: >-
                            Set to true when the device does not support the
                            /dual-setpoints API endpoint.
                          type: boolean
                        enforced_setpoint_range_celsius:
                          description: >-
                            Enforced setpoint range in Celsius for a Sensi
                            device, derived from an OutOfRange API error.
                        product_type:
                          description: Product type for a Sensi device.
                          type: string
                      required:
                        - device_id
                        - device_name
                        - product_type
                      type: object
                    smartthings_metadata:
                      description: Metadata for a SmartThings device.
                      properties:
                        device_id:
                          description: Device ID for a SmartThings device.
                          type: string
                        device_name:
                          description: Device name for a SmartThings device.
                          type: string
                        location_id:
                          description: Location ID for a SmartThings device.
                          type: string
                        model:
                          description: Model for a SmartThings device.
                          type: string
                      required:
                        - device_id
                        - device_name
                      type: object
                    tado_metadata:
                      description: Metadata for a tado° device.
                      properties:
                        device_type:
                          description: Device type for a tado° device.
                          type: string
                        serial_no:
                          description: Serial number for a tado° device.
                          type: string
                      required:
                        - serial_no
                        - device_type
                      type: object
                    tedee_metadata:
                      description: Metadata for a Tedee device.
                      properties:
                        bridge_id:
                          description: Bridge ID for a Tedee device.
                          format: float
                          type: number
                        bridge_name:
                          description: Bridge name for a Tedee device.
                          type: string
                        device_id:
                          description: Device ID for a Tedee device.
                          format: float
                          type: number
                        device_model:
                          description: Device model for a Tedee device.
                          type: string
                        device_name:
                          description: Device name for a Tedee device.
                          type: string
                        keypad_id:
                          description: Keypad ID for a Tedee device.
                          format: float
                          type: number
                        serial_number:
                          description: Serial number for a Tedee device.
                          type: string
                      required:
                        - device_id
                        - serial_number
                        - device_name
                        - device_model
                        - bridge_id
                        - bridge_name
                      type: object
                    ttlock_metadata:
                      description: Metadata for a TTLock device.
                      properties:
                        feature_value:
                          description: Feature value for a TTLock device.
                          type: string
                        features:
                          description: Features for a TTLock device.
                          properties:
                            auto_lock_time_config:
                              description: >-
                                Indicates whether a TTLock device supports
                                auto-lock time configuration.
                              type: boolean
                            incomplete_keyboard_passcode:
                              description: >-
                                Indicates whether a TTLock device supports an
                                incomplete keyboard passcode.
                              type: boolean
                            lock_command:
                              description: >-
                                Indicates whether a TTLock device supports the
                                lock command.
                              type: boolean
                            passcode:
                              description: >-
                                Indicates whether a TTLock device supports a
                                passcode.
                              type: boolean
                            passcode_management:
                              description: >-
                                Indicates whether a TTLock device supports
                                passcode management.
                              type: boolean
                            unlock_via_gateway:
                              description: >-
                                Indicates whether a TTLock device supports
                                unlock via gateway.
                              type: boolean
                            wifi:
                              description: >-
                                Indicates whether a TTLock device supports
                                Wi-Fi.
                              type: boolean
                          required:
                            - passcode
                            - passcode_management
                            - unlock_via_gateway
                            - lock_command
                            - incomplete_keyboard_passcode
                            - wifi
                            - auto_lock_time_config
                          type: object
                        has_gateway:
                          description: Indicates whether a TTLock device has a gateway.
                          type: boolean
                        lock_alias:
                          description: Lock alias for a TTLock device.
                          type: string
                        lock_id:
                          description: Lock ID for a TTLock device.
                          format: float
                          type: number
                        timezone_raw_offset_ms:
                          description: >-
                            Lock-side timezone offset in milliseconds east of
                            UTC, as configured in the TTLock app. Source of
                            truth for the lock's wall-clock interpretation of
                            access code start/end times — a misconfigured value
                            here is the typical cause of customer "codes offset
                            by N hours" reports. Diagnostic only; Seam does not
                            convert times based on this value.
                          format: float
                          nullable: true
                          type: number
                        wireless_keypads:
                          description: Wireless keypads for a TTLock device.
                          items:
                            properties:
                              wireless_keypad_id:
                                description: ID for a wireless keypad for a TTLock device.
                                format: float
                                type: number
                              wireless_keypad_name:
                                description: >-
                                  Name for a wireless keypad for a TTLock
                                  device.
                                type: string
                            required:
                              - wireless_keypad_id
                              - wireless_keypad_name
                            type: object
                          type: array
                      required:
                        - lock_id
                        - lock_alias
                        - feature_value
                        - features
                      type: object
                    two_n_metadata:
                      description: Metadata for a 2N device.
                      properties:
                        device_id:
                          description: Device ID for a 2N device.
                          format: float
                          type: number
                        device_name:
                          description: Device name for a 2N device.
                          type: string
                      required:
                        - device_id
                        - device_name
                      type: object
                    ultraloq_metadata:
                      description: Metadata for an Ultraloq device.
                      properties:
                        device_id:
                          description: Device ID for an Ultraloq device.
                          type: string
                        device_name:
                          description: Device name for an Ultraloq device.
                          type: string
                        device_type:
                          description: Device type for an Ultraloq device.
                          type: string
                        time_zone:
                          description: IANA timezone for the Ultraloq device.
                          nullable: true
                          type: string
                      required:
                        - device_id
                        - device_name
                        - device_type
                        - time_zone
                      type: object
                    visionline_metadata:
                      description: Metadata for an ASSA ABLOY Visionline system.
                      properties:
                        encoder_id:
                          description: Encoder ID for an ASSA ABLOY Visionline system.
                          type: string
                      required:
                        - encoder_id
                      type: object
                    wyze_metadata:
                      description: Metadata for a Wyze device.
                      properties:
                        device_id:
                          description: Device ID for a Wyze device.
                          type: string
                        device_info_model:
                          description: Device information model for a Wyze device.
                          type: string
                        device_name:
                          description: Device name for a Wyze device.
                          type: string
                        keypad_uuid:
                          description: Keypad UUID for a Wyze device.
                          type: string
                        locker_status_hardlock:
                          description: Locker status (hardlock) for a Wyze device.
                          format: float
                          type: number
                        product_model:
                          description: Product model for a Wyze device.
                          type: string
                        product_name:
                          description: Product name for a Wyze device.
                          type: string
                        product_type:
                          description: Product type for a Wyze device.
                          type: string
                      required:
                        - device_id
                        - device_name
                        - product_name
                        - product_type
                        - product_model
                        - device_info_model
                      type: object
                  type: object
                  x-property-group-key: provider_metadata
            - allOf:
                - properties:
                    auto_lock_delay_seconds:
                      description: >-
                        The delay in seconds before the lock automatically locks
                        after being unlocked.
                      format: float
                      type: number
                      x-property-group-key: locks
                    auto_lock_enabled:
                      description: Indicates whether automatic locking is enabled.
                      type: boolean
                      x-property-group-key: locks
                    backup_access_code_pool_enabled:
                      description: >-
                        Indicates whether the [backup access code
                        pool](/low-level-apis/smart-locks/access-codes/backup-access-codes)
                        is currently enabled for the device. To disable it, set
                        this to `false` using
                        [/devices/update](/api/devices/update).
                      type: boolean
                      x-property-group-key: access_codes
                    code_constraints:
                      description: >-
                        Constraints on access codes for the device. Seam
                        represents each constraint as an object with a
                        `constraint_type` property. Depending on the constraint
                        type, there may also be additional properties. Note that
                        some constraints are manufacturer- or device-specific.
                      items:
                        description: Access code constraint.
                        oneOf:
                          - description: Code constraint for access codes.
                            properties:
                              constraint_type:
                                description: Code constraint type for access codes.
                                enum:
                                  - no_zeros
                                  - cannot_start_with_12
                                  - no_triple_consecutive_ints
                                  - cannot_specify_pin_code
                                  - pin_code_matches_existing_set
                                  - start_date_in_future
                                  - no_ascending_or_descending_sequence
                                  - at_least_three_unique_digits
                                  - cannot_contain_089
                                  - cannot_contain_0789
                                  - unique_first_four_digits
                                  - no_all_same_digits
                                type: string
                            required:
                              - constraint_type
                            type: object
                          - description: Name constraint for access codes.
                            properties:
                              constraint_type:
                                enum:
                                  - name_length
                                  - name_must_be_unique
                                type: string
                              max_length:
                                description: >-
                                  Maximum name length constraint for access
                                  codes.
                                format: float
                                type: number
                              min_length:
                                description: >-
                                  Minimum name length constraint for access
                                  codes.
                                format: float
                                type: number
                            required:
                              - constraint_type
                            type: object
                      type: array
                      x-property-group-key: access_codes
                    door_open:
                      description: Indicates whether the door is open.
                      type: boolean
                      x-property-group-key: locks
                    has_native_entry_events:
                      description: >-
                        Indicates whether the device supports native entry
                        events.
                      type: boolean
                      x-property-group-key: access_codes
                    keypad_battery:
                      description: Keypad battery status.
                      properties:
                        level:
                          description: |2-

                                      Keypad battery charge level.
                                      
                          format: float
                          type: number
                      required:
                        - level
                      type: object
                      x-property-group-key: access_codes
                    locked:
                      description: Indicates whether the lock is locked.
                      type: boolean
                      x-property-group-key: locks
                    max_active_codes_supported:
                      description: >-
                        Maximum number of active access codes that the device
                        supports.
                      format: float
                      type: number
                      x-property-group-key: access_codes
                    offline_time_frame_options:
                      description: >-
                        Time frames that may be requested when creating an
                        offline access code, expressed as a list of options. The
                        caller picks one option (by matching the requested
                        duration when the options' duration ranges do not
                        overlap, or by `display_name` when they do) and
                        satisfies that one option's rules. When `undefined`, any
                        time frame works.
                      items:
                        description: >-
                          One way to make a code: a duration band plus the
                          time-of-day and date rules that apply within it.
                          Absence of a rule means unrestricted on that axis.
                        properties:
                          display_name:
                            description: >-
                              Label for this option. For a single-option device,
                              the product name (for example, `algoPIN` or
                              `SmartPIN`); for a multi-option device, a label
                              that distinguishes it (for example, `Hourly` or
                              `Fixed start times`).
                            type: string
                          end_date_recurrence_rule:
                            description: >-
                              iCalendar recurrence rule (RRULE) that the end
                              date must fall on. Constrains which calendar dates
                              are selectable, independent of the time-of-day
                              rules.
                            type: string
                          matching_start_end_time:
                            description: >-
                              When `true`, the start and end must fall at the
                              same time of day (the caller picks which).
                              Mutually exclusive with `time_pairs`.
                            enum:
                              - true
                            type: boolean
                          max_duration:
                            description: >-
                              Maximum duration this option covers, as an ISO
                              8601 duration (for example, `PT672H` or `P367D`).
                              Omitted when there is no maximum.
                            type: string
                          min_duration:
                            description: >-
                              Minimum duration this option covers, as an ISO
                              8601 duration (for example, `PT1H` or `P29D`).
                              Omitted when there is no minimum.
                            type: string
                          start_date_recurrence_rule:
                            description: >-
                              iCalendar recurrence rule (RRULE) that the start
                              date must fall on (for example,
                              `FREQ=MONTHLY;BYDAY=1MO,3MO`). Constrains which
                              calendar dates are selectable, independent of the
                              time-of-day rules.
                            type: string
                          time_pairs:
                            description: >-
                              Fixed start/end time pairings the caller chooses
                              from. Mutually exclusive with
                              `matching_start_end_time`.
                            items:
                              description: >-
                                Fixed start/end time pairing. The caller picks
                                one whole pairing; the two times cannot be mixed
                                across pairs.
                              properties:
                                display_name:
                                  description: Label for the start/end time pairing.
                                  type: string
                                end_time:
                                  description: >-
                                    End time of day as a 24-hour `HH:MM` value,
                                    interpreted in the option's `time_zone`. An
                                    `end_time` earlier on the clock than
                                    `start_time` means the end falls on a later
                                    date.
                                  type: string
                                start_time:
                                  description: >-
                                    Start time of day as a 24-hour `HH:MM`
                                    value, interpreted in the option's
                                    `time_zone`.
                                  type: string
                              required:
                                - display_name
                                - start_time
                                - end_time
                              type: object
                            type: array
                          time_zone:
                            description: >-
                              IANA time zone for interpreting `time_pairs` and
                              the date recurrence rules. Present only when the
                              option fixes times or dates.
                            type: string
                        required:
                          - display_name
                        type: object
                      type: array
                      x-property-group-key: access_codes
                    online_time_frame_options:
                      description: >-
                        Time frames that may be requested when creating an
                        online access code, expressed as a list of options. The
                        caller picks one option (by matching the requested
                        duration when the options' duration ranges do not
                        overlap, or by `display_name` when they do) and
                        satisfies that one option's rules. When `undefined`, any
                        time frame works.
                      items:
                        description: >-
                          One way to make a code: a duration band plus the
                          time-of-day and date rules that apply within it.
                          Absence of a rule means unrestricted on that axis.
                        properties:
                          display_name:
                            description: >-
                              Label for this option. For a single-option device,
                              the product name (for example, `algoPIN` or
                              `SmartPIN`); for a multi-option device, a label
                              that distinguishes it (for example, `Hourly` or
                              `Fixed start times`).
                            type: string
                          end_date_recurrence_rule:
                            description: >-
                              iCalendar recurrence rule (RRULE) that the end
                              date must fall on. Constrains which calendar dates
                              are selectable, independent of the time-of-day
                              rules.
                            type: string
                          matching_start_end_time:
                            description: >-
                              When `true`, the start and end must fall at the
                              same time of day (the caller picks which).
                              Mutually exclusive with `time_pairs`.
                            enum:
                              - true
                            type: boolean
                          max_duration:
                            description: >-
                              Maximum duration this option covers, as an ISO
                              8601 duration (for example, `PT672H` or `P367D`).
                              Omitted when there is no maximum.
                            type: string
                          min_duration:
                            description: >-
                              Minimum duration this option covers, as an ISO
                              8601 duration (for example, `PT1H` or `P29D`).
                              Omitted when there is no minimum.
                            type: string
                          start_date_recurrence_rule:
                            description: >-
                              iCalendar recurrence rule (RRULE) that the start
                              date must fall on (for example,
                              `FREQ=MONTHLY;BYDAY=1MO,3MO`). Constrains which
                              calendar dates are selectable, independent of the
                              time-of-day rules.
                            type: string
                          time_pairs:
                            description: >-
                              Fixed start/end time pairings the caller chooses
                              from. Mutually exclusive with
                              `matching_start_end_time`.
                            items:
                              description: >-
                                Fixed start/end time pairing. The caller picks
                                one whole pairing; the two times cannot be mixed
                                across pairs.
                              properties:
                                display_name:
                                  description: Label for the start/end time pairing.
                                  type: string
                                end_time:
                                  description: >-
                                    End time of day as a 24-hour `HH:MM` value,
                                    interpreted in the option's `time_zone`. An
                                    `end_time` earlier on the clock than
                                    `start_time` means the end falls on a later
                                    date.
                                  type: string
                                start_time:
                                  description: >-
                                    Start time of day as a 24-hour `HH:MM`
                                    value, interpreted in the option's
                                    `time_zone`.
                                  type: string
                              required:
                                - display_name
                                - start_time
                                - end_time
                              type: object
                            type: array
                          time_zone:
                            description: >-
                              IANA time zone for interpreting `time_pairs` and
                              the date recurrence rules. Present only when the
                              option fixes times or dates.
                            type: string
                        required:
                          - display_name
                        type: object
                      type: array
                      x-property-group-key: access_codes
                    supported_code_lengths:
                      description: Supported code lengths for access codes.
                      items:
                        format: float
                        type: number
                      type: array
                      x-property-group-key: access_codes
                    supports_backup_access_code_pool:
                      description: >-
                        Indicates whether the device supports a [backup access
                        code
                        pool](/low-level-apis/smart-locks/access-codes/backup-access-codes).
                      type: boolean
                      x-property-group-key: access_codes
                  type: object
                - properties:
                    active_thermostat_schedule:
                      deprecated: true
                      description: >-
                        Deprecated. Use `active_thermostat_schedule_id` with
                        `/thermostats/schedules/get` instead.


                        Active [thermostat
                        schedule](/capability-guides/thermostats/creating-and-managing-thermostat-schedules).
                      nullable: true
                      properties:
                        climate_preset_key:
                          description: >-
                            Key of the [climate
                            preset](/capability-guides/thermostats/creating-and-managing-climate-presets)
                            to use for the [thermostat
                            schedule](/capability-guides/thermostats/creating-and-managing-thermostat-schedules).
                          type: string
                        created_at:
                          description: >-
                            Date and time at which the [thermostat
                            schedule](/capability-guides/thermostats/creating-and-managing-thermostat-schedules)
                            was created.
                          format: date-time
                          type: string
                        device_id:
                          description: >-
                            ID of the desired
                            [thermostat](/capability-guides/thermostats) device.
                          format: uuid
                          type: string
                        ends_at:
                          description: >-
                            Date and time at which the [thermostat
                            schedule](/capability-guides/thermostats/creating-and-managing-thermostat-schedules)
                            ends, in [ISO
                            8601](https://www.iso.org/iso-8601-date-and-time-format.html)
                            format.
                          format: date-time
                          type: string
                        errors:
                          description: >-
                            Errors associated with the [thermostat
                            schedule](/capability-guides/thermostats/creating-and-managing-thermostat-schedules).
                          items:
                            properties:
                              error_code:
                                description: >-
                                  Unique identifier of the type of error.
                                  Enables quick recognition and categorization
                                  of the issue.
                                type: string
                              message:
                                description: >-
                                  Detailed description of the error. Provides
                                  insights into the issue and potentially how to
                                  rectify it.
                                type: string
                            required:
                              - error_code
                              - message
                            type: object
                          type: array
                        is_override_allowed:
                          description: >-
                            Indicates whether a person at the thermostat can
                            change the thermostat's settings after the
                            [thermostat
                            schedule](/capability-guides/thermostats/creating-and-managing-thermostat-schedules)
                            starts.
                          type: boolean
                        max_override_period_minutes:
                          description: >-
                            Number of minutes for which a person at the
                            thermostat can change the thermostat's settings
                            after the activation of the scheduled [climate
                            preset](/capability-guides/thermostats/creating-and-managing-climate-presets).
                            See also [Specifying Manual Override
                            Permissions](/capability-guides/thermostats/creating-and-managing-thermostat-schedules#specifying-manual-override-permissions).
                          exclusiveMinimum: true
                          minimum: 0
                          nullable: true
                          type: integer
                        name:
                          description: >-
                            User-friendly name to identify the [thermostat
                            schedule](/capability-guides/thermostats/creating-and-managing-thermostat-schedules).
                          nullable: true
                          type: string
                        starts_at:
                          description: >-
                            Date and time at which the [thermostat
                            schedule](/capability-guides/thermostats/creating-and-managing-thermostat-schedules)
                            starts, in [ISO
                            8601](https://www.iso.org/iso-8601-date-and-time-format.html)
                            format.
                          format: date-time
                          type: string
                        thermostat_schedule_id:
                          description: >-
                            ID of the [thermostat
                            schedule](/capability-guides/thermostats/creating-and-managing-thermostat-schedules).
                          format: uuid
                          type: string
                        workspace_id:
                          description: >-
                            ID of the workspace that contains the thermostat
                            schedule.
                          format: uuid
                          type: string
                      required:
                        - thermostat_schedule_id
                        - device_id
                        - name
                        - climate_preset_key
                        - starts_at
                        - ends_at
                        - workspace_id
                        - created_at
                        - errors
                      type: object
                      x-property-group-key: thermostats
                      x-route-path: /thermostats/schedules
                    active_thermostat_schedule_id:
                      description: >-
                        ID of the active [thermostat
                        schedule](/capability-guides/thermostats/creating-and-managing-thermostat-schedules).
                      format: uuid
                      nullable: true
                      type: string
                      x-property-group-key: thermostats
                    available_climate_preset_modes:
                      description: >-
                        Climate preset modes that the thermostat supports, such
                        as "home", "away", "wake", "sleep", "occupied", and
                        "unoccupied".
                      items:
                        description: >-
                          Climate preset mode for the thermostat, such as
                          `home`, `away`, `wake`, `sleep`, `occupied`, or
                          `unoccupied`.
                        enum:
                          - home
                          - away
                          - wake
                          - sleep
                          - occupied
                          - unoccupied
                        type: string
                      type: array
                      x-property-group-key: thermostats
                    available_climate_presets:
                      description: >-
                        Available [climate
                        presets](/capability-guides/thermostats/creating-and-managing-climate-presets)
                        for the thermostat.
                      items:
                        properties:
                          can_delete:
                            description: >-
                              Indicates whether the [climate
                              preset](/capability-guides/thermostats/creating-and-managing-climate-presets)
                              key can be deleted.
                            type: boolean
                          can_edit:
                            description: >-
                              Indicates whether the [climate
                              preset](/capability-guides/thermostats/creating-and-managing-climate-presets)
                              key can be edited.
                            type: boolean
                          can_use_with_thermostat_daily_programs:
                            description: >-
                              Indicates whether the [climate
                              preset](/capability-guides/thermostats/creating-and-managing-climate-presets)
                              key can be programmed in a thermostat daily
                              program.
                            type: boolean
                          climate_preset_key:
                            description: >-
                              Unique key to identify the [climate
                              preset](/capability-guides/thermostats/creating-and-managing-climate-presets).
                            type: string
                          climate_preset_mode:
                            description: |2-

                                  The climate preset mode for the thermostat, based on the available climate preset modes reported by the device.
                                
                            enum:
                              - home
                              - away
                              - wake
                              - sleep
                              - occupied
                              - unoccupied
                            type: string
                          cooling_set_point_celsius:
                            description: >-
                              Temperature to which the thermostat should cool
                              (in °C). See also [Set
                              Points](/capability-guides/thermostats/understanding-thermostat-concepts/set-points).
                            format: float
                            type: number
                          cooling_set_point_fahrenheit:
                            description: >-
                              Temperature to which the thermostat should cool
                              (in °F). See also [Set
                              Points](/capability-guides/thermostats/understanding-thermostat-concepts/set-points).
                            format: float
                            type: number
                          display_name:
                            description: >-
                              Display name for the [climate
                              preset](/capability-guides/thermostats/creating-and-managing-climate-presets).
                            type: string
                          ecobee_metadata:
                            description: |2-

                                  Metadata specific to the Ecobee climate, if applicable.
                                
                            properties:
                              climate_ref:
                                description: >-
                                  Reference to the Ecobee climate, if
                                  applicable.
                                type: string
                              is_optimized:
                                description: >-
                                  Indicates if the climate preset is optimized
                                  by Ecobee.
                                type: boolean
                              owner:
                                description: >-
                                  Indicates whether the climate preset is owned
                                  by the user or the system.
                                enum:
                                  - user
                                  - system
                                type: string
                            required:
                              - climate_ref
                              - is_optimized
                              - owner
                            type: object
                          fan_mode_setting:
                            description: >-
                              Desired [fan mode
                              setting](/capability-guides/thermostats/configure-current-climate-settings#fan-mode-settings),
                              such as `on`, `auto`, or `circulate`.
                            enum:
                              - auto
                              - 'on'
                              - circulate
                            type: string
                          heating_set_point_celsius:
                            description: >-
                              Temperature to which the thermostat should heat
                              (in °C). See also [Set
                              Points](/capability-guides/thermostats/understanding-thermostat-concepts/set-points).
                            format: float
                            type: number
                          heating_set_point_fahrenheit:
                            description: >-
                              Temperature to which the thermostat should heat
                              (in °F). See also [Set
                              Points](/capability-guides/thermostats/understanding-thermostat-concepts/set-points).
                            format: float
                            type: number
                          hvac_mode_setting:
                            description: >-
                              Desired [HVAC
                              mode](/capability-guides/thermostats/understanding-thermostat-concepts/hvac-mode)
                              setting, such as `heat`, `cool`, `heat_cool`, or
                              `off`.
                            enum:
                              - 'off'
                              - heat
                              - cool
                              - heat_cool
                              - eco
                            type: string
                          manual_override_allowed:
                            deprecated: true
                            description: >-
                              Deprecated. Use
                              'thermostat_schedule.is_override_allowed'


                              Indicates whether a person at the thermostat can
                              change the thermostat's settings. See [Specifying
                              Manual Override
                              Permissions](/capability-guides/thermostats/creating-and-managing-thermostat-schedules#specifying-manual-override-permissions).
                            type: boolean
                          name:
                            default: null
                            description: >-
                              User-friendly name to identify the [climate
                              preset](/capability-guides/thermostats/creating-and-managing-climate-presets).
                            nullable: true
                            type: string
                        required:
                          - climate_preset_key
                          - can_edit
                          - can_delete
                          - can_use_with_thermostat_daily_programs
                          - display_name
                          - manual_override_allowed
                        type: object
                      type: array
                      x-property-group-key: thermostats
                    available_fan_mode_settings:
                      description: Fan mode settings that the thermostat supports.
                      items:
                        description: >-
                          Fan mode setting for the thermostat, such as `auto`,
                          `on`, or `circulate`.
                        enum:
                          - auto
                          - 'on'
                          - circulate
                        type: string
                      type: array
                      x-property-group-key: thermostats
                    available_hvac_mode_settings:
                      description: HVAC mode settings that the thermostat supports.
                      items:
                        description: >-
                          HVAC mode setting for the thermostat, such as `heat`,
                          `cool`, `heat_cool`, `eco`, or `off`.
                        enum:
                          - 'off'
                          - heat
                          - cool
                          - heat_cool
                          - eco
                        type: string
                      type: array
                      x-property-group-key: thermostats
                    current_climate_setting:
                      description: Current climate setting.
                      properties:
                        can_delete:
                          description: >-
                            Indicates whether the [climate
                            preset](/capability-guides/thermostats/creating-and-managing-climate-presets)
                            key can be deleted.
                          type: boolean
                        can_edit:
                          description: >-
                            Indicates whether the [climate
                            preset](/capability-guides/thermostats/creating-and-managing-climate-presets)
                            key can be edited.
                          type: boolean
                        can_use_with_thermostat_daily_programs:
                          description: >-
                            Indicates whether the [climate
                            preset](/capability-guides/thermostats/creating-and-managing-climate-presets)
                            key can be programmed in a thermostat daily program.
                          type: boolean
                        climate_preset_key:
                          description: >-
                            Unique key to identify the [climate
                            preset](/capability-guides/thermostats/creating-and-managing-climate-presets).
                          type: string
                        climate_preset_mode:
                          description: |2-

                                The climate preset mode for the thermostat, based on the available climate preset modes reported by the device.
                              
                          enum:
                            - home
                            - away
                            - wake
                            - sleep
                            - occupied
                            - unoccupied
                          type: string
                        cooling_set_point_celsius:
                          description: >-
                            Temperature to which the thermostat should cool (in
                            °C). See also [Set
                            Points](/capability-guides/thermostats/understanding-thermostat-concepts/set-points).
                          format: float
                          type: number
                        cooling_set_point_fahrenheit:
                          description: >-
                            Temperature to which the thermostat should cool (in
                            °F). See also [Set
                            Points](/capability-guides/thermostats/understanding-thermostat-concepts/set-points).
                          format: float
                          type: number
                        display_name:
                          description: >-
                            Display name for the [climate
                            preset](/capability-guides/thermostats/creating-and-managing-climate-presets).
                          type: string
                        ecobee_metadata:
                          description: |2-

                                Metadata specific to the Ecobee climate, if applicable.
                              
                          properties:
                            climate_ref:
                              description: Reference to the Ecobee climate, if applicable.
                              type: string
                            is_optimized:
                              description: >-
                                Indicates if the climate preset is optimized by
                                Ecobee.
                              type: boolean
                            owner:
                              description: >-
                                Indicates whether the climate preset is owned by
                                the user or the system.
                              enum:
                                - user
                                - system
                              type: string
                          required:
                            - climate_ref
                            - is_optimized
                            - owner
                          type: object
                        fan_mode_setting:
                          description: >-
                            Desired [fan mode
                            setting](/capability-guides/thermostats/configure-current-climate-settings#fan-mode-settings),
                            such as `on`, `auto`, or `circulate`.
                          enum:
                            - auto
                            - 'on'
                            - circulate
                          type: string
                        heating_set_point_celsius:
                          description: >-
                            Temperature to which the thermostat should heat (in
                            °C). See also [Set
                            Points](/capability-guides/thermostats/understanding-thermostat-concepts/set-points).
                          format: float
                          type: number
                        heating_set_point_fahrenheit:
                          description: >-
                            Temperature to which the thermostat should heat (in
                            °F). See also [Set
                            Points](/capability-guides/thermostats/understanding-thermostat-concepts/set-points).
                          format: float
                          type: number
                        hvac_mode_setting:
                          description: >-
                            Desired [HVAC
                            mode](/capability-guides/thermostats/understanding-thermostat-concepts/hvac-mode)
                            setting, such as `heat`, `cool`, `heat_cool`, or
                            `off`.
                          enum:
                            - 'off'
                            - heat
                            - cool
                            - heat_cool
                            - eco
                          type: string
                        manual_override_allowed:
                          deprecated: true
                          description: >-
                            Deprecated. Use
                            'thermostat_schedule.is_override_allowed'


                            Indicates whether a person at the thermostat can
                            change the thermostat's settings. See [Specifying
                            Manual Override
                            Permissions](/capability-guides/thermostats/creating-and-managing-thermostat-schedules#specifying-manual-override-permissions).
                          type: boolean
                        name:
                          default: null
                          description: >-
                            User-friendly name to identify the [climate
                            preset](/capability-guides/thermostats/creating-and-managing-climate-presets).
                          nullable: true
                          type: string
                      type: object
                      x-property-group-key: thermostats
                    default_climate_setting:
                      deprecated: true
                      properties:
                        can_delete:
                          description: >-
                            Indicates whether the [climate
                            preset](/capability-guides/thermostats/creating-and-managing-climate-presets)
                            key can be deleted.
                          type: boolean
                        can_edit:
                          description: >-
                            Indicates whether the [climate
                            preset](/capability-guides/thermostats/creating-and-managing-climate-presets)
                            key can be edited.
                          type: boolean
                        can_use_with_thermostat_daily_programs:
                          description: >-
                            Indicates whether the [climate
                            preset](/capability-guides/thermostats/creating-and-managing-climate-presets)
                            key can be programmed in a thermostat daily program.
                          type: boolean
                        climate_preset_key:
                          description: >-
                            Unique key to identify the [climate
                            preset](/capability-guides/thermostats/creating-and-managing-climate-presets).
                          type: string
                        climate_preset_mode:
                          description: |2-

                                The climate preset mode for the thermostat, based on the available climate preset modes reported by the device.
                              
                          enum:
                            - home
                            - away
                            - wake
                            - sleep
                            - occupied
                            - unoccupied
                          type: string
                        cooling_set_point_celsius:
                          description: >-
                            Temperature to which the thermostat should cool (in
                            °C). See also [Set
                            Points](/capability-guides/thermostats/understanding-thermostat-concepts/set-points).
                          format: float
                          type: number
                        cooling_set_point_fahrenheit:
                          description: >-
                            Temperature to which the thermostat should cool (in
                            °F). See also [Set
                            Points](/capability-guides/thermostats/understanding-thermostat-concepts/set-points).
                          format: float
                          type: number
                        display_name:
                          description: >-
                            Display name for the [climate
                            preset](/capability-guides/thermostats/creating-and-managing-climate-presets).
                          type: string
                        ecobee_metadata:
                          description: |2-

                                Metadata specific to the Ecobee climate, if applicable.
                              
                          properties:
                            climate_ref:
                              description: Reference to the Ecobee climate, if applicable.
                              type: string
                            is_optimized:
                              description: >-
                                Indicates if the climate preset is optimized by
                                Ecobee.
                              type: boolean
                            owner:
                              description: >-
                                Indicates whether the climate preset is owned by
                                the user or the system.
                              enum:
                                - user
                                - system
                              type: string
                          required:
                            - climate_ref
                            - is_optimized
                            - owner
                          type: object
                        fan_mode_setting:
                          description: >-
                            Desired [fan mode
                            setting](/capability-guides/thermostats/configure-current-climate-settings#fan-mode-settings),
                            such as `on`, `auto`, or `circulate`.
                          enum:
                            - auto
                            - 'on'
                            - circulate
                          type: string
                        heating_set_point_celsius:
                          description: >-
                            Temperature to which the thermostat should heat (in
                            °C). See also [Set
                            Points](/capability-guides/thermostats/understanding-thermostat-concepts/set-points).
                          format: float
                          type: number
                        heating_set_point_fahrenheit:
                          description: >-
                            Temperature to which the thermostat should heat (in
                            °F). See also [Set
                            Points](/capability-guides/thermostats/understanding-thermostat-concepts/set-points).
                          format: float
                          type: number
                        hvac_mode_setting:
                          description: >-
                            Desired [HVAC
                            mode](/capability-guides/thermostats/understanding-thermostat-concepts/hvac-mode)
                            setting, such as `heat`, `cool`, `heat_cool`, or
                            `off`.
                          enum:
                            - 'off'
                            - heat
                            - cool
                            - heat_cool
                            - eco
                          type: string
                        manual_override_allowed:
                          deprecated: true
                          description: >-
                            Deprecated. Use
                            'thermostat_schedule.is_override_allowed'


                            Indicates whether a person at the thermostat can
                            change the thermostat's settings. See [Specifying
                            Manual Override
                            Permissions](/capability-guides/thermostats/creating-and-managing-thermostat-schedules#specifying-manual-override-permissions).
                          type: boolean
                        name:
                          default: null
                          description: >-
                            User-friendly name to identify the [climate
                            preset](/capability-guides/thermostats/creating-and-managing-climate-presets).
                          nullable: true
                          type: string
                      type: object
                      x-property-group-key: thermostats
                      description: >-
                        Deprecated. use fallback_climate_preset_key to specify a
                        fallback climate preset instead.
                    fallback_climate_preset_key:
                      description: >-
                        Key of the [fallback climate
                        preset](/capability-guides/thermostats/creating-and-managing-climate-presets/setting-the-fallback-climate-preset)
                        for the thermostat.
                      minLength: 1
                      nullable: true
                      type: string
                      x-property-group-key: thermostats
                    fan_mode_setting:
                      deprecated: true
                      enum:
                        - auto
                        - 'on'
                        - circulate
                      type: string
                      x-property-group-key: thermostats
                      description: >-
                        Deprecated. Use
                        `current_climate_setting.fan_mode_setting` instead.
                    is_cooling:
                      description: >-
                        Indicates whether the connected HVAC system is currently
                        cooling, as reported by the thermostat.
                      type: boolean
                      x-property-group-key: thermostats
                    is_fan_running:
                      description: >-
                        Indicates whether the fan in the connected HVAC system
                        is currently running, as reported by the thermostat.
                      type: boolean
                      x-property-group-key: thermostats
                    is_heating:
                      description: >-
                        Indicates whether the connected HVAC system is currently
                        heating, as reported by the thermostat.
                      type: boolean
                      x-property-group-key: thermostats
                    is_temporary_manual_override_active:
                      description: >-
                        Indicates whether the current thermostat settings differ
                        from the most recent active program or schedule that
                        Seam activated. For this condition to occur,
                        `current_climate_setting.manual_override_allowed` must
                        also be `true`.
                      type: boolean
                      x-property-group-key: thermostats
                    max_cooling_set_point_celsius:
                      description: >-
                        Maximum [cooling set
                        point](/capability-guides/thermostats/understanding-thermostat-concepts/set-points#cooling-set-point)
                        in °C.
                      format: float
                      type: number
                      x-property-group-key: thermostats
                    max_cooling_set_point_fahrenheit:
                      description: >-
                        Maximum [cooling set
                        point](/capability-guides/thermostats/understanding-thermostat-concepts/set-points#cooling-set-point)
                        in °F.
                      format: float
                      type: number
                      x-property-group-key: thermostats
                    max_heating_set_point_celsius:
                      description: >-
                        Maximum [heating set
                        point](/capability-guides/thermostats/understanding-thermostat-concepts/set-points#heating-set-point)
                        in °C.
                      format: float
                      type: number
                      x-property-group-key: thermostats
                    max_heating_set_point_fahrenheit:
                      description: >-
                        Maximum [heating set
                        point](/capability-guides/thermostats/understanding-thermostat-concepts/set-points#heating-set-point)
                        in °F.
                      format: float
                      type: number
                      x-property-group-key: thermostats
                    max_thermostat_daily_program_periods_per_day:
                      description: >-
                        Maximum number of periods that the thermostat can
                        support per day. For example, if the thermostat supports
                        4 periods per day, this value is 4.
                      format: float
                      type: number
                      x-property-group-key: thermostats
                    max_unique_climate_presets_per_thermostat_weekly_program:
                      description: >-
                        Maximum number of climate presets that the thermostat
                        can support for weekly programming.
                      format: float
                      type: number
                      x-property-group-key: thermostats
                    min_cooling_set_point_celsius:
                      description: >-
                        Minimum [cooling set
                        point](/capability-guides/thermostats/understanding-thermostat-concepts/set-points#cooling-set-point)
                        in °C.
                      format: float
                      type: number
                      x-property-group-key: thermostats
                    min_cooling_set_point_fahrenheit:
                      description: >-
                        Minimum [cooling set
                        point](/capability-guides/thermostats/understanding-thermostat-concepts/set-points#cooling-set-point)
                        in °F.
                      format: float
                      type: number
                      x-property-group-key: thermostats
                    min_heating_cooling_delta_celsius:
                      description: >-
                        Minimum [temperature
                        difference](/capability-guides/thermostats/understanding-thermostat-concepts/set-points#minimum-heating-cooling-temperature-delta)
                        in °C between the cooling and heating set points when in
                        heat-cool (auto) mode.
                      format: float
                      type: number
                      x-property-group-key: thermostats
                    min_heating_cooling_delta_fahrenheit:
                      description: >-
                        Minimum [temperature
                        difference](/capability-guides/thermostats/understanding-thermostat-concepts/set-points#minimum-heating-cooling-temperature-delta)
                        in °F between the cooling and heating set points when in
                        heat-cool (auto) mode.
                      format: float
                      type: number
                      x-property-group-key: thermostats
                    min_heating_set_point_celsius:
                      description: >-
                        Minimum [heating set
                        point](/capability-guides/thermostats/understanding-thermostat-concepts/set-points#heating-set-point)
                        in °C.
                      format: float
                      type: number
                      x-property-group-key: thermostats
                    min_heating_set_point_fahrenheit:
                      description: >-
                        Minimum [heating set
                        point](/capability-guides/thermostats/understanding-thermostat-concepts/set-points#heating-set-point)
                        in °F.
                      format: float
                      type: number
                      x-property-group-key: thermostats
                    relative_humidity:
                      description: >-
                        Reported relative humidity, as a value between 0 and 1,
                        inclusive.
                      format: float
                      maximum: 1
                      minimum: 0
                      type: number
                      x-property-group-key: thermostats
                    temperature_celsius:
                      description: Reported temperature in °C.
                      format: float
                      type: number
                      x-property-group-key: thermostats
                    temperature_fahrenheit:
                      description: Reported temperature in °F.
                      format: float
                      type: number
                      x-property-group-key: thermostats
                    temperature_threshold:
                      description: >-
                        Current [temperature
                        threshold](/capability-guides/thermostats/setting-and-monitoring-temperature-thresholds)
                        set for the thermostat.
                      properties:
                        lower_limit_celsius:
                          description: >-
                            Lower limit in °C within the current [temperature
                            threshold](/capability-guides/thermostats/setting-and-monitoring-temperature-thresholds)
                            set for the thermostat.
                                      
                          format: float
                          nullable: true
                          type: number
                        lower_limit_fahrenheit:
                          description: >-
                            Lower limit in °F within the current [temperature
                            threshold](/capability-guides/thermostats/setting-and-monitoring-temperature-thresholds)
                            set for the thermostat.
                                      
                          format: float
                          nullable: true
                          type: number
                        upper_limit_celsius:
                          description: >-
                            Upper limit in °C within the current [temperature
                            threshold](/capability-guides/thermostats/setting-and-monitoring-temperature-thresholds)
                            set for the thermostat.
                                      
                          format: float
                          nullable: true
                          type: number
                        upper_limit_fahrenheit:
                          description: >-
                            Upper limit in °F within the current [temperature
                            threshold](/capability-guides/thermostats/setting-and-monitoring-temperature-thresholds)
                            set for the thermostat.
                                      
                          format: float
                          nullable: true
                          type: number
                      required:
                        - lower_limit_celsius
                        - lower_limit_fahrenheit
                        - upper_limit_celsius
                        - upper_limit_fahrenheit
                      type: object
                      x-property-group-key: thermostats
                    thermostat_daily_program_period_precision_minutes:
                      description: >-
                        Precision of the thermostat's period in minutes. For
                        example, if the thermostat supports 15-minute periods,
                        this value is 15. All values are relative to the top of
                        the hour, so for 15 minutes, the periods would be 0, 15,
                        30, and 45 minutes past the hour.
                      format: float
                      type: number
                      x-property-group-key: thermostats
                    thermostat_daily_programs:
                      description: >-
                        Configured [daily
                        programs](/capability-guides/thermostats/creating-and-managing-thermostat-programs)
                        for the thermostat.
                      items:
                        description: >-
                          Represents a thermostat daily program, consisting of a
                          set of periods, each of which has a starting time and
                          the key that identifies the climate preset to apply at
                          the starting time.
                        properties:
                          created_at:
                            description: >-
                              Date and time at which the thermostat daily
                              program was created.
                            format: date-time
                            type: string
                          device_id:
                            description: >-
                              ID of the thermostat device on which the
                              thermostat daily program is configured.
                            format: uuid
                            type: string
                          name:
                            description: >-
                              User-friendly name to identify the thermostat
                              daily program.
                            nullable: true
                            type: string
                          periods:
                            description: Array of thermostat daily program periods.
                            items:
                              description: >-
                                Period for a thermostat daily program. Consists
                                of a starts at time and the key that identifies
                                the configured climate preset to apply at the
                                starting time.
                              properties:
                                climate_preset_key:
                                  description: >-
                                    Key of the [climate
                                    preset](/capability-guides/thermostats/creating-and-managing-climate-presets)
                                    to activate at the `starts_at_time`.
                                  type: string
                                starts_at_time:
                                  description: >-
                                    Time at which the thermostat daily program
                                    period starts, in [ISO
                                    8601](https://www.iso.org/iso-8601-date-and-time-format.html)
                                    format.
                                  pattern: ^([01]\d|2[0-3]):([0-5]\d):([0-5]\d)$
                                  type: string
                              required:
                                - starts_at_time
                                - climate_preset_key
                              type: object
                            type: array
                          thermostat_daily_program_id:
                            description: ID of the thermostat daily program.
                            format: uuid
                            type: string
                          workspace_id:
                            description: >-
                              ID of the workspace that contains the thermostat
                              daily program.
                            format: uuid
                            type: string
                        required:
                          - thermostat_daily_program_id
                          - device_id
                          - name
                          - periods
                          - workspace_id
                          - created_at
                        type: object
                        x-route-path: /thermostats/daily_programs
                      type: array
                      x-property-group-key: thermostats
                    thermostat_weekly_program:
                      description: >-
                        Current [weekly
                        program](/capability-guides/thermostats/creating-and-managing-thermostat-programs)
                        for the thermostat.
                      nullable: true
                      properties:
                        created_at:
                          description: >-
                            Date and time at which the thermostat weekly program
                            was created.
                          format: date-time
                          type: string
                        friday_program_id:
                          description: >-
                            ID of the thermostat daily program to run on
                            Fridays.
                          format: uuid
                          nullable: true
                          type: string
                        monday_program_id:
                          description: >-
                            ID of the thermostat daily program to run on
                            Mondays.
                          format: uuid
                          nullable: true
                          type: string
                        saturday_program_id:
                          description: >-
                            ID of the thermostat daily program to run on
                            Saturdays.
                          format: uuid
                          nullable: true
                          type: string
                        sunday_program_id:
                          description: >-
                            ID of the thermostat daily program to run on
                            Sundays.
                          format: uuid
                          nullable: true
                          type: string
                        thursday_program_id:
                          description: >-
                            ID of the thermostat daily program to run on
                            Thursdays.
                          format: uuid
                          nullable: true
                          type: string
                        tuesday_program_id:
                          description: >-
                            ID of the thermostat daily program to run on
                            Tuesdays.
                          format: uuid
                          nullable: true
                          type: string
                        wednesday_program_id:
                          description: >-
                            ID of the thermostat daily program to run on
                            Wednesdays.
                          format: uuid
                          nullable: true
                          type: string
                      required:
                        - monday_program_id
                        - tuesday_program_id
                        - wednesday_program_id
                        - thursday_program_id
                        - friday_program_id
                        - saturday_program_id
                        - sunday_program_id
                        - created_at
                      type: object
                      x-property-group-key: thermostats
                  type: object
          description: Properties of the device.
          x-property-groups:
            access_codes:
              name: Access Codes
            hardware:
              name: Hardware
            locks:
              name: Locks
            noise_sensors:
              name: Noise Sensors
            phones:
              name: Phones
            provider_metadata:
              name: Provider Metadata
            thermostats:
              name: Thermostats
        space_ids:
          description: IDs of the spaces the device is in.
          items:
            format: uuid
            type: string
          type: array
        warnings:
          type: array
          description: >-
            Array of warnings associated with the device. Each warning object
            within the array contains two fields: `warning_code` and `message`.
            `warning_code` is a string that uniquely identifies the type of
            warning, enabling quick recognition and categorization of the issue.
            `message` provides a more detailed description of the warning,
            offering insights into the issue and potentially how to rectify it.
          items:
            type: object
            properties:
              error_code:
                type: string
                description: Error or warning code.
              message:
                type: string
                description: Human-readable description.
              created_at:
                type: string
                format: date-time
                description: When this error or warning was generated.
        workspace_id:
          description: Unique identifier for the Seam workspace associated with the device.
          format: uuid
          type: string
      required:
        - device_id
        - device_type
        - space_ids
        - display_name
        - capabilities_supported
        - properties
        - connected_account_id
        - workspace_id
        - errors
        - warnings
        - created_at
        - is_managed
        - custom_metadata
      type: object
      x-property-groups:
        access_codes:
          name: Access Codes
        hardware:
          name: Hardware
        locks:
          name: Locks
        noise_sensors:
          name: Noise Sensors
        phones:
          name: Phones
        provider_metadata:
          name: Provider Metadata
        thermostats:
          name: Thermostats
      x-route-path: /devices
    space:
      description: >-
        Represents a space that is a logical grouping of devices and entrances.
        You can assign access to an entire space, thereby making granting access
        more efficient. See the [space object](/api/spaces/object).
      properties:
        acs_entrance_count:
          description: Number of entrances in the space.
          format: float
          type: number
        created_at:
          description: Date and time at which the space was created.
          format: date-time
          type: string
        customer_data:
          additionalProperties:
            nullable: true
            type: string
          description: >-
            Reservation/stay-related defaults for the space. Also carries the
            provider/PMS-supplied name under a `<connector_type>_name` key (e.g.
            `guesty_name`), which Seam preserves when you rename the space
            (read-only — managed by Seam).
          properties:
            address:
              description: Postal address for the space.
              nullable: true
              type: string
            default_checkin_time:
              description: >-
                Default check-in time for reservations at the space, as HH:mm or
                HH:mm:ss.
              nullable: true
              pattern: ^([01]\d|2[0-3]):[0-5]\d(:[0-5]\d)?$
              type: string
            default_checkout_time:
              description: >-
                Default check-out time for reservations at the space, as HH:mm
                or HH:mm:ss.
              nullable: true
              pattern: ^([01]\d|2[0-3]):[0-5]\d(:[0-5]\d)?$
              type: string
            time_zone:
              description: IANA time zone for the space, e.g. America/Los_Angeles.
              nullable: true
              type: string
          type: object
        customer_key:
          description: Customer key associated with the space.
          type: string
        device_count:
          description: Number of devices in the space.
          format: float
          type: number
        display_name:
          description: Display name for the space.
          type: string
        geolocation:
          description: Geographic coordinates (latitude and longitude) of the space.
          nullable: true
          properties:
            latitude:
              description: Latitude of the space, in decimal degrees.
              format: float
              type: number
            longitude:
              description: Longitude of the space, in decimal degrees.
              format: float
              type: number
          required:
            - latitude
            - longitude
          type: object
        name:
          description: Name of the space.
          type: string
        space_id:
          description: ID of the space.
          format: uuid
          type: string
        space_key:
          description: Unique key for the space within the workspace.
          type: string
        workspace_id:
          description: ID of the workspace associated with the space.
          format: uuid
          type: string
      required:
        - space_id
        - workspace_id
        - name
        - display_name
        - created_at
        - device_count
        - acs_entrance_count
      type: object
      x-route-path: /spaces
  securitySchemes:
    pat_with_workspace:
      bearerFormat: API Token
      scheme: bearer
      type: http
    console_session_with_workspace:
      bearerFormat: Console Session Token
      scheme: bearer
      type: http
    api_key:
      bearerFormat: API Key
      scheme: bearer
      type: http
    client_session_with_customer:
      bearerFormat: Customer Client Session Token
      scheme: bearer
      type: http

````