Skip to content

emka.web.id

menulis pengetahuan – merekam peradaban

Menu
  • Home
  • Tutorial
  • Search
Menu

Cara Sederhanakan Dokumentasi API dengan Swagger

Posted on September 1, 2024

Anda pernah mencoba mendokumentasikan API Anda menggunakan Swagger?

Biasanya, setelah menonton tutorial dan membaca dokumentasi resmi OpenAPI, kita cenderung menulis semuanya dalam satu file YAML. Kita mendefinisikan komponen, skema, dan lainnya di satu tempat.

Ini mengakibatkan file YAML dengan ratusan baris kode, yang sulit dibaca, dimodifikasi, dan di-debug dalam jangka panjang.

Satu-satunya solusi yang ditawarkan adalah menggunakan SwaggerHub milik OpenAPI, yang sayangnya tidak gratis.

Tidak ideal, bukan?

Pendekatan Modular untuk Dokumentasi API yang Lebih Baik

Ada cara yang lebih baik untuk mendekati dokumentasi API dengan Swagger: dengan menggunakan pendekatan modular.

Alih-alih menulis semua kode dalam satu file, kita dapat membaginya menjadi beberapa file YAML yang lebih kecil, masing-masing mewakili bagian tertentu dari API.

Misalnya, kita dapat membuat folder terpisah untuk parameter, sumber daya, respons, dan skema.

Dengan cara ini, struktur kode menjadi lebih teratur dan mudah dipahami.

Menggabungkan File YAML dengan swagger-cli

Setelah kita memiliki file YAML yang terstruktur dengan baik, kita dapat menggabungkannya menjadi satu file menggunakan alat swagger-cli.

Berikut adalah langkah-langkahnya:

  1. Buat folder terpisah untuk setiap bagian dari API.
  • Misal: parameters, resources, responses, dan schemas.
  1. Buat file YAML untuk setiap bagian, dengan nama yang deskriptif.
  • Contoh: users.yaml di folder resources.
  1. Ekspor setiap file YAML sebagai modul.
  2. Buat file YAML utama yang mengimpor semua modul YAML yang telah dibuat.
  3. Gunakan swagger-cli untuk menggabungkan semua file YAML menjadi satu.

Berikut contoh perintah yang dapat digunakan:

npx swagger-cli bundle src/openapi.yaml -outfile _build/openapi.yaml -type yaml

Perintah ini akan menggabungkan semua file YAML di folder src dan menyimpannya dalam satu file di folder _build.

Mengujinya di Swagger Live Editor

Setelah file YAML gabungan selesai dibuat, Anda dapat mencobanya di Swagger Live Editor.

Cukup salin dan tempelkan konten file YAML ke editor dan lihat bagaimana dokumentasi API Anda ditampilkan.

Keuntungan Pendekatan Modular

Pendekatan modular menawarkan beberapa keuntungan:

  • Kemudahan pemeliharaan: Kode menjadi lebih mudah dipahami dan diubah.
  • Kemudahan debugging: Jika terjadi kesalahan, Anda dapat dengan mudah menemukan sumbernya.
  • Kolaborasi yang lebih baik: Setiap orang dapat mengerjakan bagian yang berbeda dari API tanpa perlu khawatir tentang konflik kode.
  • Struktur yang lebih baik: Kode menjadi lebih terorganisir dan mudah di-navigate.

Kesimpulan

Dengan menggunakan pendekatan modular untuk mendokumentasikan API dengan Swagger, Anda dapat membuat proses dokumentasi menjadi lebih efisien dan efektif.

Anda akan memiliki kode yang lebih terorganisir, mudah diubah, dan mudah di-debug.

Selain itu, Anda dapat memanfaatkan kekuatan swagger-cli untuk menggabungkan semua file YAML menjadi satu file yang dapat digunakan di Swagger Live Editor.

Untuk melihat contoh implementasi pendekatan modular ini, Anda dapat mengunjungi repositori GitHub saya.

Terbaru

  • Inilah Cara Blokir Email Spam di Gmail Biar Penyimpanan Nggak Gampang Penuh
  • Inilah Cara Aktivasi Keaktifan PTK di EMIS GTK IMP 2026 Biar Tunjangan Cair Lancar!
  • Inilah Cara Menilai Sumbangan yang Disetarakan dengan Uang Supaya Pajak Kalian Berkurang
  • Apa itu Pin di iMessage?
  • SKTP Nggak Muncul di Info GTK padahal Sudah Terbit? Ini Trik Rahasia Biar Data Langsung Update!
  • Ini Trik Nuyul Cari Cuan di Game Puzzle Farm 2026 Biar Koin Melimpah Tanpa Undang Teman
  • Inilah Ukuran Kertas Thermal 58mm ISO Di Word, Berapa dan Panduan Lengkap Memilihnya
  • Bukan Cuma Zakat! Ternyata Sumbangan Jenis Ini Bisa Ngurangin Pajak Kalian! Simak Penjelasannya
  • Inilah Caranya Mengajar Bahasa Indonesia di Amerika Serikat Lewat Beasiswa Fulbright FLTA 2026
  • Inilah 6 Rekomendasi HP yang Awet dan Tahan Lama Biar Kalian Nggak Gonta-ganti Terus!
  • Apa itu Proses BOP dan Psikotes BRI Life?
  • Ini Cara Input Tugas Tambahan Guru di EMIS GTK IMP 2026 Biar Jam Mengajar Aman!
  • APK Juice Pack Frenzy Penipuan? Benarkah Membayar atau Cuma Tipuan Iklan? Ini Faktanya!
  • Apakah Apk ReelAct Penipu? Mau Tarik 100 Dolar dari Reel Act? Cek Dulu Faktanya Biar Nggak Rugi Waktu!
  • Inilah Rekomendasi Game Turn Base Android dan PC Terbaik Buat Kalian yang Suka Strategi!
  • Inilah Cara Membuat Sertifikat di Canva dan Ukuran Standar yang Wajib Kalian Tahu
  • Inilah Aturan Zakat yang Bisa Jadi Pengurang Pajak Bruto Kalian, Sudah Tahu Belum?
  • Inilah Data Pendaftar KIP Kuliah 2026 Jalur SNBP dan Bocoran Kriteria yang Lolos!
  • Inilah Game Silent Hill: Townfall, Teror Psikologis Baru yang Bakal Bikin Kalian Gemetar di Tahun 2026!
  • Inilah Trailer Mortal Kombat 2, Johnny Cage Resmi Gabung dan Siap Hadapi Shao Kahn!
  • Inilah Spesifikasi Lengkap Samsung Galaxy S26 yang Baru Meluncur, Ternyata Harganya Naik Segini!
  • Inilah Cara Mematikan MSA Xiaomi Supaya HP Nggak Lemot dan Bebas Iklan, Ternyata Langkahnya Simpel Banget!
  • Inilah Kronologi Mobil Calya Plat D yang Viral Lawan Arus di Jakpus, Ternyata Bawa Banyak Plat Palsu!
  • Inilah Axioo Hype AI 5, Laptop AI Canggih yang Nggak Bikin Kantong Bolong!
  • Ini Loh Kejahatan Modus Phishing Google Tasks Terbaru yang Bisa Nguras Data Perusahaan Kalian
  • Inilah Poco X7 5G dan M7 Pro 5G, HP Gaming Performa Ekstrem yang Ngebikin Mabar Kalian Jadi Anti Lag!
  • Inilah Cara Mengubah Lahan Kosong Jadi Uang Lewat Strategi Land Banking
  • Ini Trik Supaya Gajian YouTube Shorts Tembus Puluhan Juta dari Penonton Bule!
  • Jangan Sampai Keliru! Begini Cara Cek Total Jam Linear dan Non Linear di EMIS GTK IMP 2026
  • Cuma Nonton Drama Pendek Bisa Cair Uang Tunai? Bongkar Habis Kebenaran Aplikasi FunFlick di Sini!
  • What’s New in elementary OS 8.1.1 with Linux Kernel 6.17?
  • Microsoft Tests AI Feature to Monitor Open Apps on Windows 11 Taskbar
  • Is Google Chrome Secretly Downloading AI Models? Everything You Need to Know
  • Shotcut 2.6.2 Fixes Timeline & HEVC Crashes: What You Need to Know
  • Hyprland Desktop 0.54 Released: Adds Per-Workspace Layouts
  • Prompt AI Menyusun Script Pola Suara Karakter agar Brand Jadi Ikonik
  • Prompt AI untuk Merancang Karakter Brand yang Ikonik
  • Prompt AI Audit Konten Sesuai Karakter Brand
  • Prompt AI Merubah Postingan LinkedIn Jadi Ladang Diskusi dengan ChatGPT
  • Prompt AI: Paksa Algoritma LinkedIn Promosikan Konten Kalian
  • Apa itu Spear-Phishing via npm? Ini Pengertian dan Cara Kerjanya yang Makin Licin
  • Apa Itu Predator Spyware? Ini Pengertian dan Kontroversi Penghapusan Sanksinya
  • Mengenal Apa itu TONESHELL: Backdoor Berbahaya dari Kelompok Mustang Panda
  • Siapa itu Kelompok Hacker Silver Fox?
  • Apa itu CVE-2025-52691 SmarterMail? Celah Keamanan Paling Berbahaya Tahun 2025
Beli Pemotong Rumput dengan Baterai IRONHOOF 588V Mesin Potong Rumput 88V disini https://s.shopee.co.id/70DBGTHtuJ
Beli Morning Star Kursi Gaming/Kantor disini: https://s.shopee.co.id/805iTUOPRV

©2026 emka.web.id | Design: Newspaperly WordPress Theme