Skip to main content

Queries

These queries return public project capabilities and session-scoped player data.

Project availability​

QuerydocumentId: projectAvailableauth: X-Project-Context

projectAvailable​

Returns Boolean!: true when the project is available, or false when it is suspended. No variables or player session are required. For false, show a temporary-unavailability notice and offer to check again later. A failed request does not indicate availability.

Request
documentId: projectAvailable
{
"documentId": "projectAvailable",
"variables": {}
}
Response
200 OK
{
"data": {
"projectAvailable": false
}
}

Current user​

QuerydocumentId: meauth: Bearer session

me​

Description​

Returns the authenticated user and the core fields required by the player cabinet.

Input​

The operation does not accept variables.

Result​

Response type - User.

FieldTypeDescription
idID!User ID
emailStringEmail
balanceString!Available main balance as an exact decimal string
bonusBalanceString!Available bonus balance as an exact decimal string
paymentDebtString!Outstanding debt on the selected balance
purchasesRestrictedBoolean!Purchases and withdrawals from this balance are restricted pending repayment
hasPinBoolean!Whether a PIN code is set
shieldInt!PIN shield state
statusInt!Account status
emailConfirmedBoolean!Whether email is confirmed
telegramStringTelegram ID
langStringLanguage
createdAtDateTimeRegistration date
lastLoginDateTimeLast login
lastIpStringLast IP
selectedServerIdIntSelected server
socialProfiles[SocialProfile!]!Linked social profiles
twoFactorMethods[String!]!Enabled 2FA methods
loyaltyProgressLoyaltyProgress!Calculated Loyalty progress and current level state

Errors​

  • UNAUTHENTICATED - the session is missing or expired.
  • FORBIDDEN - the user is blocked or cannot access the requested account.

Exchange example​

Request
documentId: me
{
"documentId": "me",
"variables": {}
}
Response
200 OK
{
"data": {
"me": {
"id": "1001",
"email": "[email protected]",
"balance": "120.5",
"bonusBalance": "15",
"paymentDebt": "0",
"purchasesRestricted": false,
"hasPin": true,
"shield": 1,
"emailConfirmed": true,
"selectedServerId": 1,
"loyaltyProgress": {
"active": true,
"programEnabled": true,
"progressMode": "rolling_window",
"progressState": "active",
"currentProgress": "4000",
"pendingProgress": "0",
"lifetimeProgress": "4000",
"currentLevelId": "level-2",
"nextLevelId": "level-3",
"cycle": {
"id": "cycle-2026-08",
"startsAt": "2026-08-01T00:00:00+00:00",
"endsAt": "2026-09-01T00:00:00+00:00",
"frozenUntil": null
},
"forecast": {
"projectedProgress": "4000",
"projectedLevelId": "level-2",
"requiredToRetain": "0",
"downgradeAt": null,
"frozenUntil": null,
"expiringContributions": []
}
}
}
}
}

LoyaltyProgress​

FieldTypeDescription
activeBoolean!Whether a current level and its benefits are active
programEnabledBoolean!Whether the program is enabled for the project
progressModeLoyaltyProgressMode!lifetime, personal_cycle, calendar_month, rolling_window, or season
progressStateLoyaltyProgressState!inactive, active, frozen, or grace
currentProgressString!Confirmed progress in the current calculation period
pendingProgressString!Progress waiting for confirmation
lifetimeProgressString!Progress accumulated without a period boundary
currentLevelIdIDCurrent level
nextLevelIdIDNext level
cycleLoyaltyProgressCycleCurrent cycle boundaries and freeze period
forecastLoyaltyProgressForecast!Projection after contributions leave the calculation window

LoyaltyProgressCycle contains id, startsAt, endsAt, and frozenUntil. LoyaltyProgressForecast contains projectedProgress, projectedLevelId, requiredToRetain, downgradeAt, frozenUntil, and expiringContributions. All amounts are strings so monetary and progress precision is preserved.

Active sessions​

QuerydocumentId: sessionsauth: Bearer session

sessions​

Description​

Returns active sessions for display and account security management.

Input​

The operation does not accept variables.

Result​

Response type - [Session!]!.

Errors​

  • UNAUTHENTICATED - the user is not authenticated.

Exchange example​

Request
documentId: sessions
{
"documentId": "sessions",
"variables": {}
}
Response
200 OK
{
"data": {
"sessions": [
{
"id": "019bef0c-2d38-7c98-a11d-d2d7ccf7e7cb",
"isCurrent": true,
"expiresAt": "2026-07-13T22:00:00Z"
}
]
}
}

Project settings​

QuerydocumentId: projectSettingsauth: public

projectSettings​

Description​

Returns public project settings required by a client installation, including languages, registration and enabled sign-in methods.

Input​

The operation does not accept variables.

Result​

Response type - ProjectSettings.

Errors​

  • PROJECT_NOT_FOUND - the project context does not resolve to an active project.
  • VALIDATION - the project context header is invalid.

Exchange example​

Request
documentId: projectSettings
{
"documentId": "projectSettings",
"variables": {}
}
Response
200 OK
{
"data": {
"projectSettings": {
"registrationEnabled": true,
"defaultLang": "ru",
"socialProviders": [
"google",
"telegram"
]
}
}
}

Server list​

QuerydocumentId: serversauth: public

servers​

Description​

Returns game servers available for the current project.

Input​

The operation does not accept variables.

Result​

Response type - [GameServer!]!.

Errors​

  • PROJECT_NOT_FOUND - the project was not found.

Exchange example​

Request
documentId: servers
{
"documentId": "servers",
"variables": {}
}
Response
200 OK
{
"data": {
"servers": [
{
"id": 1,
"name": "Main",
"healthStatus": "AVAILABLE"
}
]
}
}

Linked accounts​

QuerydocumentId: accountLinksauth: Bearer session

Description​

Returns confirmed, pending, and revoked links for the current account. The adjacent accountLinkQuota field contains the current allowance; see Linked accounts for the complete contract and mutations.

Input​

The operation does not accept variables.

Result​

Response type - [AccountLink!]!. The operation also requests AccountLinkQuota.

Errors​

  • UNAUTHENTICATED - the user is not authenticated.

Exchange example​

Request
documentId: accountLinks
{
"documentId": "accountLinks",
"variables": {}
}
Response
200 OK
{
"data": {
"accountLinks": [
{
"id": "17",
"targetId": "2002",
"email": "[email protected]",
"status": "CONFIRMED",
"createdAt": "2026-07-23T10:30:00+00:00",
"confirmationExpiresAt": null
}
],
"accountLinkQuota": {
"isUnlimited": false,
"baseLimit": 5,
"effectiveLimit": 9,
"used": 3,
"remaining": 6,
"pendingUsed": 1,
"pendingLimit": 10,
"canCreate": true
}
}
}

Social profiles​

QuerydocumentId: socialProvidersauth: public

socialProviders​

Description​

Returns social providers available for login and account binding.

Input​

The operation does not accept variables.

Result​

Response type - [String!]!.

Errors​

  • PROJECT_NOT_FOUND - project was not found.

Exchange example​

Request
documentId: socialProviders
{
"documentId": "socialProviders",
"variables": {}
}
Response
200 OK
{
"data": {
"socialProviders": [
"google",
"discord"
]
}
}

Linked social profiles​

QuerydocumentId: socialProfilesauth: Bearer session

socialProfiles​

Description​

Returns social profiles linked to the current user.

Input​

The operation does not accept variables.

Result​

Response type - [SocialProfile!]!.

Errors​

  • UNAUTHENTICATED - the user is not authenticated.

Exchange example​

Request
documentId: socialProfiles
{
"documentId": "socialProfiles",
"variables": {}
}
Response
200 OK
{
"data": {
"socialProfiles": [
{
"provider": "google",
"providerUserId": "123"
}
]
}
}