Building on dembrane
On this page
There are three things an outside developer can do with dembrane. Pick the one you came for.
| You want to | Start with |
|---|---|
| Get conversations, transcripts and reports into your own system | Webhooks, MCP or export |
| Run the code on your own machines | Self-hosting and configuration |
| Fix or add something in the repository | Contributing and licensing |
What you can rely on#
dembrane has no published API reference. The API serves no OpenAPI document and no explorer page. These are the surfaces an integrator can build on, firmest first.
- Webhooks. dembrane POSTs a JSON body to your URL when a conversation starts, is transcribed or is summarised, and when a report is generated. v3 kept the body and the signature byte for byte the same as before. See webhooks.
- MCP and its REST face. An assistant connects over OAuth and reads what one person can see. The token format, lifetimes and scopes are treated as a contract. See MCP.
- The participant endpoints. The portal records through them and their paths and bodies are kept, but dembrane does not promise them as a public contract. See the participant API.
- Routes for a signed-in person, such as the transcript export. They work with a session. They are not built for unattended scripts. See export.
Everything else under /api/* and /api/v2/* exists for the dashboard and the portal. It is internal and can change in any release. Routes under /api/v2/admin/* are for dembrane staff.
What does not exist#
- No API keys, personal access tokens or static tokens. The credentials are a signed-in session, an OAuth token from MCP, and the participant token. See authentication.
- No API version negotiation.
/api/*and/api/v2/*are two generations kept side by side. - No browser calls from your own site. The API allows cross-origin calls with credentials from the dashboard and the portal only.
What the platform is#
dembrane v3 is five Bun apps on PostgreSQL. The source is in dembrane/platform, and the dashboard and participant portal are one React codebase in dembrane/frontend.
| App | What it does |
|---|---|
api |
The HTTP server for the dashboard, the portal and outside agents. |
worker |
Runs queued jobs and schedules: the audio pipeline, analysis, reports, emails. |
media |
An ffmpeg service that converts, splits and merges audio. |
web |
Serves the built dashboard and portal, and forwards /api to the API. |
migrate |
A one-shot job that runs before every rollout. |
PostgreSQL is the only stateful service the platform itself needs. Audio and files go to S3-compatible storage, language models run on Google Vertex AI, and email goes through SendGrid. The architecture guide goes deeper.
The licence in one line#
The repository is source available under the Business Source License 1.1. That is not an open source licence. Read licensing before you run dembrane in production.
The pages here#
- Authentication: the three credentials and who uses which.
- Webhooks: events, payloads, the signature, retries.
- MCP & bring-your-own-LLM: the address, the OAuth flow, the tools.
- Export & integrations: the routes that move data out.
- The participant API: the endpoints behind the recorder.
- Self-hosting: what the platform needs, the local setup, and what is not supported.
- Configuration & LLM providers: the settings, and the one model provider.
- Licensing: the terms as the
LICENSEfile states them. - Contributing: pull requests, the contributor agreement, translations.
Comments