A multi-agent system has an orchestrator that must detect when all subagents in a parallel execution group have completed and consolidate their results. The orchestrator submits 5 parallel tool calls in one assistant turn. What is the correct API pattern for receiving and acknowledging all 5 tool results before proceeding?
Select an answer to reveal the explanation.
Short Explanation and Infographic
Here's the deal — b is correct because the Anthropic API requires that all tool results for a set of parallel tool calls be returned in a single user message before the next assistant response is requested. The user message includes one tool_result content block per tool_use block from the prior assistant message, each matching by tool_use_id.
Full explanation below image
Full Explanation
B is correct because the Anthropic API requires that all tool results for a set of parallel tool calls be returned in a single user message before the next assistant response is requested. The user message includes one tool_result content block per tool_use block from the prior assistant message, each matching by tool_use_id. The model then generates its next response with access to all 5 results simultaneously. A is wrong because submitting 5 separate API calls with individual tool results would create 5 separate conversation branches rather than resuming the single conversation thread; the multi-turn protocol requires all results in one user message. C is wrong because the Batch API is for high-volume independent requests, not for managing tool result returns in a single agent conversation; it operates at a different level of abstraction. D is wrong because the API does not support placeholder tool results or asynchronous partial result submission; all tool_use blocks from the prior assistant turn must be resolved in the next user message.