Self-hosted · sovereign · programmable

The CPaaS your CFO will sign off on.

A Communications Platform as a Service — programmable voice, virtual numbers, AI agents, outbound campaigns, webhooks and a clean REST API — running entirely inside your own Windows / IIS server, over your own SIP trunks. No per-minute SaaS markup. No tenant data crossing the public cloud. Same surface third-party CPaaS vendors charge for, on your hardware.

REST API v1

POST a phone number + a system prompt and the platform dials, attaches a real-time voice AI, emails the transcript. GET to list calls, virtual numbers, transcripts. Bearer-token auth, JSON in and out, single-line curl examples.

Webhooks

Subscribe to call.ended, transcript.saved, outbound-ai.finished and seven other lifecycle events. HMAC-signed deliveries, automatic retry with exponential backoff, auto-pause after consecutive failures. Validates with a test-fire button.

Real-time voice AI

Inbound numbers answered by a live voice agent that speaks any language, follows the script you wrote, transfers to human softphones, and emails you the transcript. Same engine powers outbound campaigns — appointment reminders, post-stay surveys, payment chasing.

BYOC SIP bridge

Bring your own SIP trunks (FRITZ!Box, BTS, retail carriers, whatever). The platform layers programmable telephony on top — you keep the carrier relationship, the per-minute economics, and the geographic routing you already negotiated.

Sovereign data path

Tenant data — prompts, transcripts, call records, webhook events — never leaves your server. No third-party CPaaS vendor sits between you and your carrier. GDPR / NIS2 / DORA compliance is a property of your existing setup, not a fight with someone else's privacy policy.

One-time license, not per minute

Pay once for the platform, then pay only your carrier for the actual minutes used. Compare against $0.014/min for inbound + $0.024/min for outbound on the big CPaaS vendors — on a 50k-min/month workload, the platform pays for itself in weeks.

The CPaaS API in three commands

Bearer token from /oidc.ashx, then any of:

# Initiate an outbound AI call
curl -X POST https://phone.codeb.io/api.ashx/v1/calls \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "phone":        "+4915157610183",
    "displayName":  "Reminder",
    "email":        "ops@example.com",
    "systemPrompt": "You are calling Stefan to remind him about his dental appointment tomorrow at 14:00.",
    "apiKey":       "AIza...",
    "voice":        "Aoede",
    "language":     "en-US"
  }'

# List active + recent calls
curl -H "Authorization: Bearer $TOKEN" \
  https://phone.codeb.io/api.ashx/v1/calls

# Fetch the full transcript of a finished call
curl -H "Authorization: Bearer $TOKEN" \
  https://phone.codeb.io/api.ashx/v1/transcripts/oac-2f9e1b7c3a48

Every endpoint has a single-line curl example and a complete request / response body in the REST API reference.

How CodeB compares with Twilio, Vonage, Plivo

The feature set is similar; the operating model is different.

CapabilityCodeB (self-hosted)Hyperscaler CPaaS
Programmable outbound voiceREST + AI prompt + webhooksREST + TwiML / NCCO + webhooks
Inbound voice AI receptionistBuilt-in, per-number, your promptExternal AI service + Studio flow
SIP trunksBring your own (FRITZ!Box, carrier, IP-PBX)Buy minutes from the vendor
Per-minute price0 — you pay your carrier directly$0.014–0.024/min inbound + outbound
Data residencyOn your server, your jurisdictionUS-east / EU-west / multi-region cloud
Recording & transcriptsOn disk, JSON, full conversationPer-recording fee, vendor storage
Number portabilityYour carrier — you already control the DIDVendor lock-in on numbers bought from them
Custom prompts & personasPlain text files; hot-reload per vnumStudio flows + extra AI subscription
Test-fire webhook from admin UIYes — one click, full HMAC validationVendor docs, no in-product simulator
License modelOne-time, per serverPay-as-you-go forever

Workloads it’s built for

The biggest cost reduction comes from outbound voice campaigns. A 15-second appointment reminder over a CPaaS vendor: $0.006 outbound + $0.0035 AI ≈ $0.01 per call — on 200,000 reminders/month, ~$2,000/month. On CodeB: free, minus the carrier minutes you were paying anyway.

  • Healthcare — appointment reminders, prescription refill nudges, post-visit follow-ups.
  • Hospitality — pre-arrival check-in calls, post-stay surveys, restaurant no-show prevention, hotel wakeup calls.
  • SaaS — trial-expiry nudges, expansion outreach, churn save campaigns, support callbacks.
  • Financial services — payment reminders, fraud alerts (voice second factor), KYC interview scheduling.
  • Operations — on-call escalations, dispatch confirmations, supply-chain status calls.
  • Inbound — AI receptionist front desk, multi-language IVR replacement, after-hours coverage.

Full catalogue with sample prompts: 15 outbound AI workflows →

Architecture in one paragraph

One Windows server runs IIS plus a Windows Service called CodeBSipBridge. IIS serves the meeting room, admin pages, and the REST API. The bridge holds the SIP UAS / UAC against your trunks, registers softphones, and runs the AI voice sessions (one WebSocket per active call). When a call ends or a transcript saves, the bridge fires the corresponding webhook to your configured URL within ~50 ms. There is no third-party message bus, no managed cloud, no SaaS dependency. The whole thing can run air-gapped if your carrier accepts a private SIP peer.

Want to see it on your own carrier?

Drop us a line with your trunk type and we’ll show you the REST + webhook surface against a sandbox tenant the same day.