Skip to main content

jsonschema

PyPI version Supported Python versions Build status ReadTheDocs status pre-commit.ci status Zenodo

jsonschema is an implementation of the JSON Schema specification for Python.

>>> from jsonschema import validate

>>> # A sample schema, like what we'd get from json.load()
>>> schema = {
...     "type" : "object",
...     "properties" : {
...         "price" : {"type" : "number"},
...         "name" : {"type" : "string"},
...     },
... }

>>> # If no exception is raised by validate(), the instance is valid.
>>> validate(instance={"name" : "Eggs", "price" : 34.99}, schema=schema)

>>> validate(
...     instance={"name" : "Eggs", "price" : "Invalid"}, schema=schema,
... )                                   # doctest: +IGNORE_EXCEPTION_DETAIL
Traceback (most recent call last):
    ...
ValidationError: 'Invalid' is not of type 'number'

It can also be used from console:

$ jsonschema --instance sample.json sample.schema

Features

Installation

jsonschema is available on PyPI. You can install using pip:

$ pip install jsonschema

Extras

Two extras are available when installing the package, both currently related to format validation:

  • format

  • format-nongpl

They can be used when installing in order to include additional dependencies, e.g.:

$ pip install jsonschema'[format]'

About

I’m Julian Berman.

jsonschema is on GitHub.

Get in touch, via GitHub or otherwise, if you’ve got something to contribute, it’d be most welcome!

You can also generally find me on Libera (nick: Julian) in various channels, including #python.

If you feel overwhelmingly grateful, you can also sponsor me.

And for companies who appreciate jsonschema and its continued support and growth, jsonschema is also now supportable via TideLift.

Release Information

v4.14.0

  • FormatChecker.cls_checks is deprecated. Use FormatChecker.checks on an instance of FormatChecker instead.

  • unevaluatedItems has been fixed for draft 2019. It’s nonetheless discouraged to use draft 2019 for any schemas, new or old.

  • Fix a number of minor annotation issues in protocols.Validator

Metadata

Release files for jsonschema 4.14.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for jsonschema 4.14.0
File Size Uploaded
jsonschema-4.14.0.tar.gz 288.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for jsonschema 4.14.0
File Interpreter ABI Platform
jsonschema-4.14.0-py3-none-any.whl Python 3 none any Details

Total release size: 371.0 kB

Release files / jsonschema-4.14.0.tar.gz

Download URL jsonschema-4.14.0.tar.gz
Size 288.6 kB
Tags Source
SHA-256 checksum
How to use checksums
15062f4cc6f591400cd528d2c355f2cfa6a57e44c820dc783aee5e23d36a831f
BLAKE2b-256 checksum
How to use checksums
35ee889aee424a43066a06ac68e499335877775eac9b4409f7860f6af94c6688
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release files / jsonschema-4.14.0-py3-none-any.whl

Download URL jsonschema-4.14.0-py3-none-any.whl
Size 82.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9892b8d630a82990521a9ca630d3446bd316b5ad54dbe981338802787f3e0d2d
BLAKE2b-256 checksum
How to use checksums
61fee45dbe1cff8bbc7c84845ac4cd7c1380393d8479eb68b2392ed2ed01e1bd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.13

Release history Release notifications | RSS feed

4.25.1

2 release files

4.25.0

2 release files

4.24.1

2 release files

4.24.0

2 release files

4.22.0

2 release files

4.21.1

2 release files

4.21.0

2 release files

4.20.0

2 release files

4.19.2

2 release files

4.19.1

2 release files

4.18.4

2 release files

4.18.3

2 release files

4.18.2

2 release files

4.18.1

2 release files

4.17.3

2 release files

4.17.1

2 release files

4.15.0

2 release files

This release

4.14.0 This release

2 release files

4.13.0

2 release files

4.12.1

2 release files

4.12.0

2 release files

4.11.0

2 release files

4.10.3

2 release files

4.10.2

2 release files

4.10.1

2 release files

4.10.0

2 release files

4.9.1

2 release files

4.9.0

2 release files

4.8.0

2 release files

4.7.2

2 release files

4.7.1

2 release files

4.7.0

2 release files

4.6.2

2 release files

4.6.1

2 release files

4.6.0

2 release files

4.5.1

2 release files

4.5.0

2 release files

4.4.0

2 release files

4.3.3

2 release files

4.3.2

2 release files

4.3.1

2 release files

4.3.0

2 release files

4.2.1

2 release files

4.2.0

2 release files

4.1.2

2 release files

4.1.1

2 release files

4.1.0

2 release files

4.0.1

2 release files

4.0.0

2 release files

3.2.0

2 release files

3.1.1

2 release files

3.1.0

2 release files

3.0.2

2 release files

3.0.1

2 release files

3.0.0

2 release files

2.6.0

2 release files

2.5.1

3 release files

2.5.0

2 release files

2.4.0

3 release files

2.3.0

3 release files

2.2.0

2 release files

2.1.0

2 release files

2.0.0

2 release files

1.3.0

2 release files

1.2.0

2 release files

1.1.0

2 release files

1.0.0

2 release files

0.8.0

2 release files

0.7

2 release files

0.6

2 release files

0.5

2 release files

0.4

2 release files

0.3

2 release files

0.2

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page