Hızlı başlangıç

Sıfırdan, HTTP üzerinden geri okunan bir mesaja, dört komutla. Hesap yok, anahtar yok, SDK yok.

1. Bir adres seçin

Genel alan adlarımızdan herhangi birinde, istediğiniz bir ad. Çağrılacak ya da kaydedilecek hiçbir şey yoktur — adres, kendisine bir şey teslim edildiği anda gerçek olur.

Kimsenin gelip başına dolanmasını istemiyorsanız tahmin edilemez tutun: genel bir alan adında, adres, posta kutusu ile dünya arasındaki tek engeldir.

kabuk
$ ADDR="ci-$(openssl rand -hex 4)@grabmail.io"; echo "$ADDR"

2. Ona bir şey gönderin

Kayıt formunda, parola sıfırlama akışında veya test ettiğiniz her neyse onda kullanın. Teslimat normalde birkaç saniye sürer.

Posta sunucularımız 5 MB'a kadar mesajları kabul eder. Daha büyük olan her şey SMTP aşamasında reddedilir; böylece gönderen, merakta bırakılmak yerine hemen bilgilendirilir.

kabuk
$ curl -sX POST https://your-app.example/signup --data-urlencode "email=$ADDR"

3. Posta kutusunu yoklayın

Saniyede bir istek amaçlanan ritimdir ve asla kısıtlanmaz. Boş bir posta kutusu count: 0 ile 200 döner — asla 404 değil; bu yüzden döngünüzün onu özel olarak ele alması gerekmez.

Bu kod parçası sonsuza dek dönmek yerine bir dakika sonra vazgeçer; CI'da istediğiniz de budur.

gelene kadar yoklayın
$ for i in $(seq 60); do
  ID=$(curl -sG https://grabmail.io/api/v1/mailbox --data-urlencode "address=$ADDR" | jq -r '.messages[0].id // empty')
  [ -n "$ID" ] && break
  sleep 1
done; echo "$ID"

4. Okuyun, sonra atın

Mesajı getirin ve ne için geldiyseniz onu çıkarın — burada, düz metin bölümünden altı haneli bir kod.

Silmek isteğe bağlıdır: her şey 5 gün sonra kendiliğinden gider. Yine de CI'da yapın; bir sonraki çalıştırma temiz bir posta kutusuyla başlasın.

oku ve sil
$ curl -sG https://grabmail.io/api/v1/message/$ID --data-urlencode "mailbox=$ADDR" \
  | jq -r .text | grep -oE '[0-9]{6}'

curl -sX DELETE -G https://grabmail.io/api/v1/message/$ID --data-urlencode "mailbox=$ADDR"

Adres reddedilirse

Olur, ve bu bir hata değildir. Genel alan adları tek kullanımlık posta kara listelerinde yer alır ve kayıt formlarının büyük bölümü bunları kontrol eder. @ işaretinden önceki kısmı değiştirmek işe yaramaz — reddedilen alan adıdır.

Kendi alan adınızı bize yönlendirin, sorun ücretsiz olarak ortadan kalksın: bir alan adı bağlayın. Kendinizinkini kullanmak istemiyorsanız, ücretli bir plan 92 özel .com alan adı açar, bu listelerin dışında tutulur — aynı dört çağrı, artı bir Authorization: Bearer başlığı. Planları gör.

CI'ye bağlama

Gerçek postayı okuyan bir test paketinin kararsızlaşmasını önleyen iki alışkanlık:

Her çalıştırmada yeni bir adres
Onu derleme kimliğinden veya rastgele bir sonekten türetin. Bir adresi çalıştırmalar arasında tekrar kullanmak, dünkü mesajın bugünün doğrulamasını geçmesine yol açabilir.
Bir yeniden deneme sayısı değil, bir son tarih
Yukarıdaki gibi bir duvar saati zaman aşımına karşı yoklama yapın. Gönderen yavaşladıkça yeniden deneme sayıları sessizce artar.
Teslim süresi hakkında asla varsayımda bulunmayın
Posta eş zamanlı değildir. Mesajın belirli bir saniyede değil, varacağını doğrulayın.
Gerçek herhangi bir şey için kendi alan adınızı kullanın
Herkese açık bir posta kutusu, adresi tahmin eden herkes tarafından okunabilir — ve genel alan adları bu sitede yazılı olduğundan tahmin edilirler. Kendi alan adınızda ise bir adres, ancak onu zaten bilen biri tarafından bulunabilir. Tek bir MX kaydı, başka hiçbir şey gerekmez.

Yapay zeka ajanları için: MCP

Bir yapay zeka ajanı bu sayfayı okuyup hangi uç noktayı istediğine karar veremez ve bir istek yazamaz. Bir sunucuya hangi araçların var olduğunu sorar ve onları çağırır. GrabMail, tam da bunun için https://grabmail.io/mcp adresinde bir Model Context Protocol sunucusu çalıştırır — anahtar yok, hesap yok.

Herhangi bir MCP istemcisini bu uç noktaya yönlendirin. Claude Desktop, Cursor, Continue ve OpenAI Agents SDK hepsi bu biçimi okur.

Altı araç: create_inbox, list_domains, list_messages, read_message, delete_message ve wait_for_message.

mcp.json
$ {"mcpServers":{"grabmail":{"url":"https://grabmail.io/mcp"}}}

Önemli olan wait_for_message'dır. Bir yapay zeka ajanının geçici bir posta kutusu istemesinin nedeni neredeyse her zaman, onu bir sonraki adımdan ayıran bir doğrulama kodudur. Belirteç harcayarak döngü içinde yoklamak yerine bir adres ister, formu gönderir ve posta ulaşana kadar bekler:

25 saniyeye kadar bekler ve mesajı eksiksiz döndürür — gönderen, konu, gövde — ya da zaman aşımına uğradığını söyler; böylece ajan yalnızca yeniden çağırabilir.

Belirli bir mesajı da bekleyebilir: subject_contains veya from_contains geçirin, gelen başka her şey yok sayılır.

MCP · wait_for_message
$ curl -sX POST https://grabmail.io/mcp -H "Content-Type: application/json" -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"wait_for_message","arguments":{"address":"you@grabmail.io","subject_contains":"code"}}}'

Kod üreticileri için bir OpenAPI 3.1 şartnamesi (YAML) ve düz metin okumayı tercih eden her şey için llms.txt de mevcuttur.

İleri

API referansı

Her parametre, her durum kodu, hata biçimi.

Referansı aç →

Sınırlar

Nelerin sınırlandığı, nelerin sınırlanmadığı ve tavana ulaşıldığında ne olduğu.

Sınırları aç →

Kendi alan adınız

Tek bir MX kaydıyla alan adınızdaki her adres burada çalışır — kaydolacak bir şey yok.

Kurulumu gör →

Tekrar hoş geldiniz

Kutularınız ve alan adlarınız tek bir yerde.