Skip to main content
Pinecone Docs
current

Search documentation

Type to search this documentation.

List backups for an index

When include_deleted is false (or omitted), index_name must resolve to an active index in the project. If no active index by that name exists—including the case where only deleted indexes have used the name—the API returns 404, not an empty list.

When include_deleted is true, the API returns backups from every index in the project that has ever used this name (active and deleted). The source_index_deleted_at field is present only when the backup is from a deleted index. 404 is returned only when no index by that name has ever existed in the project (active or deleted).

curl
PINECONE_API_KEY="YOUR_API_KEY"
INDEX_NAME="docs-example"

curl -X GET "https://api.pinecone.io/indexes/$INDEX_NAME/backups" \
    -H "Api-Key: $PINECONE_API_KEY" \
    -H "X-Pinecone-Api-Version: 2026-07" \
    -H "accept: application/json"

GET /indexes/{index_name}/backups

200
{
  "data": [
    {
      "backup_id": "bkp_123abc",
      "cloud": "aws",
      "created_at": "2025-03-15T10:30:00.000Z",
      "description": "Monthly backup of production index",
      "name": "backup-2025-03-15",
      "namespace_count": 3,
      "record_count": 120000,
      "region": "us-east-1",
      "schema": {
        "fields": {
          "embedding": {
            "dimension": 1536,
            "metric": "cosine",
            "type": "dense_vector"
          }
        }
      },
      "size_bytes": 10000000,
      "source_index_id": "idx_456",
      "source_index_name": "my-index",
      "status": "Ready",
      "tags": {
        "environment": "production",
        "type": "monthly"
      }
    },
    {
      "backup_id": "bkp_789xyz",
      "cloud": "aws",
      "created_at": "2025-03-20T15:45:00.000Z",
      "description": "Pre-deployment safety backup",
      "name": "backup-2025-03-20",
      "namespace_count": 4,
      "record_count": 125000,
      "region": "us-east-1",
      "schema": {
        "fields": {
          "embedding": {
            "dimension": 1536,
            "metric": "cosine",
            "type": "dense_vector"
          }
        }
      },
      "size_bytes": 10500000,
      "source_index_id": "idx_456",
      "source_index_name": "my-index",
      "status": "Ready",
      "tags": {
        "environment": "production",
        "type": "pre-deploy"
      }
    }
  ],
  "pagination": {
    "next": "dXNlcl9pZD11c2VyXzE="
  }
}
400
{
  "error": {
    "code": "INVALID_ARGUMENT",
    "message": "Bad request. The request body included invalid request parameters."
  },
  "status": 400
}
403
{
  "error": {
    "code": "PERMISSION_DENIED",
    "message": "Access denied: Permission control::backups::list is required"
  },
  "status": 403
}
404
{
  "error": {
    "code": "NOT_FOUND",
    "message": "Index example-index not found."
  },
  "status": 404
}
500
{
  "error": {
    "code": "UNKNOWN",
    "message": "Internal server error"
  },
  "status": 500
}
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
index_namestringrequired

Name of the index whose backups are listed. When include_deleted is false or omitted, this must resolve to an active index in the project.

Typestring
include_deleted?boolean
Typeboolean
Defaultfalse

When true, includes backups for every index incarnation with this name (active and deleted). When false or omitted, only the active index's backups are included; 404 when no active index has that name.

limit?integer

The number of results to return per page.

Typeinteger
Default100
paginationToken?string

The token to use to retrieve the next page of results. A malformed token is rejected with 400.

Typestring

200 — Returns backups associated with the index name. With include_deleted true, backups for all versions of the index name are returned. With include_deleted false, only backups for the active index are returned, or 404 if there is no active index.

The list of backups that exist in the project.

data?object[]

List of backup objects

Typeobject[]
Show child attributes
backup_idstringrequired

Unique identifier for the backup.

Example: 670e8400-e29b-41d4-a716-446655440001

Typestring
source_index_namestringrequired

Name of the index from which the backup was taken.

Example: my-index

Typestring
source_index_idstringrequired

ID of the index from which the backup was taken.

Example: 670e8400-e29b-41d4-a716-446655440000

Typestring
source_index_deleted_at?string

The deletion timestamp when the source index has been deleted. Not present for backups associated with an active index.

Example: 2024-03-05T12:00:00.000Z

Typestring
name?string

Optional user-defined name for the backup.

Example: backup-2025-02-04

Typestring
description?string

Optional description providing context for the backup.

Example: Backup before bulk update.

Typestring
statusstringrequired

Current status of the backup.

Example: Ready

Typestring
cloudstringrequired

Cloud provider where the backup is stored.

Example: aws

Typestring
regionstringrequired

Cloud region where the backup is stored.

Example: us-east-1

Typestring
schema?object

The schema of a Pinecone index. The schema defines the typed fields that documents in the index can contain, including vector fields, semantic text fields, and metadata fields.

Typeobject
Show child attributes
fieldsobjectrequired

A map of field names to their configurations. Indexes that are served by the vectors API — created with the reserved _values / _sparse_values schema, or created by an earlier API version from dimension, metric, and vector_type — report their vector fields under the reserved names _values (dense) and _sparse_values (sparse), and any metadata fields configured for filtering as legacy fields carrying only filterable. Dense vectors-API indexes always report both _values and _sparse_values, regardless of how they were created.

Typeobject
record_count?integer

Total number of records in the backup.

Example: 120000

Typeinteger
namespace_count?integer

Number of namespaces in the backup.

Example: 3

Typeinteger
size_bytes?integer

Size of the backup in bytes.

Example: 10000000

Typeinteger
tags?object | null

Custom user tags added to an index, at most 20 per index. Keys must be 80 characters or less and alphanumeric, '', or '-'. Values must be 120 characters or less and consist of printable ASCII characters or spaces. To unset a key, set the value to be an empty string. null in responses when the index has no tags.

Typeobject | null
created_at?string

Timestamp when the backup was created.

Example: 2025-02-04T10:30:00.000Z

Typestring
pagination?object | null

Cursor envelope for the next page. null (or absent) on the final page of results.

Typeobject | null
Show child attributes
nextstringrequired

The token to use to retrieve the next page of results.

Example: dXNlcl9pZD11c2VyXzE=

Typestring
Suggest an edit

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

Export
Documentation menu