Skip to main content

Vazgeçme ve Bastırma Listeleri

Bir bastırma listesi, tekrar asla mesaj göndermemeniz gereken adresler kümesidir — STOP yanıtı veren, abonelikten çıkan, geri dönen veya şikayette bulunan kişiler. Bunu onurlandırmak her düzenlenmiş kanalda yasal bir gerekliliktir ve Orbit bunu sert bir gönderi kapısı olarak ele alır: bastırılmış bir adres, kampanyadan, kişi içe aktarımından veya API çağrısından bağımsız olarak gönderimden önce atılır. Bu sayfa bastırmanın nasıl çalıştığını, mevcut bir bastırma listesini — örneğin başka bir platformdan geçiş yaparken — tek bir CSV yüklemeyle toplu içe aktarmayı ve defterin dışa aktarılmasını denetim için kapsar. Aşağıdaki tüm uç noktalar https://api.orbit.devotel.io/api/v1/compliance kökündedir.

Bastırma nasıl gerçekleşir

Bir adres, çeşitli yollarla bastırma listesine düşer:
  • Bir kişi SMS/WhatsApp’ta bir STOP anahtar sözcüğü ile yanıt verir.
  • Bir kişi Tercih Merkezi üzerinden vazgeçer.
  • Consent API (opt_in: false) üzerinden bir vazgeçme kaydedersiniz.
  • Bir listeyi toplu içe aktarırsınız (bu sayfa).
Her girişin bir kanal kapsamı vardır. Tam kapsam kümesi: all, sms, voice, whatsapp, email, push, telegram, messenger, rcs. Kapsamın nasıl seçildiği giriş noktasına bağlıdır:
  • Toplu CSV içe aktarımı kapsamı her satırın adres türünden çıkarır: telefon ve WhatsApp adresleri varsayılan olarak all kapsamına girer — bir telefon numarasındaki STOP sinyali o numarada ulaşılabilen tüm kanalları bastırır — e-posta adresleri ise email kapsamına alınır. Bir channel sütunu bunu satır başına geçersiz kılar (bkz. Toplu CSV içe aktarımı).
  • Consent API ve Tercih Merkezi her zaman all kapsamını bastırır; kaydedilen tanımlayıcının telefon numarası mı yoksa e-posta adresi mi olduğuna bakılmaksızın. Bu giriş noktalarından birinden gelen bir vazgeçme, kişiyi her kanaldan kaldırır.
Bir telefon numarası nasıl bastırılırsa bastırılsın, ses ve arayıcı kapıları onu onurlandırır: herhangi bir kanaldan vazgeçen bir numara, mesajların yanında çağrıları da almaktan kesilir. Mekanizma giriş noktasına göre farklıdır. Toplu CSV içe aktarımı ayrıca telefon satırlarını DNC listesine yansıtır ve eşleşen kişileri işaretler. STOP anahtar sözcüğü, Tercih Merkezi veya Consent API vazgeçmesi bunun yerine all kapsamıyla kaydedilir; ses ve arayıcı kapıları bunu bastırma listesinden doğrudan okur — çağrı yine bloklanır ama ayrı bir DNC listesi satırı veya kişi işareti yazılmaz.

Toplu CSV içe aktarımı

POST /compliance/suppression-list/import, bir CSV dosyasının multipart/form-data yüklemesini kabul eder. Bir yönetici (admin) veya sahip (owner) anahtarı gerektirir ve 5 istek/dakika ile hız sınırlıdır.

Form alanları

CSV biçimi

İlk satır başlıktır. Sütun adları büyük/küçük harfe duyarsız ve konumdan bağımsızdır; yaygın takma adlar kabul edilir: Her satır telefon / e-posta / wa_id’den en az birini içermelidir. Tek bir satır birden fazla adres türü taşıyabilir — her biri kendi bastırma girişini üretir. Örnek:
Bir channel sütunu varsa o satır için varsayılan kapsamı geçersiz kılar ve yukarıda listelenen kapsam değerlerinden biri olmalıdır.

Satır başına sonuçlar

Yanıt, satır başına sonuçları raporlar. Kabul edilen satırlar yazılır; diğerleri sınıflandırılır, asla sessizce atılmaz.
İki yinelenen sayaç bilerek ve ayrı olarak rapor edilir: intra_file_duplicates, az önce yüklediğiniz dosya içindeki tekrarlardır; duplicates ise önceki içe aktarımlardan zaten listenizdeydi. İkisi de hata değildir ve ikisi de sessizce yutulmaz — ikisi de sayılır ki mutabakatınız tutsun.

Doğrulama nedenleri

Her errors[] girişi, düzeltip yeniden yükleyebilmeniz için dost bir reason ve kaynak raw_line taşır:

Sınırlar

100.000 satırı aşan hacimler için dosyayı bölün ve toplu işler hâlinde içe aktarın — yinelenen algılama, örtüşen aralıkları yeniden içe aktarmayı güvenli kılar.

İçe aktarım başarısız olduğunda

Hataları iki düzeyde tanılayın: HTTP düzeyi reddetmeler (hiçbir şey yazılmaz) ve satır düzeyi sınıflandırmalar (dosya kabul edilir ama belirli satırlar edilmez). HTTP düzeyi reddetmeleri: Satır düzeyi sınıflandırmalar (başarılı bir içe aktarıma eşlik eden errors[] girişleri) nedenlere şöyle karşılık gelir: Yalnızca ilk 100 errors[] girişi tam ayrıntıyla döndürülür — invalid sayacı her zaman gerçek toplamı yansıtır. Pano sihirbazı (aşağıda) ortaya çıkan satırları indirilebilir bir skipped.csv olarak paketler, böylece yalnızca başarısız olanları düzeltip yeniden içe aktarabilirsiniz.

Panodan içe aktarma

Aynı uç nokta, Ayarlar → Uyumluluk → Vazgeçme listeleri → Bastırma listesini içe aktar yolundaki kılavuzlu bir sihirbazla sarmalanır — aynı CSV sözleşmesi, terminal gerekmez.
  1. CSV dosyası seçin — 25 MB altında bir .csv seçin. Önceden biçimlendirilmiş bir başlangıç dosyası için iletişim kutusundaki Örnek CSV indir seçeneğini kullanın.
  2. Varsayılanları ayarlayın (isteğe bağlı) — ulusal biçimdeki numaraları normalleştirmek için bir Varsayılan ülke (ISO alpha-2) ve her kabul edilen satıra damgalanan serbest metin bir Neden.
  3. Önizleme — içe aktarımı sunucu tarafında bir kuru çalıştırma olarak çalıştırır: hiçbir şey yazılmaz ve siz işlemeden önce iletişim kutusu kabul edilen / zaten listede / dosyada tekrar / geçersiz dökümünü gösterir.
  4. İçe aktarımı onaylayın — işleyen yazmayı gerçekleştirir. Herhangi bir satır geçersizse, onları düzeltip yeniden içe aktarmak için skipped.csv dosyasını indirin.
Sihirbaz ayrıca dosya türü ve 25 MB denetimlerini istemci tarafında zorlar, böylece yanlış türde bir dışa aktarım API’ye hiç ulaşmadan başarısız olur.

Bastırma listesini dışa aktarma

GET /compliance/suppression-list/export, bastırma defterini indirir — yukarıdaki içe aktarımın simetrik karşılığı. Belirli bir anda hangi adreslerin bastırıldığını bir düzenleyiciye veya denetçiye kanıtlamak için kullanın; eşleşen kişisi olmayan toplu içe aktarılmış numaralar dahil.
Sorgu parametreleri: Her satır suppression_id, channel, address, türetilmiş status (active veya revoked), reason, source, contact_id (kişisi olmayan toplu içe aktarılmış adresler için boş), notes ve suppressed_at / revoked_at / created_at zaman damgalarını taşır. Erişim sahip ve yönetici anahtarlarıyla sınırlıdır ve her dışa aktarım çalışması denetim günlüğüne yazılır. Defter 50.000 satırı aştığında CSV yanıtı bir X-Export-Truncated: true başlığı taşır (JSON eşdeğeri truncated: true ayarlar) — kanala göre daraltın veya art arda tarih pencereleri dışa aktararak kalanı yakalayın.

Bastırmanın etkili olduğunu doğrulama

Güvenin ama doğrulayın: bir içe aktarımdan (veya herhangi bir vazgeçme olayından) sonra, listeyi bir kampanyaya teslim etmeden önce gönderi kapısının adresi gerçekten engellediğini doğrulayın.
  1. Bastırılmış adrese bir test mesajı gönderin. Bastırılmış bir alıcıya doğrudan API gönderimi, HTTP 422 ve RECIPIENT_OPTED_OUT hata koduyla eşzamanlı olarak başarısız olur. Kum havuzu modunda hiçbir taşıyıcıya dokunulmaz ve bakiye düşülmez; 8 ile biten herhangi bir alıcı ayrıca simüle edilmiş blocked teslimat makbuzuna çözümlenir, bu da aynı engelin taşıyıcı tarafı görünümüdür.
    Aynı adrese bir kampanya gönderimi, tasarım gereği farklı davranır: alıcı sessizce atlanır (status: "skipped", reason: "opted_out") böylece toplu iş ilerlemeye devam eder — hata beklemek yerine kampanyanın alıcı başına raporunu denetleyin.
  2. Girişin defterde olduğunu doğrulayın. Yukarıdaki sorguyla dışa aktarın (status=active varsayılandır) ve adresin beklenen channel kapsamıyla göründüğünü denetleyin. Dışa aktarım, her gönderi kapısının okuduğu gerçeğin kaynağıdır — satır orada active ise, engel dikidir.
İki denetim farklı soruları yanıtlar: 1. adım zorlamayı kanıtlar (kapı ateşlenir), 2. adım kapsamı kanıtlar (giriş, istediğiniz kanalla vardır).

Bastırmayı kaldırma (yeniden katılım)

Bir adresi geri getirmek için Consent API üzerinden yeni bir katılım (opt_in: true) kaydedin. Bu, eşleşen bastırma girişini iptal eder ve STOP engelini kaldırır. Belgeli, yeni bir izin olayı olmadan önceden bastırılmış bir kişiye asla yeniden mesaj göndermeyin. Engelin kaldırıldığını doğrulama. status=revoked ile dışa aktarın ve adresi bulun: satır denetim için hâlâ oradadır, status: revoked ve bir revoked_at zaman damgasıyla — bastırma geçmişi asla silinmez, yalnızca iptal edilir. Ardından Bastırmanın etkili olduğunu doğrulama bölümündeki gibi adrese küçük bir test mesajı gönderin: başarılı bir gönderim (RECIPIENT_OPTED_OUT yok) kapının artık iptal edilmiş geçmişe ateşlenmediğini doğrular. İki denetim de geçene kadar adresi hâlâ engelli sayın.

İlgili başvurular