2026-09-05 The first real calls have been placed: five ended normally, six failed. Here is what broke.

Sub-processors

Everyone who can touch a call

Generated from the registry the product runs on rather than written down once. If a vendor can be selected in the console, it is on this page; if it is on this page and nobody has established where it processes, the row says so.

With nothing changed, three vendors see the content of a call: ElevenLabs for speech in both directions, Anthropic for the model, and Twilio for the carrier leg. Everything else on this page is available and switched off.

§01 Method

Why this list cannot go stale

A sub-processor list is the compliance document most likely to be wrong, because it is written once and the system keeps changing. This one is assembled when the page renders, from the two registries that decide what a tenant can select at all: a provider whose adapter is marked implemented is on this list, and one that is not, is not.

What cannot be generated is the annotation — where a vendor says it processes, and under whose contract. That is a table in the source file, keyed by the same identifier, and a vendor with no entry is not quietly omitted. It appears with the location marked as not established, and a test fails the build until somebody fills it in.

§02 Providers

Speech, models and the carrier

These are the vendors on the path of a live call. A tenant selects them per assistant, with their own API key, which is why the contract column matters: for all of them today, your agreement with the vendor is the one in force and CallAgent is passing data along it rather than sub-contracting.

The location is the vendor's own published statement about where it processes. We have not verified any of them, and there is no transfer impact assessment behind this table.

Telephony 1

The telephone leg: audio in both directions, both numbers, call signalling.

Twilio

twilio
Where, as published
United States
Whose contract
Yours, on your key

Transcription 12

The caller's audio, converted to text.

Deepgram

deepgram
Where, as published
United States
Whose contract
Yours, on your key

AssemblyAI

assemblyai
Where, as published
United States
Whose contract
Yours, on your key

OpenAI

openai
Where, as published
United States
Whose contract
Yours, on your key

OpenAI Realtime Transcription

openai_realtime
Where, as published
United States
Whose contract
Yours, on your key

Gladia

gladia
Where, as published
France
Whose contract
Yours, on your key

Speechmatics

speechmatics
Where, as published
United Kingdom
Whose contract
Yours, on your key

Soniox

soniox
Where, as published
United States
Whose contract
Yours, on your key

Cartesia

cartesia
Where, as published
United States
Whose contract
Yours, on your key

ElevenLabs Scribe

elevenlabs
Where, as published
United States
Whose contract
Yours, on your key

On by default

Sonix

sonix
Where, as published
United States
Whose contract
Yours, on your key

Talkscriber

talkscriber
Where, as published
Not established
Whose contract
Yours, on your key

xAI

xai
Where, as published
United States
Whose contract
Yours, on your key

Language models 5

The transcript and every turn of the conversation, as text.

OpenAI

openai
Where, as published
United States
Whose contract
Yours, on your key

Anthropic

anthropic
Where, as published
United States
Whose contract
Yours, on your key

On by default

Google Gemini

google
Where, as published
United States
Whose contract
Yours, on your key

Groq

groq
Where, as published
United States
Whose contract
Yours, on your key

Custom OpenAI-compatible LLM

custom_llm
Where, as published
Wherever you point it
Whose contract
Yours, on your key

Speech synthesis 1

The assistant's replies, as text, converted to audio.

ElevenLabs

elevenlabs
Where, as published
United States
Whose contract
Yours, on your key

On by default

§03 Connectors

The systems a call can write into

A connector is different in kind from a speech vendor: it moves data the other way. Nothing reaches any of these unless somebody in your organization connects their own account and gives an assistant a tool that writes to it — and what arrives there is whatever that tool was told to send, which is your decision at design time.

Listed for completeness, because a booking written into a calendar is a disclosure of personal data whether or not anybody thought of it as one.

25 connectable today 25

  • Airtable
  • Calendly
  • Freshdesk
  • Gmail
  • GoHighLevel
  • Google Calendar
  • Google Sheets
  • HubSpot
  • Intercom
  • Jira
  • Linear
  • Make
  • MCP server
  • Notion
  • Outlook Calendar
  • Outlook Mail
  • Pipedrive
  • Shopify
  • Slack
  • Stripe
  • Twilio SMS
  • WhatsApp Business
  • WooCommerce
  • Zapier
  • Zendesk
§04 Optional

Trace exporters

If you point the platform at a tracing backend, the prompts and tool calls of each turn go there too. The endpoint is yours and so is the relationship; it is on this page because a reader compiling their own record needs to know the option exists.

  • Langfuse
  • OpenTelemetry (OTLP)
  • Custom HTTP trace endpoint
§05 Infrastructure

The parts that are not a vendor choice

Below the product sit the things every installation needs: a Postgres database, an object store for recordings and artefacts, a queue, and the servers running the control plane and the voice gateway. Which provider those sit on is a property of the installation rather than of the software, and this page will not invent one.

Two facts about the object store are worth stating here because they surprise people. A recording is written to the platform bucket first and relocated to your own afterwards, so even a bring-your-own-storage tenant has the audio pass through ours. And if your destination is unreachable when the relocation runs, the object stays on the platform bucket.

The parts that are not a vendor choice
Database Postgres, in the installation's configured region. European Union by default.
Object store The platform bucket, plus your own if you have added one.
Mail No transactional mail provider is configured. Mail is written to the log.
Payments Card details never reach this system; the payment processor holds them.
§06 Gaps

What is missing from this page

No legal entity names, no registered addresses and no signed onward agreements. The first two are absent because a plausible-looking company name that turns out to be the wrong subsidiary is worse than a vendor name a reader can look up themselves; the third is absent because it does not exist.

There is no automated notification when this list changes. The commitment is thirty days' notice by email to the account owner, and today that is a person remembering to send it.

A route to a person, which is the point of publishing this

A DPA nobody can ask a question about is a PDF. If your review turns up something this page does not cover, or something it gets wrong, the form reaches the person who wrote it.

The rest of the set

The other European documents

None of the seven documents in this set has been through a lawyer. They are engineering statements about a running system, published because a wrong description is worse than a missing one, and they will be reviewed before anybody is asked to sign anything.

Notes

  1. 1 The list is generated by app/Support/Site/Subprocessors.php from RegistryData and ConnectorRegistry — the same two the console reads.
  2. 2 The default pipeline is read from config/callagent.php, key defaults.
  3. 3 The relocation of a recording from the platform bucket to a tenant bucket is app/Jobs/Storage/RelocateArtifactToStorageDestination.php, switched by object_storage.relocate_gateway_uploads.