Zernio
Zernio
API Reference

Support Runs

Start a support run (private beta)POSTGet a support run (private beta)GET
Dashboard
llms.txtOpenAPI
OverviewPlatformsAPI ReferenceResources
Support Runs

Start a support run (private beta)

Private beta: returns 403 feature_not_available unless enabled for your account. Asks Ana, the Zernio support agent, a question about your workspace. The run is asynchronous: this returns 202 with a runId, and the answer arrives through the support.run.completed and support.run.failed webhooks. GET /v1/support/runs/{runId} is the fallback. Pass threadId to continue an earlier conversation, and context to point Ana at a post, account or profile. Billed when the run finishes at the model cost plus 20%, never above maxCostUsd; failed runs are free. Requires an unrestricted API key, usage-based billing and a card on file. Limits per account: 3 active runs and $100 of runs per UTC month. Send an Idempotency-Key header to make retries safe.


POST
/v1/support/runs

Authorization

bearerAuth
AuthorizationBearer <token>

API key authentication: send your Zernio API key in the Authorization header, prefixed with Bearer.

In: header

Header Parameters

Idempotency-Key?string

Optional client-generated unique key (e.g. a UUID) that makes retries safe. Same key + same body replays the original response; same key + different body → 422; key still processing → 409.

Lengthlength <= 255

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

import Zernio from '@zernio/node';const zernio = new Zernio({ apiKey: process.env.ZERNIO_API_KEY });const { data } = await zernio.supportruns.createSupportRun({  body: {    message: 'Hello, world!',  },});console.log(data);
{  "runId": "64f0a1b2c3d4e5f6a7b8c9d1",  "threadId": "64f0a1b2c3d4e5f6a7b8c9d2",  "status": "queued",  "pollAfterSeconds": 5}
Was this page helpful?

Create invite token

Generate a secure invite link to grant team members access to your profiles. Invites expire after 7 days and are single-use. Returns 403 when a requested profile is not found or not owned, or when called with a restricted (zrk_) API key: invite management is admin-plane.

Get a support run (private beta)

Private beta: returns 403 `feature_not_available` unless enabled for your account. Returns a run started by your team. Prefer the `support.run.completed` and `support.run.failed` webhooks; use this as the fallback, waiting `pollAfterSeconds` between polls. `costUsd` is the amount billed: the model cost plus 20%, never above `maxCostUsd`, and 0 for a failed run.

message*string

The question. Leading and trailing whitespace is trimmed.

Length1 <= length <= 10000
threadId?string

Continue this thread. The thread must have a run started by your team, and no run in progress.

context?

Ids Ana should look at. Each must belong to your workspace.

maxCostUsd?number

Cost cap for this run, in USD. The run stops at the cap and bills at most this amount.

Range0.5 <= value <= 3
Default3