İçeriğe geç
Veri MerkeziVeri MerkeziAPI

Temeller

En iyi uygulamalar

Güvenilir, güvenli ve Meta kurallarına uygun bir WhatsApp entegrasyonu için kontrol listesi.

Bu kontrol listesi, üretimde sorunsuz çalışan bir entegrasyon için önerilerimizi toplar.

#Güvenlik

  • API anahtarını yalnız sunucuda, ortam değişkeninde saklayın. Tarayıcıya ya da mobil uygulamaya koymayın.
  • Her ortam (geliştirme, test, üretim) için ayrı anahtar kullanın; geliştirmede vmk_test_ anahtarı tercih edin.
  • Anahtarlara yalnız gereken kapsamları verin ve mümkünse IP izin listesi tanımlayın.
  • Webhook isteklerinde imzayı her zaman doğrulayın ve 5 dakikadan eski zaman damgalarını reddedin. Bkz. Webhooklar.
  • Webhook imza anahtarını kesintisiz yenilemek için POST /webhooks/{id}/rotate-secret kullanın.

#Güvenilir gönderim

  • Her POST /messages isteğinde Idempotency-Key gönderin. Bkz. Idempotency.
  • 409 meta_outcome_unknown aldığınızda isteği tekrarlamayın; durum olayını bekleyin.
  • 5xx ve 429 yanıtlarında üstel bekleme ile yeniden deneyin; retryable: false hatalarını tekrar denemeyin.
  • Gönderim sonucunu yalnız HTTP yanıtına değil, message.status.* olaylarına göre işaretleyin. 201 yanıtı mesajın Meta'ya kabul edildiğini gösterir; teslim ve okunma olaylarla gelir.

#Webhook alıcısı

  • 2xx yanıtını hızlı döndürün (zaman aşımı 10 saniye); işi bir kuyruğa alın.
  • event_id (ya da X-VeriMerkezi-Event-Id) değerini saklayıp yinelenen teslimleri ayıklayın. Yeniden denemeler aynı kimlikle gelir.
  • Olayların sırayla geleceğini varsaymayın; zaman damgalarına ve durum önceliğine göre birleştirin.
  • Yeni olaylar * aboneliğine kendiliğinden eklenmez; ihtiyaç duyduğunuz olayları açıkça seçin.
  • Sunucunuz kesintiye uğradıysa GET /messages ile kayıtları geri alın ve POST /webhooks/redeliver ile ölü teslimleri yeniden kuyruğa alın.
  • Webhook gecikmesini GET /health ile izleyin.

#Meta kuralları

  • Müşteri size son 24 saat içinde yazmadıysa yalnız onaylı şablon gönderebilirsiniz.
  • Pazarlama mesajlarını yalnız açık rıza vermiş kişilere gönderin. GET /contacts/opted-out listesini ve contact.opt_out_changed olayını kullanarak reddedenleri gönderim listenizden çıkarın.
  • Numara kalitesini (quality.changed, GET /numbers içindeki quality_rating) izleyin. RED durumunda gönderimi durdurup içeriği gözden geçirin.
  • Şablonları işletme hesabı (WABA) düzeyinde yönetin; bir WABA'daki tüm numaralar aynı şablonları kullanır.

#Kredi ve maliyet

  • credit.low ve credit.exhausted olaylarına abone olun; kampanya ortasında kredinin bitmesini önleyin.
  • Bakiyeyi GET /credit/balance, kullanımı GET /credit/usage ile izleyin.
  • Okundu işareti (POST /messages/read) ve uç yönetim işlemleri kredi düşmez.

#Veri koruma (KVKK)

  • Silme talebi gelen kişi için POST /privacy/erasure çağırın; işlem idempotenttir ve tamamlanınca privacy.erasure_completed olayı gelir.
  • Abonelikten çıkış (opt-out) kanıtları yasal gereklilik olduğu için silinmez.
  • Gelen medyayı yalnız gerektiğinde indirin; dosyalar API anahtarı olmadan erişilemez.

#Uyumluluk

  • Bilmediğiniz yanıt alanlarını ve yeni enum değerlerini yok sayın; API geriye dönük uyumlu olarak yeni alanlar ekler.
  • Zaman damgalarını saat dilimi ofsetiyle işleyin (şu an +03:00); sabit Z varsaymayın.
  • Değişiklikleri Değişiklik günlüğü üzerinden izleyin.
Bu sayfa işinize yaradı mı?

Sorunuz mu var? Destek talebi açın ya da [email protected] adresine yazın.