Skip to main content

Print Tracker API (1.0.0)

Download OpenAPI specification:Download

License: MIT

Entity

Get an entity

Returns an entity object for the provided entity ID.

path Parameters
entityId
required
any

The ID of the entity to retrieve.

query Parameters
includeChildren
boolean
Default: false

If enabled, the response will include an array of all child entity names and IDs at every hierarchical level under the entity specified in the request.

header Parameters
x-api-key
required
any

API key

Responses

Response samples

Content type
application/json
{
  • "id": "000000000000000000000002",
  • "name": "My Company",
  • "genealogy": [
    ],
  • "addresses": [
    ],
  • "children": [
    ]
}

Create an entity

Creates a new entity underneath the entity specified in the path parameters.

path Parameters
entityId
any

The ID of the entity to create a child entity under.

header Parameters
x-api-key
any

API key

Request Body schema: application/json
name
string

The name of the entity to create

Responses

Request samples

Content type
application/json
{
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "id": "000000000000000000000002",
  • "name": "My Company",
  • "genealogy": [
    ],
  • "addresses": [
    ],
  • "children": [
    ]
}

Update an entity

Updates an entity with the provided entity ID.

path Parameters
entityId
any

The ID of the entity to update.

header Parameters
x-api-key
any

API key

Request Body schema: application/json
name
string

The name of the entity to update

Responses

Request samples

Content type
application/json
{
  • "name": "New entity name"
}

Response samples

Content type
application/json
{
  • "id": "000000000000000000000002",
  • "name": "My Company",
  • "genealogy": [
    ],
  • "addresses": [
    ],
  • "children": [
    ]
}

Devices

Get devices by entity

Returns an array of devices that belong to the specified entity and (optionally) its children.

path Parameters
entityId
required
any

The ID of the entity to load devices from.

query Parameters
includeChildren
boolean
Default: false

If enabled, the response will include devices at this entity, and all child entities.

limit
integer
Default: 100

The maximum number of devices to return in a single request.

page
integer
Default: 1

The page number to return. Page numbers start at 1.

excludeDisabled
boolean
Default: false

If true, only managed devices will be returned.

header Parameters
x-api-key
required
any

API key

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Meters

Get meters by entity

Returns an array of meter reads for the specified entity.

path Parameters
entityId
required
any

The ID of the entity to load meters from.

query Parameters
excludeDisabled
boolean
Default: false

If true, only meters form managed devices will be returned.

start
required
any
Example: start=2020-12-18T17:52:52.417Z

The start of the meter read date range formatted as RFC3339, ISO8601 (without timezone), RFC1123Z, RFC1123, RFC1123, RFC822Z, RFC822, RFC8250, ANSIC, or Unix.

end
required
any
Example: end=2021-01-25T17:52:52.417Z

The end of the meter read date range formatted as RFC3339, ISO8601 (without timezone), RFC1123Z, RFC1123, RFC1123, RFC822Z, RFC822, RFC8250, ANSIC, or Unix.

header Parameters
x-api-key
required
any

API key

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get current meters by entity

Returns an array of current meter reads for all devices at the specified entity. If includeChildren is enabled and provided in the query string, this endpoint will return the current meter reads for all devices at the provided entity and any children of the provided entity. This endpoint is paginated, and the caller should pass a page and limit to paginate all the results from the endpoint.

path Parameters
entityId
required
any

The ID of the entity to load meters from.

query Parameters
excludeDisabled
boolean
Default: false

If true, only meters form managed devices will be returned.

includeChildren
boolean
Default: false

If enabled, the response will include meters at this entity, and all child entities.

start
required
any
Example: start=2020-12-18T17:52:52.417Z

The start of the meter read date range formatted as RFC3339, ISO8601 (without timezone), RFC1123Z, RFC1123, RFC1123, RFC822Z, RFC822, RFC8250, ANSIC, or Unix.

end
required
any
Example: end=2021-01-25T17:52:52.417Z

The end of the meter read date range formatted as RFC3339, ISO8601 (without timezone), RFC1123Z, RFC1123, RFC1123, RFC822Z, RFC822, RFC8250, ANSIC, or Unix.

header Parameters
x-api-key
required
any

API key

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get meters by device

Returns an array of meter reads for a single device

path Parameters
entityId
required
any

The ID of the entity that the device belongs to

deviceId
required
any

The ID of the device to load meters from.

query Parameters
limit
integer
Default: 100

The maximum number of devices to return in a single request.

page
integer
Default: 1

The page number to return. Page numbers start at 1.

start
required
any
Example: start=2020-12-18T17:52:52.417Z

The start of the meter read date range formatted as RFC3339, ISO8601 (without timezone), RFC1123Z, RFC1123, RFC1123, RFC822Z, RFC822, RFC8250, ANSIC, or Unix.

end
required
any
Example: end=2021-01-25T17:52:52.417Z

The end of the meter read date range formatted as RFC3339, ISO8601 (without timezone), RFC1123Z, RFC1123, RFC1123, RFC822Z, RFC822, RFC8250, ANSIC, or Unix.

header Parameters
x-api-key
required
any

API key

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get meter immediately prior to a date

Returns the meter read for a device that is closest to, but not after the provided date query parameter.

path Parameters
entityId
required
any

The ID of the entity that the device belongs to

deviceId
required
any

The ID of the device to load meters from.

query Parameters
date
required
any
Example: date=2021-01-25T17:52:52.417Z

The meter read returned will be the most recent meter read that occurred before this date, formatted as RFC3339, ISO8601 (without timezone), RFC1123Z, RFC1123, RFC1123, RFC822Z, RFC822, RFC8250, ANSIC, or Unix.

header Parameters
x-api-key
required
any

API key

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Supplies

Get supplies by entity

Returns all the supplies from all the devices belonging to the specified entity or its children.

path Parameters
entityId
required
any

The ID of the entity that we want to pull supplies

query Parameters
includeChildren
boolean
Default: false

If enabled, the response will include meters at this entity, and all child entities.

replaced
boolean
Default: false

If enabled, the response will only include replaced supplies

start
required
any
Example: start=2020-12-18T17:52:52.417Z

If replaced is true, only supplies replaced after this date will be included. The date should be formatted as RFC3339, ISO8601 (without timezone), RFC1123Z, RFC1123, RFC1123, RFC822Z, RFC822, RFC8250, ANSIC, or Unix.

end
required
any
Example: end=2021-01-25T17:52:52.417Z

If replaced is true, only supplies replaced before this date will be included. The date should be formatted as RFC3339, ISO8601 (without timezone), RFC1123Z, RFC1123, RFC1123, RFC822Z, RFC822, RFC8250, ANSIC, or Unix.

limit
integer
Default: 100

The maximum number of supplies to return in a single request.

page
integer
Default: 1

The page number to return. Page numbers start at 1.

header Parameters
x-api-key
required
any

API key

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Billing

Billing usage by entity

Returns a list of SKUs and their associated quantities for a given entity. You can provide any entity and this endpoint will return the billable resources from the perspective of that entity. For example, if you provide your dealer entity key, you'll get SKUs and quantities that could be correlated to your monthly invoice. If you were to provide a customer entity, you'd see only the usage contributed to your account by that customer.

path Parameters
entityId
required
any

The ID of the entity that we want to pull supplies

query Parameters
year
required
any
Example: year=2023

The year to pull billing usage for

month
required
any
Example: month=1

The month to pull billing usage for. Months are numbered 1-12 starting with January.

header Parameters
x-api-key
required
any

API key

Responses

Response samples

Content type
application/json
[
  • {
    }
]