buf convert#
Convert a message between binary, text, or JSON
Usage#
Description#
Use an input proto to interpret a proto/json message and convert it to a different format.
Examples:
The <input> can be a local .proto file, binary output of "buf build", bsr module or local buf module:
All of <input>, "--from" and "to" accept formatting options:
$ buf convert example.proto#format=binpb --type=buf.Foo --from=payload#format=json --to=out#format=json
Both <input> and "--from" accept stdin redirecting:
$ buf convert <(buf build -o -)#format=binpb --type=foo.Bar --from=<(echo "{\"one\":\"55\"}")#format=json
Redirect from stdin to --from:
Redirect from stdin to <input>:
Use a module on the bsr:
Flags#
--disable-symlinks#
Do not follow symlinks when reading sources or configuration from the local filesystem By default, symlinks are followed in this CLI, but never followed on the Buf Schema Registry
--error-format string#
The format for build errors printed to stderr. Must be one of [text,json,msvs,junit,github-actions]
--from string#
The location of the payload to be converted. Supported formats are [binpb,json,txtpb,yaml]
-h, --help#
help for convert
--to string#
The output location of the conversion. Supported formats are [binpb,json,txtpb,yaml]
--type string#
The full type name of the message within the input (e.g. acme.weather.v1.Units)
--validate#
Validate the message specified with --from by applying protovalidate rules to it. See https://github.com/bufbuild/protovalidate for more details.
Flags inherited from parent commands#
--debug#
Turn on debug logging
--log-format string#
The log format [text,color,json]
--timeout duration#
The duration until timing out, setting it to zero means no timeout
Parent Command#
- buf - The Buf CLI