rewriting to handle custom methods
optional hateoas
class parse