Skip to content

Get A2A task status

GET
/a2a/tasks/{id}
curl --request GET \
--url https://a2a.infiniteaudience.ai/a2a/tasks/example \
--header 'Authorization: Bearer <token>'

Poll the status of a submitted A2A task. Possible statuses: submitted, working, completed, failed, cancelled. Requires ‘discovery’ scope.

id
required
string

Task with current status, messages, and result.

Media typeapplication/json

Represents an asynchronous agent task. Submit via POST /a2a/tasks and poll via GET /a2a/tasks/{id} until status reaches a terminal state.

object
id
required

Unique task identifier.

string format: uuid
status
required

Current task lifecycle state. submitted → working → completed | failed | cancelled

string
Allowed values: submitted working completed failed cancelled
result_message

The agent’s final response message. Only present when status is “completed”. Contains a parts array — each part has a type (“text” or “data”) and the corresponding content.

object
role
required

Who authored this message.

string
Allowed values: user agent
parts
required

One or more content fragments composing the message.

Array<object>
>= 1 items

A single content fragment within an A2A message.

object
type
required

Content type. “text” for plain text, “data” for structured JSON.

string
Allowed values: text data
text

The text content (present when type is “text”).

string
data

Structured JSON payload (present when type is “data”).

object
key
additional properties
any
error

Error details. Only present when status is “failed”.

object
code
string
message
string
messages
required

Full conversation history including user and agent turns.

Array<object>

A message in an A2A task conversation.

object
role
required

Who authored this message.

string
Allowed values: user agent
parts
required

One or more content fragments composing the message.

Array<object>
>= 1 items

A single content fragment within an A2A message.

object
type
required

Content type. “text” for plain text, “data” for structured JSON.

string
Allowed values: text data
text

The text content (present when type is “text”).

string
data

Structured JSON payload (present when type is “data”).

object
key
additional properties
any
metadata

Caller-supplied key/value pairs from the original task submission.

object
key
additional properties
any
created_at
required
string format: date-time
updated_at
required
string format: date-time
Examples

Task still in progress

{
"id": "d3e4f5a6-7b8c-9d0e-1f2a-3b4c5d6e7f8a",
"status": "working",
"messages": [
{
"role": "user",
"parts": [
{
"type": "text",
"text": "How many homeowners aged 25-34 are there in California?"
}
]
}
],
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-01-15T10:30:05Z"
}

Missing or invalid Bearer token. Obtain one via POST /v1/auth/token. When a token was supplied but rejected, code distinguishes TOKEN_EXPIRED (the token’s lifetime has passed — request a new one via POST /v1/auth/token and retry) from TOKEN_INVALID (malformed or revoked — re-authenticate).

Media typeapplication/json
object
error
required

Stable machine-readable error code (e.g. INVALID_STATUS_TRANSITION, BILLING_INSUFFICIENT_BALANCE). Always present.

string
message

Human-readable explanation of the error.

string
code

Alternate machine-readable code — present on some endpoints as an alias for error for backward compatibility.

string
request_id

Opaque support/debug identifier when available.

string
key
additional properties
any
Examples
{
"error": "Unauthorized: Missing or invalid Authorization header"
}

Token is valid but lacks the required scope for this endpoint. Check the endpoint description for the required scope (discovery, purchase, or account).

Media typeapplication/json
object
error
required

Stable machine-readable error code (e.g. INVALID_STATUS_TRANSITION, BILLING_INSUFFICIENT_BALANCE). Always present.

string
message

Human-readable explanation of the error.

string
code

Alternate machine-readable code — present on some endpoints as an alias for error for backward compatibility.

string
request_id

Opaque support/debug identifier when available.

string
key
additional properties
any
Examples
Examplemissing_scope
{
"error": "SCOPE_REQUIRED",
"message": "This endpoint requires the purchase scope."
}

Resource not found or not accessible to the calling org.

Media typeapplication/json
object
error
required

Stable machine-readable error code (e.g. INVALID_STATUS_TRANSITION, BILLING_INSUFFICIENT_BALANCE). Always present.

string
message

Human-readable explanation of the error.

string
code

Alternate machine-readable code — present on some endpoints as an alias for error for backward compatibility.

string
request_id

Opaque support/debug identifier when available.

string
key
additional properties
any
Examples
Examplenot_found
{
"error": "Audience not found"
}