List games
GET/games
List available games with optional filtering, search, and pagination. An incomplete or unavailable catalog read returns DATABASE_ERROR (503) for any provider; partial results are not returned. Results are scoped to the games enabled for the calling operator’s configured providers and selections.
Platform accounts send sub_operator_ref to pick the brand; see
Platform accounts for the
default brand.
Mobule requires current support approval for the exact organization bound
to the authenticated operator key. Unbound keys cannot infer an organization.
For a platform key, the approval of the platform’s organization covers
its brands; a suspended or retired brand is refused.
Discovery omits unapproved games (direct game/stakes lookup returns 404).
Launches and launcher re-reads return PROVIDER_ACCESS_REQUIRED (403) on
denial; storage uncertainty returns PROVIDER_ACCESS_UNAVAILABLE (503).
Requests for other providers keep their existing access policy.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Query Parameters
Section titled “Query Parameters”brand-01Platform accounts only. Which brand’s
storefront to render. Game/provider enablement is per brand, so
omitting this returns your platform’s default brand’s catalog
rather than an error. Sending it from a non-platform key is a 400
(E6006). If your platform has no default brand provisioned, the
call is a 409 (E6010); if it is configured with
require_sub_operator_ref, omitting the parameter is a 400
(E6005).
Single-casino integrations never send this field. See the Platform accounts guide if you are a platform partner.
Omit it to get the default brand; sending it empty is a 400
(E6004), not a fallback - see sub_operator_ref on
POST /v1/sessions for why the two differ.
A brand’s first call with an unseen ref auto-provisions it and
gives it the same games and providers your platform already has
available - so this call returns a usable catalog, and the
game_ids in it can be launched immediately via POST /v1/sessions
with the same ref. No manual onboarding step.
Same format and matching rules as sub_operator_ref on
POST /v1/sessions.
truelabsFilter by provider code (e.g. truelabs, ebaka).
Filter by the provider’s own game identifier.
slotsFilter by game type (slots, table, crash, …).
9597.5Comma-separated feature tags (e.g. bonus_buy,megaways).
Full-text search across game names.
Sort field; prefix with - for descending.
EURFilter to games playable in this ISO-4217 currency. A game matches
when the currency is in its effective supported_currencies (the
game’s own list if set, else the provider default). Use this to build
a storefront that never shows a player a game their wallet currency
cannot open.
Responses
Section titled “Responses”Page of games.
object
object
truelabsslotsWhether this game supports free rounds / free spins. true means you
can issue free rounds on it via POST /v1/free-rounds; a false game
is rejected at grant time. Filter your free-round campaigns on this.
For Mobule it mirrors the provider’s is_freerounds_enabled flag as of
the last catalogue sync.
Informational allow-list of regulated markets the game is certified
for, as declared by the provider. This is NOT a launch gate - it is a
licensing hint so you can filter the catalog by what your licence
permits. null when the provider declares no market data. (The
launch gate is blocked_countries, enforced against the
operator-declared player country.)
object
ISO-3166-1 alpha-2 codes of certified regulated markets.
[ "DE", "EE", "GI", "IM", "MT"]true when the game is approved for the international / offshore (”.COM”, rest-of-world) market. A market type, not a country.
ISO alpha-2 codes of certified low-barrier markets.
[ "AM", "LV", "MX", "ME", "RS"]Certified markets with no ISO country mapping (e.g. territory licensing authorities), preserved verbatim. Omitted when empty.
The original provider markets string. Omitted when the data came only from structured certification fields.
Effective ISO-4217 currencies this game can be launched in: the
game’s own override if set, else the provider default
(provider_configs.supported_currencies). An empty array means no
declared restriction is known. Filter the catalog with the currency
query parameter, and treat this as the source of truth for which
player wallet currencies a game supports before launch.
[ "USD", "EUR"]Minimum stake per spin, quoted in bet_limits_currency exactly as
the provider declared it - the platform never converts limits
between currencies. null when the provider has not declared a
limit.
0.1Maximum stake per spin, quoted in bet_limits_currency. null
when undeclared.
100Suggested default stake the operator may pre-select, quoted in
bet_limits_currency. null when undeclared.
1The currency min_bet/max_bet/default_bet are quoted in
(canonical upper-case code). null exactly when no bet value is
declared. Values are NOT converted to the player’s wallet currency.
EURMaximum win expressed as a multiple of the stake
(currency-agnostic). null when the provider has not declared a
cap.
5000The discrete valid-stake ladder for one currency, when known -
e.g. for issuing free rounds. Single-currency (no FX), so it answers
only for currency. null when no ladder is on file (then use
GET /v1/games/{game_id}/stakes / provider-side validation).
object
EUR[ 0.2, 0.4, 0.6, 0.8, 1, 2, 4]Headers
Section titled “Headers”Echoes the active environment for this key.
Rate-limit ceiling for this key on this endpoint family.
Calls remaining in the current window.
Unix timestamp when the current rate-limit window resets.
Missing, invalid, or revoked API key.
object
object
Correlation ID for support escalation.
object
Rate limit exceeded; consult Retry-After.
object
object
Correlation ID for support escalation.
object
Headers
Section titled “Headers”Seconds to wait before retry.
Catalog read incomplete or unavailable (DATABASE_ERROR), or provider access storage unavailable (PROVIDER_ACCESS_UNAVAILABLE).
object
object
Correlation ID for support escalation.