Mattermost APIs¶
With Mattermost you have complete access to the server’s Web Service APIs, along with language specific drivers (the same used by the web, desktop and mobile experiences).
There’s a vibrant community developing open source apps on Mattermost and you can start your work based on their code, or use a pre-made sample provided by the Mattermost team.
Mattermost Web Service API¶
To learn more about the Mattermost Web Service API, see the references listed below:
We accept bug reports and contributions to our API references at our repository here.
Mattermost Drivers¶
Mattermost drivers offer access to the Mattermost web service API in different programming languages and frameworks.
ReactJS Javascript Driver¶
web-client.jsx - This Javascript driver connects with the ReactJS components of Mattermost. The web client does the vast majority of its work by connecting to a RESTful JSON web service. There is a very small amount of processing for error checking and set up that happens on the web server.
- The Javascript Driver is mirrored in an external repository that can be included in custom projects.
Golang Driver¶
client.go - This is a RESTful driver connecting with the Golang-based webservice of Mattermost and is used by unit tests.
- See GoDocs for documentation on the Golang Driver.
Building API Integrations¶
If you’re building a deep integration with Mattermost, for example a mobile native client, and there is a driver available to support the programming language you are using, it’s best to use the driver available to access the Mattermost Web Service APIs.
If no driver is available for the programming language of your choice, you can view the Golang Driver source code to understand how it exercises the Web Service API. You can also learn more by reviewing open source projects that use the Web Service API, like matterircd.
There are a wide range of installation guides for setting up your own Mattermost server on which to develop and test your integrations.
Mattermost Golang Bot Sample (Driver Example)¶
Mattermost provides a Golang Bot Sample to demonstrate how Mattermost works with the Golang driver and the APIs.
Community Apps and Integrations¶
The Mattermost community has shared back dozens of open source integrations showing how to use webhooks, drivers and APIs in different ways. See the community app directory to learn more.