Olá VitorPhantomhive

Existem algumas maneira, uma delas é utilizar os DataAnnotations ex:

        public class Usuario
        {
            public string Nome { get; set; }
            public string Email { get; set; }
            [Required(ErrorMessage = "CPF é obrigatorio")]
            [StringLength(11, MinimumLength = 11, ErrorMessage = "Cpf deve conter 11 caracteres")]
            public string Cpf { get; set; }
        }
        
        [HttpPost]
        public IActionResult Post(Usuario usuario)
        {
            // o aspnet estará validando automaticamente para você e entregando o resultado no ModelState
            if (!ModelState.IsValid)
            {
                return BadRequest(ModelState);
            }

            return Ok(usuario);
        }

Outra maneira bastante usada é com FluentValidation

Entendi, eu tinha visto por cima essas possibilidades, mas sobre a pergunta do asp net fazer isso automaticamente, é possível?

você diz não ser necessario o `if (!ModelState.IsValid)...` ? É possivel e bem simples, apenas adicionando o atributo [[ApiController]](https://learn.microsoft.com/pt-br/aspnet/core/web-api/?view=aspnetcore-8.0#apicontroller-attribute) ele irá fazer essa autovalidação ex: ```cs [ApiController] [Route("[controller]")] public class UsuarioController : ControllerBase { [HttpPost] public IActionResult Post(Usuario usuario) { return Ok(usuario); } ```
aaaaaaaaaaaa perfeito, entendi entendi. Muito obrigado de verdade! Ajudou bastante