Using BeatAPI in Cursor
Using BeatAPI in Cursor
Cursor is an AI code editor. Its model settings accept an OpenAI-compatible endpoint, so BeatAPI can be supplied as a custom provider without any extension.
Prerequisites
- Cursor installed.
- A BeatAPI API key — create one in Dashboard → API Keys.
Step 1: Open model settings
Open Settings — the gear icon at the top right, or Cmd+Shift+J on macOS, Ctrl+Shift+J on Windows and Linux — then choose Models in the sidebar.
Step 2: Point it at BeatAPI
Find the OpenAI API Key section and enable Override OpenAI Base URL, then enter:
Save. Cursor verifies the endpoint before accepting it.
The Base URL must include the /v1 suffix and nothing after it. A trailing slash or an extra path segment produces a 404 on every request, which Cursor reports as a failed connection rather than as a bad URL.
Step 3: Add the models you want
Cursor keeps its own model list, and an entry in that list is not proof the account serves it. Add the model IDs below by name, and enable only those — a model that BeatAPI does not serve returns not_found on first use.
Cursor lets you pick a different model per feature — Chat, inline edit (Cmd+K), and completion. Pairing a cheap model with completion and a strong one with Chat is the single biggest lever on cost, because completion fires far more often than chat does.
Step 4: Use it
- Chat —
Cmd+L/Ctrl+L, then ask a question or describe a task. - Inline edit — select code, press
Cmd+K/Ctrl+K, describe the change. - Completion — type; press
Tabto accept a suggestion.
Reference files with @filename and directories with @folder so the model sees the right context instead of guessing from the open buffer.
FAQ
Cursor cannot reach BeatAPI
- Base URL must be exactly
https://api.beatapi.io/v1. - The key must be active — check Dashboard → API Keys.
- Behind a corporate proxy, allow
api.beatapi.io.
A model in the list does not work
Cursor’s list is its own. Only the IDs the account actually serves will answer; see the pricing page for the current catalogue.
402 insufficient_credits
The balance is exhausted. Add credits from the dashboard.
429 rate_limit_exceeded
The key exceeded its request rate. Completion is the usual cause, because it fires on almost every keystroke pause. Move completion to a cheaper model, or raise the allowance — the per-minute rate rises with lifetime top-ups and is shown on the dashboard.
Responses are slow
Use a lighter model for completion and inline edits, keep selections tight, and prefer @file references over pasting large blocks.
Support
Open a support ticket from the dashboard and include the request_id from the failing response.

