use of a module based API