Agen30 Juli 20266 mnt baca

Beri Agen AI Anda Alamat Email dengan Satu Panggilan API

Separuh internet masih menjawab via email: kode, struk, notifikasi. Satu panggilan tanpa akun memberi agen kotak masuk nyata, dibaca sebagai event webhook.

ALAMAT EMAIL HANYALAH URL MASUK LAINNYAsiapa punmengirim emailMXroutingparse + verifikasiPOSThandler Andaatau agen Andalogpercobaan ulang, log event, dan tombol Replay yang sama seperti sumber webhook lainnya
Kotak masuk yang berperilaku seperti sumber webhook lain yang sudah Anda jalankan.

Agen AI bisa mendaftar ke sebuah layanan, memulai job, atau membuat tiket dukungan, lalu alurnya berhenti, karena jawabannya tiba di tempat yang tidak dihuni agen: kotak masuk email. Kode verifikasi, kuitansi, notifikasi “ekspor Anda sudah siap”, reset kata sandi. Email adalah mekanisme callback tertua di internet, dan agen tidak punya alamat.

Artikel ini menunjukkan solusi terkecil yang bisa kami buat. Satu panggilan API, tanpa pendaftaran, mengembalikan alamat email yang berfungsi, dan email yang masuk ke alamat itu menjadi event terstruktur yang dibaca kembali oleh agen lewat HTTP, di log event yang sama dengan tempat webhook-nya mendarat.

TL;DR

  • POST https://anyhook.net/api/v1/quickstart (tanpa auth) mengembalikan inbox_address seperti q-cd3fe0f8.quickstart@anyhook.net, ditambah inbound_url webhook dan kunci API
  • Email yang dikirim ke alamat itu menjadi event email.received: from, to, subject, message_id, dan pesan MIME mentah yang lengkap
  • Agen menampilkan daftar event dengan GET /api/v1/events dan membaca satu event dengan GET /api/v1/events/{id}, atau lewat MCP dengan anyhook_inbox / anyhook_events / anyhook_inspect (registry: net.anyhook/anyhook, endpoint jarak jauh https://anyhook.net/mcp)
  • Hanya menerima. Kotak masuk ini tidak bisa mengirim atau membalas, dan itu batas yang disengaja, bukan celah di roadmap
  • Endpoint gratis kedaluwarsa dalam 7 hari kecuali diklaim; paket Free dibatasi 1.000 event/hari

Satu panggilan itu

curl -X POST https://anyhook.net/api/v1/quickstart
{
  "inbound_url": "https://in.anyhook.net/q-cd3fe0f8/quickstart",
  "inbox_address": "q-cd3fe0f8.quickstart@anyhook.net",
  "api_key": "ahk_live_…",
  "claim_url": "https://anyhook.net/claim/…",
  "expires_at": "2026-08-06T…"
}

Anda tidak membuat akun, memecahkan captcha, atau mengeklik layar persetujuan OAuth. Itu penting karena pemanggil di sini sering kali bukan manusia. Pemanggilnya adalah agen yang sedang di tengah tugas, dan setiap formulir pendaftaran di alurnya adalah tempat tugas itu mati. Endpoint ini sementara (7 hari) sampai manusia mengeklaimnya lewat claim_url, dan itu juga batas atas penyalahgunaan: tidak ada yang anonim yang bertahan melewati TTL-nya.

App yang sama kini menjawab di dua jalur transport:

TransportAlamat
Webhook HTTPhttps://in.anyhook.net/q-cd3fe0f8/quickstart
Emailq-cd3fe0f8.quickstart@anyhook.net

Keduanya mengisi satu log event, jadi “tunggu webhook Stripe” dan “tunggu email konfirmasi” adalah operasi yang sama dari sisi agen: lakukan polling ke API event, periksa payload-nya.

Menjadi apa sebuah email

Kirim email apa pun ke alamat itu. Dalam hitungan detik, email itu muncul sebagai event:

{
  "type": "email.received",
  "from": "noreply@github.com",
  "to": "q-cd3fe0f8.quickstart@anyhook.net",
  "subject": "Your verification code is 481920",
  "message_id": "<abc123@mail.example.com>",
  "date": "Thu, 30 Jul 2026 11:42:31 +0700",
  "size": 7026,
  "raw": "Received: from …"
}

raw adalah pesan MIME yang lengkap dan tidak diubah: setiap header, setiap bagian, setiap lampiran, persis seperti saat tiba. Field metadata hanya untuk kemudahan; pesan mentah adalah sumber kebenarannya. Untuk kasus agen yang paling umum, mengambil kode dari email verifikasi, baris subjek saja biasanya sudah cukup. Untuk yang lebih kaya, parse MIME-nya dengan library standar bahasa pemrograman Anda. Memang untuk itulah library itu ada.

Membacanya kembali:

curl https://anyhook.net/api/v1/events \
  -H "Authorization: Bearer ahk_live_…"

# the list carries no payloads; this returns one event with its body
curl https://anyhook.net/api/v1/events/<id> \
  -H "Authorization: Bearer ahk_live_…"
TANPA DAFTAR, TANPA CAPTCHA, TANPA BROWSERagenterminal / sandboxPOST /quickstartendpointurl + kunci apiarahkan providerevent masukbisa dibaca lewat APIklaimmanusia mengambil alih kepemilikan atas yang disiapkan agenendpoint bertahan lebih lama dari sesi, jadi batch job 12 jam tetap punya tempat mendarat
Pola bootstrap-lalu-klaim yang sama dengan endpoint webhook. Kotak masuk hanyalah pintu depan yang berbeda.

Lewat MCP

Jika agen berbicara MCP, ia tidak pernah menyentuh curl. Server ini terdaftar di registry MCP resmi sebagai net.anyhook/anyhook, dalam bentuk paket npm anyhook-mcp dan endpoint streamable-HTTP jarak jauh di https://anyhook.net/mcp:

  1. anyhook_quickstart langsung mengembalikan inbox_address (di paket npm, dijalankan tanpa kunci; endpoint jarak jauh butuh kunci API atau masuk terlebih dulu)
  2. anyhook_inbox mengembalikan alamat untuk App yang sudah ada, beserta URL webhook-nya
  3. anyhook_events / anyhook_inspect membaca apa yang tiba

Tool mulai cepat itulah seluruh proses onboarding. Agen yang menemukan server ini di registry bisa membuat kotak masuk untuk dirinya sendiri dan mulai menerima tanpa manusia dalam alurnya. Manusia masuk belakangan, kalau pun pernah, untuk mengeklaim akunnya.

Cara kerjanya (dan mengapa alamatnya berbentuk seperti itu)

Di balik layar, sengaja tidak ada pipeline kedua:

  1. Catch-all Cloudflare Email Routing menyerahkan setiap pesan untuk domain itu ke Worker edge yang sama yang menerima webhook
  2. Worker memecah local part alamat pada titik terakhirnya: {user-slug}.{app-slug}@anyhook.net. Slug disanitasi menjadi [a-z0-9-] saat dibuat, jadi slug tidak pernah bisa berisi titik, dan itu membuat pemecahannya tidak ambigu sejak dari desainnya
  3. Pesan dikemas ulang menjadi permintaan HTTP yang semestinya, dan semua yang ada di downstream, yaitu kuota, batas payload, antrean, percobaan ulang (retry), pengiriman ke tujuan Anda, dan log event, melewati jalur kode yang persis sama dengan webhook

Email yang tidak cocok dengan App sungguhan ditolak di tahap SMTP, bukan ditelan diam-diam. Pengirim yang tidak menerima error akan menganggap emailnya terkirim. Pesan yang terlalu besar dipantulkan dengan cara yang sama.

Dua sifat terbawa dari sisi webhook tanpa biaya tambahan. Body pesan dienkripsi AES-256-GCM sebelum menyentuh database. Dan hash setiap event digabungkan ke rantai per App yang disegel setiap hari, dengan root setiap hari di-commit ke repository git publik yang kredensialnya tidak dipegang AnyHook. Jika kami menyunting email yang tersimpan setelah harinya disegel, anchor yang sudah dipublikasikan tidak akan lolos verifikasi lagi.

Apa yang tidak dilakukannya

Kotak masuk ini tidak mengirim. Tidak ada balasan, tidak ada email keluar, tidak ada kredensial SMTP. Pengiriman adalah tempat deliverability, keselarasan SPF/DKIM, reputasi IP, dan tanggung jawab atas spam berada. Itu disiplin yang berbeda dengan mode kegagalan yang berbeda. Jika agen Anda butuh email percakapan dua arah yang lengkap sebagai produk, kategori itu ada (AgentMail mendapat pendanaan tepat dengan tesis itu). Kotak masuk khusus penerimaan yang ditempelkan ke relay webhook adalah hal yang lebih sempit: satu log event untuk semua yang masuk.

Ini bukan layanan email sekali pakai. Penggunaan yang dimaksud adalah email yang dihasilkan sistem Anda sendiri: konfirmasi untuk akun yang dioperasikan agen Anda secara sah, notifikasi dari layanan yang Anda integrasikan, kuitansi dari alur Anda sendiri. Endpoint gratis dikenai rate limit, dibatasi, dan kedaluwarsa, dan pola penyalahgunaan diblokir. Jika ketentuan sebuah layanan melarang pendaftaran otomatis, kotak masuk tidak mengubahnya.

Ini polling, bukan push. Agen bertanya “apa yang sudah tiba?”, dan tidak ada yang membangunkannya. Saat Anda butuh latensi lebih rendah, pasang destination_url, dan event diteruskan ke server Anda sendiri begitu tiba. Email itu menjadi webhook.

Coba sendiri

# 1. mint an inbox (no signup)
curl -X POST https://anyhook.net/api/v1/quickstart

# 2. send any email to the inbox_address you got back

# 3. find it, then read it
curl https://anyhook.net/api/v1/events -H "Authorization: Bearer <api_key>"
curl https://anyhook.net/api/v1/events/<id> -H "Authorization: Bearer <api_key>"

Total waktu penyiapannya sama dengan lamanya email di langkah 2 tiba.

Semua artikel30 Juli 2026 · 6 mnt

Berhenti kehilangan webhook.

Ganti satu URL. Dapatkan percobaan ulang, log event, dan putar ulang sekali klik. Atau lihat dulu: daftar dan jalankan latihan gangguan 30 detik, lalu saksikan event tetap selamat saat server Anda mati. Tidak perlu server.