GET

/v1/schemas/groq/chat/openai/v1/responses

kind inputactivity chathash 850ec784…extracted Sep 20, 2026version currentsource upstream spec ↗
fieldrecorded source
schemaSource linked above.

upstream-spec

Source trace
372870924527dbca12a2921eec01c3d9c8a5d7023e53f7249c8508c7601a0606
{
  "fetchedAt": 1789881684,
  "extractorVersion": "1",
  "verifiedAt": null
}

Request body

17 properties · 2 required · 16 $defs
propertytypedescriptionconstraints
model*string | enumID of the model to use. For details on which models are compatible with the Responses API, see available [models](https://console.groq.com/docs/models)
input*string | ResponseInputItem[]Text input to the model, used to generate a response.
instructionsstringInserts a system (or developer) message as the first item in the model's context.
max_output_tokensintegerAn upper bound for the number of tokens that can be generated for a response, including visible output tokens and reasoning tokens.
temperaturenumberControls randomness in the response generation. Range: 0 to 2. Lower values produce more deterministic outputs, higher values increase variety and creativity.0 ≤ n ≤ 2 · default: 1
top_pnumberNucleus sampling parameter that controls the cumulative probability cutoff. Range: 0 to 1. A value of 0.1 restricts sampling to tokens within the top 10% probability mass.0 ≤ n ≤ 1 · default: 1
toolsResponseTool[]List of tools available to the model. Currently supports function definitions only. Maximum of 128 functions.items ≤ 128
tool_choiceenum | objectControls which (if any) tool is called by the model. `none` means the model will not call any tool and instead generates a message. `auto` means the model can pick between generating a message or calling one or more tools. `required` means the model must call …
textobjectResponse format configuration. Supports plain text or structured JSON output.
reasoningobjectConfiguration for reasoning capabilities when using [models that support reasoning](https://console.groq.com/docs/reasoning).
metadataobjectCustom key-value pairs for storing additional information. Maximum of 16 pairs.
parallel_tool_callsbooleanEnable parallel execution of multiple tool calls.default: true
storebooleanResponse storage flag. Note: Currently only supports false or null values.default: false
streambooleanEnable streaming mode to receive response data as server-sent events.default: false
userstringOptional identifier for tracking end-user requests. Useful for usage monitoring and compliance.
service_tierenumSpecifies the latency tier to use for processing the request.auto | default | flex · default: "auto"
truncationenumContext truncation strategy. Supported values: `auto` or `disabled`.auto | disabled · default: "disabled"

Types

16 $defs

FunctionParametersobject

Function parameters defined as a JSON Schema object. Refer to https://json-schema.org/understanding-json-schema/ for schema documentation.

ResponseEasyInputMessageobject

A message input to the model with a role indicating instruction following hierarchy.

role*enumThe role of the message input. One of `user`, `assistant`, `system`, or `developer`.user | assistant | system | developer
content*string | ResponseInputContent[]Text input to the model.

ResponseFormatConfigurationText | JSON object | JSON schema

An object specifying the format that the model must output.

ResponseFormatJsonObjectobject

JSON object response format. An older method of generating JSON responses. Using `json_schema` is recommended for models that support it. Note that the model will not generate JSON without a system or user message instructing it to do so.

type*enumThe type of response format being defined. Always `json_object`.json_object

ResponseFormatTextobject

Default response format. Used to generate text responses.

type*enumThe type of response format being defined. Always `text`.text

ResponseFunctionCallobject

A function call generated by the model.

type*enumThe type of the function call. Always `function_call`.function_call
idstringThe unique ID of the function tool call.
call_id*stringThe unique ID of the function tool call generated by the model.
name*stringThe name of the function to call.
arguments*stringA JSON string of the arguments to pass to the function.
statusenumThe status of the item.in_progress | completed | incomplete

ResponseFunctionCallOutputobject

The output of a function tool call.

type*enumThe type of the function tool call output. Always `function_call_output`.function_call_output
idstringThe unique ID of the function tool call output.
call_id*stringThe unique ID of the function tool call generated by the model.
output*stringA JSON string of the output of the function tool call.
statusenumThe status of the item.in_progress | completed | incomplete

ResponseInputContentResponseInputTextContent

A text input to the model.

type*enumThe type of the input item. Always `input_text`.input_text
text*stringThe text input to the model.

ResponseInputItemEasy input message | Input message | Item reference | …

ResponseInputMessageobject

A message input to the model with explicit type field.

type*enumThe type of the message input. Always set to `message`.message
role*enumThe role of the message input. One of `user`, `system`, or `developer`. Note: assistant role is not supported with explicit type.user | system | developer
content*ResponseInputContent[]A list of one or many input content items.
statusenumThe status of item. Populated when items are returned via API.in_progress | completed | incomplete

ResponseInputTextContentobject

A text input to the model.

type*enumThe type of the input item. Always `input_text`.input_text
text*stringThe text input to the model.

ResponseItemReferenceobject

An internal identifier for an item to reference.

type*enumThe type of item to reference. Always `item_reference`.item_reference
id*stringThe ID of the item to reference.

ResponseNamedToolChoiceobject

Specifies a tool the model should use. Use to force the model to call a specific function.

type*enumThe type of the tool. Currently, only `function` is supported.function
function*object

ResponseToolobject

type*enumThe type of the tool. Currently, only `function` is supported.function
name*stringThe name of the function to be called. Must be a-z, A-Z, 0-9, or contain underscores and dashes, with a maximum length of 64.
descriptionstringDescribes the function's purpose. The model uses this to determine when to invoke the function.
parametersFunctionParametersFunction parameters defined as a JSON Schema object. Refer to https://json-schema.org/understanding-json-schema/ for schema documentation.
strictbooleanWhether to enable strict schema adherence when generating the function call.

ResponseToolChoiceOptionenum | object

Controls which (if any) tool is called by the model. `none` means the model will not call any tool and instead generates a message. `auto` means the model can pick between generating a message or calling one or more tools. `required` means the model must call …

TextResponseFormatJsonSchemaobject

JSON Schema response format. Used to generate structured JSON responses.

type*enumThe type of response format being defined. Always `json_schema`.json_schema
name*stringThe name of the response format. Must be a-z, A-Z, 0-9, or contain underscores and dashes, with a maximum length of 64.
descriptionstringA description of what the response format is for, used by the model to determine how to respond in the format.
schema*objectThe schema for the response format, described as a JSON Schema object.
strictbooleanWhether to enable strict schema adherence when generating the output.default: false

Validate a payload

before you spend tokens
shell
$ curl -X POST https://modelschemas.com/v1/validate \
    -d '{"provider":"groq","endpointId":"openai/v1/responses","payload":{…}}'
→ {"valid": false, "errors": [{"path": "#", "keyword": "required", …}]}