Эта функция доступна на максимальном тарифе.
Содержание
- Как подготовить Google Таблицу
- Как написать JSON-запрос
- Как записывать строки в определенные столбцы
- Как записывать данные в определенные ячейки
- Как удалять данные из определенных ячеек
- Как записать в первую пустую ячейку в строке
- Как читать данные из таблицы
- Как найти текст в таблице (вернуть первую подходящую строку)
- Как вывести все совпадения в таблице
- Как полностью удалить строку (со смещением)
- Как полностью удалить столбец (со смещением)
- Как создать кнопки для выбора листа в таблице
- Как работать через свой аккаунт
- Как работать с буквами столбцов
- Как задавать переменные в именах столбцов
- Как удалить данные из таблицы
- Как добавить лист в таблицу
- Возможные ошибки
- Функции Google Sheets (API)
В этой статье мы рассмотрим, как боты могут взаимодействовать с Google Таблицами.
Для использования этой функциональности вам понадобятся:
- Google Таблица с доступом на редактирование по ссылке
- URL функции
- Параметры запроса
Как написать JSON-запрос
Перейдите в настройки блока, из которого вы хотите отправить запрос.
Выберите тип запроса POST JSON, введите URL нужной функции и добавьте параметры в поле JSON POST параметры.
Чтобы увидеть ответ, возвращаемый вашим запросом, введите {custom_answer} в поле Ответ, сохраните блок и пройдите по цепочке.
Затем вы можете сохранить отдельные значения из ответа в переменные в поле Сохранить значение из JSON-ответа, используя следующий синтаксис:
parameters_from_query -> your_variable
Если ответ содержит вложенные параметры, извлеките их следующим образом.
Например, если ответ:
{
"cell_number": {
"row": 4,
"col": 2
}
}
Используйте:
cell_number|row -> Row
cell_number|col -> Column
Теперь давайте более подробно рассмотрим, что боты могут делать с Google Таблицами.
Как записывать строки в определенные столбцы
Вы можете собирать данные от пользователя и записывать их в первую доступную строку в таблице. Это делается с помощью функции mapping.
Заголовок должен быть заполнен — хотя бы одна ячейка в первой строке должна содержать значение.
URL функции:
https://store.mavibot.ai/function/gsheets
Параметры запроса:
{
"id": "table id",
"mapping": {
"a": "#{variable}",
"b": "#{yet}",
"c": "#{yet}",
"d": "just text"
}
}
Если вы хотите записать данные на лист, отличный от первого, добавьте параметр list_name:
{
"id": "table id",
"mapping": {
"a": "just text",
"b": "#{variable}"
},
"list_name": "Sheet name"
}
Где:
-
id— идентификатор вашей Google Таблицы. Вы можете получить его из URL Google Таблицы. -
a,b,c,d— имена столбцов. -
list_name— имя листа, например"Sheet 2".
Пример URL Google Таблицы:
https://docs.google.com/spreadsheets/d/1aUbbUaw2SRnJFAavv06Noa1EzumhyShKDm7ie6lYKc4/edit#gid=0
В этом примере идентификатор таблицы:
1aUbbUaw2SRnJFAavv06Noa1EzumhyShKDm7ie6lYKc4
Если запрос выполнен успешно, ответ будет выглядеть так:
{
"number_row": 8
}
Вы можете сохранить возвращенный номер строки и использовать его позже.
Если вы не хотите делать таблицу публично редактируемой по ссылке, вам нужно передать параметр creds_path с путем к вашему файлу авторизации.
Для получения дополнительной информации см. раздел Работа через свой аккаунт.
Пример:
{
"id": "table id",
"mapping": {
"a": "#{variable}",
"b": "#{yet}",
"c": "#{yet}",
"d": "just text"
},
"creds_path": "path to your authorization data file"
}
Как записывать данные в определенные ячейки
URL функции:
https://store.mavibot.ai/function/gsheets
Параметры запроса:
{
"id": "table id",
"write": {
"a1": "#{variable}",
"b3": "#{yet}",
"c1": "#{yet}",
"d20": "just text"
}
}
Данные записываются в указанные ячейки — в этом примере: A1, B3, C1 и D20.
Нумерация столбцов начинается с 1.
Если вы хотите записать данные на лист, отличный от первого, добавьте параметр list_name:
{
"id": "table id",
"write": {
"a1": "#{variable}",
"b3": "#{yet}",
"c1": "#{yet}",
"d20": "just text"
},
"list_name": "Sheet name"
}
Если запрос выполнен успешно, параметры не возвращаются.
Если вы не хотите делать таблицу публично редактируемой по ссылке, передайте параметр creds_path с путем к вашему файлу авторизации.
Для получения дополнительной информации см. раздел Работа через свой аккаунт.
Пример:
{
"id": "table id",
"write": {
"a1": "#{variable}",
"b3": "#{yet}",
"c1": "#{more}",
"d20": "just text"
},
"list_name": "Sheet name",
"creds_path": "path to your authorization data file"
}
Как удалять данные из определенных ячеек
URL функции:
https://store.mavibot.ai/function/gsheets
Параметры запроса:
{
"id": "table id",
"remove": [
"a1",
"b3",
"c2"
]
}
Это удаляет значения из указанных ячеек — в этом примере: A1, B3 и C2.
Нумерация столбцов начинается с 1.
Если вы хотите удалить значения из ячеек на листе, отличном от первого, добавьте параметр list_name:
{
"id": "table id",
"remove": [
"a1",
"b3",
"c2"
],
"list_name": "Sheet name"
}
Если запрос выполнен успешно, параметры не возвращаются.
Если вы не хотите делать таблицу публично редактируемой по ссылке, передайте параметр creds_path с путем к вашему файлу авторизации.
Для получения дополнительной информации см. раздел Работа через свой аккаунт.
Пример:
{
"id": "table id",
"remove": [
"a1",
"b3",
"c2"
],
"list_name": "Sheet name",
"creds_path": "path to your authorization data file"
}
Как записать в первую пустую ячейку в строке
Вы можете записать данные в указанную строку. Значение будет добавлено в первую пустую ячейку справа от последней заполненной ячейки.
Это делается с помощью функции append_in_row.
URL функции:
https://store.mavibot.ai/function/gsheets
Параметры запроса:
{
"id": "table id",
"append_in_row": "8",
"value": "written value"
}
Если вы хотите записать данные в строку на листе, отличном от первого, добавьте параметр list_name:
{
"id": "table id",
"append_in_row": "8",
"value": "written value",
"list_name": "Sheet name"
}
Где:
-
id— идентификатор вашей Google Таблицы. -
append_in_row— номер строки, в которую должно быть записано значение. -
value— значение, которое будет записано в ячейку. -
list_name— имя листа.
Если запрос выполнен успешно, ответ будет выглядеть так:
{
"number_col": 10,
"col_name": "J3"
}
Вы можете сохранить возвращенные значения и использовать их позже.
Если вы не хотите делать таблицу публично редактируемой по ссылке, передайте параметр creds_path с путем к вашему файлу авторизации.
Пример:
{
"id": "table id",
"append_in_row": "8",
"value": "written value",
"creds_path": "path to your authorization data file"
}
Как читать данные из таблицы
URL функции:
https://store.mavibot.ai/function/gsheets
Параметры запроса:
{
"id": "table id",
"read": {
"a1": "a1",
"b3": "b4",
"c1": "c10",
"d20": "a1"
}
}
Используйте параметр read, чтобы указать диапазоны, которые вы хотите получить.
Например:
-
"a1": "a1"возвращает одну ячейку. -
"c1": "c10"возвращает 10 значений из столбца C.
Ответ содержит адреса ячеек и их значения.
Нумерация столбцов начинается с 1.
Если вы хотите прочитать значения с листа, отличного от первого, добавьте параметр list_name:
{
"id": "table id",
"read": {
"a1": "a3",
"b3": "b6"
},
"list_name": "Sheet name"
}
Если запрос выполнен успешно, ответ будет содержать имена ячеек и их значения.
Пример:
{
"A1": "value 1",
"A2": "value 2",
"A3": "value 3"
}
Если вы не хотите делать таблицу публично редактируемой по ссылке, передайте параметр creds_path с путем к вашему файлу авторизации.
Для получения дополнительной информации см. раздел Работа через свой аккаунт.
Пример:
{
"id": "table id",
"read": {
"a1": "a3",
"b3": "b6"
},
"list_name": "Sheet name",
"creds_path": "path to your authorization data file"
}