Claude Platform Docs

工作

获取工作项
client.beta.environments.work.retrieve(workID, params, options?): BetaSelfHostedWork
GET/v1/environments/{environment_id}/work/{work_id}

注意:这些端点由 SDK 和 CLI 中提供的预构建环境工作器自动调用,用于编排使用自托管沙箱环境的会话。此处列出仅供参考;您无需直接调用它们。

轮询工作
client.beta.environments.work.poll(environmentID, params?, options?): BetaSelfHostedWork | null
GET/v1/environments/{environment_id}/work/poll

注意:这些端点由 SDK 和 CLI 中提供的预构建环境工作器自动调用,用于编排使用自托管沙箱环境的会话。此处列出仅供参考;您无需直接调用它们。

确认工作
client.beta.environments.work.ack(workID, params, options?): BetaSelfHostedWork
POST/v1/environments/{environment_id}/work/{work_id}/ack

注意:这些端点由 SDK 和 CLI 中提供的预构建环境工作器自动调用,用于编排使用自托管沙箱环境的会话。此处列出仅供参考;您无需直接调用它们。

记录心跳
client.beta.environments.work.heartbeat(workID, params, options?): BetaSelfHostedWorkHeartbeatResponse
POST/v1/environments/{environment_id}/work/{work_id}/heartbeat

注意:这些端点由 SDK 和 CLI 中提供的预构建环境工作器自动调用,用于编排使用自托管沙箱环境的会话。此处列出仅供参考;您无需直接调用它们。

停止工作
client.beta.environments.work.stop(workID, params, options?): BetaSelfHostedWork
POST/v1/environments/{environment_id}/work/{work_id}/stop

注意:这些端点由 SDK 和 CLI 中提供的预构建环境工作器自动调用,用于编排使用自托管沙箱环境的会话。此处列出仅供参考;您无需直接调用它们。

列出工作项
client.beta.environments.work.list(environmentID, params?, options?): PageCursor<BetaSelfHostedWork>
GET/v1/environments/{environment_id}/work

注意:这些端点由 SDK 和 CLI 中提供的预构建环境工作器自动调用,用于编排使用自托管沙箱环境的会话。此处列出仅供参考;您无需直接调用它们。

更新工作项
client.beta.environments.work.update(workID, params, options?): BetaSelfHostedWork
POST/v1/environments/{environment_id}/work/{work_id}

注意:这些端点由 SDK 和 CLI 中提供的预构建环境工作器自动调用,用于编排使用自托管沙箱环境的会话。此处列出仅供参考;您无需直接调用它们。

获取队列统计信息
client.beta.environments.work.stats(environmentID, params?, options?): BetaSelfHostedWorkQueueStats
GET/v1/environments/{environment_id}/work/stats

获取某个环境的工作队列统计信息。

Models
interface BetaSelfHostedWork { type: "work"; id; acknowledged_at; /* 10 more */ }

Work resource representing a unit of work in a self-hosted environment.

Work items are queued when sessions are created or when long-dormant sessions receive new messages. The environment worker polls for work to execute in a self-hosted sandbox.

interface BetaSelfHostedWorkHeartbeatResponse { type: "work_heartbeat"; last_heartbeat; lease_extended; /* 2 more */ }

Response after recording a heartbeat for a work item.

type: "work_heartbeat"

The type of response

defaultwork_heartbeat
last_heartbeat: string

RFC 3339 timestamp of the actual heartbeat from DB

lease_extended: boolean

Whether the heartbeat succeeded in extending the lease

state: "queued" | "starting" | "active" | 2 more

Current state of the work item (active/stopping/stopped)

One of the following:
"queued"
"starting"
"active"
"stopping"
"stopped"
ttl_seconds: number

Effective TTL applied to the lease

interface BetaSelfHostedWorkListResponse { data; next_page }

Response when listing work items with cursor-based pagination.

interface BetaSelfHostedWorkQueueStats { type: "work_queue_stats"; depth; oldest_queued_at; /* 2 more */ }

Statistics about the work queue for an environment.

Uses Redis Stream consumer group metrics for O(1) queries.

type: "work_queue_stats"

The type of object

defaultwork_queue_stats
depth: number

Number of work items waiting to be picked up (lag from consumer group)

oldest_queued_at: string | null

RFC 3339 timestamp of oldest item in the work stream (includes both queued and pending items), null if stream empty

pending: number

Number of work items being processed (polled but not acknowledged)

default0
workers_polling: number | null

Number of workers that have polled for work in the last 30 seconds. Requires worker_id to be sent with poll requests.

interface BetaSelfHostedWorkStopRequest { force }

Request to stop a work item.

force?: boolean

If true, immediately stop work without graceful shutdown

defaultfalse
interface BetaSelfHostedWorkUpdateRequest { metadata }

Request to update work item metadata.

metadata: Record<string, string | null>

Metadata patch. Set a key to a string to upsert it, or to null to delete it. Omit the field to preserve existing metadata.

interface BetaSessionWorkData { type: "session"; id }

Work data for session work items.

This resource type is used when work represents a session that needs to be executed in a self-hosted environment.

type: "session"

Type of work data

id: string

Session identifier (e.g., 'session_...')