Recomendo dar uma lida aqui: https://developer.mozilla.org/pt-BR/docs/Web/HTTP/Status
Normalmente evito usar 200 para indicar falha, acaba ficando confuso. Alguns projetos que trabalhei usaram como padrão retornar o erro 500 e no próprio link diz que os erros 5xx são respostas de erro do servidor.