Skip to main content
If you embed Devic in a product, one Devic account serves many of your customers. Devic calls each of them a tenant, and each user or team inside them a subtenant. Everything that follows — cost, limits, memory, conversations, connected apps — is partitioned along those two axes. Tenants

Tenants register themselves

You do not create tenants. The first time a message or an agent run carries a tenantId, Devic records it and starts attributing to it.
From that call onwards, acme-corp appears in the tenants list with its conversations, its cost and its subtenants.
Attribution is forward-only. A tenant starts accumulating cost from the moment it first appears — traffic that arrived before it was identified is not retroactively assigned.

What Devic keeps about them

Devic fills in what it can and lets you correct it: a display name, an email, a logo, and the corporate domain inferred from the subtenants’ addresses. The inference is deliberately conservative — it needs at least two distinct subtenants sharing a non-generic domain, so one person with a Gmail address never turns into a company. Edit a field by hand and the automatic detection stops touching it.

The three things you get for free

Cost per customer

Daily and monthly cost by tenant and subtenant, broken down by agent and assistant.

Isolation

Memory, connected apps and conversations are partitioned by tenant by default.

Limits

Consumption ceilings per plan, enforced before the model is called.

Next steps

Usage limits and plans

Tiers, windows and what happens when someone runs out.

Tenant sessions

Proving which customer is calling, instead of trusting the browser.

Memory buckets

How memory is partitioned along the same axes.

Integrations per end user

Each customer connecting their own accounts.