API-first design