client doesn't need json serializer