WhatsApp, dünya genelinde milyarlarca kullanıcısı olan en popüler mesajlaşma platformlarından biridir. Bu nedenle birçok işletme ve yazılım geliştirici, kullanıcılarla daha hızlı iletişim kurabilmek için WhatsApp API entegrasyonu kullanmaktadır. Özellikle CRM sistemleri, e-ticaret platformları, müşteri destek sistemleri ve otomasyon projelerinde WhatsApp entegrasyonu büyük avantaj sağlar.

Bu rehberde C# ile WhatsApp API entegrasyonu nasıl yapılır, hangi yöntemler kullanılabilir, WhatsApp Business API nedir ve uygulama tarafında mesaj gönderme işlemleri nasıl gerçekleştirilir detaylı şekilde ele alacağız. Ayrıca gerçek projelerde kullanılan mimari yaklaşımları, webhook yapılarını ve güvenli entegrasyon yöntemlerini de inceleyeceğiz.

Eğer bir yazılım geliştirici olarak uygulamanıza WhatsApp mesaj gönderme özelliği eklemek istiyorsanız, bu makale size uçtan uca bir yol haritası sunacaktır.

WhatsApp API Nedir?

WhatsApp API, işletmelerin ve yazılım geliştiricilerin WhatsApp üzerinden otomatik mesaj göndermesini, müşteri mesajlarını almasını ve bu mesajları yazılım sistemleriyle entegre etmesini sağlayan bir uygulama arayüzüdür.

Klasik WhatsApp uygulamasından farklı olarak API kullanımı tamamen sunucu tabanlıdır ve genellikle şu sistemlerle entegre edilir:

  • CRM sistemleri
  • müşteri destek platformları
  • e-ticaret yazılımları
  • otomasyon sistemleri
  • bildirim sistemleri

WhatsApp API sayesinde kullanıcıya otomatik olarak sipariş bildirimi, doğrulama kodu, kampanya mesajı veya müşteri destek mesajları gönderilebilir.

WhatsApp API Kullanım Alanları

  • OTP doğrulama mesajları
  • sipariş durumu bildirimleri
  • müşteri destek otomasyonu
  • pazarlama kampanyaları
  • chatbot entegrasyonları

WhatsApp Business API Nasıl Çalışır?

WhatsApp Business API, Meta tarafından sunulan resmi bir servis olup işletmelerin kullanıcılarla ölçeklenebilir şekilde iletişim kurmasını sağlar.

Bu API, klasik bir REST API mimarisi kullanır ve genellikle aşağıdaki bileşenlerden oluşur:

  • API endpoint
  • authentication token
  • webhook sistemi
  • mesaj template yapısı

Genel veri akışı şu şekilde gerçekleşir:

  1. Uygulama API'ye mesaj gönderme isteği yapar
  2. WhatsApp sunucuları mesajı kullanıcıya iletir
  3. Kullanıcı mesaj gönderirse webhook tetiklenir
  4. Sunucu mesajı yakalar ve işlem yapar

WhatsApp Business API Özellikleri

Özellik Açıklama
Mesaj Gönderme Kullanıcılara otomatik mesaj gönderilebilir
Webhook Gelen mesajları gerçek zamanlı yakalama
Template Mesaj Ön onaylı mesaj şablonları
Medya Gönderme Resim, video ve dosya gönderme
Otomasyon Chatbot ve otomatik cevap sistemleri

C# ile WhatsApp API Entegrasyonu

C# ile WhatsApp API entegrasyonu genellikle HTTP REST istekleri kullanılarak yapılır. .NET uygulamaları API endpointlerine POST isteği göndererek WhatsApp üzerinden mesaj iletebilir.

En yaygın kullanılan entegrasyon yöntemleri şunlardır:

  • WhatsApp Business Cloud API
  • Twilio WhatsApp API
  • 360Dialog API
  • Chat API servisleri

En yaygın yöntem Meta tarafından sunulan WhatsApp Cloud API kullanmaktır.

Entegrasyon İçin Gerekenler

  • Meta Developer hesabı
  • WhatsApp Business hesabı
  • Access Token
  • Phone Number ID
  • Webhook endpoint

C# ile WhatsApp Mesaj Gönderme

C# ile WhatsApp üzerinden mesaj göndermek için REST API çağrısı yapılması gerekir. Bu işlem genellikle HttpClient kullanılarak gerçekleştirilir.

Aşağıdaki örnek, WhatsApp Cloud API kullanarak mesaj gönderme işlemini göstermektedir.


using System.Net.Http;
using System.Text;
using System.Threading.Tasks;

public class WhatsappService
{
    private readonly string token = "ACCESS_TOKEN";
    private readonly string phoneId = "PHONE_NUMBER_ID";

    public async Task SendMessage(string number, string message)
    {
        var client = new HttpClient();

        client.DefaultRequestHeaders.Add("Authorization", "Bearer " + token);

        var json = @"{
            ""messaging_product"": ""whatsapp"",
            ""to"": """ + number + @""",
            ""type"": ""text"",
            ""text"": { ""body"": """ + message + @""" }
        }";

        var content = new StringContent(json, Encoding.UTF8, "application/json");

        await client.PostAsync(
        "https://graph.facebook.com/v17.0/" + phoneId + "/messages",
        content);
    }
}

Bu örnekte uygulama, WhatsApp API endpointine HTTP POST isteği göndererek mesaj iletmektedir.

Mesaj Gönderme Adımları

  1. Access Token oluştur
  2. Phone Number ID al
  3. API endpoint belirle
  4. HTTP POST isteği gönder
  5. API response kontrol et

Webhook Kurulumu ve Mesaj Alma

Webhook, WhatsApp kullanıcılarından gelen mesajları sunucunuza ileten bir bildirim mekanizmasıdır.

Kullanıcı bir mesaj gönderdiğinde WhatsApp sunucuları belirlediğiniz webhook URL adresine POST isteği gönderir.

ASP.NET Core Webhook Örneği


[HttpPost]
public IActionResult Webhook([FromBody] object data)
{
    // gelen mesaj verisi burada yakalanır
    Console.WriteLine(data.ToString());
    return Ok();
}

Webhook sistemi sayesinde chatbot, otomatik cevap veya CRM entegrasyonu yapılabilir.

Gerçek Proje Senaryoları

WhatsApp API entegrasyonu birçok farklı yazılım projesinde kullanılabilir.

E-ticaret Bildirim Sistemi

  • sipariş onayı
  • kargo bildirimi
  • teslimat bilgisi

OTP Doğrulama

  • kullanıcı doğrulama
  • iki faktörlü giriş
  • güvenlik kodları

Müşteri Destek Botu

  • otomatik cevap sistemi
  • ticket oluşturma
  • destek yönlendirme

WhatsApp API Entegrasyonunda Güvenlik

Bir WhatsApp API entegrasyonu geliştirirken güvenlik ve performans kritik öneme sahiptir.

Dikkat Edilmesi Gerekenler

  • Access token güvenli saklanmalıdır
  • Webhook endpoint doğrulanmalıdır
  • Rate limit kontrol edilmelidir
  • mesaj log sistemi kurulmalıdır

Ayrıca büyük ölçekli sistemlerde mesaj gönderme işlemleri queue sistemi üzerinden yapılmalıdır. Böylece API rate limit sorunları önlenebilir.

Sık Sorulan Sorular

C# ile WhatsApp API kullanmak mümkün mü?

Evet. WhatsApp API REST mimarisi kullandığı için C# uygulamalarında HttpClient ile kolayca entegrasyon yapılabilir.

WhatsApp Business API ücretli mi?

Evet. WhatsApp Business API kullanımında mesaj bazlı ücretlendirme uygulanır ve fiyatlar ülkeye göre değişebilir.

WhatsApp API ile toplu mesaj gönderilebilir mi?

Evet. Ancak spam gönderimi yasaktır ve yalnızca kullanıcı onayı bulunan numaralara mesaj gönderilmelidir.

Webhook olmadan WhatsApp API kullanılabilir mi?

Evet kullanılabilir ancak gelen mesajları almak için webhook sistemi gereklidir.

WhatsApp API ile medya gönderilebilir mi?

Evet. WhatsApp API üzerinden resim, video, belge ve ses dosyaları gönderilebilir.