Use REST metadata to identify errors in end points

Novulo REST Endpoints and Error States

In Novulo, REST endpoints include the /rest/metadata functionality, which provides descriptions of the endpoints using the OpenAPI 3.0.0 standard.

Describing Endpoints

The /rest/metadata endpoint not only documents the available REST endpoints but also displays error messages, helping to explain why certain endpoints might be in an error state.

You can view this information by accessing the following URL in a browser or a client like Postman, Bruno, or Insomnia:

https://your.app/rest/metadata

Identifying Error States

When an endpoint is in an error state, you can find the relevant information by searching for the term error state . For example:

"/paginationtest": {
  "get": {
    "summary": "paginationTest",
    "description": "Error state endpoint.",
    "security": [
      {}
    ],
    "responses": {
      "500": {
        "description": "Endpoint is in error state due to bad configuration and it will not return a proper response. Reason for error state: Data endpoint with path paginationTest has the following fields misconfigured: SortExpression. These cannot be null."
      }
    }
  }
},

In the example above, the sortExpression is NULL , which must be corrected to resolve the error.

Distinguishing Endpoint Errors from Response Messages

It’s important to note that not all messages indicate end point errors. Messages in the responses section simply describe potential responses for any endpoint, such as:

"400": {
  "description": "Bad request. The sent request does not meet the API specification. Check the error message(s) for more information."
},
"401": {
  "description": "Unauthorized. The sent request did not provide the required Authorization. Check the error message(s) for more information."
},
"404": {
  "description": "Object not found. For the parameters in the sent request, no Object was found."
},
"500": {
  "description": "Internal server error. Something went wrong with processing the request on the server side."
}

These standard response codes do not indicate a faulty endpoint configuration but rather describe how the endpoint might respond to different request scenarios.

Lovely feature, would be great if it gives a proper response when there are REST data endpoint parameters with the same name :heart: