Generator Python Class ke JSON Schema

Input Kode Python

Memuat editor…

Output JSON Schema

Pengaturan

Pilih class, dataclass, atau BaseModel yang akan digunakan sebagai root JSON Schema.

Parsing berjalan sepenuhnya di browser Anda. Sumber Anda tidak pernah meninggalkan halaman.

Tempel class Python untuk menghasilkan JSON Schema secara instan.

Mendukung dataclass, BaseModel, enum, TypedDict, dan sintaks type hint modern.

Cara mengonversi dataclass, model Pydantic, dan TypedDict Python menjadi JSON Schema – panduan langkah demi langkah

Konverter class Python ke JSON Schema online ini membantu Anda menghasilkan JSON Schema dari model nyata (DTO, struct, dan class) sehingga Anda dapat memvalidasi payload, membagikan kontrak, dan membuat JSON mock.

  1. Langkah 1 – Tempel sumber Python Anda

    • Tempel model yang ingin Anda dokumentasikan ke editor kiri.
    • Sertakan tipe yang direferensikan dalam snippet yang sama agar schema dapat menghasilkan definitions.
    • Gunakan tombol Contoh untuk memuat contoh dan melihat format input yang diharapkan.
  2. Langkah 2 – Pilih Model root (jika perlu)

    • Jika beberapa definisi terdeteksi, pilih root yang cocok dengan payload API Anda.
    • Output schema dibangun berdasarkan root yang dipilih dan dapat menyertakan definisi tambahan untuk tipe yang direferensikan.
  3. Langkah 3 – Tinjau output JSON Schema

    • Periksa tipe, field wajib vs opsional, serta struktur objek/array bersarang.
    • Cari definitions dan $ref saat model Anda mereferensikan model lain.
    • Salin atau unduh schema untuk validasi, dokumentasi, atau pengembangan schema-first.
  4. Langkah 4 – Validasi atau buat JSON mock

    • Klik Buat Data Mock untuk membuka mock generator dengan schema Anda yang sudah dimuat.
    • Validasi payload nyata terhadap schema untuk menangkap breaking change lebih awal.
    • Jika Anda mengandalkan komposisi schema lanjutan (misalnya anyOf/oneOf/allOf), verifikasi hasilnya dengan validator penuh seperti Ajv.

Catatan dukungan keyword schema

Schema yang dihasilkan dapat menyertakan $ref dan bisa diedit untuk menyertakan anyOf, oneOf, atau allOf. Untuk schema yang kompleks, gunakan validator JSON Schema penuh dan lakukan dereference sebelum membuat mock jika diperlukan.

Alat JSON Schema & pembuatan kode terkait

Gunakan alat-alat ini untuk memvalidasi schema, menghasilkan payload mock, memformat contoh JSON, dan menjaga sinkronisasi kode serta kontrak.

Pertanyaan yang Sering Diajukan

Struktur Python apa yang didukung?

Konverter memahami class biasa, dataclass, class Pydantic BaseModel, dan definisi TypedDict. Konverter membaca anotasi field, nilai default, petunjuk Optional/Union, nilai Literal, dan subclass Enum untuk membangun JSON Schema yang akurat tanpa mengunggah kode Anda.

Bagaimana deteksi tipe bekerja untuk Python?

Type hint seperti list[str], dict[str, Any], Optional[int], tuple[float, float], serta class atau enum kustom dipetakan ke primitif/array/objek/reference JSON Schema secara otomatis. Saat anotasi hilang, alat ini melakukan inferensi sederhana dari nilai default sambil mengeluarkan peringatan agar Anda tahu apa yang perlu disesuaikan.

Bisakah digunakan untuk berbagai versi Python dan framework?

Ya. Sintaks modern seperti PEP 585 generic types, PEP 604 union (str | None), dan decorator seperti @dataclass(frozen=True) atau @validator didukung. Alat ini juga menangani petunjuk classic typing.Optional/typing.List, sehingga kode untuk Python 3.7+ bekerja tanpa hambatan.

Bagaimana cara membuat JSON mock dari schema?

Setelah schema dibuat, gunakan shortcut "Buat Data Mock" untuk membuka Mock Generator dengan schema yang sudah dimuat. Konfigurasikan locale, jumlah array, dan langsung buat payload contoh untuk dokumentasi atau tes.

Generator Python Class ke JSON Schema | JSONSwiss