Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
46 changes: 46 additions & 0 deletions docs/data-sources/api_key.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
---
# generated by https://github.com/hashicorp/terraform-plugin-docs
page_title: "pinecone_api_key Data Source - terraform-provider-pinecone"
subcategory: ""
description: |-
The pinecone_api_key data source lets you retrieve information about a specific API key in Pinecone.
---

# pinecone_api_key (Data Source)

The `pinecone_api_key` data source lets you retrieve information about a specific API key in Pinecone.

## Example Usage

```terraform
terraform {
required_providers {
pinecone = {
source = "pinecone-io/pinecone"
}
}
}

provider "pinecone" {}

data "pinecone_api_key" "example" {
id = "your-api-key-id"
}

output "api_key_name" {
value = data.pinecone_api_key.example.name
}
```

<!-- schema generated by tfplugindocs -->
## Schema

### Required

- `id` (String) API key identifier

### Read-Only

- `name` (String) The name of the API key
- `project_id` (String) The ID of the project that owns this API key
- `roles` (List of String) The roles assigned to the API key
59 changes: 59 additions & 0 deletions docs/data-sources/api_keys.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
---
# generated by https://github.com/hashicorp/terraform-plugin-docs
page_title: "pinecone_api_keys Data Source - terraform-provider-pinecone"
subcategory: ""
description: |-
The pinecone_api_keys data source lets you retrieve information about all API keys in a Pinecone project.
---

# pinecone_api_keys (Data Source)

The `pinecone_api_keys` data source lets you retrieve information about all API keys in a Pinecone project.

## Example Usage

```terraform
terraform {
required_providers {
pinecone = {
source = "pinecone-io/pinecone"
}
}
}

provider "pinecone" {}

data "pinecone_api_keys" "example" {
project_id = "your-project-id"
}

output "api_key_names" {
value = [for api_key in data.pinecone_api_keys.example.api_keys : api_key.name]
}

output "api_key_count" {
value = length(data.pinecone_api_keys.example.api_keys)
}
```

<!-- schema generated by tfplugindocs -->
## Schema

### Required

- `project_id` (String) The ID of the project to list API keys for

### Read-Only

- `api_keys` (Attributes List) List of API keys (see [below for nested schema](#nestedatt--api_keys))
- `id` (String) Data source identifier

<a id="nestedatt--api_keys"></a>
### Nested Schema for `api_keys`

Read-Only:

- `id` (String) API key identifier
- `name` (String) The name of the API key
- `project_id` (String) The ID of the project that owns this API key
- `roles` (List of String) The roles assigned to the API key
48 changes: 48 additions & 0 deletions docs/data-sources/project.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
---
# generated by https://github.com/hashicorp/terraform-plugin-docs
page_title: "pinecone_project Data Source - terraform-provider-pinecone"
subcategory: ""
description: |-
The pinecone_project data source lets you retrieve information about a specific project in Pinecone.
---

# pinecone_project (Data Source)

The `pinecone_project` data source lets you retrieve information about a specific project in Pinecone.

## Example Usage

```terraform
terraform {
required_providers {
pinecone = {
source = "pinecone-io/pinecone"
}
}
}

provider "pinecone" {}

data "pinecone_project" "test" {
id = "your-project-id"
}

output "project_name" {
value = data.pinecone_project.test.name
}
```

<!-- schema generated by tfplugindocs -->
## Schema

### Required

- `id` (String) Project identifier

### Read-Only

- `created_at` (String) The date and time when the project was created
- `force_encryption_with_cmek` (Boolean) Whether to force encryption with a customer-managed encryption key (CMEK)
- `max_pods` (Number) The maximum number of Pods that can be created in the project
- `name` (String) The name of the project
- `organization_id` (String) The organization ID that the project belongs to
51 changes: 51 additions & 0 deletions docs/data-sources/projects.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
---
# generated by https://github.com/hashicorp/terraform-plugin-docs
page_title: "pinecone_projects Data Source - terraform-provider-pinecone"
subcategory: ""
description: |-
The pinecone_projects data source lets you retrieve information about all projects in Pinecone.
---

# pinecone_projects (Data Source)

The `pinecone_projects` data source lets you retrieve information about all projects in Pinecone.

## Example Usage

```terraform
terraform {
required_providers {
pinecone = {
source = "pinecone-io/pinecone"
}
}
}

provider "pinecone" {}

data "pinecone_projects" "all" {}

output "project_names" {
value = [for project in data.pinecone_projects.all.projects : project.name]
}
```

<!-- schema generated by tfplugindocs -->
## Schema

### Read-Only

- `id` (String) Data source identifier
- `projects` (Attributes List) List of projects (see [below for nested schema](#nestedatt--projects))

<a id="nestedatt--projects"></a>
### Nested Schema for `projects`

Read-Only:

- `created_at` (String) The date and time when the project was created
- `force_encryption_with_cmek` (Boolean) Whether to force encryption with a customer-managed encryption key (CMEK)
- `id` (String) Project identifier
- `max_pods` (Number) The maximum number of Pods that can be created in the project
- `name` (String) The name of the project
- `organization_id` (String) The organization ID that the project belongs to
3 changes: 3 additions & 0 deletions docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,4 +33,7 @@ provider "pinecone" {}

### Optional

- `access_token` (String, Sensitive) Pinecone OAuth Access Token. Can be configured by setting PINECONE_ACCESS_TOKEN environment variable.
- `api_key` (String, Sensitive) Pinecone API Key. Can be configured by setting PINECONE_API_KEY environment variable.
- `client_id` (String, Sensitive) Pinecone OAuth Client ID. Can be configured by setting PINECONE_CLIENT_ID environment variable.
- `client_secret` (String, Sensitive) Pinecone OAuth Client Secret. Can be configured by setting PINECONE_CLIENT_SECRET environment variable.
61 changes: 61 additions & 0 deletions docs/resources/api_key.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
---
# generated by https://github.com/hashicorp/terraform-plugin-docs
page_title: "pinecone_api_key Resource - terraform-provider-pinecone"
subcategory: ""
description: |-
The pinecone_api_key resource lets you create and manage API keys within Pinecone projects.
---

# pinecone_api_key (Resource)

The `pinecone_api_key` resource lets you create and manage API keys within Pinecone projects.

## Example Usage

```terraform
terraform {
required_providers {
pinecone = {
source = "pinecone-io/pinecone"
}
}
}

provider "pinecone" {}

resource "pinecone_project" "example" {
name = "terraform-example-project"
}

resource "pinecone_api_key" "example" {
name = "terraform-example-api-key"
project_id = pinecone_project.example.id
}
```

<!-- schema generated by tfplugindocs -->
## Schema

### Required

- `name` (String) The name of the API key to be created.
- `project_id` (String) The ID of the project where the API key will be created.

### Optional

- `timeouts` (Attributes) (see [below for nested schema](#nestedatt--timeouts))

### Read-Only

- `id` (String) API key identifier
- `roles` (List of String) The roles assigned to the API key.
- `value` (String, Sensitive) The API key value (only available on creation).

<a id="nestedatt--timeouts"></a>
### Nested Schema for `timeouts`

Optional:

- `create` (String) A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
- `delete` (String) A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.
- `update` (String) A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
57 changes: 57 additions & 0 deletions docs/resources/project.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
---
# generated by https://github.com/hashicorp/terraform-plugin-docs
page_title: "pinecone_project Resource - terraform-provider-pinecone"
subcategory: ""
description: |-
The pinecone_project resource lets you create and manage projects in Pinecone. Projects are organizational units that contain indexes and collections.
---

# pinecone_project (Resource)

The `pinecone_project` resource lets you create and manage projects in Pinecone. Projects are organizational units that contain indexes and collections.

## Example Usage

```terraform
terraform {
required_providers {
pinecone = {
source = "pinecone-io/pinecone"
}
}
}

provider "pinecone" {}

resource "pinecone_project" "test" {
name = "terraform-test-project"
}
```

<!-- schema generated by tfplugindocs -->
## Schema

### Required

- `name` (String) The name of the project to be created.

### Optional

- `timeouts` (Attributes) (see [below for nested schema](#nestedatt--timeouts))

### Read-Only

- `created_at` (String) The date and time when the project was created.
- `force_encryption_with_cmek` (Boolean) Whether to force encryption with a customer-managed encryption key (CMEK).
- `id` (String) Project identifier
- `max_pods` (Number) The maximum number of Pods that can be created in the project.
- `organization_id` (String) The organization ID that the project belongs to.

<a id="nestedatt--timeouts"></a>
### Nested Schema for `timeouts`

Optional:

- `create` (String) A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
- `delete` (String) A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.
- `update` (String) A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
17 changes: 17 additions & 0 deletions examples/data-sources/pinecone_api_key/data-source.tf
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
terraform {
required_providers {
pinecone = {
source = "pinecone-io/pinecone"
}
}
}

provider "pinecone" {}

data "pinecone_api_key" "example" {
id = "your-api-key-id"
}

output "api_key_name" {
value = data.pinecone_api_key.example.name
}
21 changes: 21 additions & 0 deletions examples/data-sources/pinecone_api_keys/data-source.tf
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
terraform {
required_providers {
pinecone = {
source = "pinecone-io/pinecone"
}
}
}

provider "pinecone" {}

data "pinecone_api_keys" "example" {
project_id = "your-project-id"
}

output "api_key_names" {
value = [for api_key in data.pinecone_api_keys.example.api_keys : api_key.name]
}

output "api_key_count" {
value = length(data.pinecone_api_keys.example.api_keys)
}
17 changes: 17 additions & 0 deletions examples/data-sources/pinecone_project/data-source.tf
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
terraform {
required_providers {
pinecone = {
source = "pinecone-io/pinecone"
}
}
}

provider "pinecone" {}

data "pinecone_project" "test" {
id = "your-project-id"
}

output "project_name" {
value = data.pinecone_project.test.name
}
Loading
Loading