İçeriğe geç

E-posta bekleme

GET /emails/get-email, filtrelerinize uyan e-postayı döndürür; henüz gelmediyse bekler.

E-postanın bize nasıl ulaştığı fark etmez. Alıcı, clearance.rest üzerinden yönlendirilen bir domain’deki bir adres olabilir ya da bağladığınız bir Gmail ya da Outlook posta kutusu. Kodunuz her iki durumda da aynıdır.

curl -G https://api.clearance.rest/emails/get-email \
-H "X-API-Key: $CLEARANCE_REST_API_KEY" \
-H "X-Service-Timeout: 60000" \
--data-urlencode "email_account=test@domain.com" \
--data-urlencode "match_regex=Verification" \
--data-urlencode "code_regex=\d{6}"
{
"code": "123456",
"messageId": "<CAF=abc@mail.gmail.com>",
"date": "2026-07-11T10:00:00.000Z",
"receivedAt": 1783459025000,
"rawSize": 4096,
"to": "test@domain.com",
"from": "noreply@example.com",
"subject": "Your verification code",
"text": "Your code is 123456",
"html": "<p>Your code is 123456</p>",
"headers": [{ "key": "message-id", "value": "<CAF=abc@mail.gmail.com>" }],
"attachments": []
}

Her parametre isteğe bağlıdır. Hiçbiri verilmezse gelen bir sonraki e-posta döner.

Parametre Etkisi
email_account Yalnızca bu adrese gönderilen e-postalar.
email_sender Yalnızca bu adresten gelen e-postalar.
timestamp Yalnızca bu andan sonra alınan e-postalar. Saniye, milisaniye, mikrosaniye ya da ISO 8601 dizesi.
match_regex Filtre. Yalnızca text, html ya da subject alanı eşleşen e-postalar uygundur.
code_regex Çıkarma. Seçilen e-postaya uygulanır; sonuç code alanına gider.

Birden fazla e-posta eşleşirse en yenisi döner ve isteğinizden önce gelmiş bir e-posta da sayılır. Eski bir mesaj yeni bir beklemeyi karşılamasın diye, e-postayı tetiklemeden önce alınmış bir timestamp verin.

match_regex ve code_regex bağımsızdır: biri e-postayı seçer, diğeri ondan bir değer çıkarır. İkisi de e-postanın önce text, sonra html, sonra subject alanında aranır. code_regex’te capture group varsa grup, yoksa tüm eşleşme döner. code_regex’i vermezseniz yanıtta code alanı hiç bulunmaz; verirseniz ve hiçbir şey eşleşmezse code null olur.

Parametreleri aynı adlarla bir JSON istek gövdesi olarak da gönderebilirsiniz.

  • Bağlı bir Gmail ya da Outlook posta kutusuna gelen e-postaları yalnızca onu bağlayan proje görür.
  • Yönlendirilen bir domain’de alınan e-postaları her proje görür. Her projeye ayrı adresler verin ya da email_account ile filtreleyin.

Her ekin bir file_name’i, dosyanın kendisi olarak base64_data’sı ve indirmek için bir full_url’i vardır. URL API anahtarınızı gerektirir; X-API-Key header’ını gönderin, istemci header ayarlayamıyorsa ?api_key= ekleyin.

curl -H "X-API-Key: $CLEARANCE_REST_API_KEY" \
https://api.clearance.rest/emails/attachments/1783459025000_1_invoice.pdf \
-o invoice.pdf

Bekleme en fazla 5 dakika sürer; X-Service-Timeout ile düşürebilirsiniz. Süre dolarsa yanıt HTTP 200 ve { "success": false, "error": "timeout" } olur. Bkz. Timeout.