Back to Onyx

generated by https://github.com/hashicorp/terraform-plugin-docs

terraform-provider-onyx/docs/resources/embedding_provider.md

4.7.0-cloud.72.5 KB
Original Source

onyx_embedding_provider (Resource)

A cloud embedding provider credential (one per provider type). api_key is masked by the API on read, so out-of-band changes cannot be detected; the configured value is authoritative and is resent on every update. The currently-active embedding provider cannot be deleted (the API offers no override) — switch search settings off it first.

Example Usage

terraform
# Keep api_key set in configuration: the Onyx API replaces all fields on
# update, so applying without it clears the stored key.
resource "onyx_embedding_provider" "cohere" {
  provider_type = "cohere"
  api_key       = var.cohere_api_key
}
<!-- schema generated by tfplugindocs -->

Schema

Required

  • provider_type (String) Provider type: openai, cohere, voyage, google, litellm, or azure. Changing it replaces the resource.

Optional

NOTE: Write-only arguments are supported in Terraform 1.11 and later.

  • api_key (String, Sensitive) Provider API key. Keep this set in configuration: because the API has no keep-stored-key flag, an update applied without it clears the stored key. Prefer api_key_wo, which keeps the value out of state entirely; the two cannot be set together.
  • api_key_wo (String, Sensitive, Write-only) Provider API key, held only in configuration. Terraform sends it on every apply and stores nothing, so the key never reaches state. Pair it with api_key_wo_version to rotate it. Needs Terraform 1.11 or later.
  • api_key_wo_version (Number) Rotation counter for api_key_wo. Terraform never stores a write-only value and so cannot tell that the secret changed; raise this number to make the next apply send the current one. Do not derive it from the secret itself — unlike the secret, this number is kept in state.
  • api_url (String) Custom API URL (LiteLLM proxy, Azure).
  • api_version (String) API version (Azure).
  • deployment_name (String) Deployment name (Azure).

Read-Only

  • id (String) Same as provider_type (the API's natural key).

Import

Import is supported using the following syntax:

The terraform import command can be used, for example:

shell
#!/bin/sh
# Import by provider type (the API's natural key).
terraform import onyx_embedding_provider.cohere cohere