Authdog

Tenants

Last updated Aug 15, 2026
View as Markdown

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.

Tenants

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.

A rail on the left filters the list by organization, with All at the top and a count badge per organization. It is useful once your account spans several organizations.

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 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.

Create a new tenant

In the Dashboard

  1. From the Tenants page, click "New Tenant" in the top-right corner.
  2. Enter a Name (minimum 2 characters) and an optional Description.
  3. Click "Create Tenant".
  4. 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($meta: CreateTenantInput!) {
  createTenant(meta: $meta) {
    tenant { id name description createdAt }
    meta { ok { message } error { message } }
  }
}
{
  "meta": {
    "name": "Acme",
    "description": "Main workspace for Acme products"
  }
}

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.

Join an existing tenant

In the Dashboard

  1. From the Tenants page, click "Join Tenant" in the top-right corner.
  2. Enter the Invitation code provided by the tenant admin (minimum 6 characters).
  3. Click "Join Tenant".
  4. On success, a celebration animation plays, the tenant is automatically selected, and you land on the Projects hub.

Programmatically

Use the joinTenantWithCode mutation with the invite code:

mutation JoinTenantWithCode($meta: JoinTenantWithCodeInput!) {
  joinTenantWithCode(meta: $meta) {
    tenant { id name }
    meta { ok { message } error { message } }
  }
}
{
  "meta": {
    "invitationCode": "abc123"
  }
}

Tenant settings

After selecting a tenant, open Tenant Settings from the sidebar footer, or use the gear icon on the tenant card. The route is /dashboard/tenant/{tenantId}/settings. The page is titled "Tenant Settings" with the subtitle "Manage this tenant's profile, team access, and domain settings." and has four tabs: General, Team, Invites, and Domains.

The footer entry only appears for tenant owners.

Tenant settings

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. "5 project(s)").

Below the overview card is the Danger Zone, outlined in red and subtitled "Irreversible and destructive actions. Proceed with caution." It contains a single action, Delete Tenant.

Team

The Team tab is titled "Team Management""Manage team members, roles, and access permissions for your tenant."

The table lists each member with their account and status, permission (for example an OWNER badge with the role Owner), validity timestamps (Valid From, Valid Until, Active From, Created At), and a per-row action menu.

Click "Add Member" to grant someone access by email.

Invites

The Invites tab is titled "Pending Invites""Outstanding invitations waiting for team members to join this tenant."

Click "Invite Member" to send a new invitation. Pending invitations can be revoked from the table.

Domains

The Domains tab is titled "Tenant Domains""Manage and verify domains associated with this tenant." Verified domains are used to validate Identity Flow redirect URIs and to associate environments with your own domain.

  1. Click "Add Domain" to register a new APEX domain.
  2. Choose a verification method: DNS (add a TXT record at your DNS provider) or Manual (request manual verification by an admin).
  3. Wait for verification to complete.

The table shows Domain, Status, Type of Validation, Subdomain Challenge, TXT Record, and the Created / Updated / Validated timestamps. Copy the challenge subdomain and TXT record straight from the row into your DNS provider.

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 then be used as a custom identity hostname per environment — see Domains.

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 project to continue into the rest of the console.

Read To learn how to
Console overview Understand the console layout and context switching
Projects Browse and create projects inside a tenant
Environments Manage deployment stages within a project
Organizations Group tenants and centralize billing
Multi-tenancy Understand Organization > Tenant > Project > Environment isolation

Learn more