Skip to content
Start here

List namespaces

client.AISearch.Namespaces.List(ctx, params) (*V4PagePaginationArray[NamespaceListResponse], error)
GET/accounts/{account_id}/ai-search/namespaces

List namespaces in the account, including their descriptions and creation times.

Security
API Token

The preferred authorization scheme for interacting with the Cloudflare API. Create a token.

Example:Authorization: Bearer Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY
API Email + API Key

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

Example:X-Auth-Email: user@example.com

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

Example:X-Auth-Key: 144c9defac04969c7bfad8efaa8ea194
ParametersExpand Collapse
params NamespaceListParams
AccountID param.Field[string]

Path param

Page param.Field[int64]Optional

Query param: Page number (1-indexed).

minimum1
PerPage param.Field[int64]Optional

Query param: Number of results per page.

maximum100
minimum1
ReturnsExpand Collapse
type NamespaceListResponse struct{…}
CreatedAt Time
formatdate-time
Name string
Description stringOptional

Optional description for the namespace. Max 256 characters.

maxLength256
PublicEndpointID stringOptional
PublicEndpointParams NamespaceListResponsePublicEndpointParamsOptional
AuthorizedHosts []stringOptional
ChatCompletionsEndpoint NamespaceListResponsePublicEndpointParamsChatCompletionsEndpointOptional
Disabled boolOptional

Disable chat completions endpoint for this public endpoint

CustomDomains []stringOptional

Custom domain hostnames that alias this public endpoint. GET and create responses return the current set; on update (PUT) this field is only echoed back when supplied in the request body, otherwise it is null (omit it to leave domains unchanged).

DefaultDomainEnabled boolOptional

When false, the instance is reachable only via a registered custom domain and the default <public_endpoint_id>.search.ai.cloudflare.com host returns 404. Requires at least one custom domain. Defaults to true. public_endpoint_params is replaced wholesale on update, so resend default_domain_enabled on every update to keep the default host off — omitting it resets to true.

Enabled boolOptional
InstancesAllowed []stringOptional

Instance IDs exposed through the namespace public endpoint. Empty means nothing is searchable. Every ID must be an existing instance in this namespace, and the list cannot exceed the account’s multi-instance search limit.

Mcp NamespaceListResponsePublicEndpointParamsMcpOptional
Description stringOptional
Disabled boolOptional

Disable MCP endpoint for this public endpoint

RateLimit NamespaceListResponsePublicEndpointParamsRateLimitOptional
PeriodMs int64Optional
maximum3600000
minimum60000
Requests int64Optional
minimum1
Technique NamespaceListResponsePublicEndpointParamsRateLimitTechniqueOptional
One of the following:
const NamespaceListResponsePublicEndpointParamsRateLimitTechniqueFixed NamespaceListResponsePublicEndpointParamsRateLimitTechnique = "fixed"
const NamespaceListResponsePublicEndpointParamsRateLimitTechniqueSliding NamespaceListResponsePublicEndpointParamsRateLimitTechnique = "sliding"
SearchEndpoint NamespaceListResponsePublicEndpointParamsSearchEndpointOptional
Disabled boolOptional

Disable search endpoint for this public endpoint

List namespaces

package main

import (
  "context"
  "fmt"

  "github.com/cloudflare/cloudflare-go"
  "github.com/cloudflare/cloudflare-go/ai_search"
  "github.com/cloudflare/cloudflare-go/option"
)

func main() {
  client := cloudflare.NewClient(
    option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
  )
  page, err := client.AISearch.Namespaces.List(context.TODO(), ai_search.NamespaceListParams{
    AccountID: cloudflare.F("c3dc5f0b34a14ff8e1b3ec04895e1b22"),
  })
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", page)
}
{
  "result": [
    {
      "created_at": "2019-12-27T18:11:19.117Z",
      "name": "production",
      "description": "Production environment",
      "public_endpoint_id": "public_endpoint_id",
      "public_endpoint_params": {
        "authorized_hosts": [
          "string"
        ],
        "chat_completions_endpoint": {
          "disabled": true
        },
        "custom_domains": [
          "search.example.com"
        ],
        "default_domain_enabled": true,
        "enabled": true,
        "instances_allowed": [
          "docs",
          "blog"
        ],
        "mcp": {
          "description": "description",
          "disabled": true
        },
        "rate_limit": {
          "period_ms": 60000,
          "requests": 1,
          "technique": "fixed"
        },
        "search_endpoint": {
          "disabled": true
        }
      }
    }
  ],
  "result_info": {
    "count": 0,
    "page": 0,
    "per_page": 0,
    "total_count": 0
  },
  "success": true
}
Returns Examples
{
  "result": [
    {
      "created_at": "2019-12-27T18:11:19.117Z",
      "name": "production",
      "description": "Production environment",
      "public_endpoint_id": "public_endpoint_id",
      "public_endpoint_params": {
        "authorized_hosts": [
          "string"
        ],
        "chat_completions_endpoint": {
          "disabled": true
        },
        "custom_domains": [
          "search.example.com"
        ],
        "default_domain_enabled": true,
        "enabled": true,
        "instances_allowed": [
          "docs",
          "blog"
        ],
        "mcp": {
          "description": "description",
          "disabled": true
        },
        "rate_limit": {
          "period_ms": 60000,
          "requests": 1,
          "technique": "fixed"
        },
        "search_endpoint": {
          "disabled": true
        }
      }
    }
  ],
  "result_info": {
    "count": 0,
    "page": 0,
    "per_page": 0,
    "total_count": 0
  },
  "success": true
}