WIP draft of API