> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.beatapi.io/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.beatapi.io/_mcp/server.

# Integrations

> Point an existing coding agent, desktop chat client, or LLM platform at BeatAPI by changing one base URL and one API key.

# Integrations

Most tools that already speak to a model vendor can speak to BeatAPI instead. Nothing is rewritten — you change a base URL, paste a BeatAPI key, and pick a model ID.

BeatAPI answers on four request formats, so a tool keeps using whichever one it was built for.

| Format                  | Endpoint                               | Tools that use it                                                             |
| ----------------------- | -------------------------------------- | ----------------------------------------------------------------------------- |
| OpenAI Chat Completions | `POST /v1/chat/completions`            | Cherry Studio, ChatBox, Cline, Cursor, AnythingLLM, Dify, Immersive Translate |
| OpenAI Responses        | `POST /v1/responses`                   | Codex CLI                                                                     |
| Anthropic Messages      | `POST /v1/messages`                    | Claude Code                                                                   |
| Gemini-compatible       | `POST /v1beta/models/{model}:{action}` | Gemini SDK integrations                                                       |

## AI coding tools

#### [Claude Code](/integrations/claude-code)

Terminal coding agent, configured through `ANTHROPIC_BASE_URL`.

#### [Codex CLI](/integrations/codex-cli)

Add BeatAPI as a custom model provider in `config.toml`.

#### [Gemini CLI](/integrations/gemini-cli)

Two environment variables point it at the native Gemini endpoint.

#### [Cline](/integrations/cline)

The VS Code extension, using its OpenAI Compatible provider.

#### [Cursor](/integrations/cursor)

Override the OpenAI base URL in the editor's model settings.

#### [CC-Switch](/integrations/cc-switch)

Manage Claude Code and Codex CLI providers from one desktop app.

## Chat clients

#### [Cherry Studio](/integrations/cherry-studio)

Add BeatAPI as an OpenAI-type provider and load the model list.

#### [ChatBox](/integrations/chatbox)

Works through the OpenAI, Claude, or Gemini provider types.

#### [AnythingLLM](/integrations/anythingllm)

Use BeatAPI as the chat model behind a local knowledge base.

## Platforms

#### [n8n](/integrations/n8n)

Use built-in model and HTTP nodes with task-specific workflow exports.

#### [Dify](/integrations/dify)

Configure text models; use the separately versioned tool plugin for actions.

#### [Zapier](/integrations/zapier)

Use the public model, Social Data, capability, and media actions.

#### [Make](/integrations/make)

Start from a shareable media template or build an HTTP scenario.

#### [Immersive Translate](/integrations/immersive-translate)

Add BeatAPI as a custom translation service in the browser extension.

## What every guide has in common

Three values are the same everywhere, so if a tool is not listed above, try its OpenAI-compatible option with these:

| Setting  | Value                                                                                                        |
| -------- | ------------------------------------------------------------------------------------------------------------ |
| Base URL | `https://api.beatapi.io/v1` for OpenAI-compatible tools, `https://api.beatapi.io` for Anthropic-native tools |
| API key  | A key created in [Dashboard → API Keys](https://beatapi.io/dashboard/apikeys)                                |
| Model ID | Any ID from [`GET /v1/models`](/text-api) or the [pricing page](https://beatapi.io/pricing)                  |

> **Note**
>
> The base URL is the only place the `/v1` suffix is ambiguous. Tools that follow the OpenAI SDK convention want `https://api.beatapi.io/v1`; tools built on the Anthropic SDK want `https://api.beatapi.io` and add `/v1/messages` themselves. Each guide states which one applies.

## Choosing a model

Every integration reaches the same catalogue with the same key. These are reasonable starting points; the [Text API](/text-api) pages list each family in full.

| Need                  | Model ID                                                         |
| --------------------- | ---------------------------------------------------------------- |
| Agentic coding        | `claude-fable-5-1`, `gpt-5.6-sol`                                |
| Hard reasoning        | `claude-opus-5`, `gpt-6-astra`, `deepseek-v4-pro-0813`           |
| Everyday chat         | `claude-sonnet-5`, `gpt-5.6-terra`, `glm-5.3`                    |
| High volume, low cost | `claude-haiku-4-5-20251001`, `gemini-3.7-flash`, `glm-5.3-flash` |
| Long context          | `minimax-m3`, `grok-4.7`                                         |

## Keeping keys safe

* Create a separate key per tool so one can be revoked without disturbing the others.
* Prefer an environment variable over a value pasted into a config file that may be committed.
* Add config files that hold a key to `.gitignore`.
* Watch spend per key under `by_api_key` in [`GET /v1/usage`](/quick-guide) or on the dashboard.