Google Form yanıtlarını Telegram'da almanın üç yolu
- Apps Script (ücretsiz, biraz kod). Forma bağlı bir betik her yanıtı botunuza gönderir. Bu yazı adım adım anlatıyor.
- Kodsuz otomasyon. Zapier, Make ve IFTTT'de hazır bir "Google Forms → Telegram" şablonu var. Kurulumu hızlıdır, ama her servisin kendi plan limitleri vardır.
- Kendi sitenizdeki form. Form Google Forms'ta değil de sitenizdeyse, bir form backend'i betik olmadan Telegram'a gönderebilir. Ayrıntısı en sonda.
Açık olalım: Formgong, Google Forms'a bağlanmaz. Yalnızca kendi sayfalarınızdan ona veri gönderen formları alır.
1. adım: botu oluşturun ve chat id'yi bulun
- Telegram'da @BotFather'ı açın,
/newbotgönderin ve adımları izleyin. Verdiği token'ı kopyalayın ve bir şifre gibi saklayın. - Yeni botunuzu açıp Start'a basın ya da ona herhangi bir mesaj gönderin. Bot size ilk mesajı atamaz.
- Bir grup için botu gruba ekleyin ve orada bir mesaj gönderin.
- Tarayıcıda
https://api.telegram.org/bot<token>/getUpdatesadresini açın. Yanıtta"chat":{"id":…}kısmını bulun. Bu sayı chat id'nizdir. Grup id'leri eksi işaretiyle başlar.
Botlar, chat id'ler ve gruplar iletişim formu için Telegram botu rehberinde daha ayrıntılı anlatılıyor.
2. adım: betiği forma ekleyin
Menü adları Google'ın İngilizce arayüzündeki gibi yazıldı.
- Formu düzenleme modunda açın. ⋮ menüsünden Apps Script'i seçin. Böylece forma bağlı bir betik oluşur.
- Örnek kodu silin, aşağıdaki betiği yapıştırın ve kaydedin.
- Project Settings'i (dişli simgesi) açın. Script properties altında
TELEGRAM_TOKENveTELEGRAM_CHAT_IDekleyin. Böylece token kodun dışında kalır.
Betik tüm yanıtları okur, her birini "Soru: yanıt" biçiminde ayrı bir satıra koyar ve tek bir düz metin mesajı gönderir. Telegram mesaj başına 1 ile 4.096 karakter kabul eder, bu yüzden betik daha uzun metni keser. Düz metin, yanıtların mesaj biçimini bozamayacağı anlamına da gelir.
// Google Form → ⋮ menüsü → Apps Script. Yapıştırın, kaydedin, createTrigger'ı bir kez çalıştırın.
// Project Settings → Script properties: TELEGRAM_TOKEN ve 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 = ("Yeni form yanıtı\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. adım: tetikleyiciyi açın
Betik yalnızca yüklenebilir bir form gönderim tetikleyicisi onu çağırdığında çalışır. Eklemenin iki yolu var:
- Düzenleyicide
createTrigger'ı seçip bir kez Run'a tıklayın. Google betiği yetkilendirmenizi ister; izin verin. - Ya da Triggers'ı (saat simgesi) açın, Add Trigger'a tıklayın,
sendToTelegram'ı, olay kaynağı olarak From form'u ve olay türü olarak On form submit'i seçin.
İkisini birden değil, birini kullanın; yoksa her yanıt iki kez gelir. Sonra formun herkese açık bağlantısından bir test yanıtı gönderin. sendToTelegram'ı düzenleyiciden çalıştırmayın: okuyacak yanıt olmadığı için hatayla durur.
Limitler ve sık görülen sorunlar
- Kotalar. Kişisel Google hesapları günde 20.000 URL Fetch çağrısı ve 90 dakika tetikleyici çalışma süresi alır; Workspace hesapları 100.000 çağrı ve 6 saat. Bir yanıt bir çağrı kullanır.
- Betiklerin oluşturduğu yanıtlar sayılmaz. Google'a göre başka bir betikteki
FormResponse.submit()tetikleyiciyi çalıştırmaz. - Dosya yükleme. Dosya yükleme sorusunun yanıtları dosyaların kendisi değil, Drive dosya kimlikleridir.
- Hiçbir şey gelmiyor. Apps Script'te Executions'ı açın.
chat not foundhatası, chat id'nin yanlış olduğunu ya da botta Start'a hiç basmadığınızı gösterir. - Sahip değişikliği. Tetikleyici onu oluşturan kişi adına çalışır. O kişi forma erişimini kaybederse tetikleyiciyi yeniden oluşturun.
Form kendi sitenizdeyse
Google Forms anketler ve kayıt listeleri için mantıklıdır. Kendi sitenizdeki bir iletişim formu için hem Google'ı hem betiği atlayabilirsiniz. Bir form backend'ine veri gönderen HTML form, her mesajı doğrudan Telegram'a ve e-postaya iletebilir.
Formgong bunu ücretsiz plan dahil her planda yapar: ayda 300 gönderim, veriler AB'de saklanır. Telegram'ı panelden bağlarsınız; token ya da chat id kopyalamanız gerekmez. Adımlar site formu gönderimlerini Telegram'a gönderme yazısında.
Sık sorulan sorular
Google Form yanıtlarını kodsuz Telegram'a gönderebilir miyim?
Evet. Zapier, Make ve IFTTT'de hazır Google Forms → Telegram şablonları var. Güvenmeden önce her servisin plan limitlerine bakın.
Apps Script yöntemi ücretsiz mi?
Evet, Google'ın günlük kotaları içinde. Kişisel bir hesap günde 20.000 URL Fetch çağrısı yapabilir (05.10.2026 itibarıyla) ve her yanıt bir çağrı kullanır.
Betiğim neden hiçbir şey göndermiyor?
Genellikle tetikleyici yoktur ya da yetkilendirilmemiştir, chat id yanlıştır veya botta Start'a basılmamıştır. Apps Script'teki Executions sayfası hatayı gösterir.
Formgong, Google Forms ile çalışır mı?
Hayır. Formgong, kendi sitenizden ona veri gönderen formları alır. Google Forms yanıtlarını okuyamaz.
Kaynaklar ve belgeler
Bu rehberin resmî kaynakları: 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 belgeleri, Verilerin saklanması.
Yazıyı Markdown olarak okuİlgili rehberler
- Lovable formunu gerçek başvurular alacak şekilde bağlayın
- Statik sitenize sunucu kurmadan HTML iletişim formu ekleyin
- Web sitesi başvurularını Telegram'da karşılayın
- Form başarılı görünüyor ama e-posta gelmiyor: nerede duruyor?
- CRM olmadan web sitesi leadlerini Telegram'da yönetin
- Lovable, Bolt, v0 ve Cursor formlarına gerçek backend bağlayın
- Web formu için Telegram botu: yazmalı mı?
- GDPR uyumlu form servisi: seçmeden önce 7 kontrol
- Mailto formu mu, form backend mi? Ne seçmeli
- HTML formdan Google Sheets'e: 2 ücretsiz yol
- Webflow form limiti: 50 gönderimden sonra ne?
- Turnstile, reCAPTCHA ve hCaptcha karşılaştırması
- Contact Form 7 ve Elementor formları Telegram'a
- Squarespace formu e-posta göndermiyor mu?
- Shopify iletişim formu mesajları nereye gider?
- Wix formu e-posta göndermiyor mu? Çözümler
- AB / KVKK odaklı Formspree alternatifleri karşılaştırması
- Mesaj göndermeyen iletişim formları: 793 site test edildi