API
TelAPI is the Fastify-based REST and WebSocket gateway in front of the Delphi platform. The external surface is intentionally narrow — most tenant work happens in TelWeb (covered in the User guide) — but TelAPI is the only way to integrate Delphi into your own applications.
This section is the human-authored concept reference. An interactive Swagger reference will mount under API reference once a release-tagged openapi.json is checked in to this repo.
What's on TelAPI today
TelAPI has three distinct surfaces. Each has its own auth model, its own gating, and (in two of three cases) its own audience:
| Surface | Path(s) | Auth | Gating | Audience |
|---|---|---|---|---|
| Health check | /health | None — public | Always on | Load balancers / probes |
| Async LLM webhooks (inbound to the platform) | /api/v1/webhooks/* | Per-callback token, its own model | Always on for LLM-flow tenants | External async LLM/tool providers |
| Browser & SDK API | the rest of /api/v1/* | API key + scopes (bearer) | webrtc feature flag | Your backend + browser/mobile clients |
The webrtc flag is misleadingly named — it gates the entire browser/SDK surface, not just voice calls. See Browser & SDK API → Overview.
When you'll use which surface
| You want to… | Surface |
|---|---|
| Place WebRTC calls from your own web or mobile app | Browser & SDK API via the client SDK. |
| Mint call tokens server-side to hand out to your clients | Browser & SDK API → Call tokens. |
| Discover the team's apps from your backend | Browser & SDK API → Scopes (READ_TEAM_APPS). |
| Return an async LLM/tool response into a running conversation | Webhooks. Uses its own per-callback auth, not an API key. |
| Configure flows, providers, endpoints, tools | TelWeb / the Flow Designer. There is no public REST API for authoring flows . |
Sections
- Webhooks — async LLM callbacks (inbound to the platform).
- Browser & SDK API — authentication, scopes, call tokens, the WebSocket channel, conversations.
- Errors — the error envelope, retryable vs terminal. Shared across all surfaces.
- Examples — end-to-end recipes spanning both surfaces.
- API reference — status of the generated Swagger reference.
Audience
This section assumes you're a developer integrating against a running Delphi platform that already has tenants, flows, and endpoints set up in TelWeb. If you're new to the product, start with the User guide; if you're operating the platform itself, start with Platform.
Versioning
Each Delphi platform release ships its own TelAPI build. This docs site is versioned alongside the platform, so the API reference you read here matches the platform version selected in the version switcher. See Version sources for how to confirm what the running platform exposes.