It is intended for ForumSpark to have an accessible API so that you are able to add features to your board.
This will take place in 2 stages:
The first is an implementation of a 'simple' admin level API. This will allow owners to create scoped personal access tokens. These scoped tokens will have access to a range of REST based API endpoints that can be called to manipulate the board (think creating posts / topics, direct messages, updating user data). The tokens will also have the ability to listen to webhook events to be able to respond when something happens (e.g. a topic is created, a post is made).
This simple API will open the door to allow developers to create extensions to the platform.
The second stage will be an implementation of OAuth for API authentication. This will allow for more tight integration with the platform to be able to create 'apps'. The API endpoints will likely be the same (or similar) but the authentication mechanism will change.
Additional Javascript APIs will be added to also aid with development of frontend extensions.
Example Use cases:
- A theme development kit (see theme topic to follow) that allows theme developers to use their own build tools locally and synchronise the theme to a board without having to use the admin interface. This opens up the possiblities of using source control for themes. Preview (forgive the crudeness of the demo)
- Extensions like currency and money systems. Webhooks allow an extension to listen to forum activity and react accordingly. On the frontend it should be possible to show user monetary values and perform actions like donations or shop purchases.