/v1/private/llm-provider-keyStore LLM Provider's ApiKeyStore LLM Provider's ApiKey
Request body
application/json
api_keystringauth_configobjectDynamic token auth recipe. When set, Opik fetches a short-lived bearer from the configured auth service instead of using a static api_key. Only supported for custom providers. Secret credential values read back masked.
Show child attributes
credentialsarray of objectFields sent to the token URL. Values flagged as secret are write-only: they read back as the '__SECRET__' sentinel
Show child attributes
Show array items
Fields sent to the token URL. Values flagged as secret are write-only: they read back as the '__SECRET__' sentinel
keystringrequiredsecretbooleanSecret values are encrypted at rest and never read back; once true it cannot be unset
valuestringexpires_fieldstringField holding the token lifetime in seconds in the reply; dot-path for nested replies
fallback_ttl_secondsinteger · int64Lifetime in seconds assumed when the reply doesn't state one, capped at one year; 0 disables caching for such replies. A reply-stated lifetime always wins
send_asstringHow credentials are sent: form body (default), JSON body, or basic auth (id/secret in an HTTP Basic header, remaining fields in the form body)
token_fieldstringField holding the token in the reply; dot-path for nested replies
token_urlstringAuth service URL the credentials are sent to
base_urlstringconfigurationobjectheadersobjectnamestringproviderstringrequiredprovider_namestringProvider name - required for custom LLM and Bedrock providers to uniquely identify them (e.g., 'ollama', 'vllm', 'Bedrock us-east-1'). Must not be blank for custom and Bedrock providers. Should not be set for standard providers (OpenAI, Anthropic, etc.). This requirement is conditional and validation is enforced programmatically.
{
"api_key": "",
"auth_config": {
"credentials": [
{
"key": "string",
"secret": "",
"value": "string"
}
],
"expires_field": "expires_in",
"fallback_ttl_seconds": 0,
"send_as": "basic",
"token_field": "access_token",
"token_url": "https://developer.api.example.com/authentication/v1/token"
},
"base_url": "string",
"configuration": {
"additionalProp1": "string"
},
"headers": {
"additionalProp1": "string"
},
"name": "string",
"provider": "anthropic",
"provider_name": "ollama"
}Responses
Headers
Locationcodeinteger · int32detailsstringmessagestring{
"code": 0,
"details": "string",
"message": "string"
}codeinteger · int32detailsstringmessagestring{
"code": 0,
"details": "string",
"message": "string"
}