Get a tool call
One tool call, with the result the tool returned. The only single-call endpoint that hydrates a result body.
result sits at the top level
Not under data, where arguments and callable live. The response schema is named ObjectiveToolCallWithResult, and that name is the whole distinction from the list.
includeInfo is needed. The result hydrates on every fetch, which is why the list leaves it out: paging a long objective stays cheap, and you pay for a body only when a user expands one.
result.content is the same block list a bare tool submits: each block’s type reads text, image, or audio, with the payload under the matching key. Media comes back as a signed URL on the way out, even though it goes in as base64.
Three ways to reach a result body
It resolves built-in tool names
ThetoolCalled event ships cadenyaProvidedTool.name empty. Here it is populated:
resolvedSecrets is the secret audit trail
When a tool’s headers reference ${NAME} secrets, resolvedSecrets records which ones the call used and which scope each came from, never the value:
key is the reference name (not name), and source is the scope that won under the strict precedence, objective over tool set over workspace:
RESOLVED_SECRET_SOURCE_OBJECTIVE, and one that fell through to the shared credential reads RESOLVED_SECRET_SOURCE_WORKSPACE. This is how you confirm the right scope won without ever seeing the secret.
Scoping is strict
The tool call must belong to the objective in the path. A valid ID under the wrong objective is a404, not someone else’s data:
external_id: resolution does not apply to tool calls. They carry no external ID, so pass the toolcall_... value.
Poll for a settled status
Approve and deny resolve asynchronously, and their response reports the pre-decision state. This endpoint is where the settled one shows up.Related
List tool calls
Approve a tool call
Set tool call content
result.content comes from.Stream objective events
toolCallId and no body.Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
"workspace_01HXKD2E5NQM3T9AYWCF133E3Q"
The ID of the objective. Supports "external_id:" prefix for external IDs.
"obj_01HXKD2E5NQM3T9AYWCFQAZGFV"
The ID of the tool call to retrieve
"toolcall_01HXKD2E5NQM3T9AYWCFTANFGV"
Response
OK
ObjectiveToolCallWithResult is an ObjectiveToolCall plus the content the tool returned. Returned by GetObjectiveToolCall.
Metadata for ephemeral operations and activities (e.g., objectives, executions, runs)
Current status of the tool call
TOOL_CALL_STATUS_UNSPECIFIED, TOOL_CALL_STATUS_AUTO_APPROVED, TOOL_CALL_STATUS_WAITING_FOR_APPROVAL, TOOL_CALL_STATUS_APPROVED, TOOL_CALL_STATUS_DENIED TOOL_CALL_EXECUTION_STATUS_UNSPECIFIED, TOOL_CALL_EXECUTION_STATUS_PENDING, TOOL_CALL_EXECUTION_STATUS_RUNNING, TOOL_CALL_EXECUTION_STATUS_COMPLETED, TOOL_CALL_EXECUTION_STATUS_ERRORED, TOOL_CALL_EXECUTION_STATUS_WAITING_FOR_CONTENT The content returned by the tool. Only set once execution_status is TOOL_CALL_EXECUTION_STATUS_COMPLETED.
List of resolved secrets used by the tool call