Routes Preferred APIis currently available only to select customers. Contact sales
to learn more.
Package google.rpc
Stay organized with collections
Save and categorize content based on your preferences.
Status
The Status
type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC
. Each Status
message contains three pieces of data: error code, error message, and error details.
You can find out more about this error model and how to work with it in the API Design Guide
.
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License
, and code samples are licensed under the Apache 2.0 License
. For details, see the Google Developers Site Policies
. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-08-27 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-27 UTC."],[[["\u003cp\u003eThe \u003ccode\u003eStatus\u003c/code\u003e type defines a logical error model suitable for REST APIs and RPC APIs, providing error code, message, and details.\u003c/p\u003e\n"],["\u003cp\u003eIt utilizes gRPC and aligns with the API Design Guide for error handling.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eStatus\u003c/code\u003e messages contain \u003ccode\u003ecode\u003c/code\u003e for enum value of error, \u003ccode\u003emessage\u003c/code\u003e for developer-facing description, and \u003ccode\u003edetails\u003c/code\u003e for further specifics.\u003c/p\u003e\n"]]],["The `Status` message, used in REST and RPC APIs like gRPC, defines a logical error model. It comprises three data points: an `int32` error `code`, a developer-facing `string` `message` in English, and a `details` field containing a list of error messages. The `code` represents an enumerated value, the `message` is meant for developers, while `details` carry specifics for a given error. End-users are meant to receive localized messages.\n"],null,["# Package google.rpc\n\nIndex\n-----\n\n- [Status](/maps/documentation/routes_preferred/reference/rpc/google.rpc#google.rpc.Status) (message)\n\nStatus\n------\n\nThe `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details.\n\nYou can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors).\n\n| Fields ||\n|-------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `code` | `int32` The status code, which should be an enum value of `google.rpc.Code`. |\n| `message` | `string` A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the [google.rpc.Status.details](/maps/documentation/routes_preferred/reference/rpc/google.rpc#google.rpc.Status.FIELDS.repeated.google.protobuf.Any.google.rpc.Status.details) field, or localized by the client. |\n| `details[]` | [Any](https://protobuf.dev/reference/protobuf/google.protobuf/#any) A list of messages that carry the error details. There is a common set of message types for APIs to use. |"]]