generate 3rd party service only if required