DT Dev Tools

JSON till Zod — Generera scheman

Konvertera JSON till Zod-scheman online med nÀstlade objekt, arrayer, valfria och nullbara fÀlt samt z.infer-typer för TypeScript. Gratis, snabbt och privat.

🔒 Körs helt i din webblĂ€sare — ingenting laddas upp

Annons

Zod-scheman genererade frÄn JSON

TypeScript-typer försvinner vid körning, sÄ data frÄn ett API, ett formulÀr eller localStorage Àr bara sÄ sÀker som koden som kontrollerar den. Zod tÀcker det glappet genom att validera vÀrden mot ett schema och inferera TypeScript-typen frÄn samma schema. Den hÀr JSON till Zod-konverteraren skriver schemat Ät dig: klistra in ett JSON-exempel sÄ blir varje objekt ett z.object, primitiver mappas till z.string(), z.number() och z.boolean(), arrayer blir z.array(...) och nÀstlade objekt fÄr egna namngivna scheman som ÄteranvÀnds överallt dÀr de förekommer.

Verktyget drivs av quicktype, som slÄr ihop varje element i varje array innan typerna infereras. FÀlt som bara förekommer i vissa objekt markeras som valfria, och vÀrden som ibland Àr null markeras som nullbara, sÄ att schemat accepterar de verkliga data du sÄg och inte bara det första elementet.

Scheman och infererade typer tillsammans

Som standard exporterar resultatet ocksÄ en TypeScript-typ för varje schema med z.infer, vilket ger dig en enda sanningskÀlla för bÄde validering och statisk typning. Importera rotschemat och anropa RootSchema.parse(data) för att validera ett opÄlitligt vÀrde och fÄ ett typat resultat, eller safeParse nÀr du vill hantera fel utan undantag. Markera Schemas only om du hellre deklarerar typer pÄ annat hÄll. Det Àr ett naturligt komplement till verktyget JSON till TypeScript nÀr du behöver garantier vid körning och inte bara tips vid kompilering.

Tips för strÀngare scheman

Generera frÄn ett representativt exempel med flera arrayelement och ifyllda valfria fÀlt. Förfina sedan det som ett exempel inte kan visa: lÀgg till .email(), .url() eller .uuid() pÄ strÀngfÀlt, anvÀnd z.enum för fÀlt med en fast uppsÀttning vÀrden, begrÀnsa tal med .int() eller .min() och bestÀm om okÀnda nycklar ska tas bort eller avvisas med .strict(). All generering sker lokalt, sÄ du kan tryggt klistra in payloads frÄn produktion.

Hur man anvÀnder

  1. Klistra in JSONKlistra in ett API-svar eller valfritt JSON-exempel, eller klicka pÄ Load sample.
  2. Namnge rotenAnge rotschemats namn och bestÀm om infererade typer ska ingÄ.
  3. Kopiera schemanaKopiera TypeScript-koden eller ladda ner en .ts-fil och validera med schema.parse().

Vanliga frÄgor

Vad innehÄller resultatet?
Ett Zod-schema för varje objekt i din JSON samt TypeScript-typer infererade med z.infer. Markera Schemas only för att hoppa över typaliasen.
Hur hanteras valfria och nullbara fÀlt?
FÀlt som saknas eller Àr null i vissa exempel fÄr .optional() eller .nullable(), sÄ att valideringen accepterar de variationer som förekommer i verkliga data.
Vilken Zod-version riktar sig verktyget mot?
Schemana anvÀnder kÀrn-API:erna z.object, z.array, z.string och z.number, som fungerar i bÄde Zod 3 och Zod 4.
Laddas min JSON upp?
Nej. Schemana genereras helt i din webblÀsare.
Annons