Skip to content

<!-- CODE GENERATED BY cmd/harbor-gen-protocol-docs. DO NOT EDIT. -->

Protocol methods

The 83 canonical Harbor Protocol methods, generated from the single-source registry (internal/protocol/methods) joined against the wire transports' route patterns (internal/protocol/transports/{control,stream}). The classification column is computed from the same Is*Method predicates the transports branch on.

Every method is identity-mandatory: the request carries a verified JWT bearer (asymmetric algorithms only — RFC §5.5) and resolves a complete (tenant, user, session) triple, with the session chosen per-request via X-Harbor-Session (see Auth & identity). The Auth column lists what a method demands beyond that baseline. Request/response shapes link into types.md; error envelopes are catalogued in errors.md.

Task control

MethodRouteClassificationRequestResponseAuth (beyond identity)
approvePOST /v1/control/approvetask control — steeringControlRequestControlResponsemutating; steering scope ≥ owner_user (RFC §6.3); cross-tenant steering requires admin
cancelPOST /v1/control/canceltask control — steeringControlRequestControlResponsemutating; steering scope ≥ owner_user (RFC §6.3); cross-tenant steering requires admin
inject_contextPOST /v1/control/inject_contexttask control — steeringControlRequestControlResponsemutating; steering scope ≥ session_user (RFC §6.3); cross-tenant steering requires admin
pausePOST /v1/control/pausetask control — steeringControlRequestControlResponsemutating; steering scope ≥ owner_user (RFC §6.3); cross-tenant steering requires admin
prioritizePOST /v1/control/prioritizetask control — steeringControlRequestControlResponsemutating; steering scope ≥ admin (RFC §6.3); cross-tenant steering requires admin
redirectPOST /v1/control/redirecttask control — steeringControlRequestControlResponsemutating; steering scope ≥ owner_user (RFC §6.3); cross-tenant steering requires admin
rejectPOST /v1/control/rejecttask control — steeringControlRequestControlResponsemutating; steering scope ≥ owner_user (RFC §6.3); cross-tenant steering requires admin
resumePOST /v1/control/resumetask control — steeringControlRequestControlResponsemutating; steering scope ≥ owner_user (RFC §6.3); cross-tenant steering requires admin
startPOST /v1/control/starttask control — spawnStartRequestStartResponsemutating
user_messagePOST /v1/control/user_messagetask control — steeringControlRequestControlResponsemutating; steering scope ≥ session_user (RFC §6.3); cross-tenant steering requires admin

Streaming events

MethodRouteClassificationRequestResponseAuth (beyond identity)
events.aggregatePOST /v1/events/aggregatestreaming eventsEventAggregateRequestEventAggregateResponseread-only; cross-tenant fan-in requires admin or console:fleet
events.subscribeGET /v1/eventsstreaming eventsno JSON body — the filter travels as query/header values (X-Harbor-Run, X-Harbor-Event-Type, ?admin=1, Last-Event-ID)SSE stream (text/event-stream); see events.mdread-only; cross-tenant fan-in requires admin or console:fleet

Tasks

MethodRouteClassificationRequestResponseAuth (beyond identity)
tasks.getPOST /v1/tasks/gettasks (read-only)TaskGetRequestTaskDetailread-only
tasks.listPOST /v1/tasks/listtasks (read-only)TaskListRequestTaskListResponseread-only; cross-tenant fan-in requires the verified admin scope claim (console:fleet is not consulted)

Sessions

MethodRouteClassificationRequestResponseAuth (beyond identity)
sessions.inspectPOST /v1/sessions/inspectsessions (read-only)SessionsInspectRequestSessionsInspectResponseread-only
sessions.listPOST /v1/sessions/listsessions (read-only)SessionsListRequestSessionsListResponseread-only; cross-tenant fan-in requires admin or console:fleet

Pause snapshot

MethodRouteClassificationRequestResponseAuth (beyond identity)
pause.listPOST /v1/pause/listpause snapshot (read-only)PauseListRequestPauseListResponseread-only; cross-tenant fan-in requires the verified admin scope claim (console:fleet is not consulted)
MethodRouteClassificationRequestResponseAuth (beyond identity)
search.artifactsPOST /v1/control/search.artifactssearchSearchRequestSearchResponseread-only; cross-tenant fan-in requires admin or console:fleet
search.eventsPOST /v1/control/search.eventssearchSearchRequestSearchResponseread-only; cross-tenant fan-in requires admin or console:fleet
search.queryPOST /v1/control/search.querysearchSearchRequestSearchResponseread-only; cross-tenant fan-in requires admin or console:fleet
search.sessionsPOST /v1/control/search.sessionssearchSearchRequestSearchResponseread-only; cross-tenant fan-in requires admin or console:fleet
search.tasksPOST /v1/control/search.taskssearchSearchRequestSearchResponseread-only; cross-tenant fan-in requires admin or console:fleet

Posture

MethodRouteClassificationRequestResponseAuth (beyond identity)
governance.posturePOST /v1/control/governance.postureposture (read-only)RuntimeInfoRequestGovernancePostureResponseread-only; cross-tenant fan-in requires admin or console:fleet
llm.posturePOST /v1/control/llm.postureposture (read-only)RuntimeInfoRequestLLMPostureResponseread-only; cross-tenant fan-in requires admin or console:fleet
metrics.snapshotPOST /v1/control/metrics.snapshotposture (read-only)RuntimeInfoRequestMetricsSnapshotread-only; cross-tenant fan-in requires admin or console:fleet
runtime.countersPOST /v1/control/runtime.countersposture (read-only)RuntimeInfoRequestRuntimeCountersread-only; cross-tenant fan-in requires admin or console:fleet
runtime.driversPOST /v1/control/runtime.driversposture (read-only)RuntimeInfoRequestRuntimeDriversread-only; cross-tenant fan-in requires admin or console:fleet
runtime.healthPOST /v1/control/runtime.healthposture (read-only)RuntimeInfoRequestRuntimeHealthread-only; cross-tenant fan-in requires admin or console:fleet
runtime.infoPOST /v1/control/runtime.infoposture (read-only)RuntimeInfoRequestRuntimeInforead-only; cross-tenant fan-in requires admin or console:fleet

Topology

MethodRouteClassificationRequestResponseAuth (beyond identity)
topology.snapshotPOST /v1/control/topology.snapshottopology (read-only)TopologySnapshotRequestTopologyProjectionread-only; cross-tenant fan-in requires the verified admin scope claim (console:fleet is not consulted)

Artifacts

MethodRouteClassificationRequestResponseAuth (beyond identity)
artifacts.deletePOST /v1/control/artifacts.deleteartifactsArtifactsDeleteRequestArtifactsDeleteResponsemutating; requires the verified admin scope claim
artifacts.get_refPOST /v1/control/artifacts.get_refartifactsArtifactsGetRefRequestArtifactsGetRefResponseread-only
artifacts.listPOST /v1/control/artifacts.listartifactsArtifactsListRequestArtifactsListResponseread-only; cross-tenant fan-in requires admin or console:fleet
artifacts.putPOST /v1/control/artifacts.putartifactsArtifactsPutRequestArtifactsPutResponsemutating

Memory

MethodRouteClassificationRequestResponseAuth (beyond identity)
memory.deletePOST /v1/memory/deletememoryMemoryDeleteRequestMemoryDeleteResponsemutating; requires the verified admin scope claim
memory.getPOST /v1/memory/getmemoryMemoryGetRequestMemoryGetResponseread-only
memory.healthPOST /v1/memory/healthmemoryMemoryHealthRequestMemoryHealthResponseread-only
memory.listPOST /v1/memory/listmemoryMemoryListRequestMemoryListResponseread-only; cross-tenant fan-in requires admin or console:fleet
memory.putPOST /v1/memory/putmemoryMemoryPutRequestMemoryPutResponsemutating; requires the verified admin scope claim
memory.strategy_tracePOST /v1/memory/strategy_tracememoryMemoryStrategyTraceRequestMemoryStrategyTraceResponseread-only

Tools

MethodRouteClassificationRequestResponseAuth (beyond identity)
tools.content_statsPOST /v1/tools/content_statstoolsToolContentStatsRequestToolContentStatsread-only
tools.describePOST /v1/tools/describetoolsToolDescribeRequestToolManifestread-only
tools.getPOST /v1/tools/gettoolsToolGetRequestToolread-only
tools.listPOST /v1/tools/listtoolsToolListRequestToolListResponseread-only
tools.metricsPOST /v1/tools/metricstoolsToolMetricsRequestToolMetricsread-only
tools.revoke_oauthPOST /v1/tools/revoke_oauthtoolsToolRevokeOAuthRequestToolRevokeOAuthResponsemutating; requires the verified admin scope claim
tools.set_approval_policyPOST /v1/tools/set_approval_policytoolsToolSetApprovalPolicyRequestToolSetApprovalPolicyResponsemutating; requires the verified admin scope claim

Flows

MethodRouteClassificationRequestResponseAuth (beyond identity)
flows.describePOST /v1/flows/describeflowsFlowDescribeRequestFlowDescriptionread-only; tenant-scoped results; the verified admin scope claim widens run visibility across tenants
flows.listPOST /v1/flows/listflowsFlowListRequestFlowListResponseread-only; cross-tenant fan-in requires the verified admin scope claim (console:fleet is not consulted)
flows.metricsPOST /v1/flows/metricsflowsFlowMetricsRequestFlowMetricsread-only; tenant-scoped results; the verified admin scope claim widens run visibility across tenants
flows.runPOST /v1/flows/runflowsFlowRunRequestFlowRunResponsemutating; requires the verified admin scope claim
flows.runs.describePOST /v1/flows/runs/describeflowsFlowRunDescribeRequestFlowRunDescriptionread-only; tenant-scoped results; the verified admin scope claim widens run visibility across tenants
flows.runs.listPOST /v1/flows/runs/listflowsFlowRunsListRequestFlowRunsListResponseread-only; cross-tenant fan-in requires the verified admin scope claim (console:fleet is not consulted)

Agents

MethodRouteClassificationRequestResponseAuth (beyond identity)
agents.deregisterPOST /v1/agents/deregisteragents — fleet controlAgentControlRequestAgentControlResponsemutating; requires the verified admin scope claim
agents.drainPOST /v1/agents/drainagents — fleet controlAgentControlRequestAgentControlResponsemutating; requires the verified admin scope claim
agents.force_stopPOST /v1/agents/force_stopagents — fleet controlAgentControlRequestAgentControlResponsemutating; requires the verified admin scope claim
agents.getPOST /v1/agents/getagents (read-only)AgentGetRequestAgentGetResponseread-only
agents.governancePOST /v1/agents/governanceagents (read-only)AgentGovernanceRequestAgentGovernanceResponseread-only
agents.listPOST /v1/agents/listagents (read-only)AgentListRequestAgentListResponseread-only
agents.memoryPOST /v1/agents/memoryagents (read-only)AgentMemoryRequestAgentMemoryResponseread-only
agents.metricsPOST /v1/agents/metricsagents (read-only)AgentMetricsRequestAgentMetricsResponseread-only
agents.pausePOST /v1/agents/pauseagents — fleet controlAgentControlRequestAgentControlResponsemutating; requires the verified admin scope claim
agents.permissionsPOST /v1/agents/permissionsagents (read-only)AgentPermissionsRequestAgentPermissionsResponseread-only
agents.restartPOST /v1/agents/restartagents — fleet controlAgentControlRequestAgentControlResponsemutating; requires the verified admin scope claim
agents.skillsPOST /v1/agents/skillsagents (read-only)AgentSkillsRequestAgentSkillsResponseread-only
agents.toolsPOST /v1/agents/toolsagents (read-only)AgentToolsRequestAgentToolsResponseread-only

MCP servers

MethodRouteClassificationRequestResponseAuth (beyond identity)
mcp.servers.bindings.listPOST /v1/control/mcp.servers.bindings.listmcp serversMCPServerBindingsListRequestMCPServerBindingsListResponseread-only
mcp.servers.getPOST /v1/control/mcp.servers.getmcp serversMCPServerGetRequestMCPServerGetResponseread-only
mcp.servers.healthPOST /v1/control/mcp.servers.healthmcp serversMCPServerHealthRequestMCPServerHealthResponseread-only
mcp.servers.listPOST /v1/control/mcp.servers.listmcp serversMCPServersListRequestMCPServersListResponseread-only
mcp.servers.policyPOST /v1/control/mcp.servers.policymcp serversMCPServerPolicyRequestMCPServerPolicyResponseread-only
mcp.servers.probePOST /v1/control/mcp.servers.probemcp serversMCPServerProbeRequestMCPServerProbeResponsemutating
mcp.servers.promptsPOST /v1/control/mcp.servers.promptsmcp serversMCPServerPromptsRequestMCPServerPromptsResponseread-only
mcp.servers.refresh_bindingPOST /v1/control/mcp.servers.refresh_bindingmcp serversMCPServerRefreshBindingRequestMCPServerRefreshBindingResponsemutating; requires the verified admin scope claim
mcp.servers.refresh_discoveryPOST /v1/control/mcp.servers.refresh_discoverymcp serversMCPServerRefreshDiscoveryRequestMCPServerRefreshDiscoveryResponsemutating
mcp.servers.resourcesPOST /v1/control/mcp.servers.resourcesmcp serversMCPServerResourcesRequestMCPServerResourcesResponseread-only
mcp.servers.revoke_bindingPOST /v1/control/mcp.servers.revoke_bindingmcp serversMCPServerRevokeBindingRequestMCPServerRevokeBindingResponsemutating; requires the verified admin scope claim
mcp.servers.set_raw_html_trustPOST /v1/control/mcp.servers.set_raw_html_trustmcp serversMCPServerSetRawHTMLTrustRequestMCPServerSetRawHTMLTrustResponsemutating; requires the verified admin scope claim

MCP apps

MethodRouteClassificationRequestResponseAuth (beyond identity)
mcp.apps.call_toolPOST /v1/control/mcp.apps.call_toolmcp appsMCPAppCallToolRequestMCPAppCallToolResponsemutating
mcp.apps.tool_contextPOST /v1/control/mcp.apps.tool_contextmcp appsToolContextRequestToolContextResponseread-only
mcp.servers.read_resourcePOST /v1/control/mcp.servers.read_resourcemcp appsReadMCPResourceRequestReadMCPResourceResponseread-only

Runs

MethodRouteClassificationRequestResponseAuth (beyond identity)
runs.set_overridesPOST /v1/runs/set_overridesrunsRunSetOverridesRequestRunSetOverridesResponsemutating

Auth

MethodRouteClassificationRequestResponseAuth (beyond identity)
auth.rotate_tokenPOST /v1/auth/rotate_tokenauthAuthRotateTokenRequestAuthRotateTokenResponsemutating; requires the verified admin scope claim

Apache-2.0 licensed — see LICENSE.