Skip to content

notification.requests

Purpose

The notification.requests dataset captures each incoming notification request, covering request metadata (timestamps, IDs, entity type/subtype, team), encrypted template context, routing inputs and rule evaluations (including counts and matching types), and the final outcome with reasons and internal timing—to enable traceability, deduplication, routing analytics, and downstream delivery correlation.

Schema description

Full JSON pathField data typeField data exampledescription
requestObject{ ... }Container for inbound notification request metadata.
request.requestTimestampString (Date)"2025-08-10T14:20:00Z"When the notification request was received.
request.notificationIdString (UUID)"6fa459ea-ee8a-3ca4-894e-db77e160355e"Unique identifier for the notification instance.
request.requestDeduplicationIdString (UUID)"3f2504e0-4f89-11d3-9a0c-0305e82c3301"Identifier used to deduplicate identical requests.
request.entityTypeString"alert"High-level entity type related to the request.
request.entitySubTypeString"threshold"Subtype/category of the entity.
request.encryptedTemplateContextString"gAAAAABm...=="Encrypted (opaque) template context payload.
request.teamNameString"SRE"Human-readable team name.
request.teamIdNumber42Internal numeric team identifier.
outcomeObject{ ... }Final outcome of request processing.
outcome.timestampString (Date)"2025-08-10T14:20:05Z"When the request’s outcome was finalized.
outcome.statusEnum"Success"Final status: Success | Failure | Rejected.
outcome.statusReasonObject{ "type":"validation_error", "message":"Missing required destination" }Reason object explaining the final status.
outcome.statusReason.typeString"validation_error"Machine-friendly reason/category.
outcome.statusReason.messageString"Missing required destination"Human-readable explanation.
routingObject{ ... }Router inputs, counts, and rule matches.
routing.routerInfoObject{ "id":"router-01","name":"Primary Notifications Router","evaluationMode":"Sequential" }Router identification and evaluation mode.
routing.routerInfo.idString"router-01"Router ID used during evaluation.
routing.routerInfo.nameString"Primary Notifications Router"Display name of the router.
routing.routerInfo.evaluationModeEnum"Sequential"Router evaluation strategy: Sequential | Parallel.
routing.targetsCountNumber3Number of configured targets considered.
routing.analyzedConditionsCountNumber7Count of conditions evaluated during routing.
routing.matchingRuleTypeEnum"RuleMatched"Whether a rule matched or fallback was used: RuleMatched | FallbackUsed.
routing.matchingRulesArray/object[{"name":"pagerduty-high","condition":"severity >= 3"}]Rules that matched (name + condition).
routing.matchingRules.nameString"pagerduty-high"Name of a matching rule.
routing.matchingRules.conditionString"severity >= 3"Condition/expression for the rule.
__internal__Object{ ... }Internal processing/timing details.
__internal__.requestDurationMsNumber512Processing time for the request (ms).
__internal__.privateRouterObject{ "id":"pr-abc123", "matchingRuleType":"FallbackUsed", "matchingRule":{...} }Private/internal router evaluation details (if used).
__internal__.privateRouter.idString"pr-abc123"Internal/private router identifier.
__internal__.privateRouter.matchingRuleTypeEnum"FallbackUsed"Internal matching result: RuleMatched | FallbackUsed.
__internal__.privateRouter.matchingRuleObject{ "name":"default", "condition":"default" }The rule applied by the private router.
__internal__.privateRouter.matchingRule.nameString (optional)"default"Name of the applied rule (may be absent).
__internal__.privateRouter.matchingRule.conditionString"default"Condition of the applied rule.

How the data in this dataset can be used

Track request volume and failure/rejection rates

Quickly spot spikes in failed or rejected requests and investigate.

source system/notification.requests
| groupby outcome.status
    aggregate count() as requests
| sortby requests desc

Measure deduplication effectiveness

Identify how often the same requestDeduplicationId appears more than once.

source system/notification.requests
| groupby request.requestDeduplicationId
    aggregate count() as occurrences
| filter occurrences > 1
| sortby occurrences desc

Analyze routing behavior and rule hit rates

See how frequently rules match vs. fallbacks, and which rules fire most.

-- Match vs. Fallback
source system/notification.requests
| groupby routing.matchingRuleType
    aggregate count() as requests
| sortby requests desc
-- Top matching rules
source system/notification.requests
| explode routing.matchingRules into rule
| groupby rule.name
    aggregate count() as matches
| sortby matches desc

Latency and performance monitoring

Track central tendency of request processing time and find outliers.

source system/notification.requests
| groupby 1
    aggregate
        avg(__internal__.requestDurationMs) as avg_ms,
        percentile(__internal__.requestDurationMs, 50) as p50_ms,
        percentile(__internal__.requestDurationMs, 95) as p95_ms

Audit trails and team-level insights

Break down outcomes by team to find misconfigurations or noisy sources.

source system/notification.requests
| groupby request.teamId, request.teamName, outcome.status
    aggregate count() as requests
| sortby requests desc

notification.requests schema

{
{ request
requestTimestamp

type: string (format: date-time)
Timestamp of the notification request. (required)

notificationId

type: string (format: uuid)
Unique identifier for the notification. (required)

requestDeduplicationId

type: string (format: uuid)
Deduplication ID for the request. (required)

entityType

type: string
Type of the entity. (required)

entitySubType

type: string
Subtype of the entity. (required)

encryptedTemplateContext

type: string
Encrypted template context data. (required)

teamName

type: string
Name of the team. (required)

teamId

type: number
Unique identifier for the team. (required)

}
{ outcome
timestamp

type: string (format: date-time)
Timestamp of the outcome. (required)

status

Enum: Success, Failure, Rejected
Status of the notification request. (required)

{ statusReason
type

type: string
Type of status reason. (required)

message

type: string
Detailed status reason message. (required)

}
}
{ routing
{ routerInfo
id

type: string
Router ID. (required)

name

type: string
Router name. (required)

evaluationMode

Enum: Sequential, Parallel
Evaluation mode for the router. (required)

}
targetsCount

type: number
Number of targets. Minimum: 0. (required)

analyzedConditionsCount

type: number
Number of analyzed conditions. Minimum: 0. (required)

matchingRuleType

Enum: RuleMatched, FallbackUsed
Type of matching rule. (optional)

{ matchingRules

type: array
List of matching rules.

{ items
name

type: string
Rule name. (required)

condition

type: string
Rule condition. (required)

}
}
}
{ __internal__
requestDurationMs

type: number
Request duration in milliseconds. Minimum: 0. (required)

{ privateRouter
id

type: string
Private router ID. (required)

matchingRuleType

Enum: RuleMatched, FallbackUsed
Type of matching rule. (optional)

{ matchingRule
name

type: string
Rule name. (optional)

condition

type: string
Rule condition. (required)

}
}
}
}