success antes de usar data. O HTTP diz a classe do problema. O code diz o motivo, para o seu sistema tratar sem depender do texto em português.
Envelope de regra
Depois que a operação rodou e a regra recusou:message é o texto para a pessoa. code é o identificador estável. status repete o HTTP.
Envelope de validação
Antes da operação, quando o corpo, o caminho ou a query não passam no schema:error. Quando o schema declara um code (por exemplo EMAIL_FORMAT_INVALID), ele vem no raiz.
Códigos
A página da operação mostra o
code de exemplo do Try it. Esta página é o índice.
Quando repetir
Repita em5xx (500, 504) e em 429, com espera. Não invente um segundo POST de criação só porque a primeira resposta atrasou: a tarefa, o lead ou a despesa podem ter sido gravados.
Não repita 400, 401, 403 ou 404 com o mesmo corpo. Corrija o campo, o token, a permissão ou o id.
O fluxo passo a passo está em Tratar erro 400, 401 e 403.