Piqae Docs
Platform APIs

Customer accounts

Give every customer an isolated workspace while keeping integration code compact.

Use your immutable external ID

Use a non-personal identifier from your own database. Never use a mutable slug, email address, display name, printer ID, or value accepted directly from browser input.

typescript
const customer = await piqae.accounts.getOrCreate(customer.id, {
  name: customer.displayName,
  metadata: {
    billing_tier: customer.plan,
    home_region: customer.region
  }
});

Test and Live are isolated

typescript
// Live is the default.
await customer.printers.list();

// Test has separate nodes, printers, jobs and webhooks.
await customer.test.printers.list();

Manage the lifecycle

typescript
const accounts = await piqae.accounts.list();
const sameCustomer = await piqae.accounts.retrieve(customer.externalId);
await piqae.accounts.archive(customer.externalId);

Archive blocks new platform access and revokes both environment grants. Already accepted jobs retain their durable lifecycle. Archive is not immediate data deletion.

Dashboard and API

Platform operators can view customer accounts and environment health in the hosted dashboard. Application code should use the SDK or API. The browser dashboard uses the signed-in human session; it never receives the platform key.

Was this page useful?