Skip to main content
POST
/
backups
/
{backup_id}
/
create-index
PINECONE_API_KEY="YOUR_API_KEY"
BACKUP_ID="a65ff585-d987-4da5-a622-72e19a6ed5f4"

curl "https://api.pinecone.io/backups/$BACKUP_ID/create-index" \
  -H "Api-Key: $PINECONE_API_KEY" \
  -H "X-Pinecone-Api-Version: 2025-10" \
  -H 'Content-Type: application/json' \
  -d '{
        "name": "restored-index",
        "tags": {
          "tag0": "val0",
          "tag1": "val1"
        },
        "deletion_protection": "enabled"
      }'
{
    "restore_job_id":"e9ba8ff8-7948-4cfa-ba43-34227f6d30d4",
    "index_id":"025117b3-e683-423c-b2d1-6d30fbe5027f"
}
PINECONE_API_KEY="YOUR_API_KEY"
BACKUP_ID="a65ff585-d987-4da5-a622-72e19a6ed5f4"

curl "https://api.pinecone.io/backups/$BACKUP_ID/create-index" \
  -H "Api-Key: $PINECONE_API_KEY" \
  -H "X-Pinecone-Api-Version: 2025-10" \
  -H 'Content-Type: application/json' \
  -d '{
        "name": "restored-index",
        "tags": {
          "tag0": "val0",
          "tag1": "val1"
        },
        "deletion_protection": "enabled"
      }'
{
    "restore_job_id":"e9ba8ff8-7948-4cfa-ba43-34227f6d30d4",
    "index_id":"025117b3-e683-423c-b2d1-6d30fbe5027f"
}

Authorizations

Api-Key
string
header
required

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

Path Parameters

backup_id
string
required

The ID of the backup to create an index from.

Body

application/json

The desired configuration for the index created from a backup.

The configuration needed to create a Pinecone index from a backup.

name
string
required

The name of the index. Resource name must be 1-45 characters long, start and end with an alphanumeric character, and consist only of lower case alphanumeric characters or '-'.

Required string length: 1 - 45
Example:

"example-index"

tags
object

Custom user tags added to an index. Keys must be 80 characters or less. Values must be 120 characters or less. Keys must be alphanumeric, '', or '-'. Values must be alphanumeric, ';', '@', '', '-', '.', '+', or ' '. To unset a key, set the value to be an empty string.

Example:
{ "tag0": "val0", "tag1": "val1" }
deletion_protection
string
default:disabled

Whether deletion protection is enabled/disabled for the index. Possible values: disabled or enabled.

Response

The request to create the index has been accepted.

The response for creating an index from a backup.

restore_job_id
string
required

The ID of the restore job that was created.

Example:

"670e8400-e29b-41d4-a716-446655440000"

index_id
string
required

The ID of the index that was created from the backup.

Example:

"123e4567-e89b-12d3-a456-426614174000"