/** * **Типы для API запросов searchWidget** * * _Определяет все типы запросов, используемые для взаимодействия с API поиска._ * * @module searchWidget-requests * */ /** * **Базовый ответ API** * * _Общая структура ответа от API сервиса._ * * @group Base Types * */ export interface ApiResponse { /** Данные ответа */ data: T | null; /** Метаданные ответа */ meta: Record; /** * Ошибки, если они возникли * * @defaultValue undefined */ errors?: Array<{ /** Код ошибки */ code: string; /** Сообщение об ошибке */ message: string; /** Дополнительные метаданные ошибки */ meta: Record; }>; } /** * **Запрос авторизации клиента** * * _Данные для авторизации клиента в системе._ * * @group Authentication * */ export interface AuthorizeCustomerRequest { /** ID гостевого клиента */ guest_customer_id: string; /** ID авторизованного клиента */ authorized_customer_id: string; } /** * **Запрос поиска по каталогу** * * _Основной запрос для поиска товаров, категорий и брендов._ * * @group Search Requests * */ export interface CatalogSearchRequest { /** Флаг быстрого результата */ is_fast_result: boolean; /** Включаемые типы данных */ include: string[]; /** Параметр сортировки */ sort: string; /** Фильтры поиска */ filter: { /** ID локации */ location_id: string; /** Поисковый запрос */ query: string; /** * Автоматическая фильтрация * * @defaultValue undefined */ auto_filter?: boolean | null; /** * Использование исправления запроса * * @defaultValue undefined */ use_query_correction?: boolean; /** * ID категорий для фильтрации * * @defaultValue undefined */ category_ids?: string[] | null; /** * Бренды для фильтрации * * @defaultValue undefined */ brands?: string[] | null; /** * Страны для фильтрации * * @defaultValue undefined */ countries?: string[] | null; /** * Дополнительные свойства для фильтрации * * @defaultValue undefined */ properties?: Array<{ /** Название свойства */ name: string; /** Значения свойства */ values: string[]; }> | null; /** * Типы контента для фильтрации * * @defaultValue undefined */ content_types?: string[] | null; }; /** * Параметры пагинации * * @defaultValue undefined */ pagination?: { /** * Лимит товаров на странице * * @defaultValue undefined */ limit_products?: number; /** * Смещение для товаров * * @defaultValue undefined */ offset_products?: number; /** * Лимит категорий на странице * * @defaultValue undefined */ limit_categories?: number; /** * Лимит брендов на странице * * @defaultValue undefined */ limit_brands?: number; /** * Лимит контента на странице * * @defaultValue undefined */ limit_contents?: number; /** * Смещение для контента * * @defaultValue undefined */ offset_contents?: number; }; /** * Загрузка полных данных товаров * * @defaultValue undefined */ load_full_products?: { /** ID локации */ location_id: string; /** Включаемые поля */ include: string[]; }; } /** * **Запрос поиска классификации продуктов** * * _Запрос для получения классификации товаров._ * * @group Classification * */ export interface ProductClassificationSearchRequest { /** Фильтры для классификации */ filter: { /** * Дата обновления (больше или равно) * * @defaultValue undefined */ updated_at_gte?: string; /** * ID товаров для классификации * * @defaultValue undefined */ product_id?: string[]; }; /** * Параметры пагинации * * @defaultValue undefined */ pagination?: { /** * Лимит результатов * * @defaultValue undefined */ limit?: number; /** * Смещение результатов * * @defaultValue undefined */ offset?: number; }; } /** * **Запрос рекомендаций товаров** * * _Запрос для получения рекомендаций на основе товара._ * * @group Recommendations * */ export interface RecommendationProductsRequest { /** Фильтры для рекомендаций */ filter: { /** ID товара для рекомендаций */ product_id: string; }; /** * Параметры пагинации * * @defaultValue undefined */ pagination?: { /** * Лимит рекомендаций * * @defaultValue undefined */ limit?: number; }; /** Загрузка полных данных товаров */ load_full_products: { /** ID локации */ location_id: string; /** * Включаемые поля * * @defaultValue undefined */ include?: string[]; }; } /** * **Запрос рекомендаций по запросу** * * _Запрос для получения рекомендаций на основе поискового запроса._ * * @group Recommendations * */ export interface RecommendationQueryProductsRequest { /** Фильтры для рекомендаций */ filter: { /** Поисковый запрос */ query: string; }; /** * Параметры пагинации * * @defaultValue undefined */ pagination?: { /** * Лимит рекомендаций * * @defaultValue undefined */ limit?: number; }; /** Загрузка полных данных товаров */ load_full_products: { /** ID локации */ location_id: string; /** * Включаемые поля * * @defaultValue undefined */ include?: string[]; }; } /** * **Запрос Cross Sell товаров** * * _Запрос для получения товаров для перекрестных продаж._ * * @group Cross Sell * */ export interface CrossSellProductsRequest { /** Фильтры для Cross Sell */ filter: { /** ID товара */ product_id: string; }; /** * Параметры пагинации * * @defaultValue undefined */ pagination?: { /** * Лимит товаров * * @defaultValue undefined */ limit?: number; }; /** Загрузка полных данных товаров */ load_full_products: { /** ID локации */ location_id: string; /** * Включаемые поля * * @defaultValue undefined */ include?: string[]; }; } /** * **Запрос Up Sell товаров** * * _Запрос для получения товаров для дополнительных продаж._ * * @group Up Sell * */ export interface UpSellProductsRequest { /** Фильтры для Up Sell */ filter: { /** ID товара */ product_id: string; /** ID локации */ location_id: string; }; /** * Параметры пагинации * * @defaultValue undefined */ pagination?: { /** * Лимит товаров * * @defaultValue undefined */ limit?: number; }; /** Загрузка полных данных товаров */ load_full_products: { /** ID локации */ location_id: string; /** * Включаемые поля * * @defaultValue undefined */ include?: string[]; }; } /** * **Запрос недавно просмотренных товаров** * * _Запрос для получения истории просмотренных товаров._ * * @group History * */ export interface RecentlyWatchedProductsRequest { /** Фильтры для истории */ filter: { /** ID клиента */ customer_id: string; }; /** * Параметры пагинации * * @defaultValue undefined */ pagination?: { /** * Лимит товаров * * @defaultValue undefined */ limit?: number; }; /** Загрузка полных данных товаров */ load_full_products: { /** ID локации */ location_id: string; /** * Включаемые поля * * @defaultValue undefined */ include?: string[]; }; } /** * **Запрос истории запросов** * * _Запрос для получения истории поисковых запросов._ * * @group History * */ export interface HistoryQueriesSearchRequest { /** Фильтры для истории */ filter: { /** ID клиента */ customer_id: string; }; /** * Параметры пагинации * * @defaultValue undefined */ pagination?: { /** * Лимит запросов * * @defaultValue undefined */ limit?: number; }; } /** * **Запрос удаления запроса из истории** * * _Запрос для удаления конкретного запроса из истории._ * * @group History * */ export interface HistoryQueriesDeleteRequest { /** ID клиента */ customer_id: string; /** Запрос для удаления */ query: string; /** * Дополнительные параметры * * @defaultValue undefined */ include?: { /** Фильтры */ filter: { /** ID клиента */ customer_id: string; }; /** Параметры пагинации */ pagination: { /** Лимит результатов */ limit: number; }; }; } /** * **Запрос удаления всей истории** * * _Запрос для полной очистки истории запросов._ * * @group History * */ export interface HistoryQueriesDeleteAllRequest { /** ID клиента */ customer_id: string; } /** * **Запрос топ запросов** * * _Запрос для получения популярных поисковых запросов._ * * @group Popular * */ export interface TopQueriesSearchRequest { /** Включаемые типы популярных запросов */ include: Array<"popular-manual" | "popular-successful" | "recommended-manual">; /** * Параметры пагинации * * @defaultValue undefined */ pagination?: { /** * Лимит популярных ручных запросов * * @defaultValue undefined */ limit_popular_manual?: number; /** * Лимит популярных автоматических запросов * * @defaultValue undefined */ limit_popular_automatic?: number; /** * Лимит рекомендуемых ручных запросов * * @defaultValue undefined */ limit_recommended_manual?: number; }; } /** * **Запрос популярных товаров** * * _Запрос для получения популярных товаров._ * * @group Popular * */ export interface PopularProductsSearchRequest { /** Включаемые типы популярных товаров */ include: Array<"manual" | "automatic">; /** * Параметры пагинации * * @defaultValue undefined */ pagination?: { /** * Лимит ручных популярных товаров * * @defaultValue undefined */ limit_manual?: number; /** * Лимит автоматических популярных товаров * * @defaultValue undefined */ limit_automatic?: number; }; /** * Загрузка полных данных товаров * * @defaultValue undefined */ load_full_products?: { /** ID локации */ location_id: string; /** * Включаемые поля * * @defaultValue undefined */ include?: string[]; }; } /** * **Запрос популярных брендов** * * _Запрос для получения популярных брендов._ * * @group Popular * */ export interface PopularBrandsSearchRequest { /** Включаемые типы популярных брендов */ include: Array<"automatic">; /** * Параметры пагинации * * @defaultValue undefined */ pagination?: { /** * Лимит автоматических популярных брендов * * @defaultValue undefined */ limit_automatic?: number; }; } /** * **Запрос использования функции** * * _Запрос для отслеживания использования функций._ * * @group Analytics * */ export interface FunctionalUseRequest { /** ID локации */ location_id: string; /** ID клиента */ customer_id: string; /** Название функции */ function: string; } /** * **Запрос использования поискового запроса** * * _Запрос для отслеживания использования поисковых запросов._ * * @group Analytics * */ export interface QueryUseRequest { /** ID локации */ location_id: string; /** ID клиента */ customer_id: string; /** Поисковый запрос */ query: string; } /** * **Запрос использования подсказки** * * _Запрос для отслеживания использования поисковых подсказок._ * * @group Analytics * */ export interface HintsUseRequest { /** Поисковый запрос */ query: string; /** Использованная подсказка */ hint: string; } /** * **Запрос конверсии товара** * * _Запрос для отслеживания конверсий товаров._ * * @group Analytics * */ export interface ProductsUseRequest { /** ID локации */ location_id: string; /** ID клиента */ customer_id: string; /** ID товара */ product_id: string; /** * Источник конверсии * * @defaultValue undefined */ source?: "search" | "popular_auto_products" | "popular_manual_products" | "similar_products" | "up_sell_products" | "cross_sell_products" | "recently_watched_products" | "recommended_products" | "recommended_query_products"; /** Тип конверсии */ conversion: "click" | "basket" | "order"; /** * Позиция товара * * @defaultValue undefined */ position?: number | null; /** * Поисковый запрос * * @defaultValue undefined */ query?: string | null; } /** * **Запрос популярных категорий** * * _Запрос для получения популярных категорий._ * * @group Popular * */ export interface PopularCategoriesSearchRequest { /** Включаемые типы популярных категорий */ include: Array<"automatic">; /** * Параметры пагинации * * @defaultValue undefined */ pagination?: { /** * Лимит автоматических популярных категорий * * @defaultValue undefined */ limit_automatic?: number; }; } /** * **Запрос конверсии категории** * * _Запрос для отслеживания конверсий категорий._ * * @group Analytics * */ export interface CategoriesUseRequest { /** ID локации */ location_id: string; /** ID категории */ category_id: string; /** ID клиента */ customer_id: string; /** * Поисковый запрос * * @defaultValue undefined */ query?: string | null; /** * Источник конверсии * * @defaultValue undefined */ source?: "search" | null; /** Тип конверсии */ conversion: "click"; } /** * **Запрос похожих товаров** * * _Запрос для получения товаров, похожих на указанный._ * * @group Similar Products * */ export interface SimilarProductsSearchRequest { /** Фильтры для похожих товаров */ filter: { /** Параметр схожести */ parameter: number; /** ID товара */ product_id: string; /** ID локации */ location_id: string; }; /** * Параметры пагинации * * @defaultValue undefined */ pagination?: { /** * Лимит товаров * * @defaultValue undefined */ limit?: number; }; /** * Загрузка полных данных товаров * * @defaultValue undefined */ load_full_products?: { /** ID локации */ location_id: string; /** * Включаемые поля * * @defaultValue undefined */ include?: string[]; }; } //# sourceMappingURL=requests.d.ts.map