// Code generated by ogen, DO NOT EDIT.
package api
import (
"context"
)
// Handler handles operations described by OpenAPI v3 specification.
type Handler interface {
// APIV2BufferGoodsTaskGet implements GET /api/v2/buffer/goods/task operation.
//
// Метод предоставляет информацию о товарах и ошибках в
// товарах из загрузки в обработке.
//
// Необработанная загрузка — это загрузка скидок для
календаря акций. Такие
// скидки применятся к товарам только в момент начала
// акции.
//
//
// Максимум 10 запросов за 6
секунд для всех
// методов категории
Цены и скидки
// на один аккаунт продавца
//
.
//
// GET /api/v2/buffer/goods/task
APIV2BufferGoodsTaskGet(ctx context.Context, params APIV2BufferGoodsTaskGetParams) (APIV2BufferGoodsTaskGetRes, error)
// APIV2BufferTasksGet implements GET /api/v2/buffer/tasks operation.
//
// Метод предоставляет информацию про загрузку скидок в
// обработке.
//
// Необработанная загрузка — это загрузка скидок для
календаря акций. Такие
// скидки применятся к товарам только в момент начала
// акции.
//
//
// Максимум 10 запросов за 6
секунд для всех
// методов категории
Цены и скидки
// на один аккаунт продавца
//
.
//
// GET /api/v2/buffer/tasks
APIV2BufferTasksGet(ctx context.Context, params APIV2BufferTasksGetParams) (APIV2BufferTasksGetRes, error)
// APIV2HistoryGoodsTaskGet implements GET /api/v2/history/goods/task operation.
//
// Метод предоставляет информацию о товарах и об
// ошибках в товарах в обработанной загрузке.
//
//
// Максимум 10 запросов за 6
секунд для всех
// методов категории
Цены и скидки
// на один аккаунт продавца
//
.
//
// GET /api/v2/history/goods/task
APIV2HistoryGoodsTaskGet(ctx context.Context, params APIV2HistoryGoodsTaskGetParams) (APIV2HistoryGoodsTaskGetRes, error)
// APIV2HistoryTasksGet implements GET /api/v2/history/tasks operation.
//
// Метод предоставляет информацию об обработанной
// загрузке цен и скидок.
//
//
// Максимум 10 запросов за 6
секунд для всех
// методов категории
Цены и скидки
// на один аккаунт продавца
//
.
//
// GET /api/v2/history/tasks
APIV2HistoryTasksGet(ctx context.Context, params APIV2HistoryTasksGetParams) (APIV2HistoryTasksGetRes, error)
// APIV2ListGoodsFilterGet implements GET /api/v2/list/goods/filter operation.
//
// Метод предоставляет информацию о товарах по их
// артикулам: цены, валюту, общие скидки и скидки для [WB
// Клуба](/openapi/work-with-products#tag/Ceny-i-skidki/paths/~1api~1v2~1upload~1task~1club-discount/post).
//
// Чтобы получить информацию обо всех товарах продавца,
// оставьте артикул пустым, установите `limit=1000`, в
// параметре `offset` установите смещение по количеству
// записей. Количество нужно рассчитать по формуле: `offset`
// плюс `limit` из предыдущего запроса. Повторяйте запрос,
// пока вы не получите ответ с пустым массивом.
Чтобы
// получить информацию о размерах товара, используйте
// [отдельный
// метод](/openapi/work-with-products#tag/Ceny-i-skidki/paths/~1api~1v2~1list~1goods~1size~1nm/get).
//
// Максимум 10 запросов за 6
секунд для всех
// методов категории
Цены и скидки
// на один аккаунт продавца
//
.
//
// GET /api/v2/list/goods/filter
APIV2ListGoodsFilterGet(ctx context.Context, params APIV2ListGoodsFilterGetParams) (APIV2ListGoodsFilterGetRes, error)
// APIV2ListGoodsSizeNmGet implements GET /api/v2/list/goods/size/nm operation.
//
// Метод предоставляет информацию обо всех размерах
// одного товарам: цены, валюту, общие скидки и скидки
// для [WB
// Клуба](/openapi/work-with-products#tag/Ceny-i-skidki/paths/~1api~1v2~1upload~1task~1club-discount/post).
//
// Работает только для товаров из категорий, где можно
// устанавливать цены отдельно для разных размеров. Для
// таких товаров `editableSizePrice: true`.
//
// Чтобы получить информацию о самом товаре,
// используйте [отдельный
// метод](/openapi/work-with-products#tag/Ceny-i-skidki/paths/~1api~1v2~1list~1goods~1filter/get).
//
// Максимум 10 запросов за 6
секунд для всех
// методов категории
Цены и скидки
// на один аккаунт продавца
//
.
//
// GET /api/v2/list/goods/size/nm
APIV2ListGoodsSizeNmGet(ctx context.Context, params APIV2ListGoodsSizeNmGetParams) (APIV2ListGoodsSizeNmGetRes, error)
// APIV2QuarantineGoodsGet implements GET /api/v2/quarantine/goods operation.
//
// Метод предоставляет информацию о товарах в карантине.
//
// Если новая цена товара со скидкой будет минимум в 3
// раза меньше старой, товар попадёт [в
// карантин](https://seller.wildberries.ru/discount-and-prices/quarantine) и будет
// продаваться по старой цене. Ошибка об этом будет в
// ответах методов [состояний
// загрузок](/openapi/work-with-products#tag/Ceny-i-skidki/paths/~1api~1v2~1history~1tasks/get).
//
// Вы можете изменить цену или скидку с помощью API либо
// вывести товар из карантина [в личном
// кабинете](https://seller.wildberries.ru/discount-and-prices/quarantine).
//
// Для товаров с [поразмерной установкой
// цен](/openapi/work-with-products#tag/Ceny-i-skidki/paths/~1api~1v2~1upload~1task~1size/post)
// карантин не применяется.
//
// Максимум 10 запросов за 6
секунд для всех
// методов категории
Цены и скидки
// на один аккаунт продавца
//
.
//
// GET /api/v2/quarantine/goods
APIV2QuarantineGoodsGet(ctx context.Context, params APIV2QuarantineGoodsGetParams) (APIV2QuarantineGoodsGetRes, error)
// APIV2UploadTaskClubDiscountPost implements POST /api/v2/upload/task/club-discount operation.
//
// Устанавливает скидки для товаров в рамках подписки [WB
// Клуб](https://seller.wildberries.ru/help-center/article/A-337).
//
// Получить информацию о процессе установки цен и
// скидок можно с помощью методов
состояния и
детализации обработанной загрузки.
//
//
// Максимум 10 запросов за 6
секунд для всех
// методов категории
Цены и скидки
// на один аккаунт продавца
//
.
//
// POST /api/v2/upload/task/club-discount
APIV2UploadTaskClubDiscountPost(ctx context.Context, req *APIV2UploadTaskClubDiscountPostReq) (APIV2UploadTaskClubDiscountPostRes, error)
// APIV2UploadTaskPost implements POST /api/v2/upload/task operation.
//
// Метод устанавливает цены и скидки для товаров.
//
// Чтобы установить цены и скидки для размеров товара,
// используйте [отдельный
// метод](/openapi/work-with-products#tag/Ceny-i-skidki/paths/~1api~1v2~1upload~1task~1size/post).
//
// Получить информацию о процессе установки цен и
// скидок можно с помощью методов
состояния и
детализации обработанной загрузки.
//
//
// Максимум 10 запросов за 6
секунд для всех
// методов категории
Цены и скидки
// на один аккаунт продавца
//
.
//
// POST /api/v2/upload/task
APIV2UploadTaskPost(ctx context.Context, req *APIV2UploadTaskPostReq) (APIV2UploadTaskPostRes, error)
// APIV2UploadTaskSizePost implements POST /api/v2/upload/task/size operation.
//
// Метод устанавливает цены отдельно для размеров
// товаров.
// Работает только для товаров из категорий, где можно
// устанавливать цены отдельно для разных размеров. Для
// [таких
// товаров](/openapi/work-with-products#tag/Ceny-i-skidki/paths/~1api~1v2~1list~1goods~1size~1nm/get) `editableSizePrice: true`.
// Чтобы установить цены и скидки для самих товаров,
// используйте [отдельный
// метод](/openapi/work-with-products#tag/Ceny-i-skidki/paths/~1api~1v2~1upload~1task/post).
//
// Получить информацию о процессе установки цен и
// скидок можно с помощью методов
состояния и
детализации обработанной загрузки.
//
//
// Максимум 10 запросов за 6
секунд для всех
// методов категории
Цены и скидки
// на один аккаунт продавца
//
.
//
// POST /api/v2/upload/task/size
APIV2UploadTaskSizePost(ctx context.Context, req *APIV2UploadTaskSizePostReq) (APIV2UploadTaskSizePostRes, error)
// APIV3OfficesGet implements GET /api/v3/offices operation.
//
// Метод предоставляет список всех складов WB для
// привязки к складам продавца. Предназначен для
// определения складов WB, чтобы сдавать готовые заказы
// по схеме [FBS](/openapi/orders-fbs#tag/Zakazy-FBS) (Fulfillment by Seller).
//
// Максимум 300 запросов в
минуту для всех
// методов категории
Маркетплейс на
// один аккаунт продавца.
//
// Один запрос с кодом ответа
409 учитывается как 5
// запросов
//
.
//
// GET /api/v3/offices
APIV3OfficesGet(ctx context.Context) (APIV3OfficesGetRes, error)
// APIV3StocksWarehouseIdDelete implements DELETE /api/v3/stocks/{warehouseId} operation.
//
// Метод удаляет запись об остатках товаров продавца из
// [списка
// остатков](/openapi/work-with-products#tag/Ostatki-na-skladah-prodavca/paths/~1api~1v3~1stocks~1%7BwarehouseId%7D/post).
//
// Действие необратимо. Удаленный остаток
// будет необходимо загрузить повторно для
// возобновления продаж.
//
//
// Максимум 300 запросов в
минуту для всех
// методов категории
Маркетплейс на
// один аккаунт продавца.
//
// Один запрос с кодом ответа
409 учитывается как 5
// запросов
//
.
//
// DELETE /api/v3/stocks/{warehouseId}
APIV3StocksWarehouseIdDelete(ctx context.Context, req *APIV3StocksWarehouseIdDeleteReq, params APIV3StocksWarehouseIdDeleteParams) (APIV3StocksWarehouseIdDeleteRes, error)
// APIV3StocksWarehouseIdPost implements POST /api/v3/stocks/{warehouseId} operation.
//
// Метод предоставляет данные об остатках товаров на
// [складах продавца](/openapi/work-with-products#tag/Sklady-prodavca).
//
// Максимум 300 запросов в
минуту для всех
// методов категории
Маркетплейс на
// один аккаунт продавца.
//
// Один запрос с кодом ответа
409 учитывается как 5
// запросов
//
.
//
// POST /api/v3/stocks/{warehouseId}
APIV3StocksWarehouseIdPost(ctx context.Context, req *APIV3StocksWarehouseIdPostReq, params APIV3StocksWarehouseIdPostParams) (APIV3StocksWarehouseIdPostRes, error)
// APIV3StocksWarehouseIdPut implements PUT /api/v3/stocks/{warehouseId} operation.
//
// Метод обновляет количество остатков товаров
// продавца [в
// списке](/openapi/work-with-products#tag/Ostatki-na-skladah-prodavca/paths/~1api~1v3~1stocks~1%7BwarehouseId%7D/post).
//
// Названия параметров запроса не валидируются. При
// отправке некорректных названий вы получите успешный
// ответ (204), но остатки не обновятся.
//
//
// Максимум 300 запросов в
минуту для всех
// методов категории
Маркетплейс на
// один аккаунт продавца.
//
// Один запрос с кодом ответа
409 учитывается как 5
// запросов
//
.
//
// PUT /api/v3/stocks/{warehouseId}
APIV3StocksWarehouseIdPut(ctx context.Context, req OptAPIV3StocksWarehouseIdPutReq, params APIV3StocksWarehouseIdPutParams) (APIV3StocksWarehouseIdPutRes, error)
// APIV3WarehousesGet implements GET /api/v3/warehouses operation.
//
// Метод предоставляет список всех складов продавца.
// Может использоваться для получения [остатков
// товаров](/openapi/work-with-products#tag/Ostatki-na-skladah-prodavca/paths/~1api~1v3~1stocks~1%7BwarehouseId%7D/post).
//
// Максимум 300 запросов в
минуту для всех
// методов категории
Маркетплейс на
// один аккаунт продавца.
//
// Один запрос с кодом ответа
409 учитывается как 5
// запросов
//
.
//
// GET /api/v3/warehouses
APIV3WarehousesGet(ctx context.Context) (APIV3WarehousesGetRes, error)
// APIV3WarehousesPost implements POST /api/v3/warehouses operation.
//
// Метод создаёт склад продавца для работы с [остатками
// товаров](/openapi/work-with-products#tag/Ostatki-na-skladah-prodavca/paths/~1api~1v3~1stocks~1%7BwarehouseId%7D/post). Нужно привязать к складу продавца [склад WB](/openapi/work-with-products#tag/Sklady-prodavca/paths/~1api~1v3~1offices/get) для работы по схеме [FBS](/openapi/orders-fbs#tag/Zakazy-FBS) (Fulfillment by Seller).
//
// Нельзя привязывать склад WB, который уже используется
//
//
// Максимум 300 запросов в
минуту для всех
// методов категории
Маркетплейс на
// один аккаунт продавца.
//
// Один запрос с кодом ответа
409 учитывается как 5
// запросов
//
.
//
// POST /api/v3/warehouses
APIV3WarehousesPost(ctx context.Context, req *APIV3WarehousesPostReq) (APIV3WarehousesPostRes, error)
// APIV3WarehousesWarehouseIdDelete implements DELETE /api/v3/warehouses/{warehouseId} operation.
//
// Метод удаляет склад продавца из [списка
// складов](/openapi/work-with-products#tag/Sklady-prodavca/paths/~1api~1v3~1warehouses/get).
//
// Максимум 300 запросов в
минуту для всех
// методов категории
Маркетплейс на
// один аккаунт продавца.
//
// Один запрос с кодом ответа
409 учитывается как 5
// запросов
//
.
//
// DELETE /api/v3/warehouses/{warehouseId}
APIV3WarehousesWarehouseIdDelete(ctx context.Context, params APIV3WarehousesWarehouseIdDeleteParams) (APIV3WarehousesWarehouseIdDeleteRes, error)
// APIV3WarehousesWarehouseIdPut implements PUT /api/v3/warehouses/{warehouseId} operation.
//
// Метод обновляет данные склада продавца в [списке
// складов](/openapi/work-with-products#tag/Sklady-prodavca/paths/~1api~1v3~1warehouses/get).
// Данные о привязанном [складе
// WB](/openapi/work-with-products#tag/Sklady-prodavca/paths/~1api~1v3~1offices/get) можно
// изменить один раз в сутки.
//
// Нельзя привязывать склад WB, который уже используется
//
//
// Максимум 300 запросов в
минуту для всех
// методов категории
Маркетплейс на
// один аккаунт продавца.
//
// Один запрос с кодом ответа
409 учитывается как 5
// запросов
//
.
//
// PUT /api/v3/warehouses/{warehouseId}
APIV3WarehousesWarehouseIdPut(ctx context.Context, req *APIV3WarehousesWarehouseIdPutReq, params APIV3WarehousesWarehouseIdPutParams) (APIV3WarehousesWarehouseIdPutRes, error)
// ContentV2BarcodesPost implements POST /content/v2/barcodes operation.
//
// Метод генерирует массив уникальных баркодов для
// создания размера в [карточке
// товара](/openapi/work-with-products#tag/Sozdanie-kartochek-tovarov/paths/~1content~1v2~1cards~1upload/post). Можно использовать, если у вас нет собственных баркодов.
// .
//
// POST /content/v2/barcodes
ContentV2BarcodesPost(ctx context.Context, req *ContentV2BarcodesPostReq) (ContentV2BarcodesPostRes, error)
// ContentV2CardsDeleteTrashPost implements POST /content/v2/cards/delete/trash operation.
//
// Метод переносит [карточки товаров в
// корзину](/openapi/work-with-products#tag/Kartochki-tovarov/paths/~1content~1v2~1get~1cards~1trash/post). При этом карточки товаров не удаляются, их можно [восстановить](/openapi/work-with-products#tag/Kartochki-tovarov/paths/~1content~1v2~1cards~1recover/post).
//
// После переноса в корзину карточке товара
// присваивается новый imtID.
//
// Карточки товаров удаляются автоматически, если лежат
// в корзине больше 30 дней. Очистка корзины происходит
// каждую ночь по московскому времени.
// Карточки товаров можно удалить в любое время в
// [личном кабинете](https://seller.wildberries.ru/new-goods/basket-cards).
// .
//
// POST /content/v2/cards/delete/trash
ContentV2CardsDeleteTrashPost(ctx context.Context, req *ContentV2CardsDeleteTrashPostReq) (ContentV2CardsDeleteTrashPostRes, error)
// ContentV2CardsErrorListGet implements GET /content/v2/cards/error/list operation.
//
// Метод предоставляет список карточек товаров, при
// создании или редактировании которых произошли
// ошибки, с описанием этих ошибок.
//
// Чтобы убрать карточку товара из списка, нужно
// повторно сделать запрос на
создание или редактирование карточки товара с исправленными ошибками.
//
// .
//
// GET /content/v2/cards/error/list
ContentV2CardsErrorListGet(ctx context.Context, params ContentV2CardsErrorListGetParams) (ContentV2CardsErrorListGetRes, error)
// ContentV2CardsLimitsGet implements GET /content/v2/cards/limits operation.
//
// Возвращает бесплатные и платные лимиты продавца на
// [создание карточек
// товаров](/openapi/work-with-products#tag/Sozdanie-kartochek-tovarov/paths/~1content~1v2~1cards~1upload/post).
// Формула для получения количества карточек, которые
// можно создать:
// > (`freeLimits` + `paidLimits`) - количество созданных карточек
// Созданными считаются карточки, которые можно
// получить через методы [список карточек
// товаров](/openapi/work-with-products#tag/Kartochki-tovarov/paths/~1content~1v2~1get~1cards~1list/post) и [список карточек товаров в корзине](/openapi/work-with-products#tag/Kartochki-tovarov/paths/~1content~1v2~1get~1cards~1trash/post).
// .
//
// GET /content/v2/cards/limits
ContentV2CardsLimitsGet(ctx context.Context) (ContentV2CardsLimitsGetRes, error)
// ContentV2CardsRecoverPost implements POST /content/v2/cards/recover operation.
//
// Метод восстанавливает [карточки товаров из
// корзины](/openapi/work-with-products#tag/Kartochki-tovarov/paths/~1content~1v2~1get~1cards~1trash/post).
//
// .
//
// POST /content/v2/cards/recover
ContentV2CardsRecoverPost(ctx context.Context, req *ContentV2CardsRecoverPostReq) (ContentV2CardsRecoverPostRes, error)
// ContentV2CardsUpdatePost implements POST /content/v2/cards/update operation.
//
// Метод обновляет карточки товаров. Данные для
// обновления можно получить через [список карточек
// товаров](/openapi/work-with-products#tag/Kartochki-tovarov/paths/~1content~1v2~1get~1cards~1list/post) и [список карточек товаров в корзине](/openapi/work-with-products#tag/Kartochki-tovarov/paths/~1content~1v2~1get~1cards~1trash/post).
//
// Карточка товара перезаписывается при обновлении.
// Поэтому в запросе нужно передать все
// параметры карточки, в том числе те, которые вы не
// собираетесь обновлять.
//
// Нельзя редактировать или удалять баркоды, но можно
// добавить дополнительный баркод к карточке товара.
// Параметры `photos`, `video` и `tags` редактировать или удалять
// через данный метод нельзя.
// Габариты товаров можно указать только в `сантиметрах`,
// вес товара с упаковкой — в `килограммах`.
//
// В одном запросе можно отредактировать максимум 3000
// карточек товаров (`nmID`). Максимальный размер запроса 10
// Мб.
// Если ответ `Успешно` (`200`), но какие-то карточки не
// обновились, получите [список несозданных карточек
// товаров](/openapi/work-with-products#tag/Kartochki-tovarov/paths/~1content~1v2~1cards~1error~1list/get).
//
// Максимум 100 запросов в
минуту для всех
// методов категории
Контент на один
// аккаунт продавца. С 5 июня для метода будет отдельный
// лимит — 10 запросов в минуту на один аккаунт продавца
//
.
//
// POST /content/v2/cards/update
ContentV2CardsUpdatePost(ctx context.Context, req []ContentV2CardsUpdatePostReqItem) (ContentV2CardsUpdatePostRes, error)
// ContentV2CardsUploadAddPost implements POST /content/v2/cards/upload/add operation.
//
// Метод создаёт новые карточки товаров, присоединяя их
// к существующим карточкам.
// Габариты товаров можно указать только в `сантиметрах`,
// вес товара с упаковкой — в `килограммах`.
//
// Создание карточки товара происходит асинхронно.
// После отправки запрос становится в очередь на
// обработку.
Максимальный размер запроса 10 Мб.
// Если ответ `Успешно` (`200`), но какие-то карточки не
// обновились, получите [список несозданных карточек
// товаров](/openapi/work-with-products#tag/Kartochki-tovarov/paths/~1content~1v2~1cards~1error~1list/get).
//
// Максимум 100 запросов в
минуту для всех
// методов категории
Контент на один
// аккаунт продавца. С 5 июня для метода будет отдельный
// лимит — 10 запросов в минуту на один аккаунт продавца
//
.
//
// POST /content/v2/cards/upload/add
ContentV2CardsUploadAddPost(ctx context.Context, req OptContentV2CardsUploadAddPostReq) (ContentV2CardsUploadAddPostRes, error)
// ContentV2CardsUploadPost implements POST /content/v2/cards/upload operation.
//
// Метод создаёт карточки товаров c указанием описаний и
// характеристик товаров.
//
// Есть две формы запроса: для создания отдельных и
// объединённых карточек товаров.
//
// Габариты товаров можно указать только в `сантиметрах`,
// вес товара с упаковкой — в `килограммах`.
//
// Создание карточки товара происходит асинхронно.
// После отправки запрос становится в очередь на
// обработку.
// В одном запросе можно создать максимум 100
// объединённых карточек товаров (`imtID`), по 30 карточек
// товаров в каждой. Максимальный размер запроса 10 Мб.
// Если ответ `Успешно` (`200`), но какие-то карточки не
// обновились, получите [список несозданных карточек
// товаров](/openapi/work-with-products#tag/Kartochki-tovarov/paths/~1content~1v2~1cards~1error~1list/get).
//
// Максимум 100 запросов в
минуту для всех
// методов категории
Контент на один
// аккаунт продавца. С 5 июня для метода будет отдельный
// лимит — 10 запросов в минуту на один аккаунт продавца
//
.
//
// POST /content/v2/cards/upload
ContentV2CardsUploadPost(ctx context.Context, req []ContentV2CardsUploadPostReqItem) (ContentV2CardsUploadPostRes, error)
// ContentV2DirectoryColorsGet implements GET /content/v2/directory/colors operation.
//
// Метод предоставляет возможные значения
// [характеристики](/openapi/work-with-products#tag/Kategorii-predmety-i-harakteristiki/paths/~1content~1v2~1object~1charcs~1%7BsubjectId%7D/get) предмета `Цвет`.
// .
//
// GET /content/v2/directory/colors
ContentV2DirectoryColorsGet(ctx context.Context, params ContentV2DirectoryColorsGetParams) (ContentV2DirectoryColorsGetRes, error)
// ContentV2DirectoryCountriesGet implements GET /content/v2/directory/countries operation.
//
// Метод предоставляет возможные значения
// [характеристики](/openapi/work-with-products#tag/Kategorii-predmety-i-harakteristiki/paths/~1content~1v2~1object~1charcs~1%7BsubjectId%7D/get) предмета `Страна производства`.
// .
//
// GET /content/v2/directory/countries
ContentV2DirectoryCountriesGet(ctx context.Context, params ContentV2DirectoryCountriesGetParams) (ContentV2DirectoryCountriesGetRes, error)
// ContentV2DirectoryKindsGet implements GET /content/v2/directory/kinds operation.
//
// Метод предоставляет возможные значения
// [характеристики](/openapi/work-with-products#tag/Kategorii-predmety-i-harakteristiki/paths/~1content~1v2~1object~1charcs~1%7BsubjectId%7D/get) предмета `Пол`.
// .
//
// GET /content/v2/directory/kinds
ContentV2DirectoryKindsGet(ctx context.Context, params ContentV2DirectoryKindsGetParams) (ContentV2DirectoryKindsGetRes, error)
// ContentV2DirectorySeasonsGet implements GET /content/v2/directory/seasons operation.
//
// Метод предоставляет возможные значения
// [характеристики](/openapi/work-with-products#tag/Kategorii-predmety-i-harakteristiki/paths/~1content~1v2~1object~1charcs~1%7BsubjectId%7D/get) предмета `Сезон`.
// .
//
// GET /content/v2/directory/seasons
ContentV2DirectorySeasonsGet(ctx context.Context, params ContentV2DirectorySeasonsGetParams) (ContentV2DirectorySeasonsGetRes, error)
// ContentV2DirectoryTnvedGet implements GET /content/v2/directory/tnved operation.
//
// Метод предоставляет список ТНВЭД-кодов по ID
// [предмета](/openapi/work-with-products#tag/Kategorii-predmety-i-harakteristiki/paths/~1content~1v2~1object~1all/get) и фрагменту ТНВЭД-кода.
// .
//
// GET /content/v2/directory/tnved
ContentV2DirectoryTnvedGet(ctx context.Context, params ContentV2DirectoryTnvedGetParams) (ContentV2DirectoryTnvedGetRes, error)
// ContentV2DirectoryVatGet implements GET /content/v2/directory/vat operation.
//
// Метод предоставляет возможные значения
// [характеристики](/openapi/work-with-products#tag/Kategorii-predmety-i-harakteristiki/paths/~1content~1v2~1object~1charcs~1%7BsubjectId%7D/get) предмета `Ставка НДС`.
// .
//
// GET /content/v2/directory/vat
ContentV2DirectoryVatGet(ctx context.Context, params ContentV2DirectoryVatGetParams) (ContentV2DirectoryVatGetRes, error)
// ContentV2GetCardsListPost implements POST /content/v2/get/cards/list operation.
//
//
// Метод доступен по
токену с
// категорией
Контент или
Продвижение
//
// Метод предоставляет список созданных карточек
// товаров.
//
// В ответе метода не будет карточек, находящихся в
// корзине. Получить такие карточки можно через
отдельный метод.
//
// Чтобы получить **больше 100** карточек товаров,
// воспользуйтесь пагинацией:
//
// - Сделайте первый запрос:
//
// {
// "settings": {
// "cursor": {
// "limit": 100
// },
// "filter": {
// "withPhoto": -1
// }
// }
// }
//
// - Пройдите в конец полученного списка карточек
// товаров.
// - Скопируйте из
cursor две строки:
//
// "updatedAt": "***"
// "nmID": ***
//
// - Вставьте скопированные строки в параметр запроса
//
cursor.
// - Повторите запрос.
// - Повторяйте пункты со 2 по 5, пока поле
//
total в ответе не станет меньше чем параметр
// limit в запросе. Это будет означать, что вы
// получили все карточки.
//
// .
//
// POST /content/v2/get/cards/list
ContentV2GetCardsListPost(ctx context.Context, req *ContentV2GetCardsListPostReq, params ContentV2GetCardsListPostParams) (ContentV2GetCardsListPostRes, error)
// ContentV2GetCardsTrashPost implements POST /content/v2/get/cards/trash operation.
//
//
// Метод доступен по
токену с
// категорией
Контент или
Продвижение
//
// Метод предоставляет список карточек товаров в
// корзине.
// Чтобы получить **больше 100** карточек товаров,
// воспользуйтесь пагинацией:
//
// - Сделайте первый запрос:
//
// {
// "settings": {
// "cursor": {
// "limit": 100
// },
// "filter": {
// "withPhoto": -1
// }
// }
// }
//
// - Пройдите в конец полученного списка карточек
// товаров.
// - Скопируйте из
cursor две строки:
//
// "trashedAt": "***"
// "nmID": ***
//
// - Вставьте скопированные строки в параметр запроса
//
cursor.
// - Повторите запрос.
// - Повторяйте пункты со 2 по 5, пока поле
//
total в ответе не станет меньше чем параметр
// limit в запросе. Это будет означать, что вы
// получили все карточки.
//
// .
//
// POST /content/v2/get/cards/trash
ContentV2GetCardsTrashPost(ctx context.Context, req *ContentV2GetCardsTrashPostReq, params ContentV2GetCardsTrashPostParams) (ContentV2GetCardsTrashPostRes, error)
// ContentV2ObjectAllGet implements GET /content/v2/object/all operation.
//
// Метод предоставляет список названий [родительских
// категорий
// предметов](/openapi/work-with-products#tag/Kategorii-predmety-i-harakteristiki/paths/~1content~1v2~1object~1parent~1all/get) и их предметов с ID. Например, у категории `Игрушки` будут предметы `Калейдоскопы`, `Куклы`, `Мячики`.
// .
//
// GET /content/v2/object/all
ContentV2ObjectAllGet(ctx context.Context, params ContentV2ObjectAllGetParams) (ContentV2ObjectAllGetRes, error)
// ContentV2ObjectCharcsSubjectIdGet implements GET /content/v2/object/charcs/{subjectId} operation.
//
// Метод предоставляет параметры характеристик
// предмета: названия, типы данных, единицы измерения и
// так далее. В запросе необходимо указать ID
// [предмета](/openapi/work-with-products#tag/Kategorii-predmety-i-harakteristiki/paths/~1content~1v2~1object~1all/get).
//
// .
//
// GET /content/v2/object/charcs/{subjectId}
ContentV2ObjectCharcsSubjectIdGet(ctx context.Context, params ContentV2ObjectCharcsSubjectIdGetParams) (ContentV2ObjectCharcsSubjectIdGetRes, error)
// ContentV2ObjectParentAllGet implements GET /content/v2/object/parent/all operation.
//
// Метод предоставляет названия и ID всех родительских
// категорий для [создания карточек
// товаров](/openapi/work-with-products#tag/Sozdanie-kartochek-tovarov): например,
// `Электроника`, `Бытовая химия`, `Рукоделие`.
// .
//
// GET /content/v2/object/parent/all
ContentV2ObjectParentAllGet(ctx context.Context, params ContentV2ObjectParentAllGetParams) (ContentV2ObjectParentAllGetRes, error)
// ContentV2TagNomenclatureLinkPost implements POST /content/v2/tag/nomenclature/link operation.
//
// Метод добавляет или снимает ярлык с карточки товара.
// К карточке можно добавить максимум 15 ярлыков.
// При удалении ярлыка из карточки товара он не
// удаляется из [списка
// ярлыков](/openapi/work-with-products#tag/Yarlyki/paths/~1content~1v2~1tags/get)
// продавца.
// .
//
// POST /content/v2/tag/nomenclature/link
ContentV2TagNomenclatureLinkPost(ctx context.Context, req *ContentV2TagNomenclatureLinkPostReq) (ContentV2TagNomenclatureLinkPostRes, error)
// ContentV2TagsGet implements GET /content/v2/tags operation.
//
// Метод предоставляет список и характеристики всех
// ярлыков продавца для группировки и фильтрации
// товаров.
// .
//
// GET /content/v2/tags
ContentV2TagsGet(ctx context.Context) (ContentV2TagsGetRes, error)
// ContentV3MediaFilePost implements POST /content/v3/media/file operation.
//
// Метод загружает и добавляет один медиафайл к
// карточке товара.
// Требования к изображениям:
// * максимум изображений для одной карточки товара — 30
// * минимальное разрешение — 700x900 px
// * максимальный размер — 32 Мб
// * минимальное качество — 65%
// * форматы — JPG, PNG, BMP, GIF (статичные), WebP
// Требования к видео:
// * максимум одно видео для одной карточки товара
// * максимальный размер — 50 Мб
// * форматы — MOV, MP4
// .
//
// POST /content/v3/media/file
ContentV3MediaFilePost(ctx context.Context, req *ContentV3MediaFilePostReq, params ContentV3MediaFilePostParams) (ContentV3MediaFilePostRes, error)
// ContentV3MediaSavePost implements POST /content/v3/media/save operation.
//
// Метод загружает набор медиафайлов в карточку товара
// через указание ссылок в запросе.
//
// Новые медиафайлы полностью заменяют старые. Чтобы
// добавить новые медиафайлы, укажите в запросе ссылки
// одновременно на новые и старые медиафайлы.
//
// Требования к изображениям:
// * максимум изображений для одной карточки товара — 30
// * минимальное разрешение — 700×900 px
// * максимальный размер — 32 Мб
// * минимальное качество — 65%
// * форматы — JPG, PNG, BMP, GIF (статичные), WebP
// Требования к видео:
// * максимум одно видео для одной карточки товара
// * максимальный размер — 50 Мб
// * форматы — MOV, MP4
// Если видео или хотя бы одно изображение в запросе не
// соответствует требованиям, то даже при успешном
// ответе ни одно изображение/видео не загрузится.
// .
//
// POST /content/v3/media/save
ContentV3MediaSavePost(ctx context.Context, req *ContentV3MediaSavePostReq) (ContentV3MediaSavePostRes, error)
}
// Server implements http server based on OpenAPI v3 specification and
// calls Handler to handle requests.
type Server struct {
h Handler
sec SecurityHandler
baseServer
}
// NewServer creates new Server.
func NewServer(h Handler, sec SecurityHandler, opts ...ServerOption) (*Server, error) {
s, err := newServerConfig(opts...).baseServer()
if err != nil {
return nil, err
}
return &Server{
h: h,
sec: sec,
baseServer: s,
}, nil
}