Whitelist

Privileged access system for beta users and temporary demos, without requiring a paid subscription.


General Description

The Whitelist functionality allows specific users to access Duster without needing to purchase a subscription. This functionality is designed exclusively for beta users and temporary demos, providing a controlled access mechanism during system development and testing.

Use Cases

1. Beta Users

  • Users selected for early testing
  • Complete access without subscription restrictions
  • Single use per email

2. Temporary Demos

  • Access for demonstrations and presentations
  • Limited to one session per email
  • Ideal for events and training sessions

3. Development and Testing

  • Access for development team
  • Testing of premium features
  • User flow validation

Workflow

1. Onboarding and Verification

During the onboarding process, when a new organization is created, the subscriptions.whitelist.check event is triggered. The event includes:

  • organizationID: ID of the newly created organization
  • email: Email of the organization creator

2. Event Processing

The event is received by the WhitelistSubscriptionsService within the Subscriptions module: The service executes the following logic:

A. Whitelist Verification:

  • Searches for the email in the whitelist_access table
  • Verifies that access_enabled is true

B. Subscription Creation (if applicable):

  • Creates a subscription of type whitelist for the current organization
  • Assigns data from the corresponding subscription_plan

C. Access Disabling:

  • Sets access_enabled = false for the used email in the table whitelist_access
  • Ensures each email can only create one organization in Duster.

Architecture

Database

Table whitelist_access

Fields:

  • id: Unique identifier of the record
  • email: User's email in the whitelist (unique)
  • access_enabled: Controls whether the email can access (defaults to true)
  • created_at: Record creation date
  • updated_at: Last update date

Table subscription_plans

A new subscription plan type is added:

  • whitelist: Subscription type that will be automatically assigned to the new organization.

Whitelist Management

  • Each email can be used to create only one organization. If an email is already used and not deleted, it cannot be used to create another organization.
  • Emails must be manually added to and removed from the table.

Notes

  • The whitelist subscription type includes a certain number of AI Credits. This number can be modified in the subscriptions_plans table.
  • A whitelist subscription grants access to all Duster features, just like a paid subscription.
  • During onboarding, at the payment step, the user may need to manually refresh the browser to skip this step.