add optional scope parameter