Перейти к основному содержимому

Игровые аккаунты

Операции игровых аккаунтов работают с аккаунтами пользователя на игровых серверах: создают, привязывают, обновляют видимость и возвращают данные для входа.

Создать игровой аккаунт​

MutationdocumentId: createGameAccountauth: Bearer session

createGameAccount​

Описание​

Создает новый игровой аккаунт для текущего пользователя.

Входные данные​

ПолеТипОбязательныйОписание
loginString!✓Логин игрового аккаунта
passwordString!✓Пароль игрового аккаунта
prefixString-Префикс логина, если включен в проекте

Результат​

Тип ответа - GameAccountResult.

Ошибки​

  • UNAUTHENTICATED - пользователь не авторизован.
  • VALIDATION - логин или пароль не прошли проверку.
  • LOGIN_EXISTS - игровой аккаунт уже существует.
  • MAX_ACCOUNTS_REACHED - достигнут лимит игровых аккаунтов.
  • CREATE_FAILED - игровой сервер не создал аккаунт.

Пример обмена​

Запрос
documentId: createGameAccount
{
"documentId": "createGameAccount",
"variables": {
"login": "GameLogin",
"password": "password123",
"prefix": "abc"
}
}
Ответ
200 OK
{
"data": {
"createGameAccount": {
"account": {
"login": "GameLogin",
"serverId": 1
},
"message": "Игровой аккаунт создан"
}
}
}

Связанные типы​

Привязать существующий аккаунт​

MutationdocumentId: bindGameAccountauth: Bearer session

bindGameAccount​

Описание​

Привязывает уже созданный игровой аккаунт к текущему мастер-аккаунту.

Входные данные​

ПолеТипОбязательныйОписание
loginString!✓Логин существующего игрового аккаунта
passwordString!✓Пароль игрового аккаунта
serverIdInt!✓ID сервера, где находится аккаунт

Результат​

Тип ответа - GameAccountResult.

Ошибки​

  • UNAUTHENTICATED - пользователь не авторизован.
  • INVALID_CREDENTIALS - логин или пароль игрового аккаунта неверные.
  • LOGIN_EXISTS - аккаунт уже привязан в текущем проекте.
  • BIND_DISABLED - привязка отключена в настройках сервера.
  • MAX_ACCOUNTS_REACHED - достигнут лимит игровых аккаунтов.

Пример обмена​

Запрос
documentId: bindGameAccount
{
"documentId": "bindGameAccount",
"variables": {
"login": "GameLogin",
"password": "password123",
"serverId": 1
}
}
Ответ
200 OK
{
"data": {
"bindGameAccount": {
"account": {
"login": "GameLogin",
"serverId": 1
},
"message": "Игровой аккаунт привязан"
}
}
}

Связанные типы​

Обновить список аккаунтов​

MutationdocumentId: refreshGameAccountsauth: Bearer session

refreshGameAccounts​

Описание​

Синхронизирует список игровых аккаунтов пользователя с игровым сервером.

Входные данные​

Операция не принимает переменные.

Результат​

Тип ответа - [GameAccount!]!.

Ошибки​

  • UNAUTHENTICATED - пользователь не авторизован.

Пример обмена​

Запрос
documentId: refreshGameAccounts
{
"documentId": "refreshGameAccounts",
"variables": {}
}
Ответ
200 OK
{
"data": {
"refreshGameAccounts": [
{
"login": "GameLogin",
"serverId": 1,
"hidden": false
}
]
}
}

Связанные типы​

Скрыть или показать аккаунт​

MutationdocumentId: hideGameAccountauth: Bearer session

hideGameAccount / showGameAccount​

Описание​

Меняет видимость игрового аккаунта в личном кабинете без удаления аккаунта.

Входные данные​

ПолеТипОбязательныйОписание
accountLoginString!✓Логин игрового аккаунта

Результат​

Тип ответа - GameAccountResult с обновленным аккаунтом и сообщением.

Ошибки​

  • UNAUTHENTICATED - пользователь не авторизован.
  • GAME_ACCOUNT_NOT_FOUND - аккаунт не найден среди аккаунтов пользователя.

Пример обмена​

Запрос
documentId: hideGameAccount
{
"documentId": "hideGameAccount",
"variables": {
"accountLogin": "GameLogin"
}
}
Ответ
200 OK
{
"data": {
"hideGameAccount": {
"account": {
"login": "GameLogin",
"serverId": 1,
"hidden": true
},
"message": "Игровой аккаунт скрыт"
}
}
}

Связанные типы​

Данные для входа в игру​

QuerydocumentId: getGameCredentialsauth: Bearer session

getGameCredentials​

Описание​

Возвращает данные для входа в игровой аккаунт. Если включена защита, требуется PIN-код мастер-аккаунта.

Входные данные​

ПолеТипОбязательныйОписание
accountLoginString!✓Логин игрового аккаунта
pinString-PIN-код мастер-аккаунта

Результат​

Тип ответа - GameCredentials.

Ошибки​

  • UNAUTHENTICATED - пользователь не авторизован.
  • GAME_ACCOUNT_NOT_FOUND - аккаунт не найден.
  • PIN_REQUIRED - требуется PIN-код.
  • INVALID_PIN - PIN-код неверный.

Пример обмена​

Запрос
documentId: getGameCredentials
{
"documentId": "getGameCredentials",
"variables": {
"accountLogin": "GameLogin",
"pin": "1234"
}
}
Ответ
200 OK
{
"data": {
"getGameCredentials": {
"login": "GameLogin",
"password": "password123"
}
}
}

Связанные типы​