Tenant API Documentation
POST /api/create-tenant
Creates a new tenant, provisions a unique database, and generates admin credentials.
Parameters
- serviceId (required) - Unique identifier for the tenant.
- domain (required) - Tenant's primary domain (must be unique).
- planId (optional) - Hosting plan ID.
- email (optional) - Tenant admin email address.
- name (optional) - Tenant name.
- modules (optional) - Comma-separated list of modules (e.g. news,epaper).
- epaper_frequency (optional) - Daily, Weekly, etc.
Example Response
{
"success": true,
"tenant_id": "abc123",
"domain": "example.com",
"email": "[email protected]",
"name": "Example Tenant",
"planId": "basic",
"modules": [
"news",
"epaper"
],
"epaper_frequency": "weekly",
"adminUrl": "https:\/\/example.com\/admin\/login",
"username": "[email protected]",
"password": "********"
}
POST /api/suspend-tenant
Temporarily disables access to a tenant.
Parameters
- serviceId (required) - Tenant ID to suspend.
Example Response
{ "success": true, "message": "Tenant suspended successfully!" }
POST /api/unsuspend-tenant
Reactivates a suspended tenant.
Parameters
- serviceId (required)
Example Response
{ "success": true, "message": "Tenant unsuspended successfully!" }
GET /api/impersonate-tenant
Returns a temporary admin login token to impersonate tenant.
Parameters
- serviceId (required)
Example Response
{ "success": true, "redirectTo": "https://example.com/impersonate/xxx" }
POST /api/update-domain
Changes the domain name associated with a tenant.
Parameters
- serviceId (required)
- domain (required) - New unique domain.
Example Response
{ "success": true, "message": "Domain updated successfully!" }
POST /api/update-tenant
Updates details like name, email, plan, or modules.
Parameters
- serviceId (required)
- name (optional)
- email (optional)
- planId (optional)
- modules (optional)
- epaper_frequency (optional)
Example Response
{ "success": true, "message": "Tenant updated successfully!" }
POST /api/cancel-tenant
Deletes all domain records for a tenant, preserving the tenant record.
Parameters
- serviceId (required)
Example Response
{ "success": true, "message": "Domain(s) deleted successfully!" }
POST /api/delete-tenant
Permanently deletes a tenant and associated records.
Parameters
- serviceId (required)
Example Response
{ "success": true, "message": "Tenant deleted successfully!" }
POST /api/getTenant
Returns a specific tenant's full information.
Parameters
- serviceId (required)
Example Response
{ "success": true, "tenant": {...} }
POST /api/getTenantList
Returns a list of all tenants in the system.
Example Response
{ "success": true, "tenants": [ {...}, {...} ] }