update demand and add API.md