initial API thoughts