Browse documentation

Integrations

Rocket.Chat

Connecting Rocket.Chat posts your Lineman spend alerts into a channel, using Rocket.Chat's Slack-compatible incoming webhook. It is one webhook URL and a Test button: there is no app to install and nothing to add to your Rocket.Chat server.

Not generally available yet. Rocket.Chat alerts are still behind a feature flag, so the Rocket.Chat page may not appear under Integrations in your dashboard. If it is missing, that is why - the steps below are what you will do once it is switched on for your company.

Create the incoming webhook in Rocket.Chat

  1. 1In Rocket.Chat, go to Administration → Workspace → Integrations. You need admin rights: Rocket.Chat does not let ordinary users create incoming webhooks, so if the menu is not there, ask whoever runs your server.
  2. 2Choose New integration, then Incoming Webhook.
  3. 3Set Enabled to true, pick the channel the alerts should land in, and choose the user they post as. A webhook left disabled accepts the message and reports no error, so it is easy to miss.
  4. 4Save, then copy the Webhook URL from the top of the page. It only appears after the first save.

The URL you end up with looks like this:
https://chat.example.com/hooks/xxxxxxxxxxxxxxxxx/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Leave Script Enabled off. Rocket.Chat can run a custom script over each incoming payload, and an empty or broken script drops the message without saying anything. It is the most common reason a webhook that looks correctly configured delivers nothing.

Add it to Lineman

  1. 1In Lineman, open Dashboard → Integrations → Rocket.Chat and paste the webhook URL into the form.
  2. 2Press Test. That sends a real alert message to the channel you chose, so go and look at the channel before you rely on this.
  3. 3Once it is saved, spend alerts post to that channel as they fire - the same alerts you already get by email, rendered for Rocket.Chat.

Treat the URL like a password. Anyone holding it can post into that channel, so Lineman stores it encrypted and never shows it back to you in full. If you lose it, create a new webhook in Rocket.Chat and paste that one in.

Check the test message actually rendered

Rocket.Chat's Slack compatibility is the least complete of the four chat platforms Lineman supports, and it varies between server versions. A webhook can accept the message, return success, and still render it badly. That is why pressing Test matters more here than elsewhere. Open the channel afterwards and check three things:

  • The alert has a heading. You should see a formatted alert with a title above the detail, not one long unbroken line of text.
  • The amounts are readable. Figures are shown in US dollars, never cents, and should read as amounts rather than running together with the surrounding text.
  • Nothing arrives as raw JSON. Braces and field names in the channel mean your server did not interpret the Slack-shaped payload. Check that Script Enabled is off and that the server is on a current release; if it still does not render, keep that channel on email alerts.

Self-hosted servers

Self-hosting is the normal case for Rocket.Chat, so Lineman does not restrict which host the webhook URL lives on. Your own domain is accepted. Two conditions still apply:

  • HTTPS only. The URL has to start with https://. The webhook URL is a credential, so Lineman will not carry it over a plaintext connection and will refuse the address at save time.
  • Reachable from the public internet. Alerts are sent from Lineman's servers, so a hostname that only resolves inside your own network will not work, and private or internal addresses are refused.

If it stops working

  • Failures are recorded, not swallowed. A failed delivery is stamped against the integration and shown on its page in the dashboard, along with what your server returned.
  • The usual cause is a deleted webhook. If the incoming webhook was removed or disabled in Rocket.Chat, create a new one and paste the new URL into Lineman.
  • Destinations are independent. If you have several chat platforms connected, one failing does not stop the others, and none of them affect your email alerts.