llm_api_key_env: Declare an API key sourced from an environment variable

View source: R/secrets.R

llm_api_key_envR Documentation

Declare an API key sourced from an environment variable

Description

Reference an API key by the name of the environment variable that holds it, so the secret never appears in your R code or saved objects. Store the key in your shell profile or in ⁠~/.Renviron⁠ (e.g. OPENAI_API_KEY=sk-...).

Usage

llm_api_key_env(var, required = TRUE, default = NULL)

Arguments

var

Name of the environment variable (e.g., "OPENAI_API_KEY"). A character vector is also accepted; the variables are tried in order and the first one that is set wins, which is convenient when a key may live under more than one name (e.g., c("GROQ_API_KEY", "GROQ_KEY")).

required

If TRUE, a missing variable raises an authentication error at call time. If FALSE, a missing variable resolves to an empty key, which is appropriate for providers that do not require authentication (e.g., a local Ollama server).

default

Optional default used if the environment variable is not set.

Details

Best practice is to not pass a key explicitly at all: llm_config() already looks up the standard variable for each provider (⁠<PROVIDER>_API_KEY⁠, then ⁠<PROVIDER>_KEY⁠). Use llm_api_key_env() only when your variable has a non-standard name.

Value

A secret handle to pass as api_key = llm_api_key_env("VARNAME") in llm_config().

See Also

llm_config()

Examples

cfg <- llm_config(
  "openai", "gpt-4o-mini",
  api_key = llm_api_key_env("MY_OPENAI_KEY")
)

LLMR documentation built on July 11, 2026, 1:06 a.m.