Интеграция с облаком

Веб-приложение для массовой загрузки фотографий товаров из Яндекс.Диска в карточки InSales. Автоматическое сопоставление по артикулу и сжатие изображений.

Краткая информация

  • Клиент Bungly.ru
  • Платформа InSales
  • Интеграция Яндекс.Диск
  • Функционал Массовая загрузка
  • Сопоставление По артикулу

Проблема

Магазин хранит фотографии товаров на Яндекс.Диске. Структура выстроена: каждый товар в своей папке, название папки — артикул товара.

Редакторам нужно регулярно загружать эти фото в карточки товаров на InSales. Но штатными средствами платформы нельзя подключиться к Яндекс.Диску и загрузить фото партиями.

Приходилось вручную: скачивать фото с Диска, заходить в админку InSales, открывать карточку товара, загружать файлы. На сотни товаров это занимает часы.

Структура хранилища

Фото организованы на Яндекс.Диске так:

/photos/
├── 12345/
│   ├── 11.jpg
│   ├── 12.jpg
│   └── 13.jpg
├── 67890/
│   ├── 11.jpg
│   ├── 21.jpg
│   └── 22.jpg
└── ...

Название папки = артикул товара в InSales. Внутри папки — все фото этого товара.

Решение

Сделали внешнее веб-приложение. Оно подключается к Яндекс.Диску, показывает структуру папок и загружает выбранные фото в InSales через API.

Как это работает

  1. Редактор открывает веб-приложение
  2. Авторизуется через Яндекс (OAuth)
  3. Видит структуру папок с Диска
  4. Выбирает одну или несколько папок
  5. Нажимает "Загрузить"
  6. Приложение находит товары в InSales по артикулу
  7. Загружает фото в карточки товаров

Функционал

Что можно делать:

  • Просматривать папки и файлы на Яндекс.Диске
  • Выбирать отдельные файлы
  • Выбирать целую папку
  • Выбирать несколько папок сразу
  • Загружать выбранное в InSales
  • Автоматически сжимать изображения (через InSales)

Особенности работы

Сопоставление по артикулу

Приложение берет название папки (например, "12345"), ищет товар с таким артикулом в InSales и загружает фото в его карточку.

Добавление, не замена

Фото добавляются в конец галереи товара. Текущие фото не удаляются и не заменяются.

Сжатие изображений

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

Простой интерфейс

Интерфейс минималистичный. Нет логирования, нет добавления описаний к фото, нет меток. Только выбор папок и кнопка загрузки.

Ограничения

  • Нельзя удалить текущие фото товара
  • Нельзя изменить порядок фото
  • Нельзя добавить описания к фото
  • Только добавочная загрузка в конец галереи

Технический стек

Приложение построено на:

  • Node.js + Express — backend-сервис
  • OAuth Яндекс — авторизация пользователя
  • Яндекс.Диск API — работа с файлами
  • InSales API — загрузка изображений в карточки
  • Vue.js — интерфейс (Single Page Application)
  • Облачный хостинг — с защищенным доступом

Результат

Редакторы экономят часы работы. Вместо ручной загрузки сотен фото они выбирают папки и загружают всё одним кликом.

Не нужно скачивать фото с Диска на компьютер. Приложение работает напрямую между Яндекс.Диском и InSales.

Ошибки сопоставления исключены. Если артикул в названии папки совпадает с артикулом товара — фото загрузятся в правильную карточку.

Расширили возможности InSales без изменения самой платформы. Внешнее приложение интегрируется через API и не требует доработок темы.

Теги

InSales Яндекс.Диск Node.js Express Vue.js OAuth API интеграция Массовая загрузка Автоматизация