Mengirim lewat API

API pengiriman menerima request POST dengan format v3 yang umum dipakai penyedia email transaksional, sehingga integrasi yang sudah ada umumnya cukup mengganti base URL dan kunci API.

Endpoint dan autentikasi

Kirim request POST ke https://api.gosent.net/v3/email/send dengan header kunci API:

X-Api-KeyCara yang direkomendasikan
Authorization: Bearer <key>Alternatif
api_key (field JSON)Alternatif, hanya bila header kosong

Kunci API dibuat dari dashboard (menu API Keys) dan berawalan api-. Bila tidak ada kredensial yang dikirim sama sekali, request ditolak 401. Kunci yang statusnya sandbox menghasilkan respons dengan field sandboxed: true dan pesannya tidak dikirim ke internet — dipakai untuk uji integrasi.

Field request utama

FieldWajibKeterangan
senderYaAlamat pengirim, mis. "Nama <anda@domain-anda.com>" — domain harus terverifikasi
toYaArray alamat penerima, 1–100
cc, bccTidakArray alamat; total to+cc+bcc maksimal 100
subjectTidakSubjek email
text_body, html_bodyMin. satuIsi pesan plain text dan/atau HTML
custom_headersTidakHeader tambahan, mis. Reply-To. Header teknis (From, To, DKIM-Signature, dst.) tidak boleh ditimpa
attachments, inlinesTidakLampiran base64 {filename, fileblob, mimetype}; total pesan maksimal 25 MB

Respons

Respons sukses berupa JSON dengan jumlah penerima yang berhasil dan gagal, termasuk alasan tiap kegagalan:

{
  "request_id": "aa253464-…",
  "data": {
    "succeeded": 2,
    "failed": 1,
    "failures": ["bad@example.com"],
    "failure_details": [
      {"recipient": "bad@example.com",
       "reason": "Invalid recipient (…).",
       "error_code": "INVALID_RECIPIENT"}
    ],
    "email_id": "8752a367…"}
}

Penerima yang melewati batas rate limit masuk failures dengan error_code RATE_LIMITED — coba lagi nanti untuk penerima tersebut. Batas kuota bulanan akun menghasilkan MONTHLY_LIMIT_EXCEEDED.

Contoh (curl)

curl -X POST https://api.gosent.net/v3/email/send \
  -H "X-Api-Key: api-KUNCI_ANDA" \
  -H "Content-Type: application/json" \
  -d '{
    "sender": "Nama <anda@domain-anda.com>",
    "to": ["penerima@example.com"],
    "subject": "Halo",
    "text_body": "Isi pesan."
  }'