Openapi, swagger как осуществляется интеграция с маркетплейсами Ozon, WB, Мегамаркет, ЯМ?
1. Генерация кода клиента через Swagger editor - это хорошее / приемлемое решение?
2. Если первое не верно то как надо?
3. Где взять или как достать файл / файлы json, yaml полного описания API указанных маркетплейсов? В описании только отдельные методы api.
4. Если api регулярно меняется как осуществляется поддержка кода в актуальном состоянии - через генерацию кода Swagger editor или ручками переписываем методы модель БД при изменении api маркетплейса.
5. Подскажите примерную дорожную карту, толковый материал двигаясь по которому можно было бы решить задачу интеграции с API маркетплейсов.
0. Определиться, чего тебе вообще надо от API маркетплейсов.
Сюрприз - 80% этого API, скорее всего - не надо.
Сюрприз № 2 - 20% того, что надо, в API до сих пор нет.
А дальше - от поставленной задачи. Мне, например, для интеграции нескольких таких API в общую систему пришлось делать прослойку-адаптер, чтобы единообразно с ними работать. Никакой Swagger под твои задачи абстрагировать не будет.
VkolV, общий интерфейс с функциями типа "проверка карточек, выделение обновившихся", "получение цен", "получение остатков", "выставление цен", "выставление остатков". Дата-классы для передачи данных. Наследники интерфейса, соответственно, реализуют передачу нужных запросов с конвертацией данных в те поля, которые у каждого API свои.
Тут фокус в том, что у двух разных магазинов будут разные потребности в работе с API. Кто мониторит каждый заказ через FBS, кто гонит поставки через FBO, кто комбинирует и ловит исчерпание остатков на FBO, чтобы выставить остатки по FBS и актуализировать цену. Кто один раз настрогал карточек - кто меняет их каждый месяц... и т.д.
API меняется постоянно, у WB уже пятое поколение финансовых отчетов, но работает все через ту же жопу.
Ozon который месяц размахивает своими "квантами", но в API они приткнуты с крайнего боку, хрен найдешь, и консистентности можно даже не искать. Об отзывах-вопросах их просили еще год назад, дальнейшее - молчанье.
Мониторишь нововведения (есть оповещения в ТГ), смотришь, касается ли твоих задач (обычно - нет), делаешь изменения, если понадобилось. Локально.
А один раз сделать и почивать все равно не выйдет.
Вчера с утра у WB взял и тупо отвалился метод, выдающий этикетки для сборки по FBS, например. Хорошо, хоть оперативно (через час) подняли...