Errors

Request Error information.

The presence of an error field signals that the operation has failed.

JSON representation
{
  "requestId": string,
  "error": [
    {
      object (ErrorProto)
    }
  ],
  "code": enum (ErrorCode)
}
Fields
requestId

string

Request identifier generated by the service, which can be used to identify the error in the logs

error[]

object (ErrorProto)

Specific error description and codes

code
(deprecated)

enum (ErrorCode)

Global error code. Deprecated and ignored. Set custom error codes in ErrorProto.domain and ErrorProto.code instead.

ErrorProto

Describes one specific error.

JSON representation
{
  "domain": string,
  "code": string,
  "argument": [
    string
  ],
  "locationType": enum (LocationType),
  "location": string,
  "debugInfo": string,
  "externalErrorMessage": string
}
Fields
domain

string

Error domain. RoSy services can define their own domain and error codes. This should normally be the name of an enum type, such as: gdata.CoreErrorDomain

code

string

Error code in the error domain. This should correspond to a value of the enum type whose name is in domain. See the core error domain in error_domain.proto.

argument[]

string

Error arguments, to be used when building user-friendly error messages given the error domain and code. Different error codes require different arguments.

locationType

enum (LocationType)

location

string

Location of the error, as specified by the location type.

If locationType is PATH, this should be a path to a field that's relative to the request, using FieldPath notation (net/proto2/util/public/field_path.h).

Examples: authenticated_user.gaia_id resource.address[2].country

debugInfo

string

Debugging information, which should not be shared externally.

externalErrorMessage

string

A short explanation for the error, which can be shared outside Google.

Please set domain, code and arguments whenever possible instead of this error message so that external APIs can build safe error messages themselves.

External messages built in a RoSy interface will most likely refer to information and concepts that are not available externally and should not be exposed. It is safer if external APIs can understand the errors and decide what the error message should look like.

LocationType

Enums
PATH location is an xpath-like path pointing to the request field that caused the error.
OTHER other location type which can safely be shared externally.
PARAMETER Location is request paramater. This maps to the {@link PARAMETERS} in {@link MessageLocation}.

ErrorCode

Deprecated global error code.

Enums
BAD_REQUEST
FORBIDDEN
NOT_FOUND
CONFLICT
GONE
PRECONDITION_FAILED
INTERNAL_ERROR
SERVICE_UNAVAILABLE