DocumentationAPI ReferenceChangelog

Envocal API

API Reference API Changelog

Endpoints

List tenants GETGet a tenant GETUpdate a tenant PUTCreate a sub-tenant POST
Tenants

Create a sub-tenant

Update a tenant PUT

Replaces the tenant's name, domain and external id. The tenant type cannot be changed.

List members of a tenant GET

Direct members only, sorted by email. Members of parent tenants also have access but are listed at their own tenant.

POST
/v1/tenants/{tenantId}/sub-tenants

Creates a tenant under the tenant in the URL (current for the key's own tenant, or the id of one of its sub-tenants).

Allowed parent → child types: main → main, sub, customer; sub → customer. A customer tenant cannot have children.

Required permission: tenants:write

Authorization

Bearer
headerAuthorizationBearer <token>

Tenant API key (evk_…), created in Studio → Vault → API keys.

Path Parameters

tenantId*string

Tenant id, or current for the key's own tenant. Must be the key's tenant or one of its sub-tenants.

Request Body

The new tenant.

  1. body
  1. body
  2. …

A new tenant, created under the tenant in the URL.

name*string

Display name.

type*string

Tenant type; must be allowed under the parent's type (see Tenant.type).

Value in"main""sub""customer"
domain?string

Email domain of the organisation, unique across tenants. Optional.

extraId?string

Your own reference for this tenant. Optional.

region*"eu"

Data region the new tenant's data will live in. Required; usually the parent's region, but a global company may pick another. Cannot be changed afterwards.

Value in"eu"

Response Body

Created. The Location header points to the new tenant.

  1. response
  1. response
  2. …

A tenant (organisation) in the tenant hierarchy.

id*string

Tenant id.

name*string

Display name.

parentId?string

Parent tenant id.

type*string

Tenant type. Determines which child types it may contain: main → main, sub, customer; sub → customer; customer has no children.

Value in"main""sub""customer"
domain?string

Email domain of the organisation (e.g. example.com), unique across tenants. Optional.

extraId?string

Your own reference for this tenant (e.g. a CRM or billing id). Optional, free text.

region*string

Data region the tenant's data lives in (eu); chosen when the tenant was created, and carried by its API keys (evk_eu_...).

Example Request
curl -X POST 'https://api.envocal.ai/v1/tenants/string/sub-tenants' \  -H 'Content-Type: application/json' \  -d '{  "name": "string",  "type": "main",  "region": "eu"}'
Example Response
{  "id": "string",  "name": "string",  "parentId": "string",  "type": "main",  "domain": "string",  "extraId": "string",  "region": "string"}
Example Request
curl -X POST 'https://api.envocal.ai/v1/tenants/string/sub-tenants' \
  -H 'Content-Type: application/json' \
  -d '{
  "name": "string",
  "type": "main",
  "region": "eu"
}'
{
  "id": "string",
  "name": "string",
  "parentId": "string",
  "type": "main",
  "domain": "string",
  "extraId": "string",
  "region": "string"
}