Add the Rest concept with a more fexible solution