APItude is using standard http codes as well as custom errors, please see a list of most common ones with tips.
Standard http codes don’t have any mystery, but here we have common APITUDE authentication issues.
| 
 status code  | 
 Description  | 
| 
 200  | 
 OK - The request has succeeded. The client can read the result of the request in the body and the headers of the response.  | 
| 
 400  | 
 Bad Request - The request could not be understood by the server due to malformed syntax. The message body will contain more information  | 
| 
 403  | 
 Forbidden. See more details below  | 
| 
 404  | 
 Not Found - The requested resource could not be found. This error can be due to a temporary or permanent condition  | 
| 
 406  | 
 Not Acceptable: The resource identified by the request is only capable of generating response entities which have content characteristics not acceptable according to the accept headers sent in the request.  | 
| 
 415  | 
 Unsupported Media Type - Use the Content-Type header to set application/json or application/xml based on the format of your payload  | 
| 
 429  | 
 Too Many Requests, check the used quota  | 
| 
 500  | 
 Internal Server Error.  | 
| 
 502  | 
 Bad Gateway - The server was acting as a gateway or proxy and received an invalid response from the upstream server.  | 
| 
 503  | 
 Service Unavailable - The server is currently unable to handle the request due to a temporary condition which will be alleviated after some delay. You can choose to resend the request again.  | 
| 
 596  | 
 Service Not Found - an invalid endpoint has being reached. Please check that the endpoint you are using to send the petitions is correct.  | 
| 
 status code  | 
 error  | 
 tip  | 
| 
 401  | 
 "error": "Authorization field missing"  | 
 Check request headers "Api-key” parameter must be present and correct.  | 
| 
 401  | 
 "error": "Request signature verification failed"  | 
 Check request headers "X-Signature” parameter must be present and generated as it should. Check secret, apikey, and SHA256 hash generation function.  | 
| 
 403  | 
 "error": "Access to this API has been disallowed"  | 
 System has successfully validated the credentials, but there are not allowed to for the requested endpoint, check the endpoint.  | 
| 
 403  | 
 "error": "Access to this resource has been disallowed"  | 
 If you have check the previous 403 errors tips and still facing issues, make sure you are using the correct allowed method for the requested endpoint (GET,POST, DELETE…).  | 
| 
 405  | 
 "message": "10.222.62.38 Request method 'POST' not supported"  | 
 Make sure you are using the correct allowed method for the requested endpoint (GET,POST, DELETE…)  | 
Application errors: Specific codes and descriptions can be returned in a list of errors
| 
 Error code or category  | 
 Error message  | 
| 
 GENERAL  | 
 
  | 
| 
 E_REQUEST_INVALID  | 
 The received request is not a valid JSON or XML.  | 
| 
 E_REQUEST_UNRECOGNIZEDFIELD  | 
 The following field is not recognized: %s.  | 
| 
 E_REQUEST_MISSINGFIELD  | 
 The following required field is missing: %s.  | 
| 
 E_REQUEST_UNKNOWNFILTER  | 
 Unknown filter type, allowed filters are: %s  | 
| 
 E_REQUEST_MISSINGFILTERVALUE  | 
 Missing '%s' for filter type: %s  | 
| 
 E_REQUEST_FILTERNUMERICVALUE  | 
 Value for filter type %s must be numeric  | 
| 
 E_REQUEST_MULTIPLEFILTERNOTALLOWED  | 
 Filtering by %s can only be used once per combined criteria  | 
| 
 E_REQUEST_FILTERCOMBINATIONNOTALLOWED  | 
 Filtering by %s and %s cannot be combined at the same criteria  | 
| 
 E_REQUEST_TOOLONGFIELD  | 
 The following field exceeds the maximum length allowed (max: %s, received: %s): %s  | 
| 
 E_REQUEST_INVALIDLANGUAGE  | 
 The requested language (%s) is not valid.  | 
| 
 E_REQUEST_INVALIDCARDTYPE  | 
 The requested card type (%s) is not valid.  | 
| 
 E_REQUEST_INVALIDPAGE  | 
 The requested page is not valid.  | 
| 
 E_REQUEST_TOOMANYRESULTS  | 
 Too many results (%s) requested, maximum allowed is %s.  | 
| 
 E_REQUEST_RANGEEXCEEDED  | 
 The maximumn days range allowed is %s (%s requested).  | 
| 
 E_REQUEST_DATERANGE  | 
 The requested date range is not valid.  | 
| 
 E_REQUEST_PASTDATE  | 
 The requested date is in the past.  | 
| 
 E_REQUEST_NOTINRANGEFIELD  | 
 The following field are not in the allowed range (max: %s, min: %s, received: %s): %s  | 
| 
 E_REQUEST_INVALIDREFERENCEFORMAT  | 
 The reference format is invalid: %s  | 
| 
 E_REQUEST_ATLEASTONEADULT  | 
 At least one adult is needed (adults must be more than 18 years old)  | 
| 
 E_REQUEST_DETAILSCONTRACT  | 
 The request with a contract is not allowed  | 
| 
 Detail api call specific errors  | 
|
| 
 E_ACTIVITYDETAIL_NOTFOUND  | 
 No activity details could be found for the given data.  | 
| 
 Booking confirmation errors  | 
|
| 
 E_CONFIRMATION_DUPLICATEDSERVICES  | 
 Duplicated purchaseableServiceIds in the booking confirmation request.  | 
| 
 E_CONFIRMATION_UNKNOWNSERVICE  | 
 The system was unable to retrieve purchaseable services with the following IDs: %s  | 
| 
 E_CONFIRMATION_WRONGLANGUAGE  | 
 All purchaseableServiceId to confirm must have been generated using the same language.  | 
| 
 E_CONFIRMATION_WRONGOFFICE  | 
 All services to confirm must belong to the same office.  | 
| 
 E_CONFIRMATION_WRONGCOMPANY  | 
 All services to confirm must belong to the same company.  | 
| 
 E_CONFIRMATION_MISSINGQUESTION  | 
 Required question with code %s (service %s) was not answered.  | 
| 
 E_CONFIRMATION_MISSINGPAXINFORMATION  | 
 Required information with code %s (service %s) was not filled for all paxes.  | 
| 
 E_CONFIRMATION_PAXESDONOTMATCH  | 
 Ages specified at confirm do not match the ones specified during details request.  | 
| 
 E_CONFIRMATION_SERVICENOLONGERAVAILABLE  | 
 The purchaseable service %s is no longer availavle. Please, do a new detail.  | 
| 
 E_CONFIRMATION_SERVICENOTCONFIRMED  | 
 There was an error confirming the puchaseable service %s.  | 
| 
 E_CONFIRMATION_NOTRESPONDING  | 
 The system is not responding and the booking was not confirmed. Please, try again.  | 
| 
 E_CONFIRMATION_PAYMENTERROR  | 
 There was an error while processing the payment. The booking was not confirmed.  | 
| 
 E_CONFIRMATION_GATEWAYNOTRESPONDING  | 
 The payment gateway is not responding and the booking was not confirmed. Please, try again.  | 
| 
 E_CONFIRMATION_CARDNUMBERINNAME  | 
 For security reasons the holder name cannot contain the card number.  | 
| 
 E_CONFIRMATION_INVALIDCARD  | 
 The provided card information is not valid.  | 
| 
 E_CONFIRMATION_INVALIDEXPIRATIONMONTH  | 
 The provided expiration month is not valid. Valid values are from 1 to 12.  | 
| 
 E_CONFIRMATION_INVALIDEXPIRATIONYEAR  | 
 The provided expiration year is not valid. Valid values are from %s  | 
| 
 E_CONFIRMATION_PASTEXPIRATIONDATE  | 
 The provided expiration date must be greater than current date  | 
| 
 E_CONFIRMATION_LIMITEXCEEDED  | 
 The credit card has not enough funds to pay the booking.  | 
| 
 E_CONFIRMATION_ATLASSIMULATEPRECONFIRMERROR  | 
 Error during preconfirm the booking (simulation): %s  | 
| 
 E_CONFIRMATION_ATLASCOMMITPRECONFIRMERROR  | 
 Error during preconfirm the booking (commit): %s  | 
| 
 E_CONFIRMATION_ATLASSIMULATECONFIRMERROR  | 
 Error during confirm the booking (simulation): %s  | 
| 
 E_CONFIRMATION_ATLASCOMMITCONFIRMERROR  | 
 Error during confirm the booking (commit): %s  | 
| 
 E_CONFIRMATION_ATLASRECONFIRMERROR  | 
 Error during reconfirming the booking %s-%s: %s  | 
| 
 E_CONFIRMATION_ATLASCANCELPRECONFIRMBOOKINGERROR  | 
 Error during cancelling the preconfirmed booking %s-%s: %s  | 
| 
 E_CONFIRMATION_PURCHASEABLESERVICEALREADYCONFIRMED  | 
 The purchasable service %s has already been confirmed. Can't be confirmed twice.  | 
| 
 E_CONFIRMATION_RETRIEVEPICKUPSID  | 
 The confirmation request contains a retrievePickupId instead of a purchaseableServiceId. Please, use the retrievePickupId %s to obtain a valid purchaseableServiceId and use it in the confirmation operation  | 
| 
 Booking detail errors  | 
|
| 
 E_BOOKING_NOTFOUND  | 
 No booking was found for reference %s.  | 
| 
 E_BOOKING_GETBOOKINGERROR  | 
 The booking %S can't be retrieved form DB.  | 
| 
 Booking cancellation errors  | 
|
| 
 E_BOOKING_NOTCANCELLABLE  | 
 Booking with reference %s cannot be cancelled.  | 
| 
 E_BOOKING_CANCELLATIONERROR  | 
 Error trying to cancel booking with reference %s: %s - %s  | 
| 
 E_BOOKING_REFUNDERROR  | 
 Error trying to refund booking with reference %s: %s - %s  | 
| 
 E_BOOKING_GETBOOKINGCANCELERROR  | 
 Error trying to cancel booking with reference %s. The booking can't be retrieved form DB.  | 
| 
 Other errors  | 
|
| 
 E_AVAILABILITY  | 
 An unexpected error has occurred during availability, please try again.  | 
| 
 E_UNKNOWN  | 
 Unknown error.  | 
| 
 Retrieve pickups specific errors  | 
|
| 
 E_RETRIEVEPICKUPS_UNKNOWNSERVICE  | 
 The system was unable to retrieve pickups for the following service ID: %s  | 
| 
 E_RETRIEVEPICKUPS_NOTFOUND  | 
 The system was unable to find pickups for the following service ID: %s  | 
| 
 E_RETRIEVEPICKUPS_ERROR  | 
 The system was unable to retrieve pickups for the following service ID: %s  | 
| 
 E_RETRIEVEPICKUPSHOTELNOTINFORMED_ERROR  | 
 The hotel code (TTI, GIATA or Hotelbeds code) must be specified  | 
| 
 E_RETRIEVEPICKUPSTTIHOTELNOTRESOLVED_ERROR  | 
 The TTI code %s can't be resolved as a valid hotel  | 
| 
 E_RETRIEVEPICKUPSGIATAHOTELNOTRESOLVED_ERROR  | 
 The GIATA code %s can't be resolved as a valid hotel  |