API Email

API email untuk OTP, invoice, dan notifikasi aplikasimu.

Satu request HTTPS untuk mengirim email transaksional dari domainmu yang terverifikasi — lengkap dengan lampiran, status per pesan, dan webhook. Rp0,5 per email, tanpa langganan bulanan.

Satu request

Kirim email dari aplikasi dalam hitungan menit

  • API key dengan izin terpisah: kirim email, kelola kontak, kelola webhook
  • "type": "transactional" untuk OTP dan invoice — tanpa footer berhenti berlangganan
  • Lampiran hingga 10 file / 10 MB, misalnya invoice PDF
  • Header Idempotency-Key mencegah email terkirim dobel saat request diulang
  • metadata (mis. nomor pesanan) dikembalikan di status dan webhook
curl -X POST https://api.kirim.id/v1/messages \ -H "Authorization: Bearer KUNCI_API" \ -H "Content-Type: application/json" \ -H "Idempotency-Key: order-1042-invoice" \ -d '{ "sending_domain_id": 1, "to": "[email protected]", "subject": "Invoice #1042", "html": "<p>Terima kasih, pembayaranmu sudah kami terima.</p>", "type": "transactional", "metadata": {"order_id": "1042"} }'
Status & webhook

Tahu persis nasib setiap email

  • Cek status per pesan lewat GET /v1/messages/{id}
  • Webhook untuk delivered, bounce, complaint, open, click, dan unsubscribe — ditandatangani HMAC-SHA256
  • Alamat yang bounce atau melapor spam otomatis tidak dikirimi lagi; cek lewat endpoint suppressions
  • API kontak & audience untuk menyinkronkan pelanggan dari aplikasimu
delivered · bounce · complaint open · click · unsubscribe X-Kirim-Signature (HMAC-SHA256) Filter bounce & laporan spam
Dipakai untuk

Email yang ditunggu penggunamu

OTP & verifikasi

Kode masuk, verifikasi email pendaftaran, dan reset password. Email transaksional didahulukan, tidak ikut antre di belakang promo.

Invoice & pembayaran

Invoice PDF sebagai lampiran, konfirmasi pembayaran, dan pengingat tagihan — tetap sampai walau pelanggan berhenti berlangganan promo.

Notifikasi aplikasi

Status pesanan, resi pengiriman, laporan berkala, dan peringatan sistem, dengan status tiap email lewat webhook.

Aplikasimu sudah memakai SMTP? Gunakan SMTP relay Kirim.id tanpa mengubah kode. Bedanya transaksional dan promosi dijelaskan di artikel ini.

Dari blog

Panduan API email & integrasi aplikasi

Tanya jawab

Pertanyaan seputar API email

Bahasa pemrograman apa yang didukung?

Semua yang bisa mengirim request HTTPS: PHP/Laravel, Node.js, Python, Go, Java, dan lainnya. API menerima JSON dan memakai API key di header Authorization. Contoh lengkap ada di dokumentasi.

Apa bedanya type transactional dan marketing?

Email dengan "type": "transactional" (OTP, invoice, reset password) dikirim tanpa footer berhenti berlangganan dan tetap sampai ke kontak yang hanya berhenti berlangganan promo, hingga 100 email per hari. Tanpa type, email dianggap marketing. Isi yang sama ke banyak penerima dalam waktu singkat tetap diperlakukan sebagai marketing.

Bagaimana kalau request saya terkirim dua kali karena timeout?

Kirim header Idempotency-Key yang sama untuk percobaan ulang. Request yang diulang dengan kunci yang sama mengembalikan pesan yang sudah dibuat, sehingga email tidak terkirim dobel.

Bagaimana saya tahu email sudah sampai atau bounce?

Cek status lewat GET /v1/messages/{id}, atau pasang webhook untuk event delivered, bounce, complaint, open, click, dan unsubscribe. Setiap webhook ditandatangani HMAC-SHA256 di header X-Kirim-Signature.

Berapa biaya dan kecepatannya?

Setiap email memakai 1 koin (Rp0,5), tanpa langganan bulanan. Akun Premium mengirim hingga 1.200 email per menit; batas request API 60 per menit per API key.

Kirim email pertama dari aplikasimu hari ini.

Daftar, verifikasi domain, buat API key, dan kirim. 1.000 koin trial langsung masuk.

Daftar Gratis — 1.000 Koin