Google Sheets

Этот адаптер можно использовать для взаимодействия с электронными таблицами Google.

Текущий релиз
1.0.1
Разработчик
Thomas Pohl
Лицензия
Apache-2.0
**Version:** **Tests:**

адаптер Google Таблиц для ioBroker

Этот адаптер можно использовать для автоматического взаимодействия с Google Табличками.

API

Функции

Использование

Настраивать

Включить доступ к API

  1. Посетите консоль Google Cloud .

  2. Создайте или выберите существующий проект, который вы хотите использовать с API.

  3. Включите API Google Sheets для своего проекта.

Создать учетную запись службы

Для проекта, выбранного на предыдущем шаге, создайте новую учетную запись службы в Google Cloud IAM, выполнив следующие действия:

  1. Перейдите на страницу IAM и администрирование в консоли Google Cloud .

  2. Нажмите на «Учетные записи служб», а затем на «Создать учетную запись службы».

  3. Укажите имя для учетной записи службы и выберите роль "Проект" > "Редактор".

  4. Нажмите «Продолжить», чтобы перейти к следующему шагу.

  5. На вкладке «Ключи» нажмите «Создать ключ» и выберите формат «JSON». Затем нажмите «Продолжить».

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

Предоставить доступ к электронной таблице

Откройте электронную таблицу, с которой хотите взаимодействовать, и отправьте ее на адрес электронной почты, указанный в вашей недавно созданной учетной записи службы:

  1. Откройте нужную электронную таблицу в Google Таблицах.

  2. Нажмите кнопку «Поделиться» в правом верхнем углу.

  3. В поле «Добавить пользователей» введите адрес электронной почты учетной записи службы и предоставьте ей необходимые права доступа (например, «Редактировать» или «Просмотреть»).

  4. Нажмите «Отправить», чтобы завершить процесс обмена.

Настройка экземпляра адаптера

Добавьте следующую информацию в конфигурацию вашего экземпляра адаптера в ioBroker:

  • Идентификатор электронной таблицы — вы можете найти идентификатор в URL-адресе вашей электронной таблицы.
  • Учетная запись службы — адрес электронной почты созданной вами учетной записи службы.
  • Закрытый ключ — Откройте загруженный JSON-файл и найдите в нем закрытый ключ. Скопируйте только ту часть, которая начинается с "-----BEGIN PRIVATE KEY-----."

Настройки

Найдите идентификатор электронной таблицы в URL-адресе.

Чтобы найти идентификатор электронной таблицы (Spreadsheet ID) в URL-адресе вашего документа Google Sheets, выполните следующие действия:

  1. Когда вы откроете документ Google Sheets в веб-браузере, URL-адрес в адресной строке будет выглядеть примерно так:
https://docs.google.com/spreadsheets/d/SPREADSHEET_ID/edit
  1. "SPREADSHEET_ID" — это длинная строка символов и цифр, расположенная между частями URL-адреса "/d/" и "/edit".

Блокли

Используйте доступные блоки для автоматического взаимодействия с вашей электронной таблицей.

Блокли

Поиск неисправностей

Ошибка при отправке данных в Google Таблицы: Ошибка: error:0909006C:PEM routines:get_name:no start line

При копировании закрытого ключа в конфигурацию убедитесь, что в нем нет символов \n. Если в ключе есть символы \n, замените их обычными переносами строк.

Ошибка при отправке данных в Google Таблицы: Ошибка: У вызывающей стороны нет разрешения.

Убедитесь, что у учетной записи службы есть необходимые права на запись в электронную таблицу. См. раздел «Предоставление доступа к электронной таблице» выше.

Changelog

WORK IN PROGRESS

  • (copilot) Adapter requires node.js >= 22 now

1.0.1 (2026-02-16)

  • (Thomas Pohl) Fix for admin ui

1.0.0 (2026-01-06)

  • (Thomas Pohl) Support for multiple spreadsheets with aliases
  • (Thomas Pohl) Automatic migration of old configs
  • (Thomas Pohl) Improved tests, error handling, and logging
  • (Thomas Pohl) Better async handling in Blockly blocks

0.6.0 (2025-12-26)

  • (Thomas Pohl) Added deleteSheets functionality (delete multiple sheets in one call)
  • (Thomas Pohl) Added blockly block for deleteSheets
  • (Thomas Pohl) Add write cells functionality (write multiple cells in one call)
  • (Thomas Pohl) Added blockly block for writeCells

0.5.0

  • (Thomas Pohl) Minimum node.js version is now 20
  • (Thomas Pohl) Display connection state

0.4.0

  • (Thomas Pohl) The privateKey is saved now encrypted
  • (Thomas Pohl) Support for node.js 22

License

Copyright (c) 2024-2026 Thomas Pohl

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.