ApiKey | id, name, keyPrefix, keyLastFour, createdAt, lastUsedAt | Metadata only; not the raw secret. |
ApiKeysResponse | ok, type, apiKeys | API key metadata response. Raw secrets are not returned. |
Box | id, name, state, type, vcpu, memoryGB, billingMultiplier, url, ip, createdAt, updatedAt, archiveAfter, desktopAvailable, desktopUrl, snapshotAvailable, snapshotCompletedAt | desktopUrl can contain a token; redact it. |
BoxActionResponse | ok, type, id, status, box | Returned by lifecycle actions such as stop, resume, fork, and interrupt. |
BoxInfoResponse | ok, type, box | Returned by get() and update(). |
BoxEvent | id, type, timestamp, taskId, data, plus additional fields | Extensible event object returned inside EventsResponse.events. Branch on each event type. |
BoxListResponse | ok, type, boxes, pageInfo | Returned by boxes(). |
CommandRequest | command, cwd, timeoutSeconds | Bounded command execution request. |
CommandResponse | ok, type, success, exitCode, signal, stdout, stderr, stdoutTruncated, stderrTruncated, timedOut, cwd, startedAt, finishedAt | Returned by command() and execCommand(). |
CompletionEvent | id, type, timestamp, taskId, data | Event subtype for task_notification and compaction_complete. |
CreateBoxRequest | type, ttlSeconds | type is default or large (see Machine size). Seconds before auto-stop; null disables auto-stop. |
CreateBoxResponse | ok, type, status, ttlSeconds, box | Returned immediately after creation starts. |
DesktopResponse | ok, type, success, desktopUrl, ip, mode, provisioning, message | If provisioning is true, poll desktop() again. |
ErrorEnvelope | ok, type, status, code, message, requestId, error | Non-2xx response body. Include requestId in support logs. |
ErrorEnvelopeError | code, message, status, details | Structured error details. |
ErrorEvent | id, type, timestamp, taskId, data | Event subtype for usage_limit and shield. |
EventsResponse | ok, type, id, events, pageInfo | events contains Box event objects. |
FileReadResponse | ok, type, success, path, encoding, size, content | Returned by readFile() and readText(). |
FileWriteRequest | path, content, encoding | Write a UTF-8 string or base64 payload. |
FileWriteResponse | ok, type, success, path, encoding, size | Returned by writeFile() and writeText(). |
GitCheckpointEvent | id, type, timestamp, taskId, data | Event subtype for git_checkpoint. |
GitCheckpointEventData | commitSha, commitMessage, commitUrl, branch, filesChanged, additions, deletions, pushed | Git checkpoint event payload. |
LimitsFields | accessTier, blockedReason, currentLimits, standardLimits, trialLimits, upgradeEffects, canStart, checkoutRequired, startBlockedReason, contactMessage, activeBoxes, activeStates, maxActiveBoxes, maxCreationRequestsPerMinute, maxCreationRequestsPerDay, accountPlan, plan, planName, serviceAccount, unlimited, hasPaymentHistory, _package, subscriptionQuotaSeconds, subscriptionRemainingSeconds, packBalanceSeconds, creditPurchasedSeconds, creditUsedSeconds, liveUsageSeconds, creditSecondsPerDollar, billingStatus, subscriptionStatus, subscriptionCancelAtPeriodEnd, hasSubscription, subscriptionTrialEndsAt, subscriptionCurrentPeriodEnd, creditBalanceSeconds | Shared limit and billing-access fields. Use canStart and startBlockedReason before creating Boxes. serviceAccount/unlimited identify admin-created automation accounts. |
LimitsFieldsCurrentLimits | activeBoxes, creationRatePerMinute, creationRequestsPerDay | Numeric quota limits. |
LimitsResponse | ok, type, plus all LimitsFields fields | Returned by limits(). |
MeResponse | ok, type, user | Authenticated account response. |
MeResponseAllOfUser | login, email | User identity fields. |
PageInfo | nextCursor, hasMore, limit | Optional pagination metadata on list responses. |
PromptEvent | id, type, timestamp, taskId, data | Event subtype for prompt. |
PromptEventData | prompt, status, isReverted | Prompt event payload. |
PromptRequest | provider, model, reasoningEffort, prompt | provider is codex or claude-code. Omit model to use the saved default. |
PromptResponse | ok, type, id, promptId, promptRun, status, provider, model, reasoningEffort | Returned after work is queued. |
PromptRun | id, promptId, boxId, status, done, createdAt, model, reasoningEffort | First-class prompt run state. |
PromptRunResponse | ok, type, id, promptRun | Returned by promptRunStatus(). |
ResponseEvent | id, type, timestamp, taskId, data | Event subtype for response. |
ResponseEventData | content, model, tools, isStreaming | Response event payload. |
RepoSelectionRequest | repositoryId, baseBranch | repositoryId is a databaseId from repos(). |
RepoSelectionResponse | ok, type, success, environmentId, selectedRepositories | Returned by selectRepo(). |
ReposResponse | ok, type, installations, environmentId, selectedRepositories, pageInfo | Repository inventory and current selections. |
Repository | id, databaseId, name, fullName, _private, permissions, pushedAt | Use databaseId when selecting a repository. |
RepositoryInstallation | type, accountLogin, accountAvatarUrl, repositories | Group of repositories available through one installation/account. |
SecretFile | path, contents | Treat contents as sensitive. |
SecretsResponse | ok, type, success, environmentId, envContents, secretFiles, pushed | Current secret setup. Treat envContents and secretFiles as sensitive. |
SecretsUpdateRequest | envContents, secretFiles | Full replacement request for secrets. |
SelectedRepository | id, databaseId, name, fullName, _private, permissions, pushedAt, baseBranch, setupRoutineId, setupScript, setupBlocking, preCommitHooks | Repository selected for future Boxes. |
SelectedRepositoryAllOfPreCommitHooks | id, script, blocking | Pre-commit hook configured for a selected repository. |
SshKeyRequest | key | Public SSH key in OpenSSH format. |
SshKeyResponse | ok, type, success, machineIp, sshUser | Returned after adding an SSH key. |
SuccessBase | ok, type | Base success-envelope fields. |
UnknownEvent | type, plus additional properties | Forward-compatible fallback for event types the SDK does not model yet. |
UpdateBoxRequest | name, ttlSeconds | Send only fields you want to change. ttlSeconds: null disables auto-stop. |