--- title: "OpenResponsesResult" --- Complete non-streaming response from the Responses API ## Fields | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `background` | *OptionalNullable[bool]* | :heavy_minus_sign: | N/A | | | `completed_at` | *Nullable[int]* | :heavy_check_mark: | N/A | | | `created_at` | *int* | :heavy_check_mark: | N/A | | | `error` | [Nullable[components.ResponsesErrorField]](../components/responseserrorfield.mdx) | :heavy_check_mark: | Error information returned from the API | \{
"code": "rate_limit_exceeded",
"message": "Rate limit exceeded. Please try again later."
} | | `frequency_penalty` | *Nullable[float]* | :heavy_check_mark: | N/A | | | `id` | *str* | :heavy_check_mark: | N/A | | | `incomplete_details` | [Nullable[components.IncompleteDetails]](../components/incompletedetails.mdx) | :heavy_check_mark: | N/A | \{
"reason": "max_output_tokens"
} | | `instructions` | [Nullable[components.BaseInputsUnion]](../components/baseinputsunion.mdx) | :heavy_check_mark: | N/A | [
\{
"content": "What is the weather today?",
"role": "user"
}
] | | `max_output_tokens` | *OptionalNullable[int]* | :heavy_minus_sign: | N/A | | | `max_tool_calls` | *OptionalNullable[int]* | :heavy_minus_sign: | N/A | | | `metadata` | Dict[str, *str*] | :heavy_check_mark: | Metadata key-value pairs for the request. Keys must be ≤64 characters and cannot contain brackets. Values must be ≤512 characters. Maximum 16 pairs allowed. | \{
"session_id": "abc-def-ghi",
"user_id": "123"
} | | `model` | *str* | :heavy_check_mark: | N/A | | | `object` | [components.OpenResponsesResultObject](../components/openresponsesresultobject.mdx) | :heavy_check_mark: | N/A | | | `output` | List[[components.OutputItems](../components/outputitems.mdx)] | :heavy_check_mark: | N/A | | | `output_text` | *Optional[str]* | :heavy_minus_sign: | N/A | | | `parallel_tool_calls` | *bool* | :heavy_check_mark: | N/A | | | `presence_penalty` | *Nullable[float]* | :heavy_check_mark: | N/A | | | `previous_response_id` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | | | `prompt` | [OptionalNullable[components.StoredPromptTemplate]](../components/storedprompttemplate.mdx) | :heavy_minus_sign: | N/A | \{
"id": "prompt-abc123",
"variables": \{
"name": "John"
}
} | | `prompt_cache_key` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | | | `reasoning` | [OptionalNullable[components.BaseReasoningConfig]](../components/basereasoningconfig.mdx) | :heavy_minus_sign: | N/A | \{
"effort": "medium",
"summary": "auto"
} | | `safety_identifier` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | | | `service_tier` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | | | `status` | [components.OpenAIResponsesResponseStatus](../components/openairesponsesresponsestatus.mdx) | :heavy_check_mark: | N/A | completed | | `store` | *Optional[bool]* | :heavy_minus_sign: | N/A | | | `temperature` | *Nullable[float]* | :heavy_check_mark: | N/A | | | `text` | [Optional[components.TextExtendedConfig]](../components/textextendedconfig.mdx) | :heavy_minus_sign: | Text output configuration including format and verbosity | \{
"format": \{
"type": "text"
}
} | | `tool_choice` | [components.OpenAIResponsesToolChoiceUnion](../components/openairesponsestoolchoiceunion.mdx) | :heavy_check_mark: | N/A | auto | | `tools` | List[[components.OpenResponsesResultToolUnion](../components/openresponsesresulttoolunion.mdx)] | :heavy_check_mark: | N/A | | | `top_logprobs` | *Optional[int]* | :heavy_minus_sign: | N/A | | | `top_p` | *Nullable[float]* | :heavy_check_mark: | N/A | | | `truncation` | [OptionalNullable[components.Truncation]](../components/truncation.mdx) | :heavy_minus_sign: | N/A | auto | | `usage` | [OptionalNullable[components.Usage]](../components/usage.mdx) | :heavy_minus_sign: | Token usage information for the response | \{
"cost": 0.0012,
"cost_details": \{
"upstream_inference_cost": null,
"upstream_inference_input_cost": 0.0008,
"upstream_inference_output_cost": 0.0004
},
"input_tokens": 10,
"input_tokens_details": \{
"cached_tokens": 0
},
"output_tokens": 25,
"output_tokens_details": \{
"reasoning_tokens": 0
},
"total_tokens": 35
} | | `user` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | | | `error_type` | [Optional[components.APIErrorType]](../components/apierrortype.mdx) | :heavy_minus_sign: | Canonical OpenRouter error type, stable across all API formats | rate_limit_exceeded | | `openrouter_metadata` | [Optional[components.OpenRouterMetadata]](../components/openroutermetadata.mdx) | :heavy_minus_sign: | N/A | \{
"attempt": 1,
"endpoints": \{
"available": [
\{
"model": "openai/gpt-4o",
"provider": "OpenAI",
"selected": true
}
],
"total": 1
},
"is_byok": false,
"region": "iad",
"requested": "openai/gpt-4o",
"strategy": "direct",
"summary": "available=1, selected=OpenAI"
} |