Skip to main content
Pinecone Docs
current

Search documentation

Type to search this documentation.

Create a namespace alias

Create an alias that resolves to an existing namespace in the index. Reads

through the alias are served from its target namespace; writes to an alias name are rejected. Many aliases can resolve to the same namespace.

The call returns once the alias resolves on every reader, which takes about a second; size client timeouts accordingly. A 409 whose details.metadata.target_namespace matches the requested target carries the same guarantee: your earlier call committed and the alias is live.

For guidance and examples, see Manage namespace aliases.

curl
# To get the unique host for an index,
# see https://docs.pinecone.io/guides/manage-data/target-an-index
PINECONE_API_KEY="YOUR_API_KEY"
INDEX_HOST="INDEX_HOST"

curl -X POST "https://$INDEX_HOST/namespace-aliases" \
    -H "Api-Key: $PINECONE_API_KEY" \
    -H "Content-Type: application/json" \
    -H "X-Pinecone-Api-Version: 2026-07" \
    -d '{
        "name": "dataset",
        "target_namespace": "dataset_v1"
    }'

POST /namespace-aliases

200
{
  "name": "dataset",
  "target_namespace": "dataset_v1",
  "created_at": "2026-09-01T12:00:00.000Z",
  "updated_at": "2026-09-01T12:00:00.000Z"
}
400
{
  "code": 123,
  "message": "<string>",
  "details": [
    {
      "typeUrl": "<string>",
      "value": "<string>"
    }
  ]
}
409
{
  "code": 123,
  "message": "<string>",
  "details": [
    {
      "typeUrl": "<string>",
      "value": "<string>"
    }
  ]
}
4XX
{
  "code": 123,
  "message": "<string>",
  "details": [
    {
      "typeUrl": "<string>",
      "value": "<string>"
    }
  ]
}
5XX
{
  "code": 123,
  "message": "<string>",
  "details": [
    {
      "typeUrl": "<string>",
      "value": "<string>"
    }
  ]
}
Api-Keystringrequired

An API Key is required to call Pinecone APIs. Get yours from the console.

X-Pinecone-Api-Versionstringrequired

Required date-based version header

Typestring
Default2026-07
namestringrequired

The name of the alias to create. Must be 1-512 characters of printable ASCII, excluding space and / ? # % & = \ ; +, and cannot be __default__, . or ... It shares one uniqueness space with namespace names: it cannot be the name of an existing namespace or alias, and no namespace can later be created under it.

Required string length: 1 - 512. Example: dataset

Typestring
target_namespacestringrequired

The namespace the alias resolves to. Must be an existing, active namespace in the index; an alias cannot point to another alias. To point the alias at the default namespace, use __default__.

Required string length: 1 - 512. Example: dataset_v1

Typestring

200 — A successful response.

A description of a namespace alias and the namespace it resolves to.

namestringrequired

The name of the alias. Immutable after creation.

Example: dataset

Typestring
target_namespacestringrequired

The namespace the alias resolves to. Changed only by repointing the alias. The default namespace is represented as __default__.

Example: dataset_v1

Typestring
created_atstringrequired

The time the alias was created.

Example: 2026-09-01T12:00:00.000Z

Typestring
updated_atstringrequired

The time the alias was last repointed. Advances on every repoint, including a repoint to the alias's current target; equals created_at until the first repoint.

Example: 2026-09-01T12:00:00.000Z

Typestring
Suggest an edit

Propose a replacement for this page. The site team reviews it before applying any changes.

Export
Documentation menu