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.