Отправка запросов на платформу Cardsmobile может быть осуществлена с помощью REST API.

Строка запроса формируется следующим образом: http://<хост>:<порт>/<остальная часть пути>.

Пример
https://localhost:28089/v1/card/anonymous
  • <хост> – адрес сервера,
  • <порт> – порт сервиса.

Получение карты по данным клиента

Для получения карты по данным клиента необходимо выполнить запрос типа GET на URL:

http://<хост>:<порт>/v1/card?msisdn=<номер_телефона>&email=<электронный_адрес>&birthDate=<дата_рождения>

Параметры запроса:

НаименованиеТип данныхОписаниеПримечания
msisdnстроковыйНомер телефонаОбязательный параметр
emailстроковыйЭлектронный адресОбязательный параметр
birthDateстроковыйДата рожденияОбязательный параметр

В результате будет получена информация по карте клиента.

В случае, если при получении данных по карте произошла ошибка, в ответе на запрос будет получен статус 422.

Получение карты по номеру (с балансом)

Для получения карты по данным клиента необходимо выполнить запрос типа GET на URL:

https://<хост>:<порт>/v1/card/<номер карты>

В результате будет получена информация по карте клиента.

Получение покупок по карте

Для получения карты по данным клиента необходимо выполнить запрос типа GET на URL:

https://<хост>:<порт>/<номер карты>/purchases?startDate=<значение>&endDate=<значение>

Параметры запроса:

НаименованиеТип данныхОписаниеПримечания
startDateстроковыйДата началаОбязательный параметр
endDateстроковыйДата окончания

В результате будет получен список покупок по карте за указанный промежуток времени.

Обновление разрешенных каналов связи клиента по номеру карты

Для получения карты по данным клиента необходимо выполнить запрос типа PUT на URL:

https://<хост>:<порт>/v1/card/<номер_карты>/communication

Тело запроса:

НаименованиеТип данныхВозможные значенияОписаниеПримечания
allowстроковый
  • call
  • sms
  • telegram
  • email
Разрешенные каналы связи

Обязательный параметр.

Не указанные в параметре каналы связи будут отключены.

Можно указать несколько значений через запятую.

Пример запроса
{
  "allow": ["call", "sms", "telegram", "email"]
}

В результате разрешенные каналы связи будут обновлены.

Обновление данных клиента по номеру карты

Для получения карты по данным клиента необходимо выполнить запрос типа POST на URL:

https://<хост>:<порт>/v1/card/<номер карты>

Тело запроса:

НаименованиеТип данныхОписание
phoneстроковыйНомер телефона
emailстроковыйЭлектронный адрес
surnameстроковыйФамилия
firstnameстроковыйИмя
sexстроковыйПол
birthDateстроковыйДата рождения
Пример запроса
{
 "phone": "79600000900",
 "email": "user@example.com",
 "surname": "Петров",
 "firstname": "Петр",
 "patronymic": "Петрович",
 "sex": "м",
 "birthDate": "1990-01-01"
}

В результате данные о клиенте будут перезаписаны, с кассового сервера будет получен ID клиента.

Выдача карты на сервисе cardissuance

Для получения карты по данным клиента необходимо выполнить запрос типа POST на URL:

https://<хост>:<порт>/v1/provided/<номер карты>

Тело запроса:

НаименованиеТип данныхОписание
phoneстроковыйНомер телефона
emailстроковыйЭлектронный адрес
surnameстроковыйФамилия
firstnameстроковыйИмя
sexстроковыйПол
birthDateстроковыйДата рождения
Пример запроса
{
 "phone": "79600000900",
 "email": "user@example.com",
 "surname": "Петров",
 "firstname": "Петр",
 "patronymic": "Петрович",
 "sex": "м",
 "birthDate": "1990-01-01"
}

В результате клиенту будет выдана карта.

В случае, если произошла ошибка при выдаче карты, в ответе на запрос будет получен статус 422.

Резервирование номера карты на сервисе cardissuance и выдача карты по ранее зарезервированному номеру на сервисе cardissuance

Для резервирования номера карты по данным клиента необходимо выполнить запрос типа GET на URL:

https://<хост>:<порт>/v1/card/anonymous

В результате будет получен номер карты.

Для получения карты с использованием номера карты, полученного в ответе на первый запрос, необходимо выполнить запрос типа POST на URL:

https://<хост>:<порт>/v1/card/anonymous/<cardNumber>

Тело запроса:

НаименованиеТип данныхОписание
phoneстроковыйНомер телефона
emailстроковыйЭлектронный адрес
surnameстроковыйФамилия
firstnameстроковыйИмя
sexстроковыйПол
birthDateстроковыйДата рождения
Пример запроса
{
 "phone": "79600000900",
 "email": "user@example.com",
 "surname": "Петров",
 "firstname": "Петр",
 "patronymic": "Петрович",
 "sex": "м",
 "birthDate": "1990-01-01"
}

В результате будет получена карта по ранее зарезервированному номеру.

В случае, если произошла ошибка при выдаче карты по зарезервированному ранее номеру, в ответе на запрос будет получен статус 422.

  • No labels