Send a test notification to a rule’s targets
const url = 'http://localhost:3000/api/v1/alert-rules/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/test-fire';const options = {method: 'POST', headers: {'X-API-Key': '<X-API-Key>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url http://localhost:3000/api/v1/alert-rules/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/test-fire \ --header 'X-API-Key: <X-API-Key>'Dispatches a test notification through each configured target so an operator can confirm delivery actually works before relying on it. Creates no AlertDelivery record, so a test never consumes the rule’s open-alert slot and cannot suppress a subsequent real alert. Per-target outcomes are reported individually — one broken endpoint does not hide the rest.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Responses
Section titled “Responses”object
What the rule evaluates to against current data right now. Independent of whether the test notification was delivered — a rule can be not-currently-matching and still have perfectly working targets.
Number of devices the rule’s scope currently resolves to.
Human-readable rendering of the condition, as the evaluator sees it.
object
Whether the transport accepted the test notification
Failure detail when delivered is false; empty otherwise.
Example
{ "matchedDeviceCount": 12, "condition": "cpu > 80 for 300s", "results": [ { "name": "Ops on-call email", "channel": "EMAIL", "error": "" } ]}No such rule in the caller’s organization