added search extractor and finished search external api method