Kirim email transaksional dari aplikasimu. Kelola identitas pengirim dan pantau pengiriman melalui Admin > Email di aplikasimu.
Setiap aplikasi Proyecta dapat mengirim email transaksional. Verifikasi identitas pengirim, lalu kirim dari kode aplikasimu — tanpa perlu akun penyedia email terpisah.
Bagian Email
Section titled “Bagian Email”Buka Admin > Email di builder — atau /admin di situs yang sudah kamu publikasikan. Bagian ini terdiri dari dua bagian:
| Bagian | Kegunaannya |
|---|---|
| Identities | Tambah dan verifikasi alamat email atau domain pengirim |
| Sent | Telusuri email yang telah dikirim beserta status pengirimannya (sent, delivered, bounced, dll.) |
Kamu bisa menambahkan identitas pengirim baru dan menelusuri riwayat pengiriman emailmu — semuanya tanpa menulis kode.
Dua langkah pengaturan
Section titled “Dua langkah pengaturan”- Buat dan verifikasi identitas pengirim (alamat email atau domain) di panel admin kamu
- Kirim — dari aplikasimu menggunakan
useSendEmail(), atau dari panel admin untuk kampanye
Kirim dari alamat bersama (@proyectamail.com)
Section titled “Kirim dari alamat bersama (@proyectamail.com)”Cara paling mudah adalah mengklaim satu alamat di domain pengiriman bersama milik Proyecta, @proyectamail.com. Alamat ini langsung terverifikasi begitu kamu membuatnya — platform sudah memiliki domain tersebut, sehingga kamu tidak perlu menyiapkan record DNS apa pun.
Kamu melakukan ini di bagian Emails pada panel admin aplikasimu: masukkan alamat yang kamu inginkan, dan alamat tersebut langsung siap digunakan.
Alamat tunggal hanya berfungsi di @proyectamail.com. Permintaan untuk domain lain (misalnya hello@myapp.com) akan ditolak — untuk mengirim dari domainmu sendiri, verifikasi seluruh domain tersebut (lihat di bawah). Setiap alamat bersama dicadangkan secara global, sehingga tidak ada dua aplikasi yang bisa mengirim sebagai pengirim @proyectamail.com yang sama.
Verifikasi domainmu sendiri (Pro)
Section titled “Verifikasi domainmu sendiri (Pro)”Untuk mengirim dari domainmu sendiri — dari alamat apa pun di domain tersebut (hello@, support@, noreply@, dll.) — verifikasi seluruh domain. Berbeda dengan alamat @proyectamail.com bersama, domain kustom tidak langsung terverifikasi.
Tambahkan domain di bagian Emails yang sama. Domain tersebut akan didaftarkan ke penyedia email dan menampilkan record SPF, DKIM, dan DMARC yang perlu kamu publikasikan di DNS-mu. Status pengirim akan berada di pending hingga record tersebut terpropagasi dan dikonfirmasi oleh penyedia, lalu berubah menjadi verified — gunakan tombol re-check setelah kamu mempublikasikan record tersebut.
Verifikasi domain berbasis DNS sudah sepenuhnya diimplementasikan — record dihasilkan oleh penyedia dan setiap re-check akan memeriksa ulang statusnya.
Di balik layar: Proyecta mengautentikasi domain pengirimmu melalui penyedia identitas email-nya (Resend) dan mengirimkan pesanmu melalui penyedia transaksionalnya (SendGrid). Kamu tidak perlu mengelola akun di salah satu dari keduanya.
Kirim email dari aplikasimu
Section titled “Kirim email dari aplikasimu”Dari halaman-halaman aplikasimu, kamu mengirim menggunakan hook useSendEmail(). Kamu memilih sebuah template dan meneruskan variabel; platform akan merender pesan dalam bahasa aplikasi dan mengirimkannya:
import { useSendEmail } from '@/hooks/useEmail.ts';
function ConfirmButton({ booking }) { const { send, isPending, error } = useSendEmail();
return ( <button disabled={isPending} onClick={() => send({ template: 'booking_confirmation', variables: { date: booking.date, service: booking.service }, }) } > Email me the details </button> );}Perhatikan apa yang tidak kamu teruskan: penerima, subjek, atau HTML. Setiap template mendeklarasikan audiensnya sendiri:
self(konfirmasi pemesanan/pesanan, sambutan) → alamat milik pengguna yang sedang login, diambil dari sesi mereka.owner(owner_alert) → admin aplikasimu.
Keduanya memerlukan sesi yang sudah login. Ini disengaja, bukan kekurangan: publishable key yang mengautentikasi panggilan tersebut dikirim di source halaman kamu, sehingga pengiriman ke penerima sembarang akan memungkinkan siapa saja menggunakan aplikasimu sebagai relay spam. Untuk memberi notifikasi kepada dirimu sendiri dari pengunjung anonim, gunakan formulir — pengiriman formulir sudah secara otomatis mengirim email ke pemilik dan mengkonfirmasi ke pengirim, dan jalur tersebut tidak bisa dipalsukan dari browser.
Error diterima sebagai PlatformApiError: 401 (memerlukan sesi), 403 (template tidak diaktifkan untuk aplikasi ini), 429 (rate limited — tampilkan pesannya dan tawarkan opsi coba lagi), 422 (tidak ada alamat yang tersimpan).
Pantau pengiriman
Section titled “Pantau pengiriman”Tab Sent di panel admin kamu mencantumkan semua yang telah dikirim aplikasimu beserta event pengiriman terbarunya — delivered, opened, clicked, bounced, complained — sehingga kamu biasanya tidak memerlukan kode sama sekali untuk ini.
Setiap entri membawa statusnya — sent, delivered, opened, clicked, bounced, atau complained — dan kamu bisa membuka pesan apa pun untuk membaca HTML dan teks persis yang dikirimkan. Jika pengiriman gagal, inilah tempat pertama yang perlu diperiksa.
Biarkan AI yang mengonfigurasinya
Section titled “Biarkan AI yang mengonfigurasinya”Kamu tidak perlu menulisnya secara manual:
"Verify hello@myapp.com as a sending identity.""Email the customer a confirmation after they finish booking.""After a successful checkout, send the customer their receipt.""Show me the last 20 emails we've sent and whether they bounced."
Catatan penting
Section titled “Catatan penting”- Alamat
fromharus berupa identitas yang sudah diverifikasi. Mengirim dengan alamat yang belum diverifikasi akan mengembalikan error. - Batas bulanan berlaku berdasarkan paket Proyecta kamu.
Segera hadir
Section titled “Segera hadir”- Template editor — desain template transaksional secara visual di builder
- Bulk/batch send endpoint untuk pengiriman massal