Получение данных учётной записи

IMSHOP Retail Protocol (IRP) является объектом интеллектуальной собственности ООО «АЙ ЭМ СОЛЮШНЗ» (IMSHOP) и защищён как объект авторского права. Свидетельство о депонировании произведения № 023-014461 от 16 января 2023 г. подтверждает исключительные права ООО «АЙ ЭМ СОЛЮШНЗ» на данные технологии.

IMSHOP Retail Protocol создан по заказу ООО «АЙ ЭМ СОЛЮШНЗ». Использование IMSHOP Retail Protocol допустимо только при взаимодействии с ООО "АЙ ЭМ СОЛЮШНЗ" и наличии действующего лицензионного договора. Более подробно можно ознакомиться здесь.

Запрос данных пользователя по идентификатору

APP SERVER → INFRASTRUCTURE

От вас потребуется URL, на который наш сервер будет слать POST-запрос. Да, мы запрашиваем данные через POST, а не через GET.

В вашу систему будут приходить вот такие данные:

{
    "userIdentifier": "123"
}
  • userIdentifier — идентификатор пользователя (обязательное поле), полученный от системы клиента на этапе авторизации

Идентификатор пользователя — это номер телефона, адрес email, или любой другой идентификатор (например, логин), как договоримся. В случае с номером телефона мы присылаем только цифры, через семёрку.

Ответ:

{
    "user": {
        "id": "123",
        "name": "Иванов Иван",
        "phone": "71234567890",
        "email": "ivanov@mail.com",
        "emailConfirmed": true,
        "bonuses": 10000,
        "units": "бонусов",
        "segments": ["registered", "loyal"],
        "age": 35,
        "gender": "male",
        "cardNumber": "456123789",
        "cardPercent": 5,
        "status": "Золотая карта",
        "cardColor": "#000000",
        "cardTextColor": "00000",
        "birthday": "1986-12-24",
        "loyaltyCards": [
            {
                "cardNumber": "4567890123",
                "bonuses": 5000,
                "status": "Серебряная карта",
                "cardColor": "#FFFFFF",
                "cardTextColor": "#FFFFFF"            
            }
        ]
    }
}

— объект «Учётная запись пользователя». Обязательное поле:

  • id — идентификатор пользователя в вашей системе

  • loyaltyCards — (необязательное поле) дополнительные карты лояльности, привязанные к профилю пользователя; можно передать несколько карт

В случае, если пользователь новый, и информации по нему никакой нет — допустимо присылать пустые поля (все, кроме id), или не присылать их вовсе.

Следует помнить, что этот запрос будет приходить из нашего доверенного, авторизованного сервера; это — не публичный API.

Ошибка: невозможно получить информацию

{
    "error": {
        "message": "Пользователя с таким идентификатором более не существует"
    }
}
  • message — сообщение для пользователя, описывающее проблему (обязательное поле)

Как правило, такая ошибка возникать не будет, т.к. запрос данных пользователя по идентификатору будет происходить только для заранее авторизованных пользователей.

Last updated