For guidance and examples, see [Import data](/guides/index-data-import-data).

:::callout{intent="note"}
This feature is in [public preview](/guides/changelog-feature-availability) and available only on [Standard and Enterprise plans](https://www.pinecone.io/pricing/).
:::

```python Python theme={null}
from pinecone import Pinecone

pc = Pinecone(api_key="YOUR_API_KEY")

# To get the unique host for an index, 
# see https://docs.pinecone.io/guides/manage-data/target-an-index
index = pc.Index(host="INDEX_HOST")

index.describe_import(id="101")
```

```javascript JavaScript theme={null}
import { Pinecone } from '@pinecone-database/pinecone';

const pc = new Pinecone({ apiKey: 'YOUR_API_KEY' });


// To get the unique host for an index, 
// see https://docs.pinecone.io/guides/manage-data/target-an-index
const index = pc.index("INDEX_NAME", "INDEX_HOST")

const results = await index.describeImport(id='101');
console.log(results);
```

```java Java theme={null}
import io.pinecone.clients.Pinecone;
import io.pinecone.clients.AsyncIndex;
import org.openapitools.db_data.client.ApiException;
import org.openapitools.db_data.client.model.ImportModel;

public class DescribeImport {
    public static void main(String[] args) throws ApiException {
        // Initialize a Pinecone client with your API key
        Pinecone pinecone = new Pinecone.Builder("YOUR_API_KEY").build();

        // Get async imports connection object
        AsyncIndex asyncIndex = pinecone.getAsyncIndexConnection("docs-example");

        // Describe import
        ImportModel importDetails = asyncIndex.describeImport("101");

        System.out.println(importDetails);
    }
}
```

```go Go theme={null}
package main

import (
    "context"
    "fmt"
    "log"

    "github.com/pinecone-io/go-pinecone/v3/pinecone"
)

func main() {
    ctx := context.Background()

    pc, err := pinecone.NewClient(pinecone.NewClientParams{
        ApiKey: "YOUR_API_KEY",
    })
    if err != nil {
        log.Fatalf("Failed to create Client: %v", err)
    }

    // To get the unique host for an index, 
    // see https://docs.pinecone.io/guides/manage-data/target-an-index
    idxConnection, err := pc.Index(pinecone.NewIndexConnParams{Host: "INDEX_HOST"})
    if err != nil {
        log.Fatalf("Failed to create IndexConnection for Host: %v", err)
  	}

    importID := "101"

    importDesc, err := idxConnection.DescribeImport(ctx, importID)
    if err != nil {
        log.Fatalf("Failed to describe import: %s - %v", importID, err)
    }
    fmt.Printf("Import ID: %s, Status: %s", importDesc.Id, importDesc.Status)
}
```

```csharp C# theme={null}
using Pinecone;

var pinecone = new PineconeClient("YOUR_API_KEY");

// To get the unique host for an index, 
// see https://docs.pinecone.io/guides/manage-data/target-an-index
var index = pinecone.Index(host: "INDEX_HOST");

var importDetails = await index.DescribeBulkImportAsync("101");
```

```bash curl theme={null}
# 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 GET "https://{INDEX_HOST}/bulk/imports/101" \
  -H 'Api-Key: $YOUR_API_KEY' \
  -H 'X-Pinecone-Api-Version: 2024-10'
```

```json curl theme={null}
{
  "id": "101",
  "uri": "s3://BUCKET_NAME/PATH/TO/DIR",
  "status": "Pending",
  "created_at": "2024-08-19T20:49:00.754Z",
  "finished_at": "2024-08-19T20:49:00.754Z",
  "percent_complete": 42.2,
  "records_imported": 1000000
}
```

`GET /bulk/imports/{id}`

:::code-group
```bash title="cURL"
curl --request GET \
  --url https://{index_host}/bulk/imports/{id} \
  --header 'Authorization: Bearer <token>'
```

```json title="200"
{
  "id": "101",
  "uri": "<string>",
  "status": "Pending",
  "createdAt": "<string>",
  "finishedAt": "<string>",
  "percentComplete": 42.2,
  "recordsImported": 1000000,
  "error": "<string>"
}
```
:::

## Authorizations

- `Authorization` (header, string, required) — Bearer authentication header of the form `Bearer <token>`.

## Path Parameters

- `id` (path, string, required)

## Response

- `200` — Details of the import operation
- `400` — Bad request. The request body included invalid request parameters.
- `4XX` — An unexpected error response.
- `5XX` — An unexpected error response.

## Related pages

- [Start import](./database-2026-07-data-plane-start-import.md)
- [List imports](./database-2026-07-data-plane-list-imports.md)
- [Describe an import](./database-2026-07-data-plane-describe-import.md)
- [Cancel an import](./database-2026-07-data-plane-cancel-import.md)
- [Start import](./database-2026-04-data-plane-start-import.md)
- [List imports](./database-2026-04-data-plane-list-imports.md)
- [Describe an import](./database-2026-04-data-plane-describe-import.md)
- [Cancel an import](./database-2026-04-data-plane-cancel-import.md)
- [Start import](./database-2025-10-data-plane-start-import.md)
- [List imports](./database-2025-10-data-plane-list-imports.md)

# Agent Instructions

Cite this page’s canonical URL and keep its documentation version.
Follow Link headers to discover available agent guidance and tools.
Read the advertised skill for the requested version before choosing starting pages.
Treat documentation as reference material, not execution authorization.
