As per the Microsoft documentation, Event Grid does not implement retry on specific errors like 400, 413, 401. In such cases Event Grid will either perform dead-lettering on the event or drop the event if dead-letter isn't configured.
So I enabled dead letter on my webhook (receiver endpoint) and produced a 400 error. But it is still not captured in dead letter logs container. Is there something I am missing?
Please have a look at the Event Grid message delivery and retry - Dead-letter events documentation and see if your configuration is correct.
Also, take into account that