# Run fxbot on AnyRouter

> Connect fxbot to AnyRouter as an OpenAI-compatible server and choose a chat model.


# Run fxbot on AnyRouter

[fxbot](https://fxbot.sh/) is a self-hosted bot application. Connect it to AnyRouter using its **Other server** provider, which supports OpenAI-compatible Chat Completions.

![fxbot chat in a desktop browser](https://anyrouter.dev/screenshots/fxbot-chat-2026-11.webp)

## Connect AnyRouter

1. Create an inference key in [Dashboard → Keys](https://anyrouter.dev/dashboard/keys). It starts with `sk-ar-v1-`. A management key starting with `ak_` cannot run chat requests.
2. In fxbot, open **Settings → Providers**, select **Add provider**, and choose **Other server**.
3. Set the base URL to `https://anyrouter.dev/api/v1` and enter your AnyRouter inference key. Save the provider.
4. Choose a chat model from the provider's list, or enter its full model ID, such as `anyrouter/hermes`. Check its access requirements in the [model catalog](https://anyrouter.dev/models). A listed model may require credits, a paid plan, or a connected provider key.
5. Open a bot's **Edit** page and select the provider and model. Send a message, then check your [request logs](https://anyrouter.dev/dashboard/logs).

fxbot reads the model list from the server. The list can include models that are not chat models. Choose a model that supports chat and tool calling for a bot that uses tools. If the context window reported by the server is unsuitable, set **Context window** on the provider in fxbot.

:::note
fxbot's built-in AnyRouter provider is proposed in [fxbot pull request #12](https://github.com/iammrduncan/fxbot/pull/12). It has not been released. Use **Other server** for the setup above.
:::

## Troubleshooting

- If a chat request returns `401`, check the inference key and create a new one if necessary. The public model list does not verify the key.
- If a model cannot be used, check its ID and its account access requirements in the [catalog](https://anyrouter.dev/models).
- If the request is rate limited, check [rate limits](/features/rate-limits) and retry later.


## Related

- [Managing API Keys](/docs/features/api-keys.md)
- [Request Logs](/docs/features/request-logs.md)
- [Pricing & Plans](/docs/features/pricing.md)
