Added API with factory