Boss HubBoss HubDocs
ChangelogStatus
Getting started/Environments & IP allowlist

Environments & IP allowlist

There are two environments: Test (staging) and Live (production). The environment is determined by the API address you call. Keys, callback addresses, the IP allowlist and webhooks are separate for each environment.

Environments

Test (staging)Live (production)
API address (example)https://staging.example.comhttps://api.example.com
Key prefixpk_test_pk_live_
WalletCallbacks go to your Test wallet address. Use test players and test balances.Callbacks go to your Live wallet address; real money moves.
IP allowlistOpen while empty, enforced once it has entries.Required. An empty list rejects every request.
SitesSites in Test and Live status open games.Only sites in Live status open games; others get 403 SITE_DISABLED.
InvoicingNot invoiced.Invoices are issued from Live data only.
  • Addresses: the API addresses in the table are examples. The Test and Live API addresses of your account are shown at the top of the Integration & API page of the portal, for the selected environment; the portal address is sent to you when your account opens. In the code samples, BOSS_API_URL holds this address.
  • Portal sign-in: first an access check with a one-time code sent to your email address, then your Boss Hub email address, password and, if enabled, your two-step verification code. The Test / Live switch in the top bar decides which environment each setting on the screen is written to.
  • Game address: launch_url opens on the API address and redirects the player to the game client. EGT games load from play.denovra.com. If you open the game in an iframe, allow both addresses in your CSP frame-src.
  • Your callbacks come from the Boss Hub egress IPs; these addresses are on the IP allowlist card of the portal.

Per-environment and shared settings

  • Per environment: API key and secret, wallet settings (callback address, lobby and deposit addresses, timeout), IP allowlist, webhook endpoints, test data. A Test event never reaches a Live address.
  • Shared: sites and site settings, bet limits, game and provider availability rules, lobby categories, game features. Changing them with a Test key changes Live too.
  • Signing: callbacks are signed with the signing key of that environment. A Test call is never signed with a Live secret.
  • Per site: you can define separate wallet settings or IP entries for a site. A site’s wallet settings replace the operator settings for that site.

Wallet settings

SettingValuesNote
Callback base URLhttps://staging-api.meridyen.example/bossgaming/authenticate, /balance, /bet, /win, /rollback are appended to it. HTTPS only, Test included; private and internal network addresses are blocked.
Lobby URLhttps://meridyenbet.example/casinoUsed when a launch request has no lobby_url.
Deposit URLhttps://meridyenbet.example/depositUsed when a launch request has no deposit_url.
Supported currenciesUSD, EUR, TRYSee Currencies & languages.
Timeout3 s (default), 5 sHow long each attempt waits.
Retries2 (default), 3Retries after the first bet attempt. All attempts must fit a budget of at most 20 s.

IP allowlist

Only the listed IPs can reach the API. On the IP allowlist card of the portal, add a single address (185.22.14.10) or a CIDR range (203.0.113.0/24). A request from outside the list gets 403 IP_NOT_ALLOWED.

  • An operator-wide entry applies to all your keys.
  • An IP entry on a site page applies only to keys bound to that site. If you call with an operator-wide key, add the address to the operator-wide list.
Live: The IP allowlist is required. Production cannot be requested without at least one entry, and an empty list rejects every request. The last operator-wide Live IP cannot be deleted.

The reverse direction needs an allowance too: your callbacks come from the Boss Hub egress IPs. These addresses are shown on the same card; add them to your firewall.

Going live

StepCondition
1. Test keyCreated automatically when your account opens; the secret is shown once, on first view.
2. Test walletSave the operator-wide wallet settings in the Test environment (the test suite does not read site settings) and make Test connection succeed.
3. Test suiteEnter the test data and run the suite. All 42 scenarios of the latest run must be PASS.
4. Live IPAdd at least one IP in the Live environment (operator-wide or site).
5. Request productionThe Request production button opens when steps 3 and 4 are done. Boss Hub checks your company documents (KYB) and approves.
6. After approvalCreate a Live key, save the Live wallet settings (operator-wide or site), add webhooks.
7. Take the site liveSet the site status to Live. Conditions: production approval, a market on the site that is not Test-only, a Live IP and Live wallet settings.

Before approval, only the IP allowlist, sites, company details and test actions can be written in Live; Live writes such as keys, wallet settings, webhooks and campaigns get 403 PRODUCTION_NOT_APPROVED.

Taking a provider live is a separate step: in the portal, a provider’s Go live button opens once the latest test run (for that provider or operator-wide) has fully passed. On Live, only games of providers taken live can be opened.

Sites

  • You add your sites yourself on the Sites page of the portal, up to the limit in your contract. A new site starts in Test status.
  • In the API, site_id is the site’s code (e.g. site_mrd01); it is shown on the site details in the portal.
  • If you have several sites, send site_id on launch, game list and recommendation requests; with one site it is inferred. A key bound to a site sees only its own site.
  • Each site carries its own currencies, market and, if you want, its own wallet settings. Sites that share one callback address are told apart by site_id in the callback body.
← PreviousAuthentication & signingNext →authenticate