skillfed

python-schema-registry-client

Python Rest Client to interact against Schema Registry confluent server

python-schema-registry-client v2.6.1 703.8K downloads/30d#5,279 on PyPI
Permissive license MIT AGING released

What it is and what it does

This package provides a Python REST client to interact with Confluent's Schema Registry, allowing you to register, retrieve, and manage Avro and JSON schemas centrally. It wraps httpx and anyio for HTTP communication, and uses fastavro and jsonschema for schema validation and serialization. The client supports both synchronous and asynchronous workflows, and includes message serializers for encoding and decoding records against registered schemas.

You typically use it in data pipeline or event-streaming applications where multiple services need to agree on message formats. The package integrates with external tools like Pydantic and dataclasses-avroschema, so you can generate schemas directly from Python type definitions rather than writing them by hand. It requires Python 3.8 or later and has no compiled dependencies, making installation straightforward.

Use it for:

  • Register and version Avro schemas in a central registry before publishing events to Kafka topics.
  • Serialize and deserialize messages using schemas stored in Schema Registry during event production and consumption.
  • Validate JSON or Avro data against registered schemas to catch schema mismatches early in a pipeline.
  • Generate schemas from Pydantic models or dataclasses and push them to Schema Registry for cross-service schema governance.
  • Test schema compatibility before deploying schema changes in a streaming or event-driven architecture.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

REST client for registering, retrieving, and managing Avro and JSON schemas in a Confluent Schema Registry server.

Yes, if you are working with Confluent Schema Registry and need a Python client. The package is stable, has no known vulnerabilities, and low install friction. The aging maintenance status (497 days since last release) is a minor concern for long-term support, but the core functionality is mature and unlikely to require frequent updates. Install it if schema management is central to your architecture; skip it if you do not use Schema Registry.

Install

python-schema-registry-client on PyPI

pip

pip install python-schema-registry-client

uv

uv add python-schema-registry-client

poetry

poetry add python-schema-registry-client

Installing python-schema-registry-client

Before you install

Low install friction with a pure-wheel distribution. Maintenance status is aging—last release was 497 days ago—so expect slower response to issues, though the package remains functional for its core use case.

License in practice

MIT license is permissive; you can use, modify, and distribute this package freely in commercial and private projects with minimal restrictions.

Quickstart

pip install python-schema-registry-client

from schema_registry.client import SchemaRegistryClient

client = SchemaRegistryClient(url="http://127.0.0.1:8081")
schema_id = client.register("test-subject", {"type": "record", "name": "Test", "fields": [{"name": "id", "type": "int"}]})

Requires a running Confluent Schema Registry server accessible at the configured URL.

Verify before relying

  • Whether async support is production-ready and feature-complete relative to the sync client.
  • Performance characteristics and throughput limits when registering or retrieving large numbers of schemas.
  • Compatibility with recent Confluent Schema Registry API versions beyond what the documentation covers.

Package facts

License MIT (permissive)
Python support supports the current Python release (<4.0,>=3.8)
Install friction low — pure-Python wheel
Runtime dependencies 4 — fastavro, jsonschema, httpx, anyio
Maintenance aging — 497 days since the last release
First released
Downloads 703,838/month — #5,279 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: python_schema_registry_client-2.6.1-py3-none-any.whl

Intended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: Software Development

Tags

schema registry clientavro schema managementconfluent schema registryjson schema registryschema serialization deserializationschema versioningconfluent schema client
schema-managementdata-serialization

More Software Development packages

typing-extensions

Provides backported and experimental type hints…

permissive · top 100 on PyPI

numpy

NumPy provides an N-dimensional array object…

permissive · top 100 on PyPI

fastapi

FastAPI is a Python web framework for building…

permissive · top 100 on PyPI

annotated-doc

Provides a way to document function parameters,…

permissive · top 100 on PyPI

typer

Typer builds command-line applications from…

permissive · top 1,000 on PyPI

distlib

Distlib provides low-level packaging utilities…

permissive · top 1,000 on PyPI

aws-glue-schema-registry

Serializes and deserializes messages using AWS…

permissive · top 15,000 on PyPI

confluent-kafka

Provides a high-performance Python client for…

permissive · top 1,000 on PyPI

azure-schemaregistry

Registers, retrieves, and manages schemas in…

permissive · top 5,000 on PyPI

confluent_avro

Serializes and deserializes Avro data according…

permissive · top 15,000 on PyPI

py-avro-schema

Generates Apache Avro schemas from Python…

permissive · top 15,000 on PyPI

kafka-schema-registry

Integrates Kafka with Confluent Schema Registry…

permissive · top 15,000 on PyPI

dataclasses-avroschema

Generates Avro schemas from Python dataclasses,…

permissive · top 5,000 on PyPI

pydantic-avro

Converts between pydantic class definitions and…

permissive · top 5,000 on PyPI

azure-schemaregistry-avroserializer

Serializes and deserializes Avro data using…

permissive · top 15,000 on PyPI

avro-gen3

Generates typed Python record classes and a…

permissive · top 5,000 on PyPI