> ## 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.

# Deskripsi data

> Menjelaskan struktur data dasar AI Table di DingTalk, termasuk dokumen Base, atribut bidang, dan format nilai rekam untuk setiap tipe bidang, sebagai referensi panggilan API dan pengelolaan data.

## Struktur data

* Base, yaitu dokumen AI Table.

  * `baseId` mengidentifikasi dokumen AI Table secara unik. Anda dapat memperoleh `baseId` dengan cara berikut.

    | **Peroleh dari URL** | **Peroleh dari panel informasi dokumen** | **Peroleh melalui API lain**  Panggil API [Dapatkan daftar node](/id/open/development/get-node-list). **Catatan**  Saat AI Table dibuat, nilai `docType` adalah `BASE`. |
    | -------------------- | ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
* Sheet (tabel). Satu dokumen AI Table biasanya berisi beberapa tabel, dan harus berisi setidaknya satu tabel.

  * Semua API yang perlu mengakses sebuah sheet dapat menggunakan `sheetId` atau `sheetName` sebagai parameter input.
  * Anda dapat memperoleh `sheetId` dengan memanggil API [Dapatkan semua tabel](/id/open/development/api-notable-getallsheets).

### Catatan

`sheetId` bersifat unik hanya di dalam dokumen dan tidak unik secara global.

* `sheetName` adalah nama sheet yang terlihat di sisi depan (front end), seperti `Task management` pada gambar di bawah.
* Bidang. Setiap kolom dalam tabel adalah sebuah bidang, dan sebuah tabel biasanya berisi beberapa bidang.

  * Semua API yang perlu mengakses sebuah bidang dapat menggunakan `fieldId` atau `fieldName` sebagai parameter input.
  * Anda dapat memperoleh `fieldId` dengan memanggil API [Dapatkan semua bidang](/id/open/development/api-noatable-getallfields).

### Catatan

`fieldId` bersifat unik hanya di dalam dokumen dan tidak unik secara global.

* `fieldName` adalah nama field yang terlihat di sisi depan (front end), seperti `Priority` pada gambar di bawah.
* Kolom pertama setiap sheet adalah "bidang utama". Kolom ini hanya mendukung tipe bidang tertentu dan tidak dapat dihapus. Untuk melihat tipe bidang yang didukung:

  * Buka AI Table mana pun.
  * Edit bidang utama.
  * Lihat tipe bidang yang dapat dikonfigurasi.
* Rekam. Setiap baris dalam tabel adalah sebuah rekam, dan sebuah tabel biasanya berisi beberapa rekam.

  * Semua API yang perlu mengakses sebuah rekam harus menggunakan `recordId`.
  * Anda dapat memperoleh `recordId` dengan memanggil API seperti [Sisipkan rekam](/id/open/development/api-notable-insertrecords) atau [Daftar rekam](/id/open/development/api-notable-listrecords).

### Catatan

`recordId` bersifat unik hanya di dalam dokumen dan tidak unik secara global.

## Atribut bidang

Area atribut bidang ditampilkan pada gambar di bawah.

Untuk atribut yang didukung oleh tipe bidang yang berbeda, lihat tabel berikut.

| **Nama field**   | **Tipe (type)**    | **Atribut (property)**                                                                                                                                                                                                                                                  |
| ---------------- | ------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Teks             | text               | Tidak ada                                                                                                                                                                                                                                                               |
| Angka            | number             | Nilai `formatter`: `INT` / `FLOAT_1` / `FLOAT_2` / `FLOAT_3` / `FLOAT_4` (menyimpan N angka desimal) / `THOUSAND` / `THOUSAND_FLOAT` (pemisah ribuan) / `PERCENT` / `PERCENT_FLOAT` (persen)                                                                            |
| Mata uang        | currency           | `currencyType`: `CNY` / `HKD` / `USD` / `EUR` / `GBP` / `MOP` / `VND` / `JPY` / `KRW` / `AED` / `AUD` / `BRL` / `CAD` / `CHF` / `INR` / `IDR` / `MXN` / `MYR` / `PHP` / `PLN` / `RUB` / `SGD` / `THB` / `TRY` / `TWD`; nilai `formatter`: `INT` / `FLOAT_1` … `FLOAT_4` |
| Pilih            | singleSelect       | `{ choices: [{ name: "optionName1" }, { name: "optionName2" }] }`                                                                                                                                                                                                       |
| Pilih Banyak     | multipleSelect     | Sama seperti "Pilih".                                                                                                                                                                                                                                                   |
| Tanggal          | date               | Nilai `formatter`: `YYYY-MM-DD` / `YYYY-MM-DD HH:mm` / `YYYY/MM/DD` / `YYYY/MM/DD HH:mm`                                                                                                                                                                                |
| Pengguna         | user               | `{ multiple: boolean }` (mendukung pilih banyak; default true)                                                                                                                                                                                                          |
| Departemen       | department         | `{ multiple: boolean }` (mendukung pilih banyak; default true)                                                                                                                                                                                                          |
| Lampiran         | attachment         | Tidak ada                                                                                                                                                                                                                                                               |
| Tautan Satu Arah | unidirectionalLink | `{ multiple: boolean, linkedSheetId: "xxx" }` (`linkedSheetId` adalah ID tabel tertaut)                                                                                                                                                                                 |
| Tautan Dua Arah  | bidirectionalLink  | `{ multiple: boolean, linkedSheetId: "xxx", linkedFieldId: "yyy" }` (jangan mengoper `linkedFieldId` saat membuat bidang)                                                                                                                                               |
| Tautan           | url                | Tidak ada                                                                                                                                                                                                                                                               |

## Format nilai rekam

Tampilan nilai rekam (juga disebut nilai bidang) ditampilkan pada gambar di bawah.

Untuk format yang digunakan oleh tipe bidang yang berbeda, lihat tabel berikut.

| **Nama field**   | **Tipe (type)**    | **Set nilai (format yang digunakan saat menyisipkan atau memperbarui rekam)**     | **Nilai kembalian (format yang dikembalikan saat nilai rekam dikembalikan)**                                                                                                                                                                                                                                                                                                                       |
| ---------------- | ------------------ | --------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Teks             | text               | `"TextString"` (string)                                                           | `"TextString"` (string)                                                                                                                                                                                                                                                                                                                                                                            |
| Angka            | number             | `123` (mendukung integer / float / string)                                        | `"123"` (nilai numerik dikembalikan sebagai string)                                                                                                                                                                                                                                                                                                                                                |
| Mata uang        | currency           | `123` (mendukung integer / float / string)                                        | `"123"` (nilai numerik dikembalikan sebagai string)                                                                                                                                                                                                                                                                                                                                                |
| Pilih            | singleSelect       | `"optionName1"` (nama opsi)                                                       | `{ "id": "id", "name": "optionName1" }` (id adalah ID opsi; name adalah nama opsi)                                                                                                                                                                                                                                                                                                                 |
| Pilih Banyak     | multipleSelect     | `["optionName1", "optionName2"]` (nama opsi)                                      | `[{ "id": "id1", "name": "optionName1" }, { "id": "id2", "name": "optionName2" }]`                                                                                                                                                                                                                                                                                                                 |
| Tanggal          | date               | `1688601600000` (stempel waktu) atau `"2023-12-20 03:00"` (string ISO 8601)       | `1688601600000` (stempel waktu)                                                                                                                                                                                                                                                                                                                                                                    |
| Pengguna         | user               | `[{ unionId: "xxx" }]`                                                            | `[{ unionId: "xxx" }]`                                                                                                                                                                                                                                                                                                                                                                             |
| Departemen       | department         | `[{ deptId: "xxx" }]`                                                             | `[{ deptId: "xxx" }]`                                                                                                                                                                                                                                                                                                                                                                              |
| Lampiran         | attachment         | Untuk detailnya, lihat [Unggah lampiran](/id/open/development/upload-attachment). | `[{ "filename": "image.xlsx", "size": 92250, "type": "xls", "url": "xxx" }]`  **Catatan**  `url` adalah tautan akses lampiran. Ketika lampiran berupa dokumen online, tautan mengarah ke dokumen online dan tidak pernah kedaluwarsa. Ketika lampiran berupa jenis file lain, tautan adalah tautan unduh dengan **masa berlaku terbatas**, dan menjadi tidak dapat diakses setelah beberapa waktu. |
| Tautan Satu Arah | unidirectionalLink | `{ "linkedRecordIds": ["xxx", "yyy"] }`                                           | `{ "linkedRecordIds": ["xxx", "yyy"] }`  **Catatan**  Atribut bidang berisi `sheetId` yang tertaut. Bersama dengan `recordId` yang dikembalikan di sini, Anda dapat memanggil API [Dapatkan rekam](/id/open/development/api-getrecord) untuk mengambil nilai rekam yang tertaut.                                                                                                                   |
| Tautan Dua Arah  | bidirectionalLink  | `{ "linkedRecordIds": ["xxx", "yyy"] }`                                           | `{ "linkedRecordIds": ["xxx", "yyy"] }`                                                                                                                                                                                                                                                                                                                                                            |
| Tautan           | url                | `{ "text": "Dingtalk", "link": "https://dingtalk.io" }`                           | `{ "text": "Dingtalk", "link": "https://dingtalk.io" }`                                                                                                                                                                                                                                                                                                                                            |
