Skip to main content
Pinecone Docs

Search documentation

Type to search this documentation.

On this pageOverview

Create a dedicated read nodes index

Create a Pinecone dedicated read nodes index from scratch or from a backup of an existing index.

  1. Create the index

    Call Create an index. In the request body, in the spec.serverless.read_capacity object, set the following fields:

    FieldValueNotes
    modeDedicated
    dedicated.node_typeb1 or t1See node types
    dedicated.scalingManualThe only supported value
    dedicated.manual.shardsNumber of shards neededMinimum 1 shard; each shard provides 250 GB of storage
    dedicated.manual.replicasNumber of replicas neededMinimum 0 (this pauses the index)

    This example creates an index with two shards and one replica:

    Request
    PINECONE_API_KEY="YOUR_API_KEY"
    
    curl "https://api.pinecone.io/indexes" \
         -H "Accept: application/json" \
         -H "Content-Type: application/json" \
         -H "Api-Key: $PINECONE_API_KEY" \
         -H "X-Pinecone-Api-Version: 2025-10" \
         -d '{
               "name": "example-dedicated-index",
               "dimension": 1024,
               "metric": "cosine",
               "deletion_protection": "enabled",
               "tags": {
                 "environment": "production"
               },
               "vector_type": "dense",
               "spec": {
                 "serverless": {
                   "cloud": "aws",
                   "region": "us-east-1",
                   "read_capacity": {
                     "mode": "Dedicated",
                     "dedicated": {
                       "node_type": "b1",
                       "scaling": "Manual",
                       "manual": {
                         "shards": 2,
                         "replicas": 1
                       }
                     }
                   }
                 }
               }
             }'
    Response
    {
      "name": "example-dedicated-index",
      "vector_type": "dense",
      "metric": "cosine",
      "dimension": 1024,
      "status": {
        "ready": false,
        "state": "Initializing"
      },
      "host": "example-dedicated-index-1c6ab6aa.svc.aped-4627-b74a.pinecone.io",
      "spec": {
        "serverless": {
          "region": "us-east-1",
          "cloud": "aws",
          "read_capacity": {
            "mode": "Dedicated",
            "dedicated": {
              "node_type": "b1",
              "scaling": "Manual",
              "manual": {
                "shards": 2, // <---- desired state
                "replicas": 1
              }
            },
            "status": {
              "state": "Migrating",
              "current_shards": null, // <---- current state
              "current_replicas": null
            }
          }
        }
      },
      "deletion_protection": "enabled",
      "tags": {
        "environment": "production"
      }
    }

    The response includes two status fields:

    FieldDescription
    status.stateOverall index status (for example, Initializing, Ready, Terminating)
    spec.serverless.read_capacity.status.stateRead capacity status (Migrating, Scaling, Ready, Error)
  2. Add your data

    After the index is created, upsert or import your data.

  1. Restore the backup

    Restore the backup to a new on-demand index with the same data as the original.

  2. Delete extra namespaces

    If the restored index has multiple namespaces, delete all of them except the one you want to keep. Dedicated read nodes support only one namespace.

  3. Migrate to dedicated read nodes

    Convert the restored on-demand index by following Migrate to dedicated read nodes.

Suggest an edit

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

Export
Documentation menu