Block not failing when API responds with error

I have a simple workflow that has several blocks that each make a call to an API. If the API errors, I would expect the block to fail and trigger the GlobalError block. The blocks do not fail, they move on to the next block, sending undefined as inputs the next block needs. Here is an example where the response from the API is a 500, yet the block does not error and the next block is called. The run is marked as a success, even though one block has failed and the GlobalError block has not been called:

All blocks have the setting Finally set to Exit.

Hi @jkns,

That is very unusual, normally some type of parser is able to detect error codes and error messages in a response from an API to trigger the block to fail and the proper error handling can occur.

Just wanted to confirm, this block is running a REST API query. I am curious what API is returning this response to your workflow.

My guess is that the shape of the data in the response is somehow either nested or not formatted in the way the automatic error checker is expecting, which is why the data payload is slipping through and leaving the block to think it was a successful response when it was not.