class StructuredAgentResponse extends AgentResponse implements Arrayable, ArrayAccess, Jsonable, JsonSerializable

Traits

Properties

Response|null $raw

The raw HTTP response, if available for the provider.

from  HasRawResponse
Message> $messages from  TextResponse
ToolCall> $toolCalls from  TextResponse
ToolResult> $toolResults from  TextResponse
Step> $steps from  TextResponse
PendingApproval> $pendingApprovals from  TextResponse
string $reasoning from  TextResponse
string $invocationId from  AgentResponse
string|null $conversationId from  AgentResponse
object|null $conversationUser from  AgentResponse
string|null $userMessageId from  AgentResponse
string|null $assistantMessageId from  AgentResponse
array $structured from  ProvidesStructuredResponse

Methods

withRawResponse(Response|null $response)

Set the raw HTTP response.

array
__serialize()

Prepare the instance for serialization, discarding the unserializable raw HTTP response.

__construct(string $invocationId, array $structured, string $text, TextUsage $usage, Meta $meta)

Create a structured agent response.

withMessages(Collection $messages)

Provide the message context for the response.

withToolCallsAndResults(Collection $toolCalls, Collection $toolResults)

Provide the tool calls and results for the message.

withReasoning(string $reasoning)

Provide the reasoning emitted across every step of the response.

withSteps(Collection $steps)

Provide the steps taken to generate the response.

withPendingApprovals(Collection $pendingApprovals)

Mark the response as waiting for tool approval.

bool
hasPendingApprovals()

Determine whether the response has tool calls pending approval.

string
__toString()

Get the string representation of the object.

static AgentResponse
fakeWithReasoning(string $reasoning, string $text = '')

Create a fake response that reasoned before answering.

static AgentResponse
fakeWithPendingApprovals(array|Collection $pendingApprovals)

Create a fake response that is waiting for approval.

withinConversation(string $conversationId, object|null $conversationUser = null)

Set the conversation UUID and participant for this response.

withStoredMessages(string|null $userMessageId, string|null $assistantMessageId)

Set the conversation message rows this turn wrote.

then(callable $callback)

Execute a callback with this response.

bool
offsetExists(mixed $offset)

Determine if an item exists at an offset.

mixed
offsetGet(mixed $offset)

Get an item at a given offset.

void
offsetSet(mixed $offset, mixed $value)

Set the item at a given offset.

void
offsetUnset(mixed $offset)

Unset the item at a given offset.

array
toArray()

Get the instance as an array.

string
toJson(int $options = 0)

Convert the object to its JSON representation.

array
jsonSerialize()

Get the JSON serializable representation of the instance.

Details

in HasRawResponse at line 19
HasRawResponse withRawResponse(Response|null $response)

Set the raw HTTP response.

Parameters

Response|null $response

Return Value

HasRawResponse

in HasRawResponse at line 29
array __serialize()

Prepare the instance for serialization, discarding the unserializable raw HTTP response.

Return Value

array

at line 24
__construct(string $invocationId, array $structured, string $text, TextUsage $usage, Meta $meta)

Create a structured agent response.

Parameters

string $invocationId
array $structured
string $text
TextUsage $usage
Meta $meta

in TextResponse at line 58
TextResponse withMessages(Collection $messages)

Provide the message context for the response.

Parameters

Collection $messages

Return Value

TextResponse

in TextResponse at line 85
TextResponse withToolCallsAndResults(Collection $toolCalls, Collection $toolResults)

Provide the tool calls and results for the message.

Parameters

Collection $toolCalls
Collection $toolResults

Return Value

TextResponse

in TextResponse at line 100
TextResponse withReasoning(string $reasoning)

Provide the reasoning emitted across every step of the response.

Parameters

string $reasoning

Return Value

TextResponse

in TextResponse at line 112
TextResponse withSteps(Collection $steps)

Provide the steps taken to generate the response.

Parameters

Collection $steps

Return Value

TextResponse

in TextResponse at line 124
TextResponse withPendingApprovals(Collection $pendingApprovals)

Mark the response as waiting for tool approval.

Parameters

Collection $pendingApprovals

Return Value

TextResponse

in TextResponse at line 134
bool hasPendingApprovals()

Determine whether the response has tool calls pending approval.

Return Value

bool

at line 62
string __toString()

Get the string representation of the object.

Return Value

string

in AgentResponse at line 37
static AgentResponse fakeWithReasoning(string $reasoning, string $text = '')

Create a fake response that reasoned before answering.

Parameters

string $reasoning
string $text

Return Value

AgentResponse

in AgentResponse at line 49
static AgentResponse fakeWithPendingApprovals(array|Collection $pendingApprovals)

Create a fake response that is waiting for approval.

Parameters

array|Collection $pendingApprovals

Return Value

AgentResponse

in AgentResponse at line 58
AgentResponse withinConversation(string $conversationId, object|null $conversationUser = null)

Set the conversation UUID and participant for this response.

Parameters

string $conversationId
object|null $conversationUser

Return Value

AgentResponse

in AgentResponse at line 69
AgentResponse withStoredMessages(string|null $userMessageId, string|null $assistantMessageId)

Set the conversation message rows this turn wrote.

Parameters

string|null $userMessageId
string|null $assistantMessageId

Return Value

AgentResponse

in AgentResponse at line 80
AgentResponse then(callable $callback)

Execute a callback with this response.

Parameters

callable $callback

Return Value

AgentResponse

bool offsetExists(mixed $offset)

Determine if an item exists at an offset.

Parameters

mixed $offset

Return Value

bool

mixed offsetGet(mixed $offset)

Get an item at a given offset.

Parameters

mixed $offset

Return Value

mixed

void offsetSet(mixed $offset, mixed $value)

Set the item at a given offset.

Parameters

mixed $offset
mixed $value

Return Value

void

void offsetUnset(mixed $offset)

Unset the item at a given offset.

Parameters

mixed $offset

Return Value

void

at line 36
array toArray()

Get the instance as an array.

Return Value

array

at line 46
string toJson(int $options = 0)

Convert the object to its JSON representation.

Parameters

int $options

Return Value

string

Exceptions

JsonException

at line 54
array jsonSerialize()

Get the JSON serializable representation of the instance.

Return Value

array