A custom persistence API