1## RPC (Remote Procedure Call) Types 2 3This package contains [protocol buffer][protobuf] types that represent remote procedure 4call concepts. While [gRPC](https://grpc.io) uses these types, we encourage their 5use in any interested RPC implementation to promote compatibility and consistency. 6 7### Key Concepts 8 9- **Code**: An enum that represents an error code returned by an RPC. These error codes 10 map to HTTP codes, but are slightly finer-grained. Every gRPC code has exactly one 11 corresponding HTTP code; however, some HTTP codes have more than one corresponding 12 gRPC code. 13- **Error details**: Any of the types contained in `error_details.proto` which provide 14 extra details about particular types of failures. 15- **Status**: Combines a code, message, and error details to represent the success or 16 failure details of an RPC call. 17 18[protobuf]: https://developers.google.com/protocol-buffers/ 19