At the moment we’re using Sonar as a central repository for (nearly) all our customer information. We’ve used the API to integrate with our provisioning systems (we have 3 or 4 different ones) so that as soon as a change is made in Sonar, the corresponding update is made in the provisioning system. (For example, an internet customer’s account is deactivated in Sonar, so we automatically disconnect their service.)
We’ve also used the API extensively for custom reporting. We have a wide range of customer types, so it’s nice to be able to pull the raw information out of Sonar and create specific reports for each type.
Lastly, we’ve recently made use of it to allow customers to sign up for free trials of some of our web-based services. Once the customer signs up online, a sonar account gets created for them and the integrations I mentioned above automatically provision their account in the appropriate system.
As far as improvements go, I’m really looking forward to some of the flexibility that v2 is aiming to provide. Right now it’s a bit challenging to select subsets of accounts to report on. E.g. “All accounts that were activated between Jan 15-30, 2018 and have account_type_id=5”.
I haven’t looked at the v2 spec recently, but I seem to recall GraphQL was being bandied about and that would be all kinds of fun.