Pricing
Sign in Get started
Running 11 real client backends on this install, right now

Your AI ships client backends in an afternoon.

Don't take our word for it: watch the actual panel take a client from empty workspace to endpoints, login, a running workflow and connected payments. 47 seconds, no cuts.

🔒 socket.nextctl.com/dashboard REAL UI
The BackCTL dashboard, real interface
●
0:00 / 0:47

Every frame above is the real application, captured from this live install. Nothing redrawn, nothing mocked.

1 afternoon kickoff → documented API 10 clients · one panel $150+/mo SaaS replaced per client 0 lock-in
✦Visual Workflows ✦REST Gateway ✦GraphQL API ✦Headless CMS ✦Content Blocks ✦Forms & Validation ✦JWT + OAuth Auth ✦Email & SMS OTP ✦MCP: AI builds it ✦Payments ✦Preview Site Deploys ✦Scheduled Publishing ✦Inbound Webhooks ✦Outbound Events ✦Real-time SSE ✦Cron Scheduler ✦AI Translation ✦Billing & Metering ✦Observability Alerts ✦File Storage ✦Revision History ✦Draft Preview ✦ZIP + SQL Export
What we optimize for

Four values, zero compromises.

Every feature on this page traces back to one of these. If a capability doesn't serve them, it doesn't ship.

01 / SPEED ⚡

Speed is a feature

Kickoff call to documented, production API in one afternoon. Templates scaffold, MCP fills gaps, docs write themselves.

✓ Empty → live in the 47s film above
02 / OWNERSHIP 🔓

You own everything

Self-hostable, full ZIP + SQL export, server-to-server migration. Leaving is easy, which is exactly why staying is safe.

✓ Zero lock-in, by design
03 / TRANSPARENCY 🔍

Transparent by design

AI translation shows its token cost before you click. Usage metering shows what each client costs. The stats below are live from this database.

✓ No surprise bills, no black boxes
04 / PROOF 🛡️

Battle-tested daily

Our own agency's client work runs on this exact install. Every feature exists because a real project needed it, and still uses it.

✓ We're our own biggest customer
New · Workflow engine

Automation your clients can watch running.

A visual studio built into every project. Form lands → AI summarizes → email goes out → Slack pings, drawn as nodes, versioned like code, replayable step by step when something needs explaining.

⚡Real triggers, not just cronForm submissions, record created / updated / deleted, inbound webhooks, HTTP calls, schedules, or fire one manually from the studio.
🤖AI steps with guardrailsSummarize, classify, translate or draft inside a flow: token cost metered per run, credentials in an encrypted vault, egress locked to hosts you allow.
⏸Waits & human approvalsA run can pause for a manager's approval email and resume where it stopped: refund flows and content sign-offs without writing a state machine.
🧾Versioned & auditableEvery edit is a new version with a visual diff. Every run logs each step's input and output. Debugging is reading, not guessing.
📨Forms can answer with a workflowPoint a form endpoint at a flow and the submission's HTTP response is computed by it: instant lead scoring, dynamic thank-you pages.
✦Triggers ×10 ✦Logic & branches ✦AI ✦Data & records ✦Integrations ✦Sandboxed code ✦Platform actions
The real BackCTL workflow studio: node palette, canvas with a live production pipeline, and the node configuration panel Real screenshot · this install
Outcome № 01

Your AI ships client backends in an afternoon.

The client call ends at 2pm. By 5pm there's a content model, a lead form, login with OTP, a triage workflow and a documented API your frontend dev can hit. Not a prototype: the production backend.

Brief your AI like a colleague

Paste your MCP URL into Claude, Cursor or ChatGPT once. Then: “New client: dental clinic, services + team pages, booking form, Swedish and English.” It builds, you watch.

Review in the panel

Everything the AI creates lands in your workspace: adjust a field, tighten validation, rewire a workflow node, flip on caching. Visual builders for whatever you'd rather click than describe.

Hand your frontend dev a link

API key + auto-generated docs. REST and GraphQL, filtering, embeds, i18n, draft preview. They start building against it the same day. Need a demo site? Deploy a preview in one click.

The afternoon, in four tabs

What “done by 5pm” actually looks like.

# Your AI, in Claude or ChatGPT, connected to your MCP URL (40+ tools):
You: New client: recipes site. Categories, photo uploads, login, Swedish + English.
AI:  create_project ✓  create_endpoint ×2 ✓  create_relationship ✓
     setup_auth ✓  configure_project(localization) ✓  create_workflow ✓  create_api_key ✓
AI:  Done. Docs at /docs/recipes. Want a preview site deployed too?
# Filter, search, sort, paginate: one consistent envelope
GET /api/gateway/client-project/products?filter[status]=published&sort=-created_at&per_page=10
Authorization: Bearer <api_key>

{ "success": true, "data": [ … ], "meta": { "total": 42, "page": 1, "has_more": true } }
# Auto-generated schema: nested relations in one round trip
POST /api/gql/client-project

{ posts(limit: 10, sort: "-created_at") { id title category { name } } }
# A form endpoint that answers through a workflow: the flow computes the response
POST /api/f/client-project/quote-request        # visitor submits the form

# → trigger: form.submitted  → AI: score & summarize  → branch  → respond
{ "success": true, "data": { "estimate": "$2,400–$3,100", "next_step": "call_booked" } }
Outcome № 02

Ten clients, one panel, zero babysitting.

Every client is an isolated project with its own keys, team and limits, but you run them all from one place, with one update path. The platform absorbs the work that used to eat your retainers.

🗂️

Clients edit content without breaking things

Give each client a manager login scoped to exactly their content: 19 granular permissions, revision history for one-click undo, and draft preview links so “can you publish it so I can check?” never happens again. Handover is a login, not a runbook.

New 🕸️

Busywork becomes a workflow

Lead triage, notifications, AI processing, approval chains, drawn as nodes in the visual studio, versioned with diffs, replayable per step. Even the form's HTTP response can come from a flow. See the engine →

💳

Client work gets paid

Connect each client's own Stripe, PayPal, Razorpay, SSLCommerz, Flutterwave or 2Checkout; keys stay per project, webhooks signature-verified. The flow →

🔐

Client login portals, done

Registration, JWT sessions, social OAuth, email/SMS OTP: twelve ready-made endpoints per project, one click.

New 🚀

Preview sites in one click

Deploy a static demo (landing page, lead-capture site) straight from the panel or via MCP, hosted on a private URL you hand to the client.

New 🗓️

Content that publishes itself

Schedule records to go live or expire at exact times. The campaign page appears Monday 09:00 without anyone logging in.

🌍

Every market's language

Locale fallback plus one-click AI translation with the cost shown up front. A second market is a button, not a sprint.

🔭

Know before the client does

Per-client usage metering and slow-request/error alerts to Slack or any webhook. You call them, not the other way around.

New · Payments

Take payments with your own gateway.

Connect Stripe, PayPal, Razorpay, SSLCommerz, Flutterwave or 2Checkout; keys stay per project, funds settle straight to your account. Tokenized, hosted checkout means card data never touches the backend, so you stay in the lightest PCI scope.

Stripe Cards, wallets, intents
PayPal Orders & capture
Razorpay India-first checkout
SSLCommerz Bangladesh gateway
Flutterwave Pan-Africa payments
2Checkout Global hosted pay
1
Create the charge server-side

Your trusted amount, the gateway's API; never a client-supplied price.

2
Customer pays with the gateway

Tokenized checkout or hosted page: card data goes browser → provider directly.

3
Webhook confirms the truth

A signature-verified inbound webhook marks the order paid. Idempotent & auditable, and it can kick off a fulfillment workflow.

Bring your own keys PCI SAQ-A scope Signature-verified webhooks Configure in chat via MCP
Observability

Every request leaves a paper trail.

Request fires, a log line appears, and one click opens the full request/response payload. This is the actual logs screen and the actual inspector, captured from this install's live traffic.

✓Gateway traffic, per projectMethod, status, latency and caller IP for every request. Filter by project or date, then open a row for the payloads.
✓One-click payload inspectionThe exact request in, the exact JSON out. Debugging a client integration is reading, not guessing.
✓Alerts before the client callsSlow-request and error-rate thresholds ping Slack or any webhook, wired per project in Settings.
✓Off by default, on when you need itPer-project logging defaults to off for performance; flip it on for the projects you are actively debugging.
The real request logs screen with live gateway traffic Live traffic
The real request/response inspector showing an actual JSON payload
Why “zero babysitting” holds

Enterprise-grade features. Zero configuration.

The unglamorous 80% of every client backend (metering, alerts, revisions, roles, caching) is already wired into each project. You toggle it in Settings; you never build it, and you never get paged for it.

✓Usage metering & billing plansEvery gateway request is counted per project with daily rollups. Assign plans, enforce limits, and see exactly which client costs what.
✓Observability with alert webhooksSlow-request and error-rate thresholds ping Slack or any URL; you hear about problems before the client does.
✓Workflow guardrailsEncrypted credential vault, sandboxed code steps, egress locked to an allowlist, expression engine with no eval: automation that can't wander off.
✓Revision history on all contentEvery change is kept and restorable. “Undo” is a platform feature, not a support ticket.
✓Real-time SSE eventsPush content changes and form submissions to dashboards live: no polling loops to write or pay for.
✓Roles, members & manager access19 granular permissions. Clients get CMS-only access to exactly the endpoints you allow; nothing else exists for them.
✓Performance switchesPer-endpoint response caching with TTL, per-project rate limits, Redis-ready cache & queue when you scale.
1ModelResources, fields, blocks, relationships (visual or via MCP)
2ContentEditors, revisions, draft preview, scheduling, AI translation
3AutomateVisual workflows on real events, with approvals & run history
4DeliverREST + GraphQL with caching, keys & auto-docs
5Observe & scaleLogs, metering, alerts; Redis, rate limits, export anywhere
Every project ships with 18 settings groups. Flip them on when you need them:
General Mail / SMTP SMS / OTP Security AI Configuration Notifications Custom Domain Webhooks File Upload Real-time (SSE) Billing & Usage Observability Revision history Localization (i18n) Draft Preview Performance Cache Members
Agency math

The ROI isn't subtle.

A “simple” client backend is usually four subscriptions plus three weeks of glue code. Collapse it into one platform and the numbers compound with every client you take on.

$150+
SaaS replaced, per project, per month

Headless CMS ($99) + form service ($19) + auth provider ($25) + automation tool ($29) at typical list prices, all included in every project here.

3 wks → 1 day
from kickoff to documented API

Templates scaffold the model, MCP fills the gaps, the docs write themselves. The tour above goes empty → production in 47 seconds of real clicks.

30 h/mo
returned on 10 client backends

Ten separate stacks ≈ 3 hours of patching and babysitting each, every month. One panel, one update path. Bill those hours instead.

0
lock-in

Full ZIP + SQL export and server-to-server migration. Leaving is easy, which is exactly why staying is safe.

Zero lock-in

Your projects travel with you.

The whole project (schemas, content, files, settings, even email templates) exports to a portable archive. Move servers, hand off to a client, or keep cold backups.

📦

One-file project export

A versioned ZIP with everything inside: endpoints, records, files, auth config, notification rules. Re-import it on any install and it just runs.

🔁

Server-to-server migration

Imports rewrite old URLs to the new host on the fly and keep every file's stored name; image links survive the move untouched.

🗄️

SQL export

Prefer raw data? Take a per-project SQL dump for your own warehouse, audits, or plain peace of mind.

One connected platform

Pick a capability. See the real screen.

These are not illustrations. Each capability below opens the actual interface it ships with, captured from this install.

Real platform screen

The project hub: endpoints, keys, records, webhooks and modules in one place

We're our own case study

We run our agency's client backends on this exact install.

APIForge isn't a product we ship and walk away from. It runs NextCTL, our own agency. Dental clinic sites, voice-agent dashboards, lead-gen campaigns: every client backend lives on the platform you're looking at right now.

Why that matters to you

Every feature on this page exists because one of our client projects needed it: the manager role came from a dental client's front desk editing opening hours, the inbound-webhook verifier from wiring a voice agent's call events, the workflow engine from lead triage we got tired of doing by hand.

“If this platform goes down, our own client work goes down with yours. That's the SLA behind the SLA.”

Read the case study
Live from this install
0
client projects
0
API endpoints
0
form submissions handled
0
API requests served

Counted from this database when the page rendered, not a marketing slide.

Pricing

Start free. Scale when it pays for itself.

Every plan includes the full platform: CMS, forms, auth, REST & GraphQL, webhooks and docs. You pay for scale, not for features held hostage.

Free
Your first project, no card required
$0
forever
Includes
  • 1 project
  • 10,000 requests / month
  • 1 GB file storage
Start free
Pro
Agencies running client work at volume
$29
/month
Everything in Starter, plus
  • 25 projects
  • 100,000 requests / month
  • 100 GB file storage
Go Pro
Self-hosted
Your servers, your rules, no meters
Custom
one platform, unlimited use
Everything in Pro, plus
  • Unlimited projects
  • 0 requests / month
Read the docs

Prices in USD. Yearly billing saves ~20%. Limits are soft; we talk before anything stops working.

FAQ

Answers, quickly.

A multi-project backend platform: each project is an isolated workspace with a headless CMS, form endpoints, end-user authentication, REST & GraphQL APIs, file storage, webhooks and auto-generated docs. You build visually, via API, or by talking to your AI assistant over MCP.
Every user can get a personal MCP URL. Paste it into Claude, Cursor or ChatGPT and the assistant gains 26 tools: create projects, model content, wire relationships, enable auth, import data. Everything it builds is scoped to your account, validated server-side, and visible in the panel instantly.
No. Resources, validation, relationships, auth and automations are configuration. Your frontend (Next.js, mobile, anything) consumes the REST or GraphQL API with an API key. When you outgrow clicking, the same platform is fully operable via API and MCP.
Start free with one full-featured project, no card. Paid plans add projects and request volume: Starter at $29/mo and Pro at $99/mo, about 20% less billed yearly. Self-hosting is unlimited on your own hardware. Every tier gets the whole platform; see the pricing section for the full breakdown.
Yes, that's the manager role: CMS-only access, restricted to the specific content endpoints you allow, with 16 granular permissions behind it. Clients edit content; they never see API keys, settings or other projects.
Enable localization per project, pick your locales, and request content with ?locale=sv; missing translations fall back to your default language. Editors translate manually or with the one-click AI translate button, which shows a token/cost estimate before running and saves drafts for review.
Completely. Any project exports to a self-contained ZIP (content, schemas, settings, files) that imports into any other APIForge instance, plus per-resource CSV/JSON export and a SQL dump option. No lock-in is a feature, not a promise.
Per-endpoint response caching with TTL and cache-key strategies, per-project rate limits, request metering, and SSE for real-time updates. Read-heavy endpoints typically serve from cache without touching the database.
Yes, the platform is designed to run on your own infrastructure, with documented scaling paths (Redis, object storage, horizontal app nodes). A hosted offering and a premium dedicated tier are on the roadmap.

Your next client kickoff could end with a working API.

Create the project, brief your AI, hand your frontend dev a documented backend, before the kickoff notes are typed up. It's faster to try than to read about.