Browse documentation

Register Kafka Schemas and Publish New Versions

Use Register Schema for the first version of a new subject. To evolve an existing subject, open it and publish a new version from its details.

Register Avro, JSON Schema, and Protobuf schemas

Click Register Schema, then choose Avro, JSON Schema, or Protobuf. Kafma loads an editable example for the selected format.

Enter the schema definition and choose how its subject name is created. The subject preview shows the exact name that will be registered. Click Register to create the subject and its first version.

Kafma schema registration editor with Avro, JSON Schema, and Protobuf formats, subject naming strategy, and references

If the subject already exists, Kafma stops the registration and directs you to publish a new version instead.

Choose a Kafka subject name strategy

The strategy controls which schemas share a version history.

StrategySubject name
Topic Name<topic>-key or <topic>-value
Record NameThe qualified record or message name from the schema
Topic + Record Name<topic>-<qualified-record-name>
CustomThe subject name you enter

Topic Name is the default and keeps key and value schemas separate for one topic. Use a record-based strategy when the same record type appears across topics or a topic contains multiple record types. Use Custom when an existing naming convention requires an exact subject name.

Add schema references

A schema reference points to a type registered under another subject. Add the reference name as used by the schema, then enter its subject and version.

Every started reference must contain all three values. Kafma blocks registration or publishing when a reference is incomplete; Schema Registry resolves the referenced definition when it validates the schema.

Publish a new schema version

Open a subject and select the version you want to use as the starting point. Click New Version to place that version beside an editable draft.

The comparison updates as you edit, making added and removed lines visible before publishing. You can also add, change, or remove references for the new version.

Kafma schema editor showing a draft diff against the selected schema version

Publish becomes available after the draft has changed, its syntax can be parsed, and every reference is complete. Publishing registers the draft as the next version under the same subject. Discarding the draft does not change Schema Registry.

Schema Registry compatibility

Compatibility determines whether a schema can read data written with another version registered under the subject.

ModeCompatibility direction
BACKWARDConsumers using the new schema can read data written with the previous schema
FORWARDConsumers using the previous schema can read data written with the new schema
FULLBoth backward and forward compatibility
NONENo compatibility check

Non-transitive modes compare the new schema with the latest registered version. The _TRANSITIVE variants compare it with every earlier version. The exact allowed changes differ between Avro, JSON Schema, and Protobuf.

A subject override takes precedence over the global compatibility setting. Check the Compatibility card in the subject details before changing a schema.

When you click Publish, Kafma checks compatibility as part of the publish flow; there is no separate check step. Schema Registry then validates the registration and either accepts or rejects the new version.

NONE disables version-to-version compatibility checks. Schema Registry still validates the schema definition and its references.

Fix a rejected schema version

Start with the error shown above the draft, then check:

  1. The subject's effective compatibility mode.
  2. The lines added or removed in the comparison.
  3. The name, subject, and version of each reference.

The selected version only sets the draft's starting point; it does not change which versions Schema Registry checks. Non-transitive modes check the latest version, while transitive modes check all earlier versions. Use the compatibility error and the highlighted changes beside the draft to identify what to revise.

Next steps