> ## Documentation Index
> Fetch the complete documentation index at: https://help.dingtalk.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Tipe notifikasi pesan

> Pelajari tipe notifikasi pesan DingTalk dan format datanya — mulai dari pesan teks, gambar, suara, hingga file, lengkap dengan definisi bidang untuk integrasi API.

Topik ini menjelaskan tipe notifikasi pesan dan format data di DingTalk.

## Tipe notifikasi pesan DingTalk

**Pesan Notifikasi Kerja**: Pesan notifikasi yang dikirim kepada karyawan atas nama sebuah aplikasi mikro di obrolan Notifikasi Kerja suatu organisasi. Contohnya termasuk ucapan ulang tahun dan pengingat orientasi karyawan baru.

## Pesan teks (text)

```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
{
    "msgtype": "text",
    "text": {
        "content": "Notifikasi rapat bulanan"
    }
}
```

### Parameter

| Nama    | Tipe   | Wajib | Contoh                   | Deskripsi                                       |
| ------- | ------ | ----- | ------------------------ | ----------------------------------------------- |
| msgtype | String | Ya    | text                     | Tipe pesan. Setel ke `text` untuk pesan teks.   |
| content | String | Ya    | Notifikasi rapat bulanan | Konten pesan. Disarankan maksimal 500 karakter. |

### Contoh pesan

## Pesan gambar

```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
{
    "msgtype": "image",
    "image": {
        "media_id": "@lADOADmaWMzazQKA"
    }
}
```

### Parameter

| Nama      | Tipe   | Wajib | Contoh            | Deskripsi                                                                                                                                                                                 |
| --------- | ------ | ----- | ----------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| msgtype   | String | Ya    | image             | Tipe pesan. Setel ke `image` untuk pesan gambar.                                                                                                                                          |
| media\_id | String | Ya    | @lADOADmaWMzazQKA | ID media. Panggil API [Unggah file media](/id/open/development/upload-media-files) untuk memperoleh nilai parameter `mediaId`. Disarankan ukuran 600 x 400 piksel dengan rasio aspek 3:2. |

### Contoh pesan

## Pesan suara

```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
{
    "msgtype": "voice",
    "voice": {
       "media_id": "@lADOADmaWMzazQKA",
       "duration": "10"
    }
}
```

### Parameter

| Nama      | Tipe   | Wajib | Contoh            | Deskripsi                                                                                                           |
| --------- | ------ | ----- | ----------------- | ------------------------------------------------------------------------------------------------------------------- |
| msgtype   | String | Ya    | voice             | Tipe pesan. Setel ke `voice` untuk pesan suara.                                                                     |
| media\_id | String | Ya    | @lADOADmaWMzazQKA | ID file media. Panggil API [Unggah file media](/id/open/development/upload-media-files) untuk memperoleh nilai ini. |
| duration  | String | Ya    | 50                | Bilangan bulat positif kurang dari 60 yang menunjukkan durasi audio.                                                |

### Contoh pesan

## Pesan file

```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
{
    "msgtype": "file",
    "file": {
       "media_id": "MEDIA_ID"
    }
}
```

### Parameter

| Nama      | Tipe   | Wajib | Contoh            | Deskripsi                                                                                                                                                                      |
| --------- | ------ | ----- | ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| msgtype   | String | Ya    | file              | Tipe pesan. Setel ke `file` untuk pesan file.                                                                                                                                  |
| media\_id | String | Ya    | @lADOADmaWMzazQKA | ID file media. File media yang direferensikan tidak boleh melebihi 10 MB. Panggil API [Unggah file media](/id/open/development/upload-media-files) untuk memperoleh nilai ini. |

### Contoh pesan

## Pesan tautan

```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
{
    "msgtype": "link",
    "link": {
        "messageUrl": "http://s.dingtalk.io/market/dingtalk/error_code.php",
        "picUrl":"@lALOACZwe2Rk",
        "title": "Test",
        "text": "Test"
    }
}
```

### Parameter

| Nama            | Tipe   | Wajib | Contoh                                   | Deskripsi                                                                                                                                                                                   |
| --------------- | ------ | ----- | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| msgtype         | String | Ya    | link                                     | Tipe pesan. Setel ke `link` untuk pesan tautan.                                                                                                                                             |
| link.messageUrl | String | Ya    | [http://dingtalk.io](http://dingtalk.io) | URL yang dibuka saat pesan diklik. Saat pesan dikirim ke mini program, URL pengalihan mini program didukung. Lihat [Deskripsi tautan pesan](/id/open/development/message-link-description). |
| link.picUrl     | String | Ya    | @lADOADmaWMzazQKA                        | Panggil API [Unggah file media](/id/open/development/upload-media-files) untuk memperoleh nilai ini.                                                                                        |
| link.title      | String | Ya    | Uji pesan tautan                         | Judul pesan. Disarankan maksimal 100 karakter.                                                                                                                                              |
| link.text       | String | Ya    | Uji konten pesan                         | Deskripsi pesan. Disarankan maksimal 500 karakter.                                                                                                                                          |

### Contoh pesan

## Pesan OA

```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
{
     "msgtype": "oa",
     "oa": {
        "message_url": "http://dingtalk.io",
        "head": {
            "bgcolor": "FFBBBBBB",
            "text": "Judul header"
        },
        "body": {
            "title": "Judul isi",
            "form": [
                {
                    "key": "Nama:",
                    "value": "Budi"
                },
                {
                    "key": "Usia:",
                    "value": "20"
                },
                {
                    "key": "Tinggi:",
                    "value": "1,8 m"
                },
                {
                    "key": "Berat:",
                    "value": "65 kg"
                },
                {
                    "key": "Pendidikan:",
                    "value": "Gelar sarjana"
                },
                {
                    "key": "Hobi:",
                    "value": "Olahraga bola, mendengarkan musik"
                }
            ],
            "rich": {
                "num": "15,6",
                "unit": "USD"
            },
            "content": "Konten teks panjang konten teks panjang konten teks panjang konten teks panjang",
            "image": "@lADOADmaWMzazQKA",
            "file_count": "3",
            "author": "Siti "
        }
    }
}
```

### Parameter

| Nama    | Tipe   | Wajib | Contoh | Deskripsi                                 |
| ------- | ------ | ----- | ------ | ----------------------------------------- |
| msgtype | String | Ya    | oa     | Tipe pesan. Setel ke `oa` untuk pesan OA. |

### Parameter isi pesan OA

| Nama                         | Tipe                | Wajib | Contoh                                   | Deskripsi                                                                                                                                                                                                                       |
| ---------------------------- | ------------------- | ----- | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| oa.message\_url              | String              | Ya    | [http://dingtalk.io](http://dingtalk.io) | URL yang dibuka saat pesan diklik. Saat pesan dikirim ke mini program, URL pengalihan mini program didukung. Lihat [Deskripsi tautan pesan](/id/open/development/message-link-description).                                     |
| oa.pc\_message\_url          | String              | Tidak | [http://dingtalk.io](http://dingtalk.io) | URL yang dibuka saat pesan diklik pada klien desktop.                                                                                                                                                                           |
| oa.head                      | JSON Object         | Ya    |                                          | Header pesan.                                                                                                                                                                                                                   |
| oa.head.bgcolor              | String              | Ya    | FFBBBBBB                                 | Warna font judul header pesan. Panjang dibatasi hingga 8 karakter Inggris. 2 karakter pertama menunjukkan transparansi, dan 6 karakter terakhir menunjukkan nilai warna. Jangan tambahkan `0x`.                                 |
| oa.head.text                 | String              | Ya    | Judul header                             | Judul header pesan. Untuk [Mengirim notifikasi kerja](/id/open/development/asynchronous-sending-of-enterprise-session-messages), parameter ini digantikan dengan nama aplikasi saat ini.                                        |
| oa.status\_bar               | JSON Object         | Tidak |                                          | Bilah status pesan. Hanya daftar `userid` penerima yang didukung. Maksimal 5 ID pengguna diperbolehkan.  **Catatan**  Daftar ID departemen tidak didukung, dan `to_all_user` tidak dapat disetel ke `true`.                     |
| oa.status\_bar.status\_value | String              | Tidak | In progress                              | Teks bilah status.                                                                                                                                                                                                              |
| oa.status\_bar.status\_bg    | String              | Tidak | 0xFFF65E5E                               | Warna latar bilah status. Default-nya adalah hitam. Format yang disarankan adalah `0xFF` diikuti nilai warna 6 digit.                                                                                                           |
| oa.body                      | JSON Object         | Ya    |                                          | Isi pesan.                                                                                                                                                                                                                      |
| oa.body.title                | String              | Tidak | Judul isi                                | Judul isi pesan. Disarankan maksimal 50 karakter.                                                                                                                                                                               |
| oa.body.form                 | Array\[JSON Object] | Tidak |                                          | Formulir isi pesan. Maksimal 6 entri yang ditampilkan. Entri tambahan disembunyikan.                                                                                                                                            |
| oa.body.form.key             | String              | Tidak | Nama                                     | Kata kunci dalam isi pesan.                                                                                                                                                                                                     |
| oa.body.form.value           | String              | Tidak | Budi                                     | Nilai yang berkaitan dengan kata kunci dalam isi pesan.                                                                                                                                                                         |
| oa.body.rich                 | JSON Object         | Tidak |                                          | Informasi teks kaya satu baris.                                                                                                                                                                                                 |
| oa.body.rich.num             | String              | Tidak | 15,6                                     | Angka dalam teks kaya satu baris.                                                                                                                                                                                               |
| oa.body.rich.unit            | String              | Tidak | USD                                      | Satuan dalam teks kaya satu baris.                                                                                                                                                                                              |
| oa.body.content              | String              | Tidak | Konten teks panjang                      | Konten isi pesan. Maksimal 3 baris yang ditampilkan.                                                                                                                                                                            |
| oa.body.image                | String              | Tidak | @lADOADmaWMzazQKA                        | Gambar dalam isi pesan. Sumber daya gambar `@mediaId` didukung. Panggil API [Unggah file media](/id/open/development/upload-media-files) untuk memperoleh nilai ini. Disarankan ukuran 600 x 400 piksel dengan rasio aspek 3:2. |
| oa.body.file\_count          | String              | Tidak | 3                                        | Jumlah lampiran kustom. Angka ini hanya untuk ditampilkan dan tidak diverifikasi oleh DingTalk.                                                                                                                                 |
| oa.body.author               | String              | Tidak | Siti                                     | Nama penulis kustom.                                                                                                                                                                                                            |

### Contoh pesan

## Pesan Markdown

```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
{
    "msgtype": "markdown",
    "markdown": {
        "title": "Konten yang ditampilkan pada layar pertama obrolan",
        "text": "# Ini adalah teks yang mendukung markdown   \n   ## Heading 2    \n   * Item daftar 1   \n  "
    }
}
```

### Sintaks Markdown

```text theme={"theme":{"light":"github-light","dark":"github-dark"}}
Judul
# Heading 1
## Heading 2
### Heading 3
#### Heading 4
##### Heading 5
###### Heading 6
 
Kutip
> A man who stands for nothing will fall for anything.
 
Tebal, Miring
**bold**
*italic*
 
Tautan
[ini adalah tautan](http://name.com)
 
Gambar

 
Daftar Berpoin
- item1
- item2
 
Daftar Bernomor
1. item1
2. item2

Ganti baris
  \n  (Disarankan menambahkan 2 spasi sebelum dan sesudah \n)
```

### Parameter

| Nama    | Tipe   | Wajib | Contoh     | Deskripsi                                                                                                                                                  |
| ------- | ------ | ----- | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
| msgtype | String | Ya    | markdown   | Tipe pesan. Panggil API [Unggah file media](/id/open/development/upload-media-files) untuk memperoleh nilai ini. Setel ke `markdown` untuk pesan Markdown. |
| title   | String | Ya    | Uji judul  | Konten yang ditampilkan pada layar pertama obrolan.                                                                                                        |
| text    | String | Ya    | Uji konten | Pesan berformat Markdown. Panjang maksimal 5.000 karakter.                                                                                                 |

### Contoh pesan

## Pesan kartu

Pesan kartu mendukung gaya ActionCard pengalihan menyeluruh dan gaya ActionCard pengalihan mandiri:

* Gaya ActionCard pengalihan menyeluruh mendukung satu tindakan klik. Parameter `single_title` dan `single_url` bersifat wajib.

  ```json lines theme={"theme":{"light":"github-light","dark":"github-dark"}}
  {
      "msgtype": "action_card",
      "action_card": {
          "title": "Teks yang ditampilkan di daftar obrolan dan notifikasi",
          "markdown": "Konten isi dalam format Markdown",
          "single_title": "Lihat Detail",
          "single_url": "https://open.dingtalk.com"
      }
  }
  ```
* Gaya ActionCard pengalihan mandiri mendukung beberapa tindakan klik. Parameter `btn_orientation` dan `btn_json_list` bersifat wajib.

  ```json lines theme={"theme":{"light":"github-light","dark":"github-dark"}}
  {
      "msgtype": "action_card",
      "action_card": {
          "title": "Teks yang ditampilkan di daftar obrolan dan notifikasi",
          "markdown": "Konten isi dalam format Markdown",
          "btn_orientation": "1",
          "btn_json_list": [
              {
                  "title": "Tombol satu",
                  "action_url": "https://www.taobao.com"
              },
              {
                  "title": "Tombol dua",
                  "action_url": "https://www.tmall.com"
              }
          ]
      }
  }
  ```

### Parameter

| Nama                                     | Tipe      | Wajib | Contoh                                                 | Deskripsi                                                                                                                                                                                                                                                                         |
| ---------------------------------------- | --------- | ----- | ------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| msgtype                                  | String    | Ya    | action\_card                                           | Tipe pesan. Setel ke `action_card` untuk pesan kartu.                                                                                                                                                                                                                             |
| action\_card.markdown                    | String    | Ya    | Konten isi dalam format Markdown                       | Konten pesan. Markdown didukung. Ikuti sintaks Markdown standar. Disarankan maksimal 1.000 karakter.                                                                                                                                                                              |
| action\_card.title                       | String    | Tidak | Uji judul                                              | Teks yang ditampilkan di daftar obrolan dan notifikasi.                                                                                                                                                                                                                           |
| action\_card.single\_title               | String    | Tidak | Lihat Detail                                           | Judul yang digunakan dengan gaya ActionCard pengalihan menyeluruh. Harus disetel bersama `single_url`. Panjang maksimal 20 karakter.  **Catatan**  Untuk gaya ActionCard pengalihan menyeluruh, **single\_title** dan **single\_url** bersifat wajib.                             |
| action\_card.single\_url                 | String    | Tidak | [https://open.dingtalk.com](https://open.dingtalk.com) | URL yang dibuka saat pesan diklik. Panggil API [Unggah file media](/id/open/development/upload-media-files) untuk memperoleh nilai ini. Saat pesan dikirim ke mini program, URL pengalihan mini program didukung. Panjang maksimal 500 karakter.                                  |
| action\_card.btn\_orientation            | String    | Tidak | 0                                                      | Tata letak tombol yang digunakan dengan gaya ActionCard pengalihan mandiri:   - **0**: vertikal - **1**: horizontal  Harus disetel bersama `btn_json_list`.                                                                                                                       |
| action\_card.btn\_json\_list             | JSONArray | Tidak |                                                        | Daftar tombol yang digunakan dengan gaya ActionCard pengalihan mandiri. Harus disetel bersama `btn_orientation`. Panjang total tidak boleh melebihi 1.000 karakter.  **Catatan**  Untuk gaya ActionCard pengalihan mandiri, `btn_json_list` dan `btn_orientation` bersifat wajib. |
| action\_card.btn\_json\_list.title       | String    | Tidak | Dua tombol                                             | Judul tombol yang digunakan dengan gaya ActionCard pengalihan mandiri. Panjang maksimal 20 karakter.                                                                                                                                                                              |
| action\_card.btn\_json\_list.action\_url | String    | Tidak | [https://www.tmall.com](https://www.tmall.com)         | URL pengalihan yang digunakan dengan gaya ActionCard pengalihan mandiri. Panjang maksimal 700 karakter.                                                                                                                                                                           |

### Contoh pesan

* Pesan yang dikirim dengan tipe pesan ActionCard pengalihan menyeluruh tampil sebagai berikut:

* Pesan yang dikirim dengan tipe pesan ActionCard pengalihan mandiri tampil sebagai berikut:
