respect explicitly passed campaignId first, then default to settings