Input required (TASK_STATE_INPUT_REQUIRED)
The interrupted A2A task state an agent sets when it needs more information from the client before it can continue the task.
TASK_STATE_INPUT_REQUIRED is the task state an A2A agent sets when it cannot continue a task until the client supplies more information. The proto classes it as an interrupted state: the task is paused and can still continue.
How it works. The agent moves the task to this state and attaches a status message that says what it needs. A blocking Send Message call returns at this point, as it would for a terminal state (specification section 3.2.2). The client answers with a new message that carries the same taskId. It may include the contextId too, but the agent must reject the message if the two do not match (section 3.4.3). The task then resumes and can ask again, finish, or fail.
Illustrative, following the pattern in section 6.3. The agent’s response:
{
"task": {
"id": "task-7c1e",
"contextId": "ctx-42b9",
"status": {
"state": "TASK_STATE_INPUT_REQUIRED",
"message": {
"messageId": "msg-a1",
"taskId": "task-7c1e",
"contextId": "ctx-42b9",
"role": "ROLE_AGENT",
"parts": [{"text": "Which delivery date do you want: 2 October or 3 October?"}]
}
}
}
}
The client’s follow-up message:
{
"message": {
"messageId": "msg-u2",
"taskId": "task-7c1e",
"role": "ROLE_USER",
"parts": [{"data": {"deliveryDate": "2026-10-02"}, "mediaType": "application/json"}]
}
}
When agents use it. Typical cases are a missing required field, a choice only the user can make, or an ambiguous reference to an earlier artifact, which the Life of a Task guide names as a reason to ask for clarification. In v0.3 the same state was the string input-required. Its sibling interrupted state, TASK_STATE_AUTH_REQUIRED, covers missing authorization instead of missing information.
Sources
- A2A protocol definition (a2a.proto): TaskState, Message (accessed )
- A2A Protocol Specification, section 3.2.2: SendMessageConfiguration (execution mode) (accessed )
- A2A Protocol Specification, section 3.4: Multi-Turn Interactions (accessed )
- A2A Protocol Specification, section 6.3: Multi-Turn Interaction example (accessed )
- A2A documentation: Life of a Task (accessed )