This folder contains the schema of the configuration model for Google's internal API serving platform, which handles routing, quotas, monitoring, logging, and the like.
Google refers to this configuration colloquially as the “service config”, and the service.proto
file in this directory is the entry point for understanding these.
To be honest, we probably open sourced way too much of this (basically by accident). There are a couple files in here you are most likely to be interested in: http.proto
, documentation.proto
, auth.proto
, and annotations.proto
.
The http.proto
file contains the Http
message (which then is wrapped in an annotation in annotations.proto
), which provides a specification for REST endpoints and verbs (GET
, POST
, etc.) on RPC methods. We recommend use of this annotation for describing the relationship between RPCs and REST endpoints.
The documentation.proto
file contains a Documentation
message which provides a mechanism to fully describe an API, allowing a tool to build structured documentation artifacts.
The auth.proto
file contains descriptions of both authentication rules and authentication providers, allowing you to describe what your services expect and accept from clients.