A tenant is the primary workspace in Authdog. It holds your projects, team members, verified domains, and configuration. Every action in the console happens inside a tenant — selecting one is the first step after signing in.
The resource hierarchy is Organization > Tenant > Project > Environment. An organization groups tenants under shared billing and administration. Use separate tenants to isolate different products, clients, or stages of your business — each tenant has its own projects, team, and settings.

Tenant list
The page header reads "Tenants" with the subtitle "Join, Create or Request access to a Tenant." Two action buttons sit in the top-right corner — "Join Tenant" and "New Tenant" — alongside a view toggle.
You can switch between two layouts:
- Cards view — each tenant is a card showing the tenant name, description (truncated to 100 characters), plan label (e.g. "Free Plan"), project count badge, last-updated date, and shortcut icons for settings and copying the tenant ID.
- Table view — a compact row-based layout with columns for Name, Description, Projects, and Updated.
Click a tenant card to select it. Selecting a tenant clears any previous project and environment selection, then redirects you to the Projects hub where you can pick a project.
Tip
Use the settings gear icon on a tenant card to jump directly to that tenant's settings without selecting it first.
Create a new tenant
In the Dashboard

- From the Tenants page, click "New Tenant" in the top-right corner.
- Enter a Name (minimum 2 characters) and an optional Description.
- Click "Create Tenant".
- You'll be redirected to the tenant list where your new tenant appears.
You can also start the creation flow from the "+" button in the top navigation bar.
Programmatically
Use the createTenant mutation to create a tenant via the API:
mutation CreateTenant($input: CreateTenantInput!) {
createTenant(input: $input) {
id
name
description
createdAt
}
}{
"input": {
"name": "Production",
"description": "Main production workspace"
}
}Form fields
| Field | Required | Details |
|---|---|---|
| Name | Yes | Minimum 2 characters. Displayed in the tenant list, sidebar dropdown, and breadcrumb navigation. |
| Description | No | Free-text summary of the tenant's purpose. Truncated to 100 characters in the card view. |
Tip
Choose a descriptive tenant name that reflects the product or client it serves — you can always rename it later in Tenant Settings > General.
Join an existing tenant
In the Dashboard

- From the Tenants page, click "Join Tenant" in the top-right corner.
- Enter the Invitation code provided by the tenant admin (minimum 6 characters).
- Click "Join Tenant".
- On success, a celebration animation plays, the tenant is automatically selected, and you land on the Projects hub.
Programmatically
Use the joinTenant mutation with the invite code:
mutation JoinTenant($code: String!) {
joinTenant(code: $code) {
id
name
}
}{
"code": "abc123"
}Warning
Invite codes are single-use. If a code has already been redeemed, the tenant admin will need to generate a new one from the Invites tab in Tenant Settings.
Tenant settings
After selecting a tenant, navigate to its settings via the gear icon on the tenant card or through the route /dashboard/tenant/{tenantId}/settings. The settings page has four tabs: General, Team, Invites, and Domains.
General
The General tab shows a "Tenant Overview" card with the subtitle "Manage basic tenant settings."
| Field | Editable | Details |
|---|---|---|
| Status | No | A green "Active" badge showing the tenant's current state. |
| Tenant Name | Yes | Pre-filled with the current name. Update it and click "Save Changes". |
| Tenant ID | No | The tenant's UUID. Click "Copy" to copy it to your clipboard. |
| Projects | No | Read-only count of projects in this tenant (e.g. "0 project(s)"). |
Below the overview card is the Danger Zone, outlined in red. It contains a single action:
- Delete Tenant — permanently deletes the tenant and all of its projects, users, and data. You must type the tenant name to confirm.
Caution
Deleting a tenant is permanent and cannot be undone. All projects, environments, team members, and data inside the tenant will be destroyed. Only the tenant owner can perform this action.
Team
The Team tab lets you manage who has access to this tenant.
- View all current team members in a table showing name, email, role, and join date.
- Click "Add member" to invite someone by email.
- Assign roles and permissions to control what each member can do.
Invites
The Invites tab tracks outstanding team invitations.
- View all pending invitations in a table.
- Click "Invite member" to send a new invitation.
- Revoke pending invitations that are no longer needed.
Warning
Revoking an invite prevents the code from being redeemed, but it does not prevent the user from signing up to Authdog on their own. If you need to block access entirely, ensure they are not added to the Team tab.
Domains
The Domains tab lets you add and verify custom APEX domains for your tenant. Verified domains are used to validate Identity Flow redirect URIs and associate environments with your domain.
- Click "Add domain" to register a new APEX domain.
- Choose a verification method: DNS (add a TXT record to your DNS provider) or Manual (request manual verification by an admin).
- Wait for verification to complete.
Domain statuses:
| Status | Meaning |
|---|---|
| Verified | Domain ownership confirmed. The domain can be synced with a project environment. |
| Pending DNS | Waiting for DNS record propagation. Click "Retry" to re-check. |
| Pending Manual | Waiting for manual verification by an admin. |
Verified domains can be synced with a project environment. Domains can be deleted if no longer needed.
Tip
DNS propagation can take up to 48 hours. If your domain is stuck in Pending DNS status, verify the TXT record is correctly configured with your DNS provider, then click "Retry".
What happens after selecting a tenant
Selecting a tenant clears any previous project and environment, then lands you on the Projects hub. From there you pick a web project or MCP server to continue into the rest of the console.
Related
| Read | To learn how to |
|---|---|
| Projects | Browse and create projects inside a tenant |
| Environments | Manage deployment stages within a project |
| Multi-tenancy | Understand Tenant → Project → Environment isolation |
| Organizations | Model customer companies inside an environment |