Validator OpenAPI

Tempel dokumen OpenAPI atau Swagger, dalam JSON atau YAML, dan validator ini memeriksa struktur intinya. Ia memastikan dokumen dapat diurai, membawa bidang versi openapi atau swagger, objek info dengan judul dan versi, serta objek paths, lalu menandai path yang tidak diawali garis miring dan metode HTTP yang tidak dikenal. Ini adalah pemeriksaan struktur yang cepat, bukan validator JSON Schema lengkap.

Bagaimana proses validasi berjalan

  1. 1

    Tempel dokumennya

    JSON atau YAML, untuk OpenAPI 2 (Swagger) atau OpenAPI 3.

  2. 2

    Urai dokumennya

    Validator mengurai dokumen sebagai JSON, dan beralih ke penguraian YAML jika itu gagal.

  3. 3

    Periksa bidang yang wajib

    Ia memastikan ada bidang versi `openapi` atau `swagger`, objek `info` dengan `title` dan `version`, serta objek `paths`.

  4. 4

    Pindai path-nya

    Setiap path diperiksa apakah diawali garis miring, dan setiap kunci operasi diperiksa terhadap metode HTTP yang dikenal.

  5. 5

    Baca laporannya

    Galat menggagalkan validitas; peringatan menyoroti path tanpa garis miring di depan dan metode yang tidak dikenal.

Apa yang diperiksa validator ini

Pemeriksaan Hasil jika gagal
Dokumen terurai sebagai JSON atau YAML Galat
Ada bidang openapi atau swagger Galat
Ada objek info Galat
Ada info.title Galat
Ada info.version Galat
Ada objek paths Galat
Setiap path diawali / Peringatan
Kunci operasi adalah metode HTTP dikenal Peringatan

Dokumen yang lolos setiap galat dilaporkan sebagai valid secara struktural. Peringatan tidak menggagalkan validitas; ia menyoroti hal-hal yang layak diperbaiki.

Apa yang tidak diperiksa

Ini pemeriksaan struktur, bukan validator spesifikasi lengkap. Ia tidak:

  • memvalidasi setiap node terhadap JSON Schema resmi untuk versi Anda;
  • menyelesaikan referensi $ref atau memastikan komponen yang dirujuknya ada;
  • memeriksa bahwa parameter path dideklarasikan dan digunakan secara konsisten;
  • memverifikasi nilai operationId ada atau unik;
  • melaporkan nomor baris untuk galat.

Untuk kedalaman itu, jalankan validator CLI khusus seperti redocly lint, swagger-cli validate, atau spectral lint. Gunakan alat ini untuk pemeriksaan cepat sebelum Anda menyimpan atau membagikan spesifikasi.

Versi OpenAPI di lapangan

Versi Catatan
Swagger 2.0 Masih banyak dipakai; memakai swagger: "2.0"
OpenAPI 3.0.x Lini 3.x yang paling umum
OpenAPI 3.1.0 Selaras dengan JSON Schema 2020-12

Validator ini menerima bidang openapi (3.x) atau bidang swagger (2.0), jadi semuanya lolos pemeriksaan versi.

Dokumen minimal yang lolos

openapi: 3.0.3
info:
  title: Example API
  version: 1.0.0
paths:
  /users:
    get:
      summary: List users

Setiap bidang wajib ada, satu-satunya path diawali garis miring, dan get adalah metode yang dikenal, sehingga ini dilaporkan sebagai valid secara struktural.

Pertanyaan yang Sering Diajukan

Swagger adalah nama awal spesifikasi ini, yang disumbangkan ke Linux Foundation pada 2015 dan diganti nama menjadi “OpenAPI” sejak versi 3.0. Kini “Swagger” merujuk pada perangkatnya (Swagger UI, Swagger Editor). Spesifikasinya sendiri adalah OpenAPI. Validator ini menerima bidang versi swagger (2.0) maupun openapi (3.x).

Bukan. Ia memeriksa struktur inti: bahwa dokumen dapat diurai, membawa bidang versi, objek info dengan judul dan versi, serta objek paths, dan memperingatkan path tanpa garis miring di depan serta metode yang tidak dikenal. Ia tidak memvalidasi setiap node terhadap JSON Schema resmi. Gunakan redocly lint atau spectral lint untuk itu.

Tidak. Ia tidak mengikuti referensi $ref atau memeriksa keberadaan komponen yang dirujuknya. Untuk referensi lintas berkas, gabungkan dulu dokumen dengan alat seperti redocly bundle atau swagger-cli bundle, lalu jalankan validator lengkap.

Tidak. Ia hanya memeriksa dokumen yang Anda tempel, bukan kode yang berjalan. Ia tidak bisa tahu apakah API Anda benar-benar mengembalikan apa yang dijelaskan spesifikasi. Alat pengujian kontrak seperti Dredd atau Schemathesis melakukannya.

Alat Terkait

Alat ini tersedia dalam bahasa lain