Replicas Agentic Access
Replicas exposes 99 API operations that an AI agent could call, of which 57 are state-changing ‘acting’ operations. This is a recommended x-agentic-access execution contract — the scope, audience, consequence tier, short-lived token constraints, and escalation each action should carry before it is handed to an autonomous agent.
By consequence: 42 read, 48 write, 4 physical, and 5 safety-critical.
5 operations are classed safety-critical and should require human-in-the-loop approval at runtime.
Contracts are classified heuristically from the provider’s OpenAPI and refresh on every APIs.io network build; audience is bound per deployment. The model follows Curity’s Access Intelligence (apidays Munich 2026). Browse every provider’s agent contracts at agentic-access.apis.io.
By consequence
Highest-consequence actions
The physical and safety-critical operations an agent could invoke — the ones that most warrant scoped tokens, tight TTLs, and escalation. Full per-operation contracts are in the source below.
| Method | Path | Consequence | Human-in-loop |
|---|---|---|---|
| POST | /v1/environments/{environmentId}/skills | safety-critical | required |
| POST | /v1/environments/{environmentId}/skills-registries | safety-critical | required |
| DELETE | /v1/environments/{environmentId}/skills-registries/{skillsRegistryId} | safety-critical | required |
| DELETE | /v1/environments/{environmentId}/skills/{id} | safety-critical | required |
| PUT | /v1/environments/{environmentId}/warm-pools | safety-critical | required |
| PATCH | /v1/replica/{id}/chats/{chatId}/queue/reorder | physical | conditional |
| POST | /v1/replica/{id}/messages | physical | conditional |
| POST | /v1/workspaces/{workspaceId}/chats/{chatId}/messages | physical | conditional |
| POST | /v1/workspaces/{workspaceId}/messages/deferred | physical | conditional |
Source
Agentic Access
generated: '2026-07-20'
method: generated
source: openapi/replicas-openapi-original.json
description: Recommended x-agentic-access execution contracts, classified heuristically from
the OpenAPI. A governance starting point for exposing this API to AI agents — review and bind
audience per deployment. See research/curity/agentic-governance/.
summary:
operations: 99
by_action_class:
connected: 42
acting: 57
by_consequence:
read: 42
write: 48
safety-critical: 5
physical: 4
human_in_the_loop_required: 5
operations:
- path: /v1/opencode-go/credentials
method: get
operationId: getOpenCodeGoOrganizationCredentials
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/opencode-go/credentials
method: post
operationId: setOpenCodeGoOrganizationCredentials
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/opencode-go/credentials
method: delete
operationId: deleteOpenCodeGoOrganizationCredentials
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/opencode-go/user/credentials
method: get
operationId: getOpenCodeGoUserCredentials
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/opencode-go/user/credentials
method: post
operationId: setOpenCodeGoUserCredentials
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/opencode-go/user/credentials
method: delete
operationId: deleteOpenCodeGoUserCredentials
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/desktop/download/macos/{arch}
method: get
operationId: downloadMacDesktopApp
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/desktop/update/macos/{arch}/{version}
method: get
operationId: getMacDesktopUpdate
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/analytics/overview
method: get
operationId: getAnalyticsOverview
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/environments
method: get
operationId: listEnvironments
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/environments
method: post
operationId: createEnvironment
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/environments/{id}
method: get
operationId: getEnvironment
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/environments/{id}
method: patch
operationId: updateEnvironment
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/environments/{id}
method: delete
operationId: deleteEnvironment
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/environments/{environmentId}/variables
method: get
operationId: listEnvironmentVariables
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/environments/{environmentId}/variables
method: post
operationId: createEnvironmentVariable
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/environments/{environmentId}/variables/{id}
method: patch
operationId: updateEnvironmentVariable
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/environments/{environmentId}/variables/{id}
method: delete
operationId: deleteEnvironmentVariable
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/environments/{environmentId}/files
method: get
operationId: listEnvironmentFiles
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/environments/{environmentId}/files
method: post
operationId: createEnvironmentFile
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/environments/{environmentId}/files/{id}
method: patch
operationId: updateEnvironmentFile
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/environments/{environmentId}/files/{id}
method: delete
operationId: deleteEnvironmentFile
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/environments/{environmentId}/skills
method: get
operationId: listEnvironmentSkills
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/environments/{environmentId}/skills
method: post
operationId: createEnvironmentSkill
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /v1/environments/{environmentId}/skills/{id}
method: delete
operationId: deleteEnvironmentSkill
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /v1/environments/{environmentId}/skills-registries
method: get
operationId: listEnvironmentSkillsRegistries
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/environments/{environmentId}/skills-registries
method: post
operationId: createEnvironmentSkillsRegistry
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /v1/environments/{environmentId}/skills-registries/{skillsRegistryId}
method: delete
operationId: deleteEnvironmentSkillsRegistry
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /v1/environments/{environmentId}/repo-skills
method: get
operationId: listRepoSkills
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/environments/{environmentId}/mcps
method: get
operationId: listEnvironmentMcps
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/environments/{environmentId}/mcps
method: post
operationId: createEnvironmentMcp
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/environments/{environmentId}/mcps/{id}
method: patch
operationId: updateEnvironmentMcp
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/environments/{environmentId}/mcps/{id}
method: delete
operationId: deleteEnvironmentMcp
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/environments/{environmentId}/warm-hooks
method: get
operationId: getEnvironmentWarmHooks
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/environments/{environmentId}/warm-hooks/save
method: post
operationId: saveEnvironmentWarmHook
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/environments/{environmentId}/warm-hooks/save-test
method: post
operationId: saveAndTestEnvironmentWarmHook
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/environments/{environmentId}/warm-hooks/test
method: post
operationId: testEnvironmentWarmHook
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/environments/{environmentId}/start-hooks
method: get
operationId: getEnvironmentStartHooks
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/environments/{environmentId}/start-hooks/save
method: post
operationId: saveEnvironmentStartHook
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/environments/{environmentId}/start-hooks/test
method: post
operationId: testEnvironmentStartHook
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/environments/{environmentId}/start-hooks/test/stream
method: post
operationId: streamTestEnvironmentStartHook
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/environments/{environmentId}/warm-pools
method: put
operationId: upsertEnvironmentWarmPool
x-agentic-access:
action-class: acting
consequence: safety-critical
subject: required
audience: null
token:
max-ttl: 120
exchange: true
purpose-required: true
proof-of-possession: true
escalation:
human-in-the-loop: required
audit: required
- path: /v1/warm-pools/{configId}/workspaces
method: get
operationId: listWarmPoolWorkspaces
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/warm-pool-workspaces/{workspaceId}/stream
method: get
operationId: streamWarmPoolWorkspace
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/environment-skills/search
method: get
operationId: searchEnvironmentSkills
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/replica/repositories
method: get
operationId: listRepositories
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/replica/repository-sets
method: get
operationId: listRepositorySets
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/replica
method: post
operationId: createReplica
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/replica
method: get
operationId: listReplicas
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/replica/{id}
method: get
operationId: getReplica
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/replica/{id}
method: delete
operationId: deleteReplica
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/replica/{id}/messages
method: post
operationId: sendReplicaMessage
x-agentic-access:
action-class: acting
consequence: physical
subject: required
audience: null
token:
max-ttl: 300
exchange: true
purpose-required: true
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/replica/{id}/chats
method: get
operationId: listReplicaChats
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/replica/{id}/chats
method: post
operationId: createReplicaChat
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/replica/{id}/chats/{chatId}
method: delete
operationId: deleteReplicaChat
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/replica/{id}/chats/{chatId}/slash-commands
method: get
operationId: listReplicaSlashCommands
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/replica/{id}/chats/{chatId}/queue
method: get
operationId: getReplicaChatQueue
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/replica/{id}/chats/{chatId}/queue
method: delete
operationId: clearReplicaChatQueue
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/replica/{id}/chats/{chatId}/queue/{messageId}
method: delete
operationId: removeReplicaChatQueueMessage
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/replica/{id}/chats/{chatId}/queue/reorder
method: patch
operationId: reorderReplicaChatQueue
x-agentic-access:
action-class: acting
consequence: physical
subject: required
audience: null
token:
max-ttl: 300
exchange: true
purpose-required: true
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/replica/{id}/history
method: get
operationId: readReplicaHistory
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/replica/{id}/hooks
method: get
operationId: getReplicaHooks
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/replica/{id}/canvas
method: get
operationId: listReplicaCanvasItems
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/replica/{id}/canvas/{filename}
method: get
operationId: getReplicaCanvasItem
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/replica/{id}/events
method: get
operationId: streamReplicaEvents
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/automations
method: get
operationId: listAutomations
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/automations
method: post
operationId: createAutomation
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/automations/{id}
method: get
operationId: getAutomation
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/automations/{id}
method: patch
operationId: updateAutomation
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/automations/{id}
method: delete
operationId: deleteAutomation
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/automations/{id}/trigger
method: post
operationId: triggerAutomation
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/automations/{id}/executions
method: get
operationId: listAutomationExecutions
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/automations/webhook/{token}
method: post
operationId: fireCustomWebhookAutomation
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/gdrive/search-console/sites
method: get
operationId: listSearchConsoleSites
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/gdrive/search-console/site
method: get
operationId: getSearchConsoleSite
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/gdrive/search-console/search-analytics/query
method: post
operationId: querySearchConsoleAnalytics
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/gdrive/search-console/sitemaps
method: get
operationId: listSearchConsoleSitemaps
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/gdrive/search-console/sitemap
method: get
operationId: getSearchConsoleSitemap
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/gdrive/search-console/url-inspection
method: post
operationId: inspectSearchConsoleUrl
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/slack/threads/attach
method: post
operationId: attachSlackThread
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/previews/{port}
method: delete
operationId: deleteAgentPreview
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/workspaces/{workspaceId}/chats
method: get
operationId: listWorkspaceChats
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/workspaces/{workspaceId}/chats
method: post
operationId: createWorkspaceChat
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/workspaces/{workspaceId}/chats/{chatId}/messages
method: post
operationId: sendWorkspaceChatMessage
x-agentic-access:
action-class: acting
consequence: physical
subject: required
audience: null
token:
max-ttl: 300
exchange: true
purpose-required: true
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/workspaces/{workspaceId}/messages/deferred
method: post
operationId: sendDeferredWorkspaceMessage
x-agentic-access:
action-class: acting
consequence: physical
subject: required
audience: null
token:
max-ttl: 300
exchange: true
purpose-required: true
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/workspaces/{workspaceId}/archive
method: post
operationId: archiveWorkspace
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/workspaces/{workspaceId}/sleep
method: post
operationId: sleepWorkspace
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/workspaces/{workspaceId}/terminal/sessions
method: get
operationId: listWorkspaceTerminalSessions
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/workspaces/{workspaceId}/terminal/sessions
method: post
operationId: createWorkspaceTerminalSession
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/workspaces/{workspaceId}/terminal/sessions/{sessionId}/input
method: post
operationId: writeWorkspaceTerminalSession
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/workspaces/{workspaceId}/terminal/sessions/{sessionId}/resize
method: post
operationId: resizeWorkspaceTerminalSession
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/workspaces/{workspaceId}/terminal/sessions/{sessionId}
method: delete
operationId: deleteWorkspaceTerminalSession
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/workspaces/{workspaceId}/terminal/sessions/{sessionId}/stream
method: get
operationId: streamWorkspaceTerminalSession
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/workspaces/{workspaceId}/previews/{port}
method: delete
operationId: deleteWorkspacePreview
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/user/profile
method: get
operationId: getUserProfile
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/user/profile
method: put
operationId: updateUserProfile
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/user/api-keys
method: post
operationId: createPersonalApiKey
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required
- path: /v1/user/api-keys
method: get
operationId: listPersonalApiKeys
x-agentic-access:
action-class: connected
consequence: read
subject: optional
token:
max-ttl: 3600
audit: none
- path: /v1/user/api-keys/{apiKeyId}
method: delete
operationId: deletePersonalApiKey
x-agentic-access:
action-class: acting
consequence: write
subject: required
audience: null
token:
max-ttl: 900
escalation:
human-in-the-loop: conditional
triggers:
- abnormal
- high-value
audit: required