OpenAPI Specification
openapi: 3.1.0
info:
title: HP PrintOS Device Analytics Devices API
description: The HP PrintOS Device API enables device manufacturers and print shop IT developers to attach their devices to the PrintOS Cloud Platform and interact with platform services.
version: 1.0.0
contact:
name: HP Developer Portal
url: https://developers.hp.com/
servers:
- url: https://printos.api.hp.com
description: Production
tags:
- name: Devices
description: Print device management operations
paths:
/devices:
get:
operationId: listDevices
summary: List Devices
description: Retrieve a list of provisioned print devices.
tags:
- Devices
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/PrintDeviceList'
post:
operationId: provisionDevice
summary: Provision Device
description: Register a new device with the PrintOS Cloud Platform.
tags:
- Devices
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/DeviceProvisionRequest'
responses:
'201':
description: Device provisioned
content:
application/json:
schema:
$ref: '#/components/schemas/PrintDevice'
/devices/{deviceId}/status:
put:
operationId: updateDeviceStatus
summary: Update Device Status
description: Send device status update to the platform.
tags:
- Devices
parameters:
- name: deviceId
in: path
required: true
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/DeviceStatusUpdate'
responses:
'200':
description: Status updated
components:
schemas:
DeviceStatusUpdate:
type: object
properties:
status:
type: string
metrics:
type: object
properties:
pagesTotal:
type: integer
inkLevel:
type: number
PrintDevice:
type: object
properties:
id:
type: string
model:
type: string
serialNumber:
type: string
status:
type: string
registeredAt:
type: string
format: date-time
PrintDeviceList:
type: object
properties:
devices:
type: array
items:
$ref: '#/components/schemas/PrintDevice'
DeviceProvisionRequest:
type: object
properties:
model:
type: string
serialNumber:
type: string
location:
type: string