moving away from dependencies on API