---
title: Multi-Instance Search
---

[Skip to content](#_top)

[API Reference](https://developers.cloudflare.com/api/typescript)

[AI Search](https://developers.cloudflare.com/api/typescript/resources/ai_search)

[Namespaces](https://developers.cloudflare.com/api/typescript/resources/ai_search/subresources/namespaces)

Copy Markdown

Open in **Claude**Open in **ChatGPT**Open in **Cursor**

---

**Copy Markdown****View as Markdown**

# Multi-Instance Search

client.aiSearch.namespaces.search(stringname, NamespaceSearchParams {account\_id, ai\_search\_options, messages, query } params, RequestOptionsoptions?): [NamespaceSearchResponse](<https://developers.cloudflare.com/api/typescript/resources/ai_search#(resource)%20ai_search.namespaces%20%3E%20(model)%20namespace_search_response%20%3E%20(schema)>) {chunks, query\_kind, errors, search\_query }

POST/accounts/{account\_id}/ai-search/namespaces/{name}/search

Performs a semantic search query against multiple AI Search instances in parallel, merging the retrieved results into a single ranked response.

##### Security

<details>

<summary>API Token</summary>



The preferred authorization scheme for interacting with the Cloudflare API. <a href="https://developers.cloudflare.com/fundamentals/api/get-started/create-token/">Create a token</a>.

**Example:**<code>Authorization: Bearer Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY</code>

</details>

<details>

<summary>API Email + API Key</summary>



The previous authorization scheme for interacting with the Cloudflare API, used in conjunction with a Global API key.

**Example:**<code>X-Auth-Email: user@example.com</code>

The previous authorization scheme for interacting with the Cloudflare API. When possible, use API tokens instead of Global API keys.

**Example:**<code>X-Auth-Key: 144c9defac04969c7bfad8efaa8ea194</code>

</details>

##### ParametersExpand Collapse

name: string

[Link to this property](<#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20name%20%3E%20(schema)>)

<details>

<summary>

params: NamespaceSearchParams {account\_id, ai\_search\_options, messages, query }

</summary>

account\_id: string

Path param

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20account_id">Link to this property</a>

<details>

<summary>

ai\_search\_options: <a href="https://developers.cloudflare.com/api/typescript/resources/ai_search/subresources/namespaces/methods/search#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)">AISearchOptions</a>

Body param

</summary>

instance\_ids: Array&lt;string&gt;

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20instance_ids">Link to this property</a>

<details>

<summary>

cache?: Cache {cache\_threshold, enabled }

</summary>

<details>

<summary>

cache\_threshold?: "super\_strict\_match"| "close\_enough"| "flexible\_friend"| "anything\_goes"

</summary>

One of the following:

"super\_strict\_match"

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20cache%20%3E%20(property)%20cache_threshold%20%3E%20(member)%200">Link to this property</a>

"close\_enough"

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20cache%20%3E%20(property)%20cache_threshold%20%3E%20(member)%201">Link to this property</a>

"flexible\_friend"

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20cache%20%3E%20(property)%20cache_threshold%20%3E%20(member)%202">Link to this property</a>

"anything\_goes"

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20cache%20%3E%20(property)%20cache_threshold%20%3E%20(member)%203">Link to this property</a>

</details>

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20cache%20%3E%20(property)%20cache_threshold">Link to this property</a>

enabled?: boolean

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20cache%20%3E%20(property)%20enabled">Link to this property</a>

</details>

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20cache">Link to this property</a>

<details>

<summary>

custom\_metadata?: Record&lt;string, string| number| boolean&gt;

Metadata added to AI Gateway logs for requests triggered by this operation. Accepts up to 2 string, number, or boolean entries. Keys ‘ai-search’, ‘task’, ‘origin’, and keys beginning with ‘cf.’ are reserved.

</summary>

One of the following:

string

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20custom_metadata%20%3E%20(items)%20%3E%20(variant)%200">Link to this property</a>

number

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20custom_metadata%20%3E%20(items)%20%3E%20(variant)%201">Link to this property</a>

boolean

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20custom_metadata%20%3E%20(items)%20%3E%20(variant)%202">Link to this property</a>

</details>

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20custom_metadata">Link to this property</a>

<details>

<summary>

query\_rewrite?: QueryRewrite {enabled, model, rewrite\_prompt }

</summary>

enabled?: boolean

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20query_rewrite%20%3E%20(property)%20enabled">Link to this property</a>

model?: string

A Workers AI model ID or an AI Gateway model ID compatible with the OpenAI Chat Completions API. An empty string uses the configured or default model.

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20query_rewrite%20%3E%20(property)%20model">Link to this property</a>

rewrite\_prompt?: string

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20query_rewrite%20%3E%20(property)%20rewrite_prompt">Link to this property</a>

</details>

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20query_rewrite">Link to this property</a>

<details>

<summary>

reranking?: Reranking {enabled, match\_threshold, model }

</summary>

enabled?: boolean

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20reranking%20%3E%20(property)%20enabled">Link to this property</a>

match\_threshold?: number

maximum1

minimum0

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20reranking%20%3E%20(property)%20match_threshold">Link to this property</a>

model?: string

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20reranking%20%3E%20(property)%20model">Link to this property</a>

</details>

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20reranking">Link to this property</a>

<details>

<summary>

retrieval?: Retrieval {boost\_by, context\_expansion, filters, 6 more }

</summary>

<details>

<summary>

boost\_by?: Array&lt;BoostBy&gt;

Metadata fields to boost search results by. Overrides the instance-level boost\_by config. Direction defaults to ‘asc’ for numeric/datetime fields, ‘exists’ for text/boolean fields. Fields must match ‘timestamp’ or a defined custom\_metadata field.

</summary>

field: string

Metadata field name to boost by. Use ‘timestamp’ for document freshness, or any custom\_metadata field. Numeric and datetime fields support all four directions (asc, desc, exists, not\_exists); text/boolean fields only support exists/not\_exists.

maxLength64

minLength1

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20retrieval%20%3E%20(property)%20boost_by%20%3E%20(items)%20%3E%20(property)%20field">Link to this property</a>

<details>

<summary>

direction?: "asc"| "desc"| "exists"| "not\_exists"

Boost direction. ‘desc’ = higher values rank higher (e.g. newer timestamps). ‘asc’ = lower values rank higher. ‘exists’ = boost chunks that have the field. ‘not\_exists’ = boost chunks that lack the field. Optional — defaults to ‘asc’ for numeric/datetime fields, ‘exists’ for text/boolean fields.

</summary>

One of the following:

"asc"

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20retrieval%20%3E%20(property)%20boost_by%20%3E%20(items)%20%3E%20(property)%20direction%20%3E%20(member)%200">Link to this property</a>

"desc"

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20retrieval%20%3E%20(property)%20boost_by%20%3E%20(items)%20%3E%20(property)%20direction%20%3E%20(member)%201">Link to this property</a>

"exists"

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20retrieval%20%3E%20(property)%20boost_by%20%3E%20(items)%20%3E%20(property)%20direction%20%3E%20(member)%202">Link to this property</a>

"not\_exists"

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20retrieval%20%3E%20(property)%20boost_by%20%3E%20(items)%20%3E%20(property)%20direction%20%3E%20(member)%203">Link to this property</a>

</details>

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20retrieval%20%3E%20(property)%20boost_by%20%3E%20(items)%20%3E%20(property)%20direction">Link to this property</a>

</details>

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20retrieval%20%3E%20(property)%20boost_by">Link to this property</a>

context\_expansion?: number

maximum3

minimum0

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20retrieval%20%3E%20(property)%20context_expansion">Link to this property</a>

filters?: Record&lt;string, unknown&gt;

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20retrieval%20%3E%20(property)%20filters">Link to this property</a>

<details>

<summary>

fusion\_method?: "max"| "rrf"

</summary>

One of the following:

"max"

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20retrieval%20%3E%20(property)%20fusion_method%20%3E%20(member)%200">Link to this property</a>

"rrf"

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20retrieval%20%3E%20(property)%20fusion_method%20%3E%20(member)%201">Link to this property</a>

</details>

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20retrieval%20%3E%20(property)%20fusion_method">Link to this property</a>

<details>

<summary>

keyword\_match\_mode?: "and"| "or"

Controls which documents are candidates for BM25 scoring. ‘and’ restricts candidates to documents containing all query terms; ‘or’ includes any document containing at least one term, ranked by BM25 relevance. When omitted, falls back to the instance-level retrieval\_options.keyword\_match\_mode, then to ‘and’.

</summary>

One of the following:

"and"

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20retrieval%20%3E%20(property)%20keyword_match_mode%20%3E%20(member)%200">Link to this property</a>

"or"

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20retrieval%20%3E%20(property)%20keyword_match_mode%20%3E%20(member)%201">Link to this property</a>

</details>

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20retrieval%20%3E%20(property)%20keyword_match_mode">Link to this property</a>

match\_threshold?: number

maximum1

minimum0

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20retrieval%20%3E%20(property)%20match_threshold">Link to this property</a>

max\_num\_results?: number

maximum50

minimum1

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20retrieval%20%3E%20(property)%20max_num_results">Link to this property</a>

<details>

<summary>

retrieval\_type?: "vector"| "keyword"| "hybrid"

</summary>

One of the following:

"vector"

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20retrieval%20%3E%20(property)%20retrieval_type%20%3E%20(member)%200">Link to this property</a>

"keyword"

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20retrieval%20%3E%20(property)%20retrieval_type%20%3E%20(member)%201">Link to this property</a>

"hybrid"

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20retrieval%20%3E%20(property)%20retrieval_type%20%3E%20(member)%202">Link to this property</a>

</details>

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20retrieval%20%3E%20(property)%20retrieval_type">Link to this property</a>

return\_on\_failure?: boolean

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20retrieval%20%3E%20(property)%20return_on_failure">Link to this property</a>

</details>

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options%20%3E%20(schema)%20%3E%20(property)%20retrieval">Link to this property</a>

</details>

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20ai_search_options">Link to this property</a>

<details>

<summary>

messages?: Array&lt;Message&gt;

Body param: OpenAI-compatible message array. For multimodal queries, set the last user message’s <code>content</code> to an array of typed parts: <code>[{type:'text', text:'…'}, {type:'image_url', image_url:{url:'…'}}]</code>. Image inputs require the RAG’s embedding\_model to declare ‘image’ in supported\_modalities.

</summary>

<details>

<summary>

content: string| Array&lt;UnionMember0 {text, type } | UnionMember1 {image\_url, type } | UnionMember2 {file, type } &gt;| string| null

</summary>

One of the following:

string

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20messages%20%3E%20(schema)%20%3E%20(items)%20%3E%20(property)%20content%20%3E%20(variant)%200">Link to this property</a>

<details>

<summary>

Array&lt;UnionMember0 {text, type } | UnionMember1 {image\_url, type } | UnionMember2 {file, type } &gt;

</summary>

<details>

<summary>

UnionMember0 {text, type }

</summary>

text: string

minLength1

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20messages%20%3E%20(schema)%20%3E%20(items)%20%3E%20(property)%20content%20%3E%20(variant)%201%20%3E%20(items)%20%3E%20(variant)%200%20%3E%20(property)%20text">Link to this property</a>

type: "text"

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20messages%20%3E%20(schema)%20%3E%20(items)%20%3E%20(property)%20content%20%3E%20(variant)%201%20%3E%20(items)%20%3E%20(variant)%200%20%3E%20(property)%20type">Link to this property</a>

</details>

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20messages%20%3E%20(schema)%20%3E%20(items)%20%3E%20(property)%20content%20%3E%20(variant)%201%20%3E%20(items)%20%3E%20(variant)%200">Link to this property</a>

<details>

<summary>

UnionMember1 {image\_url, type }

</summary>

<details>

<summary>

image\_url: ImageURL {url }

</summary>

url: string

maxLength20971520

minLength1

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20messages%20%3E%20(schema)%20%3E%20(items)%20%3E%20(property)%20content%20%3E%20(variant)%201%20%3E%20(items)%20%3E%20(variant)%201%20%3E%20(property)%20image_url%20%3E%20(property)%20url">Link to this property</a>

</details>

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20messages%20%3E%20(schema)%20%3E%20(items)%20%3E%20(property)%20content%20%3E%20(variant)%201%20%3E%20(items)%20%3E%20(variant)%201%20%3E%20(property)%20image_url">Link to this property</a>

type: "image\_url"

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20messages%20%3E%20(schema)%20%3E%20(items)%20%3E%20(property)%20content%20%3E%20(variant)%201%20%3E%20(items)%20%3E%20(variant)%201%20%3E%20(property)%20type">Link to this property</a>

</details>

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20messages%20%3E%20(schema)%20%3E%20(items)%20%3E%20(property)%20content%20%3E%20(variant)%201%20%3E%20(items)%20%3E%20(variant)%201">Link to this property</a>

<details>

<summary>

UnionMember2 {file, type }

</summary>

<details>

<summary>

file: File {filename, file\_data, file\_id }

</summary>

filename: string

maxLength255

minLength1

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20messages%20%3E%20(schema)%20%3E%20(items)%20%3E%20(property)%20content%20%3E%20(variant)%201%20%3E%20(items)%20%3E%20(variant)%202%20%3E%20(property)%20file%20%3E%20(property)%20filename">Link to this property</a>

file\_data?: string

maxLength13981144

minLength1

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20messages%20%3E%20(schema)%20%3E%20(items)%20%3E%20(property)%20content%20%3E%20(variant)%201%20%3E%20(items)%20%3E%20(variant)%202%20%3E%20(property)%20file%20%3E%20(property)%20file_data">Link to this property</a>

file\_id?: string

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20messages%20%3E%20(schema)%20%3E%20(items)%20%3E%20(property)%20content%20%3E%20(variant)%201%20%3E%20(items)%20%3E%20(variant)%202%20%3E%20(property)%20file%20%3E%20(property)%20file_id">Link to this property</a>

</details>

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20messages%20%3E%20(schema)%20%3E%20(items)%20%3E%20(property)%20content%20%3E%20(variant)%201%20%3E%20(items)%20%3E%20(variant)%202%20%3E%20(property)%20file">Link to this property</a>

type: "file"

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20messages%20%3E%20(schema)%20%3E%20(items)%20%3E%20(property)%20content%20%3E%20(variant)%201%20%3E%20(items)%20%3E%20(variant)%202%20%3E%20(property)%20type">Link to this property</a>

</details>

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20messages%20%3E%20(schema)%20%3E%20(items)%20%3E%20(property)%20content%20%3E%20(variant)%201%20%3E%20(items)%20%3E%20(variant)%202">Link to this property</a>

</details>

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20messages%20%3E%20(schema)%20%3E%20(items)%20%3E%20(property)%20content%20%3E%20(variant)%201">Link to this property</a>

string| null

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20messages%20%3E%20(schema)%20%3E%20(items)%20%3E%20(property)%20content%20%3E%20(variant)%202">Link to this property</a>

</details>

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20messages%20%3E%20(schema)%20%3E%20(items)%20%3E%20(property)%20content">Link to this property</a>

<details>

<summary>

role: "system"| "developer"| "user"| 2 more

</summary>

One of the following:

"system"

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20messages%20%3E%20(schema)%20%3E%20(items)%20%3E%20(property)%20role%20%3E%20(member)%200">Link to this property</a>

"developer"

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20messages%20%3E%20(schema)%20%3E%20(items)%20%3E%20(property)%20role%20%3E%20(member)%201">Link to this property</a>

"user"

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20messages%20%3E%20(schema)%20%3E%20(items)%20%3E%20(property)%20role%20%3E%20(member)%202">Link to this property</a>

"assistant"

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20messages%20%3E%20(schema)%20%3E%20(items)%20%3E%20(property)%20role%20%3E%20(member)%203">Link to this property</a>

"tool"

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20messages%20%3E%20(schema)%20%3E%20(items)%20%3E%20(property)%20role%20%3E%20(member)%204">Link to this property</a>

</details>

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20messages%20%3E%20(schema)%20%3E%20(items)%20%3E%20(property)%20role">Link to this property</a>

</details>

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20messages">Link to this property</a>

query?: string

Body param: A simple text query string. Alternative to ‘messages’ — provide either this or ‘messages’, not both.

minLength1

<a href="#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default%20%3E%20(param)%20query">Link to this property</a>

</details>

[Link to this property](<#(resource)%20ai_search.namespaces%20%3E%20(method)%20search%20%3E%20(params)%20default>)

##### ReturnsExpand Collapse

<details>

<summary>

NamespaceSearchResponse {chunks, query\_kind, errors, search\_query }

</summary>

<details>

<summary>

chunks: Array&lt;Chunk&gt;

</summary>

id: string

<a href="#(resource)%20ai_search.namespaces%20%3E%20(model)%20namespace_search_response%20%3E%20(schema)%20%3E%20(property)%20chunks%20%3E%20(items)%20%3E%20(property)%20id">Link to this property</a>

instance\_id: string

<a href="#(resource)%20ai_search.namespaces%20%3E%20(model)%20namespace_search_response%20%3E%20(schema)%20%3E%20(property)%20chunks%20%3E%20(items)%20%3E%20(property)%20instance_id">Link to this property</a>

score: number

maximum1

minimum0

<a href="#(resource)%20ai_search.namespaces%20%3E%20(model)%20namespace_search_response%20%3E%20(schema)%20%3E%20(property)%20chunks%20%3E%20(items)%20%3E%20(property)%20score">Link to this property</a>

text: string

<a href="#(resource)%20ai_search.namespaces%20%3E%20(model)%20namespace_search_response%20%3E%20(schema)%20%3E%20(property)%20chunks%20%3E%20(items)%20%3E%20(property)%20text">Link to this property</a>

type: string

<a href="#(resource)%20ai_search.namespaces%20%3E%20(model)%20namespace_search_response%20%3E%20(schema)%20%3E%20(property)%20chunks%20%3E%20(items)%20%3E%20(property)%20type">Link to this property</a>

<details>

<summary>

item?: Item {key, metadata, timestamp }

</summary>

key: string

<a href="#(resource)%20ai_search.namespaces%20%3E%20(model)%20namespace_search_response%20%3E%20(schema)%20%3E%20(property)%20chunks%20%3E%20(items)%20%3E%20(property)%20item%20%3E%20(property)%20key">Link to this property</a>

metadata?: Record&lt;string, unknown&gt;

<a href="#(resource)%20ai_search.namespaces%20%3E%20(model)%20namespace_search_response%20%3E%20(schema)%20%3E%20(property)%20chunks%20%3E%20(items)%20%3E%20(property)%20item%20%3E%20(property)%20metadata">Link to this property</a>

timestamp?: number

<a href="#(resource)%20ai_search.namespaces%20%3E%20(model)%20namespace_search_response%20%3E%20(schema)%20%3E%20(property)%20chunks%20%3E%20(items)%20%3E%20(property)%20item%20%3E%20(property)%20timestamp">Link to this property</a>

</details>

<a href="#(resource)%20ai_search.namespaces%20%3E%20(model)%20namespace_search_response%20%3E%20(schema)%20%3E%20(property)%20chunks%20%3E%20(items)%20%3E%20(property)%20item">Link to this property</a>

<details>

<summary>

scoring\_details?: ScoringDetails {fusion\_method, keyword\_rank, keyword\_score, 3 more }

</summary>

<details>

<summary>

fusion\_method?: "rrf"| "max"

</summary>

One of the following:

"rrf"

<a href="#(resource)%20ai_search.namespaces%20%3E%20(model)%20namespace_search_response%20%3E%20(schema)%20%3E%20(property)%20chunks%20%3E%20(items)%20%3E%20(property)%20scoring_details%20%3E%20(property)%20fusion_method%20%3E%20(member)%200">Link to this property</a>

"max"

<a href="#(resource)%20ai_search.namespaces%20%3E%20(model)%20namespace_search_response%20%3E%20(schema)%20%3E%20(property)%20chunks%20%3E%20(items)%20%3E%20(property)%20scoring_details%20%3E%20(property)%20fusion_method%20%3E%20(member)%201">Link to this property</a>

</details>

<a href="#(resource)%20ai_search.namespaces%20%3E%20(model)%20namespace_search_response%20%3E%20(schema)%20%3E%20(property)%20chunks%20%3E%20(items)%20%3E%20(property)%20scoring_details%20%3E%20(property)%20fusion_method">Link to this property</a>

keyword\_rank?: number

<a href="#(resource)%20ai_search.namespaces%20%3E%20(model)%20namespace_search_response%20%3E%20(schema)%20%3E%20(property)%20chunks%20%3E%20(items)%20%3E%20(property)%20scoring_details%20%3E%20(property)%20keyword_rank">Link to this property</a>

keyword\_score?: number

minimum0

<a href="#(resource)%20ai_search.namespaces%20%3E%20(model)%20namespace_search_response%20%3E%20(schema)%20%3E%20(property)%20chunks%20%3E%20(items)%20%3E%20(property)%20scoring_details%20%3E%20(property)%20keyword_score">Link to this property</a>

reranking\_score?: number

maximum1

minimum0

<a href="#(resource)%20ai_search.namespaces%20%3E%20(model)%20namespace_search_response%20%3E%20(schema)%20%3E%20(property)%20chunks%20%3E%20(items)%20%3E%20(property)%20scoring_details%20%3E%20(property)%20reranking_score">Link to this property</a>

vector\_rank?: number

<a href="#(resource)%20ai_search.namespaces%20%3E%20(model)%20namespace_search_response%20%3E%20(schema)%20%3E%20(property)%20chunks%20%3E%20(items)%20%3E%20(property)%20scoring_details%20%3E%20(property)%20vector_rank">Link to this property</a>

vector\_score?: number

maximum1

minimum0

<a href="#(resource)%20ai_search.namespaces%20%3E%20(model)%20namespace_search_response%20%3E%20(schema)%20%3E%20(property)%20chunks%20%3E%20(items)%20%3E%20(property)%20scoring_details%20%3E%20(property)%20vector_score">Link to this property</a>

</details>

<a href="#(resource)%20ai_search.namespaces%20%3E%20(model)%20namespace_search_response%20%3E%20(schema)%20%3E%20(property)%20chunks%20%3E%20(items)%20%3E%20(property)%20scoring_details">Link to this property</a>

</details>

<a href="#(resource)%20ai_search.namespaces%20%3E%20(model)%20namespace_search_response%20%3E%20(schema)%20%3E%20(property)%20chunks">Link to this property</a>

<details>

<summary>

query\_kind: "text"| "image"| "multimodal"

</summary>

One of the following:

"text"

<a href="#(resource)%20ai_search.namespaces%20%3E%20(model)%20namespace_search_response%20%3E%20(schema)%20%3E%20(property)%20query_kind%20%3E%20(member)%200">Link to this property</a>

"image"

<a href="#(resource)%20ai_search.namespaces%20%3E%20(model)%20namespace_search_response%20%3E%20(schema)%20%3E%20(property)%20query_kind%20%3E%20(member)%201">Link to this property</a>

"multimodal"

<a href="#(resource)%20ai_search.namespaces%20%3E%20(model)%20namespace_search_response%20%3E%20(schema)%20%3E%20(property)%20query_kind%20%3E%20(member)%202">Link to this property</a>

</details>

<a href="#(resource)%20ai_search.namespaces%20%3E%20(model)%20namespace_search_response%20%3E%20(schema)%20%3E%20(property)%20query_kind">Link to this property</a>

<details>

<summary>

errors?: Array&lt;Error&gt;

</summary>

instance\_id: string

<a href="#(resource)%20ai_search.namespaces%20%3E%20(model)%20namespace_search_response%20%3E%20(schema)%20%3E%20(property)%20errors%20%3E%20(items)%20%3E%20(property)%20instance_id">Link to this property</a>

message: string

<a href="#(resource)%20ai_search.namespaces%20%3E%20(model)%20namespace_search_response%20%3E%20(schema)%20%3E%20(property)%20errors%20%3E%20(items)%20%3E%20(property)%20message">Link to this property</a>

</details>

<a href="#(resource)%20ai_search.namespaces%20%3E%20(model)%20namespace_search_response%20%3E%20(schema)%20%3E%20(property)%20errors">Link to this property</a>

search\_query?: string

<a href="#(resource)%20ai_search.namespaces%20%3E%20(model)%20namespace_search_response%20%3E%20(schema)%20%3E%20(property)%20search_query">Link to this property</a>

</details>

[Link to this property](<#(resource)%20ai_search.namespaces%20%3E%20(model)%20namespace_search_response%20%3E%20(schema)>)

### Multi-Instance Search

TypeScript

HTTPTypeScriptPythonGoTerraform

```
import Cloudflare from 'cloudflare';

const client = new Cloudflare({
  apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted
});

const response = await client.aiSearch.namespaces.search('my-namespace', {
  account_id: 'c3dc5f0b34a14ff8e1b3ec04895e1b22',
  ai_search_options: { instance_ids: ['my-ai-search'] },
});

console.log(response.chunks);
```

200 example

```
{
  "result": {
    "chunks": [
      {
        "id": "id",
        "instance_id": "instance_id",
        "score": 0,
        "text": "text",
        "type": "type",
        "item": {
          "key": "key",
          "metadata": {
            "foo": "bar"
          },
          "timestamp": 0
        },
        "scoring_details": {
          "fusion_method": "rrf",
          "keyword_rank": 0,
          "keyword_score": 0,
          "reranking_score": 0,
          "vector_rank": 0,
          "vector_score": 0
        }
      }
    ],
    "query_kind": "text",
    "errors": [
      {
        "instance_id": "instance_id",
        "message": "message"
      }
    ],
    "search_query": "search_query"
  },
  "success": true
}
```

##### Returns Examples

200 example

```
{
  "result": {
    "chunks": [
      {
        "id": "id",
        "instance_id": "instance_id",
        "score": 0,
        "text": "text",
        "type": "type",
        "item": {
          "key": "key",
          "metadata": {
            "foo": "bar"
          },
          "timestamp": 0
        },
        "scoring_details": {
          "fusion_method": "rrf",
          "keyword_rank": 0,
          "keyword_score": 0,
          "reranking_score": 0,
          "vector_rank": 0,
          "vector_score": 0
        }
      }
    ],
    "query_kind": "text",
    "errors": [
      {
        "instance_id": "instance_id",
        "message": "message"
      }
    ],
    "search_query": "search_query"
  },
  "success": true
}
```