It is very common to run into issues, either while developing an API to use the API Manager, or while porting an API to the API Manager. Sometimes, it can be confusing to discern whether an error is coming from the back-end service, or from the API Manager itself. Luckily, API Manager errors are easily-discernible from back-end errors, as explained below.

All API Manager-generated errors will be returned in XML format, and will be namespaced to https://wso2.org. For example:

<am:fault xmlns:am="http://wso2.org/apimanager">
  <am:code>101500</am:code>
  <am:type>Status report</am:type>
  <am:message>Runtime Error</am:message>
  <am:description>Error in Sender</am:description>
</am:fault>

This error was produced by the API Manager. We can tell because A) it is in XML format, and B) it contains the namespace "http://wso2.org/apimanager." This indicates that the error was returned by the API Manager. If an error does not follow the format prescribed above, it must have been returned from the back-end service. For example:

{"status" : "error", "error" : "Missing Credentials"}

This error has been returned from the back-end service. We can tell because it is not in XML and more specifically, because it is not name spaced to "http://wso2.org."

For any errors produced by the API Manager, you can browse the documentation found in this space to look for common solutions. If you are unable to find a solution to your problem, feel free to contact the api@byu.edu. We are more than happy to help you solve any problems you face. For help with any errors produced by the back-end service, get in touch with the team in charge of that specific back-end service. Technical and Business-Owner information can typically be found on the service's page in the API Store.