DRM? Sounds like a bad idea.
Smartphone access sounds like the best idea of the ones you've posted, but that is something built on the API, not in the API itself.
In the API, you need the usual functions to get account info (balance, transactions, deposit addresses), and to send coins (to addresses or flexcoin names). Also, to enable shopping carts and such you need a way to tell the system to expect payments, and things to do when the payments arrive (callbacks, sweep policies, re-transfers, etc).