Reimplement content api #22