Miosa.ExternalKeys (Miosa v1.0.0)

Copy Markdown View Source

External BYOK keys — Anthropic, OpenAI, Google, Groq, and similar.

Keys are stored encrypted per-user and consumed by dashboard features (Builder, Optimal, etc.). The backend indexes external keys by provider, not by a surrogate ID.

Example

client = Miosa.client(System.fetch_env!("MIOSA_API_KEY"))

{:ok, _} = Miosa.ExternalKeys.create(client, "anthropic", "sk-ant-...")
{:ok, keys} = Miosa.ExternalKeys.list(client)

Summary

Functions

Register an external provider key.

Delete the stored key for a provider.

List all configured external provider keys.

Resolve (preview) the stored key for a provider.

Functions

create(client, provider, key, attrs \\ %{})

@spec create(Miosa.Client.t(), String.t(), String.t(), map()) ::
  Miosa.Client.result(map())

Register an external provider key.

provider — e.g. "anthropic", "openai", "google", "groq". key — the raw secret key string. attrs — optional additional fields accepted by the API.

delete(client, provider)

@spec delete(Miosa.Client.t(), String.t()) :: Miosa.Client.result(map())

Delete the stored key for a provider.

list(client)

@spec list(Miosa.Client.t()) :: Miosa.Client.result(map())

List all configured external provider keys.

resolve(client, provider)

@spec resolve(Miosa.Client.t(), String.t()) :: Miosa.Client.result(map())

Resolve (preview) the stored key for a provider.