proto
What is a .proto file?
text/plain
Proto files define Protocol Buffers schemas, Google's language-neutral interface definition language for serializing structured data. They declare typed messages, fields, and services that a compiler turns into efficient binary serialization code in many languages. They underpin gRPC and high-performance data interchange.
How to use a .proto file
Use an example proto file to test schema parsers, code generation across languages, and gRPC service or message-definition tooling.
Download example .proto files
- Protocol Buffers Schema (proto3)A proto3 Protocol Buffers schema with messages, an enum, and a repeated field — for testing protobuf compilers (protoc), codegen, and schema tooling.
- Sample Protobuf SchemaSample Protobuf Schema — small deterministic fixture for parsers and the in-browser editor.
- Protocol Buffers Schema Evolution - BaselineThe baseline proto3 Customer message for field-number and wire-compatibility testing. Reference wire contract: field 1 is string id and field 2 is string name.
- Protocol Buffers Schema Evolution - Backward-CompatibleThe compatible proto3 Customer message for field-number and wire-compatibility testing. Backward compatible: existing field numbers/types are retained and optional email uses new field number 3.
- Protocol Buffers Schema Evolution - BreakingThe breaking proto3 Customer message for field-number and wire-compatibility testing. Breaking relative to baseline: field number 2 is reused with a different name and wire type.
- Convert v2 Protobuf Schema CompanionProto3 schema companion declaring the three fields used by the binary creator record. Stable P8 artifact p8-convert-protobuf-schema.