CrossModel

Integration guide

Open WebUI

Open WebUI is the most popular open-source, self-hosted AI chat interface (135k+ stars on GitHub). Its Connections settings let you add any OpenAI-compatible provider, so adding CrossModel as a connection puts the whole catalog in your web UI.

Quickstart

1. Deploy Open WebUI

If you don't have it running yet, start it with Docker:

docker run -d \
  -p 3000:8080 \
  --name open-webui \
  --restart always \
  ghcr.io/open-webui/open-webui:main

Open http://localhost:3000 and create the initial admin account.

2. Create an API key

Sign in to the Console and create a key that starts with cm- on the API Keys page. The key is shown only once, so copy it somewhere safe.

3. Add the CrossModel connection

As an admin, navigate to:

⚙️ Admin Settings → Connections → OpenAI → ➕ Add Connection

Fill in:

FieldValue
URLhttps://api.crossmodel.ai/v1
API Keyyour cm- key

Click Save.

4. Add models manually (if auto-detect fails)

Open WebUI tries to fetch the model list by calling /models. If that doesn't work, find the Model IDs (Filter) field in the connection settings, type a model ID, and click + to add it — for example:

deepseek/deepseek-v4-pro
anthropic/claude-sonnet-4.6

See the full list of model IDs in the model catalog.

5. Start chatting

Pick the model you added from the selector at the top of Open WebUI and start the conversation.

A note on Docker

If Open WebUI runs inside a Docker container, replace localhost with host.docker.internal in the URL — but only when the model service also runs on your machine. Connecting to CrossModel in the cloud needs no such change.

Troubleshooting

SymptomWhat to check
Connection check fails but chat worksThis is normal: some endpoints don't support /models probing, which doesn't affect actual chat. Just add the model IDs manually.
Chat returns 401Confirm the API key is a valid cm- key.
Models don't show upAdd the model IDs in the Model IDs field and save.
Insufficient balanceTop up in the Console.