First draft of the API class