Locale

Terakhir diperbarui: 22 Juni 2026

Locale adalah pengaturan bahasa yang didukung oleh sebuah Space. Setiap Locale memiliki kode bahasa (code, misalnya ko-KR, en-US), dan nilai field dari Content atau Media disimpan secara terpisah per Locale ini. Nilai bahasa Korea dan nilai bahasa Inggris disimpan berdampingan dalam field yang sama, lalu saat melakukan kueri Anda memilih nilai dari bahasa yang diinginkan.

Halaman ini membahas operasi pengelolaan CMA (Content Management API) untuk membuat dan mengubah Locale. Sisi yang menyampaikan daftar Locale yang sudah dipublikasikan kepada pengunjung secara baca-saja adalah CDA Locale.

Struktur resource

Berikut adalah satu Locale default dari Space demo ("English (United States)"). Bersama dengan sys (properti sistem), Locale memiliki properti utama optional.

{
  "sys": {
    "id": "4PXRRUpIqJ1sdcqujzO7lYJD1sReNG",
    "type": "Locale",
    "space": { "sys": { "id": "HnQ32YiH", "type": "Refer", "targetType": "Space" } },
    "name": "English (United States)",
    "default": true,
    "code": "en-US",
    "createdBy": { "sys": { "id": "3p4tcFbQRwz503VXdtHXNI5dZH5TVB", "type": "Refer", "targetType": "User" } },
    "createdAt": "2026-06-17T10:43:31.960Z",
    "updatedAt": "2026-06-17T10:43:31.960Z",
    "updatedBy": { "sys": { "id": "3p4tcFbQRwz503VXdtHXNI5dZH5TVB", "type": "Refer", "targetType": "User" } },
    "version": 1
  },
  "optional": false
}

Kunci utama:

  • code: kode bahasa dari Locale ini (misalnya en-US). Masukkan nilai ini ke parameter locale pada kueri Content, Media untuk menerima nilai bahasa tersebut. Ditentukan saat pembuatan, dan setelah itu tidak dapat diubah.
  • default: apakah Locale ini merupakan Locale default dari Space. Sebuah Space memiliki satu Locale default, dan hanya pada Locale itu default bernilai true.
  • optional: apakah Locale ini boleh dikosongkan saat mengisi field yang wajib (required). Contoh di atas bernilai false sehingga tidak boleh dikosongkan.
  • fallbackCode: code dari Locale lain yang akan dicari sebagai gantinya ketika nilai tidak ada (opsional). Hanya muncul dalam respons jika telah diatur. Pada contoh di atas tidak diatur sehingga kunci tersebut tidak terlihat.

Properti sistem (sys) dan properti utama

space, createdBy, updatedBy masuk dalam bentuk Refer ({ "sys": { "id", "type": "Refer", "targetType" } }).

PropertiTipeDeskripsi
idstringPengidentifikasi unik resource.
typestringJenis resource. Locale selalu "Locale".
spaceRefer<Space>Space tempat Locale ini berada.
namestringNama yang terbaca manusia (misalnya "English (United States)"). Dibuat otomatis dari code.
defaultbooleanApakah merupakan Locale default dari Space. Hanya satu yang true dalam sebuah Space.
codestringKode bahasa (misalnya ko-KR). Menjadi nilai locale pada kueri Content, Media.
createdByRefer<User>Pengguna yang membuat.
createdAtstring (date-time)Waktu pembuatan.
updatedByRefer<User>Pengguna yang terakhir mengubah.
updatedAtstring (date-time)Waktu pengubahan terakhir.
versionintegerVersi saat ini. Naik 1 setiap kali diubah.

Properti utama:

PropertiTipeDeskripsi
optionalbooleanApakah Locale ini boleh dikosongkan saat mengisi field yang wajib (required). Locale default umumnya false (harus diisi).
fallbackCodestringcode dari Locale yang akan dicari sebagai gantinya ketika nilai tidak ada (opsional, dapat dirantai). Jika tidak diatur, kunci itu sendiri tidak ada dalam respons.

name dihitung otomatis dari code (misalnya ja-JP"Japanese (Japan)"). Karena itu, name tidak disertakan dalam body pembuatan maupun pengubahan.

Locale adalah resource pengaturan yang tidak memiliki konsep publikasi. Karena itu, berbeda dengan Content, Media, sys tidak memiliki publish, archive, status, dan hanya memiliki version. version naik setiap kali Locale diubah.

Locale default, optional, fallback

Ketiga properti tersebut masing-masing menentukan hal berikut.

  • default: apakah merupakan Locale default dari Space. Dalam satu Space hanya ada satu yang default, dan hanya pada Locale itu default bernilai true. Saat pembuatan, default tidak dapat ditentukan (Locale yang baru dibuat bukan default). Untuk mengubah default, berikan default bernilai true pada pengubahan (PUT). Dengan begitu Locale itu menjadi default yang baru, dan default yang lama dilepas.
  • optional: apakah Locale ini boleh dikosongkan saat mengisi field yang wajib (required). Jika optional bernilai false, nilai bahasa tersebut harus diisi, dan jika true, boleh dikosongkan.
  • fallbackCode: code dari Locale lain yang akan dicari sebagai gantinya ketika nilai tidak ada. Jika nilai pada Locale yang diminta tidak ada, sistem beralih ke Locale yang ditunjuk oleh fallbackCode untuk mencari nilai. Jika Locale yang dituju juga memiliki fallbackCode, hal ini menjadi rantai yang terus berlanjut. Jika tidak diatur, kunci itu sendiri tidak ada dalam respons.

Perilaku rinci dari Locale default, pengisian wajib, fallback dibahas di Multibahasa (konsep).

API

Base URL untuk semua endpoint di bawah ini adalah https://cma.weegloo.com/v1, dan diperlukan token Bearer untuk mengautentikasi CMA pada header Authorization. Untuk pengubahan dan pengubahan sebagian, header X-Weegloo-Version (sys.version dari resource saat ini) harus disertakan untuk kendali konkurensi optimistik. Pembuatan dan penghapusan tidak memiliki header ini.

  • CDA Locale: menyampaikan daftar Locale yang sudah dipublikasikan kepada pengunjung (baca).
  • Multibahasa (konsep): aturan Locale default, optional, fallbackCode.
  • Content: data utama yang menyimpan nilai field per Locale.