Initial draft of the API