X-SMTPAPI Bidang Ekstensi

X-SMTPAPI adalah metode personalisasi email yang disediakan EngageLab untuk pengembang. EngageLab akan membaca informasi pada header dengan key X-SMTPAPI. Jika header ini ditemukan, EngageLab akan mengurai value-nya untuk mengubah cara pemrosesan email. Pengembang dapat menggunakan bidang ini baik saat mengakses melalui SMTP maupun API.

Akses API:

x_smtpapi = { "to": ["d@hotmail.com",'i@hotmail.com'], "sub": { "%name%": ['jack', 'rose'], "%money%": ['199', '299'], }, } params['xsmtpapi'] = simplejson.dumps(x_smtpapi)
              
              x_smtpapi = {
    "to": ["d@hotmail.com",'i@hotmail.com'],
    "sub": {
        "%name%": ['jack', 'rose'],
        "%money%": ['199', '299'],
    },
}

params['xsmtpapi'] = simplejson.dumps(x_smtpapi)

            
Tampilkan blok kode ini di jendela mengambang

Akses SMTP:

x_smtpapi = { "to": ["d@hotmail.com",'i@hotmail.com'], "sub": { "%name%": ['jack', 'rose'], "%money%": ['199', '299'], }, } msg['X-SMTPAPI'] = Header(base64.b64encode(simplejson.dumps(x_smtpapi)))
              
              x_smtpapi = {
    "to": ["d@hotmail.com",'i@hotmail.com'],
    "sub": {
        "%name%": ['jack', 'rose'],
        "%money%": ['199', '299'],
    },
}

msg['X-SMTPAPI'] = Header(base64.b64encode(simplejson.dumps(x_smtpapi)))

            
Tampilkan blok kode ini di jendela mengambang
Server SMTP akan memeriksa format header dengan **key** `X-SMTPAPI` pada email. Jika format tidak sesuai, akan muncul error `xsmtpapi error`. Perhatian: 1. Saat menggunakan SMTP, X-SMTPAPI harus menjadi header terakhir. Jika tidak, dapat menyebabkan error 'xsmtpapi error' 2. Saat menggunakan SMTP, x-smtpapi harus dienkode dengan Base64. Jika tidak, setelah permintaan SMTP berhasil, EngageLab akan menolak dan menilai email tidak valid - `worker: invalid XSMTP-API` 3. Saat menggunakan API, Anda bisa langsung mengirim string JSON tanpa encoding Base64 4. Panjang total X-SMTPAPI tidak boleh melebihi 1MB
              
              Server SMTP akan memeriksa format header dengan **key** `X-SMTPAPI` pada email. Jika format tidak sesuai, akan muncul error `xsmtpapi error`.
Perhatian:
1. Saat menggunakan SMTP, X-SMTPAPI harus menjadi header terakhir. Jika tidak, dapat menyebabkan error 'xsmtpapi error'
2. Saat menggunakan SMTP, x-smtpapi harus dienkode dengan Base64. Jika tidak, setelah permintaan SMTP berhasil, EngageLab akan menolak dan menilai email tidak valid - `worker: invalid XSMTP-API`
3. Saat menggunakan API, Anda bisa langsung mengirim string JSON tanpa encoding Base64
4. Panjang total X-SMTPAPI tidak boleh melebihi 1MB

            
Tampilkan blok kode ini di jendela mengambang

Struktur dan penggunaan string JSON pada value dijelaskan di bawah ini:

to berisi array alamat penerima untuk menentukan siapa saja penerima email.

{ "to": ["ben@engagelab.com", "joe@engagelab.com"] }
              
                  {
        "to": ["ben@engagelab.com", "joe@engagelab.com"]
    }

            
Tampilkan blok kode ini di jendela mengambang

Catatan:

  • to di sini akan menimpa parameter penerima to
  • Jumlah penerima to tidak boleh lebih dari 1000
  • Jika header email kurang dari 1MB, tidak ada tindakan khusus
  • Jika header email lebih dari 1MB, akan diperiksa satu per satu berdasarkan jumlah alamat. Jika kurang dari 10KB, email bisa dikirim. Jika lebih dari 10KB, email tidak bisa dikirim

sub adalah array asosiatif di mana key adalah variabel dan value adalah array nilai pengganti.

Penjelasan: setiap "variabel" sesuai dengan "array nilai pengganti". Saat mengganti isi email, setiap "Penerima" akan mendapatkan nilai variabel sesuai urutan pada "array penerima".

Contoh:

# Isi email Yth. %name%: Halo! Jumlah konsumsi Anda bulan ini: %money% . #--------------------------------------------------- # X-SMTPAPI { "to": ["ben@engagelab.com", "joe@engagelab.com"], "sub": { "%name%": ["Ben", "Joe"], "%money%":[288, 497] } } #--------------------------------------------------- # ben@engagelab.com akan menerima: Yth. Ben: Halo! Jumlah konsumsi Anda bulan ini: 288 . #--------------------------------------------------- # joe@engagelab.com akan menerima: Yth. Joe: Halo! Jumlah konsumsi Anda bulan ini: 497 .
              
              # Isi email

Yth. %name%:

    Halo! Jumlah konsumsi Anda bulan ini: %money% .

#---------------------------------------------------

# X-SMTPAPI

{
"to": ["ben@engagelab.com", "joe@engagelab.com"],
"sub":
{
"%name%": ["Ben", "Joe"],
"%money%":[288, 497]
}
}

#---------------------------------------------------

# ben@engagelab.com akan menerima:

Yth. Ben:

    Halo! Jumlah konsumsi Anda bulan ini: 288 .

#---------------------------------------------------

# joe@engagelab.com akan menerima:

Yth. Joe:

    Halo! Jumlah konsumsi Anda bulan ini: 497 .

            
Tampilkan blok kode ini di jendela mengambang

apps adalah array asosiatif berisi nama aplikasi (Unsubscribe, Open, Click) beserta pengaturannya. Pengaturan ini akan menimpa pengaturan pada akun pengguna.

x_smtpapi = { "to": ["xxx@qq.com"], "sub": {"%name%": ["Joe"]}, "filters": { "subscription_tracking": { # Pelacakan berhenti berlangganan "settings": { "enable": "1" } }, "open_tracking": { # Pelacakan email dibuka "settings": { "enable": "1" } }, "click_tracking": { # Pelacakan klik "settings": { "enable": "1" } } } }
              
              x_smtpapi =
{

    "to": ["xxx@qq.com"],
    "sub": {"%name%": ["Joe"]},
    "filters": {
    "subscription_tracking": { # Pelacakan berhenti berlangganan
    "settings": { "enable": "1" }
    },
    "open_tracking": { # Pelacakan email dibuka
    "settings": { "enable": "1" }
    },
    "click_tracking": { # Pelacakan klik
    "settings": { "enable": "1" }
    }
    }
}

            
Tampilkan blok kode ini di jendela mengambang

page_id

  • Page_id sesuai dengan field ID dari halaman berhenti berlangganan yang dibuat di "Pengaturan" - "Unsubscribe" - "Halaman Unsubscribe" pada konsol EngageLab
  • Pelanggan harus membuat halaman berhenti berlangganan terlebih dahulu di konsol EngageLab sebelum mengirim, lalu pada page_id diatur ke ID yang sesuai
  • Kirim melalui parameter page_id. Nilai diatur sebagai ID halaman berhenti berlangganan. Maka tautan dan halaman unsubscribe akan menggunakan bahasa dan gaya yang sudah dikonfigurasi
  • Prioritas parameter page_id lebih tinggi dibanding pengaturan default halaman unsubscribe pada API saat pengiriman
  • Mendukung bentuk array untuk menentukan halaman unsubscribe, jumlahnya harus sama dengan jumlah to di xsmtpapi. Jika tidak sama, maka akan digunakan default page_id pada apiUser tersebut.

Contoh:

x_smtpapi = { "to": ["xxx@qq.com", "xxx@hotmail.com", "xxx@gmail.com"], "sub":{"%name%": ["Joe", "Ben", "Michael"]}, "settings": { "unsubscribe": {"page_id": [1, 2, 3]} } }
              
              x_smtpapi =
{
    "to": ["xxx@qq.com", "xxx@hotmail.com", "xxx@gmail.com"],
    "sub":{"%name%": ["Joe", "Ben", "Michael"]},
    "settings": 
    {
        "unsubscribe": 
            {"page_id": [1, 2, 3]}
    }
}

            
Tampilkan blok kode ini di jendela mengambang
icon
Hubungi Sales