Kaseya /v2/device API

Operations on devices

Operations 10

PUT /v2/device/{deviceUid}/site/{siteUid} Moves a device from one site to another site. #
PUT /v2/device/{deviceUid}/quickjob Creates a quick job on the device identified by the given device Uid. #
POST /v2/device/{deviceUid}/warranty Sets the warranty of a device identified by the given device Uid. #
POST /v2/device/{deviceUid}/udf Sets the user defined fields of a device identified by the given device Uid. #
GET /v2/device/{deviceUid} Fetches data of the device identified by the given device Uid. #
GET /v2/device/{deviceUid}/patches Fetches the patches of the device identified by the given device Uid. #
GET /v2/device/{deviceUid}/alerts/resolved Fetches the resolved alerts of the device identified by the given device Uid. #
GET /v2/device/{deviceUid}/alerts/open Fetches the open alerts of the device identified by the given device Uid. #
GET /v2/device/macAddress/{macAddress} Fetches data of the device(s) identified by the given MAC address in format: XXXXXXXXXXXX #
GET /v2/device/id/{deviceId} Fetches data of the device identified by the given device Id. #

Work with this as data

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

MCP server

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

https://apis.io/mcp

Tools for apis

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

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/kaseya-v2-device-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

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

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

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

OpenAPI Specification

kaseya-v2-device-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Datto RMM /v2/device API
  description: Datto RMM (Remote Monitoring and Management) REST API
  license:
    name: '©Datto, Inc. - All rights reserved. '
    url: http://www.datto.com/
  version: 2.0.0 (Build 235_0add0e4d537431f30405d568ccb46b6d7af1f183)
servers:
- url: https://syrah-api.centrastage.net/api
  description: Generated server url
tags:
- name: /v2/device
  description: Operations on devices
paths:
  /v2/device/{deviceUid}/site/{siteUid}:
    put:
      tags:
      - /v2/device
      summary: Moves a device from one site to another site.
      operationId: moveDevice
      parameters:
      - name: deviceUid
        in: path
        description: The UID of the device to move to a different site
        required: true
        schema:
          type: string
      - name: siteUid
        in: path
        description: The UID of the target site
        required: true
        schema:
          type: string
      responses:
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 500
                error: Internal Server Error
                path: /v2/device/{deviceUid}/site/{siteUid}
        '409':
          description: Request aborted due to concurrent write access to this record.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 409
                error: Conflict
                path: /v2/device/{deviceUid}/site/{siteUid}
        '404':
          description: Device and/or site not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 404
                error: Not Found
                path: /v2/device/{deviceUid}/site/{siteUid}
        '403':
          description: Authenticated user doesn't have access to this resource.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 403
                error: Forbidden
                path: /v2/device/{deviceUid}/site/{siteUid}
        '401':
          description: Request can not be authorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 401
                error: Unauthorized
                path: /v2/device/{deviceUid}/site/{siteUid}
        '200':
          description: OK
  /v2/device/{deviceUid}/quickjob:
    put:
      tags:
      - /v2/device
      summary: Creates a quick job on the device identified by the given device Uid.
      operationId: createQuickJob
      parameters:
      - name: deviceUid
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateQuickJobRequest'
        required: true
      responses:
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 500
                error: Internal Server Error
                path: /v2/device/{deviceUid}/quickjob
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 409
                error: Conflict
                path: /v2/device/{deviceUid}/quickjob
        '404':
          description: Device was not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 404
                error: Not Found
                path: /v2/device/{deviceUid}/quickjob
        '403':
          description: Authenticated user doesn't have access to this resource.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 403
                error: Forbidden
                path: /v2/device/{deviceUid}/quickjob
        '400':
          description: Request data is invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 400
                error: Bad Request
                path: /v2/device/{deviceUid}/quickjob
        '401':
          description: Request cannot be authorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 401
                error: Unauthorized
                path: /v2/device/{deviceUid}/quickjob
        '200':
          description: OK
          content:
            application/json:
              schema:
                description: Create Quick Job Response
                properties:
                  jobComponents:
                    type: array
                    items:
                      $ref: '#/components/schemas/JobComponent'
                  job:
                    $ref: '#/components/schemas/Job'
  /v2/device/{deviceUid}/warranty:
    post:
      tags:
      - /v2/device
      summary: Sets the warranty of a device identified by the given device Uid.
      description: 'The warrantyDate field should be a ISO 8601 string with this format: yyyy-mm-dd. The warranty date can also be set to null.'
      operationId: setWarrantyData
      parameters:
      - name: deviceUid
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Warranty'
        required: true
      responses:
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 500
                error: Internal Server Error
                path: /v2/device/{deviceUid}/warranty
        '409':
          description: Request aborted due to concurrent write access to this record.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 409
                error: Conflict
                path: /v2/device/{deviceUid}/warranty
        '404':
          description: Device was not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 404
                error: Not Found
                path: /v2/device/{deviceUid}/warranty
        '403':
          description: Authenticated user doesn't have access to this resource.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 403
                error: Forbidden
                path: /v2/device/{deviceUid}/warranty
        '400':
          description: Request is invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 400
                error: Bad Request
                path: /v2/device/{deviceUid}/warranty
        '401':
          description: Request cannot be authorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 401
                error: Unauthorized
                path: /v2/device/{deviceUid}/warranty
        '200':
          description: OK
  /v2/device/{deviceUid}/udf:
    post:
      tags:
      - /v2/device
      summary: Sets the user defined fields of a device identified by the given device Uid.
      description: All UDF values are accepted as strings. Any user defined field supplied with an empty or null value will be deleted. All user defined fields not supplied will retain their current values. The API attempts to parse string values into their configured types (BOOLEAN/NUMBER/DATE). If a value cannot be parsed to match its configured type, it will be stored as a string and flagged as a type mismatch.
      operationId: setUdfFields_1
      parameters:
      - name: deviceUid
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Udf'
        required: true
      responses:
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 500
                error: Internal Server Error
                path: /v2/device/{deviceUid}/udf
        '409':
          description: Request aborted due to concurrent write access to this record.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 409
                error: Conflict
                path: /v2/device/{deviceUid}/udf
        '404':
          description: Device was not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 404
                error: Not Found
                path: /v2/device/{deviceUid}/udf
        '403':
          description: Authenticated user doesn't have access to this resource.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 403
                error: Forbidden
                path: /v2/device/{deviceUid}/udf
        '400':
          description: Request is invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 400
                error: Bad Request
                path: /v2/device/{deviceUid}/udf
        '401':
          description: Request can not be authorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 401
                error: Unauthorized
                path: /v2/device/{deviceUid}/udf
        '200':
          description: OK
  /v2/device/{deviceUid}:
    get:
      tags:
      - /v2/device
      summary: Fetches data of the device identified by the given device Uid.
      operationId: getByUid_1
      parameters:
      - name: deviceUid
        in: path
        required: true
        schema:
          type: string
      responses:
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 500
                error: Internal Server Error
                path: /v2/device/{deviceUid}
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 409
                error: Conflict
                path: /v2/device/{deviceUid}
        '404':
          description: Device was not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 404
                error: Not Found
                path: /v2/device/{deviceUid}
        '403':
          description: Authenticated user doesn't have access to this resource.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 403
                error: Forbidden
                path: /v2/device/{deviceUid}
        '401':
          description: Request can not be authorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 401
                error: Unauthorized
                path: /v2/device/{deviceUid}
        '200':
          description: OK
          content:
            application/json:
              schema:
                description: Device data
                properties:
                  id:
                    type: integer
                    format: int64
                  uid:
                    type: string
                  siteId:
                    type: integer
                    format: int64
                  siteUid:
                    type: string
                  siteName:
                    type: string
                  deviceType:
                    $ref: '#/components/schemas/DevicesType'
                  hostname:
                    type: string
                  intIpAddress:
                    type: string
                  operatingSystem:
                    type: string
                  lastLoggedInUser:
                    type: string
                  domain:
                    type: string
                  cagVersion:
                    type: string
                  displayVersion:
                    type: string
                  extIpAddress:
                    type: string
                  description:
                    type: string
                  a64Bit:
                    type: boolean
                  rebootRequired:
                    type: boolean
                  online:
                    type: boolean
                  suspended:
                    type: boolean
                  deleted:
                    type: boolean
                  lastSeen:
                    type: string
                    format: date-time
                  lastReboot:
                    type: string
                    format: date-time
                  lastAuditDate:
                    type: string
                    format: date-time
                  creationDate:
                    type: string
                    format: date-time
                  snmpEnabled:
                    type: boolean
                  deviceClass:
                    type: string
                    enum:
                    - device
                    - printer
                    - esxihost
                    - rmmnetworkdevice
                    - unknown
                  portalUrl:
                    type: string
                  warrantyDate:
                    type: string
                  antivirus:
                    $ref: '#/components/schemas/Antivirus'
                  patchManagement:
                    $ref: '#/components/schemas/PatchManagement'
                  softwareStatus:
                    type: string
                  webRemoteUrl:
                    type: string
                  networkProbe:
                    type: boolean
                  onboardedViaNetworkMonitor:
                    type: boolean
  /v2/device/{deviceUid}/patches:
    get:
      tags:
      - /v2/device
      summary: Fetches the patches of the device identified by the given device Uid.
      description: Returns a paginated list of patches for the device. The optional installStatus parameter filters results by INSTALLED, APPROVED_PENDING or NOT_APPROVED. When omitted, all patches for the device are returned.
      operationId: getDevicePatches
      parameters:
      - name: deviceUid
        in: path
        required: true
        schema:
          type: string
      - name: page
        in: query
        required: false
        schema:
          type: integer
          format: int32
      - name: max
        in: query
        required: false
        schema:
          type: integer
          format: int32
      - name: installStatus
        in: query
        required: false
        schema:
          type: string
          enum:
          - INSTALLED
          - APPROVED_PENDING
          - NOT_APPROVED
      responses:
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 500
                error: Internal Server Error
                path: /v2/device/{deviceUid}/patches
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 409
                error: Conflict
                path: /v2/device/{deviceUid}/patches
        '404':
          description: Device was not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 404
                error: Not Found
                path: /v2/device/{deviceUid}/patches
        '403':
          description: Authenticated user doesn't have access to this resource.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 403
                error: Forbidden
                path: /v2/device/{deviceUid}/patches
        '400':
          description: Request is invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 400
                error: Bad Request
                path: /v2/device/{deviceUid}/patches
        '401':
          description: Request can not be authorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 401
                error: Unauthorized
                path: /v2/device/{deviceUid}/patches
        '200':
          description: OK
          content:
            application/json:
              schema:
                description: Patches page
                properties:
                  pageDetails:
                    $ref: '#/components/schemas/PaginationData'
                  patches:
                    type: array
                    items:
                      $ref: '#/components/schemas/Patch'
  /v2/device/{deviceUid}/alerts/resolved:
    get:
      tags:
      - /v2/device
      summary: Fetches the resolved alerts of the device identified by the given device Uid.
      description: If the muted parameter is not provided, both muted and umuted alerts will be queried.
      operationId: getDeviceResolvedAlerts
      parameters:
      - name: deviceUid
        in: path
        required: true
        schema:
          type: string
      - name: page
        in: query
        required: false
        schema:
          type: integer
          format: int32
      - name: max
        in: query
        required: false
        schema:
          type: integer
          format: int32
      - name: muted
        in: query
        required: false
        schema:
          type: boolean
      responses:
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 500
                error: Internal Server Error
                path: /v2/device/{deviceUid}/alerts/resolved
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 409
                error: Conflict
                path: /v2/device/{deviceUid}/alerts/resolved
        '404':
          description: Device was not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 404
                error: Not Found
                path: /v2/device/{deviceUid}/alerts/resolved
        '403':
          description: Authenticated user doesn't have access to this resource.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 403
                error: Forbidden
                path: /v2/device/{deviceUid}/alerts/resolved
        '401':
          description: Request can not be authorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 401
                error: Unauthorized
                path: /v2/device/{deviceUid}/alerts/resolved
        '200':
          description: OK
          content:
            application/json:
              schema:
                description: Alerts page
                properties:
                  pageDetails:
                    $ref: '#/components/schemas/PaginationData'
                  alerts:
                    type: array
                    items:
                      $ref: '#/components/schemas/Alert'
  /v2/device/{deviceUid}/alerts/open:
    get:
      tags:
      - /v2/device
      summary: Fetches the open alerts of the device identified by the given device Uid.
      description: If the muted parameter is not provided, both muted and umuted alerts will be queried.
      operationId: getDeviceOpenAlerts
      parameters:
      - name: deviceUid
        in: path
        required: true
        schema:
          type: string
      - name: page
        in: query
        required: false
        schema:
          type: integer
          format: int32
      - name: max
        in: query
        required: false
        schema:
          type: integer
          format: int32
      - name: muted
        in: query
        required: false
        schema:
          type: boolean
      responses:
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 500
                error: Internal Server Error
                path: /v2/device/{deviceUid}/alerts/open
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 409
                error: Conflict
                path: /v2/device/{deviceUid}/alerts/open
        '404':
          description: Device was not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 404
                error: Not Found
                path: /v2/device/{deviceUid}/alerts/open
        '403':
          description: Authenticated user doesn't have access to this resource.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 403
                error: Forbidden
                path: /v2/device/{deviceUid}/alerts/open
        '401':
          description: Request can not be authorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 401
                error: Unauthorized
                path: /v2/device/{deviceUid}/alerts/open
        '200':
          description: OK
          content:
            application/json:
              schema:
                description: Alerts page
                properties:
                  pageDetails:
                    $ref: '#/components/schemas/PaginationData'
                  alerts:
                    type: array
                    items:
                      $ref: '#/components/schemas/Alert'
  /v2/device/macAddress/{macAddress}:
    get:
      tags:
      - /v2/device
      summary: 'Fetches data of the device(s) identified by the given MAC address in format: XXXXXXXXXXXX'
      operationId: getByMacAddress_1
      parameters:
      - name: macAddress
        in: path
        required: true
        schema:
          type: string
      responses:
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 500
                error: Internal Server Error
                path: /v2/device/macAddress/{macAddress}
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 409
                error: Conflict
                path: /v2/device/macAddress/{macAddress}
        '200':
          description: Device was found.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Device'
        '404':
          description: Device was not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 404
                error: Not Found
                path: /v2/device/macAddress/{macAddress}
        '403':
          description: Authenticated user doesn't have access to this resource.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 403
                error: Forbidden
                path: /v2/device/macAddress/{macAddress}
        '401':
          description: Request can not be authorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 401
                error: Unauthorized
                path: /v2/device/macAddress/{macAddress}
  /v2/device/id/{deviceId}:
    get:
      tags:
      - /v2/device
      summary: Fetches data of the device identified by the given device Id.
      operationId: getById_1
      parameters:
      - name: deviceId
        in: path
        required: true
        schema:
          type: integer
          format: int64
      responses:
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 500
                error: Internal Server Error
                path: /v2/device/id/{deviceId}
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 409
                error: Conflict
                path: /v2/device/id/{deviceId}
        '404':
          description: Device was not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 404
                error: Not Found
                path: /v2/device/id/{deviceId}
        '403':
          description: Authenticated user doesn't have access to this resource.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 403
                error: Forbidden
                path: /v2/device/id/{deviceId}
        '401':
          description: Request can not be authorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                timestamp: 1781181715656
                status: 401
                error: Unauthorized
                path: /v2/device/id/{deviceId}
        '200':
          description: OK
          content:
            application/json:
              schema:
                description: Device data
                properties:
                  id:
                    type: integer
                    format: int64
                  uid:
                    type: string
                  siteId:
                    type: integer
                    format: int64
                  siteUid:
                    type: string
                  siteName:
                    type: string
                  deviceType:
                    $ref: '#/components/schemas/DevicesType'
                  hostname:
                    type: string
                 

# --- truncated at 32 KB (65 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/kaseya/refs/heads/main/openapi/kaseya-v2-device-api-openapi.yml