Test vs Live Environment
Overview
Section titled “Overview”Every Rakomi tenant has two environments by default: Live (production) and Test (sandbox). Test environments let you build and test your auth integration without affecting real users.
This follows the same model as Stripe’s test/live mode — your API key prefix determines the environment.
API Key Prefixes
Section titled “API Key Prefixes”| Environment | Prefix | Purpose |
|---|---|---|
| Live | akm_live_ | Production — real users, real emails |
| Test | akm_test_ | Sandbox — test users, emails suppressed |
Both keys are created automatically when you sign up. Find them in Dashboard → API Keys.
Key Differences
Section titled “Key Differences”Test Environment
Section titled “Test Environment”- Users created with test keys are auto-verified (no email verification needed)
- Emails are suppressed — never sent to external providers, but logged for preview in the dashboard
- Test users are not counted toward MAU — Free tier developers can test freely
- Webhooks use a separate test webhook URL (localhost and ngrok allowed)
- Rate limits have a 2x multiplier on auth endpoints for faster iteration
- Test data is auto-purged after 90 days
Live Environment
Section titled “Live Environment”- Standard email verification flow
- Emails sent via transactional email provider
- Users counted toward MAU and billing
- Strict SSRF validation on webhook URLs (HTTPS only, no private IPs)
- Standard rate limits
Quick Start
Section titled “Quick Start”-
Use your test API key for development
Your test key starts with
akm_test_. Use it in your development environment. -
Register test users
Users created via test API key are auto-verified — no email check needed.
-
Test webhooks locally
Set your test webhook URL to
http://localhost:3000/webhooksin Dashboard → Webhooks settings. -
Switch to live when ready
Replace
akm_test_withakm_live_in your production deployment. That’s it.
Dashboard Environment Toggle
Section titled “Dashboard Environment Toggle”The dashboard has a global environment toggle in the sidebar. Switching to “Test” filters all views (users, events, API keys) to show only test data. A persistent amber banner indicates when you’re viewing test data.
Test Webhook URL
Section titled “Test Webhook URL”Each webhook configuration can have a separate test URL. Test webhooks support:
localhost/127.0.0.1/::1(HTTP allowed on ports 3000-9999)*.ngrok.io/*.ngrok-free.app(HTTPS required)
No circuit breaker is applied to test webhooks — failures are logged but won’t disable delivery.
Email Preview
Section titled “Email Preview”Test environment emails are never sent. Instead, they’re rendered and stored for preview in the dashboard’s “Test Emails” section. This includes password reset URLs, verification links, and all transactional emails.
Seeding Test Data
Section titled “Seeding Test Data”Use the seed endpoint to generate synthetic test users quickly:
curl -X POST https://api.rakomi.com/v1/auth/dashboard/tenants/{slug}/environments/{envId}/seed \ -H "Cookie: __ra_session=..." \ -H "Content-Type: application/json" \ -d '{"count": 10}'Generated users have synthetic emails (test+name@{slug}.rakomi.dev) and are pre-verified.
Resetting Test Environment
Section titled “Resetting Test Environment”Use Dashboard → Settings → Reset Test Environment to bulk-delete all test data. This removes all test users, sessions, and events while keeping your API keys and configuration intact.
GDPR Considerations
Section titled “GDPR Considerations”Test users with real email addresses are still personal data under GDPR. Best practices:
- Use the seed endpoint for synthetic data (
test+*@*.rakomi.dev) - Reset test environment regularly
- Don’t use real customer emails for testing
Plan Limits
Section titled “Plan Limits”| Plan | Non-live Environments | Test Users per Environment |
|---|---|---|
| Free | 1 (test) | 1,000 |
| Pro | 1 (test) | 5,000 |
| Business | Up to 3 (test, staging, dev) | 10,000 |
| Enterprise | Unlimited | Unlimited |