I've started a wiki[1] to capture how plugins can extend the foreman api with their own routes. It will also reference how this relates to hammer as well. This is based upon a dev discussion[2].
Specifically, we are working on getting foreman w/ katello as an engine to work well. Current issues being actively worked on:
- Apipie currently only supports the main app (ie. /apidoc shows only foreman routes)
- How should model extensions be handled both from an api route point of view as well as hammer commands (eg. User, Organization)
- How can other plugins that are not as tightly coupled with the product interact without conflict (eg. a GSS plugin that also extends User model)
Also note that apipie is in need of some more active devs, if any have an interest[3].
[1] Apipie - Foreman
[2] http://www.youtube.com/watch?v=xLh8odqEtUs&feature=youtu.be
[3] https://github.com/Pajk/apipie-rails/pulls