Skip to main content
POST
/
tenants
/
{id}
/
onboarding
/
complete
Mark onboarding as complete
curl --request POST \
  --url https://api.engagefabric.com/tenants/{id}/onboarding/complete \
  --header 'Authorization: Bearer <token>'
{
  "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
  }
}

Authorizations

Authorization
string
header
required

JWT token for admin console authentication

Path Parameters

id
string
required

Tenant UUID

Response

200 - application/json

Onboarding marked as complete

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 }