completed most of the configuration api