# pip install --upgrade pinecone
import os
from pinecone import Pinecone
pc = Pinecone(api_key=os.environ["PINECONE_API_KEY"])
restore_job = pc.restore_jobs.describe(job_id="9857add2-99d4-4399-870e-aa7f15d8d326")
print(restore_job)
// npm install @pinecone-database/pinecone
import { Pinecone } from '@pinecone-database/pinecone';
// Reads PINECONE_API_KEY from the environment
const pc = new Pinecone();
const restoreJob = await pc.restoreJobs.describe('9857add2-99d4-4399-870e-aa7f15d8d326');
console.log(restoreJob);
package main
import (
"context"
"encoding/json"
"fmt"
"log"
"os"
"github.com/pinecone-io/go-pinecone/v7/pinecone"
)
func main() {
ctx := context.Background()
pc, err := pinecone.NewClient(pinecone.NewClientParams{
ApiKey: os.Getenv("PINECONE_API_KEY"),
})
if err != nil {
log.Fatalf("Failed to create Client: %v", err)
}
restoreJob, err := pc.DescribeRestoreJob(ctx, "9857add2-99d4-4399-870e-aa7f15d8d326")
if err != nil {
log.Fatalf("Failed to describe restore job: %v", err)
}
out, err := json.MarshalIndent(restoreJob, "", " ")
if err != nil {
log.Fatalf("Failed to marshal response: %v", err)
}
fmt.Println(string(out))
}
PINECONE_API_KEY="YOUR_API_KEY"
JOB_ID="9857add2-99d4-4399-870e-aa7f15d8d326"
curl "https://api.pinecone.io/restore-jobs/$JOB_ID" \
-H "X-Pinecone-Api-Version: 2026-07" \
-H "Api-Key: $PINECONE_API_KEY" \
-H 'accept: application/json'
{
"restore_job_id": "670e8400-e29b-41d4-a716-446655440001",
"backup_id": "670e8400-e29b-41d4-a716-446655440000",
"target_index_name": "sample-index",
"target_index_id": "670e8400-e29b-41d4-a716-446655440002",
"status": "Completed",
"created_at": "2025-02-04T13:00:00.000Z",
"completed_at": "2025-02-04T14:00:00.000Z",
"percent_complete": 100
}Invalid API key{
"error": {
"code": "PERMISSION_DENIED",
"message": "Access denied: Permission control::backups::list is required"
},
"status": 403
}{
"error": {
"code": "NOT_FOUND",
"message": "Restore job 670e8400-e29b-41d4-a716-446655440002 not found."
},
"status": 404
}{
"error": {
"code": "UNKNOWN",
"message": "Internal server error"
},
"status": 500
}Describe a restore job
Get a description of a restore job.
# pip install --upgrade pinecone
import os
from pinecone import Pinecone
pc = Pinecone(api_key=os.environ["PINECONE_API_KEY"])
restore_job = pc.restore_jobs.describe(job_id="9857add2-99d4-4399-870e-aa7f15d8d326")
print(restore_job)
// npm install @pinecone-database/pinecone
import { Pinecone } from '@pinecone-database/pinecone';
// Reads PINECONE_API_KEY from the environment
const pc = new Pinecone();
const restoreJob = await pc.restoreJobs.describe('9857add2-99d4-4399-870e-aa7f15d8d326');
console.log(restoreJob);
package main
import (
"context"
"encoding/json"
"fmt"
"log"
"os"
"github.com/pinecone-io/go-pinecone/v7/pinecone"
)
func main() {
ctx := context.Background()
pc, err := pinecone.NewClient(pinecone.NewClientParams{
ApiKey: os.Getenv("PINECONE_API_KEY"),
})
if err != nil {
log.Fatalf("Failed to create Client: %v", err)
}
restoreJob, err := pc.DescribeRestoreJob(ctx, "9857add2-99d4-4399-870e-aa7f15d8d326")
if err != nil {
log.Fatalf("Failed to describe restore job: %v", err)
}
out, err := json.MarshalIndent(restoreJob, "", " ")
if err != nil {
log.Fatalf("Failed to marshal response: %v", err)
}
fmt.Println(string(out))
}
PINECONE_API_KEY="YOUR_API_KEY"
JOB_ID="9857add2-99d4-4399-870e-aa7f15d8d326"
curl "https://api.pinecone.io/restore-jobs/$JOB_ID" \
-H "X-Pinecone-Api-Version: 2026-07" \
-H "Api-Key: $PINECONE_API_KEY" \
-H 'accept: application/json'
{
"restore_job_id": "670e8400-e29b-41d4-a716-446655440001",
"backup_id": "670e8400-e29b-41d4-a716-446655440000",
"target_index_name": "sample-index",
"target_index_id": "670e8400-e29b-41d4-a716-446655440002",
"status": "Completed",
"created_at": "2025-02-04T13:00:00.000Z",
"completed_at": "2025-02-04T14:00:00.000Z",
"percent_complete": 100
}Invalid API key{
"error": {
"code": "PERMISSION_DENIED",
"message": "Access denied: Permission control::backups::list is required"
},
"status": 403
}{
"error": {
"code": "NOT_FOUND",
"message": "Restore job 670e8400-e29b-41d4-a716-446655440002 not found."
},
"status": 404
}{
"error": {
"code": "UNKNOWN",
"message": "Internal server error"
},
"status": 500
}# pip install --upgrade pinecone
import os
from pinecone import Pinecone
pc = Pinecone(api_key=os.environ["PINECONE_API_KEY"])
restore_job = pc.restore_jobs.describe(job_id="9857add2-99d4-4399-870e-aa7f15d8d326")
print(restore_job)
// npm install @pinecone-database/pinecone
import { Pinecone } from '@pinecone-database/pinecone';
// Reads PINECONE_API_KEY from the environment
const pc = new Pinecone();
const restoreJob = await pc.restoreJobs.describe('9857add2-99d4-4399-870e-aa7f15d8d326');
console.log(restoreJob);
package main
import (
"context"
"encoding/json"
"fmt"
"log"
"os"
"github.com/pinecone-io/go-pinecone/v7/pinecone"
)
func main() {
ctx := context.Background()
pc, err := pinecone.NewClient(pinecone.NewClientParams{
ApiKey: os.Getenv("PINECONE_API_KEY"),
})
if err != nil {
log.Fatalf("Failed to create Client: %v", err)
}
restoreJob, err := pc.DescribeRestoreJob(ctx, "9857add2-99d4-4399-870e-aa7f15d8d326")
if err != nil {
log.Fatalf("Failed to describe restore job: %v", err)
}
out, err := json.MarshalIndent(restoreJob, "", " ")
if err != nil {
log.Fatalf("Failed to marshal response: %v", err)
}
fmt.Println(string(out))
}
PINECONE_API_KEY="YOUR_API_KEY"
JOB_ID="9857add2-99d4-4399-870e-aa7f15d8d326"
curl "https://api.pinecone.io/restore-jobs/$JOB_ID" \
-H "X-Pinecone-Api-Version: 2026-07" \
-H "Api-Key: $PINECONE_API_KEY" \
-H 'accept: application/json'
Authorizations
Headers
Required date-based version header
Path Parameters
The ID of the restore job to describe.
Response
Configuration information and deployment status of the restore job.
The RestoreJobModel describes the status of a restore job.
Unique identifier for the restore job
"670e8400-e29b-41d4-a716-446655440001"
Backup used for the restore
"670e8400-e29b-41d4-a716-446655440000"
Name of the index into which data is being restored
"sample-index"
ID of the index
"670e8400-e29b-41d4-a716-446655440002"
Status of the restore job.
Possible values: Pending, Completed, Failed, or Cancelled.
"Completed"
Timestamp when the restore job started
"2025-02-04T13:00:00.000Z"
Timestamp when the restore job finished. null until the job has completed.
"2025-02-04T14:00:00.000Z"
Progress of the restore job: 100 once the job is Completed, absent while it is pending or after it has failed. Intermediate progress is not reported.
0 <= x <= 100100
Was this page helpful?