Paste a JSON sample (an API response, a config file, anything) and this tool generates matching TypeScript interface declarations, entirely in your browser.
Arrays of objects that share the same shape are collapsed into a single reused interface instead of one per item. A field whose value is null is typed null; an array whose elements don't share a common, precise shape falls back to unknown[] rather than guessing.
This is inference from a single sample, not a schema — fields that only sometimes appear, or that hold different types across different real responses, won't be reflected unless they're present in what you paste.
How are arrays of objects handled?
If every object in the array has the same field names and types, they collapse into one reused interface (e.g. User[]) instead of a separate interface per item.
What happens if an array's items don't share a shape?
The element type falls back to unknown[] rather than guessing at a precise union — this is inference from a single sample, not a full schema language.
Is this a JSON Schema or OpenAPI generator?
No — it infers types purely from the one JSON sample you paste. Optional fields, unions across multiple real responses, and other schema-level concepts aren't captured unless they appear in that sample.