{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/orq/main/json-schema/orq-invoke-deployment-request-schema.json",
  "title": "InvokeDeploymentRequest",
  "description": "The deployment request payload",
  "x-generated": "2026-10-21",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/orq-openapi.json#/components/schemas/InvokeDeploymentRequest",
  "type": "object",
  "properties": {
    "key": {
      "type": "string",
      "description": "The deployment key to invoke"
    },
    "stream": {
      "type": "boolean",
      "default": false,
      "description": "If set, partial message content will be sent. Tokens will be sent as data-only `server-sent events` as they become available, with the stream terminated by a `data: [DONE]` message."
    },
    "inputs": {
      "type": "object",
      "additionalProperties": {},
      "description": "Key-value pairs variables to replace in your prompts. If a variable is not provided that is defined in the prompt, the default variables are used."
    },
    "context": {
      "type": "object",
      "additionalProperties": {},
      "description": "Key-value pairs that match your data model and fields declared in your deployment routing configuration"
    },
    "prefix_messages": {
      "type": "array",
      "items": {
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "role": {
                "type": "string",
                "enum": [
                  "system"
                ],
                "description": "The role of the messages author, in this case `system`."
              },
              "content": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The contents of the system message."
                  },
                  {
                    "type": "array",
                    "items": {
                      "$ref": "#/$defs/TextContentPartSchema"
                    },
                    "minItems": 1,
                    "description": "An array of content parts with a defined type. For system messages, only type `text` is supported."
                  }
                ],
                "description": "The contents of the system message."
              },
              "name": {
                "type": "string",
                "description": "An optional name for the participant. Provides the model information to differentiate between participants of the same role."
              }
            },
            "required": [
              "role",
              "content"
            ],
            "title": "System message",
            "description": "Developer-provided instructions that the model should follow, regardless of messages sent by the user."
          },
          {
            "type": "object",
            "properties": {
              "role": {
                "type": "string",
                "enum": [
                  "developer"
                ],
                "description": "The role of the messages author, in this case  `developer`."
              },
              "content": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The contents of the developer message."
                  },
                  {
                    "type": "array",
                    "items": {
                      "$ref": "#/$defs/TextContentPartSchema"
                    },
                    "minItems": 1,
                    "description": "An array of content parts with a defined type. For developer messages, only type `text` is supported."
                  }
                ],
                "description": "The contents of the developer message."
              },
              "name": {
                "type": "string",
                "description": "An optional name for the participant. Provides the model information to differentiate between participants of the same role."
              }
            },
            "required": [
              "role",
              "content"
            ],
            "title": "Developer message"
          },
          {
            "type": "object",
            "properties": {
              "role": {
                "type": "string",
                "enum": [
                  "user"
                ],
                "description": "The role of the messages author, in this case `user`."
              },
              "name": {
                "type": "string",
                "description": "An optional name for the participant. Provides the model information to differentiate between participants of the same role."
              },
              "content": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The text contents of the message."
                  },
                  {
                    "type": "array",
                    "items": {
                      "oneOf": [
                        {
                          "$ref": "#/$defs/TextContentPartSchema"
                        },
                        {
                          "$ref": "#/$defs/ImageContentPartSchema"
                        },
                        {
                          "$ref": "#/$defs/AudioContentPartSchema"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "file"
                              ],
                              "description": "The type of the content part. Always `file`."
                            },
                            "cache_control": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "ephemeral"
                                  ],
                                  "description": "Create a cache control breakpoint at this content block. Accepts only the value \"ephemeral\"."
                                },
                                "ttl": {
                                  "type": "string",
                                  "enum": [
                                    "5m",
                                    "1h"
                                  ],
                                  "default": "5m",
                                  "description": "The time-to-live for the cache control breakpoint. This may be one of the following values:\n\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. Only supported by `Anthropic` Claude models."
                                }
                              },
                              "required": [
                                "type"
                              ]
                            },
                            "file": {
                              "$ref": "#/$defs/FileContentPartSchema"
                            }
                          },
                          "required": [
                            "type",
                            "file"
                          ]
                        }
                      ]
                    },
                    "description": "An array of content parts with a defined type. Supported options differ based on the model being used to generate the response. Can contain text, image, or audio inputs."
                  }
                ],
                "description": "The contents of the user message."
              }
            },
            "required": [
              "role",
              "content"
            ],
            "title": "User message"
          },
          {
            "type": "object",
            "properties": {
              "reasoning_content": {
                "type": "string",
                "description": "Provider reasoning content that must be replayed with assistant tool calls when continuing a reasoning-model conversation."
              },
              "content": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The contents of the assistant message."
                  },
                  {
                    "type": "array",
                    "items": {
                      "oneOf": [
                        {
                          "$ref": "#/$defs/TextContentPartSchema"
                        },
                        {
                          "$ref": "#/$defs/RefusalPartSchema"
                        },
                        {
                          "$ref": "#/$defs/ReasoningPartSchema"
                        },
                        {
                          "$ref": "#/$defs/RedactedReasoningPartSchema"
                        }
                      ]
                    },
                    "description": "An array of content parts with a defined type. Can be one or more of type `text`, or exactly one of type `refusal`."
                  },
                  {
                    "type": "null"
                  }
                ],
                "description": "The contents of the assistant message. Required unless `tool_calls` or `function_call` is specified."
              },
              "refusal": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "The refusal message by the assistant."
              },
              "role": {
                "type": "string",
                "enum": [
                  "assistant"
                ],
                "description": "The role of the messages author, in this case `assistant`."
              },
              "name": {
                "type": "string",
                "description": "An optional name for the participant. Provides the model information to differentiate between participants of the same role."
              },
              "audio": {
                "type": [
                  "object",
                  "null"
                ],
                "properties": {
                  "id": {
                    "type": "string",
                    "description": "Unique identifier for a previous audio response from the model."
                  }
                },
                "required": [
                  "id"
                ],
                "description": "Data about a previous audio response from the model. "
              },
              "tool_calls": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "description": "The ID of the tool call."
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "function"
                      ],
                      "description": "The type of the tool. Currently, only `function` is supported."
                    },
                    "function": {
                      "type": "object",
                      "properties": {
                        "name": {
                          "type": "string",
                          "description": "The name of the function to call."
                        },
                        "arguments": {
                          "type": "string",
                          "description": "The arguments to call the function with, as generated by the model in JSON format. Note that the model does not always generate valid JSON, and may hallucinate parameters not defined by your function schema. Validate the arguments in your code before calling your function."
                        }
                      }
                    },
                    "thought_signature": {
                      "type": "string",
                      "description": "Encrypted representation of the model internal reasoning state during function calling. Required by Gemini 3 models when continuing a conversation after a tool call."
                    }
                  },
                  "required": [
                    "id",
                    "type",
                    "function"
                  ]
                },
                "description": "The tool calls generated by the model, such as function calls."
              }
            },
            "required": [
              "role"
            ],
            "title": "Assistant message"
          },
          {
            "type": "object",
            "properties": {
              "role": {
                "type": "string",
                "enum": [
                  "tool"
                ],
                "description": "The role of the messages author, in this case tool."
              },
              "content": {
                "anyOf": [
                  {
                    "type": "string"
                  },
                  {
                    "type": "array",
                    "items": {
                      "oneOf": [
                        {
                          "$ref": "#/$defs/TextContentPartSchema"
                        }
                      ]
                    }
                  }
                ],
                "description": "The contents of the tool message."
              },
              "tool_call_id": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "Tool call that this message is responding to."
              },
              "cache_control": {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "ephemeral"
                    ],
                    "description": "Create a cache control breakpoint at this content block. Accepts only the value \"ephemeral\"."
                  },
                  "ttl": {
                    "type": "string",
                    "enum": [
                      "5m",
                      "1h"
                    ],
                    "default": "5m",
                    "description": "The time-to-live for the cache control breakpoint. This may be one of the following values:\n\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. Only supported by `Anthropic` Claude models."
                  }
                },
                "required": [
                  "type"
                ]
              }
            },
            "required": [
              "role",
              "content",
              "tool_call_id"
            ],
            "title": "Tool message"
          }
        ]
      },
      "description": "A list of messages to include after the `System` message, but before the  `User` and `Assistant` pairs configured in your deployment."
    },
    "messages": {
      "type": "array",
      "items": {
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "role": {
                "type": "string",
                "enum": [
                  "system"
                ],
                "description": "The role of the messages author, in this case `system`."
              },
              "content": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The contents of the system message."
                  },
                  {
                    "type": "array",
                    "items": {
                      "$ref": "#/$defs/TextContentPartSchema"
                    },
                    "minItems": 1,
                    "description": "An array of content parts with a defined type. For system messages, only type `text` is supported."
                  }
                ],
                "description": "The contents of the system message."
              },
              "name": {
                "type": "string",
                "description": "An optional name for the participant. Provides the model information to differentiate between participants of the same role."
              }
            },
            "required": [
              "role",
              "content"
            ],
            "title": "System message",
            "description": "Developer-provided instructions that the model should follow, regardless of messages sent by the user."
          },
          {
            "type": "object",
            "properties": {
              "role": {
                "type": "string",
                "enum": [
                  "developer"
                ],
                "description": "The role of the messages author, in this case  `developer`."
              },
              "content": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The contents of the developer message."
                  },
                  {
                    "type": "array",
                    "items": {
                      "$ref": "#/$defs/TextContentPartSchema"
                    },
                    "minItems": 1,
                    "description": "An array of content parts with a defined type. For developer messages, only type `text` is supported."
                  }
                ],
                "description": "The contents of the developer message."
              },
              "name": {
                "type": "string",
                "description": "An optional name for the participant. Provides the model information to differentiate between participants of the same role."
              }
            },
            "required": [
              "role",
              "content"
            ],
            "title": "Developer message"
          },
          {
            "type": "object",
            "properties": {
              "role": {
                "type": "string",
                "enum": [
                  "user"
                ],
                "description": "The role of the messages author, in this case `user`."
              },
              "name": {
                "type": "string",
                "description": "An optional name for the participant. Provides the model information to differentiate between participants of the same role."
              },
              "content": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The text contents of the message."
                  },
                  {
                    "type": "array",
                    "items": {
                      "oneOf": [
                        {
                          "$ref": "#/$defs/TextContentPartSchema"
                        },
                        {
                          "$ref": "#/$defs/ImageContentPartSchema"
                        },
                        {
                          "$ref": "#/$defs/AudioContentPartSchema"
                        },
                        {
                          "type": "object",
                          "properties": {
                            "type": {
                              "type": "string",
                              "enum": [
                                "file"
                              ],
                              "description": "The type of the content part. Always `file`."
                            },
                            "cache_control": {
                              "type": "object",
                              "properties": {
                                "type": {
                                  "type": "string",
                                  "enum": [
                                    "ephemeral"
                                  ],
                                  "description": "Create a cache control breakpoint at this content block. Accepts only the value \"ephemeral\"."
                                },
                                "ttl": {
                                  "type": "string",
                                  "enum": [
                                    "5m",
                                    "1h"
                                  ],
                                  "default": "5m",
                                  "description": "The time-to-live for the cache control breakpoint. This may be one of the following values:\n\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. Only supported by `Anthropic` Claude models."
                                }
                              },
                              "required": [
                                "type"
                              ]
                            },
                            "file": {
                              "$ref": "#/$defs/FileContentPartSchema"
                            }
                          },
                          "required": [
                            "type",
                            "file"
                          ]
                        }
                      ]
                    },
                    "description": "An array of content parts with a defined type. Supported options differ based on the model being used to generate the response. Can contain text, image, or audio inputs."
                  }
                ],
                "description": "The contents of the user message."
              }
            },
            "required": [
              "role",
              "content"
            ],
            "title": "User message"
          },
          {
            "type": "object",
            "properties": {
              "reasoning_content": {
                "type": "string",
                "description": "Provider reasoning content that must be replayed with assistant tool calls when continuing a reasoning-model conversation."
              },
              "content": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The contents of the assistant message."
                  },
                  {
                    "type": "array",
                    "items": {
                      "oneOf": [
                        {
                          "$ref": "#/$defs/TextContentPartSchema"
                        },
                        {
                          "$ref": "#/$defs/RefusalPartSchema"
                        },
                        {
                          "$ref": "#/$defs/ReasoningPartSchema"
                        },
                        {
                          "$ref": "#/$defs/RedactedReasoningPartSchema"
                        }
                      ]
                    },
                    "description": "An array of content parts with a defined type. Can be one or more of type `text`, or exactly one of type `refusal`."
                  },
                  {
                    "type": "null"
                  }
                ],
                "description": "The contents of the assistant message. Required unless `tool_calls` or `function_call` is specified."
              },
              "refusal": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "The refusal message by the assistant."
              },
              "role": {
                "type": "string",
                "enum": [
                  "assistant"
                ],
                "description": "The role of the messages author, in this case `assistant`."
              },
              "name": {
                "type": "string",
                "description": "An optional name for the participant. Provides the model information to differentiate between participants of the same role."
              },
              "audio": {
                "type": [
                  "object",
                  "null"
                ],
                "properties": {
                  "id": {
                    "type": "string",
                    "description": "Unique identifier for a previous audio response from the model."
                  }
                },
                "required": [
                  "id"
                ],
                "description": "Data about a previous audio response from the model. "
              },
              "tool_calls": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "description": "The ID of the tool call."
                    },
                    "type": {
                      "type": "string",
                      "enum": [
                        "function"
                      ],
                      "description": "The type of the tool. Currently, only `function` is supported."
                    },
                    "function": {
                      "type": "object",
                      "properties": {
                        "name": {
                          "type": "string",
                          "description": "The name of the function to call."
                        },
                        "arguments": {
                          "type": "string",
                          "description": "The arguments to call the function with, as generated by the model in JSON format. Note that the model does not always generate valid JSON, and may hallucinate parameters not defined by your function schema. Validate the arguments in your code before calling your function."
                        }
                      }
                    },
                    "thought_signature": {
                      "type": "string",
                      "description": "Encrypted representation of the model internal reasoning state during function calling. Required by Gemini 3 models when continuing a conversation after a tool call."
                    }
                  },
                  "required": [
                    "id",
                    "type",
                    "function"
                  ]
                },
                "description": "The tool calls generated by the model, such as function calls."
              }
            },
            "required": [
              "role"
            ],
            "title": "Assistant message"
          },
          {
            "type": "object",
            "properties": {
              "role": {
                "type": "string",
                "enum": [
                  "tool"
                ],
                "description": "The role of the messages author, in this case tool."
              },
              "content": {
                "anyOf": [
                  {
                    "type": "string"
                  },
                  {
                    "type": "array",
                    "items": {
                      "oneOf": [
                        {
                          "$ref": "#/$defs/TextContentPartSchema"
                        }
                      ]
                    }
                  }
                ],
                "description": "The contents of the tool message."
              },
              "tool_call_id": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "Tool call that this message is responding to."
              },
              "cache_control": {
                "type": "object",
                "properties": {
                  "type": {
                    "type": "string",
                    "enum": [
                      "ephemeral"
                    ],
                    "description": "Create a cache control breakpoint at this content block. Accepts only the value \"ephemeral\"."
                  },
                  "ttl": {
                    "type": "string",
                    "enum": [
                      "5m",
                      "1h"
                    ],
                    "default": "5m",
                    "description": "The time-to-live for the cache control breakpoint. This may be one of the following values:\n\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. Only supported by `Anthropic` Claude models."
                  }
                },
                "required": [
                  "type"
                ]
              }
            },
            "required": [
              "role",
              "content",
              "tool_call_id"
            ],
            "title": "Tool message"
          }
        ]
      },
      "description": "A list of messages to send to the deployment."
    },
    "identity": {
      "$ref": "#/$defs/PublicIdentity"
    },
    "file_ids": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "maxItems": 100,
      "description": "A list of file IDs that are associated with the deployment request."
    },
    "metadata": {
      "type": "object",
      "additionalProperties": {},
      "description": "Key-value pairs that you want to attach to the log generated by this request."
    },
    "extra_params": {
      "type": "object",
      "additionalProperties": {},
      "description": "Utilized for passing additional parameters to the model provider. Exercise caution when using this feature, as the included parameters will overwrite any parameters specified in the deployment prompt configuration."
    },
    "documents": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "text": {
            "type": "string",
            "description": "The text content of the document"
          },
          "metadata": {
            "type": "object",
            "properties": {
              "file_name": {
                "type": "string",
                "description": "Name of the file the text is from."
              },
              "file_type": {
                "type": "string",
                "description": "Content type of the file the text is from."
              },
              "page_number": {
                "type": "number",
                "description": "The page number the text is from."
              }
            },
            "description": "Metadata about the document"
          }
        },
        "required": [
          "text"
        ]
      },
      "description": "A list of documents from your external knowledge base (e.g., chunks retrieved from your own vector database or RAG pipeline) that provide context for the model response. These documents can be used by evaluators and guardrails to assess the relevance and accuracy of the model output against the provided context."
    },
    "invoke_options": {
      "type": "object",
      "properties": {
        "include_retrievals": {
          "type": "boolean",
          "default": false,
          "description": "Whether to include the retrieved knowledge chunks in the response."
        },
        "include_usage": {
          "type": "boolean",
          "default": false,
          "description": "Whether to include the usage metrics in the response."
        },
        "mock_response": {
          "type": "string",
          "description": "A mock response to use instead of calling the LLM API. This is useful for testing purposes. When provided, the system will return a response object with this content as the completion, without making an actual API call to the LLM provider. This works for both streaming and non-streaming requests. Mock responses will not generate logs, traces or be counted for your plan usage."
        }
      }
    },
    "thread": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "description": "Unique thread identifier to group related invocations."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Optional tags to differentiate or categorize threads"
        }
      },
      "required": [
        "id"
      ]
    },
    "knowledge_filter": {
      "anyOf": [
        {
          "type": "object",
          "additionalProperties": {
            "anyOf": [
              {
                "type": "object",
                "properties": {
                  "eq": {
                    "anyOf": [
                      {
                        "type": "string",
                        "title": "string",
                        "description": "String"
                      },
                      {
                        "type": "number",
                        "title": "number",
                        "description": "Number"
                      },
                      {
                        "type": "boolean",
                        "title": "boolean",
                        "description": "Boolean"
                      }
                    ]
                  }
                },
                "required": [
                  "eq"
                ],
                "title": "eq",
                "description": "Equal to"
              },
              {
                "type": "object",
                "properties": {
                  "ne": {
                    "anyOf": [
                      {
                        "type": "string",
                        "title": "string",
                        "description": "String"
                      },
                      {
                        "type": "number",
                        "title": "number",
                        "description": "Number"
                      },
                      {
                        "type": "boolean",
                        "title": "boolean",
                        "description": "Boolean"
                      }
                    ]
                  }
                },
                "required": [
                  "ne"
                ],
                "title": "ne",
                "description": "Not equal to"
              },
              {
                "type": "object",
                "properties": {
                  "gt": {
                    "type": "number"
                  }
                },
                "required": [
                  "gt"
                ],
                "title": "gt",
                "description": "Greater than"
              },
              {
                "type": "object",
                "properties": {
                  "gte": {
                    "type": "number"
                  }
                },
                "required": [
                  "gte"
                ],
                "title": "gte",
                "description": "Greater than or equal to"
              },
              {
                "type": "object",
                "properties": {
                  "lt": {
                    "type": "number"
                  }
                },
                "required": [
                  "lt"
                ],
                "title": "lt",
                "description": "Less than"
              },
              {
                "type": "object",
                "properties": {
                  "lte": {
                    "type": "number"
                  }
                },
                "required": [
                  "lte"
                ],
                "title": "lte",
                "description": "Less than or equal to"
              },
              {
                "type": "object",
                "properties": {
                  "in": {
                    "type": "array",
                    "items": {
                      "anyOf": [
                        {
                          "type": "string",
                          "title": "string",
                          "description": "String"
                        },
                        {
                          "type": "number",
                          "title": "number",
                          "description": "Number"
                        },
                        {
                          "type": "boolean",
                          "title": "boolean",
                          "description": "Boolean"
                        }
                      ]
                    }
                  }
                },
                "required": [
                  "in"
                ],
                "title": "in",
                "description": "In"
              },
              {
                "type": "object",
                "properties": {
                  "nin": {
                    "type": "array",
                    "items": {
                      "anyOf": [
                        {
                          "type": "string",
                          "title": "string",
                          "description": "String"
                        },
                        {
                          "type": "number",
                          "title": "number",
                          "description": "Number"
                        },
                        {
                          "type": "boolean",
                          "title": "boolean",
                          "description": "Boolean"
                        }
                      ]
                    }
                  }
                },
                "required": [
                  "nin"
                ],
                "title": "nin",
                "description": "Not in"
              }
            ]
          },
          "title": "Search operator"
        },
        {
          "type": "object",
          "properties": {
            "and": {
              "type": "array",
              "items": {
                "type": "object",
                "additionalProperties": {
                  "anyOf": [
                    {
                      "type": "object",
                      "properties": {
                        "eq": {
                          "anyOf": [
                            {
                              "type": "string",
                              "title": "string",
                              "description": "String"
                            },
                            {
                              "type": "number",
                              "title": "number",
                              "description": "Number"
                            },
                            {
                              "type": "boolean",
                              "title": "boolean",
                              "description": "Boolean"
                            }
                          ]
                        }
                      },
                      "required": [
                        "eq"
                      ],
                      "title": "eq",
                      "description": "Equal to"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "ne": {
                          "anyOf": [
                            {
                              "type": "string",
                              "title": "string",
                              "description": "String"
                            },
                            {
                              "type": "number",
                              "title": "number",
                              "description": "Number"
                            },
                            {
                              "type": "boolean",
                              "title": "boolean",
                              "description": "Boolean"
                            }
                          ]
                        }
                      },
                      "required": [
                        "ne"
                      ],
                      "title": "ne",
                      "description": "Not equal to"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "gt": {
                          "type": "number"
                        }
                      },
                      "required": [
                        "gt"
                      ],
                      "title": "gt",
                      "description": "Greater than"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "gte": {
                          "type": "number"
                        }
                      },
                      "required": [
                        "gte"
                      ],
                      "title": "gte",
                      "description": "Greater than or equal to"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "lt": {
                          "type": "number"
                        }
                      },
                      "required": [
                        "lt"
                      ],
                      "title": "lt",
                      "description": "Less than"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "lte": {
                          "type": "number"
                        }
                      },
                      "required": [
                        "lte"
                      ],
                      "title": "lte",
                      "description": "Less than or equal to"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "in": {
                          "type": "array",
                          "items": {
                            "anyOf": [
                              {
                                "type": "string",
                                "title": "string",
                                "description": "String"
                              },
                              {
                                "type": "number",
                                "title": "number",
                                "description": "Number"
                              },
                              {
                                "type": "boolean",
                                "title": "boolean",
                                "description": "Boolean"
                              }
                            ]
                          }
                        }
                      },
                      "required": [
                        "in"
                      ],
                      "title": "in",
                      "description": "In"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "nin": {
                          "type": "array",
                          "items": {
                            "anyOf": [
                              {
                                "type": "string",
                                "title": "string",
                                "description": "String"
                              },
                              {
                                "type": "number",
                                "title": "number",
                                "description": "Number"
                              },
                              {
                                "type": "boolean",
                                "title": "boolean",
                                "description": "Boolean"
                              }
                            ]
                          }
                        }
                      },
                      "required": [
                        "nin"
                      ],
                      "title": "nin",
                      "description": "Not in"
                    }
                  ]
                }
              }
            }
          },
          "required": [
            "and"
          ],
          "title": "and",
          "description": "And"
        },
        {
          "type": "object",
          "properties": {
            "or": {
              "type": "array",
              "items": {
                "type": "object",
                "additionalProperties": {
                  "anyOf": [
                    {
                      "type": "object",
                      "properties": {
                        "eq": {
                          "anyOf": [
                            {
                              "type": "string",
                              "title": "string",
                              "description": "String"
                            },
                            {
                              "type": "number",
                              "title": "number",
                              "description": "Number"
                            },
                            {
                              "type": "boolean",
                              "title": "boolean",
                              "description": "Boolean"
                            }
                          ]
                        }
                      },
                      "required": [
                        "eq"
                      ],
                      "title": "eq",
                      "description": "Equal to"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "ne": {
                          "anyOf": [
                            {
                              "type": "string",
                              "title": "string",
                              "description": "String"
                            },
                            {
                              "type": "number",
                              "title": "number",
                              "description": "Number"
                            },
                            {
                              "type": "boolean",
                              "title": "boolean",
                              "description": "Boolean"
                            }
                          ]
                        }
                      },
                      "required": [
                        "ne"
                      ],
                      "title": "ne",
                      "description": "Not equal to"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "gt": {
                          "type": "number"
                        }
                      },
                      "required": [
                        "gt"
                      ],
                      "title": "gt",
                      "description": "Greater than"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "gte": {
                          "type": "number"
                        }
                      },
                      "required": [
                        "gte"
                      ],
                      "title": "gte",
                      "description": "Greater than or equal to"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "lt": {
                          "type": "number"
                        }
                      },
                      "required": [
                        "lt"
                      ],
                      "title": "lt",
                      "description": "Less than"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "lte": {
                          "type": "number"
                        }
                      },
                      "required": [
                        "lte"
                      ],
                      "title": "lte",
                      "description": "Less than or equal to"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "in": {
                          "type": "array",
                          "items": {
                            "anyOf": [
                              {
                                "type": "string",
                                "title": "string",
                                "description": "String"
                              },
                              {
                                "type": "number",
                                "title": "number",
                                "description": "Number"
                              },
                              {
                                "type": "boolean",
                                "title": "boolean",
                                "description": "Boolean"
                              }
                            ]
                          }
                        }
                      },
                      "required": [
                        "in"
                      ],
                      "title": "in",
                      "description": "In"
                    },
                    {
                      "type": "object",
                      "properties": {
                        "nin": {
                          "type": "array",
                          "items": {
                            "anyOf": [
                              {
                                "type": "string",
                                "title": "string",
                                "description": "String"
                              },
                              {
                                "type": "number",
                                "title": "number",
                                "description": "Number"
                              },
                              {
                                "type": "boolean",
                                "title": "boolean",
                                "description": "Boolean"
                              }
                            ]
                          }
                        }
                      },
                      "required": [
                        "nin"
                      ],
                      "title": "nin",
                      "description": "Not in"
                    }
                  ]
                }
              }
            }
          },
          "required": [
            "or"
          ],
          "title": "or",
          "description": "Or"
        }
      ],
      "description": "A filter to apply to the knowledge base chunk metadata when using  knowledge bases in the deployment."
    }
  },
  "required": [
    "key"
  ],
  "$defs": {
    "AudioContentPartSchema": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "input_audio"
          ]
        },
        "input_audio": {
          "type": "object",
          "properties": {
            "data": {
              "type": "string",
              "description": "Base64 encoded audio data."
            },
            "format": {
              "type": "string",
              "enum": [
                "mp3",
                "wav"
              ],
              "description": "The format of the encoded audio data. Currently supports `wav` and `mp3`."
            }
          },
          "required": [
            "data",
            "format"
          ]
        }
      },
      "required": [
        "type",
        "input_audio"
      ],
      "title": "Audio content part",
      "description": "An audio content part"
    },
    "ImageContentPartSchema": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "image_url"
          ]
        },
        "image_url": {
          "type": "object",
          "properties": {
            "url": {
              "type": "string",
              "description": "Either a URL of the image or the base64 encoded image data."
            },
            "detail": {
              "type": "string",
              "enum": [
                "low",
                "high",
                "auto"
              ],
              "description": "Specifies the detail level of the image."
            }
          },
          "required": [
            "url"
          ]
        },
        "cache_control": {
          "type": "object",
          "properties": {
            "type": {
              "type": "string",
              "enum": [
                "ephemeral"
              ],
              "description": "Create a cache control breakpoint at this content block. Accepts only the value \"ephemeral\"."
            },
            "ttl": {
              "type": "string",
              "enum": [
                "5m",
                "1h"
              ],
              "default": "5m",
              "description": "The time-to-live for the cache control breakpoint. This may be one of the following values:\n\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. Only supported by `Anthropic` Claude models."
            }
          },
          "required": [
            "type"
          ]
        }
      },
      "required": [
        "type",
        "image_url"
      ],
      "title": "Image content part",
      "description": "An image content part"
    },
    "PublicIdentity": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "description": "Unique identifier for the contact"
        },
        "display_name": {
          "type": "string",
          "description": "Display name of the contact"
        },
        "email": {
          "type": "string",
          "format": "email",
          "description": "Email address of the contact"
        },
        "metadata": {
          "type": "array",
          "items": {
            "type": "object",
            "additionalProperties": {}
          },
          "description": "A hash of key/value pairs containing any other data about the contact"
        },
        "logo_url": {
          "type": "string",
          "description": "URL to the contact's avatar or logo"
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "A list of tags associated with the contact"
        }
      },
      "required": [
        "id"
      ],
      "description": "Information about the identity making the request. If the identity does not exist, it will be created automatically."
    },
    "ReasoningPartSchema": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "reasoning"
          ],
          "description": "The type of the content part. Always `reasoning`."
        },
        "reasoning": {
          "type": "string",
          "description": "The reasoning or thought process behind the response. Used for chain-of-thought or extended thinking."
        },
        "signature": {
          "type": "string",
          "description": "Optional cryptographic signature to verify the authenticity and integrity of the reasoning content"
        }
      },
      "required": [
        "type",
        "reasoning",
        "signature"
      ],
      "title": "Reasoning Part",
      "description": "A message part containing reasoning or chain-of-thought content"
    },
    "RedactedReasoningPartSchema": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "redacted_reasoning"
          ],
          "description": "The type of the content part. Always `reasoning`."
        },
        "data": {
          "type": "string",
          "description": "The encrypted reasoning or thought process behind the response. Used for chain-of-thought or extended thinking."
        }
      },
      "required": [
        "type",
        "data"
      ],
      "title": "Reasoning Part",
      "description": "A message part containing reasoning or chain-of-thought content"
    },
    "RefusalPartSchema": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "refusal"
          ],
          "description": "The type of the content part. Always `refusal`."
        },
        "refusal": {
          "type": "string",
          "description": "The refusal message generated by the model."
        }
      },
      "required": [
        "type"
      ],
      "title": "Refusal part",
      "description": "A message part containing a refusal message."
    },
    "TextContentPartSchema": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "text"
          ],
          "description": "The type of the content part."
        },
        "text": {
          "type": "string",
          "description": "The text content."
        },
        "cache_control": {
          "type": "object",
          "properties": {
            "type": {
              "type": "string",
              "enum": [
                "ephemeral"
              ],
              "description": "Create a cache control breakpoint at this content block. Accepts only the value \"ephemeral\"."
            },
            "ttl": {
              "type": "string",
              "enum": [
                "5m",
                "1h"
              ],
              "default": "5m",
              "description": "The time-to-live for the cache control breakpoint. This may be one of the following values:\n\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. Only supported by `Anthropic` Claude models."
            }
          },
          "required": [
            "type"
          ]
        }
      },
      "required": [
        "type",
        "text"
      ],
      "title": "Text content part",
      "description": "The type of the content part."
    }
  }
}