Add promise controller