Skip to main content
PATCH
/
tenants
/
{id}
Update a tenant
curl --request PATCH \
  --url https://api.engagefabric.com/tenants/{id} \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "name": "Acme Corporation Inc.",
  "metadata": {
    "industry": "SaaS",
    "companySize": "100-200"
  },
  "isAlphaLocked": true
}
'
{
  "id": "123e4567-e89b-12d3-a456-426614174000",
  "name": "Acme Corporation",
  "slug": "acme-corp",
  "plan": "FREE",
  "status": "ACTIVE",
  "isActive": true,
  "isAlphaLocked": true,
  "onboardingStatus": "PENDING",
  "alphaApprovalStatus": "PENDING",
  "createdAt": "2025-01-15T10:30:00Z",
  "updatedAt": "2025-01-15T10:30:00Z",
  "alphaApprovedAt": "2025-01-15T10:30:00Z",
  "alphaApprovedBy": "admin@engagefabric.com",
  "alphaRejectionReason": "Not a good fit for alpha program",
  "alphaApplicationNote": "We are building a gamification platform",
  "metadata": {
    "industry": "SaaS"
  },
  "deletedAt": null,
  "_count": {
    "projects": 3,
    "members": 5
  }
}

Documentation Index

Fetch the complete documentation index at: https://docs.engagefabric.com/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

JWT token for admin console authentication

Path Parameters

id
string
required

Tenant UUID

Body

application/json
name
string

Tenant name

Required string length: 2 - 255
Example:

"Acme Corporation Inc."

plan
enum<string>

Subscription plan

Available options:
FREE,
STARTER,
PROFESSIONAL,
ENTERPRISE
status
enum<string>

Tenant status

Available options:
ACTIVE,
SUSPENDED,
CANCELLED
metadata
object

Additional metadata (JSON object)

Example:
{
"industry": "SaaS",
"companySize": "100-200"
}
isAlphaLocked
boolean

Alpha lock status (cannot be changed via API - admin only)

Example:

true

Response

Tenant updated successfully

id
string
required

Unique tenant identifier

Example:

"123e4567-e89b-12d3-a456-426614174000"

name
string
required

Tenant name

Example:

"Acme Corporation"

slug
string
required

URL-friendly slug

Example:

"acme-corp"

plan
enum<string>
required

Subscription plan

Available options:
FREE,
STARTER,
PROFESSIONAL,
ENTERPRISE
Example:

"FREE"

status
enum<string>
required

Tenant status

Available options:
ACTIVE,
SUSPENDED,
CANCELLED
Example:

"ACTIVE"

isActive
boolean
required

Whether the tenant is active (derived from status)

Example:

true

isAlphaLocked
boolean
required

Whether tenant is locked to FREE tier during alpha

Example:

true

onboardingStatus
enum<string>
required

Onboarding progress status

Available options:
PENDING,
EMAIL_VERIFIED,
PROJECT_CREATED,
FIRST_EVENT_SENT,
COMPLETED
Example:

"PENDING"

alphaApprovalStatus
enum<string>
required

Alpha approval status

Available options:
PENDING,
APPROVED,
REJECTED
Example:

"PENDING"

createdAt
string<date-time>
required

Creation timestamp

Example:

"2025-01-15T10:30:00Z"

updatedAt
string<date-time>
required

Last update timestamp

Example:

"2025-01-15T10:30:00Z"

alphaApprovedAt
object

When the tenant was approved for alpha

Example:

"2025-01-15T10:30:00Z"

alphaApprovedBy
object

Email of super admin who approved

Example:

"admin@engagefabric.com"

alphaRejectionReason
object

Reason for rejection if rejected

Example:

"Not a good fit for alpha program"

alphaApplicationNote
object

Application note from user

Example:

"We are building a gamification platform"

metadata
object

Additional metadata

Example:
{ "industry": "SaaS" }
deletedAt
object

Soft deletion timestamp

Example:

null

_count
object

Count of related entities

Example:
{ "projects": 3, "members": 5 }