Referensi API

Kirim email

Send transactional mail only from your verified custom domains over HTTPS — password resets, receipts, alerts, and similar event-driven messages. Not for newsletters or marketing bulk. One endpoint, domain-scoped API keys, delivery through AWS SES.

Ikhtisar

Endpointhttps://api.unbox.im/v1/email
MetodePOST
Content-Typeapplication/json
CakupanSatu kunci API per domain kustom

Hasilkan kunci di Akun → Domain → domain Anda → API setelah verifikasi DNS selesai. Rahasia lengkap ditampilkan sekali — simpan dengan aman. Kredensial SMTP opsional di panel Domain yang sama mengikuti aturan hanya transaksional yang sama.

Hanya email transaksional

Unbox HTTP API (POST /v1/email) and optional SMTP submission are for transactional mail only — messages tied to an account action, purchase, or operational event. They are not a newsletter or marketing broadcast service.

Penggunaan yang diizinkan

  • Verifikasi akun, pengaturan ulang kata sandi, dan peringatan keamanan
  • Konfirmasi pesanan, tanda terima, pembaruan pengiriman, dan pemberitahuan pembayaran
  • Notifikasi yang dipicu oleh pengguna tertentu atau peristiwa sistem
  • Pesan tim dan ruang kerja (undangan, penugasan, peringatan internal)

Penggunaan yang dilarang

  • Buletin, kampanye promosi, atau pemasaran siaran
  • Penjangkauan dingin atau surat ke daftar yang dibeli, dikerok, atau tanpa persetujuan
  • Spam afiliasi, phishing, atau konten menipu
  • Segala upaya untuk menghindari batas penerima, batas pengiriman, atau kuota paket

Batas pengiriman dan penerima

Untuk melindungi penerima dan keterkiriman, lalu lintas API dan SMTP keluhan tunduk pada batas di bawah ini (selain kuota keluar bulanan paket Anda). Penegakan berlaku langsung di komposer web, HTTP API, dan pengiriman SMTP. Komposer web memberikan peringatan setelah 25 penerima per pesan dan memblokir pengiriman di atas 50.

BatasNilai
Penerima per pesanHingga 50 total (To + Cc + Bcc digabungkan)
Penerima unik per hariHingga 1.000 per ruang kerja
Laju permintaan kirimHingga 10 pengiriman API atau SMTP per menit per domain
Kuota keluar paketBatas kirim bulanan pada langganan Anda tetap berlaku

Aturan ini adalah bagian dari Kebijakan Penggunaan yang Dapat Diterima. Penegakan otomatis berlaku langsung di komposer web, HTTP API, dan pengiriman SMTP. Akun yang mengirim pemasaran atau surat massal, atau menyalahgunakan infrastruktur pengiriman, dapat dibatasi, ditangguhkan, atau dihentikan.

Kami memantau sinyal keterkiriman. Tingkat bouncing di atas 3% atau tingkat keluhan di atas 0,1% dapat memicu jeda kirim sementara atau peninjauan manual.

Lihat Ketentuan Layanan, Kebijakan Privasi, dan Pernyataan GDPR kami untuk detail kebijakan lengkap.

Autentikasi

Kirim kunci API domain Anda pada setiap permintaan:

Authorization: Bearer ubk_live_xxxxxxxxxxxxxxxxxxxxxxxx

Alternatifnya, gunakan X-Api-Key: ubk_live_…. Kunci disimpan dalam bentuk hash; cabut atau rotasi dari dasbor Domain.

Badan permintaan

JSON dengan nama bidang PascalCase (From, To, …). Alias camelCase juga diterima.

BidangDiperlukanDeskripsi
FromYaPengirim — kotak surat pribadi Anda di domain kunci (utama atau alias). Antrian bersama bukan pengirim yang valid.
ToYaPenerima — string, string yang dipisahkan koma, atau array
SubjectYaBaris subjek
TextBodySalah satu dari TextBody / HtmlBodyBadan teks biasa
HtmlBodySalah satu dari TextBody / HtmlBodyBadan HTML
CcTidakPenerima salinan
BccTidakPenerima salinan tersembunyi
ReplyToTidakAlamat Balas ke
TagTidakTag metadata opsional (disimpan bersama pengiriman)

Contoh

{
  "From": "you@yourdomain.com",
  "To": "user@example.com",
  "Subject": "Welcome",
  "TextBody": "Thanks for signing up.",
  "HtmlBody": "<p>Thanks for signing up.</p>",
  "ReplyTo": "you@yourdomain.com",
  "Tag": "welcome"
}

Respons sukses

HTTP 200 dengan JSON:

{
  "ErrorCode": 0,
  "Message": "OK",
  "MessageID": "0100018…-000000-…",
  "SubmittedAt": "2026-06-23T12:00:00.000Z",
  "To": "user@example.com"
}

Respons kesalahan

Kesalahan mengembalikan 4xx (atau 500 untuk kegagalan tak terduga) dengan JSON:

{
  "ErrorCode": 300,
  "Message": "TextBody or HtmlBody is required."
}
Kode ErrorArti
0Sukses
10Kunci API tidak ada
11Kunci tidak valid atau dicabut, atau domain belum terverifikasi untuk pengiriman
300Kesalahan validasi (bidang hilang, JSON tidak valid, dll.)
403Alamat pengirim tidak diizinkan — harus kotak surat pribadi Anda di domain kunci tersebut
406SES menolak pesan

Contoh

Ganti you@yourdomain.com dengan kotak surat pribadi Anda di domain dan gunakan kunci API Anda sendiri.

curl "https://api.unbox.im/v1/email" \
  -H "Authorization: Bearer ubk_live_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
  "From": "you@yourdomain.com",
  "To": "user@example.com",
  "Subject": "Welcome",
  "TextBody": "Thanks for signing up.",
  "HtmlBody": "<p>Thanks for signing up.</p>",
  "ReplyTo": "you@yourdomain.com",
  "Tag": "welcome"
}'

Memulai

  1. Buat akun Unbox dan tambahkan domain kustom Anda.
  2. Selesaikan semua langkah verifikasi DNS di Domains.
  3. Buka Domains → domain Anda → API dan buat kunci domain.
  4. Kirim pesan pertama Anda dengan contoh di atas.
Unbox — Dokumen API | Unbox.im