Getting Started
Quickstart
Go from zero to a live waitlist with analytics in under 5 minutes.
1. Create your account#
Sign up at the OperatorStack dashboard. You’ll need an email address and password.
2. Create a project#
Each project represents one website or app. Give it a name and your site’s URL. OperatorStack uses the URL for CORS validation and referral link generation.
3. Add the embed script#
Copy the script tag from your project’s settings page and paste it before the closing </body> tag.
<!DOCTYPE html><html><head> <title>My App</title></head><body> <h1>Coming soon</h1> <!-- OperatorStack embed script --> <script src="https://operatorstack.dev/os.js" data-project="pk_xxxxx"></script></body></html>| Property | Type | Description |
|---|---|---|
| src * | string | URL to the os.js embed script |
| data-project * | string | Your project key (starts with pk_) |
| data-api | string | Custom API URL override (default: https://api.operatorstack.dev) |
| data-dev | "true" | Enable dev mode (disables config caching) |
4. Add a waitlist widget#
Add this HTML anywhere on your page. The embed script will automatically render a waitlist form in its place.
<div data-os-widget="waitlist"></div>The widget renders inside a Shadow DOM for CSS isolation — it won’t conflict with your styles.
5. Use the JavaScript SDK (optional)#
For programmatic control, use the global window.OperatorStack SDK. All methods internally await the SDK’s ready promise, so you can call them immediately.
// Wait for SDK to be readyawait window.OperatorStack.ready // Join the waitlist programmaticallyconst result = await window.OperatorStack.joinWaitlist({ email: 'user@example.com', name: 'Jane Doe'}) console.log(result.referral_code) // "ref_abc123" // Track a custom eventwindow.OperatorStack.trackEvent('button_click', { button: 'hero-cta'})6. Check your dashboard#
Go to your project’s dashboard to see analytics flowing in, manage waitlist signups, and configure your tools. Everything updates in real time.
What's next?