{"command":{"effect":"write","timeoutSeconds":120,"inputSchema":{"type":"object","description":"Kicks off a new run for a given evaluation, specifying the data source, and what model configuration to use to test. The datasource will be validated against the schema specified in the config of the evaluation.\n","properties":{"path":{"type":"object","properties":{"eval_id":{"type":"string","description":"The ID of the evaluation to create a run for."}},"required":["eval_id"],"additionalProperties":false},"body":{"$ref":"#/definitions/CreateEvalRunRequest"}},"required":["path","body"],"additionalProperties":false,"definitions":{"CreateEvalRunRequest":{"type":"object","title":"CreateEvalRunRequest","properties":{"name":{"type":"string","description":"The name of the run."},"metadata":{"$ref":"#/definitions/Metadata"},"data_source":{"type":"object","description":"Details about the run's data source.","oneOf":[{"$ref":"#/definitions/CreateEvalJsonlRunDataSource"},{"$ref":"#/definitions/CreateEvalCompletionsRunDataSource"},{"$ref":"#/definitions/CreateEvalResponsesRunDataSource"}]}},"required":["data_source"]},"Metadata":{"anyOf":[{"type":"object","description":"Set of 16 key-value pairs that can be attached to an object. This can be\nuseful for storing additional information about the object in a structured\nformat, and querying for objects via API or the dashboard.\n\nKeys are strings with a maximum length of 64 characters. Values are strings\nwith a maximum length of 512 characters.\n","additionalProperties":{"type":"string"}},{"type":"null"}]},"CreateEvalJsonlRunDataSource":{"type":"object","title":"JsonlRunDataSource","description":"A JsonlRunDataSource object with that specifies a JSONL file that matches the eval \n","properties":{"type":{"type":"string","enum":["jsonl"],"default":"jsonl","description":"The type of data source. Always `jsonl`."},"source":{"description":"Determines what populates the `item` namespace in the data source.","oneOf":[{"$ref":"#/definitions/EvalJsonlFileContentSource"},{"$ref":"#/definitions/EvalJsonlFileIdSource"}]}},"required":["type","source"]},"CreateEvalCompletionsRunDataSource":{"type":"object","title":"CompletionsRunDataSource","description":"A CompletionsRunDataSource object describing a model sampling configuration.\n","properties":{"type":{"type":"string","enum":["completions"],"default":"completions","description":"The type of run data source. Always `completions`."},"input_messages":{"description":"Used when sampling from a model. Dictates the structure of the messages passed into the model. Can either be a reference to a prebuilt trajectory (ie, `item.input_trajectory`), or a template with variable references to the `item` namespace.","oneOf":[{"type":"object","title":"TemplateInputMessages","properties":{"type":{"type":"string","enum":["template"],"description":"The type of input messages. Always `template`."},"template":{"type":"array","description":"A list of chat messages forming the prompt or context. May include variable references to the `item` namespace, ie {{item.name}}.","items":{"oneOf":[{"$ref":"#/definitions/EasyInputMessage"},{"$ref":"#/definitions/EvalItem"}]}}},"required":["type","template"]},{"type":"object","title":"ItemReferenceInputMessages","properties":{"type":{"type":"string","enum":["item_reference"],"description":"The type of input messages. Always `item_reference`."},"item_reference":{"type":"string","description":"A reference to a variable in the `item` namespace. Ie, \"item.input_trajectory\""}},"required":["type","item_reference"]}]},"sampling_params":{"type":"object","properties":{"reasoning_effort":{"$ref":"#/definitions/ReasoningEffort"},"temperature":{"type":"number","description":"A higher temperature increases randomness in the outputs.","default":1},"max_completion_tokens":{"type":"integer","description":"The maximum number of tokens in the generated output."},"top_p":{"type":"number","description":"An alternative to temperature for nucleus sampling; 1.0 includes all tokens.","default":1},"seed":{"type":"integer","description":"A seed value to initialize the randomness, during sampling.","default":42},"response_format":{"description":"An object specifying the format that the model must output.\n\nSetting to `{ \"type\": \"json_schema\", \"json_schema\": {...} }` enables\nStructured Outputs which ensures the model will match your supplied JSON\nschema. Learn more in the [Structured Outputs\nguide](https://developers.openai.com/api/docs/guides/structured-outputs).\n\nSetting to `{ \"type\": \"json_object\" }` enables the older JSON mode, which\nensures the message the model generates is valid JSON. Using `json_schema`\nis preferred for models that support it.\n","oneOf":[{"$ref":"#/definitions/ResponseFormatText"},{"$ref":"#/definitions/ResponseFormatJsonSchema"},{"$ref":"#/definitions/ResponseFormatJsonObject"}]},"tools":{"type":"array","description":"A list of tools the model may call. Currently, only functions are supported as a tool. Use this to provide a list of functions the model may generate JSON inputs for. A max of 128 functions are supported.\n","items":{"$ref":"#/definitions/ChatCompletionTool"}}}},"model":{"type":"string","description":"The name of the model to use for generating completions (e.g. \"o3-mini\")."},"source":{"description":"Determines what populates the `item` namespace in this run's data source.","oneOf":[{"$ref":"#/definitions/EvalJsonlFileContentSource"},{"$ref":"#/definitions/EvalJsonlFileIdSource"},{"$ref":"#/definitions/EvalStoredCompletionsSource"}]}},"required":["type","source"]},"CreateEvalResponsesRunDataSource":{"type":"object","title":"ResponsesRunDataSource","description":"A ResponsesRunDataSource object describing a model sampling configuration.\n","properties":{"type":{"type":"string","enum":["responses"],"default":"responses","description":"The type of run data source. Always `responses`."},"input_messages":{"description":"Used when sampling from a model. Dictates the structure of the messages passed into the model. Can either be a reference to a prebuilt trajectory (ie, `item.input_trajectory`), or a template with variable references to the `item` namespace.","oneOf":[{"type":"object","title":"InputMessagesTemplate","properties":{"type":{"type":"string","enum":["template"],"description":"The type of input messages. Always `template`."},"template":{"type":"array","description":"A list of chat messages forming the prompt or context. May include variable references to the `item` namespace, ie {{item.name}}.","items":{"oneOf":[{"type":"object","title":"ChatMessage","properties":{"role":{"type":"string","description":"The role of the message (e.g. \"system\", \"assistant\", \"user\")."},"content":{"type":"string","description":"The content of the message."}},"required":["role","content"]},{"$ref":"#/definitions/EvalItem"}]}}},"required":["type","template"]},{"type":"object","title":"InputMessagesItemReference","properties":{"type":{"type":"string","enum":["item_reference"],"description":"The type of input messages. Always `item_reference`."},"item_reference":{"type":"string","description":"A reference to a variable in the `item` namespace. Ie, \"item.name\""}},"required":["type","item_reference"]}]},"sampling_params":{"type":"object","properties":{"reasoning_effort":{"$ref":"#/definitions/ReasoningEffort"},"temperature":{"type":"number","description":"A higher temperature increases randomness in the outputs.","default":1},"max_completion_tokens":{"type":"integer","description":"The maximum number of tokens in the generated output."},"top_p":{"type":"number","description":"An alternative to temperature for nucleus sampling; 1.0 includes all tokens.","default":1},"seed":{"type":"integer","description":"A seed value to initialize the randomness, during sampling.","default":42},"tools":{"type":"array","description":"An array of tools the model may call while generating a response. You\ncan specify which tool to use by setting the `tool_choice` parameter.\n\nThe two categories of tools you can provide the model are:\n\n- **Built-in tools**: Tools that are provided by OpenAI that extend the\n  model's capabilities, like [web search](https://developers.openai.com/api/docs/guides/tools-web-search)\n  or [file search](https://developers.openai.com/api/docs/guides/tools-file-search). Learn more about\n  [built-in tools](https://developers.openai.com/api/docs/guides/tools).\n- **Function calls (custom tools)**: Functions that are defined by you,\n  enabling the model to call your own code. Learn more about\n  [function calling](https://developers.openai.com/api/docs/guides/function-calling).\n","items":{"$ref":"#/definitions/Tool"}},"text":{"type":"object","description":"Configuration options for a text response from the model. Can be plain\ntext or structured JSON data. Learn more:\n- [Text inputs and outputs](https://developers.openai.com/api/docs/guides/text)\n- [Structured Outputs](https://developers.openai.com/api/docs/guides/structured-outputs)\n","properties":{"format":{"$ref":"#/definitions/TextResponseFormatConfiguration"}}}}},"model":{"type":"string","description":"The name of the model to use for generating completions (e.g. \"o3-mini\")."},"source":{"description":"Determines what populates the `item` namespace in this run's data source.","oneOf":[{"$ref":"#/definitions/EvalJsonlFileContentSource"},{"$ref":"#/definitions/EvalJsonlFileIdSource"},{"$ref":"#/definitions/EvalResponsesSource"}]}},"required":["type","source"]},"EvalJsonlFileContentSource":{"type":"object","title":"EvalJsonlFileContentSource","properties":{"type":{"type":"string","enum":["file_content"],"default":"file_content","description":"The type of jsonl source. Always `file_content`."},"content":{"type":"array","items":{"type":"object","properties":{"item":{"type":"object","additionalProperties":true},"sample":{"type":"object","additionalProperties":true}},"required":["item"]},"description":"The content of the jsonl file."}},"required":["type","content"]},"EvalJsonlFileIdSource":{"type":"object","title":"EvalJsonlFileIdSource","properties":{"type":{"type":"string","enum":["file_id"],"default":"file_id","description":"The type of jsonl source. Always `file_id`."},"id":{"type":"string","description":"The identifier of the file."}},"required":["type","id"]},"EasyInputMessage":{"type":"object","title":"Input message","description":"A message input to the model with a role indicating instruction following\nhierarchy. Instructions given with the `developer` or `system` role take\nprecedence over instructions given with the `user` role. Messages with the\n`assistant` role are presumed to have been generated by the model in previous\ninteractions.\n","properties":{"role":{"type":"string","description":"The role of the message input. One of `user`, `assistant`, `system`, or\n`developer`.\n","enum":["user","assistant","system","developer"]},"content":{"description":"Text, image, or audio input to the model, used to generate a response.\nCan also contain previous assistant responses.\n","oneOf":[{"type":"string","title":"Text input","description":"A text input to the model.\n"},{"$ref":"#/definitions/InputMessageContentList"}]},"phase":{"anyOf":[{"$ref":"#/definitions/MessagePhase"},{"type":"null"}]},"type":{"type":"string","description":"The type of the message input. Always `message`.\n","enum":["message"]}},"required":["role","content"]},"EvalItem":{"type":"object","title":"Eval message object","description":"A message input to the model with a role indicating instruction following\nhierarchy. Instructions given with the `developer` or `system` role take\nprecedence over instructions given with the `user` role. Messages with the\n`assistant` role are presumed to have been generated by the model in previous\ninteractions.\n","properties":{"role":{"type":"string","description":"The role of the message input. One of `user`, `assistant`, `system`, or\n`developer`.\n","enum":["user","assistant","system","developer"]},"content":{"$ref":"#/definitions/EvalItemContent"},"type":{"type":"string","description":"The type of the message input. Always `message`.\n","enum":["message"]}},"required":["role","content"]},"ReasoningEffort":{"anyOf":[{"type":"string","enum":["none","minimal","low","medium","high","xhigh","max"],"default":"medium","description":"Constrains effort on reasoning for reasoning models. Currently supported\nvalues are `none`, `minimal`, `low`, `medium`, `high`, `xhigh`, and `max`.\nReducing reasoning effort can result in faster responses and fewer tokens\nused on reasoning in a response. Not all reasoning models support every\nvalue. See the\n[reasoning guide](https://developers.openai.com/api/docs/guides/reasoning)\nfor model-specific support.\n"},{"type":"null"}]},"ResponseFormatText":{"type":"object","title":"Text","description":"Default response format. Used to generate text responses.\n","properties":{"type":{"type":"string","description":"The type of response format being defined. Always `text`.","enum":["text"]}},"required":["type"]},"ResponseFormatJsonSchema":{"type":"object","title":"JSON schema","description":"JSON Schema response format. Used to generate structured JSON responses.\nLearn more about [Structured Outputs](https://developers.openai.com/api/docs/guides/structured-outputs).\n","properties":{"type":{"type":"string","description":"The type of response format being defined. Always `json_schema`.","enum":["json_schema"]},"json_schema":{"type":"object","title":"JSON schema","description":"Structured Outputs configuration options, including a JSON Schema.\n","properties":{"description":{"type":"string","description":"A description of what the response format is for, used by the model to\ndetermine how to respond in the format.\n"},"name":{"type":"string","description":"The name of the response format. Must be a-z, A-Z, 0-9, or contain\nunderscores and dashes, with a maximum length of 64.\n"},"schema":{"$ref":"#/definitions/ResponseFormatJsonSchemaSchema"},"strict":{"anyOf":[{"type":"boolean","default":false,"description":"Whether to enable strict schema adherence when generating the output.\nIf set to true, the model will always follow the exact schema defined\nin the `schema` field. Only a subset of JSON Schema is supported when\n`strict` is `true`. To learn more, read the [Structured Outputs\nguide](https://developers.openai.com/api/docs/guides/structured-outputs).\n"},{"type":"null"}]}},"required":["name"]}},"required":["type","json_schema"]},"ResponseFormatJsonObject":{"type":"object","title":"JSON object","description":"JSON object response format. An older method of generating JSON responses.\nUsing `json_schema` is recommended for models that support it. Note that the\nmodel will not generate JSON without a system or user message instructing it\nto do so.\n","properties":{"type":{"type":"string","description":"The type of response format being defined. Always `json_object`.","enum":["json_object"]}},"required":["type"]},"ChatCompletionTool":{"type":"object","title":"Function tool","description":"A function tool that can be used to generate a response.\n","properties":{"type":{"type":"string","enum":["function"],"description":"The type of the tool. Currently, only `function` is supported."},"function":{"$ref":"#/definitions/FunctionObject"}},"required":["type","function"]},"EvalStoredCompletionsSource":{"type":"object","title":"StoredCompletionsRunDataSource","description":"A StoredCompletionsRunDataSource configuration describing a set of filters\n","properties":{"type":{"type":"string","enum":["stored_completions"],"default":"stored_completions","description":"The type of source. Always `stored_completions`."},"metadata":{"$ref":"#/definitions/Metadata"},"model":{"anyOf":[{"type":"string","description":"An optional model to filter by (e.g., 'gpt-6-astra')."},{"type":"null"}]},"created_after":{"anyOf":[{"type":"integer","description":"An optional Unix timestamp to filter items created after this time."},{"type":"null"}]},"created_before":{"anyOf":[{"type":"integer","description":"An optional Unix timestamp to filter items created before this time."},{"type":"null"}]},"limit":{"anyOf":[{"type":"integer","description":"An optional maximum number of items to return."},{"type":"null"}]}},"required":["type"]},"Tool":{"description":"A tool that can be used to generate a response.\n","oneOf":[{"$ref":"#/definitions/FunctionTool"},{"$ref":"#/definitions/FileSearchTool"},{"$ref":"#/definitions/ComputerTool"},{"$ref":"#/definitions/ComputerUsePreviewTool"},{"$ref":"#/definitions/WebSearchTool"},{"$ref":"#/definitions/MCPTool"},{"$ref":"#/definitions/CodeInterpreterTool"},{"$ref":"#/definitions/ProgrammaticToolCallingParam"},{"$ref":"#/definitions/ImageGenTool"},{"$ref":"#/definitions/LocalShellToolParam"},{"$ref":"#/definitions/FunctionShellToolParam"},{"$ref":"#/definitions/CustomToolParam"},{"$ref":"#/definitions/NamespaceToolParam"},{"$ref":"#/definitions/ToolSearchToolParam"},{"$ref":"#/definitions/WebSearchPreviewTool"},{"$ref":"#/definitions/ApplyPatchToolParam"}]},"TextResponseFormatConfiguration":{"description":"An object specifying the format that the model must output.\n\nConfiguring `{ \"type\": \"json_schema\" }` enables Structured Outputs,\nwhich ensures the model will match your supplied JSON schema. Learn more in the\n[Structured Outputs guide](https://developers.openai.com/api/docs/guides/structured-outputs).\n\nThe default format is `{ \"type\": \"text\" }` with no additional options.\n\n**Not recommended for gpt-4o and newer models:**\n\nSetting to `{ \"type\": \"json_object\" }` enables the older JSON mode, which\nensures the message the model generates is valid JSON. Using `json_schema`\nis preferred for models that support it.\n","oneOf":[{"$ref":"#/definitions/ResponseFormatText"},{"$ref":"#/definitions/TextResponseFormatJsonSchema"},{"$ref":"#/definitions/ResponseFormatJsonObject"}]},"EvalResponsesSource":{"type":"object","title":"EvalResponsesSource","description":"A EvalResponsesSource object describing a run data source configuration.\n","properties":{"type":{"type":"string","enum":["responses"],"description":"The type of run data source. Always `responses`."},"metadata":{"anyOf":[{"type":"object","description":"Metadata filter for the responses. This is a query parameter used to select responses."},{"type":"null"}]},"model":{"anyOf":[{"type":"string","description":"The name of the model to find responses for. This is a query parameter used to select responses."},{"type":"null"}]},"instructions_search":{"anyOf":[{"type":"string","description":"Optional string to search the 'instructions' field. This is a query parameter used to select responses."},{"type":"null"}]},"created_after":{"anyOf":[{"type":"integer","minimum":0,"description":"Only include items created after this timestamp (inclusive). This is a query parameter used to select responses."},{"type":"null"}]},"created_before":{"anyOf":[{"type":"integer","minimum":0,"description":"Only include items created before this timestamp (inclusive). This is a query parameter used to select responses."},{"type":"null"}]},"reasoning_effort":{"anyOf":[{"$ref":"#/definitions/ReasoningEffort"},{"type":"null"}]},"temperature":{"anyOf":[{"type":"number","description":"Sampling temperature. This is a query parameter used to select responses."},{"type":"null"}]},"top_p":{"anyOf":[{"type":"number","description":"Nucleus sampling parameter. This is a query parameter used to select responses."},{"type":"null"}]},"users":{"anyOf":[{"type":"array","items":{"type":"string"},"description":"List of user identifiers. This is a query parameter used to select responses."},{"type":"null"}]},"tools":{"anyOf":[{"type":"array","items":{"type":"string"},"description":"List of tool names. This is a query parameter used to select responses."},{"type":"null"}]}},"required":["type"]},"InputMessageContentList":{"type":"array","title":"Input item content list","description":"A list of one or many input items to the model, containing different content \ntypes.\n","items":{"$ref":"#/definitions/InputContent"}},"MessagePhase":{"type":"string","description":"Labels an `assistant` message as intermediate commentary (`commentary`) or the final answer (`final_answer`).\nFor models like `gpt-5.3-codex` and beyond, when sending follow-up requests, preserve and resend\nphase on all assistant messages — dropping it can degrade performance. Not used for user messages.\n","enum":["commentary","final_answer"]},"EvalItemContent":{"title":"Eval content","description":"Inputs to the model - can contain template strings. Supports text, output text, input images, and input audio, either as a single item or an array of items.\n","oneOf":[{"$ref":"#/definitions/EvalItemContentItem"},{"$ref":"#/definitions/EvalItemContentArray"}]},"ResponseFormatJsonSchemaSchema":{"type":"object","title":"JSON schema","description":"The schema for the response format, described as a JSON Schema object.\nLearn how to build JSON schemas [here](https://json-schema.org/).\n","additionalProperties":true},"FunctionObject":{"type":"object","properties":{"description":{"type":"string","description":"A description of what the function does, used by the model to choose when and how to call the function."},"name":{"type":"string","description":"The 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."},"parameters":{"$ref":"#/definitions/FunctionParameters"},"strict":{"anyOf":[{"type":"boolean","default":false,"description":"Whether to enable strict schema adherence when generating the function call. If set to true, the model will follow the exact schema defined in the `parameters` field. Only a subset of JSON Schema is supported when `strict` is `true`. Learn more about Structured Outputs in the [function calling guide](https://developers.openai.com/api/docs/guides/function-calling)."},{"type":"null"}]}},"required":["name"]},"FunctionTool":{"properties":{"type":{"type":"string","enum":["function"],"description":"The type of the function tool. Always `function`.","default":"function"},"name":{"type":"string","description":"The name of the function to call."},"async":{"type":"boolean"},"description":{"anyOf":[{"type":"string","description":"A description of the function. Used by the model to determine whether or not to call the function."},{"type":"null"}]},"parameters":{"anyOf":[{"additionalProperties":{},"type":"object","description":"A JSON schema object describing the parameters of the function."},{"type":"null"}]},"output_schema":{"anyOf":[{"additionalProperties":{},"type":"object","description":"A JSON schema object describing the JSON value encoded in string outputs for this function."},{"type":"null"}]},"strict":{"anyOf":[{"type":"boolean","description":"Whether strict parameter validation is enforced for this function tool."},{"type":"null"}]},"defer_loading":{"type":"boolean","description":"Whether this function is deferred and loaded via tool search."},"allowed_callers":{"anyOf":[{"items":{"$ref":"#/definitions/CallableToolAllowedCaller"},"type":"array","description":"The tool invocation context(s)."},{"type":"null"}]}},"type":"object","required":["type","name","strict","parameters"],"title":"Function","description":"Defines a function in your own code the model can choose to call. Learn more about [function calling](https://developers.openai.com/api/docs/guides/function-calling)."},"FileSearchTool":{"properties":{"type":{"type":"string","enum":["file_search"],"description":"The type of the file search tool. Always `file_search`.","default":"file_search"},"vector_store_ids":{"items":{"type":"string"},"type":"array","description":"The IDs of the vector stores to search."},"max_num_results":{"type":"integer","description":"The maximum number of results to return. This number should be between 1 and 50 inclusive."},"ranking_options":{"$ref":"#/definitions/RankingOptions"},"filters":{"anyOf":[{"$ref":"#/definitions/Filters"},{"type":"null"}]}},"type":"object","required":["type","vector_store_ids"],"title":"File search","description":"A tool that searches for relevant content from uploaded files. Learn more about the [file search tool](https://developers.openai.com/api/docs/guides/tools-file-search)."},"ComputerTool":{"properties":{"type":{"type":"string","enum":["computer"],"description":"The type of the computer tool. Always `computer`.","default":"computer"}},"type":"object","required":["type"],"title":"Computer","description":"A tool that controls a virtual computer. Learn more about the [computer tool](https://developers.openai.com/api/docs/guides/tools-computer-use)."},"ComputerUsePreviewTool":{"properties":{"type":{"type":"string","enum":["computer_use_preview"],"description":"The type of the computer use tool. Always `computer_use_preview`.","default":"computer_use_preview"},"environment":{"$ref":"#/definitions/ComputerEnvironment"},"display_width":{"type":"integer","description":"The width of the computer display."},"display_height":{"type":"integer","description":"The height of the computer display."}},"type":"object","required":["type","environment","display_width","display_height"],"title":"Computer use preview","description":"A tool that controls a virtual computer. Learn more about the [computer tool](https://developers.openai.com/api/docs/guides/tools-computer-use)."},"WebSearchTool":{"type":"object","title":"Web search","description":"Search the Internet for sources related to the prompt. Learn more about the\n[web search tool](https://developers.openai.com/api/docs/guides/tools-web-search).\n","properties":{"type":{"type":"string","enum":["web_search","web_search_2025_08_26"],"description":"The type of the web search tool. One of `web_search` or `web_search_2025_08_26`.","default":"web_search"},"external_web_access":{"type":"boolean","default":true,"description":"Allow live internet access for web search. Defaults to true when omitted. When false, the web search tool runs in offline/cache-only mode and will not fetch new external content."},"filters":{"anyOf":[{"type":"object","description":"Filters for the search.\n","properties":{"allowed_domains":{"anyOf":[{"type":"array","title":"Allowed domains for the search.","description":"Allowed domains for the search. If not provided, all domains are allowed.\nSubdomains of the provided domains are allowed as well.\n\nExample: `[\"pubmed.ncbi.nlm.nih.gov\"]`\n","items":{"type":"string","description":"Allowed domain for the search."},"default":[]},{"type":"null"}]}}},{"type":"null"}]},"user_location":{"$ref":"#/definitions/WebSearchApproximateLocation"},"search_context_size":{"type":"string","enum":["low","medium","high"],"default":"medium","description":"High level guidance for the amount of context window space to use for the search. One of `low`, `medium`, or `high`. `medium` is the default."}},"required":["type"]},"MCPTool":{"type":"object","title":"MCP tool","description":"Give the model access to additional tools via remote Model Context Protocol\n(MCP) servers. [Learn more about MCP](https://developers.openai.com/api/docs/guides/tools-connectors-mcp).\n","properties":{"type":{"type":"string","enum":["mcp"],"description":"The type of the MCP tool. Always `mcp`."},"server_label":{"type":"string","description":"A label for this MCP server, used to identify it in tool calls.\n"},"server_url":{"type":"string","format":"uri","description":"The URL for the MCP server. One of `server_url`, `connector_id`, or\n`tunnel_id` must be provided.\n"},"connector_id":{"type":"string","enum":["connector_dropbox","connector_gmail","connector_googlecalendar","connector_googledrive","connector_microsoftteams","connector_outlookcalendar","connector_outlookemail","connector_sharepoint"],"description":"Identifier for service connectors, like those available in ChatGPT. One of\n`server_url`, `connector_id`, or `tunnel_id` must be provided. Learn more\nabout service connectors [here](https://developers.openai.com/api/docs/guides/tools-connectors-mcp#connectors).\n\nThis field is deprecated for models released after September 1, 2026.\nUse `server_url` to connect to a remote MCP server, or `tunnel_id` to\nconnect through a Secure MCP Tunnel.\n\nCurrently supported `connector_id` values are:\n\n- Dropbox: `connector_dropbox`\n- Gmail: `connector_gmail`\n- Google Calendar: `connector_googlecalendar`\n- Google Drive: `connector_googledrive`\n- Microsoft Teams: `connector_microsoftteams`\n- Outlook Calendar: `connector_outlookcalendar`\n- Outlook Email: `connector_outlookemail`\n- SharePoint: `connector_sharepoint`\n"},"tunnel_id":{"type":"string","pattern":"^tunnel_[a-z0-9]{32}$","description":"The Secure MCP Tunnel ID to use instead of a direct server URL. One of\n`server_url`, `connector_id`, or `tunnel_id` must be provided.\n"},"authorization":{"type":"string","description":"An OAuth access token that can be used with a remote MCP server, either\nwith a custom MCP server URL or a service connector. Your application\nmust handle the OAuth authorization flow and provide the token here.\n"},"server_description":{"type":"string","description":"Optional description of the MCP server, used to provide more context.\n"},"headers":{"anyOf":[{"type":"object","additionalProperties":{"type":"string"},"description":"Optional HTTP headers to send to the MCP server. Use for authentication\nor other purposes.\n"},{"type":"null"}]},"allowed_tools":{"anyOf":[{"description":"List of allowed tool names or a filter object.\n","oneOf":[{"type":"array","title":"MCP allowed tools","description":"A string array of allowed tool names","items":{"type":"string"}},{"$ref":"#/definitions/MCPToolFilter"}]},{"type":"null"}]},"allowed_callers":{"anyOf":[{"type":"array","minItems":1,"items":{"$ref":"#/definitions/CallableToolAllowedCaller"},"description":"The tool invocation context(s)."},{"type":"null"}]},"require_approval":{"anyOf":[{"description":"Specify which of the MCP server's tools require approval.","oneOf":[{"type":"object","title":"MCP tool approval filter","description":"Specify which of the MCP server's tools require approval. Can be\n`always`, `never`, or a filter object associated with tools\nthat require approval.\n","properties":{"always":{"$ref":"#/definitions/MCPToolFilter"},"never":{"$ref":"#/definitions/MCPToolFilter"}},"additionalProperties":false},{"type":"string","title":"MCP tool approval setting","description":"Specify a single approval policy for all tools. One of `always` or\n`never`. When set to `always`, all tools will require approval. When\nset to `never`, all tools will not require approval.\n","enum":["always","never"]}],"default":"always"},{"type":"null"}]},"defer_loading":{"type":"boolean","description":"Whether this MCP tool is deferred and discovered via tool search.\n"}},"required":["type","server_label"]},"CodeInterpreterTool":{"type":"object","title":"Code interpreter","description":"A tool that runs Python code to help generate a response to a prompt.\n","properties":{"type":{"type":"string","enum":["code_interpreter"],"description":"The type of the code interpreter tool. Always `code_interpreter`.\n"},"container":{"description":"The code interpreter container. Can be a container ID or an object that\nspecifies uploaded file IDs to make available to your code, along with an\noptional `memory_limit` setting.\n","oneOf":[{"type":"string","description":"The container ID."},{"$ref":"#/definitions/AutoCodeInterpreterToolParam"}]},"allowed_callers":{"anyOf":[{"type":"array","minItems":1,"items":{"$ref":"#/definitions/CallableToolAllowedCaller"},"description":"The tool invocation context(s)."},{"type":"null"}]}},"required":["type","container"]},"ProgrammaticToolCallingParam":{"properties":{"type":{"type":"string","enum":["programmatic_tool_calling"],"description":"The type of the tool. Always `programmatic_tool_calling`.","default":"programmatic_tool_calling"}},"type":"object","required":["type"]},"ImageGenTool":{"type":"object","title":"Image generation tool","description":"A tool that generates images using the GPT image models.\n","properties":{"type":{"type":"string","enum":["image_generation"],"description":"The type of the image generation tool. Always `image_generation`.\n"},"model":{"anyOf":[{"type":"string"},{"type":"string","enum":["gpt-image-1","gpt-image-1-mini","gpt-image-1.5","gpt-image-2","gpt-image-2-2026-04-21","gpt-image-2.5-sunburst","gpt-image-2.5-sunburst-2026-09-08","gpt-image-2.5-flare","gpt-image-2.5-flare-2026-09-08"],"description":"The image generation model to use. One of `gpt-image-1-mini`,\n`gpt-image-1.5`, `gpt-image-2`,\n`gpt-image-2-2026-04-21`, `gpt-image-2.5-sunburst`,\n`gpt-image-2.5-sunburst-2026-09-08`, `gpt-image-2.5-flare`,\n`gpt-image-2.5-flare-2026-09-08`, or `chatgpt-image-latest`. Default:\n`gpt-image-2`.\n\n`gpt-image-1` was shut down on October 23, 2026. Use\n`gpt-image-2.5-sunburst` or `gpt-image-2.5-flare` instead.\n","default":"gpt-image-2"}]},"quality":{"type":"string","enum":["low","medium","high","xhigh","max","auto"],"description":"The quality of the generated image. The GPT image models support `low`,\n`medium`, and `high`. `gpt-image-2.5-sunburst` and `gpt-image-2.5-flare`,\nincluding their `2026-09-08` snapshots, also support `xhigh` and `max`.\nDefault: `auto`.\n","default":"auto"},"size":{"anyOf":[{"type":"string"},{"type":"string","enum":["1024x1024","1024x1536","1536x1024","auto"]}],"description":"The size of the generated images. For `gpt-image-2`, `gpt-image-2-2026-04-21`, `gpt-image-2.5-sunburst`, `gpt-image-2.5-sunburst-2026-09-08`, `gpt-image-2.5-flare`, and `gpt-image-2.5-flare-2026-09-08`, arbitrary resolutions are supported as `WIDTHxHEIGHT` strings, for example `1536x864`. Width and height must both be divisible by 16 and the requested aspect ratio must be between 1:3 and 3:1. Resolutions above `2560x1440` are experimental, and the maximum supported resolution is `3840x2160`. The requested size must also satisfy the model's current pixel and edge limits. The standard sizes `1024x1024`, `1536x1024`, and `1024x1536` are supported by the GPT image models; `auto` is supported for models that allow automatic sizing.","default":"auto"},"output_format":{"type":"string","enum":["png","webp","jpeg"],"description":"The output format of the generated image. One of `png`, `webp`, or\n`jpeg`. Default: `png`.\n","default":"png"},"output_compression":{"type":"integer","minimum":0,"maximum":100,"description":"Compression level for the output image. Default: 100.\n","default":100},"moderation":{"type":"string","enum":["auto","low"],"description":"Moderation level for the generated image. Default: `auto`.\n","default":"auto"},"background":{"type":"string","enum":["transparent","opaque","auto"],"description":"Set the background of the generated image. One of `transparent`, `opaque`,\nor `auto`. `gpt-image-2.5-sunburst` and `gpt-image-2.5-flare`, including\ntheir `2026-09-08` snapshots, support `opaque` and `transparent`\nbackgrounds. Transparent backgrounds are available for supported GPT Image\nmodels. For `gpt-image-2` and `gpt-image-2-2026-04-21`, this support is in\npreview. When using `transparent`, set the output format to `png` or `webp`.\nDefault: `auto`.\n","default":"auto"},"input_fidelity":{"anyOf":[{"$ref":"#/definitions/InputFidelity"},{"type":"null"}]},"input_image_mask":{"type":"object","description":"Optional mask for inpainting. Contains `image_url`\n(string, optional) and `file_id` (string, optional).\n","properties":{"image_url":{"type":"string","description":"Base64-encoded mask image.\n"},"file_id":{"type":"string","description":"File ID for the mask image.\n"}},"required":[],"additionalProperties":false},"partial_images":{"type":"integer","minimum":0,"maximum":3,"description":"Number of partial images to generate in streaming mode, from 0 (default value) to 3.\n","default":0},"action":{"$ref":"#/definitions/ImageGenActionEnum"}},"required":["type"]},"LocalShellToolParam":{"properties":{"type":{"type":"string","enum":["local_shell"],"description":"The type of the local shell tool. Always `local_shell`.","default":"local_shell"}},"type":"object","required":["type"],"title":"Local shell tool","description":"A tool that allows the model to execute shell commands in a local environment."},"FunctionShellToolParam":{"properties":{"type":{"type":"string","enum":["shell"],"description":"The type of the shell tool. Always `shell`.","default":"shell"},"environment":{"anyOf":[{"oneOf":[{"$ref":"#/definitions/ContainerAutoParam"},{"$ref":"#/definitions/LocalEnvironmentParam"},{"$ref":"#/definitions/ContainerReferenceParam"}]},{"type":"null"}]},"allowed_callers":{"anyOf":[{"items":{"$ref":"#/definitions/CallableToolAllowedCaller"},"type":"array","minItems":1,"description":"The tool invocation context(s)."},{"type":"null"}]}},"type":"object","required":["type"],"title":"Shell tool","description":"A tool that allows the model to execute shell commands."},"CustomToolParam":{"properties":{"type":{"type":"string","enum":["custom"],"description":"The type of the custom tool. Always `custom`.","default":"custom"},"name":{"type":"string","description":"The name of the custom tool, used to identify it in tool calls."},"async":{"type":"boolean","description":"Whether the tool response can be returned asynchronously versus immediately returned on next response creation."},"description":{"type":"string","description":"Optional description of the custom tool, used to provide more context."},"format":{"oneOf":[{"$ref":"#/definitions/CustomTextFormatParam"},{"$ref":"#/definitions/CustomGrammarFormatParam"}],"description":"The input format for the custom tool. Default is unconstrained text."},"defer_loading":{"type":"boolean","description":"Whether this tool should be deferred and discovered via tool search."},"allowed_callers":{"anyOf":[{"items":{"$ref":"#/definitions/CallableToolAllowedCaller"},"type":"array","minItems":1,"description":"The tool invocation context(s)."},{"type":"null"}]}},"type":"object","required":["type","name"],"title":"Custom tool","description":"A custom tool that processes input using a specified format. Learn more about   [custom tools](https://developers.openai.com/api/docs/guides/function-calling#custom-tools)"},"NamespaceToolParam":{"properties":{"type":{"type":"string","enum":["namespace"],"description":"The type of the tool. Always `namespace`.","default":"namespace"},"name":{"type":"string","minLength":1,"description":"The namespace name used in tool calls (for example, `crm`)."},"description":{"type":"string","description":"A description of the namespace shown to the model."},"tools":{"items":{"oneOf":[{"$ref":"#/definitions/FunctionToolParam"},{"$ref":"#/definitions/CustomToolParam"}],"description":"A function or custom tool that belongs to a namespace."},"type":"array","minItems":1,"description":"The function/custom tools available inside this namespace."}},"type":"object","required":["type","name","description","tools"],"title":"Namespace","description":"Groups function/custom tools under a shared namespace."},"ToolSearchToolParam":{"properties":{"type":{"type":"string","enum":["tool_search"],"description":"The type of the tool. Always `tool_search`.","default":"tool_search"},"execution":{"$ref":"#/definitions/ToolSearchExecutionType"},"description":{"anyOf":[{"type":"string","description":"Description shown to the model for a client-executed tool search tool."},{"type":"null"}]},"parameters":{"anyOf":[{"$ref":"#/definitions/EmptyModelParam"},{"type":"null"}]}},"type":"object","required":["type"],"title":"Tool search tool","description":"Hosted or BYOT tool search configuration for deferred tools."},"WebSearchPreviewTool":{"properties":{"type":{"type":"string","enum":["web_search_preview","web_search_preview_2025_03_11"],"description":"The type of the web search tool. One of `web_search_preview` or `web_search_preview_2025_03_11`.","default":"web_search_preview"},"user_location":{"anyOf":[{"$ref":"#/definitions/ApproximateLocation"},{"type":"null"}]},"search_context_size":{"$ref":"#/definitions/SearchContextSize"},"search_content_types":{"items":{"$ref":"#/definitions/SearchContentType"},"type":"array"}},"type":"object","required":["type"],"title":"Web search preview","description":"This tool searches the web for relevant results to use in a response. Learn more about the [web search tool](https://developers.openai.com/api/docs/guides/tools-web-search)."},"ApplyPatchToolParam":{"properties":{"type":{"type":"string","enum":["apply_patch"],"description":"The type of the tool. Always `apply_patch`.","default":"apply_patch"},"allowed_callers":{"anyOf":[{"items":{"$ref":"#/definitions/CallableToolAllowedCaller"},"type":"array","minItems":1,"description":"The tool invocation context(s)."},{"type":"null"}]}},"type":"object","required":["type"],"title":"Apply patch tool","description":"Allows the assistant to create, delete, or update files using unified diffs."},"TextResponseFormatJsonSchema":{"type":"object","title":"JSON schema","description":"JSON Schema response format. Used to generate structured JSON responses.\nLearn more about [Structured Outputs](https://developers.openai.com/api/docs/guides/structured-outputs).\n","properties":{"type":{"type":"string","description":"The type of response format being defined. Always `json_schema`.","enum":["json_schema"]},"description":{"type":"string","description":"A description of what the response format is for, used by the model to\ndetermine how to respond in the format.\n"},"name":{"type":"string","description":"The name of the response format. Must be a-z, A-Z, 0-9, or contain\nunderscores and dashes, with a maximum length of 64.\n"},"schema":{"$ref":"#/definitions/ResponseFormatJsonSchemaSchema"},"strict":{"anyOf":[{"type":"boolean","default":false,"description":"Whether to enable strict schema adherence when generating the output.\nIf set to true, the model will always follow the exact schema defined\nin the `schema` field. Only a subset of JSON Schema is supported when\n`strict` is `true`. To learn more, read the [Structured Outputs\nguide](https://developers.openai.com/api/docs/guides/structured-outputs).\n"},{"type":"null"}]}},"required":["type","schema","name"]},"InputContent":{"oneOf":[{"$ref":"#/definitions/InputTextContent"},{"$ref":"#/definitions/InputImageContent"},{"$ref":"#/definitions/InputFileContent"}]},"EvalItemContentItem":{"title":"Eval content item","description":"A single content item: input text, output text, input image, or input audio.\n","oneOf":[{"$ref":"#/definitions/EvalItemContentText"},{"$ref":"#/definitions/InputTextContent"},{"$ref":"#/definitions/EvalItemContentOutputText"},{"$ref":"#/definitions/EvalItemInputImage"},{"$ref":"#/definitions/InputAudio"}]},"EvalItemContentArray":{"type":"array","title":"An array of Input text, Output text, Input image, and Input audio","description":"A list of inputs, each of which may be either an input text, output text, input\nimage, or input audio object.\n","items":{"$ref":"#/definitions/EvalItemContentItem"}},"FunctionParameters":{"type":"object","description":"The parameters the functions accepts, described as a JSON Schema object. See the [guide](https://developers.openai.com/api/docs/guides/function-calling) for examples, and the [JSON Schema reference](https://json-schema.org/understanding-json-schema/) for documentation about the format.\n\nOmitting `parameters` defines a function with an empty parameter list.","additionalProperties":true},"CallableToolAllowedCaller":{"type":"string","enum":["direct","programmatic"]},"RankingOptions":{"properties":{"ranker":{"$ref":"#/definitions/RankerVersionType"},"score_threshold":{"type":"number","description":"The score threshold for the file search, a number between 0 and 1. Numbers closer to 1 will attempt to return only the most relevant results, but may return fewer results."},"hybrid_search":{"$ref":"#/definitions/HybridSearchOptions"}},"type":"object","required":[]},"Filters":{"anyOf":[{"$ref":"#/definitions/ComparisonFilter"},{"$ref":"#/definitions/CompoundFilter"}]},"ComputerEnvironment":{"type":"string","enum":["windows","mac","linux","ubuntu","browser"]},"WebSearchApproximateLocation":{"anyOf":[{"type":"object","title":"Web search approximate location","description":"The approximate location of the user.\n","properties":{"type":{"type":"string","enum":["approximate"],"description":"The type of location approximation. Always `approximate`.","default":"approximate"},"country":{"anyOf":[{"type":"string","description":"The two-letter [ISO country code](https://en.wikipedia.org/wiki/ISO_3166-1) of the user, e.g. `US`."},{"type":"null"}]},"region":{"anyOf":[{"type":"string","description":"Free text input for the region of the user, e.g. `California`."},{"type":"null"}]},"city":{"anyOf":[{"type":"string","description":"Free text input for the city of the user, e.g. `San Francisco`."},{"type":"null"}]},"timezone":{"anyOf":[{"type":"string","description":"The [IANA timezone](https://timeapi.io/documentation/iana-timezones) of the user, e.g. `America/Los_Angeles`."},{"type":"null"}]}}},{"type":"null"}]},"MCPToolFilter":{"type":"object","title":"MCP tool filter","description":"A filter object to specify which tools are allowed.\n","properties":{"tool_names":{"type":"array","title":"MCP allowed tools","items":{"type":"string"},"description":"List of allowed tool names."},"read_only":{"type":"boolean","description":"Indicates whether or not a tool modifies data or is read-only. If an\nMCP server is [annotated with `readOnlyHint`](https://modelcontextprotocol.io/specification/2025-06-18/schema#toolannotations-readonlyhint),\nit will match this filter.\n"}},"required":[],"additionalProperties":false},"AutoCodeInterpreterToolParam":{"properties":{"type":{"type":"string","enum":["auto"],"description":"Always `auto`.","default":"auto"},"file_ids":{"items":{"type":"string","examples":["file-123"]},"type":"array","maxItems":50,"description":"An optional list of uploaded files to make available to your code."},"memory_limit":{"anyOf":[{"$ref":"#/definitions/ContainerMemoryLimit"},{"type":"null"}]},"network_policy":{"oneOf":[{"$ref":"#/definitions/ContainerNetworkPolicyDisabledParam"},{"$ref":"#/definitions/ContainerNetworkPolicyAllowlistParam"}],"description":"Network access policy for the container."}},"type":"object","required":["type"],"title":"CodeInterpreterToolAuto","description":"Configuration for a code interpreter container. Optionally specify the IDs of the files to run the code on."},"InputFidelity":{"type":"string","enum":["high","low"],"description":"Control how much effort the model will exert to match the style and features, especially facial features, of input images. Supports `high` and `low` on `gpt-image-1.5`; `gpt-image-1-mini` supports only `low`. For `gpt-image-2`, omit this parameter. Defaults to `low` on supported models."},"ImageGenActionEnum":{"type":"string","enum":["generate","edit","auto"]},"ContainerAutoParam":{"properties":{"type":{"type":"string","enum":["container_auto"],"description":"Automatically creates a container for this request","default":"container_auto"},"file_ids":{"items":{"type":"string","examples":["file-123"]},"type":"array","maxItems":50,"description":"An optional list of uploaded files to make available to your code."},"memory_limit":{"anyOf":[{"$ref":"#/definitions/ContainerMemoryLimit"},{"type":"null"}]},"network_policy":{"oneOf":[{"$ref":"#/definitions/ContainerNetworkPolicyDisabledParam"},{"$ref":"#/definitions/ContainerNetworkPolicyAllowlistParam"}],"description":"Network access policy for the container."},"skills":{"items":{"oneOf":[{"$ref":"#/definitions/SkillReferenceParam"},{"$ref":"#/definitions/InlineSkillParam"}]},"type":"array","maxItems":200,"description":"An optional list of skills referenced by id or inline data."}},"type":"object","required":["type"]},"LocalEnvironmentParam":{"properties":{"type":{"type":"string","enum":["local"],"description":"Use a local computer environment.","default":"local"},"skills":{"items":{"$ref":"#/definitions/LocalSkillParam"},"type":"array","maxItems":200,"description":"An optional list of skills."}},"type":"object","required":["type"]},"ContainerReferenceParam":{"properties":{"type":{"type":"string","enum":["container_reference"],"description":"References a container created with the /v1/containers endpoint","default":"container_reference"},"container_id":{"type":"string","description":"The ID of the referenced container.","examples":["cntr_123"]}},"type":"object","required":["type","container_id"]},"CustomTextFormatParam":{"properties":{"type":{"type":"string","enum":["text"],"description":"Unconstrained text format. Always `text`.","default":"text"}},"type":"object","required":["type"],"title":"Text format","description":"Unconstrained free-form text."},"CustomGrammarFormatParam":{"properties":{"type":{"type":"string","enum":["grammar"],"description":"Grammar format. Always `grammar`.","default":"grammar"},"syntax":{"$ref":"#/definitions/GrammarSyntax1"},"definition":{"type":"string","description":"The grammar definition."}},"type":"object","required":["type","syntax","definition"],"title":"Grammar format","description":"A grammar defined by the user."},"FunctionToolParam":{"properties":{"name":{"type":"string","maxLength":128,"minLength":1,"pattern":"^[a-zA-Z0-9_-]+$"},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"parameters":{"anyOf":[{"$ref":"#/definitions/EmptyModelParam"},{"type":"null"}]},"strict":{"anyOf":[{"type":"boolean","description":"Whether to enforce strict parameter validation. If omitted, Responses attempts to use strict validation when the schema is compatible, and falls back to non-strict validation otherwise."},{"type":"null"}]},"type":{"type":"string","enum":["function"],"default":"function"},"async":{"type":"boolean","description":"Whether the tool response can be returned asynchronously versus immediately returned on next response creation."},"output_schema":{"anyOf":[{"additionalProperties":{},"type":"object","description":"A JSON Schema describing the JSON value encoded in string outputs for this function tool. This does not describe content-array outputs."},{"type":"null"}]},"defer_loading":{"type":"boolean","description":"Whether this function should be deferred and discovered via tool search."},"allowed_callers":{"anyOf":[{"items":{"$ref":"#/definitions/CallableToolAllowedCaller"},"type":"array","minItems":1,"description":"The tool invocation context(s)."},{"type":"null"}]}},"type":"object","required":["name","type"]},"ToolSearchExecutionType":{"type":"string","enum":["server","client"]},"EmptyModelParam":{"properties":{},"type":"object","required":[]},"ApproximateLocation":{"properties":{"type":{"type":"string","enum":["approximate"],"description":"The type of location approximation. Always `approximate`.","default":"approximate"},"country":{"anyOf":[{"type":"string","description":"The two-letter [ISO country code](https://en.wikipedia.org/wiki/ISO_3166-1) of the user, e.g. `US`."},{"type":"null"}]},"region":{"anyOf":[{"type":"string","description":"Free text input for the region of the user, e.g. `California`."},{"type":"null"}]},"city":{"anyOf":[{"type":"string","description":"Free text input for the city of the user, e.g. `San Francisco`."},{"type":"null"}]},"timezone":{"anyOf":[{"type":"string","description":"The [IANA timezone](https://timeapi.io/documentation/iana-timezones) of the user, e.g. `America/Los_Angeles`."},{"type":"null"}]}},"type":"object","required":["type"]},"SearchContextSize":{"type":"string","enum":["low","medium","high"]},"SearchContentType":{"type":"string","enum":["text","image"]},"InputTextContent":{"properties":{"type":{"type":"string","enum":["input_text"],"description":"The type of the input item. Always `input_text`.","default":"input_text"},"text":{"type":"string","description":"The text input to the model."},"prompt_cache_breakpoint":{"$ref":"#/definitions/PromptCacheBreakpointConfig"}},"type":"object","required":["type","text"],"title":"Input text","description":"A text input to the model."},"InputImageContent":{"properties":{"type":{"type":"string","enum":["input_image"],"description":"The type of the input item. Always `input_image`.","default":"input_image"},"image_url":{"anyOf":[{"type":"string","format":"uri","description":"The URL of the image to be sent to the model. A fully qualified URL or base64 encoded image in a data URL."},{"type":"null"}]},"file_id":{"anyOf":[{"type":"string","description":"The ID of the file to be sent to the model."},{"type":"null"}]},"detail":{"$ref":"#/definitions/ImageDetail"},"prompt_cache_breakpoint":{"$ref":"#/definitions/PromptCacheBreakpointConfig"}},"type":"object","required":["type","detail"],"title":"Input image","description":"An image input to the model. Learn about [image inputs](https://developers.openai.com/api/docs/guides/images-vision)."},"InputFileContent":{"properties":{"type":{"type":"string","enum":["input_file"],"description":"The type of the input item. Always `input_file`.","default":"input_file"},"file_id":{"anyOf":[{"type":"string","description":"The ID of the file to be sent to the model."},{"type":"null"}]},"filename":{"type":"string","description":"The name of the file to be sent to the model."},"file_data":{"type":"string","description":"The content of the file to be sent to the model.\n"},"prompt_cache_breakpoint":{"$ref":"#/definitions/PromptCacheBreakpointConfig"},"file_url":{"type":"string","format":"uri","description":"The URL of the file to be sent to the model."},"detail":{"$ref":"#/definitions/FileInputDetail"}},"type":"object","required":["type"],"title":"Input file","description":"A file input to the model."},"EvalItemContentText":{"type":"string","title":"Text input","description":"A text input to the model.\n"},"EvalItemContentOutputText":{"type":"object","title":"Output text","description":"A text output from the model.\n","properties":{"type":{"type":"string","description":"The type of the output text. Always `output_text`.\n","enum":["output_text"]},"text":{"type":"string","description":"The text output from the model.\n"}},"required":["type","text"]},"EvalItemInputImage":{"title":"Input image","description":"An image input block used within EvalItem content arrays.","type":"object","properties":{"type":{"type":"string","description":"The type of the image input. Always `input_image`.\n","enum":["input_image"]},"image_url":{"type":"string","format":"uri","description":"The URL of the image input.\n"},"detail":{"type":"string","description":"The detail level of the image to be sent to the model. One of `high`, `low`, or `auto`. Defaults to `auto`.\n"}},"required":["type","image_url"]},"InputAudio":{"type":"object","title":"Input audio","description":"An audio input to the model.\n","properties":{"type":{"type":"string","description":"The type of the input item. Always `input_audio`.\n","enum":["input_audio"]},"input_audio":{"type":"object","properties":{"data":{"type":"string","description":"Base64-encoded audio data.\n"},"format":{"type":"string","description":"The format of the audio data. Currently supported formats are `mp3` and\n`wav`.\n","enum":["mp3","wav"]}},"required":["data","format"]}},"required":["type","input_audio"]},"RankerVersionType":{"type":"string","enum":["auto","default-2024-11-15"]},"HybridSearchOptions":{"properties":{"embedding_weight":{"type":"number","description":"The weight of the embedding in the reciprocal ranking fusion."},"text_weight":{"type":"number","description":"The weight of the text in the reciprocal ranking fusion."}},"type":"object","required":["embedding_weight","text_weight"]},"ComparisonFilter":{"type":"object","additionalProperties":false,"title":"Comparison Filter","description":"A filter used to compare a specified attribute key to a given value using a defined comparison operation.\n","properties":{"type":{"type":"string","default":"eq","enum":["eq","ne","gt","gte","lt","lte","in","nin"],"description":"Specifies the comparison operator: `eq`, `ne`, `gt`, `gte`, `lt`, `lte`, `in`, `nin`.\n- `eq`: equals\n- `ne`: not equal\n- `gt`: greater than\n- `gte`: greater than or equal\n- `lt`: less than\n- `lte`: less than or equal\n- `in`: in\n- `nin`: not in\n"},"key":{"type":"string","description":"The key to compare against the value."},"value":{"oneOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"array","items":{"oneOf":[{"type":"string"},{"type":"number"}]}}],"description":"The value to compare against the attribute key; supports string, number, or boolean types."}},"required":["type","key","value"]},"CompoundFilter":{"type":"object","additionalProperties":false,"title":"Compound Filter","description":"Combine multiple filters using `and` or `or`.","properties":{"type":{"type":"string","description":"Type of operation: `and` or `or`.","enum":["and","or"]},"filters":{"type":"array","description":"Array of filters to combine. Items can be `ComparisonFilter` or `CompoundFilter`.","items":{"oneOf":[{"$ref":"#/definitions/ComparisonFilter"},{"$ref":"#/definitions/CompoundFilter"}]}}},"required":["type","filters"]},"ContainerMemoryLimit":{"type":"string","enum":["1g","4g","16g","64g"]},"ContainerNetworkPolicyDisabledParam":{"properties":{"type":{"type":"string","enum":["disabled"],"description":"Disable outbound network access. Always `disabled`.","default":"disabled"}},"type":"object","required":["type"]},"ContainerNetworkPolicyAllowlistParam":{"properties":{"type":{"type":"string","enum":["allowlist"],"description":"Allow outbound network access only to specified domains. Always `allowlist`.","default":"allowlist"},"allowed_domains":{"items":{"type":"string"},"type":"array","minItems":1,"description":"A list of allowed domains when type is `allowlist`."},"domain_secrets":{"items":{"$ref":"#/definitions/ContainerNetworkPolicyDomainSecretParam"},"type":"array","minItems":1,"description":"Optional domain-scoped secrets for allowlisted domains."}},"type":"object","required":["type","allowed_domains"]},"SkillReferenceParam":{"properties":{"type":{"type":"string","enum":["skill_reference"],"description":"References a skill created with the /v1/skills endpoint.","default":"skill_reference"},"skill_id":{"type":"string","maxLength":64,"minLength":1,"description":"The ID of the referenced skill."},"version":{"type":"string","description":"Optional skill version. Use a positive integer or 'latest'. Omit for default."}},"type":"object","required":["type","skill_id"]},"InlineSkillParam":{"properties":{"type":{"type":"string","enum":["inline"],"description":"Defines an inline skill for this request.","default":"inline"},"name":{"type":"string","description":"The name of the skill."},"description":{"type":"string","description":"The description of the skill."},"source":{"$ref":"#/definitions/InlineSkillSourceParam"}},"type":"object","required":["type","name","description","source"]},"LocalSkillParam":{"properties":{"name":{"type":"string","description":"The name of the skill."},"description":{"type":"string","description":"The description of the skill."},"path":{"type":"string","description":"The path to the directory containing the skill."}},"type":"object","required":["name","description","path"]},"GrammarSyntax1":{"type":"string","enum":["lark","regex"]},"PromptCacheBreakpointConfig":{"properties":{"mode":{"type":"string","enum":["explicit"],"description":"The breakpoint mode. Always `explicit`.","default":"explicit"},"ttl":{"type":"string","enum":["30m","12h"],"description":"The minimum lifetime of this cache breakpoint. Defaults to the request TTL."}},"type":"object","required":["mode"],"title":"Prompt cache breakpoint","description":"Marks the exact end of a reusable prompt prefix. When `ttl` is omitted, the breakpoint inherits the request's `prompt_cache_options.ttl`; the boundary is not rounded to a token block."},"ImageDetail":{"type":"string","enum":["low","high","auto","original"]},"FileInputDetail":{"type":"string","enum":["auto","low","high"]},"ContainerNetworkPolicyDomainSecretParam":{"properties":{"domain":{"type":"string","minLength":1,"description":"The domain associated with the secret."},"name":{"type":"string","minLength":1,"description":"The name of the secret to inject for the domain."},"value":{"type":"string","maxLength":10485760,"minLength":1,"description":"The secret value to inject for the domain."}},"type":"object","required":["domain","name","value"]},"InlineSkillSourceParam":{"properties":{"type":{"type":"string","enum":["base64"],"description":"The type of the inline skill source. Must be `base64`.","default":"base64"},"media_type":{"type":"string","enum":["application/zip"],"description":"The media type of the inline skill payload. Must be `application/zip`.","default":"application/zip"},"data":{"type":"string","maxLength":70254592,"minLength":1,"description":"Base64-encoded skill zip bundle."}},"type":"object","required":["type","media_type","data"],"description":"Inline skill payload"}}},"name":"Create eval run","id":"openai.createevalrun","example":{"path":{"eval_id":"example"},"body":{"data_source":{"type":"jsonl","source":{"type":"file_content","content":[]}}}},"maxRequests":1,"summary":false}}