Content Type

Terakhir diperbarui: 3 Juli 2026

CDA (Content Delivery API) adalah API hanya-baca yang mengantarkan resource yang sudah dipublikasikan ke pengunjung publik. Halaman ini membahas cara membaca Content Type yang dipublikasikan, yaitu kerangka (skema) yang diikuti oleh Content. Dengan membaca kerangka ini melalui CDA, Anda mengetahui field apa saja yang dimilikinya serta tipe, status multi-bahasa, status wajib, dan aturan validasi tiap field, sehingga Anda dapat mengetahui bentuk Content terpublikasi yang mengikuti kerangka tersebut terlebih dahulu.

CDA hanya memiliki endpoint baca (GET); pembuatan, penyuntingan, dan publikasi Content Type ditangani oleh CMA Content Type. Untuk perilaku umum CDA seperti autentikasi dan model pengantaran publikasi (snapshot publikasi, revision, hanya yang dipublikasikan yang terlihat), lihat Ringkasan CDA. Karena Content Type adalah skema kerangka, pembacaannya tidak menerima parameter locale.

Struktur resource

Berikut adalah bentuk Content Type terpublikasi "Produk" dari Space demo yang diantarkan CDA dalam satu pembacaan tunggal. Selain sys (properti sistem), ia memiliki properti utama seperti name, displayField, publishWithAuthor, dan fields.

{
  "sys": {
    "id": "3trmXRLdJF4GBlAjtcuoZ7Pnxj8dlA",
    "type": "ContentType",
    "space": { "sys": { "id": "HnQ32YiH", "type": "Refer", "targetType": "Space" } },
    "createdAt": "2026-06-14T17:04:46.846Z",
    "updatedAt": "2026-06-17T03:13:49.943Z",
    "revision": 7
  },
  "name": "Produk",
  "displayField": "productName",
  "fields": [
    { "id": "5n06s7ocmwdi", "name": "Nama produk", "apiName": "productName", "type": "ShortText", "localized": true, "required": true, "validations": [], "disabled": false },
    { "id": "1gecyz8g4llwf", "name": "Harga", "apiName": "price", "type": "Long", "localized": false, "required": false, "validations": [], "disabled": false },
    { "id": "3ow4popgz54zg", "name": "Deskripsi", "apiName": "description", "type": "RichText", "localized": true, "required": false, "validations": [], "disabled": false },
    { "id": "2alxdptmdub1s", "name": "Foto", "apiName": "photo", "type": "Refer", "localized": false, "required": false, "validations": [], "disabled": false, "targetType": "Media" },
    {
      "id": "2a80lehazfx3t",
      "name": "Merek",
      "apiName": "brand",
      "type": "Refer",
      "localized": false,
      "required": false,
      "validations": [
        { "referContentType": [ { "sys": { "id": "3trmXRM3RqbgSnifyg7OveRYWnJWEG", "type": "Refer", "targetType": "ContentType" } } ] }
      ],
      "disabled": false,
      "targetType": "Content"
    }
  ],
  "publishWithAuthor": false
}

Kunci utama:

  • sys.id: Pengenal unik Content Type. Diisikan ke {contentTypeId} pada path pembacaan tunggal.
  • sys.revision: Versi pada saat dipublikasikan. CDA tidak menyertakan version untuk pengelolaan, sehingga nilai yang menunjuk versi publikasi hanyalah revision.
  • name: Nama Content Type (contoh: Produk).
  • displayField: apiName dari field yang mewakili setiap Content di daftar studio konten (contoh: productName).
  • publishWithAuthor: Menentukan apakah informasi penulis ikut disertakan saat Content dipublikasikan (pada contoh ini false).
  • fields: Daftar field yang didefinisikan kerangka ini. Struktur tiap item dijelaskan di Field di bawah.

Properti sistem (sys)

sys dari Content Type terpublikasi hanya menyimpan properti untuk snapshot publikasi. space, createdBy, dan updatedBy masuk dalam bentuk Refer ({ "sys": { "id", "type": "Refer", "targetType" } }).

PropertiTipeDeskripsi
idstringPengenal unik resource.
typestringJenis resource. Content Type selalu "ContentType".
spaceRefer<Space>Space tempat Content Type ini berada.
createdAtstring (date-time)Waktu pembuatan.
updatedAtstring (date-time)Waktu penyuntingan terakhir.
revisionintegerVersi pada saat dipublikasikan. Setiap kali dipublikasikan, versi pada saat itu disimpan di sini.
createdByRefer<User>Pengguna yang membuat. Hanya disertakan ketika publishWithAuthor pada Content Type aktif.
updatedByRefer<User>Pengguna yang terakhir menyunting. Hanya disertakan ketika publishWithAuthor aktif.

Karena ini snapshot publikasi, version, status, publish, dan archive yang ada di sys milik CMA tidak disertakan. Nilai yang menunjuk versi publikasi hanyalah revision.

Field

fields adalah daftar field yang didefinisikan oleh Content Type ini. Setiap item memiliki struktur berikut (FieldDefinition).

KunciTipeDeskripsi
idstringPengenal unik field.
namestringNama field yang ditampilkan di studio konten (contoh: Nama produk).
apiNamestringKunci yang menunjuk field ini di API. Nilai juga dibaca dengan kunci ini dari fields pada Content terpublikasi.
typestring (enum)Tipe field. Lihat Jenis field (type) di bawah.
localizedbooleanMenentukan apakah field dapat memiliki nilai multi-bahasa.
requiredbooleanMenentukan apakah pengisian wajib.
validationsarrayDaftar aturan validasi yang diterapkan pada nilai. Array kosong [] jika tidak ada aturan.
disabledbooleanMenentukan apakah dinonaktifkan.
targetTypestring (enum)Hanya ketika type adalah Refer. Menentukan apakah target referensi adalah Content atau Media.
itemsobjectHanya ketika type adalah Array. Definisi elemen array (elemen Refer atau elemen ShortText).

Jenis field (type)

type menentukan cara nilai disimpan dan dibaca. Sebagian tipe memiliki perilaku pencarian yang berbeda.

typeArtiCatatan
ShortTextTeks satu baris yang pendek.Cocok untuk pencarian kata kunci yang tepat.
LongTextTeks isi yang panjang.Mendukung pencarian kemiripan teks penuh (full-text).
RichTextIsi dengan format.Bukan target pencarian dan digunakan untuk menampilkan format.
LongBilangan bulat.Contoh: harga price.
NumberBilangan riil (termasuk desimal).
BooleanBenar/salah.
DateTanggal dan waktu.
JsonStruktur JSON sembarang.
LocationLokasi (koordinat).
ReferReferensi yang menunjuk resource lain.Tentukan Content atau Media dengan targetType.
ArrayArray yang menampung beberapa nilai.Disertai definisi elemen melalui items.

Pada contoh "Produk", Nama produk adalah ShortText, Harga adalah Long, Deskripsi adalah RichText, Foto adalah Refer (targetType: Media), dan Merek adalah Refer (targetType: Content). Field Merek membatasi referensi hanya pada Content dari Content Type tertentu (di sini "Merek", dengan sys.id 3trmXRM3RqbgSnifyg7OveRYWnJWEG) melalui referContentType di validations.

Katalog lengkap semua kunci aturan validasi yang dapat digunakan di validations dirangkum di CMA Content Type. Snapshot publikasi yang diantarkan CDA juga menyertakan struktur yang sama persis.

API

URL dasar kedua endpoint di bawah adalah https://cda.weegloo.com/v1, dan diperlukan token Bearer yang mengautentikasi CDA pada header Authorization. Karena Content Type adalah kerangka (skema) dan bukan objek yang dapat dipilih bahasanya, berbeda dengan pembacaan Content, ia tidak menerima parameter query locale.