TypeScript API reference

Generated from eve-iac OpenAPI/semantics. Do not edit manually.

Public methods on EveIacClient from createEveIacClient. Types are exported from @eve-iac/sdk.

Omission rules:

  • undefined is omitted from JSON
  • null remains explicit null where the schema allows it
  • false, 0, and "" remain explicit values

timeoutMs overrides the operation timeout. Omit it to use the semantics default.

Connection / Authentication

getHealth

Signature

getHealth(timeoutMs?: number): Promise<HealthData>

Description

GET /api/v1/health. operationId getHealth. Timeout 15000ms.

  • HTTP: GET /api/v1/health
  • operationId: getHealth
  • Authentication: none
  • Default timeout: 15000 ms

Parameters

Parameter Type Required Description
timeoutMs number no Override the 15000 ms default.

Returns

HealthData

Field TypeScript type Required Semantics
status string no
tls boolean no
version string no

Errors

JSON failures become AgentError with message, status, code, and optional data. The error string is diagnostic only; key off code and HTTP status.

code When
tls_untrusted Contractual/known for this call or its transport
tls_pin_mismatch Contractual/known for this call or its transport
tls_required Contractual/known for this call or its transport

Example

const health = await client.getHealth();
console.log(health.status);

login

Signature

login(body: LoginRequest, timeoutMs?: number): Promise<LoginData>

Description

POST /api/v1/login. operationId login. Timeout 15000ms.

  • HTTP: POST /api/v1/login
  • operationId: login
  • Authentication: none
  • Default timeout: 15000 ms

Parameters

Parameter Type Required Description
body LoginRequest yes Request body.
timeoutMs number no Override the 15000 ms default.

Request schema: LoginRequest

This request type is the same wire shape as LoginRequest.

Field TypeScript type Required Semantics
username string yes
password string yes

Returns

LoginData

Field TypeScript type Required Semantics
token string no
username string no

Errors

JSON failures become AgentError with message, status, code, and optional data. The error string is diagnostic only; key off code and HTTP status.

code When
invalid_credentials Contractual/known for this call or its transport
tls_required Contractual/known for this call or its transport
tls_untrusted Contractual/known for this call or its transport
tls_pin_mismatch Contractual/known for this call or its transport

Example

const session = await client.login({ username: "admin", password: "secret" });
const authed = createEveIacClient({ url, token: session.token ?? "", caPem });

logout

Signature

logout(body: LogoutRequest = {}, timeoutMs?: number): Promise<StatusOkData>

Description

POST /api/v1/logout. operationId logout. Timeout 15000ms.

  • HTTP: POST /api/v1/logout
  • operationId: logout
  • Authentication: Bearer token required
  • Default timeout: 15000 ms

Parameters

Parameter Type Required Description
body LogoutRequest no Optional; empty object is sent when omitted.
timeoutMs number no Override the 15000 ms default.

Request schema: LogoutRequest

This request type is the same wire shape as LogoutRequest.

No object fields (see type).

Returns

StatusOkData

Field TypeScript type Required Semantics
status string no

Errors

JSON failures become AgentError with message, status, code, and optional data. The error string is diagnostic only; key off code and HTTP status.

code When
unauthenticated Contractual/known for this call or its transport
expired_agent_session Contractual/known for this call or its transport
expired_eve_session Contractual/known for this call or its transport
tls_untrusted Contractual/known for this call or its transport
tls_pin_mismatch Contractual/known for this call or its transport
tls_required Contractual/known for this call or its transport

Example

await client.logout();

getSession

Signature

getSession(timeoutMs?: number): Promise<SessionData>

Description

GET /api/v1/session. operationId getSession. Timeout 15000ms.

  • HTTP: GET /api/v1/session
  • operationId: getSession
  • Authentication: Bearer token required
  • Default timeout: 15000 ms
  • Auth replay: read/idempotent calls may retry once after agent re-auth

Parameters

Parameter Type Required Description
timeoutMs number no Override the 15000 ms default.

Returns

SessionData

Field TypeScript type Required Semantics
username string no

Errors

JSON failures become AgentError with message, status, code, and optional data. The error string is diagnostic only; key off code and HTTP status.

code When
unauthenticated Contractual/known for this call or its transport
expired_agent_session Contractual/known for this call or its transport
expired_eve_session Contractual/known for this call or its transport
tls_untrusted Contractual/known for this call or its transport
tls_pin_mismatch Contractual/known for this call or its transport
tls_required Contractual/known for this call or its transport

Example

const session = await client.getSession();

getCapabilities

Signature

getCapabilities(timeoutMs?: number): Promise<CapabilitiesData>

Description

GET /api/v1/capabilities. operationId getCapabilities. Timeout 15000ms.

  • HTTP: GET /api/v1/capabilities
  • operationId: getCapabilities
  • Authentication: Bearer token required
  • Default timeout: 15000 ms
  • Auth replay: read/idempotent calls may retry once after agent re-auth

Parameters

Parameter Type Required Description
timeoutMs number no Override the 15000 ms default.

Returns

CapabilitiesData

Field TypeScript type Required Semantics
eveReachable boolean no
eveBaseUrl string no
features Record no
projectModes RecordProjectModeCaps> no

Errors

JSON failures become AgentError with message, status, code, and optional data. The error string is diagnostic only; key off code and HTTP status.

code When
unauthenticated Contractual/known for this call or its transport
expired_agent_session Contractual/known for this call or its transport
expired_eve_session Contractual/known for this call or its transport
tls_untrusted Contractual/known for this call or its transport
tls_pin_mismatch Contractual/known for this call or its transport
tls_required Contractual/known for this call or its transport

Example

const caps = await client.getCapabilities();

Templates / Metadata

listTemplates

Signature

listTemplates(query?: ListTemplatesQuery, timeoutMs?: number): Promise<TemplatesData>

Description

GET /api/v1/templates. operationId listTemplates. Timeout 15000ms.

  • HTTP: GET /api/v1/templates
  • operationId: listTemplates
  • Authentication: Bearer token required
  • Default timeout: 15000 ms
  • Auth replay: read/idempotent calls may retry once after agent re-auth

Parameters

Parameter Type Required Description
query ListTemplatesQuery (ListTemplatesQuery) no Query object. Omit the argument to send no query string.
timeoutMs number no Override the 15000 ms default.

Query schema: ListTemplatesQuery

Field TypeScript type Required Semantics
provisioned string no Only the string true filters to provisioned templates. Omitted means all.

Returns

TemplatesData

Field TypeScript type Required Semantics
templates Array<Template> no

Errors

JSON failures become AgentError with message, status, code, and optional data. The error string is diagnostic only; key off code and HTTP status.

code When
unauthenticated Contractual/known for this call or its transport
expired_agent_session Contractual/known for this call or its transport
expired_eve_session Contractual/known for this call or its transport
tls_untrusted Contractual/known for this call or its transport
tls_pin_mismatch Contractual/known for this call or its transport
tls_required Contractual/known for this call or its transport

Example

const all = await client.listTemplates();
const provisioned = await client.listTemplates({ provisioned: "true" });

getTemplate

Signature

getTemplate(id: string, timeoutMs?: number): Promise<TemplateDetail>

Description

GET /api/v1/templates/{id}. operationId getTemplate. Timeout 15000ms.

  • HTTP: GET /api/v1/templates/{id}
  • operationId: getTemplate
  • Authentication: Bearer token required
  • Default timeout: 15000 ms
  • Auth replay: read/idempotent calls may retry once after agent re-auth

Parameters

Parameter Type Required Description
id string yes Path parameter
timeoutMs number no Override the 15000 ms default.

Returns

TemplateDetail

Field TypeScript type Required Semantics
id string no
description string no
type string no
provisioned boolean no
configSupported boolean no
images Array<TemplateImage> no
default string no
attributes Array<TemplateAttribute> no

Errors

JSON failures become AgentError with message, status, code, and optional data. The error string is diagnostic only; key off code and HTTP status.

code When
unauthenticated Contractual/known for this call or its transport
expired_agent_session Contractual/known for this call or its transport
expired_eve_session Contractual/known for this call or its transport
tls_untrusted Contractual/known for this call or its transport
tls_pin_mismatch Contractual/known for this call or its transport
tls_required Contractual/known for this call or its transport

Example

const data = await client.getTemplate("iol");

listTemplateImages

Signature

listTemplateImages(id: string, timeoutMs?: number): Promise<TemplateImagesData>

Description

GET /api/v1/templates/{id}/images. operationId listTemplateImages. Timeout 15000ms.

  • HTTP: GET /api/v1/templates/{id}/images
  • operationId: listTemplateImages
  • Authentication: Bearer token required
  • Default timeout: 15000 ms
  • Auth replay: read/idempotent calls may retry once after agent re-auth

Parameters

Parameter Type Required Description
id string yes Path parameter
timeoutMs number no Override the 15000 ms default.

Returns

TemplateImagesData

Field TypeScript type Required Semantics
template string no
type string no
provisioned boolean no
default string no
images Array<TemplateImage> no

Errors

JSON failures become AgentError with message, status, code, and optional data. The error string is diagnostic only; key off code and HTTP status.

code When
unauthenticated Contractual/known for this call or its transport
expired_agent_session Contractual/known for this call or its transport
expired_eve_session Contractual/known for this call or its transport
tls_untrusted Contractual/known for this call or its transport
tls_pin_mismatch Contractual/known for this call or its transport
tls_required Contractual/known for this call or its transport

Example

const data = await client.listTemplateImages("iol");

listTemplateAttributes

Signature

listTemplateAttributes(id: string, timeoutMs?: number): Promise<TemplateAttributesData>

Description

GET /api/v1/templates/{id}/attributes. operationId listTemplateAttributes. Timeout 15000ms.

  • HTTP: GET /api/v1/templates/{id}/attributes
  • operationId: listTemplateAttributes
  • Authentication: Bearer token required
  • Default timeout: 15000 ms
  • Auth replay: read/idempotent calls may retry once after agent re-auth

Parameters

Parameter Type Required Description
id string yes Path parameter
timeoutMs number no Override the 15000 ms default.

Returns

TemplateAttributesData

Field TypeScript type Required Semantics
template string no
type string no
attributes Array<TemplateAttribute> no

Errors

JSON failures become AgentError with message, status, code, and optional data. The error string is diagnostic only; key off code and HTTP status.

code When
unauthenticated Contractual/known for this call or its transport
expired_agent_session Contractual/known for this call or its transport
expired_eve_session Contractual/known for this call or its transport
tls_untrusted Contractual/known for this call or its transport
tls_pin_mismatch Contractual/known for this call or its transport
tls_required Contractual/known for this call or its transport

Example

const data = await client.listTemplateAttributes("iol");

listNetworkTypes

Signature

listNetworkTypes(timeoutMs?: number): Promise<NetworkTypesData>

Description

GET /api/v1/network-types. operationId listNetworkTypes. Timeout 15000ms.

  • HTTP: GET /api/v1/network-types
  • operationId: listNetworkTypes
  • Authentication: Bearer token required
  • Default timeout: 15000 ms
  • Auth replay: read/idempotent calls may retry once after agent re-auth

Parameters

Parameter Type Required Description
timeoutMs number no Override the 15000 ms default.

Returns

NetworkTypesData

Field TypeScript type Required Semantics
types Array<NetworkType> no
natOnly boolean no

Errors

JSON failures become AgentError with message, status, code, and optional data. The error string is diagnostic only; key off code and HTTP status.

code When
unauthenticated Contractual/known for this call or its transport
expired_agent_session Contractual/known for this call or its transport
expired_eve_session Contractual/known for this call or its transport
tls_untrusted Contractual/known for this call or its transport
tls_pin_mismatch Contractual/known for this call or its transport
tls_required Contractual/known for this call or its transport

Example

const result = await client.listNetworkTypes();

listIcons

Signature

listIcons(timeoutMs?: number): Promise<IconsData>

Description

GET /api/v1/icons. operationId listIcons. Timeout 15000ms.

  • HTTP: GET /api/v1/icons
  • operationId: listIcons
  • Authentication: Bearer token required
  • Default timeout: 15000 ms
  • Auth replay: read/idempotent calls may retry once after agent re-auth

Parameters

Parameter Type Required Description
timeoutMs number no Override the 15000 ms default.

Returns

IconsData

Field TypeScript type Required Semantics
icons Array<Icon> no

Errors

JSON failures become AgentError with message, status, code, and optional data. The error string is diagnostic only; key off code and HTTP status.

code When
unauthenticated Contractual/known for this call or its transport
expired_agent_session Contractual/known for this call or its transport
expired_eve_session Contractual/known for this call or its transport
tls_untrusted Contractual/known for this call or its transport
tls_pin_mismatch Contractual/known for this call or its transport
tls_required Contractual/known for this call or its transport

Example

const result = await client.listIcons();

completeLinkInterfaces

Signature

completeLinkInterfaces(body: AuthoringPayload, timeoutMs?: number): Promise<LinkCompletionsData>

Description

POST /api/v1/authoring/link-completions. operationId completeLinkInterfaces. Timeout 15000ms.

  • HTTP: POST /api/v1/authoring/link-completions
  • operationId: completeLinkInterfaces
  • Authentication: Bearer token required
  • Default timeout: 15000 ms
  • Auth replay: read/idempotent calls may retry once after agent re-auth

Parameters

Parameter Type Required Description
body AuthoringPayload yes Request body.
timeoutMs number no Override the 15000 ms default.

Request schema: AuthoringPayload

This request type is the same wire shape as AuthoringPayload.

Field TypeScript type Required Semantics
dir string no Rejected when non-empty.
yaml string no
node string no omitted: all nodes. empty string: all nodes. named: that IaC node key
template string no
attributes Record no
excludeUsed boolean no
eth_format string no

Returns

LinkCompletionsData

Field TypeScript type Required Semantics
node string no omitted: all nodes. empty string: all nodes. named: that IaC node key
items Array<Iface> no

Errors

JSON failures become AgentError with message, status, code, and optional data. The error string is diagnostic only; key off code and HTTP status.

code When
unauthenticated Contractual/known for this call or its transport
expired_agent_session Contractual/known for this call or its transport
expired_eve_session Contractual/known for this call or its transport
tls_untrusted Contractual/known for this call or its transport
tls_pin_mismatch Contractual/known for this call or its transport
tls_required Contractual/known for this call or its transport

Example

const data = await client.completeLinkInterfaces({ template: "iol" });

previewInterfaces

Signature

previewInterfaces(body: AuthoringPayload, timeoutMs?: number): Promise<InterfacesPreviewData>

Description

POST /api/v1/authoring/interfaces. operationId previewInterfaces. Timeout 15000ms.

  • HTTP: POST /api/v1/authoring/interfaces
  • operationId: previewInterfaces
  • Authentication: Bearer token required
  • Default timeout: 15000 ms
  • Auth replay: read/idempotent calls may retry once after agent re-auth

Parameters

Parameter Type Required Description
body AuthoringPayload yes Request body.
timeoutMs number no Override the 15000 ms default.

Request schema: AuthoringPayload

This request type is the same wire shape as AuthoringPayload.

Field TypeScript type Required Semantics
dir string no Rejected when non-empty.
yaml string no
node string no omitted: all nodes. empty string: all nodes. named: that IaC node key
template string no
attributes Record no
excludeUsed boolean no
eth_format string no

Returns

InterfacesPreviewData

Field TypeScript type Required Semantics
items Array<Iface> no

Errors

JSON failures become AgentError with message, status, code, and optional data. The error string is diagnostic only; key off code and HTTP status.

code When
unauthenticated Contractual/known for this call or its transport
expired_agent_session Contractual/known for this call or its transport
expired_eve_session Contractual/known for this call or its transport
tls_untrusted Contractual/known for this call or its transport
tls_pin_mismatch Contractual/known for this call or its transport
tls_required Contractual/known for this call or its transport

Example

const data = await client.previewInterfaces({ template: "iol" });

Projects

validateProject

Signature

validateProject(body: ProjectPayload, timeoutMs?: number): Promise<ValidateData>

Description

POST /api/v1/projects/validate. operationId validateProject. Timeout 15000ms.

  • HTTP: POST /api/v1/projects/validate
  • operationId: validateProject
  • Authentication: Bearer token required
  • Default timeout: 15000 ms
  • Auth replay: read/idempotent calls may retry once after agent re-auth

Parameters

Parameter Type Required Description
body ProjectPayload yes Request body.
timeoutMs number no Override the 15000 ms default.

Request schema: ProjectPayload

This request type is the same wire shape as ProjectPayload.

Field TypeScript type Required Semantics
lab string no
yaml string no
files Record no
state unknown no
source unknown no
manifest string no
prune boolean no omitted: Go bool zero = false; extras are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: delete extra live objects on to_eve
wipe boolean no explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true)
action string no
node string no omitted: all nodes. empty string: all nodes. named: that IaC node key
id number no
stopmode number no 0=graceful 1=poweroff 2=hibernate 3=auto. Omitted uses lifecycle.DefaultStopMode (3). Explicit 0 is graceful. No OpenAPI default. omitted: lifecycle.DefaultStopMode (3, Vue auto). explicit 0: graceful stop (0); distinct from omission. values: 0=graceful 1=poweroff 2=hibernate 3=auto
refresh boolean no omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache
replace boolean no omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate
plan_identity string no omitted: recompute the live plan. present: opaque token from the last plan of the same direction
direction string no Wire string. Valid values are documented in semantics.yaml, not as an OpenAPI enum, so omitted vs to_eve vs empty vs invalid remain distinct on the wire. omitted: resolves to to_eve. empty string: resolves to to_eve. from_eve is not Import
dir string no Rejected when non-empty.
out string no Rejected when non-empty.

Returns

ValidateData

Field TypeScript type Required Semantics
status string yes

Errors

JSON failures become AgentError with message, status, code, and optional data. The error string is diagnostic only; key off code and HTTP status.

code When
unauthenticated Contractual/known for this call or its transport
expired_agent_session Contractual/known for this call or its transport
expired_eve_session Contractual/known for this call or its transport
tls_untrusted Contractual/known for this call or its transport
tls_pin_mismatch Contractual/known for this call or its transport
tls_required Contractual/known for this call or its transport

Example

const result = await client.validateProject({ lab, manifest, yaml, files });

importProject

Signature

importProject(body: ProjectPayload & {
  lab: string;
}, timeoutMs?: number): Promise<ImportData>

Description

POST /api/v1/projects/import. operationId importProject. Timeout 120000ms. Clones source_lab into a managed working copy. Does not mutate source_lab. from_eve is not this operation.

  • HTTP: POST /api/v1/projects/import
  • operationId: importProject
  • Authentication: Bearer token required
  • Default timeout: 120000 ms

Parameters

Parameter Type Required Description
body ProjectPayload & { lab: string; } yes Request body.
timeoutMs number no Override the 120000 ms default.

Request schema

lab is required. Import clones source_lab into a managed working copy. It does not mutate source_lab. It is not from_eve reconcile.

Field TypeScript type Required Semantics
lab string yes
yaml string no
files Record no
state unknown no
source unknown no
manifest string no
prune boolean no omitted: Go bool zero = false; extras are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: delete extra live objects on to_eve
wipe boolean no explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true)
action string no
node string no omitted: all nodes. empty string: all nodes. named: that IaC node key
id number no
stopmode number no 0=graceful 1=poweroff 2=hibernate 3=auto. Omitted uses lifecycle.DefaultStopMode (3). Explicit 0 is graceful. No OpenAPI default. omitted: lifecycle.DefaultStopMode (3, Vue auto). explicit 0: graceful stop (0); distinct from omission. values: 0=graceful 1=poweroff 2=hibernate 3=auto
refresh boolean no omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache
replace boolean no omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate
plan_identity string no omitted: recompute the live plan. present: opaque token from the last plan of the same direction
direction string no Wire string. Valid values are documented in semantics.yaml, not as an OpenAPI enum, so omitted vs to_eve vs empty vs invalid remain distinct on the wire. omitted: resolves to to_eve. empty string: resolves to to_eve. from_eve is not Import
dir string no Rejected when non-empty.
out string no Rejected when non-empty.

Returns

ImportData

Field TypeScript type Required Semantics
name string no
yaml string no
files Record no
mode string no
source_lab string no
managed_lab string no
lab string no
state unknown no
source unknown no

Errors

JSON failures become AgentError with message, status, code, and optional data. The error string is diagnostic only; key off code and HTTP status.

code When
unauthenticated Contractual/known for this call or its transport
expired_agent_session Contractual/known for this call or its transport
expired_eve_session Contractual/known for this call or its transport
operation_not_allowed Contractual/known for this call or its transport
lab_busy Contractual/known for this call or its transport
lab_locked Contractual/known for this call or its transport
lab_locked_mid_apply Contractual/known for this call or its transport
tls_untrusted Contractual/known for this call or its transport
tls_pin_mismatch Contractual/known for this call or its transport
tls_required Contractual/known for this call or its transport

Example

const imported = await client.importProject({
  lab: "/IaC/example.unl",
  manifest,
  yaml,
  files,
});
// Import clones source_lab. It is not reconcile from_eve.

planProject

Signature

planProject(body: ProjectPayload, timeoutMs?: number): Promise<PlanData>

Description

POST /api/v1/projects/plan. operationId planProject. Timeout 180000ms. Dry-run. Omitted direction is to_eve. Never writes Local files or EVE.

  • HTTP: POST /api/v1/projects/plan
  • operationId: planProject
  • Authentication: Bearer token required
  • Default timeout: 180000 ms
  • Auth replay: read/idempotent calls may retry once after agent re-auth

Parameters

Parameter Type Required Description
body ProjectPayload yes Request body.
timeoutMs number no Override the 180000 ms default.

Request schema: ProjectPayload

This request type is the same wire shape as ProjectPayload.

Field TypeScript type Required Semantics
lab string no
yaml string no
files Record no
state unknown no
source unknown no
manifest string no
prune boolean no omitted: Go bool zero = false; extras are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: delete extra live objects on to_eve
wipe boolean no explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true)
action string no
node string no omitted: all nodes. empty string: all nodes. named: that IaC node key
id number no
stopmode number no 0=graceful 1=poweroff 2=hibernate 3=auto. Omitted uses lifecycle.DefaultStopMode (3). Explicit 0 is graceful. No OpenAPI default. omitted: lifecycle.DefaultStopMode (3, Vue auto). explicit 0: graceful stop (0); distinct from omission. values: 0=graceful 1=poweroff 2=hibernate 3=auto
refresh boolean no omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache
replace boolean no omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate
plan_identity string no omitted: recompute the live plan. present: opaque token from the last plan of the same direction
direction string no Wire string. Valid values are documented in semantics.yaml, not as an OpenAPI enum, so omitted vs to_eve vs empty vs invalid remain distinct on the wire. omitted: resolves to to_eve. empty string: resolves to to_eve. from_eve is not Import
dir string no Rejected when non-empty.
out string no Rejected when non-empty.

Returns

PlanData

Field TypeScript type Required Semantics
lab string no
exists boolean no
summary PlanSummary no
operations Array<PlanAction> no
actions Array<PlanAction> no
applicable boolean no
blocked Array<PlanAction> no
text string no
plan_identity string no omitted: recompute the live plan. present: opaque token from the last plan of the same direction
locked boolean no
lock number no
direction string no omitted: resolves to to_eve. empty string: resolves to to_eve. from_eve is not Import
unsupported Array no

Errors

JSON failures become AgentError with message, status, code, and optional data. The error string is diagnostic only; key off code and HTTP status.

code When
unauthenticated Contractual/known for this call or its transport
expired_agent_session Contractual/known for this call or its transport
expired_eve_session Contractual/known for this call or its transport
invalid_direction Contractual/known for this call or its transport
plan_stale Contractual/known for this call or its transport
tls_untrusted Contractual/known for this call or its transport
tls_pin_mismatch Contractual/known for this call or its transport
tls_required Contractual/known for this call or its transport

Example

const result = await client.planProject({ lab, manifest, yaml, files });

deployProject

Signature

deployProject(body: ProjectPayload, timeoutMs?: number): Promise<DeployData>

Description

POST /api/v1/projects/deploy. operationId deployProject. Timeout 300000ms.

  • HTTP: POST /api/v1/projects/deploy
  • operationId: deployProject
  • Authentication: Bearer token required
  • Default timeout: 300000 ms

Parameters

Parameter Type Required Description
body ProjectPayload yes Request body.
timeoutMs number no Override the 300000 ms default.

Request schema: ProjectPayload

This request type is the same wire shape as ProjectPayload.

Field TypeScript type Required Semantics
lab string no
yaml string no
files Record no
state unknown no
source unknown no
manifest string no
prune boolean no omitted: Go bool zero = false; extras are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: delete extra live objects on to_eve
wipe boolean no explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true)
action string no
node string no omitted: all nodes. empty string: all nodes. named: that IaC node key
id number no
stopmode number no 0=graceful 1=poweroff 2=hibernate 3=auto. Omitted uses lifecycle.DefaultStopMode (3). Explicit 0 is graceful. No OpenAPI default. omitted: lifecycle.DefaultStopMode (3, Vue auto). explicit 0: graceful stop (0); distinct from omission. values: 0=graceful 1=poweroff 2=hibernate 3=auto
refresh boolean no omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache
replace boolean no omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate
plan_identity string no omitted: recompute the live plan. present: opaque token from the last plan of the same direction
direction string no Wire string. Valid values are documented in semantics.yaml, not as an OpenAPI enum, so omitted vs to_eve vs empty vs invalid remain distinct on the wire. omitted: resolves to to_eve. empty string: resolves to to_eve. from_eve is not Import
dir string no Rejected when non-empty.
out string no Rejected when non-empty.

Returns

DeployData

Field TypeScript type Required Semantics
lab string no
nodes number no
links number no
state unknown no
unsupported Array no

Errors

JSON failures become AgentError with message, status, code, and optional data. The error string is diagnostic only; key off code and HTTP status.

code When
unauthenticated Contractual/known for this call or its transport
expired_agent_session Contractual/known for this call or its transport
expired_eve_session Contractual/known for this call or its transport
lab_exists Contractual/known for this call or its transport
operation_not_allowed Contractual/known for this call or its transport
lab_busy Contractual/known for this call or its transport
lab_locked Contractual/known for this call or its transport
lab_locked_mid_apply Contractual/known for this call or its transport
tls_untrusted Contractual/known for this call or its transport
tls_pin_mismatch Contractual/known for this call or its transport
tls_required Contractual/known for this call or its transport

Example

const result = await client.deployProject({ lab, manifest, yaml, files });

reconcileProject

Signature

reconcileProject(body: ProjectPayload, timeoutMs?: number): Promise<ReconcileData>

Description

POST /api/v1/projects/reconcile. operationId reconcileProject. Timeout 300000ms. to_eve mutates EVE. from_eve updates Local from the managed lab with no mutating EVE writes. from_eve is not Import.

  • HTTP: POST /api/v1/projects/reconcile
  • operationId: reconcileProject
  • Authentication: Bearer token required
  • Default timeout: 300000 ms

Parameters

Parameter Type Required Description
body ProjectPayload yes Request body.
timeoutMs number no Override the 300000 ms default.

Request schema: ProjectPayload

This request type is the same wire shape as ProjectPayload.

Field TypeScript type Required Semantics
lab string no
yaml string no
files Record no
state unknown no
source unknown no
manifest string no
prune boolean no omitted: Go bool zero = false; extras are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: delete extra live objects on to_eve
wipe boolean no explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true)
action string no
node string no omitted: all nodes. empty string: all nodes. named: that IaC node key
id number no
stopmode number no 0=graceful 1=poweroff 2=hibernate 3=auto. Omitted uses lifecycle.DefaultStopMode (3). Explicit 0 is graceful. No OpenAPI default. omitted: lifecycle.DefaultStopMode (3, Vue auto). explicit 0: graceful stop (0); distinct from omission. values: 0=graceful 1=poweroff 2=hibernate 3=auto
refresh boolean no omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache
replace boolean no omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate
plan_identity string no omitted: recompute the live plan. present: opaque token from the last plan of the same direction
direction string no Wire string. Valid values are documented in semantics.yaml, not as an OpenAPI enum, so omitted vs to_eve vs empty vs invalid remain distinct on the wire. omitted: resolves to to_eve. empty string: resolves to to_eve. from_eve is not Import
dir string no Rejected when non-empty.
out string no Rejected when non-empty.

Returns

ReconcileData

Field TypeScript type Required Semantics
lab string no
applied number no
skippedPrune number no
fullDeploy boolean no
applicable boolean no
summary PlanSummary no
operations Array<PlanAction> no
blocked Array<PlanAction> no
direction string no omitted: resolves to to_eve. empty string: resolves to to_eve. from_eve is not Import
state unknown no
yaml string no
files Record no
source unknown no
manifest string no

Errors

JSON failures become AgentError with message, status, code, and optional data. The error string is diagnostic only; key off code and HTTP status.

code When
unauthenticated Contractual/known for this call or its transport
expired_agent_session Contractual/known for this call or its transport
expired_eve_session Contractual/known for this call or its transport
invalid_direction Contractual/known for this call or its transport
plan_stale Contractual/known for this call or its transport
operation_not_allowed Contractual/known for this call or its transport
lab_busy Contractual/known for this call or its transport
lab_locked Contractual/known for this call or its transport
lab_locked_mid_apply Contractual/known for this call or its transport
tls_untrusted Contractual/known for this call or its transport
tls_pin_mismatch Contractual/known for this call or its transport
tls_required Contractual/known for this call or its transport

Example

const result = await client.reconcileProject({ lab, manifest, yaml, files });

destroyProject

Signature

destroyProject(body: ProjectPayload, timeoutMs?: number): Promise<DestroyData>

Description

POST /api/v1/projects/destroy. operationId destroyProject. Timeout 180000ms.

  • HTTP: POST /api/v1/projects/destroy
  • operationId: destroyProject
  • Authentication: Bearer token required
  • Default timeout: 180000 ms

Parameters

Parameter Type Required Description
body ProjectPayload yes Request body.
timeoutMs number no Override the 180000 ms default.

Request schema: ProjectPayload

This request type is the same wire shape as ProjectPayload.

Field TypeScript type Required Semantics
lab string no
yaml string no
files Record no
state unknown no
source unknown no
manifest string no
prune boolean no omitted: Go bool zero = false; extras are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: delete extra live objects on to_eve
wipe boolean no explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true)
action string no
node string no omitted: all nodes. empty string: all nodes. named: that IaC node key
id number no
stopmode number no 0=graceful 1=poweroff 2=hibernate 3=auto. Omitted uses lifecycle.DefaultStopMode (3). Explicit 0 is graceful. No OpenAPI default. omitted: lifecycle.DefaultStopMode (3, Vue auto). explicit 0: graceful stop (0); distinct from omission. values: 0=graceful 1=poweroff 2=hibernate 3=auto
refresh boolean no omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache
replace boolean no omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate
plan_identity string no omitted: recompute the live plan. present: opaque token from the last plan of the same direction
direction string no Wire string. Valid values are documented in semantics.yaml, not as an OpenAPI enum, so omitted vs to_eve vs empty vs invalid remain distinct on the wire. omitted: resolves to to_eve. empty string: resolves to to_eve. from_eve is not Import
dir string no Rejected when non-empty.
out string no Rejected when non-empty.

Returns

DestroyData

Field TypeScript type Required Semantics
lab string no

Errors

JSON failures become AgentError with message, status, code, and optional data. The error string is diagnostic only; key off code and HTTP status.

code When
unauthenticated Contractual/known for this call or its transport
expired_agent_session Contractual/known for this call or its transport
expired_eve_session Contractual/known for this call or its transport
operation_not_allowed Contractual/known for this call or its transport
lab_busy Contractual/known for this call or its transport
lab_locked Contractual/known for this call or its transport
lab_locked_mid_apply Contractual/known for this call or its transport
tls_untrusted Contractual/known for this call or its transport
tls_pin_mismatch Contractual/known for this call or its transport
tls_required Contractual/known for this call or its transport

Example

const result = await client.destroyProject({ lab, manifest, yaml, files });

getProjectStatus

Signature

getProjectStatus(body: ProjectPayload, timeoutMs?: number): Promise<ProjectStatusData>

Description

POST /api/v1/projects/status. operationId getProjectStatus. Timeout 15000ms.

  • HTTP: POST /api/v1/projects/status
  • operationId: getProjectStatus
  • Authentication: Bearer token required
  • Default timeout: 15000 ms
  • Auth replay: read/idempotent calls may retry once after agent re-auth

Parameters

Parameter Type Required Description
body ProjectPayload yes Request body.
timeoutMs number no Override the 15000 ms default.

Request schema: ProjectPayload

This request type is the same wire shape as ProjectPayload.

Field TypeScript type Required Semantics
lab string no
yaml string no
files Record no
state unknown no
source unknown no
manifest string no
prune boolean no omitted: Go bool zero = false; extras are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: delete extra live objects on to_eve
wipe boolean no explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true)
action string no
node string no omitted: all nodes. empty string: all nodes. named: that IaC node key
id number no
stopmode number no 0=graceful 1=poweroff 2=hibernate 3=auto. Omitted uses lifecycle.DefaultStopMode (3). Explicit 0 is graceful. No OpenAPI default. omitted: lifecycle.DefaultStopMode (3, Vue auto). explicit 0: graceful stop (0); distinct from omission. values: 0=graceful 1=poweroff 2=hibernate 3=auto
refresh boolean no omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache
replace boolean no omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate
plan_identity string no omitted: recompute the live plan. present: opaque token from the last plan of the same direction
direction string no Wire string. Valid values are documented in semantics.yaml, not as an OpenAPI enum, so omitted vs to_eve vs empty vs invalid remain distinct on the wire. omitted: resolves to to_eve. empty string: resolves to to_eve. from_eve is not Import
dir string no Rejected when non-empty.
out string no Rejected when non-empty.

Returns

ProjectStatusData

Field TypeScript type Required Semantics
mode string no
source_lab string null no
managed_lab string null no
runtime_lab string null no
capabilities ProjectModeCaps no
locked boolean no
lock number no

Errors

JSON failures become AgentError with message, status, code, and optional data. The error string is diagnostic only; key off code and HTTP status.

code When
unauthenticated Contractual/known for this call or its transport
expired_agent_session Contractual/known for this call or its transport
expired_eve_session Contractual/known for this call or its transport
tls_untrusted Contractual/known for this call or its transport
tls_pin_mismatch Contractual/known for this call or its transport
tls_required Contractual/known for this call or its transport

Example

const result = await client.getProjectStatus({ lab, manifest, yaml, files });

inspectProject

Signature

inspectProject(body: ProjectPayload, timeoutMs?: number): Promise<InspectionData>

Description

POST /api/v1/projects/inspect. operationId inspectProject. Timeout 120000ms. Observation, not desired state.

  • HTTP: POST /api/v1/projects/inspect
  • operationId: inspectProject
  • Authentication: Bearer token required
  • Default timeout: 120000 ms
  • Auth replay: read/idempotent calls may retry once after agent re-auth

Parameters

Parameter Type Required Description
body ProjectPayload yes Request body.
timeoutMs number no Override the 120000 ms default.

Request schema: ProjectPayload

This request type is the same wire shape as ProjectPayload.

Field TypeScript type Required Semantics
lab string no
yaml string no
files Record no
state unknown no
source unknown no
manifest string no
prune boolean no omitted: Go bool zero = false; extras are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: delete extra live objects on to_eve
wipe boolean no explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true)
action string no
node string no omitted: all nodes. empty string: all nodes. named: that IaC node key
id number no
stopmode number no 0=graceful 1=poweroff 2=hibernate 3=auto. Omitted uses lifecycle.DefaultStopMode (3). Explicit 0 is graceful. No OpenAPI default. omitted: lifecycle.DefaultStopMode (3, Vue auto). explicit 0: graceful stop (0); distinct from omission. values: 0=graceful 1=poweroff 2=hibernate 3=auto
refresh boolean no omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache
replace boolean no omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate
plan_identity string no omitted: recompute the live plan. present: opaque token from the last plan of the same direction
direction string no Wire string. Valid values are documented in semantics.yaml, not as an OpenAPI enum, so omitted vs to_eve vs empty vs invalid remain distinct on the wire. omitted: resolves to to_eve. empty string: resolves to to_eve. from_eve is not Import
dir string no Rejected when non-empty.
out string no Rejected when non-empty.

Returns

InspectionData

Field TypeScript type Required Semantics
observation boolean no
desired_state boolean no
mode string no
source_lab unknown no
managed_lab unknown no
runtime_lab string no
capabilities ProjectModeCaps no
cached boolean no

Errors

JSON failures become AgentError with message, status, code, and optional data. The error string is diagnostic only; key off code and HTTP status.

code When
unauthenticated Contractual/known for this call or its transport
expired_agent_session Contractual/known for this call or its transport
expired_eve_session Contractual/known for this call or its transport
tls_untrusted Contractual/known for this call or its transport
tls_pin_mismatch Contractual/known for this call or its transport
tls_required Contractual/known for this call or its transport

Example

const result = await client.inspectProject({ lab, manifest, yaml, files });

openProject

Signature

openProject(body: ProjectPayload, timeoutMs?: number): Promise<OpenData>

Description

POST /api/v1/projects/open. operationId openProject. Timeout 30000ms.

  • HTTP: POST /api/v1/projects/open
  • operationId: openProject
  • Authentication: Bearer token required
  • Default timeout: 30000 ms
  • Auth replay: read/idempotent calls may retry once after agent re-auth

Parameters

Parameter Type Required Description
body ProjectPayload yes Request body.
timeoutMs number no Override the 30000 ms default.

Request schema: ProjectPayload

This request type is the same wire shape as ProjectPayload.

Field TypeScript type Required Semantics
lab string no
yaml string no
files Record no
state unknown no
source unknown no
manifest string no
prune boolean no omitted: Go bool zero = false; extras are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: delete extra live objects on to_eve
wipe boolean no explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true)
action string no
node string no omitted: all nodes. empty string: all nodes. named: that IaC node key
id number no
stopmode number no 0=graceful 1=poweroff 2=hibernate 3=auto. Omitted uses lifecycle.DefaultStopMode (3). Explicit 0 is graceful. No OpenAPI default. omitted: lifecycle.DefaultStopMode (3, Vue auto). explicit 0: graceful stop (0); distinct from omission. values: 0=graceful 1=poweroff 2=hibernate 3=auto
refresh boolean no omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache
replace boolean no omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate
plan_identity string no omitted: recompute the live plan. present: opaque token from the last plan of the same direction
direction string no Wire string. Valid values are documented in semantics.yaml, not as an OpenAPI enum, so omitted vs to_eve vs empty vs invalid remain distinct on the wire. omitted: resolves to to_eve. empty string: resolves to to_eve. from_eve is not Import
dir string no Rejected when non-empty.
out string no Rejected when non-empty.

Returns

OpenData

Field TypeScript type Required Semantics
url string no
ttl number no
lab string no

Errors

JSON failures become AgentError with message, status, code, and optional data. The error string is diagnostic only; key off code and HTTP status.

code When
unauthenticated Contractual/known for this call or its transport
expired_agent_session Contractual/known for this call or its transport
expired_eve_session Contractual/known for this call or its transport
tls_untrusted Contractual/known for this call or its transport
tls_pin_mismatch Contractual/known for this call or its transport
tls_required Contractual/known for this call or its transport

Example

const result = await client.openProject({ lab, manifest, yaml, files });

Execution / Consoles

listProjectConsoles

Signature

listProjectConsoles(body: ProjectPayload, timeoutMs?: number): Promise<ConsolesData>

Description

POST /api/v1/projects/consoles. operationId listProjectConsoles. Timeout 30000ms.

  • HTTP: POST /api/v1/projects/consoles
  • operationId: listProjectConsoles
  • Authentication: Bearer token required
  • Default timeout: 30000 ms
  • Auth replay: read/idempotent calls may retry once after agent re-auth

Parameters

Parameter Type Required Description
body ProjectPayload yes Request body.
timeoutMs number no Override the 30000 ms default.

Request schema: ProjectPayload

This request type is the same wire shape as ProjectPayload.

Field TypeScript type Required Semantics
lab string no
yaml string no
files Record no
state unknown no
source unknown no
manifest string no
prune boolean no omitted: Go bool zero = false; extras are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: delete extra live objects on to_eve
wipe boolean no explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true)
action string no
node string no omitted: all nodes. empty string: all nodes. named: that IaC node key
id number no
stopmode number no 0=graceful 1=poweroff 2=hibernate 3=auto. Omitted uses lifecycle.DefaultStopMode (3). Explicit 0 is graceful. No OpenAPI default. omitted: lifecycle.DefaultStopMode (3, Vue auto). explicit 0: graceful stop (0); distinct from omission. values: 0=graceful 1=poweroff 2=hibernate 3=auto
refresh boolean no omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache
replace boolean no omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate
plan_identity string no omitted: recompute the live plan. present: opaque token from the last plan of the same direction
direction string no Wire string. Valid values are documented in semantics.yaml, not as an OpenAPI enum, so omitted vs to_eve vs empty vs invalid remain distinct on the wire. omitted: resolves to to_eve. empty string: resolves to to_eve. from_eve is not Import
dir string no Rejected when non-empty.
out string no Rejected when non-empty.

Returns

ConsolesData

Field TypeScript type Required Semantics
lab string no
html5 boolean no
consoles Array<ConsoleRecord> no

Errors

JSON failures become AgentError with message, status, code, and optional data. The error string is diagnostic only; key off code and HTTP status.

code When
unauthenticated Contractual/known for this call or its transport
expired_agent_session Contractual/known for this call or its transport
expired_eve_session Contractual/known for this call or its transport
tls_untrusted Contractual/known for this call or its transport
tls_pin_mismatch Contractual/known for this call or its transport
tls_required Contractual/known for this call or its transport

Example

const result = await client.listProjectConsoles({ lab, manifest, yaml, files });

execProject

Signature

execProject(body: ProjectPayload & {
  action: string;
}, timeoutMs?: number): Promise<BulkResult>

Description

POST /api/v1/projects/exec. operationId execProject. Timeout 180000ms. action is start|stop|wipe. Omitted or empty node means all nodes. Success data is BulkResult with stable lowercase keys. Omitted stopmode is 3; explicit 0 is graceful.

  • HTTP: POST /api/v1/projects/exec
  • operationId: execProject
  • Authentication: Bearer token required
  • Default timeout: 180000 ms

Parameters

Parameter Type Required Description
body ProjectPayload & { action: string; } yes Request body.
timeoutMs number no Override the 180000 ms default.

Request schema

Field TypeScript type Required Semantics
lab string no
yaml string no
files Record no
state unknown no
source unknown no
manifest string no
prune boolean no omitted: Go bool zero = false; extras are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: delete extra live objects on to_eve
wipe boolean no explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true)
action string yes
node string no omitted: all nodes. empty string: all nodes. named: that IaC node key
id number no
stopmode number no 0=graceful 1=poweroff 2=hibernate 3=auto. Omitted uses lifecycle.DefaultStopMode (3). Explicit 0 is graceful. No OpenAPI default. omitted: lifecycle.DefaultStopMode (3, Vue auto). explicit 0: graceful stop (0); distinct from omission. values: 0=graceful 1=poweroff 2=hibernate 3=auto
refresh boolean no omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache
replace boolean no omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate
plan_identity string no omitted: recompute the live plan. present: opaque token from the last plan of the same direction
direction string no Wire string. Valid values are documented in semantics.yaml, not as an OpenAPI enum, so omitted vs to_eve vs empty vs invalid remain distinct on the wire. omitted: resolves to to_eve. empty string: resolves to to_eve. from_eve is not Import
dir string no Rejected when non-empty.
out string no Rejected when non-empty.

Returns

BulkResult

Field TypeScript type Required Semantics
requested number yes
started number yes
already_running number yes
already_starting number yes
stopped number yes
already_stopped number yes
wiped number yes
failed number yes
invalid number yes

Errors

JSON failures become AgentError with message, status, code, and optional data. The error string is diagnostic only; key off code and HTTP status.

code When
unauthenticated Contractual/known for this call or its transport
expired_agent_session Contractual/known for this call or its transport
expired_eve_session Contractual/known for this call or its transport
operation_not_allowed Contractual/known for this call or its transport
lab_busy Contractual/known for this call or its transport
lab_locked Contractual/known for this call or its transport
lab_locked_mid_apply Contractual/known for this call or its transport
tls_untrusted Contractual/known for this call or its transport
tls_pin_mismatch Contractual/known for this call or its transport
tls_required Contractual/known for this call or its transport

Example

const result = await client.execProject({ lab, manifest, yaml, files, action: "start" });

execConsole

Signature

execConsole(body: ConsolePayload, timeoutMs?: number): Promise<ConsoleExecData>

Description

POST /api/v1/console/exec. operationId execConsole. Timeout 15000ms.

  • HTTP: POST /api/v1/console/exec
  • operationId: execConsole
  • Authentication: Bearer token required
  • Default timeout: 15000 ms

Parameters

Parameter Type Required Description
body ConsolePayload yes Request body.
timeoutMs number no Override the 15000 ms default.

Request schema: ConsolePayload

This request type is the same wire shape as ConsolePayload.

Field TypeScript type Required Semantics
lab string no
yaml string no
files Record no
state unknown no
manifest string no
node string no omitted: all nodes. empty string: all nodes. named: that IaC node key
command string no
timeout_ms number no
targets Array<ConsoleTarget> no
dir string no Rejected when non-empty.
out string no Rejected when non-empty.

Returns

ConsoleExecData

Field TypeScript type Required Semantics
node string no omitted: all nodes. empty string: all nodes. named: that IaC node key
name string no
console_type string no
command string no
output string no
duration_ms number no

Errors

JSON failures become AgentError with message, status, code, and optional data. The error string is diagnostic only; key off code and HTTP status.

code When
unauthenticated Contractual/known for this call or its transport
expired_agent_session Contractual/known for this call or its transport
expired_eve_session Contractual/known for this call or its transport
tls_untrusted Contractual/known for this call or its transport
tls_pin_mismatch Contractual/known for this call or its transport
tls_required Contractual/known for this call or its transport

Example

const data = await client.execConsole({ lab, node: "n_1", command: "show version" });

execConsoleMany

Signature

execConsoleMany(body: ConsolePayload, timeoutMs?: number): Promise<ConsoleExecManyData>

Description

POST /api/v1/console/exec-many. operationId execConsoleMany. Timeout 15000ms.

  • HTTP: POST /api/v1/console/exec-many
  • operationId: execConsoleMany
  • Authentication: Bearer token required
  • Default timeout: 15000 ms

Parameters

Parameter Type Required Description
body ConsolePayload yes Request body.
timeoutMs number no Override the 15000 ms default.

Request schema: ConsolePayload

This request type is the same wire shape as ConsolePayload.

Field TypeScript type Required Semantics
lab string no
yaml string no
files Record no
state unknown no
manifest string no
node string no omitted: all nodes. empty string: all nodes. named: that IaC node key
command string no
timeout_ms number no
targets Array<ConsoleTarget> no
dir string no Rejected when non-empty.
out string no Rejected when non-empty.

Returns

ConsoleExecManyData

Field TypeScript type Required Semantics
results Array<ConsoleExecData & ({
ok?: boolean;
code?: string;
error?: string;
} & Record)> no

Errors

JSON failures become AgentError with message, status, code, and optional data. The error string is diagnostic only; key off code and HTTP status.

code When
unauthenticated Contractual/known for this call or its transport
expired_agent_session Contractual/known for this call or its transport
expired_eve_session Contractual/known for this call or its transport
tls_untrusted Contractual/known for this call or its transport
tls_pin_mismatch Contractual/known for this call or its transport
tls_required Contractual/known for this call or its transport

Example

const result = await client.execConsoleMany({ lab, manifest, yaml, files });

attachConsole

Signature

attachConsole(body: ConsolePayload, timeoutMs?: number): Promise<ConsoleAttachData>

Description

POST /api/v1/console/attach. operationId attachConsole. Timeout 30000ms.

  • HTTP: POST /api/v1/console/attach
  • operationId: attachConsole
  • Authentication: Bearer token required
  • Default timeout: 30000 ms

Parameters

Parameter Type Required Description
body ConsolePayload yes Request body.
timeoutMs number no Override the 30000 ms default.

Request schema: ConsolePayload

This request type is the same wire shape as ConsolePayload.

Field TypeScript type Required Semantics
lab string no
yaml string no
files Record no
state unknown no
manifest string no
node string no omitted: all nodes. empty string: all nodes. named: that IaC node key
command string no
timeout_ms number no
targets Array<ConsoleTarget> no
dir string no Rejected when non-empty.
out string no Rejected when non-empty.

Returns

ConsoleAttachData

Field TypeScript type Required Semantics
node string no omitted: all nodes. empty string: all nodes. named: that IaC node key
name string no
console_type string no
stream string no
transport "eve-telnet" no

Errors

JSON failures become AgentError with message, status, code, and optional data. The error string is diagnostic only; key off code and HTTP status.

code When
unauthenticated Contractual/known for this call or its transport
expired_agent_session Contractual/known for this call or its transport
expired_eve_session Contractual/known for this call or its transport
browser_token_invalid Contractual/known for this call or its transport
tls_required Contractual/known for this call or its transport
tls_untrusted Contractual/known for this call or its transport
tls_pin_mismatch Contractual/known for this call or its transport

Example

const attached = await client.attachConsole({ lab, node: "n_1" });

streamConsole

Signature

streamConsole(ticket: string, timeoutMs?: number): Promise<import("node:net").Socket>

Description

GET /api/v1/console/stream/{ticket}. operationId streamConsole. Timeout 15000ms. Success is 101 Switching Protocols, not a JSON envelope.

  • HTTP: GET /api/v1/console/stream/{ticket}
  • operationId: streamConsole
  • Authentication: Bearer token required
  • Default timeout: 15000 ms
  • Success is HTTP 101 Switching Protocols, not a JSON envelope

Parameters

Parameter Type Required Description
ticket string yes Path parameter
timeoutMs number no Override the 15000 ms default.

Returns

Promise<net.Socket> — upgraded telnet byte stream.

Errors

JSON failures become AgentError with message, status, code, and optional data. The error string is diagnostic only; key off code and HTTP status.

code When
unauthenticated Contractual/known for this call or its transport
expired_agent_session Contractual/known for this call or its transport
expired_eve_session Contractual/known for this call or its transport
browser_token_invalid Contractual/known for this call or its transport
tls_required Contractual/known for this call or its transport
tls_untrusted Contractual/known for this call or its transport
tls_pin_mismatch Contractual/known for this call or its transport

Example

const sock = await client.streamConsole(ticket);