Клиент - Авторизованный - Получить существующего, ищем по...
Предназначен для поиска клиента в базе данных Mindbox. Поиск может происходить по различным (одному или нескольким) параметрам, которые выбираются из выпадающего списка.
Промокод - Получить список для клиента
Предназначен для получения доступных клиенту промокодов.
Клиент - Получить данные по текущему клиенту (Статус обработки, идентификаторы клиента)
Предназначен для того, чтобы в ответ операция вывела статус выполнения (успешно ли она рассчитала заказ), а также различные идентификаторы клиента для дальнейшего взаимодействия с ним.
Описание метода
Операция для получения промокодов выбранного клиента.
При успешном выполнении операция вернет статус Success и список промокодов счетов клиента. Выгружаются промокоды со следующими статусами.
Статус промокода
Описание
YetNotActive
Еще неактивен
Active
Активен, доступен для использования
Used
Использован
AlreadyNotActive
Просрочен
Blocked
Заблокирован
Если клиент с указанным Id не обнаружен, в ответе будет ошибка ProtocolError. Подробней про вызов метода можно прочитать здесь.
Описание запроса
Операция выгрузки промокодов
POST https://api.mindbox.ru/v3/operations/sync?endpointId={Идентификатор точки интеграции}&operation=ClientPromocodesContent-Type: application/json; charset=utf-8Accept: application/jsonAuthorization: SecretKey {Секретный ключ}{ "customer": { "ids": { "mindboxId": "<Id клиента в Mindbox>" } }, "page": { "pageNumber": "<Номер страницы для постраничного вывода, начиная с 1 (не более 21474831)>", "itemsPerPage": "<Количество промокодов на странице (не более 10000)>", "sinceDateTimeUtc": "<Дата и время самого раннего действия включительно (UTC, YYYY-MM-DD hh:mm)>", "tillDateTimeUtc": "<Дата и время самого позднего действия невключительно (UTC, YYYY-MM-DD hh:mm)>" }}
В узле customer нужно передать одно или несколько значений, с помощью которых система будет искать клиента.
Узел page настраивает выборку промокодов. Список промокодов разделен на страницы по 10000 элементов. Например, чтобы получить первые 100 промокодов клиента, достаточно передать:
"pageNumber": "1"
"itemsPerPage": "100"
sinceDateTimeUtc и tillDateTimeUtc — дополнительные параметры, которые фильтруют список по дате последнего действия с промокодом. Если промокод уже был применен, при фильтрации будет учитываться дата использования(usedDateTimeUtc). В ином случае — дата выдачи промокода(issuedDateTimeUtc).
Описание ответа
Ответ сервиса на операцию выгрузки промокодов
{ "status": "<Результат выполнения запроса: Success в случае успеха, ValidationError в случае ошибки пользователя, ProtocolError в случае ошибки интеграции, InternalServerError в случае недоступности сервера.>", "customer": { "firstName": "<Имя>", "middleName": "<Отчество>", "lastName": "<Фамилия>", "email": "<Адрес электронной почты>", "isEmailInvalid": "<Адрес электронной почты невалиден>", "mobilePhone": "<Номер мобильного телефона>", "isMobilePhoneInvalid": "<Мобильный телефон невалиден>", "birthDate": "<Дата рождения в формате yyyy-MM-dd>", "sex": "<Пол>", "changeDateTimeUtc": "<Дата регистрации/редактирования в формате yyyy-MM-dd HH:mm:ss.fff>", "ianaTimeZone": "<Часовой пояс>", "timeZoneSource": "<Источник информации о часовом поясе>", "processingStatus": "<Статус обработки клиента>", "ids": { "mindboxId": "<Идентификатор Mindbox>", "websiteID": "<Идентификатор на сайте>" }, "area": { "name": "<Название географической зоны клиента>", "ids": { "externalId": "<Идентификатор географической зоны клиента>" } }, "customFields": { "otsenka": "<Оценка>" } }, "promoCodes": [ { "status": "<Статус промокода>", "availableFromDateTimeUtc": "<Дата начала доступности промокода>", "availableTillDateTimeUtc": "<Дата окончания доступности промокода>", "isUsed": "<Погашен ли промокод>", "usedDateTimeUtc": "<Дата использования промокода>", "issuedDateTimeUtc": "<Дата выдачи промокода>", "blockedDateTimeUtc": "<Дата блокировки промокода>", "ids": { "mindboxId": "<Идентификатор Mindbox>", "value": "<Значение промокода>" }, "pool": { "name": "<Название пула>", "description": "<Описание пула>", "ids": { "mindboxId": "<Идентификатор Mindbox>", "externalId": "<Внешний идентификатор пула>" } }, "usedPointOfContact": { "name": "<Имя точки контакта>", "ids": { "mindboxId": "<Идентификатор Mindbox>", "externalId": "<Внешний идентификатор точки контакта>" } }, "issuedPointOfContact": { "name": "<Имя точки контакта>", "ids": { "mindboxId": "<Идентификатор Mindbox>", "externalId": "<Внешний идентификатор точки контакта>" } } } ]}