CLI & IDE Agents

Open WebUI

Integrate Open WebUI with FinOps to access any AI provider through a modern open-source chat interface with virtual keys and observability.

Open WebUI is a modern, open-source chat interface that supports OpenAI-compatible APIs. By adding FinOps as a connection, you get access to any model configured in FinOps through a familiar ChatGPT-like interface, plus governance features like virtual keys and built-in observability.

If your Allowed Headers are already set to *, you can skip this note. If not and you face issues integrating FinOps with Open WebUI, try switching to * or adding the specific headers required by your client. By default, FinOps whitelists: Content-Type, Authorization, X-Requested-With, X-Stainless-Timeout, and X-Api-Key.

Setup

1. Install Open WebUI

Follow the Open WebUI documentation for installation. Open WebUI can run via Docker, Docker Compose, or Kubernetes.

2. Add FinOps as a Connection

If running Open WebUI in Docker and FinOps is on the host machine, use http://host.docker.internal:8080/v1 instead of localhost.

  1. Open Open WebUI in your browser
  2. Go to ⚙️ Admin SettingsConnectionsOpenAI
  3. Click ➕ Add Connection
  4. Configure the following:
FieldValue
URL{AI_GATEWAY_URL}/v1 (or your FinOps host, e.g. https://finops.yourcompany.com/v1)
API KeyYour FinOps virtual key if authentication is enabled; otherwise leave empty or use dummy
  1. Click Save
Adding FinOps as a connection in Open WebUI Admin Settings

3. Model Discovery

Open WebUI fetches available models from FinOps's /v1/models endpoint. If auto-detection fails or you want to filter which models appear, add model IDs to the Model IDs (Filter) allowlist in the connection settings. Use FinOps model IDs in provider/model format (e.g. openai/gpt-5, anthropic/claude-sonnet-4-5-20250929).

FinOps models listed in the Open WebUI model selector

4. Start Chatting

Select your FinOps connection's model from the chat model selector and start chatting.

Image generation and chat in Open WebUI powered by FinOps

Virtual Keys

When FinOps has virtual key authentication enabled, set API Key in the connection to your virtual key. This lets you enforce usage limits, budgets, and access control per user or team.

For team deployments, create separate Open WebUI connections (or use different API keys per connection) - each virtual key can have its own rate limits, budgets, and provider access rules configured in the FinOps dashboard.

Model Selection

Open WebUI displays models fetched from FinOps or those you add to the Model IDs allowlist. Use FinOps model IDs in provider/model format to access any configured provider:

  • Use powerful models like openai/gpt-5 or anthropic/claude-sonnet-4-5-20250929 for complex conversations
  • Use fast models like groq/llama-3.3-70b-versatile for quick responses

Using Multiple Providers

FinOps routes requests to the correct provider based on the model name. Use the provider/model-name format to access any configured provider through the single /v1 endpoint:

anthropic/claude-sonnet-4-5-20250929
openai/gpt-5
gemini/gemini-2.5-pro
mistral/mistral-large-latest

Supported Providers

FinOps supports the following providers with the provider/model-name format:

openai, azure, gemini, vertex, bedrock, mistral, groq, cerebras, cohere, perplexity, xai, ollama, openrouter, huggingface, nebius, parasail, replicate, vllm, sgl

Open WebUI connects to FinOps via a single OpenAI-compatible endpoint. FinOps handles routing to the correct provider based on the model name - no per-provider configuration needed in Open WebUI.

Multimodality

Open WebUI supports image generation and vision (image understanding). You can use FinOps for both.

Image Generation

Set a FinOps provider/model as your image inference engine for DALL·E-style image generation:

  1. Go to ⚙️ Admin SettingsSettingsImages
  2. Set Image Generation Engine to Open AI
  3. Configure:
  • API Endpoint URL: {AI_GATEWAY_URL}/v1 (or your FinOps host + /v1)
  • API Key: Your FinOps virtual key if authentication is enabled
  • Model: FinOps model ID in provider/model format (e.g. openai/dall-e-3, openai/gpt-image-1)

FinOps routes image generation requests to the configured provider. Use any image-capable model in your FinOps configuration (OpenAI DALL·E, GPT-Image, or other providers that support /v1/images/generations).

Image generation setup in Open WebUI Admin Settings

Vision (Image Understanding)

Chat models that support vision (e.g. openai/gpt-4o, anthropic/claude-sonnet-4-5) work through your main FinOps connection. When you select a vision-capable model in the chat selector, you can attach images to your messages - Open WebUI sends them to FinOps, which routes to the correct provider.

Docker Networking

Choose the correct URL for your setup:

SetupURL
Open WebUI and FinOps on same host{AI_GATEWAY_URL}/v1
Open WebUI in Docker, FinOps on hosthttp://host.docker.internal:8080/v1
Both in same Docker networkhttp://finops-container-name:8080/v1

Environment Variables (Alternative)

You can also configure FinOps via environment variables when running Open WebUI:

# Single connection
OPENAI_API_BASE_URLS="{AI_GATEWAY_URL}/v1"
OPENAI_API_KEYS="your-finops-virtual-key"

# Multiple connections (semicolon-separated)
OPENAI_API_BASE_URLS="{AI_GATEWAY_URL}/v1;https://other-gateway.com/v1"
OPENAI_API_KEYS="key1;key2"

Observability

All Open WebUI traffic through FinOps is logged. Monitor it at {AI_GATEWAY_URL}/logs - filter by provider, model, or search through conversation content to track usage across your team.

Next Steps