Bungly boo!

Responses
400 EmptyResponse

Пустой ответ сервера

Body
application/json
Object
data
Object required
400 AddressResponse

AddressResponse

Body
application/json
Object
data
Object required
address
Address required
400 OrderResponse

Ответ на запрос заказа

Body
application/json
Object
data
Object required
order
Order required
400 OrderDataResponse

Данные для заполнения экрана оформления заказа при попадании на него

Body
application/json
Object
data
Object required
cart
Cart required
orderData
OrderData required
400 CartResponse

Модель ответа запроса корзины

Body
application/json
Object
data
Object required
cart
Cart required
400 [REFINE] PaymentResponse

Ответ на запрос оплаты. Может содержать данные необходимые для подтверждения оплаты.

Body
application/json
Object
data
Object required
confirmation
400 VerifySendCodeResponse

VerifySendCodeResponse

Body
application/json
Object
data
Object required
requestId
string required

Идентификатор (передается в запросе подтверждения кода)

resendIn
integer required

Длительность в секундах, через сколько можно отправить новую смс.

400 VerifyCodeResponse

Ответ на запрос проверки кода верификации

Body
application/json
Object
data
Object required
confirmationToken
string required

Токен подтверждающая операции (одноразовый в общем случая, для операции auth - двухразовый)

400 SettingsResponse

SettingsResponse

Body
application/json
Object
subscriptions
Array of NotificationSetting required

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

notifications
Array of NotificationSetting required

Список настроек уведомлений пользователя

400 ProfileResponse

ProfileResponse

Body
application/json
Object
data
Object required
profile
Profile required
Operations
POST /session/register
PATCH /session/update
PATCH /addresses/{addressId}
DELETE /addresses/{addressId}
PUT /orders/{id}
DELETE /orders/{id}
GET /orders/repeat/{id}
POST /orders/{orderId}/review
GET /catalog/products/selections/{type}
POST /catalog/products/{id}/reviews
POST /cart/calculate
POST /orders/{id}/pay
POST /verify/code
GET /catalog/products/search
POST /password/update
Регистрация сессии
POST /session/register

При первом запуске приложение вызывает данный запрос, тем самым устройство регистрируется на сервере. Так же создается временный пользователь на сервере.

Request body

application/json
Object
device
Device required

Responses

200 200

Успешный запрос

Body
application/json
Обновление сессии
PATCH /session/update

Authentication

Access token

Метод должен вызываться каждый запуск, если на девайсе есть access token. Если передаем пустую строку в какой то параметр, то сервер затирает значение на эту пустую строку. Значения, которые не передаются не изменяются.

Request body

application/json
Object
device
Device required

Responses

200 200

Успешный запрос

Body
application/json
Object
data
Session required
Восстановление пароля
POST /password/recovery

Authentication

Access token

Пароли передаются в зашифрованном виде, алгоритм шифрования HMAC-SHA256, в качестве ключа используется уникальный идентификатор устройства присвоенный сервером serverId.

Request body

application/json
Object
confirmationToken
string

Токен подтверждений операции passwordRecovery

password
string required

Пароль, зашифрованный алгоритмом (HMAC-SHA256)

newPassword
string required

Новый пароль, зашифрованный алгоритмом (HMAC-SHA256)

Responses

400 default

default response

Авторизация по номеру телефона
POST /auth/phone

Авторизация по номеру телефона. В случае если пользователь не был ранее зарегистрирован в приложении, неявно происходит регистрация пользователя.

Request body

application/json
Object
confirmationToken
string required

Токен подтверждений операции auth

phone
Phone required

Responses

200 200

OK

Body
application/json
Авторизация по адресу электронной почты
POST /auth/email

Параметр password содержить пароль пользователя, зашифрованный алгоритмом HMAC-SHA256, в качестве ключа шифрования используется уникальный идентификатор устройства присвоенный сервером serverId. Коды ошибок:

  • ERROR_EMAIL_INVALID - Пользователя с таким e-mail не существует
  • ERROR_PASSWORD_INVALID - Неверный пароль

Request body

application/json
Object
email
string required

Адрес электронной почты

password
string required

Пароль, зашифрованный алгоритмом (HMAC-SHA256)

Responses

200 200

OK

Body
application/json
Авторизация через социальную сеть ВКонтакте
POST /auth/vk

Request parameters

accessToken
string required

Токен доступа

Responses

200 200

OK

Body
application/json
Авторизация через социальную сеть Instagram
POST /auth/instagram

Request parameters

accessToken
string required

Токен доступа

Responses

200 200

OK

Body
application/json
Авторизация через социальную сеть Facebook
POST /auth/fb

Request parameters

accessToken
string required

Токен доступа

Responses

200 200

OK

Body
application/json
Авторизация через систему авторизации Apple
POST /auth/apple

Авторизация через систему авторизации Apple

Request body

application/json
Object
authCode
string required

Код авторизации

Responses

200 200

OK

Body
application/json
Выход из профиля
POST /logout

При логауте происходит создание нового временного пользователя, который возвращается в ответе

Responses

200 200

OK

Body
application/json
Получить список адресов
GET /addresses

Получить список адресов пользователя

Request parameters

offset
integer optional

Смещенеи начала выборки

Example:
0
limit
integer optional

Максимальное число элементов в выборке

Example:
40

Responses

200 200

OK

Body
application/json
Object
data
Object
list
Array of Address required

Список адресов

hasMore
boolean required

Признак наличия допольнительных элементов сверх выборки

total
integer required

Общее число элементов

Добавление адреса
POST /addresses

Добавление адреса

Request body

application/json
Object
cityId
integer required

Идентификатор города

postcode
string required

Почтовый индекс

street
string required

Улица

house
string required

Дом

flat
string

Номер квартиры или офиса

floor
string

Этаж

comment
string

Комментарий к адресу

Responses

400 AddressResponse

AddressResponse

Получить подсказки адресов
GET /addresses/hints

Request parameters

cityID
string required

Айди города для выдачи адресов по конкретному городу

query
string optional

Поисковый запрос для фильтрации подсказок адресов

Responses

200 200

OK

Body
application/json
Object
data
Object required
addresses
Array of Address

Список подсказок адресов

Редактирование адреса
PATCH /addresses/{addressId}

Редактирование существующего адреса пользователя. Изменяются только передаваемые поля.

Path variables

addressId
string required

Идентификатор адреса

Request body

application/json
Object
cityId
integer

Идентификатор города

postcode
string

Почтовый индекс

street
string

Улица

house
string

Дом

flat
string

Номер квартиры или офиса

floor
string

Этаж

comment
string

Комментарий к адресу

Responses

400 AddressResponse

AddressResponse

Удаление адрес
DELETE /addresses/{addressId}

Удаление адреса

Path variables

addressId
string required

Идентификатор адреса

Responses

400 EmptyResponse

Пустой ответ сервера

Получить список акций
GET /promos

Запрос возвращает список действующих акций

Responses

200 200

OK

Body
application/json
Object
data
Object required
promoItems
Array of PromoItem required

Список действующих акций

Получить детальную информацию по акции
GET /promos/{promoId}

Path variables

promoId
string required

Responses

200 200

OK

Body
application/json
Object
data
Object required
promo
Promo required
Получить информацию о сервисах доставки для выбранного типа доставки
GET /delivery/services

Получить информацию о сервисах доставки. Возвращается информация актуальная для текущей корзины пользователя.

Request parameters

cityId
integer required

Идентификатор города

Responses

200 200

OK

Body
application/json
Object
data
Object required
deliveryServices
Array of DeliveryService required

Список сервисов для доставки

pickupServices
Array of DeliveryService required

Список сервисов для самовывоза

Получить информацию о сервисе доставки для выбранного адреса
GET /delivery/services/{id}

Path variables

id
string required

Идентификатор сервиса доставки

Request parameters

addressId
integer required

Идентификатор адреса доставки

Responses

200 200

OK

Body
application/json
Object
deliveryService
Получить список точек самовывоза для сервиса доставки
GET /delivery/services/{serviceId}/points

Получить список точек самовывоза для сервиса доставки, в соответствии с выбранными фильтрами. Возвращается информация актуальная для текущей корзины пользователя.

В первом релизе serviceId всегда равно cdek

Path variables

serviceId
string required

Идентификатор сервиса доставки

Request parameters

cityId
integer required

Идентификатор города

query
string optional

Поисковый запрос для фильтрации ПВЗ

filters
array of integer optional

Список идентификаторов примененных фильтров

Responses

200 200

OK

Body
application/json
Object
data
Object required
points
Array of PickupPointDetails required

Список точек самовывоза

Получить список групп фильтров для точек самовывоза выбранного сервиса доставки
GET /delivery/services/{serviceId}/points/filters

Получить список групп фильтров для точек самовывоза выбранного сервиса доставки

Path variables

serviceId
string required

Идентификатор сервиса доставки

Request parameters

cityId
integer required

Идентификатор города

Responses

200 200

OK

Body
application/json
Object
data
Object required
groups
Array of PickupPointsFiltersGroup required

Список групп фильтров

Получить главную страницу
GET /dashboard

Получить главную страницу

Responses

200 200

OK

Body
application/json
Получить заказ по идентификатору
GET /orders/{id}

Получить заказ по идентификатору

Path variables

id
integer required

Идентификатор заказа

Responses

200 200

OK

Body
application/json
Object
data
Object required
order
Order required
Изменить заказ
PUT /orders/{id}

Изменить заказ

Path variables

id
integer required

Идентификатор заказа

Request parameters

paymentType
PaymentType required

Тип оплаты

Responses

200 200

OK

Body
application/json
Object
data
Object required
order
Order required
Отменить заказ
DELETE /orders/{id}

Отменить заказ

Path variables

id
integer required

Идентификатор заказа

Responses

200 200

OK

Body
application/json
Object
data
Object required
order
Order required
Получить данные для заказа
GET /orders/data

Данные для заполнения экрана оформления заказа при попадании на него

Responses

400 OrderDataResponse

Данные для заполнения экрана оформления заказа при попадании на него

Повторить заказ
GET /orders/repeat/{id}

Запрос на повторение заказа – МП ожидает, что все позиции из повторяемого заказа попадут в текущую корзину. В случае совпадения сочетаний “товар-размер” количества суммируются

Path variables

id
string required

ID заказа для повторения

Responses

400 CartResponse

Модель ответа запроса корзины

Получение информации о возможных способах оплаты
GET /payment/types

Получение информации о возможных способах оплаты для выбранного сервиса доставки и точки самовывоза. Информация актуальна для текущей корзины пользователя.

Request parameters

deliveryServiceId
integer required

Идентификатор сервиса доставки

pickupPointId
integer optional

Идентификатор точки самовывоза указанного сервиса доставки.

Responses

200 200

OK

Body
application/json
Object
data
Object required
paymentTypes
Array of PaymentTypeDetails required

Список способов оплаты

Оформление заказа
POST /order

Запрос создания заказа

Request body

application/json

Responses

400 OrderResponse

Ответ на запрос заказа

Получение списка заказов пользователя
GET /orders

Получение списка заказов пользователя. Первыми в списке возвращаются активные заказы отсортированные по дате. Затем оставшиеся заказы.

Request parameters

offset
integer optional

Смещение выборки от начала списка

limit
integer optional

Максимальное число элементов в выборке

Responses

200 200

OK

Body
application/json
Object
data
Object required
list
Array of OrderShort required

Список заказов

hasMore
boolean required

Признак наличия дополнительных элементов сверх выборки

total
integer required

Общее число элементов в выборке

Получение активных заказов пользователя
GET /orders/active

Получение активных заказов пользователя

Responses

200 200

OK

Body
application/json
Object
data
Object required
list
Array of OrderShort required

Список заказов

Создать отзыв о заказе
POST /orders/{orderId}/review

Создание отзыва о заказа

Path variables

orderId
string required

Идентификатор заказа

Request body

application/json
Object
rate
integer required

Оценка

Min: 1
Max: 5
Example:
1
message
string

Сообщение

images
Array of string

Список ссылок на изображения, прикреплённые к отзыву

Responses

400 OrderResponse

Ответ на запрос заказа

Загрузка изображения для отзыва на заказ
POST /orders/{orderId}/review/upload

Загрузка изображения для отзыва на заказ

Path variables

orderId
string required

Идентификатор заказа

Request body

multipart/form-data
Object
file
string required

Файл изображения в формате PNG

Responses

201 201

Created

Body
application/json
Object
data
Object required
link
string required

Ссылка на загруженное изображение

Example:
https://
Получение списка информационных страниц
GET /infoPages

Получение списка информационных страниц

Responses

200 200

OK

Body
application/json
Object
data
Object required
infoPages
Array of InfoPage required

Список информационных страниц

Получение информационной страницы по типу
GET /infoPages/{type}

Path variables

type
InfoPageType required

Тип информационной страницы

Responses

200 200

OK

Body
application/json
Object
data
Object required
infoPage
InfoPage required
Получение информационной страницы по id
GET /infoPages/{id}

Path variables

id
integer required

ID информационной страницы

Responses

200 200

OK

Body
application/json
Object
data
Object required
infoPage
InfoPage required
Получить список категорий в каталоге
GET /catalog/categories

Получить список категорий в каталоге

Responses

200 200

OK

Body
application/json
Object
data
Object required
categories
Array of ProductsCategoryShort required

Список категорий

promoItems
Array of PromoItem required

Список баннеров/акций для каталога

Получить список товаров
GET /catalog/products

Запрос возвращает список товаров для выбранной категории categoryId, выборки selection или акции promoId, в соответствии с выбранными фильтрами и порядком сортировки. В список товаров встраиваются акции.

Request parameters

categoryId
integer optional

Идентификатор категории

selection

Тип подборки

promoId
integer optional

Идентифакатор акции

minPrice
Price optional

Минимальная цена товара в выборке

maxPrice
Price optional

Максимальная цена товара в выборке

filters
array of string optional

Список идентификаторов примененных фильтров

sortOrderId
integer optional

Идентификатор выбранного типа сортировки товаров в выборке

offset
integer optional

Смещение начала выборки

limit
integer optional

Максимальное число элементов в выборке

Responses

200 200

OK

Body
application/json
Object
data
Object required
list
Array of ProductsListItem required

Список товаров со встроенными акциями

hasMore
boolean required

Признак наличия дополнительных товаров сверх выдачи

total
string required

Общее количество товаров в выборке

filters
Array of ProductsFilter required

Списко примененных фильтров

title
string required

Название категории

sortOrder
minPrice
Price required
maxPrice
Price required
Получить подборку товаров
GET /catalog/products/selections/{type}

Запрос возвращает подборку товаров заданного типа

Path variables

type

Тип подборки товаров

Request parameters

productId
string optional

Идентификатор товара для типа подборки product

Responses

200 200

OK

Body
application/json
Object
data
Object required
selection
Получить количество товаров
GET /catalog/products/quantity

Запрос возвращает количество товары для выбранной категории categoryId, выборки selection или акции promoId, в соответствии с примененными фильтрами и типом сортировки.

Request parameters

categoryId
integer optional

Идентификатор категории

selection

Тип выборки

promoId
integer optional

Идентификатор акции

minPrice
Price optional

Минимальная цена товара в выборке

maxPrice
Price optional

Максимальная цена товара в выборке

filters
array of string optional

Список идентификаторов примененных фильтров

Responses

200 200

OK

Body
application/json
Object
data
Object required
quantity
integer required

Количество товаров в выбранной категории

Получить список типов сортировки товаров
GET /catalog/products/sortOrders

Получить список типов сортировки товаров

Responses

200 200

OK

Body
application/json
Object
data
Object required
list
Array of ProductsSortOrder required

Список типов сортировки товара

Получить фильтры для избранного
GET /catalog/products/filters

Получить фильтры для избранного

Responses

200 200

OK

Body
application/json
Object
data
Object required
minPrice
Price required
maxPrice
string required

Максимальная цена товара в кетегории

filters
Array of ProductsFilter required

Список независимых фильтров

filtersGroups
Array of ProductsFilterGroup required

Список групп фильтров

Получить детальную информацию о товаре
GET /catalog/products/{id}

Запрос возвращает детальную информацию о товаре

Path variables

id
string required

Идентификатор товара

Responses

200 200

OK

Body
application/json
Получить список отзывов о товаре
GET /catalog/products/{id}/reviews

Запрос возвращает список отзывов о товаре

Path variables

id
string required

Идентификатор товара

Request parameters

offset
integer optional

Смещение начала выборки

limit
integer optional

Максимальное число элементов в выборке

Responses

200 200

OK

Body
application/json
Object
data
Object required
list
Array of ProductReview required

Список отзывов

hasMore
boolean required

Признак наличия элементов сверх выборки

total
integer required

Общее количество отзывов о товаре

Создать отзыв о товаре
POST /catalog/products/{id}/reviews

Создание отзыва о товаре

Path variables

id
string required

Идентификатор товара

Request parameters

name
string required

Имя

email
string required

Адрес электронной почты

content
string required

Содержание отзыва

consent
boolean required

Согласие с правилами публикации отзыва

Responses

200 200

OK

Body
application/json
Object
data
Object required
review
ProductReview required
Получить таблицу размеров для товара
GET /catalog/products/{id}/sizeTables

Запрос возвращает ссылку на изображение таблицы размеров для товара

Path variables

id
string required

Идентификатор

Responses

200 200

OK

Body
application/json
Object
data
Object required
sizeTables
Array required
Object
image
string required

Ссылка на изображение таблицы размеров

Получить список избранного
GET /favorites

Получить список избранного

Request parameters

minPrice
Price optional

Минимальная цена товара в выборке

maxPrice
Price optional

Максимальная цена товара в выборке

filters
array of string optional

Список идентификаторов примененных фильтров

sortOrderId
integer optional

Идентификатор выбранного типа сортировки товаров в выборке

Responses

200 200

OK

Body
application/json
Object
data
Object required
products
Array of ProductsListItem required

Список товаров со встроенными акциями

filters
Array of ProductsFilter required

Списко примененных фильтров

sortOrder
minPrice
Price required
maxPrice
Price required
Добавить товар в избранное
POST /favorites

Добавить товар в избранное

Request body

application/json
Object
productId
integer required

Идентификатор товара

Responses

200 200

OK

Body
application/json
Object
data
Object required
product
Product required
Очистить избранное
DELETE /favorites

Очистить избранное

Responses

400 EmptyResponse

Пустой ответ сервера

Получить корзину
GET /cart

Запрос возвращает корзину пользователя, даже в случае отсутствия товаров в корзине.

Request parameters

reserveItems
boolean required

Флаг о необходимости резервировать товары в корзине, true когда выполняем этот запрос на экране корзины

Responses

400 CartResponse

Модель ответа запроса корзины

Очистить корзину
DELETE /cart

Очистить корзину

Responses

400 CartResponse

Модель ответа запроса корзины

Добавить товар в корзину
POST /cart/add

Запрос добавление товара в корзину

Request body

application/json
Object
productId
integer required

Идентификатор товара

sizeId
integer required

Идентификатор размера товара

quantity
integer

Количество товара

Responses

400 CartResponse

Модель ответа запроса корзины

Изменить количество позиции товара в корзине
POST /cart/{item}/set

Запрос изменяет количество позиции товара в корзине. Если параметр qunatity равен 0, позиция удаляется из корзины.

Path variables

item
string required

Идентификатор позиции товара в корзине

Request body

application/json
Object
quantity
integer required

Количество

Responses

400 CartResponse

Модель ответа запроса корзины

Пересчет корзины
POST /cart/calculate

Пересчет корзины осуществляется при любых действиях пользователя изменяющих конечную стоимость заказа. Изменение города, выбор адреса доставки, выбор сервиса доставки и точки самовывоза, выбор типа оплаты.

Request body

application/json

Responses

400 CartResponse

Модель ответа запроса корзины

Прикрепить промокод к корзине
POST /cart/promocodes

Применить промокод к корзине

Request body

application/json
Object
promocodeId
integer required

Идентификатор промокода

Responses

400 CartResponse

Модель ответа запроса корзины

Активировать промокод в коризине
POST /cart/promocodes/{id}/activate

Применить промокод к корзине

Path variables

id
string required

Идентификатор промокода

Responses

400 CartResponse

Модель ответа запроса корзины

Удалить промокод из корзины
DELETE /cart/promocodes/{id}

Удалить промокод из корзины

Path variables

id
integer required

Идентификатор промокода

Responses

400 CartResponse

Модель ответа запроса корзины

Получить ближайшую страну для пользователя
GET /countries/nearest

Запрос возвращает ближайшую страну для заданных координат, страну определенную по IP, если координаты не заданы, или страну по умолчанию.

Request parameters

latitude
number double optional

Широта

longitude
number double optional

Долгота

Responses

200 200

OK

Body
application/json
Object
data
Object required
country
Получить ближайший город для пользователя
GET /cities/nearest

Запрос возвращает ближайщий город для заданных координат, город определенный по IP, если координаты не заданы, или город по умолчанию.

Request parameters

latitude
number double optional

Широта

longitude
number double optional

Долгота

Responses

200 200

OK

Body
application/json
Object
data
Object required
city
Получить список стран
GET /countries

Получить список доступных стран. Если задан параметр query, возвращаются доступные страны, соответствующие строке поиска.

Request parameters

query
string optional

Строка поиска

Responses

200 200

OK

Body
application/json
Object
data
Object required
countries
Array of Country required

Список стран

Получить подсказки городов
GET /cities

Получить список подcказок городов, соответствующих query

Request parameters

countryId
integer optional

Идентификатор страны

quey
string optional

Поисковый запрос для подсказок

Responses

200 200

OK

Body
application/json
Object
data
Object required
cities
Array of City required

Список городов

Получить список популярных городов
GET /cities/popular

Получить список популярных городов, сформированных из наиболее частых запросов

Request parameters

countryId
string optional

Идентификатор страны для отображения городов

Responses

200 200

OK

Body
application/json
Object
data
Object required
cities
Array of City required

Список популярных городов

Получение списка образов
GET /looks

Получение списка образов

Responses

200 200

OK

Body
application/json
Object
data
Object required
list
Array of LookShort required

Списко образов

Получение образа по идентификатору
GET /looks/{id}

Получение образа по идентификатору

Path variables

id
string required

Идентификатор образа

Responses

200 200

OK

Body
application/json
Object
data
Object required
look
Look required
Получить данные для экранов онбординга
GET /onboarding

Получить данные для экранов онбординга

Responses

200 200

OK

Body
application/json
Object
data
Object required
screens
Array of OnboardingScreen required

Список экранов онбординга

Получение списка страниц обратной связи
GET /feedbackPages

Получение списка страниц обратной связи

Responses

200 200

OK

Body
application/json
Object
data
Object required
feedbackPages
Array of FeedbackPage required

Список страниц обратной связи

DEPRICATEDОтправить обращение
POST /feedback

Отправить обращение

Request body

application/json

Responses

201 201

Created

Body
application/json
Object
data
Object required
feedback
Feedback required
Оплата заказа
POST /orders/{id}/pay

Оплата через SDK ЮКасса [НЕОБХОДИМО УТОЧНИТЬ ИСПОЛЬЗУЕМЫЙ ЭКВАЙРИНГ]

Path variables

id
string required

Идентификатор заказа

Request body

application/json
Object
paymentToken
string required

Токен оплаты

paymentType
PaymentType required

Responses

200 200

OK

Body
application/json
Object
data
Object required
order
Order required
Получить промокод по номеру
GET /promocodes

Request parameters

number
string required

Номер промокода

Responses

200 200

OK

Body
application/json
Object
promocode
Получение открытого колюча для создания криптограммы
GET /cards/publicId

Метод возвращает открытый ключ, который используется для шифрования карточных данных и создание криптограммы при добавлении карты.

Responses

200 200

OK

Body
application/json
Object
data
Object required
publicId
string required

Открытый ключ

Подтверждение добавления карты с 3D Secure аутентификацией
POST /cards/confirm

Подтверждение платежа с 3-D Secure аутентификацией

Request body

application/json
Object
transactionId
integer required

Идентификатор транзакции

paRes
string required

Значение одноименного параметра, полученного при запросе оплаты /payment в параметрах подтверждения платежа.

Responses

200 200

OK

Body
application/json
Object
data
Object required
card
PyamentCard required
Выбрать карту для использования по умолчанию
PATCH /cards/{cardId}

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

Path variables

cardId
string required

Идентификатор карты

Responses

200 200

OK

Body
application/json
Object
data
Object required
card
PyamentCard required
Отправка SMS с кодом для подтверждения действия на номер телефона
POST /verify/send/sms

Authentication

Access token

Отправка SMS c кодом для подтверждения действия на указанный номер телефона. Если вызвать этот запрос с того же девайса для такой же операции до того, как истечет время жизни прошлой смс, то смс на самом деле не отправляется, а в ответе указывается актуальное время, когда реально можно будет отправить новую смс.

Коды ошибок:

  • ERROR_DEVICE_BLOCKED - Девайс заблокирован, потому что много раз пытался выполнить одно и тоже действие

Request body

application/json
Object
phone
Phone required
operation
Operation required

Responses

400 VerifySendCodeResponse

VerifySendCodeResponse

Отправка письма с кодом для подтверждения действия на указанный адрес электронной почты
POST /verify/send/email

Authentication

Access token

Отправка письма c кодом для подтверждения действия на указанный адрес электронной почты. Если вызвать этот запрос с того же девайса для такой же операции до того, как истечет время жизни прошлой смс, то смс на самом деле не отправляется, а в ответе указывается актуальное время, когда реально можно будет отправить новую смс.

Коды ошибок:

  • ERROR_DEVICE_BLOCKED - Девайс заблокирован, потому что много раз пытался выполнить одно и тоже действие

Request body

application/json
Object
email
string required

Адрес эклектронной почты, на который будет отправлен код подтверждения.

operation
Operation required

Responses

400 VerifySendCodeResponse

VerifySendCodeResponse

Проверка кода
POST /verify/code

Authentication

Access token

Проверка кода подетверждения операции, отправленого на телефон или e-mail. Коды ошибок:

  • ERROR_DEVICE_BLOCKED - Девайс заблокирован, потому что много раз пытался выполнить одно и тоже действие
  • ERROR_VERIFICATION_CODE_INCORRECT - Введен неверный код
  • ERROR_VERIFICATION_CODE_EXPIRY - Время проверки данного кода истекло.

Request body

application/json
Object
requestId
string required

Идентификатор полученный в запросе отправки кода

code
string required

Код введенный пользователем.

Responses

400 VerifyCodeResponse

Ответ на запрос проверки кода верификации

Получить популярные поисковые запросы
GET /catalog/search/popular

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

Responses

200 200

OK

Body
application/json
Поиск товаров в каталоге
GET /catalog/products/search

Поиск товаров в каталоге. Поиск осуществляется от одно символа.

Request parameters

query
string required

Строка поиска

offset
integer optional

Спещение выборки

limit
integer required

Максимальное число элементов в выборке

Responses

200 200

OK

Body
application/json
Object
data
Object required
list
Array of ProductShort required

Список товаров

hasMore
boolean required

Признак наличия дополнительных элементов сверх выборки

Поиск по каталогу
GET /catalog/search

Поиск товаров и категорий по каталогу. Поиск осуществляется от одного символа.

Request parameters

query
string required

Строка поиска

Responses

200 200

OK

Body
application/json
Object
data
Object required
categories
Array of ProductsCategoryShort required

Список категорий

products
Array of ProductShort required

Список товаров

REFINE Поиск категорий товаров в каталоге
GET /catalog/categories/search

Поиск категорий товаров в каталоге Поиск осуществляется от одно символа.

Request parameters

query
string required

Строка поиска

Responses

200 200

OK

Body
application/json
Object
data
Object required
categories
Array of ProductsCategoryShort required

Список категорий

Получить историю поисковых запросов
GET /catalog/search/history

Получить историю поисковых запросов для пользователя (до 3 штук). Если история пустая – сервер возвращает популярные поисковые запросы (до 4 штук).

Responses

200 200

OK

Body
application/json
Очистить историю поисковых запросов
DELETE /catalog/search/history

Очистить историю поисковых запросов

Responses

200 200

OK

Body
application/json
Удалить поисковый запрос из истории
DELETE /catalog/search/history/{query}

Удалить поисковый запрос из истории

Path variables

query
string required

Поисковый запрос

Responses

200 200

OK

Body
application/json
Получить профиль пользователя
GET /profile

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

Responses

400 ProfileResponse

ProfileResponse

Редактировать профиль
PATCH /profile

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

Request body

application/json
Object
name
string

Имя

surname
string

Фамилия

patronymic
string

Отчество

birthday
gender
cityId
integer

Идентификатор города

Responses

400 ProfileResponse

ProfileResponse

Изменение номера телефона
POST /profile/phone

Изменение номера телефона

Request body

application/json
Object
confirmationToken
string required

Токен подтверждений операции editPhone

phone
Phone required

Responses

400 ProfileResponse

ProfileResponse

Изменение адреса электронной почты
POST /profile/email

Изменение адреса электронной почты

Request body

application/json
Object
confirmationToken
string required

Токен подтверждений операции editPhone

email
string required

Адрес электронной почты (должен совпадать с номером, для которого был получен confirmationToken)

Responses

400 ProfileResponse

ProfileResponse

Изменение пароля
POST /password/update

Пароли передаются в зашифрованном виде, алгоритм шифрования HMAC-SHA256, в качестве ключа используется уникальный идентификатор устройства присвоенный сервером serverId.

Request body

application/json
Object
password
string required

Пароль, зашифрованный алгоритмом (HMAC-SHA256)

newPassword
string required

Новый пароль, зашифрованный алгоритмом (HMAC-SHA256)

Responses

400 default

default response

Получение настроек пользователя
GET /profile/settings

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

Responses

400 SettingsResponse

SettingsResponse

Изменение настроек пользователя
PATCH /profile/settings

Изменение настроек пользователя. Передаются только изменяемые параметры.

Request body

application/json
Object
notifications

Параметры настройки уведомлений

subscriptions

Параметры настройки подписок

Responses

400 SettingsResponse

SettingsResponse

Type Definitions
Color

HEX значение

string
Example:
4BA221
DateOnly

Дата без времени в формате yyy-MM-dd

string
Example:
2019-12-21
Date

Дата в формате yyyy-MM-dd'T'HH:mm:ss'Z'. Пример: 2019-12-21T12:00:00Z. Что соответствует 12 часам дня в UTC.

string
Example:
2019-12-21T12:00:00Z
Location

Местоположение

Object
latitude
number double required

Широта

longitude
number double required

Долгота

Phone

Номер телефона

string
Example:
79999999999
Price

Модель цены

Object
value
integer required

Значение цены в сотых единицах базовой единицы стоимости

Example:
1000000
currency
string required

Валюта в ISO 4217

Example:
RUB
Device

Информация об устройстве

Object
serverId
string

Идентификатор устройства присвоенный сервером

clientId
string

Уникальный идентификатор устройства для которого регистрируется сессия. Генерируется на клиенте

language
string

Язык системы, ISO 639

Example:
RU
os
pushToken
string

Токен PUSH уведомлений

timezone
string

Зона времени устройства (https://gist.github.com/arpit/1035596)

version
string

Версия приложения

Example:
1.0.0
OS

Операционная система

string
Enumeration:
ios
android
Session

Модель сессии

Object
device
Device required
profile
Profile required
accessToken
string required

Токен доступа. Передается в заголовках запросов.

SessionResponse
Object
data
Session required
Address

Модель адреса

Object
id
integer

Идентификатор адреса, в подсказках будет null

description
string

Описание адреса (содержит полное описание адреса для отображения на клиенте), в подсказках будет null

city
City required
postcode
string required

Почтовый индекс

street
string required

Улица

home
string required

Номер дома

flat
string

Номер квартиры/офиса

floor
string

Этаж

comment
string

Комментарий к адресу

Рекламный баннер (используется как ссылка для категории)

Object
id
integer required

Идентификатор банера

image
string required

Ссылка на изображение банера

title
string required

Название банера

description
string required

Описание банера

pageType
string required

Тип старницы

Enumeration:
category
product
link
categories
categoryId
integer required

Идентификатор категории

Promo

Акция

Object
id
integer required

Идентификатор акции

image
string required

Ссылка на изображение акции для экрана акции

title
string required

Название акции

description
string required

Описание акции

discount
integer

Размер скидки в процентах

untilDate
promocode
products
Array of ProductShort required

список продуктов акции

PromoItem

Итем для отображения в слайдере подборки. Если promo = null, отобразим banner, если banner = null, отобразим promo

Object
banner
promo
PromoShort

Короткая моделька акции, для отображения в слайдерах

Object
id
integer required

Идентификатор акции

image
string required

Ссылка на изображение акции для главной страницы

DeliveryService

Служба доставки

Object
id
integer required

Идентификатор службы доставки

Example:
0
title
string required

Название службы доставки заказов

Example:
Почта России Посылка Онлайн
description
string required

Описание / дополнительная информация о доставке

Example:
Доставка до отделения связи для части регионов, 6 дней
hasPickupPoints
boolean required

Признак наличия возможности выбора точки самовывоза

minPrice
Price required
DeliveryServiceDetails

Информация о сервисе доставки

Object
service
DeliveryService required
price
Price required
deliveryDate
DateOnly required
DeliveryType

Способ доставки

string
Enumeration:
pickup
delivery
DeliveryPoint

Пункт выдачи заказов

Object
id
integer required

Идентификатор точки самовывоза

title
string required

Название точки самовывоза

address
string required

Адрес точки самовывоза

location
Location required
schedule
string required

Описание режима работы точки самовывоза

route
string

Описание маршрута (как добраться).

contacts
Array of string required

Контакты

paymentTypes
Array

Доступные типы оплаты

Object
title
string required

Название типа оплаты

subways
Array of Subway required

Станции метро

PickupPointDetails

Информация о точке самовывоза

Object
point
DeliveryPoint required
price
Price required
deliveryDate
DateOnly required
PickupPointFilter

Фильтр точек самовывоза. Каждый фильтр имее уникальный идентификатор.

Object
id
integer required

Идентификатор фильтра

title
string required

Название фильтра

PickupPointsFiltersGroup

Группа фильтров точек самовывоза

Object
id
integer required

Идентификатор группы фильтров

title
string required

Название группы фильтров

filters
Array of PickupPointFilter required

Список фильтров

PaymentTypeForPoint

Тип оплаты в ПВЗ

string
Enumeration:
cardOnPoint
cashOnPoint
Subway

Метро

Object
stationTitle
string required

Название станции метро

Example:
Профсоюзная
lineTitle
string required

Название линии метро

Example:
Калужско-Рижская
distanceToPoint
number

Расстояние между станцией метро и ПВЗ, км

Example:
1.6
DashboardResponse

Данные для главного экрана приложения

Object
data
Object required
promoItemsTop
Array of PromoItem required

Объекты для отображения в верхнем слайдере: баннеры либо акции

promoItemsBottom
Array of PromoItem required

Объекты для отображения в нижнем слайдере: баннеры либо акции

categories
Array of ProductsCategoryShort required

Список категорий номенклатуры

looks
Array of Look required

Список образов

productsSelections
Array of DashboardProductsSelection required

Подборки товаров

Order

Заказ

All of
Object
recipient
products
Array of CartItem required

Список позиций в заказе

OrderShort
Object
id
integer required

Идентификатор заказа

number
string required

Номер заказа

trackNumber
string required

Трек номер

trackLink
string required

Ссылка на отслеживание заказа

date
Date required
status
paymentInfo
deliveryInfo
productsPreview
Array of string required

Список ссылок на изображение товров

amount
orderReview
needsReview
boolean required

Признак возможности сделать отзыв

cancelledAt
OrderItem

Позиция в корзине

Object
id
string required

Идентификатор позиции в корзине

product
ProductShort required
size
ProductSize required
quantity
integer required

Количество товара

price
Price required
oldPrice
OrderStatus

Статус заказа

Object
status
string required

Статус заказа

Enumeration:
created
awaitingPayment
transit
delivered
received
completed
canceled
title
string required

Название статуса заказа

Example:
Создан
OrderPaymentStatus

Статус оплаты заказа

Object
status
string required

Статус

Enumeration:
awaiting
processing
paid
error
awaitingOffline
paidOffline
errorOffline
title
string required

Название статуса

Example:
Оплачен
OrderDeliveryInfo

Информация о доставке

Object
deliveryType
deliveryTariff
string required

Описание тарифа доставки

Example:
Почта России курьерская
address
pickupPoint
deliveryAt
DateOnly required
price
Price required
OrderPersonalData

Контактные данные

Object
name
string required

Имя

surname
string required

Фамилия

patronymic
string required

Отчество

email
string required

Адрес электронной почты

phone
string required

Телефон

isAnotherRecipient
boolean required

Флаг для получения заказа другим получателем

anotherName
string

Имя другого получателя

anotherPhone
string

Номер другого получателя

OrderPaymentInfo

Информация об оплате

Object
paymentType
paymentStatus
receipt
string

Ссылка на электронный чек

Example:
https://
lastChangeAt
Date required
CreateOrderRequest

Параметры пересчета корзины

Object
cityId
integer required

Идентификатор города

addressId
integer

Идентификатор адреса доставки

deliveryType
DeliveryType required
deliveryService
pickupPointId
integer

Идентификатор выбранной точки самовывоза

paymentType
PaymentType required
comment
string

Комментарий к заказу

OrderReview

Отзыв о заказе

Object
id
integer required

Идентификатор отзыва

rate
integer required

Оценка

Min: 1
Max: 5
Example:
1
message
string

Сообщение

reviewRulesConsent
boolean required

Признак согласия с правилами публикации отзыва

images
Array of string

Ссылки на изображения, прикрепленные к отзыву

OrderData

Данные для заполнения экрана оформления заказа при первом попадании на него. Берутся из предыдущего заказа/профиля

Object
personalData
city
deliveryType
deliveryService
address
pickupPoint
paymentType
InfoPage

Информационная страница

Object
id
integer required

Идентификатор информационной страницы

type
InfoPageType required
title
string required

Название инфорационной страницы

link
string required

Ссылка на информационную страницу (для отображения в WebView)

InfoPageType

Тип информационной страницы

string
Enumeration:
about
termsOfUser
privacyPolicy
faq
reviewRules
ProductBadge

Маркер товара

Object
id
integer required

Идентификатор маркера товара

title
string

Название маркера товара

color
string

Цвет фона маркера товара

image
string

Ссылка на изображение маркера товара

Product

Модель товара

All of
Object
images
Array required

Список ссылок на изображение товара

Object
image
string required

Ссылка на полноэкранное изображение товара

preview
string required

Ссылка на превью изображения

description
Object required

Блок описания

video
string

Ссылка на видео c описание товара

description
string required

Описание товара

structure
ProductShort

Короткая модель товара

Object
id
integer required

Идентификатор товара

sku
string required

Артикул

title
string required

Название товара

smallImage
string required

Ссылка на маленькое изображение товара для отображения маленькими плитками в два столбца

largeImage
string required

Ссылка на крупное изображение товара для отображения в виде списка

colors
Array of string required

Список доступных цветов товара. Ссылки на изображения с цветными текстурами

favorite
boolean required

Признак наличия товара в избранном

sizes
Array required

Список всех размеров товара

Object
size
ProductSize required
quantity
integer required

Количество товаров данного размера, доступных к заказу

minPrice
Price required
minOldPrice
prices
Array of ProductPrice required

Список цен товара c учетом скидки

basePrices
Array of ProductPrice required

Список цен товара без учета скидки

badges
Array of ProductBadge required

Список маркеров товара

ProductDetailsResponse

Модель ответа для карточки товара

Object
data
Object required
product
colorModels
Array required

Список товаров, принадлежащих к данной модели, отличающихся цветом

Object
product
ProductShort required
preview
string required

Превью

looks
Array of Look required

Список законченных образов с товаром

recommendations
Array of DashboardProductsSelection required

Список рекоммендованных подборок

reviewsCount
integer required

Количество отзывов о товаре

ProductsCategoryShort

Модель категории товаров

Object
id
integer required

Идентификтор категории

title
string required

Название категории

image
string

Ссылка на изображение категории

categories

Список дочерних категорий

ProductsFilterGroup

Группа фильтров товаров

Object
id
integer required

Идентификатор группы фильтров

type
string required

Тип группы фильтров

Enumeration:
radio
checkBox
filters
Array of ProductsFilter required

Список фильтров

ProductsFilter

Фильтр товара. Каждый фильтр имеет уникальный идентификатор.

Object
id
integer required

Идентификатор фильтра

title
string required

Название фильтра

image
string

Ссылка на изображение фильтра

count
integer

Количество товаров, соответствующих выбранному фильтру

ProductsSortOrder

Тип сортировки товаров

Object
id
integer required

Идентификатор типа сортировки товаров

title
string required

Название типа сортировки товаров

ProductSize

Размер товара

Object
id
integer required

Идентификатор размера товара

title
string required

Название размера товара

DashboardProductsSelection

Подборка товаров

Object
title
string required

Название подборки

products
Array of ProductShort required

Товары входящие в подборку

ProductsSelectionType

Подборка товаров

string
Enumeration:
novelty
popular
viewed
personal
product
ProductReview

Отзыв о товаре

Object
id
integer required

Идентификатор отзыва

date
Date required
name
string required

Имя лица, оставившего отзыв

content
string required

Содержание отзыва

ProductPrice

Модель цены товара

Object
sizeId
integer required

Идентификатор размера

price
Price required
basePrice
Price required
ProductsListItem
Object
product
banner
promo
ProductStructure

Состав продукта (уход, ткань и тд)

Object
care
string required

Описание ухода за продуктом

textile
string required

Описание ткани, из которой изготовлен продукт

composition
string required

Состав продукта

Cart

Модель корзины

Object
id
integer required

Идентификатор корзины

items
Array of CartItem required

Список позиций в корзине

promocode
amount
CartAmount required
itemsTotal
integer required

Общая сумма количеств каждого CartItem

CartAmount

Информация о стоимости корзины

Object
items
Array of CartAmountItem required

Список записей в таблице стоимости корзины

total
Price required
CartAmountItem

Запись в таблице стоимости корзины

Object
value
Price required
title
string required

Название

Example:
Комиссия PayPal (9%)
CartItem

Позиция в корзине

Object
id
integer required

Идентификатор позиции в корзине

product
ProductShort required
size
ProductSize required
quantity
integer required

Количество товара

availableQuantity
integer required

Количество товара доступное для заказа

price
Price required
basePrice
Price required
CartPromocode
Object
id
integer required

Идентификатор промокода

number
string required

Номер промокода

description
string required

Описание промокода

status
string required

Статус промокода

Enumeration:
notActivated
isInCart
applied
expiresAt
Date required
CartCalculateRequest

Параметры пересчета корзины

Object
cityId
integer

Идентификатор города

addressId
integer

Идентификатор адреса доставки

deliveryType
deliveryService
pickupPointId
integer

Идентификатор выбранной точки самовывоза

paymentType
Country

Страна

Object
id
integer required

Идентификатор страны

title
string required

Название страны

code
string required

Код страны согласно ISO 3166 2-letter code

Example:
RU
City

Город

Object
id
integer required

Идентификатор города

country
Country required
title
string required

Название города

LookShort

Законченный образ

Object
id
integer required

Идентификатор

image
string required

Ссылка на изображение образа

title
string required

Название образа

Look

Законченный образ

All of
Object
slides
Array of LookSlide required

Список слайдов для образа

LookSlide

Слайд для лука, картинка и массив товаров

Object
image
string required

Изображение слайда

products
Array of ProductShort required

Массив товаров для слайда

OnboardingScreen

Модель экрана онбординга

Object
id
integer required

Идентификатор

image
string required

Ссылка на изображение

FeedbackPage

Информационная страница

Object
id
integer required

Идентификатор информационной страницы

title
string required

Название инфорационной страницы

link
string required

Ссылка на информационную страницу (для отображения в WebView)

Feedback

Обращение

Object
id
integer required

Идентификатор отзыва

subject
FeedbackSubject required
content
string

Содержание отзыва

purchaseData
recipientDetails
FeedbackRequest

Форма обращения

Object
subject
FeedbackSubject required
content
string

Содержание отзыва

purchaseData
recipientDetails
FeedbackSubject

Тема обращения

string
Enumeration:
bulkPurchase
productFeedback
notSatisfied
return
PurchaseData

Данные о покупке

Object
number
string required

Номер заказа

date
DateOnly required
products
Array of string required

Список наименований товаров

amount
Price required
reason
string required

Причина возврата товаров

RecipientDetails

Реквизиты получателя

Object
name
string required

Имя получателя

surname
string required

Фамилия получателя

patronymic
string required

Отчество получателя

address
string required

Адрес регистрации получателя

inn
string required

ИНН получателя

bank
string required

Наименование банка получателя

bic
string required

БИК банка получателя

accountNumber
string required

Номер расчетного счета получателя

PaymentConfirmation

Данные необходимые для подтверждения платежа (для оплаты с 3-D Secure аутентификацией).

Object
acsUrl
string required

Адрес 3DS формы для подтверждения платежаURL - подтверждения

paReq
string required

Одноименный параметр из ответа сервера

transactionId
string required

Идентификатор транзакции

PaymentTypeDetails

Тип оплаты

Object
id
integer required

Идентификатор типа оплаты

type
PaymentType required
title
string required

Название типа оплаты

description
string

Описание типа оплаты / дополнительная информация

commission
Price required
PaymentType

Тип оплаты

string
Enumeration:
cardOnline
applePay
googlePay
cash
cod
PyamentCard

Платежная карта

Object
id
integer required

Идентифкатор платежной карты

paymentSystem
PaymentSystem required
number
string required

Номер платежной карты с маской

default
boolean required

Признак карты, используемой по умолчанию.

PaymentSystem

Платежная система

Object
id
integer required

Идентификаторо платежной системы

name
string required

Наименование платежной системы

icon
string required

Ссылка на иконку платежной системы

Operation

Действие

string
Enumeration:
auth
editPhone
editEmail
passwordRecovery
SearchHint

Поисковая подсказка

string
SearchHintsResponse
Object
data
Object required
hints
Array of SearchHint required

Список поисковых подсказок

Gender

Пол

string
Enumeration:
male
female
Profile

Модель пользователя

Object
id
integer required

Идентификатор пользователя

city
name
string required

Имя

surname
string required

Фамилия

patronymic
string

Отчество

birthday
phone
email
string

Адрес электронной почты

gender
hasUnreadMessages
boolean required

Флаг, оповещающий о наличии у пользователя непрочитанных сообщений

hash
string required

Хэша вычисленные по алогритму HMAC-SHA256. Для полей id, name, phone, email. Для идентификации пользователя в систем Webim. https://webim.ru/kb/dev/identification/8265-id-2-0/

NotificationSetting

Параметр настройки

Object
key
string required

Ключ параметра

Example:
collection
title
string required

Название параметра

Example:
Пополнение коллекции
enabled
boolean required

Признак включенного параметра

Example:
true
SettingsRequestItem

Параметр настройки

Object
key
string required

Ключ параметра

Example:
collection
enabled
boolean required

Признак включенного параметра

Example:
true