Move request to separate file, first shot at type validation