Обработка полей и логирование ошибок

#27 #34 
Поправил #38 
Но вообще, в параметре api можно просто указать 1.