---
title: "Create a response"
method: POST
path: "/v1/responses"
tags: ["responses"]
---

# Create a response

`POST /v1/responses`

Create a model response, optionally grounded in store search.

Supports the OpenAI Responses API subset: text input or item lists, function
tools, conversation persistence via `store` and chaining via
`previous_response_id`, and streaming via server-sent events. The Mixedbread
hosted tools run server-side against the caller's stores and are all active
by default: `store_search` (semantic search), `store_grep` (regular-expression
match over chunk text), `store_list_chunks` (metadata filtering and ranking by
a numeric metadata field), `store_metadata_facets` (the metadata keys and
values available for filtering) and `list_stores` (paginated listing of the
caller's stores with their connectors). Hosted tools are disabled by declaring
them with `enabled: false`.

## Request body

- ResponseCreateParams — Request body for POST /v1/responses.
  - `model` string, nullable — Accepted for OpenAI SDK compatibility and ignored; the platform selects the model
  - `input` union, required — Text input or a list of input items (messages, function call outputs)
    - string
    - union[]
      - union
        - MessageItem — Conversation message; used both as input item and assistant output item.
          - `type` 'message'
          - `id` string, nullable
          - `role` 'user' | 'assistant' | 'system' | 'developer', required
          - `content` union, required
            - string
            - union[]
              - …
          - `status` 'in_progress' | 'completed' | 'incomplete', nullable
        - StoreSearchCallItemInput — Output item recording one server-side store search execution.
          - `type` 'store_search_call'
          - `id` string, required
          - `status` 'in_progress' | 'searching' | 'completed' | 'failed'
          - `queries` string[]
          - `metadata_filters` MetadataFilter[], nullable
            - `key` string, required — Metadata field key
            - `operator` 'eq' | 'not_eq' | 'gt' | 'gte' | 'lt' | 'lte' | 'in' | 'not_in' | 'like' | 'contains' | 'starts_with' | 'not_like' | 'regex', required — Operator for a filter condition.
            - `value` union, required — Value to compare against. Use a list for `in`/`not_in`.
              - …
          - `filter_mode` 'all' | 'any'
          - `store` string, nullable
          - `results` StoreSearchResult[], nullable
            - `index` integer, nullable
            - `store_id` string, required
            - `file_id` string, required
            - `chunk_index` integer, required
            - `filename` string, nullable
            - `mime_type` string, nullable
            - `score` number, required
            - `text` string, nullable
            - `ocr_text` string, nullable
            - `transcription` string, nullable
            - `summary` string, nullable
            - `metadata` unknown
            - `generated_metadata` unknown
          - `error` ToolCallError — Machine-readable reason a hosted tool call failed (Mixedbread extension).
            - `code` 'permission_denied' | 'invalid_arguments' | 'server_error', required
            - `message` string, required
        - StoreGrepCallItemInput — Output item recording one server-side grep execution.
          - `type` 'store_grep_call'
          - `id` string, required
          - `status` 'in_progress' | 'searching' | 'completed' | 'failed'
          - `pattern` string, nullable
          - `targets` StoreChunkGrepTarget[], nullable
          - `case_sensitive` boolean
          - `metadata_filters` MetadataFilter[], nullable
            - `key` string, required — Metadata field key
            - `operator` 'eq' | 'not_eq' | 'gt' | 'gte' | 'lt' | 'lte' | 'in' | 'not_in' | 'like' | 'contains' | 'starts_with' | 'not_like' | 'regex', required — Operator for a filter condition.
            - `value` union, required — Value to compare against. Use a list for `in`/`not_in`.
              - …
          - `filter_mode` 'all' | 'any'
          - `store` string, nullable
          - `results` StoreSearchResult[], nullable
            - `index` integer, nullable
            - `store_id` string, required
            - `file_id` string, required
            - `chunk_index` integer, required
            - `filename` string, nullable
            - `mime_type` string, nullable
            - `score` number, required
            - `text` string, nullable
            - `ocr_text` string, nullable
            - `transcription` string, nullable
            - `summary` string, nullable
            - `metadata` unknown
            - `generated_metadata` unknown
          - `error` ToolCallError — Machine-readable reason a hosted tool call failed (Mixedbread extension).
            - `code` 'permission_denied' | 'invalid_arguments' | 'server_error', required
            - `message` string, required
        - StoreListChunksCallItemInput — Output item recording one server-side metadata-driven chunk listing.
          - `type` 'store_list_chunks_call'
          - `id` string, required
          - `status` 'in_progress' | 'completed' | 'failed'
          - `metadata_filters` MetadataFilter[], nullable
            - `key` string, required — Metadata field key
            - `operator` 'eq' | 'not_eq' | 'gt' | 'gte' | 'lt' | 'lte' | 'in' | 'not_in' | 'like' | 'contains' | 'starts_with' | 'not_like' | 'regex', required — Operator for a filter condition.
            - `value` union, required — Value to compare against. Use a list for `in`/`not_in`.
              - …
          - `filter_mode` 'all' | 'any'
          - `rank_by` string, nullable
          - `direction` 'asc' | 'desc'
          - `store` string, nullable
          - `results` StoreSearchResult[], nullable
            - `index` integer, nullable
            - `store_id` string, required
            - `file_id` string, required
            - `chunk_index` integer, required
            - `filename` string, nullable
            - `mime_type` string, nullable
            - `score` number, required
            - `text` string, nullable
            - `ocr_text` string, nullable
            - `transcription` string, nullable
            - `summary` string, nullable
            - `metadata` unknown
            - `generated_metadata` unknown
          - `error` ToolCallError — Machine-readable reason a hosted tool call failed (Mixedbread extension).
            - `code` 'permission_denied' | 'invalid_arguments' | 'server_error', required
            - `message` string, required
        - MetadataFacetsCallItem — Output item recording one server-side metadata facets lookup.
          - `type` 'store_metadata_facets_call'
          - `id` string, required
          - `status` 'in_progress' | 'completed' | 'failed'
          - `store` string, nullable
          - `facets` object, nullable
          - `error` ToolCallError — Machine-readable reason a hosted tool call failed (Mixedbread extension).
            - `code` 'permission_denied' | 'invalid_arguments' | 'server_error', required
            - `message` string, required
        - ListStoresCallItem — Output item recording one server-side store listing execution.
          - `type` 'list_stores_call'
          - `id` string, required
          - `status` 'in_progress' | 'completed' | 'failed'
          - `cursor` string, nullable
          - `stores` ListStoresResult[], nullable
            - `name` string, required
            - `description` string, nullable
            - `connectors` string[] — Providers of the connectors ingesting into this store, e.g. slack or notion
          - `has_more` boolean
          - `next_cursor` string, nullable
          - `error` ToolCallError — Machine-readable reason a hosted tool call failed (Mixedbread extension).
            - `code` 'permission_denied' | 'invalid_arguments' | 'server_error', required
            - `message` string, required
        - FunctionCallItem
          - `type` 'function_call'
          - `id` string, nullable
          - `call_id` string, required
          - `name` string, required
          - `arguments` string, required
          - `status` 'in_progress' | 'completed' | 'incomplete', nullable
        - FunctionCallOutputItem
          - `type` 'function_call_output'
          - `id` string, nullable
          - `call_id` string, required
          - `output` string, required
          - `status` 'in_progress' | 'completed' | 'incomplete', nullable
  - `instructions` string, nullable — System instructions for this response
  - `tools` union[] — Tools the model may call; hosted tools without required configuration are active by default and can be disabled by declaring them with enabled=false
    - union
      - StoreSearchToolInput — Hosted tool: semantic search over the caller's stores, executed server-side.
        - `enabled` boolean — Set to false to disable the tool for this response
        - `store_identifiers` union[], nullable — IDs or names of the stores the tool runs against; omit to let the model pick a store per call, an empty list disables the tool
          - union
            - string
            - string, uuid
        - `type` 'store_search'
        - `max_num_results` integer — Number of chunks returned per search call
        - `filters` union — Optional filter conditions applied to every search
          - SearchFilterInput — Represents a filter with AND, OR, and NOT conditions.
            - `all` union[], nullable — List of conditions or filters to be ANDed together
              - …
            - `any` union[], nullable — List of conditions or filters to be ORed together
              - …
            - `none` union[], nullable — List of conditions or filters to be NOTed
              - …
          - SearchFilterCondition — Represents a condition with a field, operator, and value.
            - `key` string, required — The field to apply the condition on
            - `value` string, required — The value to compare against
            - `operator` 'eq' | 'not_eq' | 'gt' | 'gte' | 'lt' | 'lte' | 'in' | 'not_in' | 'like' | 'contains' | 'starts_with' | 'not_like' | 'regex', required — Operator for a filter condition.
          - union[]
            - union
              - …
        - `score_threshold` number — Minimum similarity score threshold
        - `citations` boolean — Cite sources in the answer as <cite i="..."/> tags referencing result index fields
      - StoreGrepToolInput — Hosted tool: regular-expression match over a store's chunks, executed server-side. grep runs the pattern against the literal chunk text — no embeddings, no reranker. It covers exactly one store per call, so with several pinned stores the model picks which of them to grep.
        - `enabled` boolean — Set to false to disable the tool for this response
        - `store_identifiers` union[], nullable — IDs or names of the stores the tool runs against; omit to let the model pick a store per call, an empty list disables the tool
          - union
            - string
            - string, uuid
        - `type` 'store_grep'
        - `max_num_results` integer — Number of chunks returned per grep call
        - `filters` union — Optional filter conditions applied to every grep
          - SearchFilterInput — Represents a filter with AND, OR, and NOT conditions.
            - `all` union[], nullable — List of conditions or filters to be ANDed together
              - …
            - `any` union[], nullable — List of conditions or filters to be ORed together
              - …
            - `none` union[], nullable — List of conditions or filters to be NOTed
              - …
          - SearchFilterCondition — Represents a condition with a field, operator, and value.
            - `key` string, required — The field to apply the condition on
            - `value` string, required — The value to compare against
            - `operator` 'eq' | 'not_eq' | 'gt' | 'gte' | 'lt' | 'lte' | 'in' | 'not_in' | 'like' | 'contains' | 'starts_with' | 'not_like' | 'regex', required — Operator for a filter condition.
          - union[]
            - union
              - …
        - `citations` boolean — Cite sources in the answer as <cite i="..."/> tags referencing result index fields
      - StoreListChunksToolInput — Hosted tool: metadata-driven listing of a store's chunks, executed server-side. No embeddings and no reranker: chunks are selected by metadata filters and optionally ordered by a numeric metadata field. It covers a single store per call, so with several pinned stores the model picks which one to list.
        - `enabled` boolean — Set to false to disable the tool for this response
        - `store_identifiers` union[], nullable — IDs or names of the stores the tool runs against; omit to let the model pick a store per call, an empty list disables the tool
          - union
            - string
            - string, uuid
        - `type` 'store_list_chunks'
        - `max_num_results` integer — Number of chunks returned per listing call
        - `filters` union — Optional filter conditions applied to every listing
          - SearchFilterInput — Represents a filter with AND, OR, and NOT conditions.
            - `all` union[], nullable — List of conditions or filters to be ANDed together
              - …
            - `any` union[], nullable — List of conditions or filters to be ORed together
              - …
            - `none` union[], nullable — List of conditions or filters to be NOTed
              - …
          - SearchFilterCondition — Represents a condition with a field, operator, and value.
            - `key` string, required — The field to apply the condition on
            - `value` string, required — The value to compare against
            - `operator` 'eq' | 'not_eq' | 'gt' | 'gte' | 'lt' | 'lte' | 'in' | 'not_in' | 'like' | 'contains' | 'starts_with' | 'not_like' | 'regex', required — Operator for a filter condition.
          - union[]
            - union
              - …
        - `citations` boolean — Cite sources in the answer as <cite i="..."/> tags referencing result index fields
      - MetadataFacetsToolInput — Hosted tool: metadata field/value overview of the caller's stores, executed server-side. Facets tell the model which metadata keys exist and what their values look like, so it can filter (`store_grep`, `store_list_chunks`) and phrase queries against real values instead of guessing.
        - `enabled` boolean — Set to false to disable the tool for this response
        - `store_identifiers` union[], nullable — IDs or names of the stores the tool runs against; omit to let the model pick a store per call, an empty list disables the tool
          - union
            - string
            - string, uuid
        - `type` 'store_metadata_facets'
        - `filters` union — Optional filter conditions restricting the files the facets are computed over
          - SearchFilterInput — Represents a filter with AND, OR, and NOT conditions.
            - `all` union[], nullable — List of conditions or filters to be ANDed together
              - …
            - `any` union[], nullable — List of conditions or filters to be ORed together
              - …
            - `none` union[], nullable — List of conditions or filters to be NOTed
              - …
          - SearchFilterCondition — Represents a condition with a field, operator, and value.
            - `key` string, required — The field to apply the condition on
            - `value` string, required — The value to compare against
            - `operator` 'eq' | 'not_eq' | 'gt' | 'gte' | 'lt' | 'lte' | 'in' | 'not_in' | 'like' | 'contains' | 'starts_with' | 'not_like' | 'regex', required — Operator for a filter condition.
          - union[]
            - union
              - …
        - `max_values_per_field` integer — Number of representative values reported per metadata field
      - ListStoresTool — Hosted tool: paginated listing of the caller's stores, executed server-side. Active by default; declare it with enabled=false to turn it off.
        - `type` 'list_stores'
        - `enabled` boolean — Set to false to disable the tool for this response
        - `limit` integer — Number of stores returned per listing call
      - FunctionTool — Client-executed function tool, as in the OpenAI Responses API.
        - `type` 'function'
        - `name` string, required
        - `description` string, nullable
        - `parameters` object, nullable
        - `strict` boolean, nullable
  - `tool_choice` union
    - 'auto' | 'none' | 'required'
    - ToolChoiceFunction — Force a call to a specific function tool, as in the OpenAI Responses API.
      - `type` 'function'
      - `name` string, required
    - ToolChoiceStoreSearch — Force a call to the hosted store search tool (analogous to OpenAI's hosted tool choice).
      - `type` 'store_search'
    - ToolChoiceListStores — Force a call to the hosted list stores tool (analogous to OpenAI's hosted tool choice).
      - `type` 'list_stores'
    - ToolChoiceStoreGrep — Force a call to the hosted store grep tool (analogous to OpenAI's hosted tool choice).
      - `type` 'store_grep'
    - ToolChoiceStoreListChunks — Force a call to the hosted list chunks tool (analogous to OpenAI's hosted tool choice).
      - `type` 'store_list_chunks'
    - ToolChoiceMetadataFacets — Force a call to the hosted metadata facets tool (analogous to OpenAI's hosted tool choice).
      - `type` 'store_metadata_facets'
  - `previous_response_id` string, nullable — ID of a stored response to continue from
  - `store` boolean — Whether to persist this response for later retrieval/chaining
  - `stream` boolean — Stream the response as server-sent events
  - `temperature` number, nullable
  - `top_p` number, nullable
  - `max_output_tokens` integer, nullable
  - `max_tool_calls` integer, nullable — Maximum number of store search calls executed for this response
  - `parallel_tool_calls` boolean
  - `metadata` object, nullable
  - `include` string[], nullable — Extra fields to include, e.g. store_search_call.results; unsupported values are ignored

## Response `200`

The generated response, or a server-sent event stream of response events

- Response — A response object, as returned by the API and persisted for chaining.
  - `id` string, required
  - `object` 'response'
  - `created_at` integer, required
  - `title` string, nullable — Short display title derived from the first user message (Mixedbread extension)
  - `status` 'in_progress' | 'completed' | 'failed' | 'incomplete', required — Lifecycle of a response; values mirror the official Responses API.
  - `error` ResponseError
    - `code` string, required
    - `message` string, required
  - `incomplete_details` IncompleteDetails
    - `reason` 'max_output_tokens' | 'content_filter', required
  - `instructions` string, nullable
  - `model` string, required
  - `output` union[]
    - union
      - MessageItem — Conversation message; used both as input item and assistant output item.
        - `type` 'message'
        - `id` string, nullable
        - `role` 'user' | 'assistant' | 'system' | 'developer', required
        - `content` union, required
          - string
          - union[]
            - union
              - …
        - `status` 'in_progress' | 'completed' | 'incomplete', nullable
      - StoreSearchCallItemOutput — Output item recording one server-side store search execution.
        - `type` 'store_search_call'
        - `id` string, required
        - `status` 'in_progress' | 'searching' | 'completed' | 'failed'
        - `queries` string[]
        - `metadata_filters` MetadataFilter[], nullable
          - `key` string, required — Metadata field key
          - `operator` 'eq' | 'not_eq' | 'gt' | 'gte' | 'lt' | 'lte' | 'in' | 'not_in' | 'like' | 'contains' | 'starts_with' | 'not_like' | 'regex', required — Operator for a filter condition.
          - `value` union, required — Value to compare against. Use a list for `in`/`not_in`.
            - string
            - integer
            - number
            - boolean
            - union[]
              - …
        - `filter_mode` 'all' | 'any'
        - `store` string, nullable
        - `results` StoreSearchResult[], nullable
          - `index` integer, nullable
          - `store_id` string, required
          - `file_id` string, required
          - `chunk_index` integer, required
          - `filename` string, nullable
          - `mime_type` string, nullable
          - `score` number, required
          - `text` string, nullable
          - `ocr_text` string, nullable
          - `transcription` string, nullable
          - `summary` string, nullable
          - `metadata` unknown
          - `generated_metadata` unknown
        - `error` ToolCallError — Machine-readable reason a hosted tool call failed (Mixedbread extension).
          - `code` 'permission_denied' | 'invalid_arguments' | 'server_error', required
          - `message` string, required
      - StoreGrepCallItemOutput — Output item recording one server-side grep execution.
        - `type` 'store_grep_call'
        - `id` string, required
        - `status` 'in_progress' | 'searching' | 'completed' | 'failed'
        - `pattern` string, nullable
        - `targets` StoreChunkGrepTarget[], nullable
        - `case_sensitive` boolean
        - `metadata_filters` MetadataFilter[], nullable
          - `key` string, required — Metadata field key
          - `operator` 'eq' | 'not_eq' | 'gt' | 'gte' | 'lt' | 'lte' | 'in' | 'not_in' | 'like' | 'contains' | 'starts_with' | 'not_like' | 'regex', required — Operator for a filter condition.
          - `value` union, required — Value to compare against. Use a list for `in`/`not_in`.
            - string
            - integer
            - number
            - boolean
            - union[]
              - …
        - `filter_mode` 'all' | 'any'
        - `store` string, nullable
        - `results` StoreSearchResult[], nullable
          - `index` integer, nullable
          - `store_id` string, required
          - `file_id` string, required
          - `chunk_index` integer, required
          - `filename` string, nullable
          - `mime_type` string, nullable
          - `score` number, required
          - `text` string, nullable
          - `ocr_text` string, nullable
          - `transcription` string, nullable
          - `summary` string, nullable
          - `metadata` unknown
          - `generated_metadata` unknown
        - `error` ToolCallError — Machine-readable reason a hosted tool call failed (Mixedbread extension).
          - `code` 'permission_denied' | 'invalid_arguments' | 'server_error', required
          - `message` string, required
      - StoreListChunksCallItemOutput — Output item recording one server-side metadata-driven chunk listing.
        - `type` 'store_list_chunks_call'
        - `id` string, required
        - `status` 'in_progress' | 'completed' | 'failed'
        - `metadata_filters` MetadataFilter[], nullable
          - `key` string, required — Metadata field key
          - `operator` 'eq' | 'not_eq' | 'gt' | 'gte' | 'lt' | 'lte' | 'in' | 'not_in' | 'like' | 'contains' | 'starts_with' | 'not_like' | 'regex', required — Operator for a filter condition.
          - `value` union, required — Value to compare against. Use a list for `in`/`not_in`.
            - string
            - integer
            - number
            - boolean
            - union[]
              - …
        - `filter_mode` 'all' | 'any'
        - `rank_by` string, nullable
        - `direction` 'asc' | 'desc'
        - `store` string, nullable
        - `results` StoreSearchResult[], nullable
          - `index` integer, nullable
          - `store_id` string, required
          - `file_id` string, required
          - `chunk_index` integer, required
          - `filename` string, nullable
          - `mime_type` string, nullable
          - `score` number, required
          - `text` string, nullable
          - `ocr_text` string, nullable
          - `transcription` string, nullable
          - `summary` string, nullable
          - `metadata` unknown
          - `generated_metadata` unknown
        - `error` ToolCallError — Machine-readable reason a hosted tool call failed (Mixedbread extension).
          - `code` 'permission_denied' | 'invalid_arguments' | 'server_error', required
          - `message` string, required
      - MetadataFacetsCallItem — Output item recording one server-side metadata facets lookup.
        - `type` 'store_metadata_facets_call'
        - `id` string, required
        - `status` 'in_progress' | 'completed' | 'failed'
        - `store` string, nullable
        - `facets` object, nullable
        - `error` ToolCallError — Machine-readable reason a hosted tool call failed (Mixedbread extension).
          - `code` 'permission_denied' | 'invalid_arguments' | 'server_error', required
          - `message` string, required
      - ListStoresCallItem — Output item recording one server-side store listing execution.
        - `type` 'list_stores_call'
        - `id` string, required
        - `status` 'in_progress' | 'completed' | 'failed'
        - `cursor` string, nullable
        - `stores` ListStoresResult[], nullable
          - `name` string, required
          - `description` string, nullable
          - `connectors` string[] — Providers of the connectors ingesting into this store, e.g. slack or notion
        - `has_more` boolean
        - `next_cursor` string, nullable
        - `error` ToolCallError — Machine-readable reason a hosted tool call failed (Mixedbread extension).
          - `code` 'permission_denied' | 'invalid_arguments' | 'server_error', required
          - `message` string, required
      - FunctionCallItem
        - `type` 'function_call'
        - `id` string, nullable
        - `call_id` string, required
        - `name` string, required
        - `arguments` string, required
        - `status` 'in_progress' | 'completed' | 'incomplete', nullable
  - `parallel_tool_calls` boolean
  - `previous_response_id` string, nullable
  - `store` boolean
  - `temperature` number, nullable
  - `top_p` number, nullable
  - `max_output_tokens` integer, nullable
  - `max_tool_calls` integer, nullable
  - `tool_choice` union
    - 'auto' | 'none' | 'required'
    - ToolChoiceFunction — Force a call to a specific function tool, as in the OpenAI Responses API.
      - `type` 'function'
      - `name` string, required
    - ToolChoiceStoreSearch — Force a call to the hosted store search tool (analogous to OpenAI's hosted tool choice).
      - `type` 'store_search'
    - ToolChoiceListStores — Force a call to the hosted list stores tool (analogous to OpenAI's hosted tool choice).
      - `type` 'list_stores'
    - ToolChoiceStoreGrep — Force a call to the hosted store grep tool (analogous to OpenAI's hosted tool choice).
      - `type` 'store_grep'
    - ToolChoiceStoreListChunks — Force a call to the hosted list chunks tool (analogous to OpenAI's hosted tool choice).
      - `type` 'store_list_chunks'
    - ToolChoiceMetadataFacets — Force a call to the hosted metadata facets tool (analogous to OpenAI's hosted tool choice).
      - `type` 'store_metadata_facets'
  - `tools` union[]
    - union
      - StoreSearchToolOutput — Hosted tool: semantic search over the caller's stores, executed server-side.
        - `enabled` boolean — Set to false to disable the tool for this response
        - `store_identifiers` union[], nullable — IDs or names of the stores the tool runs against; omit to let the model pick a store per call, an empty list disables the tool
          - union
            - string
            - string, uuid
        - `type` 'store_search'
        - `max_num_results` integer — Number of chunks returned per search call
        - `filters` union — Optional filter conditions applied to every search
          - SearchFilterOutput — Represents a filter with AND, OR, and NOT conditions.
            - `all` union[], nullable — List of conditions or filters to be ANDed together
              - …
            - `any` union[], nullable — List of conditions or filters to be ORed together
              - …
            - `none` union[], nullable — List of conditions or filters to be NOTed
              - …
          - SearchFilterCondition — Represents a condition with a field, operator, and value.
            - `key` string, required — The field to apply the condition on
            - `value` string, required — The value to compare against
            - `operator` 'eq' | 'not_eq' | 'gt' | 'gte' | 'lt' | 'lte' | 'in' | 'not_in' | 'like' | 'contains' | 'starts_with' | 'not_like' | 'regex', required — Operator for a filter condition.
          - union[]
            - union
              - …
        - `score_threshold` number — Minimum similarity score threshold
        - `citations` boolean — Cite sources in the answer as <cite i="..."/> tags referencing result index fields
      - StoreGrepToolOutput — Hosted tool: regular-expression match over a store's chunks, executed server-side. grep runs the pattern against the literal chunk text — no embeddings, no reranker. It covers exactly one store per call, so with several pinned stores the model picks which of them to grep.
        - `enabled` boolean — Set to false to disable the tool for this response
        - `store_identifiers` union[], nullable — IDs or names of the stores the tool runs against; omit to let the model pick a store per call, an empty list disables the tool
          - union
            - string
            - string, uuid
        - `type` 'store_grep'
        - `max_num_results` integer — Number of chunks returned per grep call
        - `filters` union — Optional filter conditions applied to every grep
          - SearchFilterOutput — Represents a filter with AND, OR, and NOT conditions.
            - `all` union[], nullable — List of conditions or filters to be ANDed together
              - …
            - `any` union[], nullable — List of conditions or filters to be ORed together
              - …
            - `none` union[], nullable — List of conditions or filters to be NOTed
              - …
          - SearchFilterCondition — Represents a condition with a field, operator, and value.
            - `key` string, required — The field to apply the condition on
            - `value` string, required — The value to compare against
            - `operator` 'eq' | 'not_eq' | 'gt' | 'gte' | 'lt' | 'lte' | 'in' | 'not_in' | 'like' | 'contains' | 'starts_with' | 'not_like' | 'regex', required — Operator for a filter condition.
          - union[]
            - union
              - …
        - `citations` boolean — Cite sources in the answer as <cite i="..."/> tags referencing result index fields
      - StoreListChunksToolOutput — Hosted tool: metadata-driven listing of a store's chunks, executed server-side. No embeddings and no reranker: chunks are selected by metadata filters and optionally ordered by a numeric metadata field. It covers a single store per call, so with several pinned stores the model picks which one to list.
        - `enabled` boolean — Set to false to disable the tool for this response
        - `store_identifiers` union[], nullable — IDs or names of the stores the tool runs against; omit to let the model pick a store per call, an empty list disables the tool
          - union
            - string
            - string, uuid
        - `type` 'store_list_chunks'
        - `max_num_results` integer — Number of chunks returned per listing call
        - `filters` union — Optional filter conditions applied to every listing
          - SearchFilterOutput — Represents a filter with AND, OR, and NOT conditions.
            - `all` union[], nullable — List of conditions or filters to be ANDed together
              - …
            - `any` union[], nullable — List of conditions or filters to be ORed together
              - …
            - `none` union[], nullable — List of conditions or filters to be NOTed
              - …
          - SearchFilterCondition — Represents a condition with a field, operator, and value.
            - `key` string, required — The field to apply the condition on
            - `value` string, required — The value to compare against
            - `operator` 'eq' | 'not_eq' | 'gt' | 'gte' | 'lt' | 'lte' | 'in' | 'not_in' | 'like' | 'contains' | 'starts_with' | 'not_like' | 'regex', required — Operator for a filter condition.
          - union[]
            - union
              - …
        - `citations` boolean — Cite sources in the answer as <cite i="..."/> tags referencing result index fields
      - MetadataFacetsToolOutput — Hosted tool: metadata field/value overview of the caller's stores, executed server-side. Facets tell the model which metadata keys exist and what their values look like, so it can filter (`store_grep`, `store_list_chunks`) and phrase queries against real values instead of guessing.
        - `enabled` boolean — Set to false to disable the tool for this response
        - `store_identifiers` union[], nullable — IDs or names of the stores the tool runs against; omit to let the model pick a store per call, an empty list disables the tool
          - union
            - string
            - string, uuid
        - `type` 'store_metadata_facets'
        - `filters` union — Optional filter conditions restricting the files the facets are computed over
          - SearchFilterOutput — Represents a filter with AND, OR, and NOT conditions.
            - `all` union[], nullable — List of conditions or filters to be ANDed together
              - …
            - `any` union[], nullable — List of conditions or filters to be ORed together
              - …
            - `none` union[], nullable — List of conditions or filters to be NOTed
              - …
          - SearchFilterCondition — Represents a condition with a field, operator, and value.
            - `key` string, required — The field to apply the condition on
            - `value` string, required — The value to compare against
            - `operator` 'eq' | 'not_eq' | 'gt' | 'gte' | 'lt' | 'lte' | 'in' | 'not_in' | 'like' | 'contains' | 'starts_with' | 'not_like' | 'regex', required — Operator for a filter condition.
          - union[]
            - union
              - …
        - `max_values_per_field` integer — Number of representative values reported per metadata field
      - ListStoresTool — Hosted tool: paginated listing of the caller's stores, executed server-side. Active by default; declare it with enabled=false to turn it off.
        - `type` 'list_stores'
        - `enabled` boolean — Set to false to disable the tool for this response
        - `limit` integer — Number of stores returned per listing call
      - FunctionTool — Client-executed function tool, as in the OpenAI Responses API.
        - `type` 'function'
        - `name` string, required
        - `description` string, nullable
        - `parameters` object, nullable
        - `strict` boolean, nullable
  - `metadata` object, nullable
  - `usage` ResponseUsage
    - `input_tokens` integer
    - `output_tokens` integer
    - `total_tokens` integer
    - `input_tokens_details` object
    - `output_tokens_details` object

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/mixedbread/apis/mxbai-omni.md) · [All operations](https://skmtc.net/mixedbread/apis/mxbai-omni/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/mixedbread/mxbai-omni/revisions/2eece97b5ae5/schema)
