Serving API

Get all

GET/sdgs/buku_panduan

Satu halaman baris tabel buku_panduan, dengan filter, sort, dan pagination lewat query string. Setiap kolom yang disajikan dapat dipakai sebagai filter.

Memerlukan API key dengan scope sdgunsri.

Query parameter

NamaTipeKeterangan
pageintegerNomor halaman, mulai dari 1.
page_sizeintegerBaris per halaman. Default 50, maksimum 200.
sortstringDaftar kolom dipisah koma, awalan - untuk descending; kolom array tidak bisa di-sort. id_buku_panduan_sdgunsri selalu ditambahkan di akhir sebagai tie-breaker.
{kolom}, {kolom}[op]sesuai kolomFilter pada kolom mana pun yang disajikan; op salah satu dari eq, ne, gt, gte, lt, lte, in, like, has, null, sesuai tipe kolom. Semua filter digabung dengan AND: baris harus memenuhi setiap filter. Daftar kolom →

Respons

StatusKeterangan
200Satu halaman baris: data (array), page, dan meta.
400Parameter query tidak sah: kolom tidak dikenal, operator tidak berlaku untuk tipenya, nilai salah bentuk, atau parameter berulang. Field param menyebutkan parameternya.
401Tidak ada API key, atau API key tidak dikenal atau sudah dicabut.
403API key sah tetapi tidak memiliki scope sdgunsri.
429Rate limit terlampaui; tunggu selama header Retry-After.

Field pada data adalah kolom tabel buku_panduan, dengan nama dan tipe yang sama. Lihat daftar kolom →

Contoh request

curl -g -H "Authorization: Bearer lh_..." \
  "https://api.ranah.durianworks.my.id/v1/sdgs/buku_panduan?sort=-tahun&page_size=10"

Contoh respons

Nilai pada contoh menunjukkan tipe tiap field, bukan data sungguhan.

{
  "data": [
    {
      "id_buku_panduan_sdgunsri": 1,
      "judul": "…",
      "deskripsi": "…",
      "kategori_dokumen": "…",
      "tahun": 1,
      "url_berkas": "…",
      "nama_berkas": "…",
      "is_aktif": true,
      "nama_pembuat": "…",
      "created_at": "2026-08-26T05:12:45.123456Z"
    }
  ],
  "page": { "page": 1, "page_size": 10, "total": 1 },
  "meta": { "as_of": "2026-08-26T12:16:32.543000Z" }
}