Casino Page Data Models
This page describes the data models used in the Casino page API for the Main application. These models represent the structure of data that clients receive when interacting with casino page-related operations.
Core Models​
CasinoPageModel​
Represents a casino page with its configuration and content.
type CasinoPageModel {
id: ID!
slug: String!
default: Boolean
logo: LogoModel!
layout: PageLayout
promotionRepeat: Int
promotionPlacedAfter: Int
}
Fields Description:
id
: Unique identifier for the casino pageslug
: URL-friendly and unique identifier for the casino pagedefault
: Whether this is the default casino page (for example, my-favorites is a default casino page)logo
: Logo configuration for the casino pagelayout
: Layout type for displaying gamespromotionRepeat
: Number of promotions to display on the casino pagepromotionPlacedAfter
: Number of rows to display after the casino game rows
Resolver Fields:
name
: String - Name of the casino page (localized based on user language)seo
: SEOWithContentSingleLanguageModel - SEO information for the pagehighlightedGames
: [CasinoGameModel] - Highlighted games for the casino page, top games that index this casino page (only available for pages with a layout)promotions
: [PromotionModel] - Promotions to display on the casino page (only available when promotionPlacedAfter is set and promotion IDs are provided)activePlayers
: ActivePlayerCountFormattedResponse - Count of active players within the last 24 hours for the casino page
LogoModel​
Represents a logo configuration for casino pages. Only one of the three fields should be provided.
type LogoModel {
name: String
imageUrl: String
useUserAvatar: Boolean
}
Fields Description:
name
: Text-based logo (displayed as text)imageUrl
: URL of the logo imageuseUserAvatar
: Whether to use the user's avatar as the logo
Note: Only one of these three fields should be provided. If multiple fields are provided, the priority order is: imageUrl
> name
> useUserAvatar
.
Enum Types​
PageLayout​
Layout options for casino pages:
enum PageLayout {
CLASSIC_CAROUSEL
RECTANGULAR_FANCY_CAROUSEL
TWO_BIG_CARDS
BIG_CARD
MID_BIG_CARDS
SQUARES
SQUARES_FANCY_CAROUSEL
}
Input Types​
CasinoPageBySlugArgs​
Input for retrieving a casino page by its slug:
input CasinoPageBySlugArgs {
slug: String!
}
Fields Description:
slug
: The slug of the casino page to retrieve
Response Types​
ActivePlayerCountFormattedResponse​
Represents the count of active players for a casino page:
type ActivePlayerCountFormattedResponse {
count: Int!
formattedCount: String!
}
Fields Description:
count
: The count of active playersformattedCount
: The formatted count of active players (e.g., "1.2K", "500")
SEOWithContentSingleLanguageModel​
Represents SEO information with content for a casino page:
type SEOWithContentSingleLanguageModel {
title: String!
description: String!
content: String!
socialImage: String!
}
Fields Description:
title
: SEO title for the pagedescription
: SEO description for the pagecontent
: SEO content for the pagesocialImage
: URL of the social media image
Queries​
getCasinoPage​
Retrieves a casino page by its slug.
query getCasinoPage($slug: String!) {
getCasinoPage(slug: $slug) {
id
slug
name
default
logo {
name
imageUrl
useUserAvatar
}
layout
promotionRepeat
promotionPlacedAfter
seo {
title
description
content
socialImage
}
highlightedGames {
# CasinoGameModel fields
}
promotions {
# PromotionModel fields
}
activePlayers {
count
formattedCount
}
}
}
Arguments:
slug
: String! - The slug of the casino page to retrieve
Returns:
CasinoPageModel
- The casino page with all its configuration and content