Серверное социальное API

Получение информации о профиле пользователя

Вызов: сервер-сервер HTTP GET
Авторизация: Подпись запроса

Формат запроса:
GET, https://games.mail.ru/app/[GMRID]/user/profile?uid=[int uid]&sign=[md5 hash]

Основные параметры:
GMRID - id приложения, является частью PATH в URL;
<uid> - id пользователя
[sign] - уникальная цифровая подпись запроса

Формат ответа:

Успешно:

{
    "status": "ok",
    "uid": "[int uid]",
    "nick": "[str nick]",
    "avatar": "[url avatar]",
    "birthyear": "[str birthyear]",
    "sex": "[str male or female]",
    "slug": "[str unique user identificator]"
}

Ошибка:

{
    "status": "error",
    "errcode": "[int errcode]",
    "errmsg": "[string errmsg]"
}

 

Приглашение в игру одного или нескольких пользователей

Вызов: сервер-сервер HTTP POST
Авторизация: Подпись запроса

Формат запроса:
POST, https://games.mail.ru/app/[GMRID]/user/invite/friends uid=[int uid] slugs=[str comma separated list] sign=[md5 hash]

Основные параметры:
GMRID - id приложения, является частью PATH в URL;
<uid> - id пользователя
<slugs> - список slug из профилей приглашаемых пользователей. Разделитель запятая, без пробелов.
[sign] - уникальная цифровая подпись запроса

Формат ответа:

Успешно:

{
    "status": "ok",
}

 

Публикация плиглашения в игру в ленте друзей https://games.mail.ru/community/feed/

Вызов: сервер-сервер HTTP POST
Авторизация: Подпись запроса

Формат запроса:
POST, https://games.mail.ru/app/[GMRID]/user/invite/all uid=[int uid] sign=[md5 hash]

Основные параметры:
GMRID - id приложения, является частью PATH в URL;
<uid> - id пользователя
[sign] - уникальная цифровая подпись запроса

Формат ответа:

Успешно:

{
    "status": "ok",
}

 

Публикация в ленте друзей https://games.mail.ru/community/feed/

Вызов: сервер-сервер HTTP POST
Авторизация: Подпись запроса

Формат запроса:
POST, https://games.mail.ru/app/[GMRID]/user/share uid=[int uid] title=[str title] img_url=[str url] sign=[md5 hash]

Основные параметры:
GMRID - id приложения, является частью PATH в URL;
<uid> - id пользователя
[title] - заголовок
[img_url] - ссылка на картинку
[sign] - уникальная цифровая подпись запроса

Формат ответа:

Успешно:

{
    "status": "ok",
}

Подсчет подписи. Общий случай.

Помочь в вычисление подписи может калькулятор подписи.  Для вычисления подписи необходимо:

1. Взять параметры запроса:

  • <uid> - 596343600
  • <paramA> - 123
  • <paramB> - some_string

2. Сортируем параметры по ключам

{
    "paramA": 123,
    "paramB": "some_string",
    "uid": "596343600"
}

3. Склеиваем ключ-значение в строку

$str = "paramA=123paramB=some_stringuid=596343600"

4. Генерируем подпись

$sign = md5($str . $secret)

$secret - уникальный ключ игры. Партнер может узнать его в кабинете разработчика, на странице игры, на вкладке "Системные свойства". Поле "Секрет для api.games.mail.ru".

5. Передаем подпись в GET параметре sign