inklet docs

Displays

Reading inklet displays — list, retrieve, queue, and the currently confirmed presentation.

inklet.displays is read-only. Displays are bound to your account through the Portal or the mobile app; the SDK observes them.

list()

const page = await inklet.displays.list({ limit: 20 });
list(options?: ListDisplaysOptions): Promise<DisplayPage>

Prop

Type

Returns a cursor page:

Prop

Type

Paging through everything:

let cursor: string | undefined;
const all = [];

do {
  const page = await inklet.displays.list({ cursor, limit: 50 });
  all.push(...page.items);
  cursor = page.nextCursor ?? undefined;
} while (cursor);

A limit outside 1–50, or a non-integer, throws ConfigurationError locally.

retrieve()

const display = await inklet.displays.retrieve("display_123");

Throws NotFoundError if the id is unknown, and ConfigurationError if the id is not a non-empty string.

listQueue()

What is waiting for a display, optionally within a time range:

const queue = await inklet.displays.listQueue(display.id, {
  from: new Date("2026-08-01T00:00:00Z"),
  to: new Date(),
  limit: 20,
});
listQueue(displayId: string, options?: ListDisplayQueueOptions): Promise<DisplayQueuePage>

Prop

Type

from and to accept a Date or anything new Date() parses; both are sent as ISO strings. An unparseable value, or to earlier than from, throws ConfigurationError.

Each item:

Prop

Type

current()

The confirmed Presentation a display is showing, or null:

const current = await inklet.displays.current(display.id, { format: "png" });

if (current?.image) {
  console.log(current.image.url);
} else {
  console.log("nothing confirmed yet");
}
current(displayId: string, options?: { format?: "png" | "raw2" | "raw4" }): Promise<Presentation | null>

null is a normal answer, not an error — a display that has never confirmed a frame has no current Presentation. Handle it before reading .image.

The Display type

Prop

Type

FieldNotes
name / nicknamename is the bound device name; nickname is user-set and may be null.
tagsFree-form labels — a practical routing key for Manual pushes.
onlineWhether the panel is currently reachable.
syncIntervalMinutesHow often it wakes to ask for work.
nextSyncAtWhen to expect the next pickup.
pendingPresentationIdHanded over but not yet confirmed.

Capabilities

Prop

Type

Read these before sending format-sensitive content — particularly for Hardcode pushes, where you control the pixels.

On this page