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"
}
}
