API changes + tests