Практична інструкція

Google Форма в Telegram: безкоштовний спосіб

Apps Script на 30 рядків безкоштовно надсилає кожну відповідь Google Форми в Telegram. Налаштування бота, код, тригер і ліміти, про які варто знати.

Коротка відповідь. Створіть Telegram-бота через @BotFather, дізнайтеся свій chat id і додайте до форми короткий Apps Script. Встановлюваний тригер «on form submit» запускає скрипт для кожної відповіді, а скрипт надсилає відповіді в Telegram Bot API. Це безкоштовно в межах квот Google, наприклад 20 000 викликів URL Fetch на день для особистого акаунта (станом на 05.10.2026). Готові no-code шаблони є також у Zapier, Make та IFTTT.

Formgong

Google Форма в Telegram: безкоштовний спосіб
Google Форма в Telegram: безкоштовний спосіб

Три способи отримувати відповіді Google Форми в Telegram

  • Apps Script (безкоштовно, трохи коду). Скрипт, прив'язаний до форми, надсилає кожну відповідь вашому боту. Ця стаття показує його крок за кроком.
  • No-code автоматизація. У Zapier, Make та IFTTT є готовий шаблон «Google Forms → Telegram». Налаштовується швидко, але кожен сервіс має власні ліміти тарифів.
  • Форма на вашому сайті. Якщо форма стоїть на вашому сайті, а не в Google Формах, бекенд для форм може надсилати заявки в Telegram без жодного скрипту. Про це — наприкінці.

Щоб не було плутанини: Formgong не підключається до Google Форм. Він приймає лише форми, які надсилають дані з ваших власних сторінок.

Крок 1: створіть бота й дізнайтеся chat id

  1. У Telegram відкрийте @BotFather, надішліть /newbot і пройдіть кроки. Скопіюйте токен, який він видасть. Бережіть його як пароль.
  2. Відкрийте нового бота й натисніть Start або надішліть йому будь-яке повідомлення. Бот не може написати вам першим.
  3. Для групи додайте бота в групу й надішліть туди повідомлення.
  4. Відкрийте в браузері https://api.telegram.org/bot<token>/getUpdates. Знайдіть у відповіді "chat":{"id":…}. Це число і є chat id. Id груп починаються зі знака «мінус».

Докладніше про ботів, chat id і групи — у посібнику з Telegram-бота для форми на сайті.

Крок 2: додайте скрипт до форми

Назви пунктів наведено, як в англійському інтерфейсі Google.

  1. Відкрийте форму в режимі редагування. У меню ⋮ виберіть Apps Script. Так створюється скрипт, прив'язаний до форми.
  2. Видаліть приклад коду, вставте скрипт нижче й збережіть.
  3. Відкрийте Project Settings (значок шестірні). У розділі Script properties додайте TELEGRAM_TOKEN і TELEGRAM_CHAT_ID. Так токен не потрапляє в код.

Скрипт читає всі відповіді, ставить кожну окремим рядком у форматі «Запитання: відповідь» і надсилає одне текстове повідомлення. Telegram дозволяє від 1 до 4096 символів на повідомлення, тож довший текст скрипт обрізає. Простий текст також означає, що відповіді не зламають форматування повідомлення.

Apps Script
// Google Форма → меню ⋮ → Apps Script. Вставте, збережіть і один раз запустіть createTrigger.
// Project Settings → Script properties: TELEGRAM_TOKEN і TELEGRAM_CHAT_ID.

function createTrigger() {
  ScriptApp.newTrigger("sendToTelegram")
    .forForm(FormApp.getActiveForm())
    .onFormSubmit()
    .create();
}

function sendToTelegram(e) {
  const props = PropertiesService.getScriptProperties();
  const token = props.getProperty("TELEGRAM_TOKEN");
  const chatId = props.getProperty("TELEGRAM_CHAT_ID");
  const lines = e.response.getItemResponses().map((item) => {
    const answer = item.getResponse();
    const value = Array.isArray(answer) ? answer.join(", ") : String(answer);
    return item.getItem().getTitle() + ": " + value;
  });
  const text = ("Нова відповідь у формі\n\n" + lines.join("\n")).slice(0, 4096);
  const res = UrlFetchApp.fetch("https://api.telegram.org/bot" + token + "/sendMessage", {
    method: "post",
    contentType: "application/json",
    payload: JSON.stringify({ chat_id: chatId, text: text }),
    muteHttpExceptions: true,
  });
  if (res.getResponseCode() !== 200) console.error(res.getContentText());
}

Крок 3: увімкніть тригер

Скрипт запускається, лише коли його викликає встановлюваний тригер надсилання форми. Додати його можна двома способами:

  • У редакторі виберіть createTrigger і один раз натисніть Run. Google попросить авторизувати скрипт. Дозвольте.
  • Або відкрийте Triggers (значок годинника), натисніть Add Trigger, виберіть sendToTelegram, джерело події From form і тип події On form submit.

Використайте один спосіб, а не обидва, інакше кожна відповідь прийде двічі. Потім надішліть тестову відповідь через публічне посилання на форму. Не запускайте sendToTelegram з редактора: йому нема чого читати, і він зупиниться з помилкою.

Ліміти й типові проблеми

  • Квоти. Особисті акаунти Google мають 20 000 викликів URL Fetch і 90 хвилин роботи тригерів на день, акаунти Workspace — 100 000 викликів і 6 годин. Одна відповідь — один виклик.
  • Відповіді, створені скриптами, не рахуються. Google пише, що FormResponse.submit() в іншому скрипті не запускає тригер.
  • Завантаження файлів. Відповіді на запитання із завантаженням файлу — це id файлів на Google Диску, а не самі файли.
  • Нічого не приходить. Відкрийте Executions в Apps Script. Помилка chat not found означає, що chat id неправильний або ви не натиснули Start у боті.
  • Зміна власника. Тригер працює від імені того, хто його створив. Якщо ця людина втратить доступ до форми, створіть тригер знову.

Коли форма стоїть на вашому сайті

Google Форми зручні для опитувань і реєстрацій. Для форми зворотного зв'язку на власному сайті можна обійтися і без Google, і без скрипту. HTML-форма, що надсилає дані на бекенд для форм, може пересилати кожне повідомлення в Telegram і на пошту напряму.

Formgong робить це на кожному тарифі, зокрема безкоштовному: 300 заявок на місяць, дані зберігаються в ЄС. Telegram підключається з кабінету, тож копіювати токен чи chat id не треба. Кроки — у статті як надсилати заявки з сайту в Telegram.

Питання та відповіді

Чи можна надсилати відповіді Google Форми в Telegram без коду?

Так. У Zapier, Make та IFTTT є готові шаблони Google Forms → Telegram. Перш ніж покладатися на них, перевірте ліміти тарифу кожного сервісу.

Чи безкоштовний спосіб з Apps Script?

Так, у межах денних квот Google. Особистий акаунт може зробити 20 000 викликів URL Fetch на день (станом на 05.10.2026), а кожна відповідь використовує один.

Чому мій скрипт нічого не надсилає?

Зазвичай немає тригера або його не авторизовано, chat id неправильний чи ви не натиснули Start у боті. Сторінка Executions в Apps Script покаже помилку.

Чи працює Formgong з Google Формами?

Ні. Formgong приймає форми з вашого власного сайту, які надсилають дані на нього. Читати відповіді Google Форм він не вміє.

Джерела та документація

Офіційні джерела для цієї інструкції: Apps Script: Installable triggers, Apps Script: Event objects (form submit), Apps Script: Quotas, Apps Script: Properties service, Telegram Bot API, Zapier: Google Forms and Telegram, Make: Google Forms and Telegram, IFTTT: Google Forms and Telegram. Документація Formgong, де зберігаються дані.

Завантажити текст статті (Markdown)

Оцініть цю статтю

Ваша оцінка

Ми читаємо кожну оцінку. Коментар з'явиться тут лише після нашого схвалення.

← До блогу