client instantiates with or without body