split API into its own doc