make more security and less preformance (get_id_list ==> get_all)