Discord entegrasyonu, web sitenizden, mağazanızdan ya da sunucunuzdan gelen olayları Discord kanallarına taşımak veya Discord'u kendi uygulamanıza bağlamaktır. Üç yolu vardır: tek yönlü bildirim için webhook, komutlara yanıt veren ve etkileşim kuran bot, kullanıcıların Discord hesabıyla giriş yapması için OAuth2.
İlgili içerikler: CRM entegrasyonu · API istek sınırı · Node.js REST API
Hangi Yöntem Ne İçin?

| Yöntem | Ne yapar | Örnek |
|---|---|---|
| Webhook | Kanala tek yönlü mesaj gönderir | Yeni sipariş, form başvurusu, sunucu uyarısı |
| Bot | Mesajları okur, komutlara yanıt verir | Sipariş sorgulama komutu, moderasyon |
| OAuth2 | Kullanıcıyı Discord hesabıyla tanır | Sitede "Discord ile giriş" |
Webhook ile Kanala Bildirim Gönderme
- Discord'da sunucu ayarlarından Entegrasyonlar bölümüne girin ve Webhook Oluştur'u seçin.
- Webhook'a ad verin, mesajların düşeceği kanalı seçin ve Webhook URL'sini kopyalayın.
- Sunucunuzdan bu adrese JSON gövdeli bir POST isteği gönderin.
curl -X POST "https://discord.com/api/webhooks/WEBHOOK_ID/WEBHOOK_TOKEN" \
-H "Content-Type: application/json" \
-d '{"username":"Mağaza","embeds":[{"title":"Yeni sipariş #1042","description":"2 ürün, kapıda ödeme","fields":[{"name":"Tutar","value":"1.250 TL","inline":true}]}]}'Node.js ile aynı istek:
await fetch(process.env.DISCORD_WEBHOOK_URL, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ content: 'Yeni iletişim formu: ' + ad })
});Belgeye göre önemli sınırlar:
contenten fazla 2000 karakter, bir mesajda en fazla 10embed.- Embed başlığı 256, açıklaması 4096 karakter; en fazla 25 alan. Bir mesajdaki tüm embed'lerin toplamı 6000 karakteri geçemez.
?wait=trueeklenirse oluşan mesaj yanıtta döner. Forum kanallarındathread_nameveyathread_idzorunludur.- Webhook adı 1 ile 80 karakter arasında olmalı ve "clyde" ya da "discord" içermemelidir.
İstek Sınırları
Discord belgesi sabit sayılara güvenmek yerine yanıt başlıklarındaki X-RateLimit-* değerlerine ve 429 yanıtındaki Retry-After süresine uymayı ister. Botlar için genel sınır saniyede 50 istektir. 10 dakikada 10.000 geçersiz istek (401, 403, 429) yapan IP adresi geçici olarak engellenir. 404 dönen bir webhook'a istek göndermeyi bırakın.
Discord Bot Kurulumu

- Uygulama: Discord Developer Portal'da uygulama oluşturun, Bot sayfasından bot tokenını alın ve gizli tutun.
- Intent'ler:
GUILD_PRESENCES,GUILD_MEMBERSveMESSAGE_CONTENTayrıcalıklı intent'lerdir; Bot sayfasından açılır. 100'den fazla sunucudaki doğrulanmış uygulamalar için ayrıca onay gerekir. - Slash komutlar: Global ya da tek sunucuya özel kaydedilebilir. Global olarak en fazla 100 sohbet komutu, komut başına 25 seçenek tanımlanabilir.
- Yanıt süresi: Bir etkileşime ilk yanıt 3 saniye içinde verilmelidir. Uzun işlemlerde önce ertelenmiş yanıt gönderilir; etkileşim tokenı 15 dakika geçerlidir.
Discord ile Giriş (OAuth2)
- Kullanıcı
https://discord.com/oauth2/authorizeadresine yönlendirilir. Temel kapsamlaridentify,emailveguilds. - Dönen kod, sunucunuzda
https://discord.com/api/oauth2/tokenadresine form-urlencoded olarak gönderilip tokena çevrilir. - Kullanıcı bilgisi
/users/@meuç noktasından alınır. - Belge, CSRF'e karşı
stateparametresinin kullanılmasını şiddetle önerir.
Sık Sorulan Sorular
Botum mesaj içeriğini neden göremiyor?
MESSAGE_CONTENT ayrıcalıklı bir intent'tir. Developer Portal'da Bot sayfasından açılmalı ve kodda da istenmelidir.
Webhook ile dosya veya görsel gönderebilir miyim?
Embed içinde görsel adresi verebilirsiniz. Dosya eki için isteğin multipart biçiminde gönderilmesi gerekir; ayrıntılar webhook belgesinde.
Webhook için bot gerekir mi?
Hayır. Webhook bağımsız çalışır; yalnızca URL ile mesaj gönderir. Komut almak veya mesaj okumak istiyorsanız bot gerekir.
Marka adları sahiplerine aittir. Bu yazı bağımsız bir teknik rehberdir; adı geçen kuruluşlarla bayilik veya ortaklık ilişkisi bulunduğu anlamına gelmez.