Base URLs and environments
Keep production, staging and embed URLs clearly separated when you integrate OmniLab.
1 min read
Staging and production each have their own API host and their own credentials.
API hosts
| Environment | API host | Example |
|---|---|---|
| Staging (UAT) | https://<subdomain>.api.uat.omnilab.studio | https://lindenhall.api.uat.omnilab.studio |
| Production | https://<subdomain>.api.omnilab.studio | https://lindenhall.api.omnilab.studio |
<subdomain> is your account's subdomain, which your Customer Success Manager confirms with your credentials. The host decides which account a call reaches, so a token only works on its own account's host. Every endpoint path starts with /v1/.
Keep three URL concepts separate
| URL type | What it is for | Example |
|---|---|---|
| API host | Token requests and server-to-server API calls | https://lindenhall.api.omnilab.studio |
| Experience domain | Landing pages, touchpoints and embeds. It can be your own custom domain. | https://offers.lindenhall.example |
| Host page or wrapper URL | Your own site, kiosk shell or app container | https://www.lindenhall.example/promo |
The same integration often uses all three. Keeping them apart makes debugging easier when a token request works but an embed doesn't, or when staging webhooks point at production.
Safe environment rules
- Never reuse production secrets in staging.
- Register a separate webhook endpoint in each environment.
- Test booking flows, cancellations and webhook retries in staging first.
- Keep test campaigns, public links and downstream automations apart from production.