Integrations / Messaging

Mattermost

Post messages and replies, read and search channels and threads in Mattermost, on Mattermost Cloud or your own server, and trigger workflows from messages through an outgoing webhook.

11 tools 1 trigger event

Tools

mattermost.list_teams

List the teams the connection's user belongs to. IDs are 26-character strings like 8d5c4kcgxjy3txkbnk3dz4h3fh; names are the URL slugs.

mattermost.list_channels

List the channels the connection's user is a member of in a team. Type O is public, P private, D direct and G group.

team_id*

mattermost.find_channel

Look up a channel by its team's name and its own name, both the slugs in its URL, e.g. team acme and channel town-square in /acme/channels/town-square.

team_name*channel_name*

mattermost.send_message writes

Post a message in a channel, or as a reply in a thread when root_id is given. Returns the new post's ID.

channel_id*message*root_id

mattermost.update_message writes

Replace the text of a post, or pin or unpin it. The connection's user needs permission to edit the post.

post_id*messageis_pinned

mattermost.list_messages

Read a channel's posts, newest first. Times are Unix milliseconds; root_id is set on replies.

channel_id*per_pagepagesincebefore

mattermost.get_thread

Read a post and every reply in its thread, oldest first.

post_id*

mattermost.search_messages

Search a team's posts. Terms take from:username, in:channel-name, on:, before: and after: dates (YYYY-MM-DD) and "exact phrases".

team_id*terms*is_or_searchper_page

mattermost.get_user

Look up a user by username, to learn their ID, name and position, or turn a user_id from a post into a name.

username*

mattermost.api_get

Send a GET request to any Mattermost API path under https://{host}/api/v4 and return the response. For endpoints the named tools don't cover.

path*params

mattermost.api_request writes

Send a POST, PUT, PATCH or DELETE request to any Mattermost API path under https://{host}/api/v4.

method*path*paramsbody

Tick Allow raw writes on the connection to add api_request, which can send POST, PUT, PATCH and DELETE requests to any Mattermost API path.

Connect

  1. Create a bot under Product menu → Integrations → Bot Accounts → Add Bot Account and copy its token, or use a personal access token from Profile → Security → Personal Access Tokens → Create Token. A System Admin may first have to allow bot accounts or personal access tokens under System Console → Integrations.
  2. Add the bot or user to the teams and channels workflows should read and post in, and paste its token on the connection.
  3. Set Host to your server's address: a public https host such as acme.cloud.mattermost.com, or, for a server at home, its tailnet name and port such as http://mattermost:8065 with a tailscale connection named as the Tailnet.
  4. To trigger workflows, open Product menu → Integrations → Outgoing Webhooks → Add Outgoing Webhook, set Content Type to application/json, pick a channel or trigger words, and use the request URL shown on the connection page as the callback URL. Paste the token Mattermost shows for the webhook on the connection.

Credentials

Access token Outgoing webhook token

Mattermost API docs

Triggers

In Mattermost, open Product menu → Integrations → Outgoing Webhooks → Add Outgoing Webhook, set Content Type to application/json, choose a channel and/or trigger words, and add this URL as a callback URL. Paste the token shown after saving on this connection. Each delivery carries text, user_name, user_id, channel_id, channel_name, post_id and trigger_word.

Events

message
trigger
kind: mattermost connection: mattermost events: [message] channels: [...] trigger_words: [...]

Turn one person's AI process into the company's.

Murmurator is invite-only. Already invited? Sign in and build something real.