Protocol Documentation
{{range .Files}}
{{.Name}}
{{para .Description}}
{{range .Messages}}
{{.LongName}}
{{para .Description}}
{{if .HasFields}}
{{.LongName}} Fields
Field
Type
Label
Description
{{range .Fields}}
{{.Name}}
{{.LongType}}
{{.Label}}
{{if (index .Options "deprecated"|default false)}}Deprecated.{{end}}{{para .Description}}{{if .DefaultValue}}Default: {{.DefaultValue}}{{end}}
{{end}}
{{end}}
{{if .HasExtensions}}
{{.LongName}} Nested Extensions
Extension
Type
Base
Number
Description
{{range .Extensions}}
{{.Name}}
{{.LongType}}
{{.ContainingLongType}}
{{.Number}}
{{para .Description}}{{if .DefaultValue}}Default: {{.DefaultValue}}{{end}}
{{end}}
{{end}}
{{end}}
{{range .Enums}}
{{.LongName}}
{{para .Description}}
{{.LongName}} Values
Name
Number
Description
{{range .Values}}
{{.Name}}
{{.Number}}
{{para .Description}}
{{end}}
{{end}}
{{if .HasExtensions}}
File-level Extensions
Extension
Type
Base
Number
Description
{{range .Extensions}}
{{.Name}}
{{.LongType}}
{{.ContainingLongType}}
{{.Number}}
{{para .Description}}{{if .DefaultValue}}Default: {{.DefaultValue}}{{end}}
{{end}}
{{end}}
{{range .Services}}
{{.Name}}
{{para .Description}}
{{.Name}} Methods
Method Name
Request Type
Response Type
Description
{{range .Methods}}
{{.Name}}
{{.RequestLongType}}{{if .RequestStreaming}} stream{{end}}
{{.ResponseLongType}}{{if .ResponseStreaming}} stream{{end}}
{{para .Description}}
{{end}}
{{end}}
{{end}}
Scalar Value Types
.proto Type
Notes
C++
Java
Python
Go
C#
PHP
Ruby
{{range .Scalars}}
{{.ProtoType}}
{{.Notes}}
{{.CppType}}
{{.JavaType}}
{{.PythonType}}
{{.GoType}}
{{.CSharp}}
{{.PhpType}}
{{.RubyType}}
{{end}}