work in progress - Api and Widget classes