Redeo Docs
DocsAPI Reference / Providers

Provider Management

Providers

Manage your own LLM provider API keys (BYOK).

Overview

Provider endpoints let you manage your own LLM provider API keys (BYOK — Bring Your Own Key). Each provider connection stores an API key, a priority, and an optional label. When Redeo needs to make an LLM call, it routes through your connections in priority order with automatic fallback.

All provider endpoints require authentication.

List Supported Providers

GET /v1/providers/catalog returns the list of supported providers. No authentication required.

bash
curl https://api.redeo.ai/v1/providers/catalog

Response:

json
{
  "data": [
    { "id": "openai", "label": "OpenAI", "credentialKind": "api_key", "supportsEndpoint": false },
    ...
  ]
}

List Your Connections

GET /v1/providers returns your configured provider connections (API keys are masked).

bash
curl https://api.redeo.ai/v1/providers \
  -H "Authorization: Bearer $REDEO_API_KEY"

Response:

json
{
  "data": [
    {
      "provider": "openai",
      "label": "My OpenAI Key",
      "priority": 500,
      "key_prefix": "sk-proj-abc1",
      "updated_at": "2026-04-10T12:00:00Z"
    }
  ]
}

Add or Update a Connection

POST /v1/providers adds a new provider connection or updates an existing one for the same provider.

bash
curl -X POST https://api.redeo.ai/v1/providers \
  -H "Authorization: Bearer $REDEO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "provider": "openai",
    "api_key": "sk-proj-...",
    "priority": 500,
    "label": "My OpenAI Key"
  }'
FieldTypeRequiredDescription
providerstringYesProvider ID from the catalog (e.g. openai, anthropic)
api_keystringYesYour API key for the provider
priorityintegerNoPriority 0–1000. Lower = tried first. Auto-assigned if omitted.
labelstringNoHuman-readable label (max 64 characters)

Update a Connection

PATCH /v1/providers/{provider} updates an existing connection. Only included fields are changed.

bash
curl -X PATCH https://api.redeo.ai/v1/providers/openai \
  -H "Authorization: Bearer $REDEO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "api_key": "sk-proj-new-key...",
    "priority": 100
  }'

Remove a Connection

DELETE /v1/providers/{provider} removes a provider connection.

bash
curl -X DELETE https://api.redeo.ai/v1/providers/openai \
  -H "Authorization: Bearer $REDEO_API_KEY"

Response: { "ok": true }