All Products
Search
Document Center

Chat App Message Service:Kirim pesan menggunakan API

Last Updated:Mar 13, 2026

Chat App Message Service menyediakan API untuk membuat templat, mengirim pesan tunggal, dan mengirim pesan secara massal. Topik ini menggunakan channel WhatsApp sebagai contoh, dan prosesnya dapat dijadikan referensi untuk jenis channel lainnya.

Anda dapat memanggil API Chat App Message Service dengan cara berikut:

  • Portal OpenAPI Portal Alibaba Cloud

    Cara ini cocok untuk developer yang lebih menyukai antarmuka pengguna interaktif atau yang baru mengenal produk Alibaba Cloud. Anda dapat melakukan debug API dan mendapatkan contoh permintaan SDK di OpenAPI Portal.

  • SDK

    SDK tersedia untuk berbagai bahasa pemrograman, seperti Java, Go, PHP, dan Python. Menggunakan SDK untuk mengintegrasikan Chat App Message Service dapat meningkatkan efisiensi pengembangan Anda.

  • Enkapsulasi kustom (tidak disarankan)

    SDK Alibaba Cloud menangani mekanisme seperti penandatanganan permintaan, timeout, dan retry. Kami menyarankan menggunakan SDK untuk mengurangi biaya pengembangan. Jika Anda ingin melakukan enkapsulasi sendiri untuk memanggil API, lihat SendChatappMessage dan Signature examples.

Topik ini menjelaskan cara menggunakan Chat App Message Service dengan SDK. Setelah meninjau API di OpenAPI Portal, Anda dapat mengikuti petunjuk dalam topik ini untuk mengintegrasikan Chat App Message Service. Alur keseluruhan adalah sebagai berikut:

image

Persiapan

Persiapan

Deskripsi

Referensi

Daftarkan Akun Alibaba Cloud

Lengkapi verifikasi identitas perusahaan

  • Verifikasi identitas perusahaan memastikan bahwa pemilik akun merupakan entitas perusahaan atau pemerintah.

  • Chat App Message Service tidak mendukung akun individu.

Buat Akun Alibaba Cloud

Verifikasi identitas perusahaan

Aktifkan layanan

Login ke Konsol Chat App Message Service, lalu aktifkan layanan tersebut.

-

Konfigurasikan izin pengguna

Akun Alibaba Cloud memiliki izin tingkat tinggi. Kami menyarankan menggunakan RAM user untuk panggilan API dan operasi harian.

Anda dapat memeriksa izin pengguna dengan login ke Konsol RAM dan mengklik nama RAM user tersebut. Pastikan RAM user yang melakukan panggilan API memiliki izin yang diperlukan untuk Chat App Message Service:

  • AliyunCamsFullAccess: Izin penuh untuk mengelola Chat App Message Service.

Buat RAM user

Berikan izin kepada RAM user

RAM authorization

ID AccessKey

Login ke RAM console, lalu klik nama RAM user untuk melihat ID AccessKey.

Buat Pasangan Kunci Akses

Rahasia AccessKey

Rahasia AccessKey tidak dapat dilihat lagi setelah dibuat. Jika Anda tidak memiliki cadangan lokal, buatlah Pasangan Kunci Akses baru.

Konfigurasi lingkungan

Topik ini menggunakan Java sebagai contoh. Untuk bahasa lain dan metode instalasi SDK-nya, lihat Installation Method.

  1. Periksa lingkungan Java Anda: Versi Java Anda harus Java 8 atau lebih tinggi. Untuk petunjuk detail, lihat Siapkan lingkungan pengembangan Java di Windows.

  2. Instal SDK dengan mengonfigurasi dependensi Maven.

    Dalam file pom.xml proyek Maven Anda, tambahkan informasi berikut ke dalam tag <dependencies> dan ganti the-latest-version dengan nomor versi terbaru. Setelah menyimpan file, muat ulang dependensi Maven.

    <dependency>
      <groupId>com.aliyun</groupId>
      <artifactId>alibabacloud-cams20200606</artifactId>
      <!-- Ganti 'the-latest-version' dengan nomor versi terbaru: https://mvnrepository.com/artifact/com.aliyun/alibabacloud-cams20200606 -->
      <version>the-latest-version</version>
    </dependency>
  3. Konfigurasikan variabel lingkungan: Untuk menghindari hardcoding Pasangan Kunci Akses Anda dalam kode dan mencegah kebocoran, kami menyarankan mengonfigurasi variabel lingkungan dan membaca Pasangan Kunci Akses dari sana. Setelah dikonfigurasi, restart atau refresh lingkungan pengembangan Anda, termasuk IDE, command-line interface, dan aplikasi lainnya, agar variabel lingkungan baru dimuat.

  4. Konfigurasikan proxy (opsional). Untuk mengakses layanan melalui server proxy, konfigurasikan proxy menggunakan SDK. Untuk informasi selengkapnya, lihat Konfigurasi proxy.

Informasi dasar API

Versi API

2020-06-06

Gaya API

RPC

Titik akhir layanan

(Endpoint)

Titik akhir publik: cams.ap-southeast-1.aliyuncs.com

Bacalah spesifikasi parameter API dan petunjuk penggunaannya sebelum melakukan panggilan. Debug Online | Ikhtisar API

Alur kerja

image
  1. Buat channel: Buka halaman Channel Management.

    1. Channel adalah jenis jalur yang digunakan untuk mengirim pesan. Channel WhatsApp, Viber, Messenger, Instagram, dan Email didukung.

    2. Pilih jenis channel yang sesuai, karena setiap channel hanya dapat mengirim jenis pesan yang sesuai dengannya.

  2. Daftarkan dan bind WABA: Panggil API ChatappBindWaba untuk mengikat WhatsApp Business Account (WABA).

    • Sebelum memanggil API ini, Anda harus sudah memiliki WABA yang terdaftar. Anda tidak dapat mendaftarkan WABA melalui API. Jika belum memilikinya, daftarkan melalui halaman tersemat di Konsol Chat App Messaging Service.

    • WABA adalah akun bisnis resmi yang wajib didaftarkan perusahaan untuk mengirim pesan komersial WhatsApp. WABA yang telah diverifikasi oleh WhatsApp akan menerima lencana verifikasi, yang meningkatkan kepercayaan pelanggan dan memperkuat citra merek sekaligus mengurangi gangguan dari pesan penipuan.

  3. Tambahkan nomor: Panggil API AddChatappPhoneNumber untuk menambahkan nomor. Nomor telepon ini akan digunakan untuk mengirim pesan WhatsApp.

    • Anda dapat menyinkronkan nomor di bawah WABA yang telah di-bind dan disetujui dengan platform Business Manager (BM) menggunakan API ChatappSyncPhoneNumber.

    • Fitur migrasi nomor memungkinkan Anda memindahkan nomor telepon yang terdaftar di BSP lain ke Alibaba Cloud. Nomor yang dimigrasikan akan mempertahankan nama tampilan aslinya, peringkat kualitas, batas pengiriman pesan, status akun bisnis resmi, serta semua templat pesan berkualitas tinggi yang sebelumnya telah disetujui. Gunakan API CreateChatappMigrationInitiate untuk memulai migrasi.

  4. Verifikasi nomor: Panggil API GetChatappVerifyCode untuk mendapatkan kode verifikasi nomor tersebut. Lalu, gunakan operasi API ChatappVerifyAndRegistr untuk memverifikasi nomor tersebut. Setelah diverifikasi, gunakan operasi API GetPhoneNumberVerificationStatus untuk memeriksa status verifikasi.

  5. Buat dan desain templat: Panggil API CreateChatappTemplate untuk membuat templat. Setelah templat dibuat, templat tersebut akan otomatis diajukan untuk ditinjau. Lalu, gunakan API GetChatappTemplateDetail untuk menanyakan detail peninjauan templat.

    • Setelah templat diajukan untuk ditinjau, pantau status peninjauannya. Peninjauan biasanya selesai dalam waktu lima menit, tetapi kadang-kadang bisa memakan waktu lebih dari 24 jam.

    • Kategori templat pesan WhatsApp dapat berubah secara otomatis selama proses peninjauan. Saat memanggil API CreateChatappTemplate, Anda dapat mengatur parameter CategoryChangePaused menjadi true untuk menjeda pengiriman saat kategori berubah. Untuk informasi selengkapnya, lihat Tambahkan kontrol pengiriman saat kategori templat pesan WhatsApp berubah.

  6. Kirim pesan: Panggil API SendChatappMessage atau SendChatappMassMessage untuk mengirim pesan.

    • Sebelum mengirim, pastikan saldo akun Anda mencukupi. Untuk informasi selengkapnya, lihat Harga.

  7. Lihat detail pengiriman pesan: Terima laporan untuk pesan yang telah dikirim melalui callback ChatAppStatus (Simple Message Queue | HTTP URL).

  8. Terima pesan mobile originated (MO): Terima pesan inbound melalui callback ChatAppInbound (Simple Message Queue | HTTP URL).

Untuk informasi selengkapnya tentang operasi API, lihat Ikhtisar API.

Kode contoh

Kode contoh berikut menunjukkan cara menggunakan SDK untuk mengirim pesan dengan memanggil API SendChatappMessage. Isi parameter sesuai komentar.

// File ini di-generate secara otomatis, jangan edit. Terima kasih.
package com.aliyun.sample;

import com.aliyun.tea.*;

public class Sample {

    /**
     * deskripsi :
     * <p>Inisialisasi client menggunakan kredensial.</p>
     * @return Client
     *
     * @throws Exception
     */
    public static com.aliyun.cams20200606.Client createClient() throws Exception {
        // Untuk lingkungan produksi, kami menyarankan metode yang lebih aman yang tidak melakukan hardcoding AccessKey. Untuk detailnya, kunjungi https://www.alibabacloud.com/help/doc-detail/2542825.html.
        com.aliyun.credentials.Client credential = new com.aliyun.credentials.Client();
        com.aliyun.teaopenapi.models.Config config = new com.aliyun.teaopenapi.models.Config()
                .setCredential(credential);
        // Titik akhir layanan. Untuk detailnya, kunjungi https://api.alibabacloud.com/product/cams.
        config.endpoint = "cams.ap-southeast-1.aliyuncs.com";
        return new com.aliyun.cams20200606.Client(config);
    }

    public static void main(String[] args_) throws Exception {

        com.aliyun.cams20200606.Client client = Sample.createClient();
        java.util.Map<String, String> templateParams = TeaConverter.buildMap(
                // Ganti ini dengan nama variabel dan nilai dari templat Anda
                new TeaPair("name", "Bob"),
                new TeaPair("sex", "Male")
        );
        com.aliyun.cams20200606.models.SendChatappMessageRequest sendChatappMessageRequest = new com.aliyun.cams20200606.models.SendChatappMessageRequest()
                // Parameter untuk mengirim pesan.
                .setTemplateParams(templateParams)
                .setTemplateCode("XXXXXXXXXXX")
                .setChannelType("whatsapp")
                .setType("template")
                .setLanguage("en")
                .setFrom("XXXXXXXX")
                .setTo("XXXXXXXX")
                .setCustSpaceId("XXXXXXXXXXX");
        com.aliyun.teautil.models.RuntimeOptions runtime = new com.aliyun.teautil.models.RuntimeOptions();
        try {
            // Jika Anda menyalin kode ini untuk dijalankan, cetak nilai kembali API sendiri.
            client.sendChatappMessageWithOptions(sendChatappMessageRequest, runtime);
        } catch (TeaException error) {
            // Ini hanya untuk pencetakan dan demonstrasi. Tangani exception dengan hati-hati dan jangan abaikan dalam proyek Anda.
            // Pesan error.
            System.out.println(error.getMessage());
            // Alamat diagnostik.
            System.out.println(error.getData().get("Recommend"));
            com.aliyun.teautil.Common.assertAsString(error.message);
        } catch (Exception _error) {
            TeaException error = new TeaException(_error.getMessage(), _error);
            // Ini hanya untuk pencetakan dan demonstrasi. Tangani exception dengan hati-hati dan jangan abaikan dalam proyek Anda.
            // Pesan error.
            System.out.println(error.getMessage());
            // Alamat diagnostik
            System.out.println(error.getData().get("Recommend"));
            com.aliyun.teautil.Common.assertAsString(error.message);
        }
    }
}

Anda dapat mengunjungi OpenAPI Portal untuk melihat contoh permintaan SDK lengkap dalam berbagai bahasa. Jika ingin melakukan enkapsulasi untuk memanggil API, lihat SendChatappMessage dan Signature examples.

Pertanyaan umum