Deliverlies

Alamat Endpoint

Saat menggunakan REST API, pastikan pusat data yang dipilih sesuai dengan base URL yang digunakan.

POST/v1/mail/send

Pengiriman Reguler

URL

https://email.api.engagelab.cc/v1/mail/send
              
              https://email.api.engagelab.cc/v1/mail/send

            
Tampilkan blok kode ini di jendela mengambang

Content-Type:

Content-Type: application/json;charset=utf-8
              
              Content-Type: application/json;charset=utf-8

            
Tampilkan blok kode ini di jendela mengambang

Metode HTTP Request

POST
              
              POST

            
Tampilkan blok kode ini di jendela mengambang

Header Permintaan

Header Tipe Wajib Deskripsi
Authorization String ya Basic base64(api_user:api_key)

Parameter Permintaan

Parameter Tipe Wajib Deskripsi
from string ya Pengirim. Contoh: support@mail.engagelab.com, EngageLab Team<support@mail.engagelab.com>. Jika ingin menampilkan nama produk atau perusahaan, gunakan format Nama<email>.
to array[string] ya Penerima. Maksimal 100 alamat. Contoh: ["xjm@hotmail.com","xjm2@gmail.com"]
body object ya Pengaturan email
custom_args object tidak Field opsional kustom pelanggan. Maksimal 1KB. Kunci tidak boleh mengandung simbol ".".
request_id string tidak ID permintaan pengiriman; maksimal 128 karakter.

Body

Parameter Tipe Wajib Deskripsi
cc array[string] tidak Cc. Maksimal 100 alamat. Hanya berlaku jika send_mode=1.
bcc array[string] tidak Bcc. Maksimal 100 alamat. Hanya berlaku jika send_mode=1.
reply_to array[string] tidak Balasan ke. Maksimal 3 alamat; jika tidak diisi, balasan ke alamat from.
subject string ya Subjek. Maksimal 256 karakter; mendukung variabel, emoji.
content object ya Konten
html string * Konten html. Format text/html.
text string * Konten teks. Format text/plain.
preview_text string tidak Pratinjau konten.
vars object tidak Variabel. Maksimal 1MB; berlaku saat send_mode=0 atau send_mode=1.
dynamic_vars array[object] tidak Variabel template dinamis. Maksimal 1MB; berlaku saat send_mode=0 atau send_mode=1.
label_id string tidak ID label untuk pengiriman ini
label_name string tidak Nama label untuk pengiriman ini
headers object tidak Header. Maksimal 1KB.
attachments array[object] tidak Lampiran. Total ukuran tidak boleh melebihi 10MB.
content string ya Konten lampiran. Base64 encoding.
filename string ya Nama file lampiran, contoh: news.pdf
disposition string ya Nilai: attachment atau inline.
content_id string tidak Jika disposition=inline dan file gambar, harus diisi
settings object tidak Pengaturan pengiriman
send_mode int tidak Metode pengiriman. 0=terpisah; 1=broadcast; 2=daftar alamat. Default 0
return_email_id boolean tidak Apakah mengembalikan email ID, default true
sandbox boolean tidak Mode sandbox, default false. Jika true, email tidak dikirim, hanya validasi parameter
notification boolean tidak Tanda terima baca, default false. Tanda terima default ke from, harus digunakan dengan receiving route
open_tracking boolean tidak Aktifkan pelacakan terbuka, default sistem. Berlaku saat send_mode=0/1
click_tracking boolean tidak Aktifkan pelacakan klik, default sistem. Berlaku saat send_mode=0/1
unsubscribe_tracking boolean tidak Aktifkan pelacakan berhenti langganan, default sistem. Berlaku saat send_mode=0/1
unsubscribe_page_id array[int] tidak Halaman berhenti langganan kustom, default sistem. Berlaku saat send_mode=0/1

Tips:

  1. Jika send_mode=2, nilai to adalah nickname daftar alamat, maksimal 5. Dalam kasus ini, parameter cc dan bcc tidak berlaku.
  2. Html dan plain tidak boleh kosong bersamaan.
  3. Preview_text hanya berlaku jika html ada.
  4. Vars untuk penggantian variabel konten email. Format: json object {"varname": ["value1","value2"]}.
  5. dynamic_vars untuk template dinamis. Format: [{"varname1":"value1","varname2":"value2"}].
  6. label_id dan label_name, isi salah satu. Jika label_name tidak ada, sistem akan membuat otomatis. Jika keduanya diisi, label_name diabaikan.
  7. headers untuk kustomisasi header pesan. Format: json object. Kunci tidak boleh mengandung: DKIM-Signature, Received, Sender, Date, From, To, Reply-To, Cc, Bcc, Subject, Content-Type, Content-Transfer-Encoding, X-SENDCLOUD-UUID, X-SENDCLOUD-LOG, X-Remote-Web-IP, X-SMTPAPI, Return-Path, X-SENDCLOUD-LOG-NEW
  8. Jika disposition=inline, lampiran gambar akan dirender di body email sebagai gambar inline. content_id wajib diisi dan unik.
  9. custom_args akan disisipkan di header, data WebHook berikutnya akan dikembalikan ke Anda. Kunci tidak boleh mengandung simbol ".".
  10. request_id untuk mencegah pengiriman ganda, berlaku 1 jam.
  11. Ukuran email maksimal 70MB.

Contoh Permintaan

curl -X POST -H 'Content-Type: application/json; charset=utf-8' \ -H 'Authorization:Basic YXBpX3VzZXI6YXBpX2tleQ==' \ --data '{ "from": "EngageLab Newsletter <newsletter@mail.engagelab.com>", "to": ["111@qq.com", "222<222@qq.com>"], "body": { "cc": ["noreply@mail.engagelab.com"], "bcc": ["intern<intern@mail.engagelab.com>"], "reply_to": ["reply@mail.engagelab.com"], "subject": "%date% Newsletter ", "content": { "html": "<a href=\"https://www.engagelab.com\">Newsletter %kkk%</a>", "text": "Berita hari ini adalah %ttt%", "preview_text": "preview_text adalah ..." }, "vars": { }, "label_id": 100233, "label_name": "", "headers": {}, "attachments": [{ "content": "Konten attachment yang dienkode Base64", "type": "text/html", "filename": "Nama file attachment", "disposition": "inline | attachment", "content_id": "" }], "settings": { "send_mode": 0, "return_email_id": true, "sandbox": true, "notification": false, "open_tracking": true, "click_tracking": false, "unsubscribe_tracking": true, "unsubscribe_page_id": [1,2] } }, "custom_args": {}, "request_id": "" }' 'https://email.api.engagelab.cc/v1/mail/send'
              
              curl -X POST -H 'Content-Type: application/json; charset=utf-8' \
     -H 'Authorization:Basic YXBpX3VzZXI6YXBpX2tleQ==' \
     --data '{
  "from": "EngageLab Newsletter <newsletter@mail.engagelab.com>", 
  "to": ["111@qq.com", "222<222@qq.com>"],
  "body": {
      "cc": ["noreply@mail.engagelab.com"],                            
      "bcc": ["intern<intern@mail.engagelab.com>"],                  
      "reply_to": ["reply@mail.engagelab.com"],                         
      "subject": "%date% Newsletter ",                                       
      "content": {                                                     
        "html": "<a href=\"https://www.engagelab.com\">Newsletter %kkk%</a>", 
        "text": "Berita hari ini adalah %ttt%",                                      
        "preview_text": "preview_text adalah ..."                          
         },
      "vars": { },
      "label_id": 100233, 
      "label_name": "",
      "headers": {},
      "attachments": [{                                                
        "content": "Konten attachment yang dienkode Base64",     
        "type": "text/html",
        "filename": "Nama file attachment",            
        "disposition": "inline | attachment",                           
        "content_id": ""  
      }],
      "settings": {                 
        "send_mode": 0, 
        "return_email_id": true,  
        "sandbox": true,
        "notification": false,
        "open_tracking": true,                                           
        "click_tracking": false,                                         
        "unsubscribe_tracking": true,                              
        "unsubscribe_page_id": [1,2]
      }
  },
  "custom_args": {},           
  "request_id": "" 
}'  'https://email.api.engagelab.cc/v1/mail/send' 

            
Tampilkan blok kode ini di jendela mengambang

Contoh Nilai Balik

  • Pengiriman non-daftar alamat (send_mode=0 atau send_mode=1)

Respons-sukses

HTTP Status: 200

{ "email_ids":[ "1447054895514_15555555_32350_1350.sc-10_10_126_221-inbound0$111@qq.com", "1447054895514_15555555_32350_1350.sc-10_10_126_221-inbound1$222@qq.com"], "request_id":"" }
              
              {
"email_ids":[
      "1447054895514_15555555_32350_1350.sc-10_10_126_221-inbound0$111@qq.com",
      "1447054895514_15555555_32350_1350.sc-10_10_126_221-inbound1$222@qq.com"],
"request_id":""
}

            
Tampilkan blok kode ini di jendela mengambang

Respons-error

HTTP Status :400

{ "code": 30801, "message": "From tidak boleh kosong" }
              
              {
    "code": 30801,
    "message": "From tidak boleh kosong"
}

            
Tampilkan blok kode ini di jendela mengambang
  • Pengiriman daftar alamat (send_mode=2) Respons-sukses

HTTP Status: 200

{ "task_id":[102923], "request_id":"" }
              
              {
"task_id":[102923],
"request_id":""
}

            
Tampilkan blok kode ini di jendela mengambang

Respons-error

HTTP Status :400

{ "code": 30801, "message": "From tidak boleh kosong" }
              
              {
    "code": 30801,
    "message": "From tidak boleh kosong"
}

            
Tampilkan blok kode ini di jendela mengambang

Pengiriman Template

URL

https://email.api.engagelab.cc/v1/mail/sendtemplate
              
              https://email.api.engagelab.cc/v1/mail/sendtemplate

            
Tampilkan blok kode ini di jendela mengambang

Content-Type:

Content-Type: application/json; charset=utf-8
              
              Content-Type: application/json; charset=utf-8

            
Tampilkan blok kode ini di jendela mengambang

Metode HTTP Request

POST
              
              POST

            
Tampilkan blok kode ini di jendela mengambang

Header Permintaan

Header Tipe Wajib Deskripsi
Authorization String ya Basic base64(api_user:api_key)

Parameter Permintaan

Parameter Tipe Wajib Deskripsi
from string ya Pengirim. Contoh: support@mail.engagelab.com, EngageLab Team<support@mail.engagelab.com>. Jika ingin menampilkan nama produk atau perusahaan, gunakan format Nama<email>.
to array[string] ya Penerima. Maksimal 100 alamat. Contoh: ["xjm@hotmail.com","xjm2@gmail.com"]
body object ya Pengaturan email
custom_args object tidak Field opsional kustom pelanggan. Maksimal 1KB. Kunci tidak boleh mengandung simbol ".".
request_id string tidak ID permintaan pengiriman; maksimal 128 karakter.

Body

Parameter Tipe Wajib Deskripsi
cc array[string] tidak Cc. Maksimal 100 alamat. Hanya berlaku jika send_mode=1.
bcc array[string] tidak Bcc. Maksimal 100 alamat. Hanya berlaku jika send_mode=1.
reply_to array[string] tidak Balasan ke. Maksimal 3 alamat; jika tidak diisi, balasan ke alamat from.
subject string tidak Subjek. Maksimal 256 karakter; mendukung variabel, emoji.
template_invoke_name string ya Nama pemanggil template.
vars object tidak Variabel. Maksimal 1MB; berlaku saat send_mode=0 atau send_mode=1.
dynamic_vars array[object] tidak Variabel template dinamis. Maksimal 1MB; berlaku saat send_mode=0 atau send_mode=1.
label_id string tidak ID label untuk pengiriman ini
label_name string tidak Nama label untuk pengiriman ini
headers object tidak Header. Maksimal 1KB.
attachments array[object] tidak Lampiran. Total ukuran tidak boleh melebihi 10MB.
content string ya Konten lampiran. Base64 encoding.
filename string ya Nama file lampiran, contoh: news.pdf
disposition string ya Nilai: attachment atau inline.
content_id string tidak Jika disposition=inline dan file gambar, harus diisi
settings object tidak Pengaturan pengiriman
send_mode int tidak Metode pengiriman. 0=terpisah; 1=broadcast; 2=daftar alamat. Default 0
return_email_id boolean tidak Apakah mengembalikan email ID, default true
sandbox boolean tidak Mode sandbox, default false. Jika true, email tidak dikirim, hanya validasi parameter
notification boolean tidak Tanda terima baca, default false. Tanda terima default ke from, harus digunakan dengan receiving route
open_tracking boolean tidak Aktifkan pelacakan terbuka, default sistem. Berlaku saat send_mode=0/1
click_tracking boolean tidak Aktifkan pelacakan klik, default sistem. Berlaku saat send_mode=0/1
unsubscribe_tracking boolean tidak Aktifkan pelacakan berhenti langganan, default sistem. Berlaku saat send_mode=0/1
unsubscribe_page_id array[int] tidak Halaman berhenti langganan kustom, default sistem. Berlaku saat send_mode=0/1

Tips:

  1. Jika send_mode=2, nilai to adalah nickname daftar alamat, maksimal 5. Dalam kasus ini, parameter cc dan bcc tidak berlaku.
  2. Vars untuk penggantian variabel konten email. Format: json object {"varname": ["value1","value2"]}.
  3. dynamic_vars untuk template dinamis. Format: [{"varname1":"value1","varname2":"value2"}].
  4. label_id dan label_name, isi salah satu. Jika label_name tidak ada, sistem akan membuat otomatis. Jika keduanya diisi, label_name diabaikan.
  5. headers untuk kustomisasi header pesan. Format: json object. Kunci tidak boleh mengandung: DKIM-Signature, Received, Sender, Date, From, To, Reply-To, Cc, Bcc, Subject, Content-Type, Content-Transfer-Encoding, X-SENDCLOUD-UUID, X-SENDCLOUD-LOG, X-Remote-Web-IP, X-SMTPAPI, Return-Path, X-SENDCLOUD-LOG-NEW
  6. Jika disposition=inline, lampiran gambar akan dirender di body email sebagai gambar inline. content_id wajib diisi dan unik.
  7. custom_args akan disisipkan di header, data WebHook berikutnya akan dikembalikan ke Anda. Kunci tidak boleh mengandung simbol ".".
  8. request_id untuk mencegah pengiriman ganda, berlaku 1 jam.
  9. Ukuran email maksimal 70MB.

Contoh Nilai Balik

Isi template (month_bill)

Dear %name%: Halo! Jumlah konsumsi Anda bulan ini adalah: %money% .
              
              Dear %name%:
  Halo! Jumlah konsumsi Anda bulan ini adalah: %money% .

            
Tampilkan blok kode ini di jendela mengambang

Pengiriman reguler (memanggil template month_bill)

curl -X POST "https://email.api.engagelab.cc/v1/mail/sendtemplate" \ --header "Authorization: Basic <<YOUR_API_KEY_HERE>>" \ --header "Content-Type: application/json" \ --data '{ "from": "support@mail.engagelab.com", "to": ["xjmfc@126.com", "xjmfcme@gmail.com"], "body": { "subject": "test email", "template_invoke_name": "month_bill", "label_id": 10143, "label_name": "", "vars": { "%name%": ["jack", "jone"], "%money%": ["30", "50"] }, "headers": { "userdefine-tag-location": "us", "userdefine-tag-user": "fashion" }, "attachments": [{ "content": "Konten attachment yang dienkode Base64", "filename": "Nama file attachment", "disposition": "inline | attachment", "content_id": "" }], "settings": { "send_mode": 0, "return_email_id": true, "sandbox": true, "notification": false, "open_tracking": true, "click_tracking": false, "unsubscribe_tracking": true, "unsubscribe_page_id": [1, 2] } }, "custom_args": {}, "request_id": "" }'
              
              curl -X POST "https://email.api.engagelab.cc/v1/mail/sendtemplate" \
--header "Authorization: Basic <<YOUR_API_KEY_HERE>>" \
--header "Content-Type: application/json" \
--data '{
    "from": "support@mail.engagelab.com",
    "to": ["xjmfc@126.com", "xjmfcme@gmail.com"],
    "body": {
        "subject": "test email",
        "template_invoke_name": "month_bill",
        "label_id": 10143,
        "label_name": "",
        "vars": {
            "%name%": ["jack", "jone"],
            "%money%": ["30", "50"]
        },
        "headers": {
            "userdefine-tag-location": "us",
            "userdefine-tag-user": "fashion"
        },
        "attachments": [{
            "content": "Konten attachment yang dienkode Base64",
            "filename": "Nama file attachment",
            "disposition": "inline | attachment",
            "content_id": ""
        }],
        "settings": {
            "send_mode": 0,
            "return_email_id": true,
            "sandbox": true,
            "notification": false,
            "open_tracking": true,
            "click_tracking": false,
            "unsubscribe_tracking": true,
            "unsubscribe_page_id": [1, 2]
        }
    },
    "custom_args": {},
    "request_id": ""
}'

            
Tampilkan blok kode ini di jendela mengambang

#xjmfc@126.com menerima: Dear jack: Halo! Jumlah konsumsi Anda bulan ini adalah: 30 . #---------------------------------------------------

xjmfcme@gmail.com menerima:

Dear jone: Halo! Jumlah konsumsi Anda bulan ini adalah: 50 .

Respons-sukses

HTTP Status: 200

{ "email_ids":[ "1447054895514_15555555_32350_1350.sc-10_10_126_221-inbound0$xjmfc@126.com", "1447054895514_15555555_32350_1350.sc-10_10_126_221-inbound1$xjmfcme@gmail.com"], "request_id":"" }
              
              {
"email_ids":[
      "1447054895514_15555555_32350_1350.sc-10_10_126_221-inbound0$xjmfc@126.com",
      "1447054895514_15555555_32350_1350.sc-10_10_126_221-inbound1$xjmfcme@gmail.com"],
"request_id":""
}

            
Tampilkan blok kode ini di jendela mengambang

Respons-error

HTTP Status :404

not found
              
              not found

            
Tampilkan blok kode ini di jendela mengambang

Pengiriman reguler (memanggil template month_bill, kirim ke daftar alamat users@maillist.email.engagelab.com)

curl -X POST "https://email.api.engagelab.cc/v1/mail/sendtemplate" \ --header "Authorization: Basic <<YOUR_API_KEY_HERE>>" \ --header "Content-Type: application/json" \ --data '{ "from":"admin@engaelab.com", "to":["users@maillist.email.engagelab.com"], "body":{ "subject":"bill", "template_invoke_name":"month_bill", "label":"gangz" }}'
              
              curl -X POST "https://email.api.engagelab.cc/v1/mail/sendtemplate" \
--header "Authorization: Basic <<YOUR_API_KEY_HERE>>" \
--header "Content-Type: application/json" \
--data '{
        "from":"admin@engaelab.com",
        "to":["users@maillist.email.engagelab.com"],
        "body":{
            "subject":"bill",
             "template_invoke_name":"month_bill",
             "label":"gangz"
}}'

            
Tampilkan blok kode ini di jendela mengambang

Respons-sukses

HTTP Status: 200

{ "task_id":[102923], "request_id":"" }
              
              {
"task_id":[102923],
"request_id":""
}

            
Tampilkan blok kode ini di jendela mengambang

Respons-error

HTTP Status :404

not found
              
              not found

            
Tampilkan blok kode ini di jendela mengambang

Kirim Kalender Rapat

URL

https://email.api.engagelab.cc/v1/mail/sendcalendar
              
              https://email.api.engagelab.cc/v1/mail/sendcalendar

            
Tampilkan blok kode ini di jendela mengambang

Content-Type:

Content-Type: application/json; charset=utf-8
              
              Content-Type: application/json; charset=utf-8

            
Tampilkan blok kode ini di jendela mengambang

Metode HTTP Request

POST
              
              POST

            
Tampilkan blok kode ini di jendela mengambang

Header Permintaan

Header Tipe Wajib Deskripsi
Authorization String ya Basic base64(apiUser:apiKey)

Parameter Permintaan

Parameter Tipe Wajib Deskripsi
from string ya Pengirim. Contoh: support@mail.engagelab.com, EngageLab Team<support@mail.engagelab.com>. Jika ingin menampilkan nama produk atau perusahaan, gunakan format Nama<email>.
to array[string] ya Penerima. Maksimal 100 alamat. Contoh: ["xjm@hotmail.com","xjm2@gmail.com"]
body object ya Pengaturan email
custom_args object tidak Field opsional kustom pelanggan. Maksimal 1KB. Kunci tidak boleh mengandung simbol ".".
request_id string tidak ID permintaan pengiriman; maksimal 128 karakter.

Body

Parameter Tipe Wajib Deskripsi
cc array[string] tidak Cc. Maksimal 100 alamat. Hanya berlaku jika send_mode=1.
bcc array[string] tidak Bcc. Maksimal 100 alamat. Hanya berlaku jika send_mode=1.
reply_to array[string] tidak Balasan ke. Maksimal 3 alamat; jika tidak diisi, balasan ke alamat from.
subject string ya Subjek. Maksimal 256 karakter; mendukung variabel, emoji.
content object ya Konten
html string * Konten html. Format text/html.
text string * Konten teks. Format text/plain.
preview_text string tidak Pratinjau konten.
vars object tidak Variabel. Maksimal 1MB; berlaku saat send_mode=0 atau send_mode=1.
dynamic_vars array[object] tidak Variabel template dinamis. Maksimal 1MB; berlaku saat send_mode=0 atau send_mode=1.
label_id string tidak ID label untuk pengiriman ini
label_name string tidak Nama label untuk pengiriman ini
headers object tidak Header. Maksimal 1KB.
attachments array[object] tidak Lampiran. Total ukuran tidak boleh melebihi 10MB.
content string ya Konten lampiran. Base64 encoding.
filename string ya Nama file lampiran, contoh: news.pdf
disposition string ya Nilai: attachment atau inline.
content_id string ya Jika disposition=inline dan file gambar, harus diisi
settings object tidak Pengaturan pengiriman
send_mode int tidak Metode pengiriman. 0=terpisah; 1=broadcast. Default 0
return_email_id boolean tidak Apakah mengembalikan email ID, default true
sandbox boolean tidak Mode sandbox, default false. Jika true, email tidak dikirim, hanya validasi parameter
notification boolean tidak Tanda terima baca, default false. Tanda terima default ke from, harus digunakan dengan receiving route
open_tracking boolean tidak Aktifkan pelacakan terbuka, default sistem. Hanya berlaku saat send_mode=0
click_tracking boolean tidak Aktifkan pelacakan klik, default sistem. Hanya berlaku saat send_mode=0
unsubscribe_tracking boolean tidak Aktifkan pelacakan berhenti langganan, default sistem. Hanya berlaku saat send_mode=0
unsubscribe_page_id array[int] tidak Halaman berhenti langganan kustom, default sistem. Hanya berlaku saat send_mode=0
calendar object ya Pengaturan Kalender
time_zone_id string ya Contoh: Daftar zona waktu kalender
start_time string ya Waktu mulai rapat. Format: yyyy-MM-dd HH:mm:ss
end_time string ya Waktu akhir rapat. Format: yyyy-MM-dd HH:mm:ss
title string ya Judul rapat. Maksimal 256 karakter.
organizer object ya Penyelenggara
name string tidak Nama penyelenggara. Maksimal 64 karakter.
email string ya Email penyelenggara
location string ya Lokasi. Maksimal 128 karakter.
description string tidak Deskripsi rapat. Maksimal 1024 karakter.
participators array[object] tidak Peserta
name string tidak Nama peserta. Maksimal 64 karakter.
email string ya Email peserta
alarm_min_before integer tidak Pengingat menit sebelum rapat. Rentang 1~60.
action object tidak Operasi kalender
name string tidak Nama operasi. Nilai: create, update, cancel. Default create.
uid string tidak Diisi saat update dan cancel. Nilai uid dikembalikan oleh API saat membuat email kalender.

Tips:

  1. Html dan plain tidak boleh kosong bersamaan.
  2. Preview_text hanya berlaku jika html ada.
  3. Vars untuk penggantian variabel konten email. Format: json object {"varname": ["value1","value2"]}.
  4. dynamic_vars untuk template dinamis. Format: [{"varname1":"value1","varname2":"value2"}].
  5. label_id dan label_name, isi salah satu. Jika label_name tidak ada, sistem akan membuat otomatis. Jika keduanya diisi, label_name diabaikan.
  6. headers untuk kustomisasi header pesan. Format: json object. Kunci tidak boleh mengandung: DKIM-Signature, Received, Sender, Date, From, To, Reply-To, Cc, Bcc, Subject, Content-Type, Content-Transfer-Encoding, X-SENDCLOUD-UUID, X-SENDCLOUD-LOG, X-Remote-Web-IP, X-SMTPAPI, Return-Path, X-SENDCLOUD-LOG-NEW
  7. Jika disposition=inline, lampiran gambar akan dirender di body email sebagai gambar inline. content_id wajib diisi dan unik.
  8. custom_args akan disisipkan di header, data WebHook berikutnya akan dikembalikan ke Anda. Kunci tidak boleh mengandung simbol ".".
  9. request_id untuk mencegah pengiriman ganda, berlaku 1 jam.
  10. Ukuran email maksimal 70MB.

Contoh Permintaan

curl -X POST 'https://email.api.engagelab.cc/v1/mail/sendcalendar' \ --header 'Authorization: Basic MTIyNF94am06MTJkOGIwODVlNjZhZGUyMmNlNGIwOWI5NjQ2YWQ1ODE=' \ --header 'Content-Type: application/json' \ --data '{ "from": "EngageLab Newsletter <newsletter@mail.engagelab.com>", "to": ["111@qq.com", "222<222@qq.com>"], "body": { "cc": ["noreply@mail.engagelab.com"], "bcc": ["intern<intern@mail.engagelab.com>"], "reply_to": ["reply@mail.engagelab.com"], "subject": "%date% Newsletter ", "content": { "html": "<a href=\"https://www.engagelabe.com\">Newsletter %kkk%</a>", "text": "Newsletter %ttt%", "preview_text": "preview_text adalah ..." }, "label_id": "1233", "label_name": "", "headers": { "userdefine-tag-location": "us", "userdefine-tag-user": "fashion" }, "settings": { "send_mode": 0, "return_email_id": true, "sandbox": true, "notification": false, "open_tracking": true, "click_tracking": false, "unsubscribe_tracking": true, "unsubscribe_page_id": [1,2] }, "calendar": { "time_zone_id":"America/New_York", "start_time": "2020-12-10 10:00:00", "end_time": "2020-12-10 12:00:00", "title": "judul rapat", "organizer": { "name": "David", "email": "david@mail.engagelab.com" }, "location": "ruang208", "description": "halo", "alarm_min_before": 5, "participators": [ { "name": "p1", "email": "p1@engagelab.org" }, { "email": "p2@engagelab.org", "name": "p2"}, { "email": "p3@engagelab.org"} ], "action": { "name": "create", "uid": "329r239h239888" } } }, "custom_args": {}, "request_id": "" }'
              
              curl -X POST 'https://email.api.engagelab.cc/v1/mail/sendcalendar' \
--header 'Authorization: Basic MTIyNF94am06MTJkOGIwODVlNjZhZGUyMmNlNGIwOWI5NjQ2YWQ1ODE=' \
--header 'Content-Type: application/json' \
--data '{
  "from": "EngageLab Newsletter <newsletter@mail.engagelab.com>",       
  "to": ["111@qq.com", "222<222@qq.com>"],    
  "body": {
      "cc": ["noreply@mail.engagelab.com"],       
      "bcc": ["intern<intern@mail.engagelab.com>"],         
      "reply_to": ["reply@mail.engagelab.com"], 
      "subject": "%date% Newsletter ", 
      "content": { 
        "html": "<a href=\"https://www.engagelabe.com\">Newsletter %kkk%</a>", 
        "text": "Newsletter %ttt%",   
        "preview_text": "preview_text adalah ..." 
      },
      "label_id": "1233",  
      "label_name": "",
      "headers": {                   
        "userdefine-tag-location": "us",  
        "userdefine-tag-user": "fashion"
      },
      "settings": {                                                    
        "send_mode": 0,        
        "return_email_id": true,     
        "sandbox": true,        
        "notification": false, 
        "open_tracking": true,                          
        "click_tracking": false,                       
        "unsubscribe_tracking": true,  
        "unsubscribe_page_id": [1,2]
      },
      "calendar": {
        "time_zone_id":"America/New_York",
        "start_time": "2020-12-10 10:00:00",  
        "end_time": "2020-12-10 12:00:00",  
        "title": "judul rapat",                                              
        "organizer": {      
          "name": "David",        
          "email": "david@mail.engagelab.com"                    
        },
        "location": "ruang208",                                         
        "description": "halo",                                        
        "alarm_min_before": 5,                                         
        "participators": [  
          { 
            "name": "p1",                                                
            "email": "p1@engagelab.org"
          },                      
          { "email": "p2@engagelab.org", "name": "p2"},
          { "email": "p3@engagelab.org"}
        ],
        "action": {                                                      
          "name": "create",   
          "uid": "329r239h239888"                                    
        }
      }
  },
  "custom_args": {},           
  "request_id": "" 
}'

            
Tampilkan blok kode ini di jendela mengambang

Respons-sukses

HTTP Status: 200

{ "uid": "20230103T065922Z-uidGen@PC201503200437", "email_ids": [ "1672729159224_15_2942_8497.sc-10_2_226_96-test0$111@qq.com", "1672729159224_15_2942_8497.sc-10_2_226_96-test1$222@qq.com" ], "request_id": "" }
              
              {
    "uid": "20230103T065922Z-uidGen@PC201503200437",
    "email_ids": [
        "1672729159224_15_2942_8497.sc-10_2_226_96-test0$111@qq.com",
        "1672729159224_15_2942_8497.sc-10_2_226_96-test1$222@qq.com"
    ],
    "request_id": ""
}

            
Tampilkan blok kode ini di jendela mengambang

Respons-error

HTTP Status :400

{ "code": 30801, "message": "From tidak boleh kosong" }
              
              {
    "code": 30801,
    "message": "From tidak boleh kosong"
}

            
Tampilkan blok kode ini di jendela mengambang

Pengiriman MIME

URL

https://email.api.engagelab.cc/v1/mail/send_mime
              
              https://email.api.engagelab.cc/v1/mail/send_mime

            
Tampilkan blok kode ini di jendela mengambang

Content-Type:

Content-Type: application/json;charset=utf-8
              
              Content-Type: application/json;charset=utf-8

            
Tampilkan blok kode ini di jendela mengambang

Metode HTTP Request

POST
              
              POST

            
Tampilkan blok kode ini di jendela mengambang

Header Permintaan

Header Tipe Wajib Deskripsi
Authorization String ya Basic base64(api_user:api_key)

Parameter Permintaan

Parameter Tipe Wajib Deskripsi
from string tidak Pengirim. Contoh: support@mail.engagelab.com, EngageLab Team<support@mail.engagelab.com>. Jika ingin menampilkan nama produk atau perusahaan, gunakan format Nama<email>.
to array[string] tidak Penerima. Maksimal 100 alamat. Contoh: ["xjm@hotmail.com","xjm2@gmail.com"]
body object ya Pengaturan email
custom_args object tidak Field opsional kustom pelanggan. Maksimal 1KB. Kunci tidak boleh mengandung simbol ".".
request_id string tidak ID permintaan pengiriman; maksimal 128 karakter.

Body

Parameter Tipe Wajib Deskripsi
cc array[string] tidak Cc. Maksimal 100 alamat. Hanya berlaku jika send_mode=1.
bcc array[string] tidak Bcc. Maksimal 100 alamat. Hanya berlaku jika send_mode=1.
reply_to array[string] tidak Balasan ke. Maksimal 3 alamat; jika tidak diisi, balasan ke alamat from.
subject string tidak Subjek. Maksimal 256 karakter; mendukung variabel, emoji.
content object ya Body email
raw_message string ya Konten email. Format harus MIME.
vars object tidak Variabel. Maksimal 1MB; berlaku saat send_mode=0 atau send_mode=1.
label_id string tidak ID label untuk pengiriman ini
label_name string tidak Nama label untuk pengiriman ini
headers object tidak Header email. Maksimal 1KB.
settings object tidak Pengaturan pengiriman
send_mode int tidak Metode pengiriman. 0=terpisah; 1=broadcast. Nilai to adalah alamat daftar alamat. Default 0
return_email_id boolean tidak Apakah mengembalikan email ID, default true
sandbox boolean tidak Mode sandbox, default false. Jika true, email tidak dikirim, hanya validasi parameter
notification boolean tidak Tanda terima baca, default false. Tanda terima default ke from, harus digunakan dengan receiving route
open_tracking boolean tidak Aktifkan pelacakan terbuka, default sistem. Berlaku saat send_mode=0/1
click_tracking boolean tidak Aktifkan pelacakan klik, default sistem. Berlaku saat send_mode=0/1
unsubscribe_tracking boolean tidak Aktifkan pelacakan berhenti langganan, default sistem. Berlaku saat send_mode=0/1
unsubscribe_page_id array[int] tidak Halaman berhenti langganan kustom, default sistem. Berlaku saat send_mode=0/1

Catatan:

  1. vars untuk penggantian variabel konten email, format: JSON object {"varname":["value1","value2"]}.
  2. label_id atau label_name, hanya salah satu yang berlaku. Jika keduanya diisi, label_id yang digunakan. Jika label_name tidak ada, sistem otomatis membuatnya.
  3. headers untuk kustomisasi header email, format: JSON object. Kunci tidak boleh mengandung: DKIM-Signature, Received, Sender, Date, From, To, Reply-To, Cc, Bcc, Subject, Content-Type, Content-Transfer-Encoding, X-SENDCLOUD-UUID, X-SENDCLOUD-LOG, X-Remote-Web-IP, X-SMTPAPI, Return-Path, X-SENDCLOUD-LOG-NEW
  4. custom_args adalah konten kustom yang didefinisikan pelanggan, disematkan di header email; akan dikembalikan ke pelanggan pada data WebHook berikutnya.
  5. request_id untuk mencegah pengiriman ganda, berlaku 1 jam.
  6. Ukuran email maksimal 70MB.

Contoh Permintaan

curl -X POST -H 'Content-Type: application/json; charset=utf-8' \ -H 'Authorization: YXBpX3VzZXI6YXBpX2tleQ==' \ --data '{ "from": "EngageLab Newsletter <newsletter@mail.engagelab.com>", "to": ["111@qq.com", "222<222@qq.com>"], "body": { "reply_to": ["reply@mail.engagelab.com"], "subject": "%date% Newsletter ", "content": { "raw_message": "Date: Fri, 8 Aug 2025 18:33:00 +0800 (CST)\r\nFrom: TEST <test@trip.com>\r\nReply-To: test_reply@trip.com\r\nTo: fan_tang@trip.com\r\nMessage-ID:....... ", }, "vars": { }, "label_id": 100233, "headers": {}, "settings": { "send_mode": 0, "return_email_id": true, "sandbox": false, "notification": false, "open_tracking": true, "click_tracking": false, "unsubscribe_tracking": true, "unsubscribe_page_id": [1,2] } }, "custom_args": {}, "request_id": "" }' 'https://email.api.engagelab.cc/v1/mail/send_mime'
              
              curl -X POST -H 'Content-Type: application/json; charset=utf-8' \
     -H 'Authorization: YXBpX3VzZXI6YXBpX2tleQ==' \
     --data '{
  "from": "EngageLab Newsletter <newsletter@mail.engagelab.com>", 
  "to": ["111@qq.com", "222<222@qq.com>"],
  "body": {          
      "reply_to": ["reply@mail.engagelab.com"],                         
      "subject": "%date% Newsletter ",                                       
      "content": {                                                     
        "raw_message": "Date: Fri, 8 Aug 2025 18:33:00 +0800 (CST)\r\nFrom: TEST <test@trip.com>\r\nReply-To: test_reply@trip.com\r\nTo: fan_tang@trip.com\r\nMessage-ID:....... ",         
         },
      "vars": { },
      "label_id": 100233,
      "headers": {},
      "settings": {                 
        "send_mode": 0, 
        "return_email_id": true,  
        "sandbox": false,
        "notification": false,
        "open_tracking": true,                                           
        "click_tracking": false,                                         
        "unsubscribe_tracking": true,                              
        "unsubscribe_page_id": [1,2]
      }
  },
  "custom_args": {},           
  "request_id": "" 
}'  'https://email.api.engagelab.cc/v1/mail/send_mime' 

            
Tampilkan blok kode ini di jendela mengambang

Contoh Respons

Respons-sukses

HTTP Status: 200

{ "email_ids":[ "1447054895514_15555555_32350_1350.sc-10_10_126_221-inbound0$111@qq.com", "1447054895514_15555555_32350_1350.sc-10_10_126_221-inbound1$222@qq.com"], "request_id":null }
              
              {
"email_ids":[
      "1447054895514_15555555_32350_1350.sc-10_10_126_221-inbound0$111@qq.com",
      "1447054895514_15555555_32350_1350.sc-10_10_126_221-inbound1$222@qq.com"],
"request_id":null
}

            
Tampilkan blok kode ini di jendela mengambang

Respons-error

HTTP Status :400

{ "code": 30893, "message": "custom_args harus dalam format json" }
              
              {
    "code": 30893,
    "message": "custom_args harus dalam format json"
}

            
Tampilkan blok kode ini di jendela mengambang
icon
Hubungi Sales