Skip to content

Admin Panel

Platform-level administration for managing organizations, users, support tickets, and system health.

Platform Admin vs. Organization Admin

The system distinguishes between two levels of administrative access:

RoleScopeAccess
Platform AdminEntire platformManages all organizations, global settings, and system health
Organization AdminSingle organizationManages their own organization's settings, users, and data

The admin panel documented here is for Platform Admins — the super-administrators who manage the entire booking platform across multiple organizations.

INFO

Organization-level administration (users, roles, settings within a single property) is covered in the Settings guide.

Admin Authentication

Platform admins use a separate authentication flow from regular users:

Login

  1. Navigate to the admin panel URL (e.g., /admin/login)
  2. Enter admin credentials (email and password)
  3. Admin accounts are created directly in the database — there is no self-registration

Security

  • Admin sessions have shorter expiration times than regular user sessions
  • All admin actions are logged in the audit trail
  • Admin accounts support strong password requirements
  • Failed login attempts are rate-limited

Organization Management

View and manage all organizations registered on the platform.

Organization List

The organization list displays:

ColumnDescription
Organization NameProperty/hotel name
OwnerPrimary admin of the organization
PlanSubscription plan (if applicable)
StatusActive or Disabled
CreatedRegistration date
UsersNumber of users in the organization

Organization Actions

ActionDescription
View DetailsSee full organization info, settings, and statistics
EnableActivate a disabled organization, restoring access
DisableSuspend an organization, preventing all users from logging in

Enabling / Disabling an Organization

When an organization is disabled:

  • All users in that organization are blocked from logging in
  • API requests from that organization are rejected
  • Data is preserved but inaccessible
  • The organization appears as "Disabled" in the admin list

When re-enabled, all access is restored immediately.

WARNING

Disabling an organization affects all its users instantly. Use this for policy violations, non-payment, or at the organization's request.

User Management

Manage all users across all organizations from a single view.

User List

The global user list shows:

ColumnDescription
NameUser's full name
EmailUser's email address
OrganizationWhich organization they belong to
RoleTheir role within their organization
StatusActive or Deactivated
Last LoginMost recent login timestamp

User Actions

ActionDescription
View ProfileSee user details, activity history, and permissions
ActivateRe-enable a deactivated user account
DeactivateDisable a user's access across the platform

Activating / Deactivating Users

  • Deactivate: The user can no longer log in. Their data and history remain intact. Useful for addressing compromised accounts or policy violations.
  • Activate: Restores the user's ability to log in with their existing credentials and role.

INFO

Platform-level deactivation overrides organization-level status. Even if the org admin activates the user, a platform-level deactivation takes precedence.

Support Ticket System

Manage support requests from organizations and users.

Ticket List

ColumnDescription
Ticket IDAuto-generated unique identifier
SubjectBrief description of the issue
OrganizationWhich organization submitted it
Submitted ByUser who created the ticket
PriorityLow, Medium, High, Critical
StatusOpen, In Progress, Resolved, Closed
CreatedSubmission date
Last UpdatedDate of most recent activity

Ticket Workflow

  1. Open — A user submits a support ticket from their organization
  2. In Progress — An admin picks up the ticket and begins investigation
  3. Resolved — The issue is addressed; the user is notified
  4. Closed — The ticket is archived after resolution

Ticket Actions

  • View Details — Read the full ticket, including description and attachments
  • Add Response — Reply to the user with updates or resolution
  • Change Priority — Escalate or de-escalate
  • Change Status — Move through the workflow stages
  • Assign — Assign to a specific admin (if multiple platform admins exist)

Activity Logs

Monitor all user activity across the platform.

Log Entries

Each activity log entry records:

FieldDescription
TimestampWhen the action occurred
UserWho performed the action
OrganizationWhich organization context
ActionWhat was done (e.g., "Created Booking", "Updated Invoice")
ResourceThe affected record type and ID
IP AddressUser's IP address
User AgentBrowser/client information

Filtering

Filter activity logs by:

  • Date range — narrow to a specific period
  • User — filter by specific user
  • Organization — filter by organization
  • Action type — filter by create, update, delete, login, etc.
  • Resource type — filter by bookings, invoices, guests, etc.

Retention

Activity logs are retained based on the platform's data retention policy. Older logs may be archived or purged based on configuration.

Live Status Monitoring

Monitor the real-time health of the platform.

System Status Dashboard

MetricDescription
Server UptimeTime since last restart
Active UsersCurrently logged-in users (via WebSocket connections)
Active OrganizationsOrganizations with at least one active session
API Response TimeAverage response time over the last hour
Database StatusConnection health and query performance
Redis StatusCache server connection and memory usage
WebSocket ConnectionsNumber of active real-time connections

Health Checks

The admin panel runs periodic health checks against:

  • API Server — HTTP response and latency
  • Database — MongoDB connection and query responsiveness
  • Redis Cache — connection and memory availability
  • External Services — Gmail API, GST API availability

Each service shows a status indicator:

  • 🟢 Healthy — operating normally
  • 🟡 Degraded — responding slowly or partially
  • 🔴 Down — unresponsive or erroring

Audit Log Viewing

The audit log provides a detailed, tamper-resistant record of significant system events.

What's Logged

Event CategoryExamples
AuthenticationLogin, logout, failed login attempts
User ManagementUser created, role changed, account deactivated
OrganizationOrganization created, settings changed, disabled
Data ChangesBooking created/modified, invoice generated, payment recorded
SettingsTax rates changed, series updated, integrations connected
SecurityPassword changed, permissions modified, API key generated

Audit Log Entry Structure

Each audit log entry contains:

FieldDescription
Event IDUnique identifier for the event
TimestampPrecise time the event occurred
ActorUser who performed the action
ActionThe specific action taken
Resource TypeType of record affected
Resource IDIdentifier of the affected record
ChangesBefore/after values for update events
OrganizationOrganization context
IP AddressSource IP of the request
MetadataAdditional context-specific data

Searching Audit Logs

Use the search and filter controls to find specific events:

  • Full-text search — search across all fields
  • Date range — restrict to a time period
  • Actor — find actions by a specific user
  • Action type — filter by create, update, delete, login, etc.
  • Resource type — filter by entity type
  • Organization — scope to a specific organization

API Analytics

Monitor API usage patterns and performance across the platform.

Analytics Dashboard

The API analytics view provides:

MetricDescription
Total RequestsTotal API calls in the selected period
Requests by EndpointBreakdown of traffic per API route
Response TimesAverage, P95, and P99 latency per endpoint
Error RatePercentage of 4xx and 5xx responses
Requests by OrganizationAPI usage per organization
Requests Over TimeTime-series chart of request volume

Endpoint Analysis

Drill down into individual endpoints to see:

  • Request count and trend
  • Average response time
  • Error rate and common error codes
  • Request payload patterns

Rate Limiting Visibility

View rate limiting statistics:

  • Requests approaching rate limits
  • Blocked requests (429 responses)
  • Rate limit configuration per endpoint

Usage Patterns

Identify:

  • Peak hours — when the system is busiest
  • Heavy users — organizations or users making the most requests
  • Slow endpoints — routes that need optimization
  • Error hotspots — endpoints with high failure rates

TIP

API analytics data can be used to plan capacity, identify performance bottlenecks, and detect unusual usage patterns that may indicate issues.

Admin Permissions

The admin panel is accessible only to platform admin accounts. There is no RBAC within the admin panel — all platform admins have full access to all admin features.

For organization-level role and permission management, see Settings → Roles & Permissions.

Released under the MIT License.