googleapis/google/api
Google APIs 51555daa41 fix!: change the field_behavior of contact_email from OPTIONAL to REQUIRED
docs: update the comment for field `contact_email` in message `.google.api.cloudquotas.v1.QuotaPreference`

PiperOrigin-RevId: 591966138
2023-12-18 11:47:28 -08:00
..
apikeys chore: reformatted protos 2023-09-15 13:43:57 -07:00
cloudquotas/v1 fix!: change the field_behavior of contact_email from OPTIONAL to REQUIRED 2023-12-18 11:47:28 -08:00
expr chore(php): remove non-ads php_grpc_library targets 2023-05-30 17:06:44 -07:00
servicecontrol chore(php): remove non-ads php_grpc_library targets 2023-05-30 17:06:44 -07:00
servicemanagement chore: remove backend configuration from the service config 2023-10-30 14:34:20 -07:00
serviceusage chore(bazel): fix serviceconfig Go libraries 2023-09-19 13:35:58 -07:00
annotations.proto feat: Publish visibility.proto; refresh other google/api/ files. 2021-04-27 14:09:36 -07:00
auth.proto feat: added overrides_by_request_protocol to backend.proto 2023-03-17 09:51:37 -07:00
backend.proto feat: added overrides_by_request_protocol to backend.proto 2023-03-17 09:51:37 -07:00
billing.proto feat: added overrides_by_request_protocol to backend.proto 2023-03-17 09:51:37 -07:00
BUILD.bazel feat: public google.api.FieldInfo type and extension 2023-10-02 09:08:25 -07:00
client.proto feat: add auto_populated_fields to google.api.MethodSettings 2023-11-29 09:03:57 -08:00
config_change.proto feat: added overrides_by_request_protocol to backend.proto 2023-03-17 09:51:37 -07:00
consumer.proto feat: Publish visibility.proto; refresh other google/api/ files. 2021-04-27 14:09:36 -07:00
context.proto feat: added overrides_by_request_protocol to backend.proto 2023-03-17 09:51:37 -07:00
control.proto feat: Add a proto message to describe the resource_type and resource_permission for an API method 2023-07-24 15:19:19 -07:00
distribution.proto feat: .NET library settings (for generator behavior tweaks) 2023-03-28 08:55:34 -07:00
documentation.proto feat: added overrides_by_request_protocol to backend.proto 2023-03-17 09:51:37 -07:00
endpoint.proto feat: added overrides_by_request_protocol to backend.proto 2023-03-17 09:51:37 -07:00
error_reason.proto feat: added overrides_by_request_protocol to backend.proto 2023-03-17 09:51:37 -07:00
field_behavior.proto feat: add new FieldBehavior value IDENTIFIER 2023-08-22 08:30:36 -07:00
field_info.proto feat: public google.api.FieldInfo type and extension 2023-10-02 09:08:25 -07:00
http.proto feat: added overrides_by_request_protocol to backend.proto 2023-03-17 09:51:37 -07:00
httpbody.proto feat: added overrides_by_request_protocol to backend.proto 2023-03-17 09:51:37 -07:00
label.proto feat: added overrides_by_request_protocol to backend.proto 2023-03-17 09:51:37 -07:00
launch_stage.proto feat: added overrides_by_request_protocol to backend.proto 2023-03-17 09:51:37 -07:00
log.proto feat: added overrides_by_request_protocol to backend.proto 2023-03-17 09:51:37 -07:00
logging.proto feat: added overrides_by_request_protocol to backend.proto 2023-03-17 09:51:37 -07:00
metric.proto feat: added overrides_by_request_protocol to backend.proto 2023-03-17 09:51:37 -07:00
monitored_resource.proto feat: added overrides_by_request_protocol to backend.proto 2023-03-17 09:51:37 -07:00
monitoring.proto feat: added overrides_by_request_protocol to backend.proto 2023-03-17 09:51:37 -07:00
policy.proto feat: Add a proto message to describe the resource_type and resource_permission for an API method 2023-07-24 15:19:19 -07:00
quota.proto feat: added overrides_by_request_protocol to backend.proto 2023-03-17 09:51:37 -07:00
README.md chore: update README files 2023-10-11 10:16:35 -07:00
resource.proto feat: added overrides_by_request_protocol to backend.proto 2023-03-17 09:51:37 -07:00
routing.proto feat: added overrides_by_request_protocol to backend.proto 2023-03-17 09:51:37 -07:00
service.proto feat: added overrides_by_request_protocol to backend.proto 2023-03-17 09:51:37 -07:00
serviceconfig.yaml feat: public google.api.FieldInfo type and extension 2023-10-02 09:08:25 -07:00
source_info.proto feat: added overrides_by_request_protocol to backend.proto 2023-03-17 09:51:37 -07:00
system_parameter.proto feat: added overrides_by_request_protocol to backend.proto 2023-03-17 09:51:37 -07:00
usage.proto feat: added overrides_by_request_protocol to backend.proto 2023-03-17 09:51:37 -07:00
visibility.proto feat: added overrides_by_request_protocol to backend.proto 2023-03-17 09:51:37 -07:00

API Protos

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.

Using these protos

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.

HTTP and REST

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.

Documentation

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.

Authentication

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.