Provider fields
Providers represent API connections with credentials.
Provider list showing adapter type, endpoint, API key status, and action buttons.
Required
-
- Type
- string
- Required
true
Unique slug for programmatic access (e.g.,
openai-,prod ollama-).local
-
- Type
- string
- Required
true
Display name shown in the backend.
-
- Type
- string
- Required
true
The protocol to use:
openai— OpenAI APIanthropic— Anthropic Claude APIgemini— Google Gemini APIollama— Local Ollama instanceopenrouter— OpenRouter multi-model APImistral— Mistral AI APIgroq— Groq inference APIazure_— Azure OpenAI Serviceopenai custom— OpenAI-compatible endpointtypesafe— TypeSafe decision API (decisions only, Decision service)decision_— local decision sidecar (decisions only, no API key)sidecar
-
- Type
- string
API key for authentication. Stored as a nr-vault UUID identifier (envelope encryption). nr-llm never stores raw API keys in the database. Required for cloud providers (OpenAI, Claude, Gemini, etc.); not required for local providers like Ollama.
Optional
-
- Type
- string
- Default
- (adapter default)
Custom API endpoint URL.
For
azure_it is required and names the URL shape (ADR-247):openai - the resource URL, for example
https://: requests go tocontoso. openai. azure. com /openai/, so the model record's model id is the deployment name;deployments/<model id>/<operation>?api- version=<version> - a URL ending in
/openai/: requests go to the OpenAI paths below it, the deployment name travels as the body'sv1 model, and noapi-is sent.version
Both send the key in the
api-header.key Name a deployment after the model it serves (
gpt-): nr-llm reads the model's capabilities, such as a reasoning profile, from the model id, and a custom deployment name does not carry them. For reasoning models prefer the v1 URL or set a recent5. 2 api; older versions of the deployment API reject newer request fields. Enter the resource URL, not the portal's full target URI withVersion /chat/in it. A resource behind a private endpoint resolves to a private address, which the nr-vault host filter refuses until the host is listed in itscompletions allowed_.hosts
-
- Type
- string
- Default
- (empty)
Organization ID (OpenAI). Sent as the
Openrequest header by the OpenAI-compatible adapters (AI- Organization openai,together,fireworks,perplexity,custom). Azure OpenAI does not read it, andazure_does not send it.openai
-
- Type
- integer
- Default
- 120
Maximum time in seconds to wait for the complete API response. A configuration- or model-level timeout overrides this value per request.
-
- Type
- integer
- Default
- 3
Number of retries after the first failed request (0 = try once, no retries). Timed-out requests are not retried.
-
- Type
- JSON
- Default
- {}
Additional adapter-specific options. Supported keys:
customHeaders -
Object mapping header names to values, sent on every API request (including streaming), for example:
{"customHeaders": {"X-Custom-Header": "value"}}Copied!Custom headers are applied after the adapter's own headers, so a colliding name overrides the adapter value — a mistyped
Content-breaks that provider's calls.Type apiVersion azure_on the deployment API only: theopenai api-to send, for exampleversion {"api. DefaultVersion": "2025- 04- 01- preview"} 2024-; a value not shaped like a version falls back to it.10- 21
Note
A per-provider
proxyis not supported; TYPO3's global HTTP proxy configuration ($GLOBALS) applies to all outgoing provider requests.['TYPO3_ CONF_ VARS'] ['HTTP'] ['proxy']