APIForge uses entry-level localization: each language version is its own record, linked through a shared translation group. Search, sorting and revisions stay natural per language.
Enabling it
Project Settings → Localization: pick your locales (en, sv, de…), a default, and whether missing translations fall back to the default. Existing records keep working; they're "neutral" and show in every language until translated.
Consuming it
GET /api/gateway/{project}/{endpoint}?locale=sv
You get Swedish records; for items without a Swedish version you get the default-language record (fallback on) or nothing (fallback off). Responses include _locale and _translation_group so you can build language switchers.
The AI translate button
On any record, each missing language shows a 🤖 button. Clicking it first shows an estimate (provider, model, expected tokens and cost) before anything runs. Confirm, and the platform translates all text fields in one call (including text inside blocks; URLs, numbers and images are copied untouched), then saves the result as a draft in the right language for human review.
Cost control
Every AI call is logged (tokens in/out, model, computed cost) on the project's AI usage page, with daily/monthly/all-time summaries. Works with Anthropic, OpenAI or OpenRouter keys, global or per-project.
Try it on a real project
Reading is slower than building here. Spin up a workspace and see for yourself.
Get startedKeep reading
Your first backend in 10 minutes
Create a project, model a resource, grab an API key and make your first authenticated requ...
TutorialsLet Claude build your backend (MCP)
Connect Claude, Cursor or ChatGPT to your personal MCP URL and build a complete backend by...
TutorialsDynamic Next.js pages backed by APIForge
One catch-all route + one pages resource = your whole marketing site, editable in the CMS...