О! Ну типы же сильно не спасают. Спасают от одного, если инт и флоат. Причём и с ним на границе бардак. Json может прилететь число, как строка, и теребись с конвертацией... Все равно валидацию делать в 98%
Если в json прилетает число как строка надо вываливать ошибку и пусть умник приславший сам разгребает свои проблемы. Есть четкие контракты, которые обязательно соблюдать.