rpk registry schema create

Create a schema for the given subject.

This uploads a schema to the registry, creating the schema if it does not exist. The schema type is detected by the filename extension: .avro or .avsc for Avro and .proto for Protobuf. You can manually specify the type with the --type flag.

You may pass the references using the --reference flag, which accepts either a comma separated list of <name>:<subject>:<version> or a path to a file. The file must contain lines of name, subject, and version separated by a tab or space, or the equivalent in json / yaml format.


Create a Protobuf schema with subject foo:

rpk registry schema create foo --schema path/to/file.proto

Create an avro schema, passing the type via flags:

rpk registry schema create foo --schema /path/to/file --type avro

Create a Protobuf schema that references the schema in subject my_subject, version 1:

rpk registry schema create foo --schema /path/to/file.proto --references my_name:my_subject:1


rpk registry schema create SUBJECT --schema {filename} [flags]


Value Type Description

-h, --help


Help for create.



Comma-separated list of references (name:subject:version) or path to reference file.



Schema filepath to upload, must be .avro, .avsc, or .proto.



Schema type avro or protobuf ; overrides schema file extension.



Redpanda or rpk config file; default search paths are ~/.config/rpk/rpk.yaml, $PWD, and /etc/redpanda/redpanda.yaml.

-X, --config-opt


Override rpk configuration settings. See rpk -X or execute rpk -X help for inline detail or rpk -X list for terser detail.



Output format: json,yaml,text,wide,help. Default: text.



Profile to use. See rpk profile for more details.

-v, --verbose


Enable verbose logging.