limit_violations
Purpose
The limit_violations dataset records each time a configured limit is exceeded, capturing the limit’s name/type, evaluation mode (per-event vs. periodic window with duration), configured threshold and unit, the observed value at violation time, and optional contextual dimensions (e.g., team, connector, route). This enables teams to monitor throttling and policy breaches, pinpoint noisy or abusive workloads, validate routing and delivery protections, and right-size limits to balance reliability and cost.
Schema description
Full JSON path | Field data type | Field data example | description |
---|---|---|---|
limit_name | String | "notifications-per-minute" | Human-readable name of the enforced limit. |
limit_type | String | "rate_limit" | Implementation/type of limit (policy class). |
limit_interval_type | Enum | "periodic" | Evaluation mode: per_event or periodic . |
limit_interval_periodic_details | Object (when periodic ) | { "duration_seconds": 60 } | Settings for periodic/windowed evaluation. |
limit_interval_periodic_details.duration_seconds | Number (integer, ≥1) | 60 | Window length in seconds. |
limit_threshold | Number (integer) | 100 | Configured threshold value. |
limit_threshold_unit | Enum | "count" | Unit of the threshold: count or chars . |
limit_event_type | String | "notification" | Event category the limit applies to. |
limit_value | Number (integer) | 137 | Observed value that triggered the violation. |
violation_context | Object / Null | { "teamId": 42, "connectorId": "slack-oncall", "route": "primary" } | Dimension map (string/integer values) or null . |
labs.limit_violations
schema
limitViolation
limit_name
type: string
Human-readable name of the enforced limit. (required)
limit_type
type: string
Implementation/type of limit (e.g., internal code or policy class). (required)
limit_interval_type
Enum: per_event
, periodic
How the limit is evaluated: per individual event or over a rolling/periodic window. (required)
limit_interval_periodic_details
type: object
Additional settings when limit_interval_type = periodic
.
duration_seconds
type: number
(integer, ≥ 1)
Length of the evaluation window in seconds. (required when periodic)
limit_threshold
type: number
(integer)
Configured threshold for the limit (e.g., max messages). (required)
limit_threshold_unit
Enum: count
, chars
Unit for the threshold (items vs. characters). (required)
limit_event_type
type: string
Event category the limit applies to (e.g., notification
, render
, api_call
). (required)
limit_value
type: number
(integer)
Observed value that violated the limit (e.g., actual count/size). (required)
violation_context
type: object
| null
Key/value map with extra dimensions (e.g., teamId
, connectorId
, route
). Values are strings or integers. (required; may be null)