All Products
Search
Document Center

Direct Mail:SingleSendMail

Last Updated:Aug 18, 2026

Mengirim satu email.

Coba sekarang

Coba API ini di OpenAPI Explorer tanpa perlu penandatanganan manual. Panggilan yang berhasil akan secara otomatis menghasilkan contoh kode SDK sesuai dengan parameter Anda. Unduh kode tersebut dengan kredensial bawaan yang aman untuk penggunaan lokal.

Test

RAM authorization

Tabel berikut menjelaskan otorisasi yang diperlukan untuk memanggil API ini. Anda dapat menentukannya dalam kebijakan Resource Access Management (RAM). Kolom pada tabel dijelaskan sebagai berikut:

  • Action: Aksi yang dapat digunakan dalam elemen Action pada pernyataan kebijakan izin RAM untuk memberikan izin guna melakukan operasi tersebut.

  • API: API yang dapat Anda panggil untuk melakukan aksi tersebut.

  • Access level: Tingkat akses yang telah ditentukan untuk setiap API. Nilai yang valid: create, list, get, update, dan delete.

  • Resource type: Jenis resource yang mendukung otorisasi untuk melakukan aksi tersebut. Ini menunjukkan apakah aksi tersebut mendukung izin tingkat resource. Resource yang ditentukan harus kompatibel dengan aksi tersebut. Jika tidak, kebijakan tersebut tidak akan berlaku.

    • Untuk API dengan izin tingkat resource, jenis resource yang diperlukan ditandai dengan tanda bintang (*). Tentukan Nama Sumber Daya Alibaba Cloud (ARN) yang sesuai dalam elemen Resource pada kebijakan.

    • Untuk API tanpa izin tingkat resource, ditampilkan sebagai All Resources. Gunakan tanda bintang (*) dalam elemen Resource pada kebijakan.

  • Condition key: Kunci kondisi yang didefinisikan oleh layanan. Kunci ini memungkinkan kontrol granular, berlaku baik hanya untuk aksi maupun untuk aksi yang terkait dengan resource tertentu. Selain kunci kondisi spesifik layanan, Alibaba Cloud menyediakan serangkaian common condition keys yang berlaku di semua layanan yang didukung RAM.

  • Dependent action: Aksi dependen yang diperlukan untuk menjalankan aksi tersebut. Untuk menyelesaikan aksi tersebut, pengguna RAM atau role RAM harus memiliki izin untuk melakukan semua aksi dependen.

Action

Access level

Resource type

Condition key

Dependent action

dm:SingleSendMail

none

*All Resource

*

None None

Parameter permintaan

Parameter

Type

Required

Description

Example

AccountName

string

Yes

Alamat pengirim yang dikonfigurasi di Konsol.

test***@example.net

AddressType

integer

Yes

Tipe alamat. Nilai valid:

  • 0: akun acak

  • 1: alamat pengirim

1

TagName

string

No

Tag yang dibuat di Konsol DirectMail. Tag digunakan untuk mengkategorikan Batch email. Anda dapat mengkueri status pengiriman setiap Batch berdasarkan tag. Jika fitur pelacakan email diaktifkan, Anda harus menggunakan Tag email saat mengirim email. Panjang nilai harus 1 hingga 128 karakter dan dapat berisi huruf, angka, garis bawah (_), dan tanda hubung (-).

test

ReplyToAddress

boolean

Yes

Apakah akan menggunakan alamat balasan yang dikonfigurasi di Konsol (alamat harus diverifikasi). Nilai valid: true atau false.

true

ToAddress

string

Yes

Alamat tujuan. Anda dapat menentukan beberapa alamat email yang dipisahkan dengan koma. Mendukung maksimal 100 alamat (mendukung daftar penerima).

test1***@example.net

Subject

string

Yes

Subjek email. Panjang nilai tidak boleh melebihi 256 karakter.

Subject

HtmlBody

string

No

Isi HTML email.

Catatan: HtmlBody dan TextBody digunakan untuk jenis konten email yang berbeda. Anda harus menentukan salah satunya.

  • Batas ukuran untuk penerusan parameter berbasis URL adalah sekitar 80 KB.

  • Batas ukuran untuk penerusan parameter berbasis Body dengan SDK baru adalah sekitar 8 MB (Java 1.4.0 atau lebih baru, Python3 1.4.0 atau lebih baru, PHP 1.4.0 atau lebih baru).

body

TextBody

string

No

Isi teks email.

Catatan: HtmlBody dan TextBody digunakan untuk jenis konten email yang berbeda. Anda harus menentukan salah satunya.

  • Batas ukuran untuk penerusan parameter berbasis URL adalah sekitar 80 KB.

  • Batas ukuran untuk penerusan parameter berbasis Body dengan SDK baru adalah sekitar 8 MB (Java 1.4.0 atau lebih baru, Python3 1.4.0 atau lebih baru, PHP 1.4.0 atau lebih baru).

body

FromAlias

string

No

Nama panggilan pengirim. Panjang nilai tidak boleh melebihi 15 karakter.

Misalnya, jika nama panggilan pengirim diatur ke "Jane" dan alamat pengirim adalah test***@example.net, Penerima melihat alamat pengirim sebagai "Jane" test***@example.net.

Jane

ReplyAddress

string

No

Alamat balasan.

test2***@example.net

ReplyAddressAlias

string

No

Nama panggilan alamat balasan.

Jane

ClickTrace

string

No

Apakah akan mengaktifkan Pelacakan data. Nilai valid:

  • 1: Aktifkan Pelacakan data.

  • 0 (default): Nonaktifkan Pelacakan data.

0

UnSubscribeLinkType

string

No

Tipe tautan berhenti berlangganan. Nilai valid:

  • disabled: Tidak ada tautan berhenti berlangganan yang dihasilkan.

  • default: Kebijakan default digunakan. Tautan berhenti berlangganan dihasilkan saat email dikirim dari alamat pengirim tipe Batch ke domain tertentu, seperti yang mengandung kata kunci "gmail", "yahoo", "google", "aol.com", "hotmail", "outlook", atau "ymail.com". Untuk informasi selengkapnya, lihat Mekanisme pembuatan dan pemfilteran tautan berhenti berlangganan.

Bahasa tampilan dideteksi secara otomatis berdasarkan pengaturan browser Penerima.

default

UnSubscribeFilterLevel

string

No

Tingkat pemfilteran. Untuk informasi selengkapnya, lihat Mekanisme pembuatan dan pemfilteran tautan berhenti berlangganan.

Nilai valid:

  • disabled: Tidak ada pemfilteran yang diterapkan.

  • default: Kebijakan default digunakan. Alamat Batch menggunakan pemfilteran tingkat alamat pengirim.

  • mailfrom: Pemfilteran tingkat alamat pengirim.

  • mailfrom_domain: Pemfilteran tingkat domain pengirim.

  • edm_id: Pemfilteran tingkat akun.

mailfrom_domain

Headers

string

No

Pengaturan Header email.

Bidang standar dan non-standar harus mematuhi persyaratan sintaksis untuk Header yang didefinisikan dalam format standar. Maksimal 10 Header dapat diteruskan melalui bidang headers saat mengirim email melalui API. Header yang melebihi batas ini diabaikan. SMTP tidak memiliki batas seperti ini.

  1. Bidang standar

Message-ID, List-Unsubscribe, List-Unsubscribe-Post

Bidang standar menimpa nilai asli di Header email.

  1. Bidang non-standar

Tidak peka huruf besar/kecil.

a. Bidang dengan awalan X-User- (tidak didorong ke EventBridge atau Message Service MNS. Ini adalah persyaratan khusus API. SMTP memungkinkan bidang kustom apa pun.)

b. Bidang dengan awalan X-User-Notify- (didorong ke EventBridge dan Message Service MNS. API dan SMTP didukung.)

Saat didorong ke EventBridge atau MNS, bidang-bidang ini disertakan di bawah bidang header.

{ "Message-ID": "", "X-User-UID1": "UID-1-000001", "X-User-UID2": "UID-2-000001", "X-User-Notify-UID1": "UID-3-000001", "X-User-Notify-UID2": "UID-4-000001" }

IpPoolId

string

No

ID kolam alamat IP spesifikasi khusus. Pengguna yang telah membeli alamat IP spesifikasi khusus dapat menggunakan parameter ini untuk menentukan alamat IP arah keluar untuk email ini. Untuk informasi selengkapnya, lihat IP Spesifikasi Khusus.

e4xxxxxe-4xx0-4xx3-8xxa-74cxxxxx1cef

Attachments

array<object>

No

Hanya didukung saat menggunakan SDK baru. Tidak didukung melalui metode OpenAPI atau mekanisme tanda tangan. Untuk informasi selengkapnya, lihat Bagaimana cara mengirim email dengan lampiran melalui SDK?.

object

No

Hanya didukung saat menggunakan SDK baru. Tidak didukung melalui metode OpenAPI atau mekanisme tanda tangan.

AttachmentName

string

No

Hanya didukung saat menggunakan SDK baru. Tidak didukung melalui metode OpenAPI atau mekanisme tanda tangan.

test.txt

AttachmentUrl

string

No

Hanya didukung saat menggunakan SDK baru. Tidak didukung melalui metode OpenAPI atau mekanisme tanda tangan.

C:\Users\Downloads\test.txt

Template

object

No

Informasi Templat untuk pengiriman berbasis Templat.

Saat mengirim dengan Templat, nilai HtmlBody dan TextBody diabaikan.

TemplateId

string

No

ID Templat.

xxx

TemplateData

object

No

Variabel dan nilai Templat.

string

No

Parameter variabel Templat dan nilainya.

{ "name": "Tom", "age": "22" }

BccAddress

string

No

  • Menentukan daftar penerima BCC (blind carbon copy) untuk email.

  • Sistem mengirimkan salinan yang identik dengan konten email utama ke setiap alamat BCC. Informasi BCC tidak terlihat oleh Penerima mana pun (termasuk ToAddress dan BccAddress).

  • Untuk melindungi privasi Penerima BCC, fitur pelacakan email dinonaktifkan secara default untuk email BCC. Ini berarti sistem tidak merekam data perilaku seperti tingkat buka atau rasio klik-tayang untuk email BCC. Namun, penagihan untuk volume pengiriman, detail pengiriman, dan statistik status pengiriman tetap konsisten dengan email reguler.

  • Maksimal 2 Penerima BCC dapat ditentukan per pengiriman.

Catatan: Operasi SingleSendMail tidak mendukung bidang Cc (carbon copy). Gunakan SMTP jika Anda memerlukan fitur ini.

1@example.com,2@example.com

DomainAuth

boolean

No

Apakah akan mengaktifkan otentikasi tingkat domain. Nilai valid:

  • true

  • false

Gunakan parameter ini hanya untuk otentikasi tingkat domain. Abaikan untuk otentikasi tingkat alamat pengirim.

  1. Buat alamat domain-auth-created-by-system@example.com di Konsol. Biarkan awalan sebelum @ tidak berubah dan gunakan Nama domain Anda sendiri sebagai akhiran.

Skenario API

Atur AccountName ke alamat pengirim kustom untuk domain. Penerima melihat alamat pengirim kustom sebagai pengirim.

Skenario SMTP

a. Atur kata sandi domain melalui operasi ModifyPWByDomain.

b. Lakukan otentikasi menggunakan Nama domain dan kata sandi yang dikonfigurasi. Teruskan alamat kustom seperti user@example.com sebagai pengirim aktual (mailfrom). Penerima melihat user@example.com sebagai pengirim.

true

Elemen respons

Element

Type

Description

Example

object

EnvId

string

ID event.

600000xxxxxxxxxx642

RequestId

string

ID permintaan.

2D086F6-xxxx-xxxx-xxxx-006DED011A85

Contoh

Respons sukses

JSONformat

{
  "EnvId": "600000xxxxxxxxxx642",
  "RequestId": "2D086F6-xxxx-xxxx-xxxx-006DED011A85"
}

Kode kesalahan

HTTP status code

Error code

Error message

Description

400 InvalidReceiverName.Malformed The format of the receiver name is invalid. It must contain the @ sign. The domain must only contain numbers, letters, underscores, minus signs, and periods. The account name must only contain numbers, letters, underscores, minus signs, and periods. Format penerima tidak valid. Alamat harus mengandung simbol @. Nama domain hanya boleh berisi digit, huruf, garis bawah, tanda hubung, dan periode. Nama akun hanya boleh berisi digit, huruf, garis bawah, tanda hubung, dan periode.
404 InvalidMailAddress.NotFound The specified mail address is not found. Alamat pengirim tidak ditemukan.

Lihat Error Codes untuk daftar lengkap.

Catatan rilis

Lihat Release Notes untuk daftar lengkap.