module API draft