Memuat Dokumen via Daftar Tautan (link.md)
Memuat Dokumen via Daftar Tautan (link.md)
URL: /ingest/sambung/linkmd
Pelengkap, bukan metode sambung tersendiri. Halaman ini menjelaskan cara memasukkan dokumen ke folder yang sudah tersambung (via WebDAV, SFTP, atau Google Drive) tanpa harus upload berkas satu per satu — cukup menunjuk URL dokumen yang sudah online di portal resmi instansi.
Cocok bila: dokumen SAKIP Anda sudah tersedia online sebagai berkas (PDF/DOCX/dst) di portal resmi instansi — mis.
bappeda.{instansi}.go.id,jdih.{instansi}.go.id,ppid.{instansi}.go.id, atau penyimpanan cloud publik. Anda cukup menyiapkan daftar tautan langsung ke berkas; sistem akan mengunduhnya. Bila dokumen masih di disk internal dan belum punya URL publik, tetap pakai cara upload langsung sesuai metode sambung yang Anda pilih.
Tujuan & Sifat
Mekanisme daftar tautan (link.md) menyediakan cara paling ringan untuk menambah dokumen ke folder yang sudah tersambung — tanpa harus mengunggah berkas satu per satu ke kambing.gov3.id.
Instansi cukup menulis satu file teks berisi daftar URL dokumen mereka. Sistem akan:
- membaca file
link.md, - memeriksa setiap URL (jenis berkas, ukuran, keamanan),
- mengunduh berkas dari URL,
- menyimpan ke folder instansi di
kambing.gov3.idsebagai berkas reguler — sama seperti hasil upload manual.
Setelah unduh selesai, berkas masuk pipeline standar (kumpul → baca → simpan → telusur) bersamaan dengan berkas yang Anda upload langsung.
Catatan kedaulatan data. URL adalah milik instansi; sistem hanya mengambil snapshot saat fetch. Sumber tetap di portal resmi instansi (single source of truth). Berkas di
kambing.gov3.idadalah salinan arsip untuk audit.
Karakteristik
- Effort instansi paling minim — tidak butuh setup teknis tambahan. Cukup tulis file teks berisi daftar URL.
- Cocok untuk dokumen yang sudah online — RPJMD/Renstra/PK/LKjIP yang sudah dipublikasikan di portal Bappeda/JDIH/PPID instansi.
- Tautan harus langsung ke berkas, bukan halaman web — sistem hanya mengunduh berkas; navigasi halaman tidak didukung (lihat Aturan Tautan).
- Fetch on-demand, bukan otomatis berkala — tim penyelenggara men-trigger fetch ulang ketika
link.mddiperbarui. Belum ada scan periodik (rencana iterasi berikutnya). - Non-destruktif — fetch tidak menghapus berkas yang sudah ada. Bila berkas dengan nama sama sudah ada, fetch baru di-skip (kecuali admin explicit minta overwrite).
- Audit trail — setiap fetch dicatat (URL → berkas → waktu → hash) untuk traceability evaluasi.
Aturan Tautan
1. Tautan WAJIB langsung ke berkas
Boleh — tautan langsung ke berkas PDF/DOCX/dst:
https://bappeda.{instansi}.go.id/dokumen/rpjmd-2025-2030.pdf
https://{instansi}.go.id/files/lkjip-2024-final.pdf
Tidak boleh — tautan ke halaman web indeks/landing:
https://bappeda.{instansi}.go.id/dokumen-perencanaan (halaman indeks)
https://{instansi}.go.id/ (homepage)
https://drive.google.com/drive/folders/abc123 (folder browse)
Cara cek cepat: buka tautan di browser. Bila langsung memunculkan dialog unduh PDF/DOCX/dst → benar. Bila membuka halaman web dengan daftar/menu → bukan tautan yang dimaksud.
2. Jenis berkas yang didukung
Dokumen modern (OOXML/PDF):
| Tipe | Ekstensi |
|---|---|
.pdf |
|
| Microsoft Word (modern) | .docx |
| Microsoft Excel (modern) | .xlsx |
| Microsoft PowerPoint (modern) | .pptx |
Format teks & data:
| Tipe | Ekstensi |
|---|---|
| Markdown | .md |
| Plain text | .txt |
| Comma-separated | .csv |
| JSON | .json |
| XML | .xml |
| YAML | .yaml, .yml |
Tidak didukung — file binary lama (
.doc/.xls/.ppt), arsip terkompresi (.zip/.rar), dan halaman web (.html/.htm). Untuk dokumen lama, simpan ulang sebagai format modern (Word: Save As → .docx; Excel: .xlsx).
Berkas HTML/halaman web tidak diproses — itu untuk navigasi manusia, bukan dokumen.
3. Protokol HTTPS dianjurkan
Pakai https://... bila bisa. Tautan http://... (tanpa s) diblok secara default untuk alasan keamanan transport.
4. Batas ukuran 25 MB per berkas
Bila berkas Anda lebih besar dari 25 MB, kompres terlebih dahulu (mis. via ilovepdf.com) atau pecah jadi beberapa berkas (mis. RPJMD per bab).
5. Google Drive — TIDAK didukung
Tautan Google Drive (drive.google.com) tidak diproses di mekanisme ini. Untuk dokumen yang disimpan di Google Drive, gunakan jalur dedicated Penyambungan via Temporary Cloud Storage (Google Drive) yang menangani autentikasi OAuth, interstitial virus-scan, dan share folder dengan benar.
Alasan teknis: link Gdrive direct-download punya banyak edge case yang sulit di-handle uniform (interstitial untuk file > 25 MB, virus-scan token, redirect chain, batas akses anonim). Lebih reliable lewat jalur Gdrive khusus.
Cara Menulis link.md
link.md adalah berkas teks biasa dengan format Markdown sederhana. Baris demi baris, satu URL per baris.
Format paling sederhana — satu URL per baris
https://bappeda.{instansi}.go.id/files/rpjmd-2025-2030.pdf
https://{instansi}.go.id/dokumen/pk-kepala-2025.pdf
https://{instansi}.go.id/dokumen/lkjip-2024.pdf
Cukup. Sistem akan mengambil setiap URL.
Format dengan label (lebih rapi)
Pakai format markdown [label](url) supaya jelas tiap tautan itu dokumen apa:
[RPJMD 2025-2030](https://bappeda.{instansi}.go.id/files/rpjmd-2025-2030.pdf)
[Perjanjian Kinerja Kepala Daerah 2025](https://{instansi}.go.id/dokumen/pk-kepala-2025.pdf)
[LKjIP 2024](https://{instansi}.go.id/dokumen/lkjip-2024.pdf)
Label hanya untuk dokumentasi internal Anda — sistem tetap pakai URL untuk mengambil berkas.
Pengelompokan dengan komentar
Tambahkan komentar dengan tanda # di awal baris. Sistem akan mengabaikan baris ini:
# Daftar Dokumen SAKIPAI — Instansi {instansi}
# Periode: 2024-2025
# Last update: 2026-05-13 oleh: bidang.akuntabilitas@{instansi}.go.id
## Tingkat Pemda — Perencanaan
[RPJMD 2025-2030](https://bappeda.{instansi}.go.id/files/rpjmd-2025-2030.pdf)
[PK Kepala Daerah 2025](https://{instansi}.go.id/dokumen/pk-kepala-2025.pdf)
## Tingkat Pemda — Pelaporan
[LKjIP 2024](https://{instansi}.go.id/dokumen/lkjip-2024.pdf)
## OPD — Dinas Kesehatan
[Renstra Dinkes 2025-2030](https://dinkes.{instansi}.go.id/files/renstra-2025-2030.pdf)
[Renja Dinkes 2025](https://dinkes.{instansi}.go.id/files/renja-2025.pdf)
[PK Kepala Dinas Kesehatan 2025](https://dinkes.{instansi}.go.id/files/pk-2025.pdf)
## OPD — Dinas Pendidikan
[Renstra Disdik 2025-2030](https://disdik.{instansi}.go.id/files/renstra-2025-2030.pdf)
[Renja Disdik 2025](https://disdik.{instansi}.go.id/files/renja-2025.pdf)
Alur Singkat
[Instansi] [Tim Penyelenggara] [kambing.gov3.id]
│ │ │
│ 1. Tulis link.md (daftar URL dokumen) │ │
│ dan kirim ke tim penyelenggara │ │
│ ────────────────────────────────────────────────────►│ │
│ │ │
│ │ 2. Tim taruh link.md di │
│ │ folder instansi di kambing ─────►│
│ │ (mis. docget/{slug-instansi}/ │
│ │ link.md) │
│ │ │
│ │ 3. Trigger docfetch: │
│ │ - baca link.md │
│ │ - periksa tiap URL (jenis, ukuran)│
│ │ - unduh setiap berkas │
│ │ - simpan ke folder instansi ────►│
│ │ │
│ │ │ 4. Berkas siap untuk
│ │ │ tahap kumpul → baca
│ │ │ → simpan → telusur
│ │ │
│ 5. (Update) Edit link.md lalu kirim ulang │ │
│ ketika dokumen di portal diperbarui │ │
│ ────────────────────────────────────────────────────►│ │
Manual Sisi Pengguna Instansi
1. Siapkan daftar URL dokumen SAKIP Anda
Kumpulkan tautan langsung ke seluruh dokumen SAKIP yang sudah tersedia di portal instansi (atau penyimpanan publik). Pastikan setiap tautan memenuhi aturan di Aturan Tautan.
2. Tulis berkas link.md
Buka editor teks (Notepad, VS Code, atau bahkan Catatan di smartphone). Tulis berkas dengan nama link.md berisi daftar tautan, mengikuti salah satu format di Cara Menulis link.md.
3. Periksa setiap tautan
Sebelum mengirim, buka setiap tautan di browser. Pastikan masing-masing langsung mengunduh berkas (bukan menampilkan halaman web). Bila ada yang gagal, perbaiki URL atau hapus dari daftar.
4. Kirim link.md ke tim penyelenggara
Kirim berkas via email (atau channel komunikasi yang disepakati) dengan keterangan:
- nama instansi,
- singkatan instansi (mengikuti subdomain portal gov3 — misal
palembangkota,jabarprov,kemenpanrb), - tanggal pengiriman,
- alamat email PIC SAKIP Anda untuk umpan balik.
5. Tunggu konfirmasi dan hasil fetch
Tim penyelenggara akan:
- memvalidasi bahwa folder instansi sudah ada di
kambing.gov3.id, - menaruh berkas
link.mdke folder tersebut, - men-trigger proses fetch ke seluruh URL di daftar,
- mengabarkan hasil — URL mana yang berhasil diunduh, yang gagal (404, ukuran terlalu besar, format tidak didukung, dll), dan saran perbaikan.
6. Perbarui link.md ketika dokumen diperbarui
Bila dokumen di portal instansi diperbarui (mis. LKjIP versi final menggantikan draft), edit berkas link.md Anda (tambah URL baru atau ganti URL lama dengan versi terbaru), lalu kirim ulang ke tim penyelenggara. Sistem akan fetch ulang.
Manual Sisi Admin Tim Penyelenggara
Dari sisi tim penyelenggara yang menerima link.md:
1. Verifikasi folder instansi di kambing.gov3.id
Pastikan folder docget/{singkatan-instansi}/ sudah ada. Bila belum, buat terlebih dahulu (atau koordinasikan dengan admin sistem). Folder tidak otomatis dibuat oleh docfetch — sengaja sebagai safety guard.
2. Letakkan link.md di folder instansi
Upload link.md yang dikirim instansi ke docget/{singkatan-instansi}/link.md. Bila instansi sudah memiliki link.md sebelumnya, overwrite — versi baru menggantikan versi lama.
3. Jalankan docfetch.read_link_md (mode dry-run)
Sebelum eksekusi, panggil docfetch.read_link_md(instansi_slug) untuk memvalidasi parsing — pastikan semua URL terdeteksi, format markdown terbaca dengan benar, jumlah URL sesuai ekspektasi.
4. Jalankan docfetch.fetch_from_link_md dengan dry_run=True
Mode dry-run akan menjalankan HEAD ke setiap URL — preview ukuran, content-type, status — tanpa benar-benar mengunduh berkas. Periksa preview ini:
- apakah content-type valid (PDF/DOCX/dst, bukan
text/html)? - apakah ukuran berkas wajar (tidak melebihi batas 25 MB)?
- apakah status
HEADadalah200 OK(bukan404/403)?
5. Jalankan docfetch.fetch_from_link_md dengan dry_run=False
Bila preview aman, eksekusi unduh sebenarnya. Sistem akan:
- mengunduh tiap URL,
- memvalidasi content-type + ukuran saat streaming,
- mengunggah berkas ke
docget/{singkatan-instansi}/{nama-berkas}, - mencatat audit log (URL → berkas → SHA256 → waktu),
- mengembalikan ringkasan: total / sukses / dilewati / gagal beserta alasan.
6. Konfirmasi balik ke PIC instansi
Sampaikan hasil ke PIC instansi:
- daftar URL yang berhasil unduh,
- daftar URL yang gagal beserta alasan (
HTTP 404, ukuran berlebih, content-type tidak didukung, SSRF block, dll), - saran perbaikan untuk URL yang gagal.
Berkas yang berhasil diunduh akan otomatis muncul di Pengumpulan Dokumen dan masuk pipeline standar.
Catatan Teknis: Validasi & Keamanan
Mekanisme docfetch menerapkan beberapa lapisan validasi sebelum dan selama unduh:
- Block IP privat & metadata cloud — URL yang resolve ke
10.x.x.x,172.16-31.x.x,192.168.x.x,127.x.x.x,169.254.x.x, atau alamat loopback IPv6 ditolak. Mencegah serangan SSRF (Server-Side Request Forgery). - Content-Type whitelist — hanya tipe MIME dokumen umum (PDF, DOCX, XLSX, ZIP, dll). Halaman web
text/htmlditolak otomatis. - Batas ukuran 100 MB — streaming download dipotong bila berkas melebihi batas. Mencegah pengisian disk
kambing.gov3.idyang tidak terkontrol. - Rate limit 1 req/detik per host — sopan terhadap server instansi, mencegah dianggap scraper agresif.
- User-Agent identifiable —
SAKIPAI-DocFetch/{versi} (+https://sakip.cybergl.co.id). Admin server instansi yang ingin whitelist / blacklist dapat mengenali request kami dengan mudah.
Bantuan Teknis
Bila instansi atau tim penyelenggara mengalami kendala dalam penyiapan link.md — URL tidak terdeteksi, format salah, atau berkas gagal unduh — jangan lewatkan kunjungan tim teknis dari UI-CSGAR yang mendampingi Ditjen RB Kunwas KemenPAN-RB. Tim akan membantu memeriksa link list dan troubleshoot langsung.
Tips Praktis
- Mulai kecil — kirim batch pertama berisi 3–5 URL dokumen induk (RPJMD, PK Pemda, LKjIP Pemda). Setelah konfirmasi sukses, lanjutkan dengan dokumen OPD.
- Sertakan tahun di label — sistem akan lebih mudah membedakan dokumen yang sama tipe tapi beda tahun (RPJMD 2020 vs RPJMD 2025).
- Simpan salinan
link.mddi drive lokal Anda — sebagai backup dan untuk diperbarui lain waktu. - Bisa digunakan bersamaan dengan jalur lain — instansi yang sudah punya WebDAV/SFTP/Google Drive tetap boleh memakai
link.mduntuk menambah dokumen dari URL eksternal (mis. dokumen di portal kementerian, JDIH pusat, atau cloud terpisah).