First sketch of the API