pub struct LlmInferenceHttpRequestStartRequest {
pub agent_id: Option<String>,
pub agent_invocation_id: Option<String>,
pub headers: HashMap<String, Vec<String>>,
pub interaction_type: Option<String>,
pub method: String,
pub parent_agent_id: Option<String>,
pub request_id: RequestId,
pub session_id: Option<SessionId>,
pub transport: Option<LlmInferenceHttpRequestStartTransport>,
pub url: String,
}Expand description
The head of an outbound model-layer HTTP request.
Fields§
§agent_id: Option<String>Stable identity of the agent trajectory that issued this request. Present when the request originates from an agent turn; absent for requests outside any agent context. This is the same identity used by lifecycle and bridged session events and remains constant across turns and retries.
agent_invocation_id: Option<String>Identity of the agent invocation (one agentic loop) that issued this request. It remains fixed across physical retries within the invocation and is distinct from the stable trajectory agentId. A caller-supplied invocation id always takes precedence (this covers auxiliary calls that have no model call id). Otherwise, first-party CAPI requests fall back to the runtime’s agent task id — the same value the runtime emits as the X-Agent-Task-Id header — while custom-provider requests fall back to the model call id.
headers: HashMap<String, Vec<String>>§interaction_type: Option<String>Coarse classification of the interaction that produced this request. Open string for forward-compatibility; known values include conversation-agent, conversation-subagent, conversation-sampling, conversation-background, conversation-compaction, and conversation-user. Absent when the runtime did not classify the request. Comes from the runtime’s per-request agent context independently of transport; on the CAPI transport the runtime derives the upstream X-Interaction-Type header from this same context.
method: StringHTTP method, e.g. GET, POST.
parent_agent_id: Option<String>Stable identity of the immediate parent trajectory. Present for child trajectories such as subagents and conversation-sampling requests; absent for root-agent and non-agent requests.
request_id: RequestIdOpaque runtime-minted id, unique per in-flight request. The SDK uses this to correlate httpRequestChunk frames and to address its httpResponseStart / httpResponseChunk replies back to the runtime.
session_id: Option<SessionId>Id of the runtime session that triggered this request, when one is in scope. Absent for requests issued outside any session (e.g. startup model-catalog or capability resolution). This is a payload field — not a dispatch key — because the client-global API is registered process-wide rather than per session.
transport: Option<LlmInferenceHttpRequestStartTransport>Transport the runtime would otherwise use for this request. http (the default when absent) covers plain HTTP and SSE responses; websocket indicates a full-duplex message channel where each body chunk maps to one WebSocket message and the binary flag distinguishes text from binary frames. The SDK consumer uses this to decide whether to service the request with an HTTP client or a WebSocket client. It is the one piece of request metadata the consumer cannot reliably infer from the URL or headers alone.
url: StringAbsolute request URL.
Trait Implementations§
Source§impl Clone for LlmInferenceHttpRequestStartRequest
impl Clone for LlmInferenceHttpRequestStartRequest
Source§fn clone(&self) -> LlmInferenceHttpRequestStartRequest
fn clone(&self) -> LlmInferenceHttpRequestStartRequest
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more