Spesifikasi OpenAPI adalah spesifikasi terbuka yang digerakkan oleh masyarakat dalam inisiatif OpenAPI, proyek kolaboratif Linux Foundation.
Spesifikasi OpenAPI (OAS) mendefinisikan deskripsi antarmuka agnostik-agnostik standar, pemrograman untuk HTTP API. Hal ini memungkinkan manusia dan komputer untuk menemukan dan memahami kemampuan layanan tanpa memerlukan akses ke kode sumber, dokumentasi tambahan, atau inspeksi lalu lintas jaringan. Ketika didefinisikan dengan benar melalui OpenAPI, konsumen dapat memahami dan berinteraksi dengan layanan jarak jauh dengan jumlah minimal logika implementasi. Mirip dengan apa yang telah dilakukan deskripsi antarmuka untuk pemrograman tingkat rendah, spesifikasi OpenAPI menghilangkan dugaan dalam memanggil layanan.
Kasus penggunaan untuk dokumen definisi API yang dapat dibaca mesin termasuk, tetapi tidak terbatas pada: dokumentasi interaktif; pembuatan kode untuk dokumentasi, klien, dan server; dan otomatisasi kasus uji. Dokumen OpenAPI menjelaskan layanan API dan diwakili dalam format YAML atau JSON. Dokumen -dokumen ini dapat diproduksi dan dilayani secara statis atau dihasilkan secara dinamis dari suatu aplikasi.
Spesifikasi OpenAPI tidak memerlukan penulisan ulang API yang ada. Itu tidak memerlukan mengikat perangkat lunak apa pun ke suatu layanan - layanan yang dijelaskan bahkan mungkin tidak dimiliki oleh pencipta deskripsinya. Namun, hal itu mengharuskan kemampuan layanan dijelaskan dalam struktur spesifikasi OpenAPI. Tidak semua layanan dapat dijelaskan oleh OpenAPI - spesifikasi ini tidak dimaksudkan untuk mencakup setiap gaya HTTP API yang mungkin, tetapi tidak termasuk dukungan untuk API REST. Spesifikasi OpenAPI tidak mengamanatkan proses pengembangan khusus seperti desain-pertama atau kode-pertama. Itu memang memfasilitasi kedua teknik dengan membangun interaksi yang jelas dengan HTTP API.
Proyek GitHub ini adalah titik awal untuk OpenAPI. Di sini Anda akan menemukan informasi yang Anda butuhkan tentang spesifikasi OpenAPI, contoh -contoh sederhana seperti apa, dan beberapa informasi umum mengenai proyek tersebut.
Repositori ini berisi sumber -sumber penurunan harga untuk semua versi spesifikasi OpenAPI yang diterbitkan. Untuk catatan rilis dan versi kandidat rilis, lihat halaman rilis.
Setiap folder dalam repositori ini, seperti skema dan tes, harus berisi folder yang berkaitan dengan versi spesifikasi saat ini dan sebelumnya.
Jika Anda hanya ingin melihatnya berfungsi, lihat daftar contoh saat ini.
Ingin melihat bagaimana Anda dapat membuat definisi OpenAPI Anda sendiri, menyajikannya, atau menggunakannya? Lihatlah daftar implementasi yang terus bertambah.
Proses saat ini untuk mengembangkan spesifikasi OpenAPI dijelaskan dalam pedoman yang berkontribusi.
Mengembangkan versi spesifikasi OpenAPI berikutnya dipandu oleh Komite Pengarah Teknis (TSC). Kelompok komit ini membawa keahlian API mereka, memasukkan umpan balik dari masyarakat, dan memperluas kelompok komitmen yang sesuai. Semua aktivitas pengembangan pada spesifikasi di masa depan akan dilakukan sebagai fitur dan digabungkan ke dalam cabang ini. Setelah merilis spesifikasi di masa depan, cabang ini akan digabungkan ke main
.
TSC memegang konferensi web mingguan untuk meninjau permintaan tarik terbuka dan mendiskusikan masalah terbuka yang terkait dengan spesifikasi OpenAPI yang berkembang. Partisipasi dalam panggilan mingguan dan sesi kerja yang dijadwalkan terbuka untuk masyarakat. Anda dapat melihat seluruh Kalender Pertemuan Teknis OpenAPI secara online.
Inisiatif OpenAPI mendorong partisipasi dari individu dan perusahaan. Jika Anda ingin berpartisipasi dalam evolusi spesifikasi OpenAPI, pertimbangkan untuk mengambil tindakan berikut:
Tidak semua umpan balik dapat ditampung, dan mungkin ada argumen yang solid untuk atau terhadap perubahan yang sesuai untuk spesifikasi.
Lihat: Lisensi (Apache-2.0)