In a REST API, which HTTP status code indicates that the client's request was syntactically correct but semantically invalid (e.g., a business rule violation)?