Alert rules
Describe what you want to be told about, confirm the rule Jsonify proposes, choose a channel, and get alerts when data changes or a run finishes.
An alert rule watches a dataset or a pipeline and fires when its condition is met: new rows appeared, a price moved by more than 10%, a run failed. Every fire is recorded in the workspace’s alert history and the bell, and delivered to one channel if you attach one.
The Alert Rules page
Alert Rules in the sidebar lists every rule in the workspace as a card.
Click a card to open the rule for viewing and editing.
Creating a rule
You do not fill in a form of fields. You describe the rule, or pick a quick-start, and Jsonify proposes the dataset, trigger, name and severity for you to confirm.
- Start. Press New alert rule. Under Quick start, four chips: A pipeline run fails and A pipeline run completes skip straight to confirmation; New rows appear and A value changes pre-fill the description box for you to finish (“Alert me when new rows appear in …”).
- Or describe it yourself. Type a sentence, for example “alert me when any product drops below $100” or “tell me when the availability column changes”. Name the dataset and column if you know them; the more specific, the less you will need to refine.
- Send to. Choose a channel: Dashboard only (no channel), or any live notification integration in the workspace, shown as “Slack (slack)”, “Email notifications (email)” and so on. If there is exactly one, it is pre-selected. + Add integration takes you to Integrations. Whatever you choose, every fire also appears in the bell.
- Build alert rule. (Cmd/Ctrl+Enter also works.) Jsonify reads your datasets’ columns and pipelines and proposes a rule.
- Confirm. The proposal shows an explanation, then Name, Description, Severity (editable pill), Dataset with a Worksheet selector or Pipeline (for run rules, All pipelines in this workspace or one), Channel, and Trigger in words. Adjust the pills and selectors, or press Refine to go back and reword. Press Create alert rule.
If the description was not enough to pick a dataset, the confirmation says “Needs a dataset — refine your description” and the create button stays disabled until you do. Any Slack or email mentioned in the sentence is ignored; the channel is always the Send to choice.
Warn me when the current price of any product in Live product offers changes by more than 15%
Proposal: name “Price change over 15%”, severity warning, dataset Live product offers, worksheet main, trigger “When current_price changes by more than 15%”. Press Create alert rule.
Condition types
Six kinds of trigger. Data conditions compare the newest version of one worksheet with the version before it, each time a new version is published. Run conditions look at each finished live run.
| Trigger (as shown) | Fires when | Example sentence |
|---|---|---|
| When new rows appear | At least one row is in the new version that was not in the previous one. | “Tell me when new products are discovered in Live product offers.” |
| When rows disappear | At least one row from the previous version is missing from the new one. | “Alert me if any venue drops out of the restaurants dataset.” |
| When {column} changes (optionally by more than N%) | For rows present in both versions, the value in that column differs. With a threshold, only numeric moves of at least that percentage count. | “Warn me when current_price changes by more than 10%.” |
| When {column} {is / is not / above / below / contains} {value} | Any row in the new version matches the comparison. It looks at the new version alone, so it fires again on every version while any row still matches. | “Alert me when availability is Out of stock.” or “…when review_score is below 3.” |
| Fuzzy match: {your words} | A judgement call made from your description over a sample of the old and new rows, for conditions that cannot be expressed as a column and a threshold. Use it sparingly; it is slower and less predictable. | “Let me know if the new rows look like they contain test or placeholder products.” |
| When a run fails / succeeds / finishes (optionally scheduled runs only) | A live run of the chosen pipeline (or any pipeline in the workspace) ends in that state. | “Ping me when Price & promotion tracking fails.” |
How rows are matched between versions: by the dataset’s key columns when the pipeline set them (for example product_id); otherwise a row is matched on all of its values, so a change to any cell looks like one row removed and one added.
A dataset’s very first version has nothing to compare with, so new rows fires for every row and rows disappear and changes cannot fire until the second version.
Run rules ignore Jason’s test runs and repair checks; only live runs of the pipeline count. Rules evaluate only when a new version is written or a run finishes, never on a timer, so a pipeline that has not run produces no alerts.
Channels
A rule delivers to at most one channel. Channels are notification integrations, set up on the Integrations page and listed in the rule’s Send to / Channel selector once they are live.
| Channel | What arrives | Set up |
|---|---|---|
| Dashboard only | Nothing is sent. The fire is recorded and shown in the bell and Alerts history. | Nothing to set up. |
| Slack | One message with an emoji for the severity, the rule name in bold, and the reason, plus a link to the run for run rules. | An incoming webhook URL. See Slack and email. |
| Subject “[Jsonify] {rule name}”, the reason, and a View run or View notification button. | A recipient address. Every workspace starts with an Email notifications channel addressed to its owner. | |
| Webhook | A POST to your address with the title, body, reason, severity and the rows or run that triggered it. | A target URL. See Sheets, warehouses and webhooks. |
| Browser push | A notification on every browser you have enabled, even with Jsonify closed. Bound to the person who created it. | Enable on this device on the Integrations page. See Alert history and notifications. |
Whatever the channel, every fire is kept in the workspace history. See Alert history and notifications.
Severity
| Severity | Colour | Use for |
|---|---|---|
| danger | Red | Something is wrong: a run failed, stock is out, a price crossed a critical line. |
| warning | Amber | Worth a look soon. |
| info | Blue | For your information. |
| success | Green | Good news: a run completed, new opportunities appeared. |
Severity is proposed from the wording of your description and can be changed on the confirmation step or later. It colours the card, the history row, and the emoji in Slack. Rules can also be grouped into folders on the Alert Rules page.
Viewing and editing a rule
Click a card. The dialog has an Edit tab and a History tab, and a footer with an Enabled switch, Send test and Close.
Edit tab. Each setting saves as soon as you change it:
History tab. The last 20 evaluations of this rule: Triggered or Evaluated — no trigger, the delivery status (sent, failed, or grey for skipped and dashboard-only), the reason, a View run link where there is one, and “Delivery error: …” if the channel rejected it.
Enable, disable and delete
There is no cooldown or de-duplication. A rule fires on every version or run that meets its condition: a “value below” rule fires on every publish while any row is still below the line, and a “run fails” rule fires on every consecutive failure. If a rule is too noisy, raise its threshold, narrow it to one pipeline, or switch it to a change-based trigger, which only fires when something moves.
Alerts and Jason
Jason can create, change and test rules from chat, and will offer one when you ask a question you seem to want answered regularly. “Set up the same price-drop rule for the Inventory signals dataset” works. Rules are also shareable resources; a shared rule shows its name and description only. See Sharing.