How to use notifications
Five jobs, in the order most teams do them: alert on failure, post to chat, secure the webhook, tune which runs notify you, and check what actually got sent.
Get alerted when a run fails
Section titled “Get alerted when a run fails”- Open Notifications in the left navigation and click Create integration.
- Pick the Webhook card, enter a Name (e.g. “Ops alerts”), keep Method POST, and enter the URL you want to receive the alert. Click Create integration.
- Click Test send on the new row to confirm it works before attaching it to anything. It queues a real delivery you can check on the Deliveries tab.
- Open the test you want alerts for, go to its Configuration tab, and find Notification rules. Click Add rule. Run failed is pre-selected, which is what you want here; pick your integration under Integration and click Add rule.
- Back on Notifications → Deliveries, the row from your test send shows Status succeeded and Trigger Integration test. A test send has no real run behind it, so its Run cell shows ”—” instead of a link. The rule you just added fires the same way on the test’s next real failure.
Post to Slack or Teams with a webhook
Section titled “Post to Slack or Teams with a webhook”Slack and Microsoft Teams both accept plain HTTP webhooks, so a MaxoPerf webhook integration reaches either without a dedicated connector.
- Create integration → Webhook, name it (e.g. “Team Slack”), and paste your channel’s incoming webhook URL.
- Under Payload, set Content-Type to
application/jsonand write the payload your chat tool expects, for example{"text": "MaxoPerf: {{test.name}} is {{run.status}}"}. Use the variable chips below the Template field to insert a{{path}}token at the cursor instead of typing it. - Check the live preview under the chips: it renders the same body against sample values, so you can check its shape before you save.
- Click Create integration, then Test send.
- Open the delivery on the Deliveries tab. Its Request snapshot shows the rendered body a
test send fills in: sample values like
Sample test (test send)andpassed. A real run fills in that test’s actual name and result instead.
Secure a webhook with headers and signing
Section titled “Secure a webhook with headers and signing”- Create integration → Webhook, name it (e.g. “PagerDuty events”), and set the URL.
- Expand Headers & query params, click Add header, name it
Authorization, then click Secret next to the value field. The value becomes a secret picker: choose the workspace secret that holds your token. - Set Payload → Template to a small JSON payload, for example
{"text": "MaxoPerf: {{test.name}} is {{run.status}}"}. - Under Security → Workspace secret, pick a secret. MaxoPerf will sign every delivery from this integration with it.
- Click Create integration, then Test send. Open the delivery’s Request snapshot:
Authorizationshows[REDACTED], never the real token, and anX-Maxoperf-Signatureheader carries the HMAC. See Secrets, headers, and signing for how to verify that signature on your receiving end.
Choose which runs notify you
Section titled “Choose which runs notify you”- Open the test’s Configuration tab → Notification rules → Add rule.
- Deselect Run failed and select Run passed and Run status changed instead. Pick your integration and click Add 2 rules (the button counts your selected triggers). Both rules appear as separate rows alongside the one from Get alerted when a run fails.
- Toggle a rule’s Enabled switch off to pause it without deleting it: its row shows a Paused badge. Toggle it back on when you want it firing again.
Run status changed compares a run’s terminal status against the test’s previous terminal run, so it never fires on a test’s first run, and after that only when the result differs from the run before.
Check delivery history
Section titled “Check delivery history”- Run the test (or wait for its next scheduled run).
- Open Notifications → Deliveries. Set the Run id filter to the run you just started, so only its own deliveries show, not older test sends.
- Open the row for the run: its Trigger matches the rule that fired (e.g. Run passed).
- In the Delivery detail panel, check Attempts, Channel, and the Run link back to the run itself, then the Request snapshot and Response snapshot for exactly what was sent and received.
- If a delivery failed, its Last error explains why, and Redeliver starts a fresh delivery attempt with the same integration and trigger.
Next steps
Section titled “Next steps”- Notifications overview: what integrations, rules and deliveries are, the full template variable table, and the permission matrix.
- Secrets: create the workspace secrets a signed or authenticated webhook header references.