Go models¶
Generated from eve-iac OpenAPI/semantics. Do not edit manually.
Every public OpenAPI component schema plus generated query types.
Direction is a named string type with DirectionToEve and DirectionFromEve. The HTTP wire remains a free string.
LooseObject¶
Type: map[string]any
ValidateData¶
Global structured validation of the complete topology. HTTP 200 with valid=false is a successful validate call that found errors. Do not parse message; use path and code.
| Field | Go type | Required | Semantics |
|---|---|---|---|
valid (Valid) |
bool | yes | |
errors (Errors) |
[]ValidationError |
yes |
Used by: validateProject
ValidationError¶
One machine-repairable topology error. Path uses dotted public-model notation (nodes.core_r1.attributes.cpu, links[3].endpoints[1].interface). Never mixed with JSON Pointer.
| Field | Go type | Required | Semantics |
|---|---|---|---|
path (Path) |
string | yes | |
code (Code) |
string | yes | |
value (Value) |
any | no | |
expected (Expected) |
map[string]any | no | |
message (Message) |
*string | no |
BulkResult¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
requested (Requested) |
int | yes | |
started (Started) |
int | yes | |
already_running (AlreadyRunning) |
int | yes | |
already_starting (AlreadyStarting) |
int | yes | |
stopped (Stopped) |
int | yes | |
already_stopped (AlreadyStopped) |
int | yes | |
wiped (Wiped) |
int | yes | |
failed (Failed) |
int | yes | |
invalid (Invalid) |
int | yes |
Used by: execProject
ExportConfigRequest¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
source (Source) |
any | no | |
manifest (Manifest) |
*string | no | |
prune (Prune) |
*bool | no | omitted: Go bool zero = false. to_eve still deletes a node or network whose id is in project state but whose key is absent from the desired topology, and a link absent from the desired topology. Other extra live objects are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: also delete extra live objects that the project never owned |
wipe (Wipe) |
*bool | no | explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true) |
action (Action) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
nodes (Nodes) |
[]string | no | execProject and exportProjectConfig IaC node keys. Omitted uses node. Omitted node and omitted nodes means all nodes. |
configset (Configset) |
string | yes | exportProjectConfig: default, or the name of a configset that already exists on the lab. Unknown names are not created. |
id (ID) |
*int | no | |
stopmode (Stopmode) |
*int | 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 (Refresh) |
*bool | no | omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache |
replace (Replace) |
*bool | no | omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate |
plan_identity (PlanIdentity) |
*string | no | omitted: recompute the live plan. to_eve confirm=true with remaining stop-required work: omitted identity is 409 plan_stale. present: opaque token from the last plan of the same direction |
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 |
confirm (Confirm) |
*bool | no | Meaningful on reconcileProject. If any PlanAction is unsupported, to_eve performs zero EVE mutations and the plan stays inspectable. Otherwise omitted/false applies live-applicable work and does not stop nodes. true on to_eve, only when the plan has no unsupported action: after live-safe work, stop classified requires_stop nodes only when plan_identity still matches the live classified plan; omitted or stale identity is 409 plan_stale with zero StopNode. from_eve: confirm does not authorize stop. omitted: Go bool zero = false. If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise reconcile applies live-applicable work only and does not stop nodes. explicit false: same semantic as omitted, distinct on the wire. explicit true: If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise to_eve reconcile may stop classified requires_stop nodes, re-plan, apply, restore run state. from_eve: confirm does not authorize stop. prune still requires its own confirm/yes. |
file (File) |
*string | no | getPublicProject only. topology or presentation. Omitted = topology. |
path (Path) |
*string | no | getPublicProject only. RFC 6901 JSON Pointer. Omitted or empty = whole document. Selects only; does not transform. |
filter (Filter) |
*string | no | getPublicProject only. Exact IaC key. Allowed only with path /nodes, /networks, or /links. Nodes/networks: missing key is path_not_found. Links: endpoint membership, original order, empty array if none. Not jq. |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
Used by: exportProjectConfig
ExportConfigNode¶
One node. status is exported, skipped, or failed. selector_restore_failed is set when the temporary config selector could not be put back. Both can be present.
| Field | Go type | Required | Semantics |
|---|---|---|---|
key (Key) |
*string | no | IaC node key when the node is mapped. |
id (ID) |
*int | no | Native EVE node id. |
status (Status) |
string | yes | |
code (Code) |
*string | no | EVE message id such as 80084 or 80061, or unknown_node. |
selector_restore_failed (SelectorRestoreFailed) |
*bool | no |
ExportConfigData¶
Per-node export into one existing startup-config set. Does not change topology.yml or configs/**. A failed node does not undo nodes already exported.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
string | yes | |
configset (Configset) |
string | yes | |
nodes (Nodes) |
[]ExportConfigNode |
yes |
Used by: exportProjectConfig
LinkImpairment¶
One direction of ethernet NETEM. Omitted object or omitted fields are EVE zeros (no delay/loss/jitter, unlimited bandwidth). Sending applyLinkQuality with omitted impairments clears live NETEM on that side. Not presentation.
| Field | Go type | Required | Semantics |
|---|---|---|---|
delay (Delay) |
*int | no | |
jitter (Jitter) |
*int | no | |
loss (Loss) |
*int | no | |
bandwidth (Bandwidth) |
*int | no |
Used by: applyLinkQuality
PublicLinkEndpoint¶
Public YAML identity. {node, interface} or {network}. Never native EVE numeric ids.
| Field | Go type | Required | Semantics |
|---|---|---|---|
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
interface (Interface) |
*string | no | |
network (Network) |
*string | no |
PublicLinkMatch¶
Live link identity in public YAML shape. endpoints[0] is source for source_impairment and side=source even when CanonicalLink sorts. vlan omitted/0/1 is the untagged default.
| Field | Go type | Required | Semantics |
|---|---|---|---|
endpoints (Endpoints) |
[]PublicLinkEndpoint |
yes | |
vlan (Vlan) |
*int | no |
Used by: applyLinkQuality, setLinkSuspend
LinkQualityData¶
Interaction apply result. persisted is true only when save was true. topology.yml is never written. EVE writes the UNL only for an admin session on an unlocked lab.
| Field | Go type | Required | Semantics |
|---|---|---|---|
applied (Applied) |
bool | yes | |
persisted (Persisted) |
bool | yes | |
match (Match) |
*PublicLinkMatch |
no |
Used by: applyLinkQuality
LinkSuspendTarget¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
interface (Interface) |
*string | no |
LinkSuspendData¶
Runtime TAP suspend/resume. Never a topology.yml field.
| Field | Go type | Required | Semantics |
|---|---|---|---|
applied (Applied) |
bool | yes | |
suspended (Suspended) |
bool | yes | |
side (Side) |
*string | no | |
match (Match) |
*PublicLinkMatch |
no | |
targets (Targets) |
[]LinkSuspendTarget |
no |
Used by: setLinkSuspend
CaptureData¶
HTML5 Guacamole URL on the agent origin. evecapture:// is never returned.
| Field | Go type | Required | Semantics |
|---|---|---|---|
node (Node) |
string | yes | omitted: all nodes. empty string: all nodes. named: that IaC node key |
interface (Interface) |
string | yes | |
url (URL) |
string | yes |
Used by: startCapture
TrafficAttachData¶
One-time eve-traffic upgrade. stream is /api/v1/projects/traffic/stream/{ticket}.
| Field | Go type | Required | Semantics |
|---|---|---|---|
stream (Stream) |
string | yes | |
transport (Transport) |
string | yes |
Used by: attachTraffic
SuccessEnvelope¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
ok (Ok) |
bool | yes | |
data (Data) |
any | no | |
error (Error) |
*string | no | |
code (Code) |
*string | no |
ErrorEnvelope¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
ok (Ok) |
bool | yes | |
error (Error) |
*string | no | |
code (Code) |
*string | no | |
data (Data) |
any | no |
LoginRequest¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
username (Username) |
string | yes | |
password (Password) |
string | yes |
Used by: login
LogoutRequest¶
Type: map[string]any
Used by: logout
ProjectPayload¶
decodeProject body. Unknown fields are ignored. dir/out non-empty are rejected. Do not treat omitted optional fields as serialized defaults.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
source (Source) |
any | no | |
manifest (Manifest) |
*string | no | |
prune (Prune) |
*bool | no | omitted: Go bool zero = false. to_eve still deletes a node or network whose id is in project state but whose key is absent from the desired topology, and a link absent from the desired topology. Other extra live objects are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: also delete extra live objects that the project never owned |
wipe (Wipe) |
*bool | no | explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true) |
action (Action) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
nodes (Nodes) |
[]string | no | execProject and exportProjectConfig IaC node keys. Omitted uses node. Omitted node and omitted nodes means all nodes. |
configset (Configset) |
*string | no | exportProjectConfig: default, or the name of a configset that already exists on the lab. Unknown names are not created. |
id (ID) |
*int | no | |
stopmode (Stopmode) |
*int | 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 (Refresh) |
*bool | no | omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache |
replace (Replace) |
*bool | no | omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate |
plan_identity (PlanIdentity) |
*string | no | omitted: recompute the live plan. to_eve confirm=true with remaining stop-required work: omitted identity is 409 plan_stale. present: opaque token from the last plan of the same direction |
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 |
confirm (Confirm) |
*bool | no | Meaningful on reconcileProject. If any PlanAction is unsupported, to_eve performs zero EVE mutations and the plan stays inspectable. Otherwise omitted/false applies live-applicable work and does not stop nodes. true on to_eve, only when the plan has no unsupported action: after live-safe work, stop classified requires_stop nodes only when plan_identity still matches the live classified plan; omitted or stale identity is 409 plan_stale with zero StopNode. from_eve: confirm does not authorize stop. omitted: Go bool zero = false. If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise reconcile applies live-applicable work only and does not stop nodes. explicit false: same semantic as omitted, distinct on the wire. explicit true: If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise to_eve reconcile may stop classified requires_stop nodes, re-plan, apply, restore run state. from_eve: confirm does not authorize stop. prune still requires its own confirm/yes. |
file (File) |
*string | no | getPublicProject only. topology or presentation. Omitted = topology. |
path (Path) |
*string | no | getPublicProject only. RFC 6901 JSON Pointer. Omitted or empty = whole document. Selects only; does not transform. |
filter (Filter) |
*string | no | getPublicProject only. Exact IaC key. Allowed only with path /nodes, /networks, or /links. Nodes/networks: missing key is path_not_found. Links: endpoint membership, original order, empty array if none. Not jq. |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
Used by: validateProject, importProject, deployProject, planProject, reconcileProject, destroyProject, getProjectStatus, inspectProject, getPublicProject, openProject, listProjectConsoles, execProject, applyLinkQuality, setLinkSuspend, startCapture, attachTraffic, startOob, getOobStatus, getOobCredentials, stopOob, openOob
AuthoringPayload¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
dir (Dir) |
*string | no | Rejected when non-empty. |
yaml (YAML) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
template (Template) |
*string | no | |
attributes (Attributes) |
map[string]any | no | |
excludeUsed (ExcludeUsed) |
*bool | no | |
eth_format (EthFormat) |
*string | no |
Used by: completeLinkInterfaces, previewInterfaces
ConsoleWriteMode¶
observe: read-only (agent rejects writes). interact: multiple writers. exclusive: single writer owner; no steal in v1.
Enum values: observe, interact, exclusive
ConsolePayload¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
manifest (Manifest) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
command (Command) |
*string | no | |
commands (Commands) |
[]string | no | Ordered commands on the joined Hub. Each command completes when the prompt returns after that command is sent. |
timeout_ms (TimeoutMs) |
*int | no | execConsole max 60000. waitConsole/runConsole max 600000. Default 10000 when omitted. |
targets (Targets) |
[]ConsoleTarget |
no | |
session_id (SessionID) |
*string | no | Optional Hub session. Omit to join or open the Hub for the node. A missing session reopens once. console_busy is not expiry. |
after_seq (AfterSeq) |
*int | no | getConsoleHistory only. Return bytes newer than this receive sequence. truncated is set when the sequence has left the ring. |
mode (Mode) |
*ConsoleWriteMode |
no | |
pattern (Pattern) |
*string | no | Go regexp for waitConsole. |
max_bytes (MaxBytes) |
*int | no | Bounded history tail for getConsoleHistory. |
steps (Steps) |
[]ConsoleRunStep |
no | |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
Used by: execConsole, execConsoleMany, attachConsole, createConsoleSession, listConsoleSessions, getConsoleSession, closeConsoleSession, getConsoleHistory, waitConsole, runConsole
ConsoleRunStep¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
expect (Expect) |
*string | no | |
send (Send) |
*string | no | Omit property for no send. Present empty string for RETURN. |
send_secret (SendSecret) |
*string | no | Secret send; never returned in responses or samples. |
timeout_ms (TimeoutMs) |
*int | no |
ConsoleTarget¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
command (Command) |
*string | no |
HealthData¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
status (Status) |
*string | no | |
tls (Tls) |
*bool | no | |
version (Version) |
*string | no |
Used by: getHealth
LoginData¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
token (Token) |
*string | no | |
username (Username) |
*string | no |
Used by: login
StatusOkData¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
status (Status) |
*string | no |
Used by: logout
SessionData¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
username (Username) |
*string | no |
Used by: getSession
CapabilitiesData¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
eveReachable (EveReachable) |
*bool | no | |
eveBaseUrl (EveBaseUrl) |
*string | no | |
features (Features) |
map[string]bool | no | |
projectModes (ProjectModes) |
map[string]ProjectModeCaps |
no |
Used by: getCapabilities
ProjectModeCaps¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
inspect (Inspect) |
*bool | no | |
open (Open) |
*bool | no | |
console (Console) |
*bool | no | |
lifecycle (Lifecycle) |
*LifecycleCaps |
no | |
topology_mutation (TopologyMutation) |
*bool | no | |
reconcile (Reconcile) |
*bool | no | |
destroy (Destroy) |
*bool | no | |
presentation_restore (PresentationRestore) |
*bool | no | |
source_mutation (SourceMutation) |
*bool | no |
LifecycleCaps¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
start (Start) |
*bool | no | |
stop (Stop) |
*bool | no | |
wipe (Wipe) |
*bool | no | explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true) |
Template¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
id (ID) |
*string | no | |
description (Description) |
*string | no | |
type (Type) |
*string | no | |
provisioned (Provisioned) |
*bool | no | |
configSupported (ConfigSupported) |
*bool | no |
TemplateDetail¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
id (ID) |
*string | no | |
description (Description) |
*string | no | |
type (Type) |
*string | no | |
provisioned (Provisioned) |
*bool | no | |
configSupported (ConfigSupported) |
*bool | no | |
icon (Icon) |
*string | no | |
images (Images) |
[]TemplateImage |
no | |
default (Default) |
*string | no | |
image_requirement (ImageRequirement) |
*string | no | |
attributes (Attributes) |
[]TemplateAttribute |
no |
Used by: getTemplate
TemplateImage¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
id (ID) |
*string | no | |
available (Available) |
*bool | no |
TemplateAttribute¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
name (Name) |
*string | no | |
label (Label) |
*string | no | |
kind (Kind) |
*string | no | |
group (Group) |
*string | no | |
required (Required) |
*bool | no | |
default (Default) |
any | no | |
values (Values) |
[]string | no | |
min (Min) |
any | no | |
max (Max) |
any | no |
TemplatesData¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
templates (Templates) |
[]Template |
no |
Used by: listTemplates
DeviceFamily¶
Presentation family for a template. The agent normalizes a missing, empty, or unknown value to other before this response.
Enum values: router, switchL2, switchL3, firewall, appliance, server, desktop, other
TemplateFamily¶
One template in the presentation catalog. description is copied from EVE, including .missing and .hided suffixes.
| Field | Go type | Required | Semantics |
|---|---|---|---|
description (Description) |
string | yes | |
device_family (DeviceFamily) |
DeviceFamily |
yes |
TemplateCatalogData¶
GET /api/v1/templates/catalog data. Not a project and not a node. Do not write it into topology.yml.
| Field | Go type | Required | Semantics |
|---|---|---|---|
templates (Templates) |
map[string]TemplateFamily |
yes |
Used by: getTemplateCatalog
TemplateImagesData¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
template (Template) |
*string | no | |
type (Type) |
*string | no | |
provisioned (Provisioned) |
*bool | no | |
default (Default) |
*string | no | |
images (Images) |
[]TemplateImage |
no |
Used by: listTemplateImages
TemplateAttributesData¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
template (Template) |
*string | no | |
type (Type) |
*string | no | |
attributes (Attributes) |
[]TemplateAttribute |
no |
Used by: listTemplateAttributes
NetworkType¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
id (ID) |
*string | no | |
label (Label) |
*string | no | |
icon (Icon) |
*string | no | |
supported (Supported) |
*bool | no |
NetworkTypesData¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
types (Types) |
[]NetworkType |
no | |
natOnly (NatOnly) |
*bool | no |
Used by: listNetworkTypes
NetworkAuthoring¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
id (ID) |
*string | no | |
label (Label) |
*string | no | |
icon (Icon) |
*string | no | |
supported (Supported) |
*bool | no | |
attributes (Attributes) |
[]TemplateAttribute |
no |
Used by: getNetworkAuthoring
Icon¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
id (ID) |
*string | no | |
label (Label) |
*string | no |
IconsData¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
icons (Icons) |
[]Icon |
no |
Used by: listIcons
AuthoringRevisionData¶
Lowercase SHA-256 of the canonical authoring snapshot JSON, excluding the revision field itself. iconsRevision is present after the icon zip has been built and is the SHA-256 of those zip bytes.
| Field | Go type | Required | Semantics |
|---|---|---|---|
revision (Revision) |
string | yes | |
iconsRevision (IconsRevision) |
*string | no |
Used by: getAuthoringRevision
AuthoringSnapshotData¶
Process-memoized static authoring metadata. Icon file bytes are not included.
| Field | Go type | Required | Semantics |
|---|---|---|---|
revision (Revision) |
string | yes | |
templates (Templates) |
[]TemplateDetail |
yes | |
catalog (Catalog) |
TemplateCatalogData |
yes | |
networkTypes (NetworkTypes) |
NetworkTypesData |
yes | |
networks (Networks) |
[]NetworkAuthoring |
yes | |
icons (Icons) |
[]Icon |
yes | |
netIcons (NetIcons) |
[]Icon |
yes | |
cluster (Cluster) |
[]ClusterMember |
no | GET /api/cluster members loaded with the authoring snapshot. id is the sat key stored in topology.yml. name is the label shown in the node form. -1 any and 0 local are added by the form when absent. |
Used by: getAuthoringSnapshot
ClusterMember¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
id (ID) |
int | yes | Satellite id. 0 is the master. N > 0 is cluster.id. |
name (Name) |
string | yes |
FolderEntry¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
name (Name) |
*string | no | |
path (Path) |
*string | no | |
lock (Lock) |
*bool | no | Listing lock hint only. GET lab.lock is authoritative. |
FoldersData¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
path (Path) |
*string | no | |
parent (Parent) |
*string | no | Parent folder path. Empty at labs root. |
folders (Folders) |
[]FolderEntry |
no | |
labs (Labs) |
[]FolderEntry |
no |
Used by: listFolders
Iface¶
One predicted interface. name is the authoring value. type may mix ethernet and serial in one list. used is node-mode only.
| Field | Go type | Required | Semantics |
|---|---|---|---|
name (Name) |
*string | no | |
type (Type) |
*string | no | ethernet or serial. Per-item; not factored. |
used (Used) |
*bool | no | Present in node completions. Omitted on template preview. |
InterfacesData¶
Self-contextualized interface prediction. source/template/node are response-level resolved scope. items hold only varying fields. Native EVE if-index is not public.
| Field | Go type | Required | Semantics |
|---|---|---|---|
source (Source) |
*string | no | Whether this result is a template preview or an existing IaC node. |
template (Template) |
*string | no | Canonical resolved template id. |
node (Node) |
*string | no | IaC node key when source=node. omitted: all nodes. empty string: all nodes. named: that IaC node key |
items (Items) |
[]Iface |
no |
Used by: completeLinkInterfaces, previewInterfaces
ImportData¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
name (Name) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
mode (Mode) |
*string | no | |
source_lab (SourceLab) |
*string | no | |
managed_lab (ManagedLab) |
*string | no | |
lab (Lab) |
*string | no | |
state (State) |
any | no | |
source (Source) |
any | no |
Used by: importProject
DeployData¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
nodes (Nodes) |
*int | no | |
links (Links) |
*int | no | |
state (State) |
any | no | |
unsupported (Unsupported) |
[]string | no |
Used by: deployProject
PlanSummary¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
creates (Creates) |
*int | no | |
updates (Updates) |
*int | no | |
deletes (Deletes) |
*int | no | |
blocked (Blocked) |
*int | no |
PlanAction¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
op (Op) |
*string | no | |
kind (Kind) |
*string | no | |
key (Key) |
*string | no | |
side (Side) |
*string | no | |
direction (Direction) |
*string | no | omitted: resolves to to_eve. empty string: resolves to to_eve. from_eve is not Import |
type (Type) |
*string | no | |
path (Path) |
*string | no | Public dotted path when useful (nodes.r1.attributes.cpu). Never a filesystem path. |
classification (Classification) |
*string | no | Provider-independent. applicable is true iff classification is live_applicable. |
applicable (Applicable) |
*bool | no | Derived per-action: true iff classification is live_applicable. Does not authorize EVE writes when the same plan contains an unsupported action. |
reason (Reason) |
*string | no | |
resolution (Resolution) |
*string | no | |
stop_nodes (StopNodes) |
[]string | no | IaC logical keys only. Never native EVE ids. |
obligations (Obligations) |
[]string | no | Ordered contract obligations (stop, wipe, put, destroy_node_links, rebuild_available_links, drop_orphan_links, start, …). |
result (Result) |
*string | no | What is true after obligations apply (applied_live, node_restarted, config_activated, links_rebuilt, orphans_dropped). |
prune (Prune) |
*bool | no | omitted: Go bool zero = false. to_eve still deletes a node or network whose id is in project state but whose key is absent from the desired topology, and a link absent from the desired topology. Other extra live objects are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: also delete extra live objects that the project never owned |
PlanData¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
exists (Exists) |
*bool | no | |
summary (Summary) |
*PlanSummary |
no | |
operations (Operations) |
[]PlanAction |
no | |
actions (Actions) |
[]PlanAction |
no | |
applicable (Applicable) |
*bool | no | |
blocked (Blocked) |
[]PlanAction |
no | |
text (Text) |
*string | no | |
plan_identity (PlanIdentity) |
*string | no | omitted: recompute the live plan. to_eve confirm=true with remaining stop-required work: omitted identity is 409 plan_stale. present: opaque token from the last plan of the same direction |
locked (Locked) |
*bool | no | |
lock (Lock) |
*int | no | |
direction (Direction) |
*string | no | omitted: resolves to to_eve. empty string: resolves to to_eve. from_eve is not Import |
unsupported (Unsupported) |
[]string | no |
Used by: planProject
ReconcileStep¶
One reconcile side effect. No native ids and no config bodies.
| Field | Go type | Required | Semantics |
|---|---|---|---|
op (Op) |
*string | no | |
kind (Kind) |
*string | no | |
key (Key) |
*string | no | |
type (Type) |
*string | no | |
detail (Detail) |
*string | no | |
effect (Effect) |
*string | no | |
error (Error) |
*string | no |
ReconcileData¶
Compact reconcile summary. No YAML/config bodies, no native ids. applicable is a summary of immediate full convergence and must not gate execution.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
direction (Direction) |
*string | no | omitted: resolves to to_eve. empty string: resolves to to_eve. from_eve is not Import |
status (Status) |
*string | no | |
applied (Applied) |
*int | no | |
skippedPrune (SkippedPrune) |
*int | no | |
fullDeploy (FullDeploy) |
*bool | no | |
applicable (Applicable) |
*bool | no | Summary only: full immediate convergence is possible (no requires_stop, no unsupported, not locked). Must not gate execution. |
desired_updated (DesiredUpdated) |
*bool | no | |
live (Live) |
map[string]any | no | |
requires_stop (RequiresStop) |
map[string]any | no | |
unsupported (Unsupported) |
map[string]any | no | Object {changes, messages} on reconcile. Plan still uses string[]. |
runtime (Runtime) |
map[string]any | no | |
summary (Summary) |
*PlanSummary |
no | |
operations (Operations) |
[]PlanAction |
no | The plan that was considered. Classification is not proof that a call was sent. |
executed (Executed) |
[]ReconcileStep |
no | Side effects this reconcile actually performed or refused. effect is applied, failed, skipped, or pending_stop. |
text (Text) |
*string | no | Human-readable execution report. Same facts as executed. |
blocked (Blocked) |
[]PlanAction |
no | |
plan_identity (PlanIdentity) |
*string | no | omitted: recompute the live plan. to_eve confirm=true with remaining stop-required work: omitted identity is 409 plan_stale. present: opaque token from the last plan of the same direction |
state (State) |
any | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
source (Source) |
any | no | |
manifest (Manifest) |
*string | no |
Used by: reconcileProject
DestroyData¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no |
Used by: destroyProject
ProjectStatusData¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
mode (Mode) |
*string | no | |
source_lab (SourceLab) |
*string | no | |
managed_lab (ManagedLab) |
*string | no | |
runtime_lab (RuntimeLab) |
*string | no | |
capabilities (Capabilities) |
*ProjectModeCaps |
no | |
locked (Locked) |
*bool | no | |
lock (Lock) |
*int | no | |
live (Live) |
*ProjectLiveStatus |
no |
Used by: getProjectStatus
ProjectLiveStatus¶
Lightweight live read from GET nodes/status when a runtime lab exists. Omitted when there is no runtime lab. Not a lab snapshot and not YAML intent. available false omits nodes and netem. A missing netem side is 0,0,0,0 and is omitted.
| Field | Go type | Required | Semantics |
|---|---|---|---|
available (Available) |
*bool | no | |
joined (Joined) |
*bool | no | True when native ids are named from packed state.node_ids, or as n_ |
nodes (Nodes) |
[]RuntimeNode |
no | Present when available is true. Empty array means the lab has no nodes. |
netem (Netem) |
*AppliedNetem |
no | |
error (Error) |
*string | no | Present when available is false. The runtime query failed. |
RuntimeNode¶
One live node from GET nodes/status. Not an inspection row.
| Field | Go type | Required | Semantics |
|---|---|---|---|
key (Key) |
*string | no | Logical IaC node key when joined. Empty when unmapped on a managed project. n_ |
id (ID) |
*int | no | Native EVE node id. |
state (State) |
*int | no | |
state_label (StateLabel) |
*string | no | |
mapped (Mapped) |
*bool | no |
InspectionData¶
Live/runtime observation. Not the desired topology.yml tree. Node key is a current repo/state identity join (logical IaC key when mapped). Native id is runtime metadata only. Use getPublicProject for public IaC JSON.
| Field | Go type | Required | Semantics |
|---|---|---|---|
observation (Observation) |
*bool | no | |
desired_state (DesiredState) |
*bool | no | |
mode (Mode) |
*string | no | |
source_lab (SourceLab) |
any | no | |
managed_lab (ManagedLab) |
any | no | |
runtime_lab (RuntimeLab) |
*string | no | |
capabilities (Capabilities) |
*ProjectModeCaps |
no | |
cached (Cached) |
*bool | no | |
nodes (Nodes) |
[]InspectNode |
no | |
netem (Netem) |
*AppliedNetem |
no |
Used by: inspectProject
AppliedNetem¶
Native node id → native interface id → applied sides. Not topology.yml. A missing side is 0,0,0,0 and is omitted.
Type: map[string]map[string]AppliedNetemIface
AppliedNetemIface¶
One interface. source is outbound from that interface. destination is the return toward that interface. A missing side is 0,0,0,0 and is omitted. A present side has at least one non-zero number.
| Field | Go type | Required | Semantics |
|---|---|---|---|
source (Source) |
*LinkImpairment |
no | |
destination (Destination) |
*LinkImpairment |
no |
InspectIface¶
One interface of a fully inspected node. id is the native EVE interface id used by AppliedNetem.
| Field | Go type | Required | Semantics |
|---|---|---|---|
id (ID) |
*int | no | |
name (Name) |
*string | no | |
type (Type) |
*string | no | |
network (Network) |
*string | no |
InspectNode¶
One live node. key is the current logical IaC identity when mapped is true. id is the native EVE node id. Unmapped managed nodes omit key and never use n_
| Field | Go type | Required | Semantics |
|---|---|---|---|
key (Key) |
*string | no | Logical IaC node key when mapped. Omitted when unmapped on a managed project. LOAD_FALLBACK n_ |
id (ID) |
*int | no | Native EVE node id. Runtime metadata only. |
mapped (Mapped) |
*bool | no | True when id uniquely joins to a current repository node key via packed state.node_ids. |
name (Name) |
*string | no | |
template (Template) |
*string | no | |
state (State) |
*int | no | |
state_label (StateLabel) |
*string | no | |
interfaces (Interfaces) |
[]InspectIface |
no | Present on a full inspection. id joins AppliedNetem. A runtime poll keeps these rows from the last full inspection. |
PublicData¶
Canonical public IaC JSON isomorphic to topology.yml or eve-presentation.yml. Maps stay objects. When presentation is absent: {present: false}. Never includes Internal bindings or runtime state.
Type: map[string]any
Used by: getPublicProject
SchemaRequest¶
Lazy public schema projection. sections is required, minItems 1. Unknown or empty sections fail the whole request. Omitted sections never means return everything. No all=true.
| Field | Go type | Required | Semantics |
|---|---|---|---|
sections (Sections) |
[]string | yes |
Used by: getPublicSchema
SchemaData¶
One SHA-256 revision of the embedded canonical schema plus a request-order map of self-contained JSON Schema (draft 2020-12) fragments. Each fragment includes $schema and a closed local $defs. Not lab data and not live EVE capabilities.
| Field | Go type | Required | Semantics |
|---|---|---|---|
revision (Revision) |
string | yes | Lowercase hex SHA-256 of the exact embedded canonical schema bytes. Same value for every fragment in the response. |
sections (Sections) |
map[string]any | yes | Map keyed by requested section name, preserving request order. Values are JSON Schema documents, not a compact DTO. |
Used by: getPublicSchema
EditRequest¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
source (Source) |
any | no | |
manifest (Manifest) |
*string | no | |
prune (Prune) |
*bool | no | omitted: Go bool zero = false. to_eve still deletes a node or network whose id is in project state but whose key is absent from the desired topology, and a link absent from the desired topology. Other extra live objects are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: also delete extra live objects that the project never owned |
wipe (Wipe) |
*bool | no | explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true) |
action (Action) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
nodes (Nodes) |
[]string | no | execProject and exportProjectConfig IaC node keys. Omitted uses node. Omitted node and omitted nodes means all nodes. |
configset (Configset) |
*string | no | exportProjectConfig: default, or the name of a configset that already exists on the lab. Unknown names are not created. |
id (ID) |
*int | no | |
stopmode (Stopmode) |
*int | 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 (Refresh) |
*bool | no | omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache |
replace (Replace) |
*bool | no | omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate |
plan_identity (PlanIdentity) |
*string | no | omitted: recompute the live plan. to_eve confirm=true with remaining stop-required work: omitted identity is 409 plan_stale. present: opaque token from the last plan of the same direction |
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 |
confirm (Confirm) |
*bool | no | Meaningful on reconcileProject. If any PlanAction is unsupported, to_eve performs zero EVE mutations and the plan stays inspectable. Otherwise omitted/false applies live-applicable work and does not stop nodes. true on to_eve, only when the plan has no unsupported action: after live-safe work, stop classified requires_stop nodes only when plan_identity still matches the live classified plan; omitted or stale identity is 409 plan_stale with zero StopNode. from_eve: confirm does not authorize stop. omitted: Go bool zero = false. If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise reconcile applies live-applicable work only and does not stop nodes. explicit false: same semantic as omitted, distinct on the wire. explicit true: If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise to_eve reconcile may stop classified requires_stop nodes, re-plan, apply, restore run state. from_eve: confirm does not authorize stop. prune still requires its own confirm/yes. |
file (File) |
*string | no | getPublicProject only. topology or presentation. Omitted = topology. |
path (Path) |
*string | no | getPublicProject only. RFC 6901 JSON Pointer. Omitted or empty = whole document. Selects only; does not transform. |
filter (Filter) |
*string | no | getPublicProject only. Exact IaC key. Allowed only with path /nodes, /networks, or /links. Nodes/networks: missing key is path_not_found. Links: endpoint membership, original order, empty array if none. Not jq. |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
operations (Operations) |
[]EditOperation |
yes | Bounded canonical mutations applied as one in-memory transaction. Not RFC 6902 JSON Patch. |
Used by: editProject, editProjectConfig
EditOperation¶
One bounded public-tree mutation using the same semantic model as topology.yml. Never includes Internal or native EVE ids.
| Field | Go type | Required | Semantics |
|---|---|---|---|
op (Op) |
string | yes | |
section (Section) |
string | yes | |
key (Key) |
*string | no | Exact IaC map key. Required for nodes, networks, traffic_filters, tasks, configsets. |
match (Match) |
map[string]any | no | Exact canonical link object for links update/delete. Deep equality, not fuzzy. |
value (Value) |
any | no | Canonical public JSON object for add. |
patch (Patch) |
map[string]any | no | Recursive object merge for update. Arrays replace wholly. Omitted fields stay. |
remove (Remove) |
[]string | no | RFC 6901 JSON Pointers relative to the selected object. Omitted means no field removal. |
EditChanged¶
Compact keys/counts of objects touched by a successful batch. Not the object values.
| Field | Go type | Required | Semantics |
|---|---|---|---|
nodes (Nodes) |
[]string | no | |
networks (Networks) |
[]string | no | |
links (Links) |
*int | no | |
traffic_filters (TrafficFilters) |
[]string | no | |
tasks (Tasks) |
[]string | no | |
configsets (Configsets) |
[]string | no |
EditResult¶
Compact edit result. HTTP 200 with applied=false is a successful call that found structural or validation errors; topology.yml is not written. yaml is a persist sidecar for clients and is omitted from MCP model output.
| Field | Go type | Required | Semantics |
|---|---|---|---|
applied (Applied) |
bool | yes | |
operations (Operations) |
int | yes | |
changed (Changed) |
*EditChanged |
no | |
valid (Valid) |
bool | yes | |
errors (Errors) |
[]ValidationError |
yes | |
yaml (YAML) |
*string | no | Canonical topology.yml after a successful edit. Clients persist it locally. MCP strips this field from the model-visible result. Never an Internal/native dump. |
repairs (Repairs) |
[]EditOperation |
no | Deterministic closures the agent added to a node or network delete in this same transaction. Omitted when the requested operations were already coherent. Clients do not compute or replay these operations. |
Used by: editProject
ConfigReadRequest¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
source (Source) |
any | no | |
manifest (Manifest) |
*string | no | |
prune (Prune) |
*bool | no | omitted: Go bool zero = false. to_eve still deletes a node or network whose id is in project state but whose key is absent from the desired topology, and a link absent from the desired topology. Other extra live objects are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: also delete extra live objects that the project never owned |
wipe (Wipe) |
*bool | no | explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true) |
action (Action) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
nodes (Nodes) |
[]string | no | execProject and exportProjectConfig IaC node keys. Omitted uses node. Omitted node and omitted nodes means all nodes. |
configset (Configset) |
*string | no | exportProjectConfig: default, or the name of a configset that already exists on the lab. Unknown names are not created. |
id (ID) |
*int | no | |
stopmode (Stopmode) |
*int | 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 (Refresh) |
*bool | no | omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache |
replace (Replace) |
*bool | no | omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate |
plan_identity (PlanIdentity) |
*string | no | omitted: recompute the live plan. to_eve confirm=true with remaining stop-required work: omitted identity is 409 plan_stale. present: opaque token from the last plan of the same direction |
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 |
confirm (Confirm) |
*bool | no | Meaningful on reconcileProject. If any PlanAction is unsupported, to_eve performs zero EVE mutations and the plan stays inspectable. Otherwise omitted/false applies live-applicable work and does not stop nodes. true on to_eve, only when the plan has no unsupported action: after live-safe work, stop classified requires_stop nodes only when plan_identity still matches the live classified plan; omitted or stale identity is 409 plan_stale with zero StopNode. from_eve: confirm does not authorize stop. omitted: Go bool zero = false. If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise reconcile applies live-applicable work only and does not stop nodes. explicit false: same semantic as omitted, distinct on the wire. explicit true: If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise to_eve reconcile may stop classified requires_stop nodes, re-plan, apply, restore run state. from_eve: confirm does not authorize stop. prune still requires its own confirm/yes. |
file (File) |
*string | no | getPublicProject only. topology or presentation. Omitted = topology. |
path (Path) |
*string | no | getPublicProject only. RFC 6901 JSON Pointer. Omitted or empty = whole document. Selects only; does not transform. |
filter (Filter) |
*string | no | getPublicProject only. Exact IaC key. Allowed only with path /nodes, /networks, or /links. Nodes/networks: missing key is path_not_found. Links: endpoint membership, original order, empty array if none. Not jq. |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
operation (Operation) |
string | yes | Discriminates the read. Not OpenAPI oneOf. |
template (Template) |
*string | no | Exact template id filter for index/search. |
present (Present) |
*bool | no | index only. true = blobs present, false = missing. Omitted = both. |
query (Query) |
*string | no | search only. Literal substring. Required. Max 256 characters. Empty is invalid_request. |
case_sensitive (CaseSensitive) |
*bool | no | search only. Omitted = case-insensitive. |
limit (Limit) |
*int | no | search only. Total match hits, not configs. Omitted = 20. Max 50. No OpenAPI default. |
context_lines (ContextLines) |
*int | no | search only. Neighbor lines around each hit. Omitted = 0. Max 3. No OpenAPI default. |
Used by: getProjectConfig
ConfigIndexEntry¶
One node in a startup-config index. Paths are never included. sha256 is omitted only when present is false. Empty blobs (present=true, bytes=0) include sha256 of zero bytes.
| Field | Go type | Required | Semantics |
|---|---|---|---|
template (Template) |
string | yes | |
configset (Configset) |
string | yes | |
present (Present) |
bool | yes | |
bytes (Bytes) |
*int | no | |
sha256 (Sha256) |
*string | no |
ConfigSearchMatch¶
One literal substring hit. line is 1-based. text is the matching line without its terminator. before/after exist only when context_lines > 0.
| Field | Go type | Required | Semantics |
|---|---|---|---|
line (Line) |
int | yes | |
text (Text) |
string | yes | |
before (Before) |
[]string | no | |
after (After) |
[]string | no |
ConfigSearchNode¶
Grouped search hits for one node. sha256 is present whenever the scanned blob is present, including empty blobs.
| Field | Go type | Required | Semantics |
|---|---|---|---|
template (Template) |
string | yes | |
configset (Configset) |
string | yes | |
sha256 (Sha256) |
*string | no | |
matches (Matches) |
[]ConfigSearchMatch |
yes |
ConfigData¶
Index, get, or search SUCCESS. Discriminated by the request operation. lab is topology name:, never an EVE or IaC path. Never includes relative configs/ paths.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
scope (Scope) |
map[string]any | no | |
entries (Entries) |
map[string]ConfigIndexEntry |
no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
template (Template) |
*string | no | |
configset (Configset) |
*string | no | |
present (Present) |
*bool | no | |
bytes (Bytes) |
*int | no | |
sha256 (Sha256) |
*string | no | |
content (Content) |
*string | no | |
query (Query) |
*string | no | |
truncated (Truncated) |
*bool | no | |
results (Results) |
map[string]ConfigSearchNode |
no |
Used by: getProjectConfig
ConfigEditRequest¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
source (Source) |
any | no | |
manifest (Manifest) |
*string | no | |
prune (Prune) |
*bool | no | omitted: Go bool zero = false. to_eve still deletes a node or network whose id is in project state but whose key is absent from the desired topology, and a link absent from the desired topology. Other extra live objects are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: also delete extra live objects that the project never owned |
wipe (Wipe) |
*bool | no | explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true) |
action (Action) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
nodes (Nodes) |
[]string | no | execProject and exportProjectConfig IaC node keys. Omitted uses node. Omitted node and omitted nodes means all nodes. |
configset (Configset) |
*string | no | exportProjectConfig: default, or the name of a configset that already exists on the lab. Unknown names are not created. |
id (ID) |
*int | no | |
stopmode (Stopmode) |
*int | 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 (Refresh) |
*bool | no | omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache |
replace (Replace) |
*bool | no | omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate |
plan_identity (PlanIdentity) |
*string | no | omitted: recompute the live plan. to_eve confirm=true with remaining stop-required work: omitted identity is 409 plan_stale. present: opaque token from the last plan of the same direction |
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 |
confirm (Confirm) |
*bool | no | Meaningful on reconcileProject. If any PlanAction is unsupported, to_eve performs zero EVE mutations and the plan stays inspectable. Otherwise omitted/false applies live-applicable work and does not stop nodes. true on to_eve, only when the plan has no unsupported action: after live-safe work, stop classified requires_stop nodes only when plan_identity still matches the live classified plan; omitted or stale identity is 409 plan_stale with zero StopNode. from_eve: confirm does not authorize stop. omitted: Go bool zero = false. If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise reconcile applies live-applicable work only and does not stop nodes. explicit false: same semantic as omitted, distinct on the wire. explicit true: If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise to_eve reconcile may stop classified requires_stop nodes, re-plan, apply, restore run state. from_eve: confirm does not authorize stop. prune still requires its own confirm/yes. |
file (File) |
*string | no | getPublicProject only. topology or presentation. Omitted = topology. |
path (Path) |
*string | no | getPublicProject only. RFC 6901 JSON Pointer. Omitted or empty = whole document. Selects only; does not transform. |
filter (Filter) |
*string | no | getPublicProject only. Exact IaC key. Allowed only with path /nodes, /networks, or /links. Nodes/networks: missing key is path_not_found. Links: endpoint membership, original order, empty array if none. Not jq. |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
operations (Operations) |
[]ConfigEditOp |
yes | Preflight all, then write. Not a multi-file transaction. |
Used by: editProjectConfig
ConfigEditOp¶
One startup-config put or delete. Node is an exact IaC key. content is required for put. expected_sha256 is compared to stored bytes; mismatch is 409 config_conflict with zero writes.
| Field | Go type | Required | Semantics |
|---|---|---|---|
op (Op) |
string | yes | |
node (Node) |
string | yes | omitted: all nodes. empty string: all nodes. named: that IaC node key |
content (Content) |
*string | no | Exact UTF-8 text for put. Preserved as submitted. Required for put. Ignored for delete. |
configset (Configset) |
*string | no | Library override for this op. Omitted uses the node selector, then default. |
expected_sha256 (ExpectedSha256) |
*string | no | Lowercase hex SHA-256 of current stored bytes. Mismatch is config_conflict. |
ConfigChanged¶
Post-op blob metadata. No content echo. sha256 omitted only when present is false. Empty blobs include sha256 of zero bytes.
| Field | Go type | Required | Semantics |
|---|---|---|---|
configset (Configset) |
string | yes | |
present (Present) |
bool | yes | |
bytes (Bytes) |
int | yes | |
sha256 (Sha256) |
*string | no |
ConfigEditData¶
Compact config-edit result. lab is topology name:. No content echo and no paths in model-visible fields. files, yaml, and deleted are persist sidecars; MCP strips them.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
string | yes | |
applied (Applied) |
bool | yes | |
operations (Operations) |
int | yes | |
changed (Changed) |
map[string]ConfigChanged |
yes | |
files (Files) |
map[string]string | no | Changed blobs keyed by project-relative configs/ path. Persist sidecar. MCP strips this field. |
yaml (YAML) |
*string | no | Canonical topology.yml when configsets or node selectors changed. Persist sidecar. MCP strips this field. |
deleted (Deleted) |
[]string | no | Project-relative configs/ paths to unlink. Persist sidecar. MCP strips this field. |
Used by: editProjectConfig
OpenData¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
url (URL) |
*string | no | |
ttl (TTL) |
*int | no | |
lab (Lab) |
*string | no |
Used by: openProject
ConsoleRecord¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
id (ID) |
*int | no | |
key (Key) |
*string | no | |
name (Name) |
*string | no | |
template (Template) |
*string | no | |
console (Console) |
*string | no | |
status (Status) |
*int | no | |
url (URL) |
*string | no |
ConsolesData¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
html5 (Html5) |
*bool | no | |
consoles (Consoles) |
[]ConsoleRecord |
no |
Used by: listProjectConsoles
ConsoleExecData¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
name (Name) |
*string | no | |
console_type (ConsoleType) |
*string | no | |
command (Command) |
*string | no | |
output (Output) |
*string | no | |
duration_ms (DurationMs) |
*int | no | |
timed_out (TimedOut) |
*bool | no | |
truncated (Truncated) |
*bool | no | |
prompt (Prompt) |
*string | no | |
session_id (SessionID) |
*string | no | |
match (Match) |
*string | no | |
phase (Phase) |
*string | no | Interaction phase: discovering, ready, executing, paging, interactive, auth_required, error. |
recovered (Recovered) |
*bool | no | True when a missing session was reopened for this call. |
rx_to (RxTo) |
*int | no | Receive sequence of the last byte belonging to this command. |
Used by: execConsole
ConsoleExecManyData¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
results (Results) |
[]any | no |
Used by: execConsoleMany
ConsoleAttachData¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
name (Name) |
*string | no | |
console_type (ConsoleType) |
*string | no | |
stream (Stream) |
*string | no | |
transport (Transport) |
*string | no | |
session_id (SessionID) |
*string | no | |
mode (Mode) |
*ConsoleWriteMode |
no |
Used by: attachConsole
OobNode¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
key (Key) |
*string | no | Canonical node key. This is the SSH HostName. |
name (Name) |
*string | no | Display name used only to fold the Host alias. |
OobStatusData¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
active (Active) |
*bool | no | |
username (Username) |
*string | no | SSH username. Always eve-oob while active. HTTP does not authenticate this name. |
user_public_key (UserPublicKey) |
*string | no | |
host_public_key (HostPublicKey) |
*string | no | |
host_fingerprint (HostFingerprint) |
*string | no |
Used by: startOob, getOobStatus, stopOob
OobCredentialsData¶
User private key and host public key for this generation. known_hosts lists the catalogue at this call. The host private key and Telnet endpoint are never included.
| Field | Go type | Required | Semantics |
|---|---|---|---|
username (Username) |
*string | no | |
user_private_key (UserPrivateKey) |
*string | no | |
user_public_key (UserPublicKey) |
*string | no | |
host_public_key (HostPublicKey) |
*string | no | |
host_fingerprint (HostFingerprint) |
*string | no | |
known_hosts (KnownHosts) |
*string | no | |
nodes (Nodes) |
[]OobNode |
no |
Used by: getOobCredentials
OobOpenData¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
ticket (Ticket) |
*string | no | 64-char lowercase hex. Single use. 30s TTL. Bound to this session, project, node, and generation. |
stream (Stream) |
*string | no | GET path for Upgrade: eve-oob. |
Used by: openOob
ConsoleSessionData¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
session_id (SessionID) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
name (Name) |
*string | no | |
console_type (ConsoleType) |
*string | no | |
mode (Mode) |
*ConsoleWriteMode |
no | |
state (State) |
*string | no | |
created_at (CreatedAt) |
*string | no | |
last_activity (LastActivity) |
*string | no | |
observers (Observers) |
*int | no | |
writers (Writers) |
*int | no | |
owner (Owner) |
*string | no | Exclusive writer owner when mode is exclusive. |
phase (Phase) |
*string | no | Interaction phase. state remains the TCP lifecycle. |
Used by: createConsoleSession, getConsoleSession, closeConsoleSession
ConsoleSessionListData¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
sessions (Sessions) |
[]ConsoleSessionData |
no |
Used by: listConsoleSessions
ConsoleHistoryData¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
session_id (SessionID) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
text (Text) |
*string | no | Bounded raw console tail (UTF-8 interpretation). |
truncated (Truncated) |
*bool | no | |
byte_count (ByteCount) |
*int | no | |
available_bytes (AvailableBytes) |
*int | no | Bytes retained in the Hub ring (max 65536). |
end_seq (EndSeq) |
*int | no | Receive sequence of the newest byte retained in the ring. |
Used by: getConsoleHistory
ConsoleWaitData¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
session_id (SessionID) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
matched (Matched) |
*bool | no | |
match (Match) |
*string | no | |
text (Text) |
*string | no | Matched snippet. |
duration_ms (DurationMs) |
*int | no | |
timed_out (TimedOut) |
*bool | no | |
truncated (Truncated) |
*bool | no |
Used by: waitConsole
ConsoleRunStepResult¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
index (Index) |
*int | no | 0-based step index. |
expect (Expect) |
*string | no | |
sent (Sent) |
*string | no | Redacted send; secrets appear as ********. |
matched (Matched) |
*string | no | |
duration_ms (DurationMs) |
*int | no | |
timed_out (TimedOut) |
*bool | no | |
truncated (Truncated) |
*bool | no | |
code (Code) |
*string | no | |
error (Error) |
*string | no |
ConsoleRunData¶
| Field | Go type | Required | Semantics |
|---|---|---|---|
session_id (SessionID) |
*string | no | |
ok (Ok) |
*bool | no | |
failed_step (FailedStep) |
*int | no | 0-based failed step index; -1 when ok. |
steps (Steps) |
[]ConsoleRunStepResult |
no | |
transcript (Transcript) |
*string | no | Bytes received after the sends in this run, up to the completing match. |
truncated (Truncated) |
*bool | no | |
duration_ms (DurationMs) |
*int | no | |
prompt (Prompt) |
*string | no | |
phase (Phase) |
*string | no | |
rx_to (RxTo) |
*int | no | |
recovered (Recovered) |
*bool | no |
Used by: runConsole
ListTemplatesQuery¶
Generated query object. Omit the whole argument to send no query string.
| Field | Go type | Required | Semantics |
|---|---|---|---|
provisioned (Provisioned) |
*string | no | Only the string true filters to provisioned templates. Omitted means all. |
Used by: listTemplates
ListFoldersQuery¶
Generated query object. Omit the whole argument to send no query string.
| Field | Go type | Required | Semantics |
|---|---|---|---|
path (Path) |
*string | no | EVE folder path. Omitted or empty means labs root /. Not a .unl lab path. |
Used by: listFolders
GetPublicSchemaRequest¶
Request body alias of SchemaRequest. Same wire shape.
Alias of SchemaRequest.
| Field | Go type | Required | Semantics |
|---|---|---|---|
sections (Sections) |
[]string | yes |
CompleteLinkInterfacesRequest¶
Request body alias of AuthoringPayload. Same wire shape.
Alias of AuthoringPayload.
| Field | Go type | Required | Semantics |
|---|---|---|---|
dir (Dir) |
*string | no | Rejected when non-empty. |
yaml (YAML) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
template (Template) |
*string | no | |
attributes (Attributes) |
map[string]any | no | |
excludeUsed (ExcludeUsed) |
*bool | no | |
eth_format (EthFormat) |
*string | no |
PreviewInterfacesRequest¶
Request body alias of AuthoringPayload. Same wire shape.
Alias of AuthoringPayload.
| Field | Go type | Required | Semantics |
|---|---|---|---|
dir (Dir) |
*string | no | Rejected when non-empty. |
yaml (YAML) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
template (Template) |
*string | no | |
attributes (Attributes) |
map[string]any | no | |
excludeUsed (ExcludeUsed) |
*bool | no | |
eth_format (EthFormat) |
*string | no |
ValidateProjectRequest¶
Request body alias of ProjectPayload. Same wire shape.
Alias of ProjectPayload.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
source (Source) |
any | no | |
manifest (Manifest) |
*string | no | |
prune (Prune) |
*bool | no | omitted: Go bool zero = false. to_eve still deletes a node or network whose id is in project state but whose key is absent from the desired topology, and a link absent from the desired topology. Other extra live objects are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: also delete extra live objects that the project never owned |
wipe (Wipe) |
*bool | no | explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true) |
action (Action) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
nodes (Nodes) |
[]string | no | execProject and exportProjectConfig IaC node keys. Omitted uses node. Omitted node and omitted nodes means all nodes. |
configset (Configset) |
*string | no | exportProjectConfig: default, or the name of a configset that already exists on the lab. Unknown names are not created. |
id (ID) |
*int | no | |
stopmode (Stopmode) |
*int | 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 (Refresh) |
*bool | no | omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache |
replace (Replace) |
*bool | no | omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate |
plan_identity (PlanIdentity) |
*string | no | omitted: recompute the live plan. to_eve confirm=true with remaining stop-required work: omitted identity is 409 plan_stale. present: opaque token from the last plan of the same direction |
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 |
confirm (Confirm) |
*bool | no | Meaningful on reconcileProject. If any PlanAction is unsupported, to_eve performs zero EVE mutations and the plan stays inspectable. Otherwise omitted/false applies live-applicable work and does not stop nodes. true on to_eve, only when the plan has no unsupported action: after live-safe work, stop classified requires_stop nodes only when plan_identity still matches the live classified plan; omitted or stale identity is 409 plan_stale with zero StopNode. from_eve: confirm does not authorize stop. omitted: Go bool zero = false. If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise reconcile applies live-applicable work only and does not stop nodes. explicit false: same semantic as omitted, distinct on the wire. explicit true: If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise to_eve reconcile may stop classified requires_stop nodes, re-plan, apply, restore run state. from_eve: confirm does not authorize stop. prune still requires its own confirm/yes. |
file (File) |
*string | no | getPublicProject only. topology or presentation. Omitted = topology. |
path (Path) |
*string | no | getPublicProject only. RFC 6901 JSON Pointer. Omitted or empty = whole document. Selects only; does not transform. |
filter (Filter) |
*string | no | getPublicProject only. Exact IaC key. Allowed only with path /nodes, /networks, or /links. Nodes/networks: missing key is path_not_found. Links: endpoint membership, original order, empty array if none. Not jq. |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
ImportProjectRequest¶
Request body for importProject.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
string | yes | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
source (Source) |
any | no | |
manifest (Manifest) |
*string | no | |
prune (Prune) |
*bool | no | omitted: Go bool zero = false. to_eve still deletes a node or network whose id is in project state but whose key is absent from the desired topology, and a link absent from the desired topology. Other extra live objects are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: also delete extra live objects that the project never owned |
wipe (Wipe) |
*bool | no | explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true) |
action (Action) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
nodes (Nodes) |
[]string | no | execProject and exportProjectConfig IaC node keys. Omitted uses node. Omitted node and omitted nodes means all nodes. |
configset (Configset) |
*string | no | exportProjectConfig: default, or the name of a configset that already exists on the lab. Unknown names are not created. |
id (ID) |
*int | no | |
stopmode (Stopmode) |
*int | 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 (Refresh) |
*bool | no | omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache |
replace (Replace) |
*bool | no | omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate |
plan_identity (PlanIdentity) |
*string | no | omitted: recompute the live plan. to_eve confirm=true with remaining stop-required work: omitted identity is 409 plan_stale. present: opaque token from the last plan of the same direction |
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 |
confirm (Confirm) |
*bool | no | Meaningful on reconcileProject. If any PlanAction is unsupported, to_eve performs zero EVE mutations and the plan stays inspectable. Otherwise omitted/false applies live-applicable work and does not stop nodes. true on to_eve, only when the plan has no unsupported action: after live-safe work, stop classified requires_stop nodes only when plan_identity still matches the live classified plan; omitted or stale identity is 409 plan_stale with zero StopNode. from_eve: confirm does not authorize stop. omitted: Go bool zero = false. If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise reconcile applies live-applicable work only and does not stop nodes. explicit false: same semantic as omitted, distinct on the wire. explicit true: If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise to_eve reconcile may stop classified requires_stop nodes, re-plan, apply, restore run state. from_eve: confirm does not authorize stop. prune still requires its own confirm/yes. |
file (File) |
*string | no | getPublicProject only. topology or presentation. Omitted = topology. |
path (Path) |
*string | no | getPublicProject only. RFC 6901 JSON Pointer. Omitted or empty = whole document. Selects only; does not transform. |
filter (Filter) |
*string | no | getPublicProject only. Exact IaC key. Allowed only with path /nodes, /networks, or /links. Nodes/networks: missing key is path_not_found. Links: endpoint membership, original order, empty array if none. Not jq. |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
Used by: importProject
DeployProjectRequest¶
Request body alias of ProjectPayload. Same wire shape.
Alias of ProjectPayload.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
source (Source) |
any | no | |
manifest (Manifest) |
*string | no | |
prune (Prune) |
*bool | no | omitted: Go bool zero = false. to_eve still deletes a node or network whose id is in project state but whose key is absent from the desired topology, and a link absent from the desired topology. Other extra live objects are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: also delete extra live objects that the project never owned |
wipe (Wipe) |
*bool | no | explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true) |
action (Action) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
nodes (Nodes) |
[]string | no | execProject and exportProjectConfig IaC node keys. Omitted uses node. Omitted node and omitted nodes means all nodes. |
configset (Configset) |
*string | no | exportProjectConfig: default, or the name of a configset that already exists on the lab. Unknown names are not created. |
id (ID) |
*int | no | |
stopmode (Stopmode) |
*int | 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 (Refresh) |
*bool | no | omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache |
replace (Replace) |
*bool | no | omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate |
plan_identity (PlanIdentity) |
*string | no | omitted: recompute the live plan. to_eve confirm=true with remaining stop-required work: omitted identity is 409 plan_stale. present: opaque token from the last plan of the same direction |
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 |
confirm (Confirm) |
*bool | no | Meaningful on reconcileProject. If any PlanAction is unsupported, to_eve performs zero EVE mutations and the plan stays inspectable. Otherwise omitted/false applies live-applicable work and does not stop nodes. true on to_eve, only when the plan has no unsupported action: after live-safe work, stop classified requires_stop nodes only when plan_identity still matches the live classified plan; omitted or stale identity is 409 plan_stale with zero StopNode. from_eve: confirm does not authorize stop. omitted: Go bool zero = false. If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise reconcile applies live-applicable work only and does not stop nodes. explicit false: same semantic as omitted, distinct on the wire. explicit true: If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise to_eve reconcile may stop classified requires_stop nodes, re-plan, apply, restore run state. from_eve: confirm does not authorize stop. prune still requires its own confirm/yes. |
file (File) |
*string | no | getPublicProject only. topology or presentation. Omitted = topology. |
path (Path) |
*string | no | getPublicProject only. RFC 6901 JSON Pointer. Omitted or empty = whole document. Selects only; does not transform. |
filter (Filter) |
*string | no | getPublicProject only. Exact IaC key. Allowed only with path /nodes, /networks, or /links. Nodes/networks: missing key is path_not_found. Links: endpoint membership, original order, empty array if none. Not jq. |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
PlanProjectRequest¶
Request body alias of ProjectPayload. Same wire shape.
Alias of ProjectPayload.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
source (Source) |
any | no | |
manifest (Manifest) |
*string | no | |
prune (Prune) |
*bool | no | omitted: Go bool zero = false. to_eve still deletes a node or network whose id is in project state but whose key is absent from the desired topology, and a link absent from the desired topology. Other extra live objects are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: also delete extra live objects that the project never owned |
wipe (Wipe) |
*bool | no | explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true) |
action (Action) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
nodes (Nodes) |
[]string | no | execProject and exportProjectConfig IaC node keys. Omitted uses node. Omitted node and omitted nodes means all nodes. |
configset (Configset) |
*string | no | exportProjectConfig: default, or the name of a configset that already exists on the lab. Unknown names are not created. |
id (ID) |
*int | no | |
stopmode (Stopmode) |
*int | 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 (Refresh) |
*bool | no | omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache |
replace (Replace) |
*bool | no | omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate |
plan_identity (PlanIdentity) |
*string | no | omitted: recompute the live plan. to_eve confirm=true with remaining stop-required work: omitted identity is 409 plan_stale. present: opaque token from the last plan of the same direction |
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 |
confirm (Confirm) |
*bool | no | Meaningful on reconcileProject. If any PlanAction is unsupported, to_eve performs zero EVE mutations and the plan stays inspectable. Otherwise omitted/false applies live-applicable work and does not stop nodes. true on to_eve, only when the plan has no unsupported action: after live-safe work, stop classified requires_stop nodes only when plan_identity still matches the live classified plan; omitted or stale identity is 409 plan_stale with zero StopNode. from_eve: confirm does not authorize stop. omitted: Go bool zero = false. If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise reconcile applies live-applicable work only and does not stop nodes. explicit false: same semantic as omitted, distinct on the wire. explicit true: If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise to_eve reconcile may stop classified requires_stop nodes, re-plan, apply, restore run state. from_eve: confirm does not authorize stop. prune still requires its own confirm/yes. |
file (File) |
*string | no | getPublicProject only. topology or presentation. Omitted = topology. |
path (Path) |
*string | no | getPublicProject only. RFC 6901 JSON Pointer. Omitted or empty = whole document. Selects only; does not transform. |
filter (Filter) |
*string | no | getPublicProject only. Exact IaC key. Allowed only with path /nodes, /networks, or /links. Nodes/networks: missing key is path_not_found. Links: endpoint membership, original order, empty array if none. Not jq. |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
ReconcileProjectRequest¶
Request body alias of ProjectPayload. Same wire shape.
Alias of ProjectPayload.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
source (Source) |
any | no | |
manifest (Manifest) |
*string | no | |
prune (Prune) |
*bool | no | omitted: Go bool zero = false. to_eve still deletes a node or network whose id is in project state but whose key is absent from the desired topology, and a link absent from the desired topology. Other extra live objects are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: also delete extra live objects that the project never owned |
wipe (Wipe) |
*bool | no | explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true) |
action (Action) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
nodes (Nodes) |
[]string | no | execProject and exportProjectConfig IaC node keys. Omitted uses node. Omitted node and omitted nodes means all nodes. |
configset (Configset) |
*string | no | exportProjectConfig: default, or the name of a configset that already exists on the lab. Unknown names are not created. |
id (ID) |
*int | no | |
stopmode (Stopmode) |
*int | 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 (Refresh) |
*bool | no | omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache |
replace (Replace) |
*bool | no | omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate |
plan_identity (PlanIdentity) |
*string | no | omitted: recompute the live plan. to_eve confirm=true with remaining stop-required work: omitted identity is 409 plan_stale. present: opaque token from the last plan of the same direction |
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 |
confirm (Confirm) |
*bool | no | Meaningful on reconcileProject. If any PlanAction is unsupported, to_eve performs zero EVE mutations and the plan stays inspectable. Otherwise omitted/false applies live-applicable work and does not stop nodes. true on to_eve, only when the plan has no unsupported action: after live-safe work, stop classified requires_stop nodes only when plan_identity still matches the live classified plan; omitted or stale identity is 409 plan_stale with zero StopNode. from_eve: confirm does not authorize stop. omitted: Go bool zero = false. If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise reconcile applies live-applicable work only and does not stop nodes. explicit false: same semantic as omitted, distinct on the wire. explicit true: If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise to_eve reconcile may stop classified requires_stop nodes, re-plan, apply, restore run state. from_eve: confirm does not authorize stop. prune still requires its own confirm/yes. |
file (File) |
*string | no | getPublicProject only. topology or presentation. Omitted = topology. |
path (Path) |
*string | no | getPublicProject only. RFC 6901 JSON Pointer. Omitted or empty = whole document. Selects only; does not transform. |
filter (Filter) |
*string | no | getPublicProject only. Exact IaC key. Allowed only with path /nodes, /networks, or /links. Nodes/networks: missing key is path_not_found. Links: endpoint membership, original order, empty array if none. Not jq. |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
DestroyProjectRequest¶
Request body alias of ProjectPayload. Same wire shape.
Alias of ProjectPayload.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
source (Source) |
any | no | |
manifest (Manifest) |
*string | no | |
prune (Prune) |
*bool | no | omitted: Go bool zero = false. to_eve still deletes a node or network whose id is in project state but whose key is absent from the desired topology, and a link absent from the desired topology. Other extra live objects are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: also delete extra live objects that the project never owned |
wipe (Wipe) |
*bool | no | explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true) |
action (Action) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
nodes (Nodes) |
[]string | no | execProject and exportProjectConfig IaC node keys. Omitted uses node. Omitted node and omitted nodes means all nodes. |
configset (Configset) |
*string | no | exportProjectConfig: default, or the name of a configset that already exists on the lab. Unknown names are not created. |
id (ID) |
*int | no | |
stopmode (Stopmode) |
*int | 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 (Refresh) |
*bool | no | omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache |
replace (Replace) |
*bool | no | omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate |
plan_identity (PlanIdentity) |
*string | no | omitted: recompute the live plan. to_eve confirm=true with remaining stop-required work: omitted identity is 409 plan_stale. present: opaque token from the last plan of the same direction |
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 |
confirm (Confirm) |
*bool | no | Meaningful on reconcileProject. If any PlanAction is unsupported, to_eve performs zero EVE mutations and the plan stays inspectable. Otherwise omitted/false applies live-applicable work and does not stop nodes. true on to_eve, only when the plan has no unsupported action: after live-safe work, stop classified requires_stop nodes only when plan_identity still matches the live classified plan; omitted or stale identity is 409 plan_stale with zero StopNode. from_eve: confirm does not authorize stop. omitted: Go bool zero = false. If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise reconcile applies live-applicable work only and does not stop nodes. explicit false: same semantic as omitted, distinct on the wire. explicit true: If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise to_eve reconcile may stop classified requires_stop nodes, re-plan, apply, restore run state. from_eve: confirm does not authorize stop. prune still requires its own confirm/yes. |
file (File) |
*string | no | getPublicProject only. topology or presentation. Omitted = topology. |
path (Path) |
*string | no | getPublicProject only. RFC 6901 JSON Pointer. Omitted or empty = whole document. Selects only; does not transform. |
filter (Filter) |
*string | no | getPublicProject only. Exact IaC key. Allowed only with path /nodes, /networks, or /links. Nodes/networks: missing key is path_not_found. Links: endpoint membership, original order, empty array if none. Not jq. |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
GetProjectStatusRequest¶
Request body alias of ProjectPayload. Same wire shape.
Alias of ProjectPayload.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
source (Source) |
any | no | |
manifest (Manifest) |
*string | no | |
prune (Prune) |
*bool | no | omitted: Go bool zero = false. to_eve still deletes a node or network whose id is in project state but whose key is absent from the desired topology, and a link absent from the desired topology. Other extra live objects are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: also delete extra live objects that the project never owned |
wipe (Wipe) |
*bool | no | explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true) |
action (Action) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
nodes (Nodes) |
[]string | no | execProject and exportProjectConfig IaC node keys. Omitted uses node. Omitted node and omitted nodes means all nodes. |
configset (Configset) |
*string | no | exportProjectConfig: default, or the name of a configset that already exists on the lab. Unknown names are not created. |
id (ID) |
*int | no | |
stopmode (Stopmode) |
*int | 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 (Refresh) |
*bool | no | omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache |
replace (Replace) |
*bool | no | omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate |
plan_identity (PlanIdentity) |
*string | no | omitted: recompute the live plan. to_eve confirm=true with remaining stop-required work: omitted identity is 409 plan_stale. present: opaque token from the last plan of the same direction |
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 |
confirm (Confirm) |
*bool | no | Meaningful on reconcileProject. If any PlanAction is unsupported, to_eve performs zero EVE mutations and the plan stays inspectable. Otherwise omitted/false applies live-applicable work and does not stop nodes. true on to_eve, only when the plan has no unsupported action: after live-safe work, stop classified requires_stop nodes only when plan_identity still matches the live classified plan; omitted or stale identity is 409 plan_stale with zero StopNode. from_eve: confirm does not authorize stop. omitted: Go bool zero = false. If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise reconcile applies live-applicable work only and does not stop nodes. explicit false: same semantic as omitted, distinct on the wire. explicit true: If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise to_eve reconcile may stop classified requires_stop nodes, re-plan, apply, restore run state. from_eve: confirm does not authorize stop. prune still requires its own confirm/yes. |
file (File) |
*string | no | getPublicProject only. topology or presentation. Omitted = topology. |
path (Path) |
*string | no | getPublicProject only. RFC 6901 JSON Pointer. Omitted or empty = whole document. Selects only; does not transform. |
filter (Filter) |
*string | no | getPublicProject only. Exact IaC key. Allowed only with path /nodes, /networks, or /links. Nodes/networks: missing key is path_not_found. Links: endpoint membership, original order, empty array if none. Not jq. |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
InspectProjectRequest¶
Request body alias of ProjectPayload. Same wire shape.
Alias of ProjectPayload.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
source (Source) |
any | no | |
manifest (Manifest) |
*string | no | |
prune (Prune) |
*bool | no | omitted: Go bool zero = false. to_eve still deletes a node or network whose id is in project state but whose key is absent from the desired topology, and a link absent from the desired topology. Other extra live objects are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: also delete extra live objects that the project never owned |
wipe (Wipe) |
*bool | no | explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true) |
action (Action) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
nodes (Nodes) |
[]string | no | execProject and exportProjectConfig IaC node keys. Omitted uses node. Omitted node and omitted nodes means all nodes. |
configset (Configset) |
*string | no | exportProjectConfig: default, or the name of a configset that already exists on the lab. Unknown names are not created. |
id (ID) |
*int | no | |
stopmode (Stopmode) |
*int | 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 (Refresh) |
*bool | no | omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache |
replace (Replace) |
*bool | no | omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate |
plan_identity (PlanIdentity) |
*string | no | omitted: recompute the live plan. to_eve confirm=true with remaining stop-required work: omitted identity is 409 plan_stale. present: opaque token from the last plan of the same direction |
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 |
confirm (Confirm) |
*bool | no | Meaningful on reconcileProject. If any PlanAction is unsupported, to_eve performs zero EVE mutations and the plan stays inspectable. Otherwise omitted/false applies live-applicable work and does not stop nodes. true on to_eve, only when the plan has no unsupported action: after live-safe work, stop classified requires_stop nodes only when plan_identity still matches the live classified plan; omitted or stale identity is 409 plan_stale with zero StopNode. from_eve: confirm does not authorize stop. omitted: Go bool zero = false. If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise reconcile applies live-applicable work only and does not stop nodes. explicit false: same semantic as omitted, distinct on the wire. explicit true: If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise to_eve reconcile may stop classified requires_stop nodes, re-plan, apply, restore run state. from_eve: confirm does not authorize stop. prune still requires its own confirm/yes. |
file (File) |
*string | no | getPublicProject only. topology or presentation. Omitted = topology. |
path (Path) |
*string | no | getPublicProject only. RFC 6901 JSON Pointer. Omitted or empty = whole document. Selects only; does not transform. |
filter (Filter) |
*string | no | getPublicProject only. Exact IaC key. Allowed only with path /nodes, /networks, or /links. Nodes/networks: missing key is path_not_found. Links: endpoint membership, original order, empty array if none. Not jq. |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
GetPublicProjectRequest¶
Request body alias of ProjectPayload. Same wire shape.
Alias of ProjectPayload.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
source (Source) |
any | no | |
manifest (Manifest) |
*string | no | |
prune (Prune) |
*bool | no | omitted: Go bool zero = false. to_eve still deletes a node or network whose id is in project state but whose key is absent from the desired topology, and a link absent from the desired topology. Other extra live objects are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: also delete extra live objects that the project never owned |
wipe (Wipe) |
*bool | no | explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true) |
action (Action) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
nodes (Nodes) |
[]string | no | execProject and exportProjectConfig IaC node keys. Omitted uses node. Omitted node and omitted nodes means all nodes. |
configset (Configset) |
*string | no | exportProjectConfig: default, or the name of a configset that already exists on the lab. Unknown names are not created. |
id (ID) |
*int | no | |
stopmode (Stopmode) |
*int | 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 (Refresh) |
*bool | no | omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache |
replace (Replace) |
*bool | no | omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate |
plan_identity (PlanIdentity) |
*string | no | omitted: recompute the live plan. to_eve confirm=true with remaining stop-required work: omitted identity is 409 plan_stale. present: opaque token from the last plan of the same direction |
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 |
confirm (Confirm) |
*bool | no | Meaningful on reconcileProject. If any PlanAction is unsupported, to_eve performs zero EVE mutations and the plan stays inspectable. Otherwise omitted/false applies live-applicable work and does not stop nodes. true on to_eve, only when the plan has no unsupported action: after live-safe work, stop classified requires_stop nodes only when plan_identity still matches the live classified plan; omitted or stale identity is 409 plan_stale with zero StopNode. from_eve: confirm does not authorize stop. omitted: Go bool zero = false. If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise reconcile applies live-applicable work only and does not stop nodes. explicit false: same semantic as omitted, distinct on the wire. explicit true: If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise to_eve reconcile may stop classified requires_stop nodes, re-plan, apply, restore run state. from_eve: confirm does not authorize stop. prune still requires its own confirm/yes. |
file (File) |
*string | no | getPublicProject only. topology or presentation. Omitted = topology. |
path (Path) |
*string | no | getPublicProject only. RFC 6901 JSON Pointer. Omitted or empty = whole document. Selects only; does not transform. |
filter (Filter) |
*string | no | getPublicProject only. Exact IaC key. Allowed only with path /nodes, /networks, or /links. Nodes/networks: missing key is path_not_found. Links: endpoint membership, original order, empty array if none. Not jq. |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
EditProjectRequest¶
Request body alias of EditRequest. Same wire shape.
Alias of EditRequest.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
source (Source) |
any | no | |
manifest (Manifest) |
*string | no | |
prune (Prune) |
*bool | no | omitted: Go bool zero = false. to_eve still deletes a node or network whose id is in project state but whose key is absent from the desired topology, and a link absent from the desired topology. Other extra live objects are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: also delete extra live objects that the project never owned |
wipe (Wipe) |
*bool | no | explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true) |
action (Action) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
nodes (Nodes) |
[]string | no | execProject and exportProjectConfig IaC node keys. Omitted uses node. Omitted node and omitted nodes means all nodes. |
configset (Configset) |
*string | no | exportProjectConfig: default, or the name of a configset that already exists on the lab. Unknown names are not created. |
id (ID) |
*int | no | |
stopmode (Stopmode) |
*int | 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 (Refresh) |
*bool | no | omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache |
replace (Replace) |
*bool | no | omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate |
plan_identity (PlanIdentity) |
*string | no | omitted: recompute the live plan. to_eve confirm=true with remaining stop-required work: omitted identity is 409 plan_stale. present: opaque token from the last plan of the same direction |
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 |
confirm (Confirm) |
*bool | no | Meaningful on reconcileProject. If any PlanAction is unsupported, to_eve performs zero EVE mutations and the plan stays inspectable. Otherwise omitted/false applies live-applicable work and does not stop nodes. true on to_eve, only when the plan has no unsupported action: after live-safe work, stop classified requires_stop nodes only when plan_identity still matches the live classified plan; omitted or stale identity is 409 plan_stale with zero StopNode. from_eve: confirm does not authorize stop. omitted: Go bool zero = false. If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise reconcile applies live-applicable work only and does not stop nodes. explicit false: same semantic as omitted, distinct on the wire. explicit true: If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise to_eve reconcile may stop classified requires_stop nodes, re-plan, apply, restore run state. from_eve: confirm does not authorize stop. prune still requires its own confirm/yes. |
file (File) |
*string | no | getPublicProject only. topology or presentation. Omitted = topology. |
path (Path) |
*string | no | getPublicProject only. RFC 6901 JSON Pointer. Omitted or empty = whole document. Selects only; does not transform. |
filter (Filter) |
*string | no | getPublicProject only. Exact IaC key. Allowed only with path /nodes, /networks, or /links. Nodes/networks: missing key is path_not_found. Links: endpoint membership, original order, empty array if none. Not jq. |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
operations (Operations) |
[]EditOperation |
yes | Bounded canonical mutations applied as one in-memory transaction. Not RFC 6902 JSON Patch. |
GetProjectConfigRequest¶
Request body alias of ConfigReadRequest. Same wire shape.
Alias of ConfigReadRequest.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
source (Source) |
any | no | |
manifest (Manifest) |
*string | no | |
prune (Prune) |
*bool | no | omitted: Go bool zero = false. to_eve still deletes a node or network whose id is in project state but whose key is absent from the desired topology, and a link absent from the desired topology. Other extra live objects are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: also delete extra live objects that the project never owned |
wipe (Wipe) |
*bool | no | explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true) |
action (Action) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
nodes (Nodes) |
[]string | no | execProject and exportProjectConfig IaC node keys. Omitted uses node. Omitted node and omitted nodes means all nodes. |
configset (Configset) |
*string | no | exportProjectConfig: default, or the name of a configset that already exists on the lab. Unknown names are not created. |
id (ID) |
*int | no | |
stopmode (Stopmode) |
*int | 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 (Refresh) |
*bool | no | omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache |
replace (Replace) |
*bool | no | omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate |
plan_identity (PlanIdentity) |
*string | no | omitted: recompute the live plan. to_eve confirm=true with remaining stop-required work: omitted identity is 409 plan_stale. present: opaque token from the last plan of the same direction |
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 |
confirm (Confirm) |
*bool | no | Meaningful on reconcileProject. If any PlanAction is unsupported, to_eve performs zero EVE mutations and the plan stays inspectable. Otherwise omitted/false applies live-applicable work and does not stop nodes. true on to_eve, only when the plan has no unsupported action: after live-safe work, stop classified requires_stop nodes only when plan_identity still matches the live classified plan; omitted or stale identity is 409 plan_stale with zero StopNode. from_eve: confirm does not authorize stop. omitted: Go bool zero = false. If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise reconcile applies live-applicable work only and does not stop nodes. explicit false: same semantic as omitted, distinct on the wire. explicit true: If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise to_eve reconcile may stop classified requires_stop nodes, re-plan, apply, restore run state. from_eve: confirm does not authorize stop. prune still requires its own confirm/yes. |
file (File) |
*string | no | getPublicProject only. topology or presentation. Omitted = topology. |
path (Path) |
*string | no | getPublicProject only. RFC 6901 JSON Pointer. Omitted or empty = whole document. Selects only; does not transform. |
filter (Filter) |
*string | no | getPublicProject only. Exact IaC key. Allowed only with path /nodes, /networks, or /links. Nodes/networks: missing key is path_not_found. Links: endpoint membership, original order, empty array if none. Not jq. |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
operation (Operation) |
string | yes | Discriminates the read. Not OpenAPI oneOf. |
template (Template) |
*string | no | Exact template id filter for index/search. |
present (Present) |
*bool | no | index only. true = blobs present, false = missing. Omitted = both. |
query (Query) |
*string | no | search only. Literal substring. Required. Max 256 characters. Empty is invalid_request. |
case_sensitive (CaseSensitive) |
*bool | no | search only. Omitted = case-insensitive. |
limit (Limit) |
*int | no | search only. Total match hits, not configs. Omitted = 20. Max 50. No OpenAPI default. |
context_lines (ContextLines) |
*int | no | search only. Neighbor lines around each hit. Omitted = 0. Max 3. No OpenAPI default. |
EditProjectConfigRequest¶
Request body alias of ConfigEditRequest. Same wire shape.
Alias of ConfigEditRequest.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
source (Source) |
any | no | |
manifest (Manifest) |
*string | no | |
prune (Prune) |
*bool | no | omitted: Go bool zero = false. to_eve still deletes a node or network whose id is in project state but whose key is absent from the desired topology, and a link absent from the desired topology. Other extra live objects are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: also delete extra live objects that the project never owned |
wipe (Wipe) |
*bool | no | explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true) |
action (Action) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
nodes (Nodes) |
[]string | no | execProject and exportProjectConfig IaC node keys. Omitted uses node. Omitted node and omitted nodes means all nodes. |
configset (Configset) |
*string | no | exportProjectConfig: default, or the name of a configset that already exists on the lab. Unknown names are not created. |
id (ID) |
*int | no | |
stopmode (Stopmode) |
*int | 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 (Refresh) |
*bool | no | omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache |
replace (Replace) |
*bool | no | omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate |
plan_identity (PlanIdentity) |
*string | no | omitted: recompute the live plan. to_eve confirm=true with remaining stop-required work: omitted identity is 409 plan_stale. present: opaque token from the last plan of the same direction |
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 |
confirm (Confirm) |
*bool | no | Meaningful on reconcileProject. If any PlanAction is unsupported, to_eve performs zero EVE mutations and the plan stays inspectable. Otherwise omitted/false applies live-applicable work and does not stop nodes. true on to_eve, only when the plan has no unsupported action: after live-safe work, stop classified requires_stop nodes only when plan_identity still matches the live classified plan; omitted or stale identity is 409 plan_stale with zero StopNode. from_eve: confirm does not authorize stop. omitted: Go bool zero = false. If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise reconcile applies live-applicable work only and does not stop nodes. explicit false: same semantic as omitted, distinct on the wire. explicit true: If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise to_eve reconcile may stop classified requires_stop nodes, re-plan, apply, restore run state. from_eve: confirm does not authorize stop. prune still requires its own confirm/yes. |
file (File) |
*string | no | getPublicProject only. topology or presentation. Omitted = topology. |
path (Path) |
*string | no | getPublicProject only. RFC 6901 JSON Pointer. Omitted or empty = whole document. Selects only; does not transform. |
filter (Filter) |
*string | no | getPublicProject only. Exact IaC key. Allowed only with path /nodes, /networks, or /links. Nodes/networks: missing key is path_not_found. Links: endpoint membership, original order, empty array if none. Not jq. |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
operations (Operations) |
[]ConfigEditOp |
yes | Preflight all, then write. Not a multi-file transaction. |
OpenProjectRequest¶
Request body alias of ProjectPayload. Same wire shape.
Alias of ProjectPayload.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
source (Source) |
any | no | |
manifest (Manifest) |
*string | no | |
prune (Prune) |
*bool | no | omitted: Go bool zero = false. to_eve still deletes a node or network whose id is in project state but whose key is absent from the desired topology, and a link absent from the desired topology. Other extra live objects are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: also delete extra live objects that the project never owned |
wipe (Wipe) |
*bool | no | explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true) |
action (Action) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
nodes (Nodes) |
[]string | no | execProject and exportProjectConfig IaC node keys. Omitted uses node. Omitted node and omitted nodes means all nodes. |
configset (Configset) |
*string | no | exportProjectConfig: default, or the name of a configset that already exists on the lab. Unknown names are not created. |
id (ID) |
*int | no | |
stopmode (Stopmode) |
*int | 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 (Refresh) |
*bool | no | omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache |
replace (Replace) |
*bool | no | omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate |
plan_identity (PlanIdentity) |
*string | no | omitted: recompute the live plan. to_eve confirm=true with remaining stop-required work: omitted identity is 409 plan_stale. present: opaque token from the last plan of the same direction |
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 |
confirm (Confirm) |
*bool | no | Meaningful on reconcileProject. If any PlanAction is unsupported, to_eve performs zero EVE mutations and the plan stays inspectable. Otherwise omitted/false applies live-applicable work and does not stop nodes. true on to_eve, only when the plan has no unsupported action: after live-safe work, stop classified requires_stop nodes only when plan_identity still matches the live classified plan; omitted or stale identity is 409 plan_stale with zero StopNode. from_eve: confirm does not authorize stop. omitted: Go bool zero = false. If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise reconcile applies live-applicable work only and does not stop nodes. explicit false: same semantic as omitted, distinct on the wire. explicit true: If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise to_eve reconcile may stop classified requires_stop nodes, re-plan, apply, restore run state. from_eve: confirm does not authorize stop. prune still requires its own confirm/yes. |
file (File) |
*string | no | getPublicProject only. topology or presentation. Omitted = topology. |
path (Path) |
*string | no | getPublicProject only. RFC 6901 JSON Pointer. Omitted or empty = whole document. Selects only; does not transform. |
filter (Filter) |
*string | no | getPublicProject only. Exact IaC key. Allowed only with path /nodes, /networks, or /links. Nodes/networks: missing key is path_not_found. Links: endpoint membership, original order, empty array if none. Not jq. |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
ListProjectConsolesRequest¶
Request body alias of ProjectPayload. Same wire shape.
Alias of ProjectPayload.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
source (Source) |
any | no | |
manifest (Manifest) |
*string | no | |
prune (Prune) |
*bool | no | omitted: Go bool zero = false. to_eve still deletes a node or network whose id is in project state but whose key is absent from the desired topology, and a link absent from the desired topology. Other extra live objects are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: also delete extra live objects that the project never owned |
wipe (Wipe) |
*bool | no | explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true) |
action (Action) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
nodes (Nodes) |
[]string | no | execProject and exportProjectConfig IaC node keys. Omitted uses node. Omitted node and omitted nodes means all nodes. |
configset (Configset) |
*string | no | exportProjectConfig: default, or the name of a configset that already exists on the lab. Unknown names are not created. |
id (ID) |
*int | no | |
stopmode (Stopmode) |
*int | 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 (Refresh) |
*bool | no | omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache |
replace (Replace) |
*bool | no | omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate |
plan_identity (PlanIdentity) |
*string | no | omitted: recompute the live plan. to_eve confirm=true with remaining stop-required work: omitted identity is 409 plan_stale. present: opaque token from the last plan of the same direction |
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 |
confirm (Confirm) |
*bool | no | Meaningful on reconcileProject. If any PlanAction is unsupported, to_eve performs zero EVE mutations and the plan stays inspectable. Otherwise omitted/false applies live-applicable work and does not stop nodes. true on to_eve, only when the plan has no unsupported action: after live-safe work, stop classified requires_stop nodes only when plan_identity still matches the live classified plan; omitted or stale identity is 409 plan_stale with zero StopNode. from_eve: confirm does not authorize stop. omitted: Go bool zero = false. If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise reconcile applies live-applicable work only and does not stop nodes. explicit false: same semantic as omitted, distinct on the wire. explicit true: If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise to_eve reconcile may stop classified requires_stop nodes, re-plan, apply, restore run state. from_eve: confirm does not authorize stop. prune still requires its own confirm/yes. |
file (File) |
*string | no | getPublicProject only. topology or presentation. Omitted = topology. |
path (Path) |
*string | no | getPublicProject only. RFC 6901 JSON Pointer. Omitted or empty = whole document. Selects only; does not transform. |
filter (Filter) |
*string | no | getPublicProject only. Exact IaC key. Allowed only with path /nodes, /networks, or /links. Nodes/networks: missing key is path_not_found. Links: endpoint membership, original order, empty array if none. Not jq. |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
ExecProjectRequest¶
Request body for execProject.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
source (Source) |
any | no | |
manifest (Manifest) |
*string | no | |
prune (Prune) |
*bool | no | omitted: Go bool zero = false. to_eve still deletes a node or network whose id is in project state but whose key is absent from the desired topology, and a link absent from the desired topology. Other extra live objects are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: also delete extra live objects that the project never owned |
wipe (Wipe) |
*bool | no | explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true) |
action (Action) |
string | yes | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
nodes (Nodes) |
[]string | no | execProject and exportProjectConfig IaC node keys. Omitted uses node. Omitted node and omitted nodes means all nodes. |
configset (Configset) |
*string | no | exportProjectConfig: default, or the name of a configset that already exists on the lab. Unknown names are not created. |
id (ID) |
*int | no | |
stopmode (Stopmode) |
*int | 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 (Refresh) |
*bool | no | omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache |
replace (Replace) |
*bool | no | omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate |
plan_identity (PlanIdentity) |
*string | no | omitted: recompute the live plan. to_eve confirm=true with remaining stop-required work: omitted identity is 409 plan_stale. present: opaque token from the last plan of the same direction |
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 |
confirm (Confirm) |
*bool | no | Meaningful on reconcileProject. If any PlanAction is unsupported, to_eve performs zero EVE mutations and the plan stays inspectable. Otherwise omitted/false applies live-applicable work and does not stop nodes. true on to_eve, only when the plan has no unsupported action: after live-safe work, stop classified requires_stop nodes only when plan_identity still matches the live classified plan; omitted or stale identity is 409 plan_stale with zero StopNode. from_eve: confirm does not authorize stop. omitted: Go bool zero = false. If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise reconcile applies live-applicable work only and does not stop nodes. explicit false: same semantic as omitted, distinct on the wire. explicit true: If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise to_eve reconcile may stop classified requires_stop nodes, re-plan, apply, restore run state. from_eve: confirm does not authorize stop. prune still requires its own confirm/yes. |
file (File) |
*string | no | getPublicProject only. topology or presentation. Omitted = topology. |
path (Path) |
*string | no | getPublicProject only. RFC 6901 JSON Pointer. Omitted or empty = whole document. Selects only; does not transform. |
filter (Filter) |
*string | no | getPublicProject only. Exact IaC key. Allowed only with path /nodes, /networks, or /links. Nodes/networks: missing key is path_not_found. Links: endpoint membership, original order, empty array if none. Not jq. |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
Used by: execProject
ExportProjectConfigRequest¶
Request body alias of ExportConfigRequest. Same wire shape.
Alias of ExportConfigRequest.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
source (Source) |
any | no | |
manifest (Manifest) |
*string | no | |
prune (Prune) |
*bool | no | omitted: Go bool zero = false. to_eve still deletes a node or network whose id is in project state but whose key is absent from the desired topology, and a link absent from the desired topology. Other extra live objects are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: also delete extra live objects that the project never owned |
wipe (Wipe) |
*bool | no | explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true) |
action (Action) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
nodes (Nodes) |
[]string | no | execProject and exportProjectConfig IaC node keys. Omitted uses node. Omitted node and omitted nodes means all nodes. |
configset (Configset) |
string | yes | exportProjectConfig: default, or the name of a configset that already exists on the lab. Unknown names are not created. |
id (ID) |
*int | no | |
stopmode (Stopmode) |
*int | 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 (Refresh) |
*bool | no | omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache |
replace (Replace) |
*bool | no | omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate |
plan_identity (PlanIdentity) |
*string | no | omitted: recompute the live plan. to_eve confirm=true with remaining stop-required work: omitted identity is 409 plan_stale. present: opaque token from the last plan of the same direction |
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 |
confirm (Confirm) |
*bool | no | Meaningful on reconcileProject. If any PlanAction is unsupported, to_eve performs zero EVE mutations and the plan stays inspectable. Otherwise omitted/false applies live-applicable work and does not stop nodes. true on to_eve, only when the plan has no unsupported action: after live-safe work, stop classified requires_stop nodes only when plan_identity still matches the live classified plan; omitted or stale identity is 409 plan_stale with zero StopNode. from_eve: confirm does not authorize stop. omitted: Go bool zero = false. If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise reconcile applies live-applicable work only and does not stop nodes. explicit false: same semantic as omitted, distinct on the wire. explicit true: If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise to_eve reconcile may stop classified requires_stop nodes, re-plan, apply, restore run state. from_eve: confirm does not authorize stop. prune still requires its own confirm/yes. |
file (File) |
*string | no | getPublicProject only. topology or presentation. Omitted = topology. |
path (Path) |
*string | no | getPublicProject only. RFC 6901 JSON Pointer. Omitted or empty = whole document. Selects only; does not transform. |
filter (Filter) |
*string | no | getPublicProject only. Exact IaC key. Allowed only with path /nodes, /networks, or /links. Nodes/networks: missing key is path_not_found. Links: endpoint membership, original order, empty array if none. Not jq. |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
ApplyLinkQualityRequest¶
Request body for applyLinkQuality.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
source (Source) |
any | no | |
manifest (Manifest) |
*string | no | |
prune (Prune) |
*bool | no | omitted: Go bool zero = false. to_eve still deletes a node or network whose id is in project state but whose key is absent from the desired topology, and a link absent from the desired topology. Other extra live objects are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: also delete extra live objects that the project never owned |
wipe (Wipe) |
*bool | no | explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true) |
action (Action) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
nodes (Nodes) |
[]string | no | execProject and exportProjectConfig IaC node keys. Omitted uses node. Omitted node and omitted nodes means all nodes. |
configset (Configset) |
*string | no | exportProjectConfig: default, or the name of a configset that already exists on the lab. Unknown names are not created. |
id (ID) |
*int | no | |
stopmode (Stopmode) |
*int | 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 (Refresh) |
*bool | no | omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache |
replace (Replace) |
*bool | no | omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate |
plan_identity (PlanIdentity) |
*string | no | omitted: recompute the live plan. to_eve confirm=true with remaining stop-required work: omitted identity is 409 plan_stale. present: opaque token from the last plan of the same direction |
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 |
confirm (Confirm) |
*bool | no | Meaningful on reconcileProject. If any PlanAction is unsupported, to_eve performs zero EVE mutations and the plan stays inspectable. Otherwise omitted/false applies live-applicable work and does not stop nodes. true on to_eve, only when the plan has no unsupported action: after live-safe work, stop classified requires_stop nodes only when plan_identity still matches the live classified plan; omitted or stale identity is 409 plan_stale with zero StopNode. from_eve: confirm does not authorize stop. omitted: Go bool zero = false. If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise reconcile applies live-applicable work only and does not stop nodes. explicit false: same semantic as omitted, distinct on the wire. explicit true: If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise to_eve reconcile may stop classified requires_stop nodes, re-plan, apply, restore run state. from_eve: confirm does not authorize stop. prune still requires its own confirm/yes. |
file (File) |
*string | no | getPublicProject only. topology or presentation. Omitted = topology. |
path (Path) |
*string | no | getPublicProject only. RFC 6901 JSON Pointer. Omitted or empty = whole document. Selects only; does not transform. |
filter (Filter) |
*string | no | getPublicProject only. Exact IaC key. Allowed only with path /nodes, /networks, or /links. Nodes/networks: missing key is path_not_found. Links: endpoint membership, original order, empty array if none. Not jq. |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
match (Match) |
PublicLinkMatch |
yes | |
source_impairment (SourceImpairment) |
*LinkImpairment |
no | |
destination_impairment (DestinationImpairment) |
*LinkImpairment |
no | |
save (Save) |
*bool | no | When true, native quality save=1 persists NETEM into the UNL (admin session, unlocked lab). Omitted or false is live-only save=0. Never writes topology.yml. |
Used by: applyLinkQuality
SetLinkSuspendRequest¶
Request body for setLinkSuspend.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
source (Source) |
any | no | |
manifest (Manifest) |
*string | no | |
prune (Prune) |
*bool | no | omitted: Go bool zero = false. to_eve still deletes a node or network whose id is in project state but whose key is absent from the desired topology, and a link absent from the desired topology. Other extra live objects are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: also delete extra live objects that the project never owned |
wipe (Wipe) |
*bool | no | explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true) |
action (Action) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
nodes (Nodes) |
[]string | no | execProject and exportProjectConfig IaC node keys. Omitted uses node. Omitted node and omitted nodes means all nodes. |
configset (Configset) |
*string | no | exportProjectConfig: default, or the name of a configset that already exists on the lab. Unknown names are not created. |
id (ID) |
*int | no | |
stopmode (Stopmode) |
*int | 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 (Refresh) |
*bool | no | omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache |
replace (Replace) |
*bool | no | omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate |
plan_identity (PlanIdentity) |
*string | no | omitted: recompute the live plan. to_eve confirm=true with remaining stop-required work: omitted identity is 409 plan_stale. present: opaque token from the last plan of the same direction |
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 |
confirm (Confirm) |
*bool | no | Meaningful on reconcileProject. If any PlanAction is unsupported, to_eve performs zero EVE mutations and the plan stays inspectable. Otherwise omitted/false applies live-applicable work and does not stop nodes. true on to_eve, only when the plan has no unsupported action: after live-safe work, stop classified requires_stop nodes only when plan_identity still matches the live classified plan; omitted or stale identity is 409 plan_stale with zero StopNode. from_eve: confirm does not authorize stop. omitted: Go bool zero = false. If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise reconcile applies live-applicable work only and does not stop nodes. explicit false: same semantic as omitted, distinct on the wire. explicit true: If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise to_eve reconcile may stop classified requires_stop nodes, re-plan, apply, restore run state. from_eve: confirm does not authorize stop. prune still requires its own confirm/yes. |
file (File) |
*string | no | getPublicProject only. topology or presentation. Omitted = topology. |
path (Path) |
*string | no | getPublicProject only. RFC 6901 JSON Pointer. Omitted or empty = whole document. Selects only; does not transform. |
filter (Filter) |
*string | no | getPublicProject only. Exact IaC key. Allowed only with path /nodes, /networks, or /links. Nodes/networks: missing key is path_not_found. Links: endpoint membership, original order, empty array if none. Not jq. |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
match (Match) |
PublicLinkMatch |
yes | |
suspended (Suspended) |
bool | yes | true = native suspend; false = native resume. Required; omitted is 400 invalid_request. |
side (Side) |
*string | no | source, destination, or both. Omitted/empty is both. Wire-distinct from explicit both. |
Used by: setLinkSuspend
StartCaptureRequest¶
Request body for startCapture.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
source (Source) |
any | no | |
manifest (Manifest) |
*string | no | |
prune (Prune) |
*bool | no | omitted: Go bool zero = false. to_eve still deletes a node or network whose id is in project state but whose key is absent from the desired topology, and a link absent from the desired topology. Other extra live objects are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: also delete extra live objects that the project never owned |
wipe (Wipe) |
*bool | no | explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true) |
action (Action) |
*string | no | |
node (Node) |
string | yes | omitted: all nodes. empty string: all nodes. named: that IaC node key |
nodes (Nodes) |
[]string | no | execProject and exportProjectConfig IaC node keys. Omitted uses node. Omitted node and omitted nodes means all nodes. |
configset (Configset) |
*string | no | exportProjectConfig: default, or the name of a configset that already exists on the lab. Unknown names are not created. |
id (ID) |
*int | no | |
stopmode (Stopmode) |
*int | 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 (Refresh) |
*bool | no | omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache |
replace (Replace) |
*bool | no | omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate |
plan_identity (PlanIdentity) |
*string | no | omitted: recompute the live plan. to_eve confirm=true with remaining stop-required work: omitted identity is 409 plan_stale. present: opaque token from the last plan of the same direction |
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 |
confirm (Confirm) |
*bool | no | Meaningful on reconcileProject. If any PlanAction is unsupported, to_eve performs zero EVE mutations and the plan stays inspectable. Otherwise omitted/false applies live-applicable work and does not stop nodes. true on to_eve, only when the plan has no unsupported action: after live-safe work, stop classified requires_stop nodes only when plan_identity still matches the live classified plan; omitted or stale identity is 409 plan_stale with zero StopNode. from_eve: confirm does not authorize stop. omitted: Go bool zero = false. If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise reconcile applies live-applicable work only and does not stop nodes. explicit false: same semantic as omitted, distinct on the wire. explicit true: If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise to_eve reconcile may stop classified requires_stop nodes, re-plan, apply, restore run state. from_eve: confirm does not authorize stop. prune still requires its own confirm/yes. |
file (File) |
*string | no | getPublicProject only. topology or presentation. Omitted = topology. |
path (Path) |
*string | no | getPublicProject only. RFC 6901 JSON Pointer. Omitted or empty = whole document. Selects only; does not transform. |
filter (Filter) |
*string | no | getPublicProject only. Exact IaC key. Allowed only with path /nodes, /networks, or /links. Nodes/networks: missing key is path_not_found. Links: endpoint membership, original order, empty array if none. Not jq. |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
interface (Interface) |
string | yes | Interface name on that node. |
Used by: startCapture
AttachTrafficRequest¶
Request body alias of ProjectPayload. Same wire shape.
Alias of ProjectPayload.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
source (Source) |
any | no | |
manifest (Manifest) |
*string | no | |
prune (Prune) |
*bool | no | omitted: Go bool zero = false. to_eve still deletes a node or network whose id is in project state but whose key is absent from the desired topology, and a link absent from the desired topology. Other extra live objects are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: also delete extra live objects that the project never owned |
wipe (Wipe) |
*bool | no | explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true) |
action (Action) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
nodes (Nodes) |
[]string | no | execProject and exportProjectConfig IaC node keys. Omitted uses node. Omitted node and omitted nodes means all nodes. |
configset (Configset) |
*string | no | exportProjectConfig: default, or the name of a configset that already exists on the lab. Unknown names are not created. |
id (ID) |
*int | no | |
stopmode (Stopmode) |
*int | 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 (Refresh) |
*bool | no | omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache |
replace (Replace) |
*bool | no | omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate |
plan_identity (PlanIdentity) |
*string | no | omitted: recompute the live plan. to_eve confirm=true with remaining stop-required work: omitted identity is 409 plan_stale. present: opaque token from the last plan of the same direction |
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 |
confirm (Confirm) |
*bool | no | Meaningful on reconcileProject. If any PlanAction is unsupported, to_eve performs zero EVE mutations and the plan stays inspectable. Otherwise omitted/false applies live-applicable work and does not stop nodes. true on to_eve, only when the plan has no unsupported action: after live-safe work, stop classified requires_stop nodes only when plan_identity still matches the live classified plan; omitted or stale identity is 409 plan_stale with zero StopNode. from_eve: confirm does not authorize stop. omitted: Go bool zero = false. If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise reconcile applies live-applicable work only and does not stop nodes. explicit false: same semantic as omitted, distinct on the wire. explicit true: If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise to_eve reconcile may stop classified requires_stop nodes, re-plan, apply, restore run state. from_eve: confirm does not authorize stop. prune still requires its own confirm/yes. |
file (File) |
*string | no | getPublicProject only. topology or presentation. Omitted = topology. |
path (Path) |
*string | no | getPublicProject only. RFC 6901 JSON Pointer. Omitted or empty = whole document. Selects only; does not transform. |
filter (Filter) |
*string | no | getPublicProject only. Exact IaC key. Allowed only with path /nodes, /networks, or /links. Nodes/networks: missing key is path_not_found. Links: endpoint membership, original order, empty array if none. Not jq. |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
ExecConsoleRequest¶
Request body alias of ConsolePayload. Same wire shape.
Alias of ConsolePayload.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
manifest (Manifest) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
command (Command) |
*string | no | |
commands (Commands) |
[]string | no | Ordered commands on the joined Hub. Each command completes when the prompt returns after that command is sent. |
timeout_ms (TimeoutMs) |
*int | no | execConsole max 60000. waitConsole/runConsole max 600000. Default 10000 when omitted. |
targets (Targets) |
[]ConsoleTarget |
no | |
session_id (SessionID) |
*string | no | Optional Hub session. Omit to join or open the Hub for the node. A missing session reopens once. console_busy is not expiry. |
after_seq (AfterSeq) |
*int | no | getConsoleHistory only. Return bytes newer than this receive sequence. truncated is set when the sequence has left the ring. |
mode (Mode) |
*ConsoleWriteMode |
no | |
pattern (Pattern) |
*string | no | Go regexp for waitConsole. |
max_bytes (MaxBytes) |
*int | no | Bounded history tail for getConsoleHistory. |
steps (Steps) |
[]ConsoleRunStep |
no | |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
ExecConsoleManyRequest¶
Request body alias of ConsolePayload. Same wire shape.
Alias of ConsolePayload.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
manifest (Manifest) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
command (Command) |
*string | no | |
commands (Commands) |
[]string | no | Ordered commands on the joined Hub. Each command completes when the prompt returns after that command is sent. |
timeout_ms (TimeoutMs) |
*int | no | execConsole max 60000. waitConsole/runConsole max 600000. Default 10000 when omitted. |
targets (Targets) |
[]ConsoleTarget |
no | |
session_id (SessionID) |
*string | no | Optional Hub session. Omit to join or open the Hub for the node. A missing session reopens once. console_busy is not expiry. |
after_seq (AfterSeq) |
*int | no | getConsoleHistory only. Return bytes newer than this receive sequence. truncated is set when the sequence has left the ring. |
mode (Mode) |
*ConsoleWriteMode |
no | |
pattern (Pattern) |
*string | no | Go regexp for waitConsole. |
max_bytes (MaxBytes) |
*int | no | Bounded history tail for getConsoleHistory. |
steps (Steps) |
[]ConsoleRunStep |
no | |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
AttachConsoleRequest¶
Request body alias of ConsolePayload. Same wire shape.
Alias of ConsolePayload.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
manifest (Manifest) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
command (Command) |
*string | no | |
commands (Commands) |
[]string | no | Ordered commands on the joined Hub. Each command completes when the prompt returns after that command is sent. |
timeout_ms (TimeoutMs) |
*int | no | execConsole max 60000. waitConsole/runConsole max 600000. Default 10000 when omitted. |
targets (Targets) |
[]ConsoleTarget |
no | |
session_id (SessionID) |
*string | no | Optional Hub session. Omit to join or open the Hub for the node. A missing session reopens once. console_busy is not expiry. |
after_seq (AfterSeq) |
*int | no | getConsoleHistory only. Return bytes newer than this receive sequence. truncated is set when the sequence has left the ring. |
mode (Mode) |
*ConsoleWriteMode |
no | |
pattern (Pattern) |
*string | no | Go regexp for waitConsole. |
max_bytes (MaxBytes) |
*int | no | Bounded history tail for getConsoleHistory. |
steps (Steps) |
[]ConsoleRunStep |
no | |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
CreateConsoleSessionRequest¶
Request body alias of ConsolePayload. Same wire shape.
Alias of ConsolePayload.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
manifest (Manifest) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
command (Command) |
*string | no | |
commands (Commands) |
[]string | no | Ordered commands on the joined Hub. Each command completes when the prompt returns after that command is sent. |
timeout_ms (TimeoutMs) |
*int | no | execConsole max 60000. waitConsole/runConsole max 600000. Default 10000 when omitted. |
targets (Targets) |
[]ConsoleTarget |
no | |
session_id (SessionID) |
*string | no | Optional Hub session. Omit to join or open the Hub for the node. A missing session reopens once. console_busy is not expiry. |
after_seq (AfterSeq) |
*int | no | getConsoleHistory only. Return bytes newer than this receive sequence. truncated is set when the sequence has left the ring. |
mode (Mode) |
*ConsoleWriteMode |
no | |
pattern (Pattern) |
*string | no | Go regexp for waitConsole. |
max_bytes (MaxBytes) |
*int | no | Bounded history tail for getConsoleHistory. |
steps (Steps) |
[]ConsoleRunStep |
no | |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
ListConsoleSessionsRequest¶
Request body alias of ConsolePayload. Same wire shape.
Alias of ConsolePayload.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
manifest (Manifest) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
command (Command) |
*string | no | |
commands (Commands) |
[]string | no | Ordered commands on the joined Hub. Each command completes when the prompt returns after that command is sent. |
timeout_ms (TimeoutMs) |
*int | no | execConsole max 60000. waitConsole/runConsole max 600000. Default 10000 when omitted. |
targets (Targets) |
[]ConsoleTarget |
no | |
session_id (SessionID) |
*string | no | Optional Hub session. Omit to join or open the Hub for the node. A missing session reopens once. console_busy is not expiry. |
after_seq (AfterSeq) |
*int | no | getConsoleHistory only. Return bytes newer than this receive sequence. truncated is set when the sequence has left the ring. |
mode (Mode) |
*ConsoleWriteMode |
no | |
pattern (Pattern) |
*string | no | Go regexp for waitConsole. |
max_bytes (MaxBytes) |
*int | no | Bounded history tail for getConsoleHistory. |
steps (Steps) |
[]ConsoleRunStep |
no | |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
GetConsoleSessionRequest¶
Request body alias of ConsolePayload. Same wire shape.
Alias of ConsolePayload.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
manifest (Manifest) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
command (Command) |
*string | no | |
commands (Commands) |
[]string | no | Ordered commands on the joined Hub. Each command completes when the prompt returns after that command is sent. |
timeout_ms (TimeoutMs) |
*int | no | execConsole max 60000. waitConsole/runConsole max 600000. Default 10000 when omitted. |
targets (Targets) |
[]ConsoleTarget |
no | |
session_id (SessionID) |
*string | no | Optional Hub session. Omit to join or open the Hub for the node. A missing session reopens once. console_busy is not expiry. |
after_seq (AfterSeq) |
*int | no | getConsoleHistory only. Return bytes newer than this receive sequence. truncated is set when the sequence has left the ring. |
mode (Mode) |
*ConsoleWriteMode |
no | |
pattern (Pattern) |
*string | no | Go regexp for waitConsole. |
max_bytes (MaxBytes) |
*int | no | Bounded history tail for getConsoleHistory. |
steps (Steps) |
[]ConsoleRunStep |
no | |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
CloseConsoleSessionRequest¶
Request body alias of ConsolePayload. Same wire shape.
Alias of ConsolePayload.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
manifest (Manifest) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
command (Command) |
*string | no | |
commands (Commands) |
[]string | no | Ordered commands on the joined Hub. Each command completes when the prompt returns after that command is sent. |
timeout_ms (TimeoutMs) |
*int | no | execConsole max 60000. waitConsole/runConsole max 600000. Default 10000 when omitted. |
targets (Targets) |
[]ConsoleTarget |
no | |
session_id (SessionID) |
*string | no | Optional Hub session. Omit to join or open the Hub for the node. A missing session reopens once. console_busy is not expiry. |
after_seq (AfterSeq) |
*int | no | getConsoleHistory only. Return bytes newer than this receive sequence. truncated is set when the sequence has left the ring. |
mode (Mode) |
*ConsoleWriteMode |
no | |
pattern (Pattern) |
*string | no | Go regexp for waitConsole. |
max_bytes (MaxBytes) |
*int | no | Bounded history tail for getConsoleHistory. |
steps (Steps) |
[]ConsoleRunStep |
no | |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
GetConsoleHistoryRequest¶
Request body alias of ConsolePayload. Same wire shape.
Alias of ConsolePayload.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
manifest (Manifest) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
command (Command) |
*string | no | |
commands (Commands) |
[]string | no | Ordered commands on the joined Hub. Each command completes when the prompt returns after that command is sent. |
timeout_ms (TimeoutMs) |
*int | no | execConsole max 60000. waitConsole/runConsole max 600000. Default 10000 when omitted. |
targets (Targets) |
[]ConsoleTarget |
no | |
session_id (SessionID) |
*string | no | Optional Hub session. Omit to join or open the Hub for the node. A missing session reopens once. console_busy is not expiry. |
after_seq (AfterSeq) |
*int | no | getConsoleHistory only. Return bytes newer than this receive sequence. truncated is set when the sequence has left the ring. |
mode (Mode) |
*ConsoleWriteMode |
no | |
pattern (Pattern) |
*string | no | Go regexp for waitConsole. |
max_bytes (MaxBytes) |
*int | no | Bounded history tail for getConsoleHistory. |
steps (Steps) |
[]ConsoleRunStep |
no | |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
WaitConsoleRequest¶
Request body alias of ConsolePayload. Same wire shape.
Alias of ConsolePayload.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
manifest (Manifest) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
command (Command) |
*string | no | |
commands (Commands) |
[]string | no | Ordered commands on the joined Hub. Each command completes when the prompt returns after that command is sent. |
timeout_ms (TimeoutMs) |
*int | no | execConsole max 60000. waitConsole/runConsole max 600000. Default 10000 when omitted. |
targets (Targets) |
[]ConsoleTarget |
no | |
session_id (SessionID) |
*string | no | Optional Hub session. Omit to join or open the Hub for the node. A missing session reopens once. console_busy is not expiry. |
after_seq (AfterSeq) |
*int | no | getConsoleHistory only. Return bytes newer than this receive sequence. truncated is set when the sequence has left the ring. |
mode (Mode) |
*ConsoleWriteMode |
no | |
pattern (Pattern) |
*string | no | Go regexp for waitConsole. |
max_bytes (MaxBytes) |
*int | no | Bounded history tail for getConsoleHistory. |
steps (Steps) |
[]ConsoleRunStep |
no | |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
RunConsoleRequest¶
Request body alias of ConsolePayload. Same wire shape.
Alias of ConsolePayload.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
manifest (Manifest) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
command (Command) |
*string | no | |
commands (Commands) |
[]string | no | Ordered commands on the joined Hub. Each command completes when the prompt returns after that command is sent. |
timeout_ms (TimeoutMs) |
*int | no | execConsole max 60000. waitConsole/runConsole max 600000. Default 10000 when omitted. |
targets (Targets) |
[]ConsoleTarget |
no | |
session_id (SessionID) |
*string | no | Optional Hub session. Omit to join or open the Hub for the node. A missing session reopens once. console_busy is not expiry. |
after_seq (AfterSeq) |
*int | no | getConsoleHistory only. Return bytes newer than this receive sequence. truncated is set when the sequence has left the ring. |
mode (Mode) |
*ConsoleWriteMode |
no | |
pattern (Pattern) |
*string | no | Go regexp for waitConsole. |
max_bytes (MaxBytes) |
*int | no | Bounded history tail for getConsoleHistory. |
steps (Steps) |
[]ConsoleRunStep |
no | |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
StartOobRequest¶
Request body alias of ProjectPayload. Same wire shape.
Alias of ProjectPayload.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
source (Source) |
any | no | |
manifest (Manifest) |
*string | no | |
prune (Prune) |
*bool | no | omitted: Go bool zero = false. to_eve still deletes a node or network whose id is in project state but whose key is absent from the desired topology, and a link absent from the desired topology. Other extra live objects are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: also delete extra live objects that the project never owned |
wipe (Wipe) |
*bool | no | explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true) |
action (Action) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
nodes (Nodes) |
[]string | no | execProject and exportProjectConfig IaC node keys. Omitted uses node. Omitted node and omitted nodes means all nodes. |
configset (Configset) |
*string | no | exportProjectConfig: default, or the name of a configset that already exists on the lab. Unknown names are not created. |
id (ID) |
*int | no | |
stopmode (Stopmode) |
*int | 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 (Refresh) |
*bool | no | omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache |
replace (Replace) |
*bool | no | omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate |
plan_identity (PlanIdentity) |
*string | no | omitted: recompute the live plan. to_eve confirm=true with remaining stop-required work: omitted identity is 409 plan_stale. present: opaque token from the last plan of the same direction |
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 |
confirm (Confirm) |
*bool | no | Meaningful on reconcileProject. If any PlanAction is unsupported, to_eve performs zero EVE mutations and the plan stays inspectable. Otherwise omitted/false applies live-applicable work and does not stop nodes. true on to_eve, only when the plan has no unsupported action: after live-safe work, stop classified requires_stop nodes only when plan_identity still matches the live classified plan; omitted or stale identity is 409 plan_stale with zero StopNode. from_eve: confirm does not authorize stop. omitted: Go bool zero = false. If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise reconcile applies live-applicable work only and does not stop nodes. explicit false: same semantic as omitted, distinct on the wire. explicit true: If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise to_eve reconcile may stop classified requires_stop nodes, re-plan, apply, restore run state. from_eve: confirm does not authorize stop. prune still requires its own confirm/yes. |
file (File) |
*string | no | getPublicProject only. topology or presentation. Omitted = topology. |
path (Path) |
*string | no | getPublicProject only. RFC 6901 JSON Pointer. Omitted or empty = whole document. Selects only; does not transform. |
filter (Filter) |
*string | no | getPublicProject only. Exact IaC key. Allowed only with path /nodes, /networks, or /links. Nodes/networks: missing key is path_not_found. Links: endpoint membership, original order, empty array if none. Not jq. |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
GetOobStatusRequest¶
Request body alias of ProjectPayload. Same wire shape.
Alias of ProjectPayload.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
source (Source) |
any | no | |
manifest (Manifest) |
*string | no | |
prune (Prune) |
*bool | no | omitted: Go bool zero = false. to_eve still deletes a node or network whose id is in project state but whose key is absent from the desired topology, and a link absent from the desired topology. Other extra live objects are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: also delete extra live objects that the project never owned |
wipe (Wipe) |
*bool | no | explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true) |
action (Action) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
nodes (Nodes) |
[]string | no | execProject and exportProjectConfig IaC node keys. Omitted uses node. Omitted node and omitted nodes means all nodes. |
configset (Configset) |
*string | no | exportProjectConfig: default, or the name of a configset that already exists on the lab. Unknown names are not created. |
id (ID) |
*int | no | |
stopmode (Stopmode) |
*int | 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 (Refresh) |
*bool | no | omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache |
replace (Replace) |
*bool | no | omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate |
plan_identity (PlanIdentity) |
*string | no | omitted: recompute the live plan. to_eve confirm=true with remaining stop-required work: omitted identity is 409 plan_stale. present: opaque token from the last plan of the same direction |
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 |
confirm (Confirm) |
*bool | no | Meaningful on reconcileProject. If any PlanAction is unsupported, to_eve performs zero EVE mutations and the plan stays inspectable. Otherwise omitted/false applies live-applicable work and does not stop nodes. true on to_eve, only when the plan has no unsupported action: after live-safe work, stop classified requires_stop nodes only when plan_identity still matches the live classified plan; omitted or stale identity is 409 plan_stale with zero StopNode. from_eve: confirm does not authorize stop. omitted: Go bool zero = false. If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise reconcile applies live-applicable work only and does not stop nodes. explicit false: same semantic as omitted, distinct on the wire. explicit true: If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise to_eve reconcile may stop classified requires_stop nodes, re-plan, apply, restore run state. from_eve: confirm does not authorize stop. prune still requires its own confirm/yes. |
file (File) |
*string | no | getPublicProject only. topology or presentation. Omitted = topology. |
path (Path) |
*string | no | getPublicProject only. RFC 6901 JSON Pointer. Omitted or empty = whole document. Selects only; does not transform. |
filter (Filter) |
*string | no | getPublicProject only. Exact IaC key. Allowed only with path /nodes, /networks, or /links. Nodes/networks: missing key is path_not_found. Links: endpoint membership, original order, empty array if none. Not jq. |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
GetOobCredentialsRequest¶
Request body alias of ProjectPayload. Same wire shape.
Alias of ProjectPayload.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
source (Source) |
any | no | |
manifest (Manifest) |
*string | no | |
prune (Prune) |
*bool | no | omitted: Go bool zero = false. to_eve still deletes a node or network whose id is in project state but whose key is absent from the desired topology, and a link absent from the desired topology. Other extra live objects are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: also delete extra live objects that the project never owned |
wipe (Wipe) |
*bool | no | explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true) |
action (Action) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
nodes (Nodes) |
[]string | no | execProject and exportProjectConfig IaC node keys. Omitted uses node. Omitted node and omitted nodes means all nodes. |
configset (Configset) |
*string | no | exportProjectConfig: default, or the name of a configset that already exists on the lab. Unknown names are not created. |
id (ID) |
*int | no | |
stopmode (Stopmode) |
*int | 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 (Refresh) |
*bool | no | omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache |
replace (Replace) |
*bool | no | omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate |
plan_identity (PlanIdentity) |
*string | no | omitted: recompute the live plan. to_eve confirm=true with remaining stop-required work: omitted identity is 409 plan_stale. present: opaque token from the last plan of the same direction |
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 |
confirm (Confirm) |
*bool | no | Meaningful on reconcileProject. If any PlanAction is unsupported, to_eve performs zero EVE mutations and the plan stays inspectable. Otherwise omitted/false applies live-applicable work and does not stop nodes. true on to_eve, only when the plan has no unsupported action: after live-safe work, stop classified requires_stop nodes only when plan_identity still matches the live classified plan; omitted or stale identity is 409 plan_stale with zero StopNode. from_eve: confirm does not authorize stop. omitted: Go bool zero = false. If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise reconcile applies live-applicable work only and does not stop nodes. explicit false: same semantic as omitted, distinct on the wire. explicit true: If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise to_eve reconcile may stop classified requires_stop nodes, re-plan, apply, restore run state. from_eve: confirm does not authorize stop. prune still requires its own confirm/yes. |
file (File) |
*string | no | getPublicProject only. topology or presentation. Omitted = topology. |
path (Path) |
*string | no | getPublicProject only. RFC 6901 JSON Pointer. Omitted or empty = whole document. Selects only; does not transform. |
filter (Filter) |
*string | no | getPublicProject only. Exact IaC key. Allowed only with path /nodes, /networks, or /links. Nodes/networks: missing key is path_not_found. Links: endpoint membership, original order, empty array if none. Not jq. |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
StopOobRequest¶
Request body alias of ProjectPayload. Same wire shape.
Alias of ProjectPayload.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
source (Source) |
any | no | |
manifest (Manifest) |
*string | no | |
prune (Prune) |
*bool | no | omitted: Go bool zero = false. to_eve still deletes a node or network whose id is in project state but whose key is absent from the desired topology, and a link absent from the desired topology. Other extra live objects are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: also delete extra live objects that the project never owned |
wipe (Wipe) |
*bool | no | explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true) |
action (Action) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
nodes (Nodes) |
[]string | no | execProject and exportProjectConfig IaC node keys. Omitted uses node. Omitted node and omitted nodes means all nodes. |
configset (Configset) |
*string | no | exportProjectConfig: default, or the name of a configset that already exists on the lab. Unknown names are not created. |
id (ID) |
*int | no | |
stopmode (Stopmode) |
*int | 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 (Refresh) |
*bool | no | omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache |
replace (Replace) |
*bool | no | omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate |
plan_identity (PlanIdentity) |
*string | no | omitted: recompute the live plan. to_eve confirm=true with remaining stop-required work: omitted identity is 409 plan_stale. present: opaque token from the last plan of the same direction |
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 |
confirm (Confirm) |
*bool | no | Meaningful on reconcileProject. If any PlanAction is unsupported, to_eve performs zero EVE mutations and the plan stays inspectable. Otherwise omitted/false applies live-applicable work and does not stop nodes. true on to_eve, only when the plan has no unsupported action: after live-safe work, stop classified requires_stop nodes only when plan_identity still matches the live classified plan; omitted or stale identity is 409 plan_stale with zero StopNode. from_eve: confirm does not authorize stop. omitted: Go bool zero = false. If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise reconcile applies live-applicable work only and does not stop nodes. explicit false: same semantic as omitted, distinct on the wire. explicit true: If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise to_eve reconcile may stop classified requires_stop nodes, re-plan, apply, restore run state. from_eve: confirm does not authorize stop. prune still requires its own confirm/yes. |
file (File) |
*string | no | getPublicProject only. topology or presentation. Omitted = topology. |
path (Path) |
*string | no | getPublicProject only. RFC 6901 JSON Pointer. Omitted or empty = whole document. Selects only; does not transform. |
filter (Filter) |
*string | no | getPublicProject only. Exact IaC key. Allowed only with path /nodes, /networks, or /links. Nodes/networks: missing key is path_not_found. Links: endpoint membership, original order, empty array if none. Not jq. |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |
OpenOobRequest¶
Request body alias of ProjectPayload. Same wire shape.
Alias of ProjectPayload.
| Field | Go type | Required | Semantics |
|---|---|---|---|
lab (Lab) |
*string | no | |
yaml (YAML) |
*string | no | |
files (Files) |
map[string]string | no | |
state (State) |
any | no | |
source (Source) |
any | no | |
manifest (Manifest) |
*string | no | |
prune (Prune) |
*bool | no | omitted: Go bool zero = false. to_eve still deletes a node or network whose id is in project state but whose key is absent from the desired topology, and a link absent from the desired topology. Other extra live objects are not deleted. explicit false: same semantic as omitted, distinct on the wire. explicit true: also delete extra live objects that the project never owned |
wipe (Wipe) |
*bool | no | explicit false: destroy lab without wiping nodes. omitted on destroy: server pointer nil means wipe nodes (true) |
action (Action) |
*string | no | |
node (Node) |
*string | no | omitted: all nodes. empty string: all nodes. named: that IaC node key |
nodes (Nodes) |
[]string | no | execProject and exportProjectConfig IaC node keys. Omitted uses node. Omitted node and omitted nodes means all nodes. |
configset (Configset) |
*string | no | exportProjectConfig: default, or the name of a configset that already exists on the lab. Unknown names are not created. |
id (ID) |
*int | no | |
stopmode (Stopmode) |
*int | 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 (Refresh) |
*bool | no | omitted: Go bool zero = false; inspect may use the session cache. explicit true: bypass inspect cache |
replace (Replace) |
*bool | no | omitted: Go bool zero = false; existing managed lab returns 409 lab_exists. explicit true: stop/wipe/delete then recreate |
plan_identity (PlanIdentity) |
*string | no | omitted: recompute the live plan. to_eve confirm=true with remaining stop-required work: omitted identity is 409 plan_stale. present: opaque token from the last plan of the same direction |
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 |
confirm (Confirm) |
*bool | no | Meaningful on reconcileProject. If any PlanAction is unsupported, to_eve performs zero EVE mutations and the plan stays inspectable. Otherwise omitted/false applies live-applicable work and does not stop nodes. true on to_eve, only when the plan has no unsupported action: after live-safe work, stop classified requires_stop nodes only when plan_identity still matches the live classified plan; omitted or stale identity is 409 plan_stale with zero StopNode. from_eve: confirm does not authorize stop. omitted: Go bool zero = false. If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise reconcile applies live-applicable work only and does not stop nodes. explicit false: same semantic as omitted, distinct on the wire. explicit true: If any PlanAction is unsupported, to_eve performs zero EVE mutations. Otherwise to_eve reconcile may stop classified requires_stop nodes, re-plan, apply, restore run state. from_eve: confirm does not authorize stop. prune still requires its own confirm/yes. |
file (File) |
*string | no | getPublicProject only. topology or presentation. Omitted = topology. |
path (Path) |
*string | no | getPublicProject only. RFC 6901 JSON Pointer. Omitted or empty = whole document. Selects only; does not transform. |
filter (Filter) |
*string | no | getPublicProject only. Exact IaC key. Allowed only with path /nodes, /networks, or /links. Nodes/networks: missing key is path_not_found. Links: endpoint membership, original order, empty array if none. Not jq. |
dir (Dir) |
*string | no | Rejected when non-empty. |
out (Out) |
*string | no | Rejected when non-empty. |