upgraded api