Dock Docs
API reference

Objects

The fields of the Dock, operation, Environment, Snapshot, Template, Run, Installation, organization, workspace, and Host objects as the API returns them.

Each table lists the fields of the data value a route returns. Timestamps are ISO 8601 strings. Fields marked nullable are present with the value null when unset. Shared rules are in Conventions.

Dock

Built field by field, so new columns are never exposed by default. Environment variable values and credential hashes are never returned. Returned by the Docks routes.

FieldTypeDescription
iduuidDock id.
workspaceIduuidOwning workspace.
namestring, nullableName, unique per workspace.
imagestringubuntu-24.04.
cpusintegervCPUs.
memoryMiBintegerMemory in MiB.
diskGiBintegerDisk in GiB.
runtimestringmicrovm or gvisor, chosen by the host; read-only.
persistentPathsarray of stringsPaths the runtime keeps across stop and resume.
statestringprovisioning, provisioned, cloning, ready, idle, running, archiving, archived, error, or unreachable.
ttlSecondsinteger, nullableAuto-stop timer; null means none.
environmentstringName of the Environment it started with.
fromTemplatestring, nullableTemplate it was created from.
ipstring, nullableAddress on the host.
hostIdstring, nullableHost it runs on.
billingPausedAttimestamp, nullableSet when a stop was refused and billing is paused.
setupStatusstringpending, running, done, or failed.
setupErrorstring, nullableWhy setup failed.
lastSnapshotAttimestamp, nullableWhen the latest Snapshot was taken.
stateChangedAttimestampWhen state last changed.
createdAttimestampCreation time.
updatedAttimestampLast update.

Operation

A pollable receipt for accepted work. Returned by delete routes and POST /v1/environments/:ref/upgrade (inside { "operation": ... }), and by GET /v1/operations/:id.

FieldTypeDescription
idstringOperation id, op_ followed by 20 characters.
targetTypestringdock, snapshot, template, or environment.
targetIdstringId of the thing the operation changes.
statusstringpending, processing, blocked, or completed.

Environment

Secret values are never included; names and sizes are. Returned by the Environments routes.

FieldTypeDescription
iduuidEnvironment id.
organizationIduuidOwning organization.
namestringName, unique per organization.
isDefaultbooleanWhether it is the organization default.
currentVersionintegerLatest version number.
secretsAccessstringmembers or admins.
safeForThirdPartiesbooleanPosture flag of the current version.
passGithubbooleanPosture flag of the current version.
passSecretsbooleanPosture flag of the current version.
passDockCredentialsbooleanPosture flag of the current version.
passAgentsCredentialsbooleanPosture flag of the current version.
connectionsobject{ "github": { "connected": boolean }, "gitlab": { "connected": boolean } }.
varNamesarray of stringsNames of the variables, sorted.
filesarray of objectsSecret files as { "path": string, "size": integer }.
reposarray of objectsRepos as { "id", "provider", "repositoryId", "fullName", "baseBranch" (nullable), "hasSetupScript" }.
createdAttimestampCreation time.
updatedAttimestampLast update.

Snapshot

Built field by field. The file listing, storage ids, and placement details are never returned; read files with the tree and files routes. Returned by the Snapshots routes.

FieldTypeDescription
iduuidSnapshot id.
dockIduuidDock it was taken from.
statusstringsaving, completed, or failed.
sizeBytesintegerSize of the capture.
runtimestring, nullableRuntime that captured it.
createdAttimestampCreation time.

Template

Built field by field. Storage ids and placement details are never returned. Returned by the Templates routes.

FieldTypeDescription
iduuidTemplate id.
organizationIduuidOwning organization.
namestringName, unique per organization.
sourceDockIduuid, nullableDock it was saved from.
statusstringsaving, ready, or failed. Only ready Templates can start a Dock.
sizeBytesintegerSize of the capture.
createdAttimestampCreation time.
updatedAttimestampLast update.

Run

Built field by field. Tokens, token hashes, and the run envelope are never returned. Returned by the GitHub Run routes.

FieldTypeDescription
iduuidRun id.
installationIduuidInstallation that started it.
workspaceIduuidWorkspace it runs in.
organizationIduuid, nullableOwning organization.
repostringowner/name repository.
issueNumberintegerIssue that triggered it.
dockIduuid, nullableDock it runs in.
executionTargetstringdock or fast.
statestringpending, provisioning, working, pr_opened, failed, stopped, or done.
prNumberinteger, nullablePull request number once opened.
prUrlstring, nullablePull request URL once opened.
failureReasonstring, nullableWhy it failed.
agentstringCoding agent name.
branchstring, nullableBranch the work is pushed to.
baseBranchstringBranch the pull request targets.
promptVersionstring, nullableVersion of the prompt used.
testCommandstring, nullableCommand used to check the work.
completionStatusstring, nullableOutcome the Run reported.
eventsarray of objectsTimeline entries { "t": string, "at": string }.
createdAttimestampCreation time.
updatedAttimestampLast update.

Installation

A GitHub App installation linked to a workspace. Returned by the GitHub installation routes.

FieldTypeDescription
iduuidInstallation id in Dock.
installationIdintegerGitHub's installation id.
workspaceIduuidWorkspace the installation provisions and bills in.
createdByuuidUser who linked it.
reposarray of stringsowner/name repositories the App may act on.
agentstringCoding agent name, default opencode.
testCommandstring, nullableCommand Runs use to check their work.
createdAttimestampCreation time.
updatedAttimestampLast update.

Organization

Returned by the Organizations routes.

FieldTypeDescription
iduuidOrganization id.
namestringDisplay name.
slugstringUnique slug.
seatsintegerSeat count.
createdAttimestampCreation time.
updatedAttimestampLast update.
rolestringYour role: owner, admin, or member. Present on create, list, and read, not on update.

Workspace

FieldTypeDescription
iduuidWorkspace id.
organizationIduuidOwning organization.
namestringDisplay name.
slugstringSlug, unique per organization.
createdAttimestampCreation time.
updatedAttimestampLast update.

Host summary

Built field by field. The fleet credential is never returned. Returned by GET /v1/hosts.

FieldTypeDescription
idstringHost id.
addressstringLast address the host connected from; informational.
cpuFamilystringCPU family.
kernelstringKernel the host runs.
runtimestringmicrovm or gvisor.
kernelReleasestring, nullableKernel release.
vcpuTotalintegerTotal vCPUs.
memTotalBytesintegerTotal memory in bytes.
diskTotalBytesintegerTotal disk in bytes.
maxDocksintegerMost Docks the host accepts.
usedDocksintegerDocks placed on it.
runningDocksintegerRuntimes the host last reported running.
statestringonline or offline.
lastHeartbeatAttimestamp, nullableLast heartbeat.
createdAttimestampRegistration time.

Host detail

Everything in the Host summary, plus the workload on the host. Returned by GET /v1/hosts/:id.

FieldTypeDescription
docksarray of objectsNon-archived Docks placed on it, as { "id", "name", "state", "cpus", "memoryMiB", "diskGiB", "runtime", "ip", "stateChangedAt", "workspaceName", "organizationId", "organizationName" }.
runsarray of objectsEphemeral Run runtimes, as { "dockId", "state", "kind" }; kind may be absent.
orphansarray of objectsReported runtimes that match no Dock; the reconciler fences these. Same shape as runs.

On this page