Stevora

LLM Providers

Configure workspace model-provider keys and priority

LLM Providers

Workspace provider settings override server-level keys. Supported provider values are openai, anthropic, and google. Keys are encrypted at rest and never returned.

All requests require x-api-key.

List providers

GET /v1/llm-providers

curl https://api.stevora.in/v1/llm-providers \
  -H "x-api-key: stv_your_api_key"
{
  "success": true,
  "data": [
    {
      "id": "llmp_abc123",
      "provider": "google",
      "priority": 0,
      "isEnabled": true,
      "createdAt": "2026-07-23T10:00:00.000Z",
      "updatedAt": "2026-07-23T10:00:00.000Z"
    }
  ]
}

Add or update a provider

PUT /v1/llm-providers

FieldTypeRequiredDescription
provideropenai | anthropic | googleYesProvider to configure
apiKeystringYesProvider API key, at least 10 characters
priorityintegerNoFallback priority from 0 to 99; default 0
isEnabledbooleanNoWhether the provider may be used; default true
curl -X PUT https://api.stevora.in/v1/llm-providers \
  -H "x-api-key: stv_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "provider": "google",
    "apiKey": "AIza...",
    "priority": 0,
    "isEnabled": true
  }'

The response contains provider metadata, never the key.

Update priorities

PATCH /v1/llm-providers/priority

curl -X PATCH https://api.stevora.in/v1/llm-providers/priority \
  -H "x-api-key: stv_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "providers": [
      { "provider": "google", "priority": 0 },
      { "provider": "openai", "priority": 1 }
    ]
  }'
{
  "success": true,
  "data": { "updated": true }
}

Delete a provider

DELETE /v1/llm-providers/:provider

curl -X DELETE https://api.stevora.in/v1/llm-providers/google \
  -H "x-api-key: stv_your_api_key"
{
  "success": true,
  "data": { "deleted": true }
}