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:mainOpen 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:
| Field | Value |
|---|---|
| URL | https://api.crossmodel.ai/v1 |
| API Key | your 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
| Symptom | What to check |
|---|---|
| Connection check fails but chat works | This is normal: some endpoints don't support /models probing, which doesn't affect actual chat. Just add the model IDs manually. |
| Chat returns 401 | Confirm the API key is a valid cm- key. |
| Models don't show up | Add the model IDs in the Model IDs field and save. |
| Insufficient balance | Top up in the Console. |