Интеграция WB API с Google Таблицами

WB API — мощный инструмент для автоматизации, с которым можно сократить время при работе с данными и сосредоточиться на их стратегическом анализе

54639
content

Кому подходит

Продавцам, работающим с подробными отчётами о продажах

Сложность

Базовые навыки работы с Google Таблицами

Время на интеграцию

≈15 минут

Проблема

Ручной сбор данных несёт риски ошибок и замедляет анализ, что может негативно сказаться на скорости принятия решений

Решение

Использовать WB API для автоматической выгрузки данных в Google Таблицы, что снижает риск ошибок и экономит время

Результат

Настроенная выгрузка актуального отчёта о продажах по реализации в Google Таблицу с возможностью автоматического обновления


Техническая поддержка WB API не оказывает помощь по настройке Google Таблиц и Google Apps Script. Обсудить интеграции можно в Сообществе WB API.


Пошаговая инструкция

Шаг 1. Получить API-токен

Для интеграции необходим API-токен, созданный в личном кабинете продавца. Внимательно выбирайте категории токена в зависимости от методов API, с которыми планируете работать. Для примера в этой статье потребуется категория «Статистика».

Подробнее о создании токена — в статье Создание API-токена.


Шаг 2. Создать Google Таблицу и открыть Apps Script

  1. Откройте Google Таблицы и создайте новый документ.
  2. В меню выберите Расширения → Apps Script.
Меню Расширения → Apps Script в Google Таблицах
Меню Расширения → Apps Script в Google Таблицах
Предпросмотр

Откроется редактор скриптов — среда, в которой мы напишем код интеграции.


Шаг 3. Написать скрипт

Удалите содержимое файла Code.gs в редакторе и вставьте готовый код. Скопируйте полный код по ссылке на GitHub Gist.

Ниже — описание логических блоков скрипта.

3.1. Меню в таблице

При открытии таблицы автоматически появится меню «WB API» с двумя пунктами: «Ввести токен» и «Загрузить отчёт».

Функция onOpen — специальный триггер Google Apps Script, который срабатывает каждый раз при открытии таблицы.

3.2. Сохранение токена

Токен хранится в PropertiesService — безопасном хранилище, привязанном к пользователю. Токен не хранится в коде — это гораздо безопаснее. Функция setApiToken открывает диалог ввода, а getApiToken возвращает сохранённый токен.

3.3. Запрос к WB API

Функция fetchReportData обращается к эндпоинту Отчёт о продажах по реализации (GET /api/v5/supplier/reportDetailByPeriod). Токен передаётся в заголовке Authorization.

Данные могут возвращаться частями, поэтому скрипт обрабатывает пагинацию — повторяет запросы, передавая rrdid (идентификатор последней строки предыдущего ответа), пока API не вернёт код 204 (данных больше нет).

Скрипт также обрабатывает ошибки: 401 (неверный токен), 429 (превышен лимит запросов) и другие коды ответа.

3.4. Запись данных в таблицу

Функция writeToSheet создаёт лист «Продажи» (или очищает существующий), записывает заголовки из ключей первого объекта ответа и заполняет строки данными.

3.5. Главная функция

loadReport — точка входа. Она проверяет наличие токена, формирует период (последние 7 дней), вызывает загрузку данных и записывает результат на лист.

Редактор Apps Script с вставленным кодом
Редактор Apps Script с вставленным кодом
Предпросмотр

Шаг 4. Сохранить и запустить скрипт

  1. Сохраните скрипт: нажмите Ctrl+S (или кнопку 💾 на панели).
  2. В выпадающем списке функций выберите onOpen и нажмите ▶ Выполнить.
  3. Система запросит разрешение на выполнение скрипта. Предоставьте его:
    • Нажмите «Проверить разрешения» во всплывающем окне.
    • Выберите ваш аккаунт Google.
    • Нажмите «Дополнительные настройки» (внизу слева).
    • Нажмите «Перейти на страницу…».
    • Нажмите «Разрешить».

После этого вернитесь в таблицу — в меню появится пункт «WB API».


Шаг 5. Использовать скрипт

  1. В меню таблицы нажмите WB API → Ввести токен и вставьте ваш API-токен.
  2. Нажмите WB API → Загрузить отчёт — данные загрузятся на лист «Продажи».

Шаг 6. Настроить автоматическое обновление (опционально)

Чтобы данные обновлялись автоматически, настройте триггер по расписанию:

  1. В редакторе Apps Script нажмите на значок ⏰ (Триггеры) в левой панели.
  2. Нажмите «Добавить триггер».
  3. Настройте:
    • Функция: loadReport
    • Источник события: «По времени»
    • Тип триггера: выберите нужный интервал (например, «Каждый день» или «Каждый час»).
  4. Нажмите «Сохранить».

Частые ошибки

КодПричинаЧто делать
401Неверный или просроченный токенПроверьте токен. Убедитесь, что он создан с категорией «Статистика». При необходимости создайте новый.
429Превышен лимит запросов (1 запрос в минуту)Подождите минуту и повторите попытку.
Пустой ответНет данных за выбранный периодПроверьте, что за указанный период были продажи. Попробуйте расширить диапазон дат.

Ограничения Google Apps Script

  • Лимит выполнения скрипта: 6 минут. Если данных очень много, скрипт может не успеть завершиться.
  • Лимит UrlFetchApp: 20 000 запросов в день.
  • Лимит по размеру ответа: 50 МБ на один вызов UrlFetchApp.fetch.
  • Для работы с большими объёмами данных рассмотрите более продвинутые решения.

Заключение

Автоматический сбор данных через WB API экономит время и снижает риск ошибок. Вы получили рабочий скрипт, который загружает отчёт о продажах по реализации в Google Таблицу.

Попробуйте подключить другие эндпоинты: аналитику, контент или маркетплейс. Полный список доступных методов — в документации WB API.

Кейсы

Найдите решение по другим вопросам