Ship to production without breaking customers.
Every SabNode workspace ships with sandbox, staging and production environments. Each has its own Meta credentials, webhook URLs, API keys, custom domains and rate-limit budgets. Promote a flow, a template or a broadcast across environments with one click and full diff review.
- Sandbox, staging, production by default
- Per-env credentials, webhooks and domains
- One-click promote with diff review
- Sandbox uses Meta's test number
Testing in production is how broadcasts get blocked
Most teams using a WhatsApp Business API tool have one environment: production. They build a new flow, send a "test broadcast" to a list of "test" phone numbers, accidentally include their entire VIP segment, and burn a year of brand goodwill in three minutes. Or they push a template change to Meta from production, get rejected, and now their main customer-comm template is stuck in pending for the next 48 hours.
Developers feel this even harder. Without a real sandbox you cannot integration-test your code against the WhatsApp API — you mock it, hope the mocks match reality, and discover three months later that some edge case behaves differently in Meta's production graph. Webhook signatures, template validation states, message status callbacks — every one of these has subtle differences in test mode that you only learn by burning production.
SabNode's environment model treats sandbox, staging and production as first-class peers from day one. Your CI can run end-to-end tests against sandbox. Your marketing team can preview a broadcast in staging. Your ops team can promote to production with a diff review. Nobody has to be a hero on a Friday night.
Environments, in depth.
Every SabNode workspace boots with three environments: sandbox, staging and production. Sandbox is wired to Meta's WhatsApp test number with unlimited free messages to your own verified test phones. Staging connects to a separate WhatsApp Business Account (recommended) with a small budget for internal QA testing on real WABA infrastructure. Production is your customer-facing environment with the WABAs, templates and broadcast budgets you actually run on.
Each environment has its own credentials — Meta tokens, webhook URLs, OAuth client IDs, API keys. The credentials are isolated at the database level: a sandbox API key cannot read production contacts, ever. The same applies to webhook subscriptions, custom domains, embedded widget origins and OAuth redirect URIs. There is no scenario where a sandbox misconfiguration leaks to production.
Promotion is explicit. When a flow, template, broadcast definition or AI Studio assistant is ready, you click "Promote to staging" and SabNode generates a diff showing exactly what is being copied across (the flow nodes, the template body, the bindings) and what is being remapped (sandbox webhook URL → staging webhook URL). After a staging green light, "Promote to production" repeats the diff with production credentials. Promotion is recorded in the audit log with the user, the artifact and the timestamp.
For agencies, white-label and multi-region deployments, environments compose with the workspace boundary: each workspace has its own sandbox/staging/prod set, so a 40-client agency runs 120 environments cleanly. Data residency settings on enterprise plans can be set per environment, so EU staging and prod can sit in EU regions while a global sandbox stays cheap and local.
Everything you get with Environments.
Three environments by default
Sandbox, staging and production ship with every workspace. Additional environments (preview, demo, regional) are available on Pro and Enterprise plans for branch-deploy and multi-region scenarios.
Meta sandbox wired in
Sandbox is connected to Meta's WhatsApp test number with up to 5 verified test phones. Send unlimited messages for development without burning template approvals or production rate-limit budget.
Isolated credentials
Per-environment Meta tokens, API keys, OAuth client IDs and webhook signing secrets. Credentials cannot read across environments at the database query layer — isolation is enforced, not advisory.
Custom domains per env
Mount a different domain per environment: chat.acme.com on production, chat-staging.acme.com on staging, chat-sandbox.acme.com on sandbox. Embedded widgets, OAuth redirects and SabFiles share links each respect the environment.
One-click promote
Promote flows, templates, broadcasts, AI Studio assistants and segments across environments. Diff review shows added, changed and remapped fields before the promote runs.
Environment-scoped webhooks
Each environment has its own webhook subscriptions and DLQ. Outbound URLs typically point at a different deployment of your code (sandbox endpoint, staging endpoint, prod endpoint) so the same code can be tested across environments.
CI-friendly tokens
Short-lived service tokens scoped to sandbox are ideal for CI integration tests. Mint at the start of a job, run end-to-end tests through real Meta APIs, let the token expire. Tests run in 30-60 seconds.
Built for the way teams actually work.
CI integration tests
A SaaS engineering team runs full integration tests against SabNode's sandbox on every PR. Tests fire a real WhatsApp message to a verified test phone, verify the webhook fires, and inspect the conversation state. Production stays untouched.
Broadcast preview in staging
A D2C marketing team builds a 50k broadcast in staging, sends it to a 20-contact internal cohort, reviews open rate and copy quality, then promotes the broadcast definition to production for the real send.
Template approval workflow
A fintech submits templates to Meta from staging first. Approvals surface in staging within hours, the team verifies rendering, then promotes the template to production for actual customer sends. Rejection cycles never touch production.
Agency client onboarding
An agency builds a new client's flow in their own internal sandbox workspace, copies it to the client's staging environment for review, then promotes to the client's production once signed off. Three environments, two workspaces, one promote path.
EU data residency
A healthcare platform runs staging and production in the EU region with workspace-level data residency. Sandbox stays in the global region for faster iteration. Promotion across regions is rate-limited and audited.
From signup to first send in minutes.
Environments is included on every SabNode workspace. No separate billing, no extra setup — flip it on from your workspace settings.
- 01
Default trio
Workspace ships with sandbox, staging and production. Each has unique credentials, webhook URLs and rate limits.
- 02
Configure per env
Set custom domain, WABA, API keys and webhook endpoints for each environment. Defaults work for dev; lock down prod.
- 03
Build in sandbox
Develop flows, templates and AI assistants in sandbox. Use Meta's test number to send real messages without cost.
- 04
Promote with diff
Click Promote, review the diff (added, changed, remapped). Promote to staging for QA, then to production for go-live.
- 05
Roll back if needed
Every promote creates a versioned snapshot in the target env. Roll back to a previous snapshot in one click if needed.
Works with the tools you already ship on.
Connect directly with your existing stack, or use the platform APIs and webhooks to extend it natively.
- Vercel
- GitHub Actions
- AWS
- Meta WhatsApp Business Platform
- Cloudflare
- Doppler
- Datadog
- Sentry
Platform core tools
Enhance this feature with deep integrations into our core infrastructure. Connect via API, use webhooks, or embed directly with our SDKs.
Unified dashboard apps
Manage every setting inside one workspace UI.
Developer APIs and webhooks
Extend functionality with custom automated workflows.
Do I need a separate WABA for staging?
Does promote also copy contacts and messages?
Can I add more than three environments?
How do I run CI against sandbox?
Are rate limits per environment?
How is data residency enforced per environment?
Can I promote backwards (prod → staging)?
Stronger when stacked.
Ship environments into production this week.
No credit card. No sales call required. Spin up a workspace, plug in a number, and your team is live in under an hour.