tr

Güvenilir Geçici Gelen Kutusu API Otomasyonu

Benzersiz adresler, sınırlı sorgulama, kesin mesaj eşleştirme, güvenli anahtar yönetimi ve faydalı hata kanıtlarıyla deterministik kayıt ve şifre sıfırlama testleri oluşturun.

17 Tem 2026

Bir gelen kutusunu oluşturmak, almak, kontrol etmek ve temizlemek için kompakt bir otomasyon döngüsü

E-posta testinin güvenilmez sürümü kısadır: bir adres oluşturun, beş saniye bekleyin, ilk mesajı okuyun ve bu çalışmaya ait olduğunu umun.

Güvenilir sürüm hâlâ basittir, ancak teslimatı asenkron olarak ele alır. Benzersiz bir adres oluşturur, başlangıç zamanını kaydeder, bir son tarih içinde sorgular, amaçlanan mesajı eşleştirir, ürün eylemini doğrular ve bir şey başarısız olduğunda yeterli bağlamı raporlar.

API anahtarını URL içinde tutmayın

GPTMail anahtarını X-API-Key başlığında gönderin. ?api_key= sorgu parametrelerine koymayın. URL'ler tarayıcı geçmişinde, erişim günlüklerinde, izleme sistemlerinde ve yönlendirme verilerinde rutin olarak saklanır.

X-API-Key: YOUR_API_KEY

Anahtarı CI gizli yöneticinizde saklayın ve günlüklerde maskeleyin. Kamuya açık günlük bir anahtar keşif için uygundur; kontrol edilen otomatik test setleri, kotasını ve kullanımını izleyebileceğiniz bir anahtar kullanmalıdır.

Mevcut uç noktalar ve yanıt örnekleri GPTMail API dokümantasyon sayfasında tutulmaktadır.

Çalışma başına bir adres

Bağımsız olarak çalıştırılabilen her test için yeni bir adres oluşturun. Tüm test paketinin paylaştığı bir gelen kutusundan doğruluğu türetmeyin.

Adresi, senaryo kimliğini, ortamı ve test başlangıç zamanını kaydedin. Bu değerler, eski mesajları reddetmenizi ve mesaj sırlarını günlüğe kaydetmeden çakışmaları teşhis etmenizi sağlar.

Sabit bekleme yerine bir son tarihe karşı sorgulama yapın

E-posta teslim süresi değişkenlik gösterir. Sabit beş saniyelik bekleme, teslimat hızlı olduğunda israf ve yavaş olduğunda hatalıdır.

Sınırlı bir döngü kullanın:

deadline = now + 90 seconds
delay = 2 seconds

while now < deadline:
  messages = list inbox
  candidate = newest message matching sender, subject, and start time
  if candidate exists:
    read candidate and continue the product test
  wait delay with a small random jitter
  delay = min(delay * 1.5, 10 seconds)

Son tarih, test sözleşmesinin bir parçasıdır. Şifre sıfırlama akışı, toplu haber bülteni önizlemesinden farklı bir sınıra ihtiyaç duyabilir. Yavaş bir bağımlılık tüm CI işini sessizce uzatmasın diye sınırı açık tutun.

Kesin olarak eşleştirin

“Gelen kutusundaki ilk mesaj” kullanışlı bir seçici değildir. Birkaç sinyali eşleştirin:

  • alıcı, bu çalışma için oluşturulan adrese eşit olmalı;
  • oluşturulma zamanı, tetikleme zamanından daha yeni olmalı;
  • gönderici, beklenen servise ait olmalı;
  • konu veya mesaj türü akışa uymalı;
  • mesaj kimliği daha önce tüketilmemiş olmalı.

Gönderici birden fazla kod üretebiliyorsa, en yeni eşleşen mesajı seçin. Yeniden denemeler yanlışlıkla aynı mesajı kullanmasın diye kimliğini test çıktısında saklayın.

Yalnızca bir liste eşleşmesinden sonra okuyun

Gelen kutusu listesi, ucuz keşif adımı olmalıdır. Tam mesajı yalnızca seçilen aday için alın. Bu, gereksiz işi azaltır ve alakasız tanıtım e-postalarını ayrıştırmayı önler.

İş sonucunu doğrulayın, sadece altı haneli bir dize varlığına bakmayın. Kodu gönderin veya beklenen bağlantıyı açın, ardından hesabın doğru duruma ulaştığını doğrulayın.

Hız sınırlamalarını bir sinyal olarak ele alın

API bir kota veya hız sınırlama yanıtı döndürürse, mevcut denemeyi durdurun ve sıfırlama bilgilerini ortaya çıkarın. Aşırı yeniden denemeler net bir kapasite sinyalini gürültüye dönüştürür ve alakasız testleri geciktirebilir.

Test çalıştırıcıda eşzamanlılığı sınırlayın, özellikle bir paket aynı anda çok sayıda adres oluşturduğunda. Küçük bir işçi havuzu, yüzlerce eşzamanlı sorgulama döngüsünden daha kolay hata ayıklanır.

Başarısızlıkları gizlemeden temizlik yapın

Temizlik, kanıt alındıktan sonra çalışmalıdır. Başarılı olduğunda mesajları kaldırın veya kısa saklama süresine bırakın. Başarısızlıkta, adresi ve mesaj kimliğini korumalı CI artefaktlarında yeterli süre saklayın, ardından silin.

Doğrulama kodlarını, özel bağlantıları veya tam HTML gövdelerini asla kamuya açık derleme günlüklerine yazdırmayın.

Yeniden denemeleri idempotent yapın

Testi yeni bir adresle yeni bir çalışma olarak yeniden deneyin. Aynı isteği aynı hesap ve gelen kutusuna tekrarlamanın temiz bir durumdan başladığını varsaymayın. Gönderici eski kodları geçersiz kılabilir, tekrarlanan istekleri sınırlayabilir veya yinelenen davetleri reddedebilir.

Bir ağ isteği zaman aşımına uğrarsa, “yanıt alınmadı” ile “işlem gerçekleşmedi” arasını ayırın. Yıkıcı bir yeniden deneme yapmadan önce gözlemlenebilir durumu kontrol edin.

Hata noktasını raporlayın

Kullanışlı bir otomasyon hatası bu aşamalardan birini tanımlar:

  1. adres oluşturma başarısız oldu;
  2. ürün eylemi e-posta kuyruğa eklenmeden önce başarısız oldu;
  3. son tarih içinde eşleşen mesaj gelmedi;
  4. mesaj geldi ancak içeriği eşleşmedi;
  5. doğrulama eylemi başarısız oldu;
  6. temizlik başarısız oldu.

Bu sınıflandırma, aralıklı bir “e-posta testi başarısız oldu” durumunu bir ekibin üstlenebileceği işe dönüştürür.

Daha büyük test matrisi için, Gerçek Bir E-posta Test Planı okuyun. Teslimat teşhisi için, Doğrulama E-postası Gelmiyor: Bozuk Adımı Bulun kullanın.

GPTMail