Общее описание действия «Внешний запрос» и другие инструкции по его настройке и использованию можно найти тут.
Общее описание
Эта интеграция позволит вам через действие «Внешний запрос» считывать данные из указанной google-таблицы, чтобы в дальнейшем записывать их в пользовательские поля подписчика. Записывать данные в google-таблицу через действие «Внешний запрос» не получится.
Для интеграции потребуется сначала настроить google-аккаунт и саму google-таблицу. Пошаговая инструкция ниже.
Настройки в Google
Настройки google-таблицы:
- Создайте google-таблицу, из которой потом будете считывать данные.
- В настройках доступа таблицы укажите тип доступа «Все, у кого есть ссылка» и роль «Редактор».
- Для настройки «Внешнего запроса» скопируйте ID таблицы из ссылки страницы с таблицей. ID — это длинная комбинация букв, цифр и символов. В ссылке страницы с таблицей ничего похожего больше нет, для примера смотрите скриншот ниже.
Как настроить аккаунта в Google и получить API key:
1. Зайдите в console.cloud.google.com под аккаунтом, в котором находится нужная google-таблица.
2. Создайте новый проект:
- Нажмите на кнопку Select a project в верхнем левом углу.
- В открывшемся окне нажмите на кнопку New project в верхнем правом углу.
- В открывшейся вкладке задайте имя проекта и нажмите CREATE.
- После вас перенаправят на предыдущую страницу, и через несколько секунд проект будет создан.
- Опять нажмите на кнопку Select a project в верхнем левом углу и выберите только что созданный проект. Теперь вы работаете в этом проекте.
3. Активируйте API и получите API key:
- Нужно активировать методы API, которые позволят считывать данные из таблицы. Для этого откройте левую панель навигации и перейдите в раздел “APIs & Services”.
- В открывшейся странице нажмите на кнопку + ENABLE APIS AND SERVICES в верхней части экрана.
- В открывшейся странице “API Library” прокрутите вниз до раздела “Google Workspace”, найдите и нажмите на иконку “Google Sheets API”.
- Далее нажмите на кнопку ENABLE. Через несколько секунд этот API активируется, и вас перенаправят на следующую страницу.
- На открывшейся странице нажмите кнопку CREATE CREDENTIALS в верхнем правом углу.
- В открывшемся окне выберите свойство “User data” и нажмите NEXT.
- В следующем разделе заполните поля: название вашего приложения и два поля с вашей почтой. Нажмите SAVE AND CONTINUE.
- Раздел “Scopes (optional)” не заполняем, нажмите SAVE AND CONTINUE.
- В разделе “OAuth Client ID” в поле “Application type” укажите значение “Web application” и задайте имя. Нажмите на кнопку CREATE.
- Через несколько секунд загрузится раздел “Your Credentials”, после чего нажмите на кнопку DONE. Вас перенаправят на предыдущую страницу.
- На открывшейся странице в левой панели навигации перейдите на страницу “Credentials”.
- Нажмите кнопку + CREARE CREDENTIALS и выберите пункт “API key”.
- Через несколько секунд сгенерируется API key. Скопируйте его, его нужно будет использовать при настройке «Внешнего запроса».
- Этот API key никуда не исчезнет, вы сможете его скопировать позже в этом же разделе.
Настройки бота в BotHelp
1. Как настроить простую цепочку бота для отправки запроса и отображения полученных данных в пользовательском поле:
- Создайте цепочку бота из трёх последовательных блоков:
- «Сообщение 1» -> «Действие 1» -> «Сообщение 2».
- В блоке «Сообщение 1» добавим просто текстовое приветствие.
- В блоке «Действие 1» настроим «Внешний запрос».
- В блоке «Сообщение 2» через макрос выводим пользовательское поле, в которое будут записываться данные, считанные из google-таблицы.
2. Настройка «Внешнего запроса»:
- В блоке «Действие» выберите «Внешний запрос» из списка действий и откройте окно для настройки «Внешнего запроса», нажав на «карандаш».
- Поставьте тип запроса GET.
- В поле «URL-адрес» вставьте ссылку:
https://sheets.googleapis.com/v4/spreadsheets/{%id гугл-таблицы%}/values/{%адрес ячейки или диапазона в таблице%}?key={%API key%}
- В ссылку подставьте свои данные:
- ID google-таблицы, из которой нужно считывать данные вместо {%id гугл-таблицы%}
- адрес ячейки или диапазона (например, A1 или DJ22), откуда нужно считывать значения вместо {%адрес ячейки или диапазона в таблице%}
- API key, полученный в настройках вашего кабинета Google, вместо {%API key%}
- Итоговая ссылка должна выглядеть так:
- https://sheets.googleapis.com/v4/spreadsheets/1OttAA3aWMJe-KrvhLZsm3UD6u0tIvaC8/values/A1?key=AIz3X-zW-6H_oQdPY-XuzF_Kh4
- Такая ссылка будет возвращать значение ячейки А1.
- Перейдите в раздел «Ответ», чтобы протестировать запрос и получить тестовый ответ. В тестовом ответе вы сможете увидеть структуру тела ответа, которая понадобится для настройки сопоставления ответов (настройки сохранения в пользовательские поля).
- Нажмите кнопку Отправить запрос. В правой части отобразится полученный ответ. Откройте раздел «Тело ответа».
- Полученное тело ответа:
{ "range": "'Лист1'!A1", "majorDimension": "ROWS", "values": [ [ "raz" ] ] }
- Значение, которое записано в таблице, лежит в поле “values”. Само значение — “raz”.
- Перейдите на вкладку «Сопоставление ответов», чтобы настроить логику записи полученных данных в пользовательское поле.
- В поле “JSON Path” введите $.values.0.0
- Такое значение “JSON Path” вернёт из тела ответа значение “raz”.
- Подробная инструкция про JSON Path тут: ссылка.
- В поле «Пользовательское поле» выберите поле, в которое необходимо сохранять полученное значение.
- Готово. На этом настройки «Внешнего запроса» завершены.
- Нажмите Сохранить в окне настройки «Внешнего запроса», обязательно нажмите Сохранить и закрыть в окне настроек блока «Действие».
Теперь можно протестировать бота. От него придёт два сообщения: приветственное и со значением ячейки А1, полученным из google-таблицы.
Полная инструкция по действию «Внешний запрос» тут: ссылка.
Частые вопросы
1. Можно ли при формировании ссылки использовать переменные?
Ответ: Да, можно. Во внешнем запросе поле для URL-адреса поддерживает макросы. Например, вы можете запрашивать какое-то число у подписчика и записывать это значение в его поле. Затем вы можете в ссылке запроса формировать адрес ячейки, из которой нужно считать значение, с помощью макроса для поля подписчика. При отправке запроса макрос автоматически будет заменяться на конкретное значение, которое ранее ввёл подписчик.
2. Если в зависимости от условий, которые формируются в цепочке бота, нужно запросить значения тех или иных ячеек, — каким образом внутри бота можно сформировать адрес ячейки?
Ответ: Можно вставить адрес для ячейки R3C2, где R3 — третья строка (row 3), C2 — второй столбец (column 2). В поле “number” подписчика записывать нужное значение перед нужным шагом бота.
Если вы не нашли ответ на свой вопрос, задайте его нам в чате внутри кабинета либо напишите на [email protected] 😃
Получите 14 дней полного функционала платформы для создания рассылок, автоворонок и чат-ботов BotHelp: