openapi: 3.0.1
info:
title: PrintNode Account Scales API
description: Specification of the PrintNode cloud and remote printing API. PrintNode lets web and server applications print to physical printers through the PrintNode Client running on a remote computer. All requests use HTTP Basic authentication with the API key supplied as the username and an empty password.
termsOfService: https://www.printnode.com/en/terms
contact:
name: PrintNode Support
url: https://www.printnode.com/en/contact
version: '1.0'
servers:
- url: https://api.printnode.com
security:
- apiKeyBasicAuth: []
tags:
- name: Scales
paths:
/computer/{computerId}/scales:
get:
operationId: getScales
tags:
- Scales
summary: List the scales connected to the given computer.
parameters:
- $ref: '#/components/parameters/ComputerId'
responses:
'200':
description: OK
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Scale'
/computer/{computerId}/scales/{deviceName}:
get:
operationId: getScalesByDeviceName
tags:
- Scales
summary: List scale measurements for a named device on a computer.
parameters:
- $ref: '#/components/parameters/ComputerId'
- $ref: '#/components/parameters/DeviceName'
responses:
'200':
description: OK
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Scale'
/computer/{computerId}/scale/{deviceName}/{deviceNumber}:
get:
operationId: getScale
tags:
- Scales
summary: Return a single scale measurement for a named device and number.
parameters:
- $ref: '#/components/parameters/ComputerId'
- $ref: '#/components/parameters/DeviceName'
- $ref: '#/components/parameters/DeviceNumber'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Scale'
components:
schemas:
Scale:
type: object
properties:
mass:
type: array
items:
type: integer
nullable: true
description: Measured mass as [grams, micrograms].
deviceName:
type: string
deviceNum:
type: integer
computerId:
type: integer
vendor:
type: string
nullable: true
product:
type: string
nullable: true
count:
type: integer
measurement:
type: object
nullable: true
clientReportedCreateTimestamp:
type: string
format: date-time
ntpOffset:
type: integer
nullable: true
ageOfData:
type: integer
nullable: true
parameters:
DeviceNumber:
name: deviceNumber
in: path
description: The device number of a connected scale.
required: true
schema:
type: integer
DeviceName:
name: deviceName
in: path
description: The device name of a connected scale.
required: true
schema:
type: string
ComputerId:
name: computerId
in: path
description: The id of a single computer.
required: true
schema:
type: integer
securitySchemes:
apiKeyBasicAuth:
type: http
scheme: basic
description: HTTP Basic authentication. Supply the PrintNode API key as the username and leave the password empty. Integrator accounts may additionally authenticate on behalf of a child account using the X-Child-Account-By-Id, X-Child-Account-By-Email, or X-Child-Account-By-CreatorRef header.