The fault objects in this section describe possible API operation errors. All fault objects extend from the base fault, serviceFault
, for easier exception handling for languages that support it.
serviceFault
The serviceFault
, and by extension all other faults, includes message
and details
elements that contain strings that describe the nature of the fault. It also contains a code
attribute that represents the HTTP response code. The code
attribute of the fault is for the convenience of the caller, who can retrieve the response code from the HTTP response headers or directly from the fault object. Note that the serviceFault
is not returned directly; instead one of the faults based on it is returned.
badRequest
The badRequest
fault indicates that the data in the request object is invalid. For example, a string was used in a parameter that accepts only an integer. The fault wraps validation errors.
Example: badRequest fault response
{
"badRequest": {
"message": "Resource Not Found",
"category": "example",
"referenceCode": "afsgghasgahs12",
"details": [
{
"faultCode": "REQUIRED",
"resourceProperty": "resourceProperty0",
"resourceName": "resourceName0"
}
]
}
}
serviceUnavailable
The serviceUnavailable
fault is returned when the service is unavailable, such as when the service is undergoing maintenance.
Example: serviceUnavailable fault response
{
"serviceUnavailable":
{
"code": 500,
"message": "The Offer Service is currently not available."
}
}
unauthorized
The unauthorized
fault is returned when you are not authorized to perform an attempted operation.
Example: unauthorized fault response
{
"Error" : {
"code" : 401,
"message" : "Unauthorized"
}
}
forbidden
The forbidden
fault is returned when access to a resource or operation is forbidden, regardless of authorization.
Example: forbidden fault response
{
"Error" : {
"code" : 403,
"message" : "Access is forbidden."
}
}
itemNotFound
The itemNotFound
fault is returned when a requested resource is not found.
Example: itemNotFound fault response
{
"notFound": {
"message": "Product not found.",
"referenceCode": "1d37a4e4-9e4d-45f5-b2ee-09957e92fb76"
}
}
methodNotAllowed
The methodNotAllowed
fault is returned when the operation is not allowed for the resource that you are calling.
Example: methodNotAllowed fault response
{
"methodNotAllowed": {
"message": "The method you are attempting to use is not allowed for this resource.",
"referenceCode": "1d37a4e4-9e4d-45f5-b2ee-09957e92fb76"
}
}
unsupportedMediaType
The unsupportedMediaType
fault is returned when the payload type is not supported.
Example: unsupportedMediaType fault response
{
"unsupportedMediaType": {
"message": "The payload type is not supported.",
"referenceCode": "1d37a4e4-9e4d-45f5-b2ee-09957e92fb76"
}
}
notAcceptable
The notAcceptable
fault is returned when the value in the Accept
header is not supported.
Example: notAcceptable fault response
{
"notAcceptable": {
"message": "The value in the ``Accept`` header is not supported.",
"referenceCode": "1d37a4e4-9e4d-45f5-b2ee-09957e92fb76"
}
}