🚀 Seller SDK 0.3.1: добавил поддержку Яндекс Маркета

Работа с Seller API — это не только HTTP-запросы. Нужно следить за версиями методов, описывать сотни типов, учитывать пагинацию и тайм-ауты, обрабатывать ошибки и проверять реальные ответы API.

Раньше Seller SDK поддерживал Ozon и Wildberries. В версии 0.3.1 к ним добавился Яндекс Маркет.

🧩 Что появилось в обновлении

Новый пакет @seller-sdk/ym содержит все 165 операций из зафиксированного официального OpenAPI-контракта Yandex Market Partner API.

Операции распределены по 36 предметным областям:

📦 товары, карточки, цены и остатки 🚚 заказы и доставка 🏭 склады и поставки 📣 акции и продвижение 💬 отзывы, вопросы и чаты ↩️ возвраты 📊 отчёты и статистика 🏪 магазины и логистические точки

Это полный каталог операций выбранного snapshot, а не набор наиболее популярных методов.

📦 Что теперь входит в Seller SDK

🔵 @seller-sdk/ozon — 461 операция Ozon Seller API 🟣 @seller-sdk/wb — 286 операций из 13 официальных разделов Wildberries API 🟡 @seller-sdk/ym — 165 операций Yandex Market Partner API 🧩 seller-sdk — единая точка входа для приложений, которые работают с несколькими площадками

Marketplace-пакеты самостоятельны.

Например, установка @seller-sdk/ym не добавляет клиенты Ozon, Wildberries или общий пакет.

🛡️ Типы и runtime-валидация

TypeScript проверяет код до запуска, но не гарантирует, что маркетплейс вернёт JSON ожидаемой формы.

Поэтому каждый структурированный ответ проходит полный путь проверки: JSON → unknown → SafeShape → типизированный результат

Если реальные данные расходятся с контрактом, SDK выбрасывает ResponseValidationError, а не приводит ответ к ожидаемому TypeScript-типу без проверки.

В версии 0.3.1 все marketplace-пакеты обновлены до @safe-shape/core 2.0.0.

Рекурсивные структуры Яндекс Маркета, включая категории и регионы, проверяются без искусственного ограничения глубины.

🔎 YmValues вместо строковых литералов

Пакет экспортирует YmValues — сгенерированный каталог закрытых значений из OpenAPI-контракта.

IDE показывает допустимые варианты, а TypeScript обнаруживает несовместимые значения ещё до запуска приложения.

Из корня пакета также экспортируются типы запросов, ответов и конфигурации клиента.

🧭 Методы без искусственных V1 и V2

Operation ID в официальном контракте Яндекс Маркета уже имеют семантические имена: например, getBusinessOrders и getCampaignOffers.

Поэтому публичные методы YM-клиента не содержат искусственных суффиксов V1 или V2. Версия сохраняется в реальном HTTP path, но не усложняет прикладной код.

Документация каждого метода содержит:

🎯 назначение операции ⚙️ описание параметров 🌐 HTTP method и path 🔗 ссылку на источник ⚠️ отметку @deprecated, если она есть в контракте ⚙️ Общая инфраструктура запросов YM-клиент поддерживает те же возможности, что и остальные marketplace-пакеты: 🔎 строгие типы запросов и ответов 🛡️ проверку сетевых ответов через SafeShape ⏱️ тайм-аут отдельной попытки и общий deadline 🛑 отмену через AbortSignal ♻️ автоматические повторы безопасных GET-операций 📄 пагинацию через nextPageToken 📎 загрузку файлов через FormData 📥 бинарные ответы в виде ArrayBuffer 🚪 rawRequest() для новых официальных операций 🔐 безопасное представление ошибок без API-ключей и токенов

HTTP 420 от Яндекс Маркета преобразуется в RateLimitError и автоматически не повторяется.

📥 Как установить

🟡 Только Яндекс Маркет npm i @seller-sdk/ym

🔵 Только Ozon npm i @seller-sdk/ozon

🟣 Только Wildberries npm i @seller-sdk/wb

🧩 Все три площадки npm i seller-sdk

Seller SDK не пытается свести разные API к одной искусственной модели. Каждый пакет сохраняет предметные области и семантику своего маркетплейса, а общий клиент выбирает нужную реализацию.

Версия 0.3.1 уже доступна в npm. Seller SDK распространяется по лицензии MIT и не связан с Ozon, Wildberries или Яндекс Маркетом.

🔗 GitHub и документация https://github.com/dev-ik/seller-sdk

🔗 @seller-sdk/ym в npm https://www.npmjs.com/package/@seller-sdk/ym

#SellerSDK #TypeScript #NodeJS #API #Ozon #Wildberries #YandexMarket #ЯндексМаркет #маркетплейсы #OpenSource #npm

🚀 Seller SDK 0.3.1: добавил поддержку Яндекс Маркета | Сетка — социальная сеть от hh.ru