Catch node, does not catch msg.error and 404 from HTTP node

I am using some HTTP request nodes to refresh an OAuth2 token and get data from and API.

I thought I could use the Catch node to catch errors generated by the HTTP node but for functional responses of the HTTP, it does not seem to be the case.

For example:

payload.error:

08/11/2020, 21:39:42node: SDM Devices
msg.payload : Object
object
error: object
code: 404
message: "Enterprise enterprises/TESTPROJECT not found."
status: "NOT_FOUND"

AND

08/11/2020, 21:41:18node: SDM Devices
msg.payload : string[1616]
"<!DOCTYPE html>↵<html lang=en>↵  <meta charset=utf-8>↵  <meta name=viewport content="initial-scale=1, minimum-scale=1, width=device-width">↵  <title>Error 404 (Not Found)!!1</title>↵ 

Is not caught by the Catch node. Is that intended functionality, maybe a nice feature to add or something that I have to catch myself?