making remote APIs optional