Drupal is what I use. In addition to the blog part, have enjoyed creating custom content types to track some interesting things in my life (cars, phones, and computers for example). Then I add a view to show them all in a table with the columns and sorting that I want for that particular content type.
In the past I have used the APIs to a very small extent. I stored license keys for an app as a content type so that they were easy to manage by employees, and the app connected to a service that called the API.
Probably any fleshed out CMS will check all but the last one of your boxes (nothing is going to be "extremely" easy to host).
In the past I have used the APIs to a very small extent. I stored license keys for an app as a content type so that they were easy to manage by employees, and the app connected to a service that called the API.
Probably any fleshed out CMS will check all but the last one of your boxes (nothing is going to be "extremely" easy to host).