[CHORE] move validation to API core