# OpenResponsesNonStreamingResponse Complete non-streaming response from the Responses API ## Fields | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `id` | *str* | :heavy_check_mark: | N/A | | | `object` | [components.Object](../components/object.md) | :heavy_check_mark: | N/A | | | `created_at` | *float* | :heavy_check_mark: | N/A | | | `model` | *str* | :heavy_check_mark: | N/A | | | `status` | [components.OpenAIResponsesResponseStatus](../components/openairesponsesresponsestatus.md) | :heavy_check_mark: | N/A | | | `completed_at` | *Nullable[float]* | :heavy_check_mark: | N/A | | | `output` | List[[components.ResponsesOutputItem](../components/responsesoutputitem.md)] | :heavy_check_mark: | N/A | | | `user` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | | | `output_text` | *Optional[str]* | :heavy_minus_sign: | N/A | | | `prompt_cache_key` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | | | `safety_identifier` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | | | `error` | [Nullable[components.ResponsesErrorField]](../components/responseserrorfield.md) | :heavy_check_mark: | Error information returned from the API | {
"code": "rate_limit_exceeded",
"message": "Rate limit exceeded. Please try again later."
} | | `incomplete_details` | [Nullable[components.OpenAIResponsesIncompleteDetails]](../components/openairesponsesincompletedetails.md) | :heavy_check_mark: | N/A | | | `usage` | [OptionalNullable[components.OpenResponsesUsage]](../components/openresponsesusage.md) | :heavy_minus_sign: | Token usage information for the response | {
"input_tokens": 10,
"output_tokens": 25,
"total_tokens": 35,
"input_tokens_details": {
"cached_tokens": 0
},
"output_tokens_details": {
"reasoning_tokens": 0
},
"cost": 0.0012,
"cost_details": {
"upstream_inference_cost": null,
"upstream_inference_input_cost": 0.0008,
"upstream_inference_output_cost": 0.0004
}
} | | `max_tool_calls` | *OptionalNullable[float]* | :heavy_minus_sign: | N/A | | | `top_logprobs` | *Optional[float]* | :heavy_minus_sign: | N/A | | | `max_output_tokens` | *OptionalNullable[float]* | :heavy_minus_sign: | N/A | | | `temperature` | *Nullable[float]* | :heavy_check_mark: | N/A | | | `top_p` | *Nullable[float]* | :heavy_check_mark: | N/A | | | `presence_penalty` | *Nullable[float]* | :heavy_check_mark: | N/A | | | `frequency_penalty` | *Nullable[float]* | :heavy_check_mark: | N/A | | | `instructions` | [Nullable[components.OpenAIResponsesInputUnion]](../components/openairesponsesinputunion.md) | :heavy_check_mark: | 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. | {
"user_id": "123",
"session_id": "abc-def-ghi"
} | | `tools` | List[[components.OpenResponsesNonStreamingResponseToolUnion](../components/openresponsesnonstreamingresponsetoolunion.md)] | :heavy_check_mark: | N/A | | | `tool_choice` | [components.OpenAIResponsesToolChoiceUnion](../components/openairesponsestoolchoiceunion.md) | :heavy_check_mark: | N/A | | | `parallel_tool_calls` | *bool* | :heavy_check_mark: | N/A | | | `prompt` | [OptionalNullable[components.OpenAIResponsesPrompt]](../components/openairesponsesprompt.md) | :heavy_minus_sign: | N/A | | | `background` | *OptionalNullable[bool]* | :heavy_minus_sign: | N/A | | | `previous_response_id` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | | | `reasoning` | [OptionalNullable[components.OpenAIResponsesReasoningConfig]](../components/openairesponsesreasoningconfig.md) | :heavy_minus_sign: | N/A | | | `service_tier` | [OptionalNullable[components.OpenAIResponsesServiceTier]](../components/openairesponsesservicetier.md) | :heavy_minus_sign: | N/A | | | `store` | *Optional[bool]* | :heavy_minus_sign: | N/A | | | `truncation` | [OptionalNullable[components.OpenAIResponsesTruncation]](../components/openairesponsestruncation.md) | :heavy_minus_sign: | N/A | | | `text` | [Optional[components.ResponseTextConfig]](../components/responsetextconfig.md) | :heavy_minus_sign: | Text output configuration including format and verbosity | {
"format": {
"type": "text"
},
"verbosity": "medium"
} |