rest and socket version