JSON to Python
Paste a JSON object or API response and get typed Python dataclasses instantly.
Frequently Asked Questions
Why dataclasses instead of a plain dict?
A dataclass gives you typed, autocompletable attributes (user.name instead of user["name"]) and catches typos at development time in editors and type checkers like mypy — a dict offers none of that.
Are JSON field names converted to snake_case?
Yes. A camelCase key like userName becomes user_name in the generated dataclass, matching standard Python naming conventions (PEP 8).
How do I actually load JSON into these dataclasses?
Use a library like dacite or pydantic to convert a parsed dict into the dataclass, e.g. dacite.from_dict(data_class=User, data=json.loads(raw)) — plain dataclasses don't do this conversion automatically.
What type is used for a null value?
Fields with a null value are typed as Any from the typing module, since the real type can't be inferred from a single null — you may want to replace it with a more specific Optional[...] type once you know it.
Is my JSON uploaded anywhere?
No. Generation runs entirely client-side in your browser.