Dokumentasi Resmi
|tulis.org

Arsitektur Dokumentasi

Peta jalan panduan, SDK integration, dan API reference lengkap yang disiapkan secara terstruktur.

TULIS CMS/DEVELOPER HUB
/api-reference-post-list-posts

Daftar Posting

Melihat daftar posting dengan paginasi untuk sebuah workspace dari API publik.

Endpoint

GET /v1/posts

Autentikasi

Wajib. Berikan kunci API sebagai Bearer token dan identifikasi workspace melalui header X-Workspace-ID atau dengan mengakses API melalui subdomain workspace.

  • Authorization: Bearer ***
  • X-Workspace-ID: YOUR_WORKSPACE_ID

Atau, targetkan https://YOUR_WORKSPACE_SUBDOMAIN.YOUR_HOST sebagai pengganti mengirim X-Workspace-ID.

Parameter Kueri

ParameterTipeBawaanDeskripsi
typestring(kosong)Slug tipe posting. Kosong mengembalikan semua tipe.
taxonomystring(kosong)Filter berdasarkan slug taksonomi.
sortstringpublished_at descEkspresi pengurutan, mis. title asc.
pageinteger1Nomor halaman (berbasis 1).
per_pageinteger10Jumlah posting per halaman.

Internasionalisasi (i18n): Setiap posting membawa bidang language (ISO 639-1, mis. id, en). Endpoint daftar publik belum menyediakan filter kueri language — untuk membangun pengalih bahasa, ambil semua posting dan kelompokkan/saring di sisi klien berdasarkan bidang language, atau minta terjemahan melalui admin API. Lihat bidang language pada contoh respons di bawah.

Respons

{
  "status": 200,
  "message": "Posting berhasil diambil",
  "data": [
    {
      "id": "3f1a2b9c-7e4d-4c8a-9b21-0c5d6e7f8a90",
      "title": "Memulai dengan Tulis",
      "slug": "memulai-dengan-tulis",
      "content": "<p>Selamat datang di Tulis, headless CMS Anda...</p>",
      "excerpt": "Pengenalan singkat membangun dengan Tulis.",
      "status": "published",
      "post_type": "article",
      "language": "id",
      "published_at": "2026-01-15T08:30:00Z",
      "feature_image": "https://cdn.tulis.app/media/cover-123.jpg",
      "seo_title": "Memulai dengan Tulis | Dokumen Tulis",
      "seo_desc": "Pelajari cara mengatur dan menggunakan Tulis sebagai headless CMS Anda.",
      "reading_time": 4,
      "taxonomies": [
        { "id": "a1b2c3d4-1111-2222-3333-444455556666", "name": "Panduan", "slug": "panduan", "type": "category" },
        { "id": "b2c3d4e5-2222-3333-4444-555566667777", "name": "Pemula", "slug": "pemula", "type": "tag" }
      ],
      "author": {
        "id": "c3d4e5f6-3333-4444-5555-666677778888",
        "name": "Ahmad Fulan",
        "avatar": "https://cdn.tulis.app/media/avatar-ahmad.jpg"
      }
    }
  ],
  "meta": {
    "Page": 1,
    "PerPage": 10,
    "Total": 42,
    "TotalPages": 5,
    "HasNext": true,
    "HasPrev": false
  }
}

Contoh cURL

curl "https://YOUR_HOST/v1/posts?type=article&sort=published_at%20desc&page=1&per_page=10" \
  -H "Authorization: Bearer ***" \
  -H "X-Workspace-ID: YOUR_WORKSPACE_ID"

Lini Masa Peluncuran Fitur

Fase 1: Setup Awal & KonfigurasiSELESAI

Docker Compose, pengaturan file environment, dan panduan setup lokal telah lengkap dibuat.

Fase 2: Referensi RESTful APISELESAI

Dokumentasi route endpoint publik, otentikasi JWT, dan kontrol hak akses telah selesai disusun.

Fase 3: Integrasi Frontend & Fitur LanjutSEDANG BERJALAN

Mempersiapkan boilerplate untuk Next.js client, manajemen revisi konten, dan optimasi query.