API карт лояльности

Использование API

Loyalty card API - программный интерфейс для создания, удаления, получения и изменения карт лояльности в приложении SWiP.

Транспорт и протокол

В качестве транспорта используется HTTPS протокол. Сообщения представлены в JSON формате.

Общие положения

Мобильное приложение взаимодействует с сервером по протоколу REST. Протокол REST односторонний, только клиент может сделать запрос к серверу и получить ответ. Сервер не может передать данные на клиента без запроса.

Для выполнения большинства запросов необходима аутентификация. Запрос должен содержать заголовок X-Auth-Token, значением которого является JWT-токен.

Список заголовков, которые необходимо обязательно передавать в API запросах:

Название поля

Пример значения

Описание

Название поля

Пример значения

Описание

X-Auth-Token

eyJhbGciOiJIUzUxMM....9rZ8VQ54JqWFe1Q

Токен приходит после регистрации или после входа в приложение.

Api-Version

2

Версия API.

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

Выводит список всех добавленных карт лояльности.

Формат запроса

1 GET /discount-cards

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

В ответ на запрос приходит список карт лояльности.

Пример тела ответа

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 [ { "barcodeNumber": "string", // номер, который зашифрован в штрихкод "barcodeType": "string", // формат штрихкода "cardNumber": "string", // номер карты "createdAt": "2019-10-31T13:42:31.418Z", // дата создания карты "createdByOffer": true, // выпуск карты в приложении по акции "defaultImageFront": "string", // логотип мерчанта "id": "string", // идентификатор карты в системе SWiP "imageBack": "string", // фото карты с лицевой стороны "imageFront": "string", // фото карты с оборотной стороны "merchantId": "string", // идентификатор мерчанта "name": "string", // название карты "offerId": "string" // идентификатор акции, по которой была выпущена карта } ]

Добавление карты лояльности

Создает карту лояльности в системе SWiP. Клиент может добавить в приложение SWiP имеющиеся у него дисконтные карты или выпустить карту лояльности в приложении по акции от мерчанта.

Формат запроса

1 POST /discount-cards

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

Параметр

Тип

Описание

Параметр

Тип

Описание

barcodeNumber

string, необязательный

Номер, который зашифрован в штрихкод.

barcodeType

string, необязательный

Формат штрихкода.

cardNumber

string, обязательный

Номер карты лояльности.

createdAt

string, необязательный

Дата создания карты лояльности.

createdByOffer

boolean, необязательный

Выпуск карты в приложении по акции от мерчанта.

defaultImageFront

string, необязательный

Логотип мерчанта.

id

string, необязательный

Идентификатор карты в системе SWiP.

imageBack

string, необязательный

Фото карты с лицевой стороны.

imageFront

string, необязательный

Фото карты с оборотной стороны.

merchantId

string, необязательный

Идентификатор мерчанта в системе SWiP.

name

string, обязательный

Название карты.

offerId

string, необязательный

Идентификатор акции, по которой была выпущена карта.

Пример тела запроса

1 2 3 4 5 6 7 8 9 10 11 12 13 14 { "barcodeNumber": "string", "barcodeType": "string", "cardNumber": "string", "createdAt": "2019-10-31T13:42:31.429Z", "createdByOffer": true, "defaultImageFront": "string", "id": "string", "imageBack": "string", "imageFront": "string", "merchantId": "string", "name": "string", "offerId": "string" }

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

В ответ на запрос приходит объект карты лояльности.

Пример тела ответа

1 2 3 4 5 6 7 8 9 10 11 12 13 14 { "barcodeNumber": "string", // номер, который зашифрован в штрихкод "barcodeType": "string", // формат штрихкода "cardNumber": "string", // номер карты "createdAt": "2019-10-31T13:42:31.418Z", // дата создания карты "createdByOffer": true, // выпуск карты в приложении по акции "defaultImageFront": "string", // логотип мерчанта "id": "string", // идентификатор карты в системе SWiP "imageBack": "string", // фото карты с лицевой стороны "imageFront": "string", // фото карты с оборотной стороны "merchantId": "string", // идентификатор мерчанта "name": "string", // название карты "offerId": "string" // идентификатор предложения, по которой была выпущена карта }

Удаление карты лояльности

Удаляет заданную карту лояльности.

Формат запроса

1 DELETE /discount-cards/{id}

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

Параметр

Тип

Описание

Параметр

Тип

Описание

id

string, обязательный

Идентификатор карты лояльности в системе SWiP.

Обновление карты лояльности

Обновляет данные по карте лояльности. Для полей, указанных в запросе, будут использованы переданные значения.

Формат запроса

1 PUT /discount-cards/{id}

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

Параметр

Тип

Описание

Параметр

Тип

Описание

id

string, обязательный

Идентификатор карты лояльности в системе SWiP.

barcodeNumber

string, необязательный

Номер, который зашифрован в штрихкод.

barcodeType

string, необязательный

Формат штрихкода.

cardNumber

string, обязательный

Номер карты лояльности.

createdAt

string, необязательный

Дата создания карты лояльности.

createdByOffer

boolean, необязательный

Выпуск карты в приложении по акции от мерчанта.

defaultImageFront

string, необязательный

Логотип мерчанта.

imageBack

string, необязательный

Фото карты с лицевой стороны.

imageFront

string, необязательный

Фото карты с оборотной стороны.

merchantId

string, необязательный

Идентификатор мерчанта в системе SWiP.

name

string, обязательный

Название карты лояльности.

offerId

string, необязательный

Идентификатор акции, по которой была выпущена карта.

Пример тела запроса

1 2 3 4 5 6 7 8 9 10 11 12 13 14 { "barcodeNumber": "string", "barcodeType": "string", "cardNumber": "string", "createdAt": "2019-10-31T13:42:31.474Z", "createdByOffer": true, "defaultImageFront": "string", "id": "string", "imageBack": "string", "imageFront": "string", "merchantId": "string", "name": "string", "offerId": "string" }

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

В ответ на запрос приходит обновленный объект карты лояльности.

Пример тела ответа

1 2 3 4 5 6 7 8 9 10 11 12 13 14 { "barcodeNumber": "string", "barcodeType": "string", "cardNumber": "string", "createdAt": "2019-10-31T13:42:31.474Z", "createdByOffer": true, "defaultImageFront": "string", "id": "string", "imageBack": "string", "imageFront": "string", "merchantId": "string", "name": "string", "offerId": "string" }

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

Запрашивает список всех карт лояльности, которые есть в системе.

Формат запроса

1 GET /merchant-discount-cards

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

В ответ на запрос приходит список карт лояльности.

1 2 3 4 5 6 7 8 9 [ { "imageBack": "string", "imageFront": "string", "merchantId": "string", "name": "string", "updatedAt": "2019-10-31T13:42:31.599Z" } ]