/anomalydetector/v1.0/timeseries/changepoint/detect and /anomalydetector/v1.1/timeseries/changepoint/detect are supported.
array
required
Array of data points, each with
timestamp (ISO 8601) and value (number). Minimum 12 points, maximum 8640 points. Timestamps must be sorted ascending with no duplicates.string
default:"none"
Time interval between points. One of:
yearly, monthly, weekly, daily, hourly, minutely, secondly, microsecond, none.integer
default:1
Multiplier for granularity.
integer
default:0
Seasonality period. Set to
0 for auto-detection.number
Maximum fraction of points flagged. Must be between 0 and 0.5 (exclusive).
integer
default:95
Detection sensitivity (0-99).
integer
Detected seasonality period.
boolean[]
Whether each point is a changepoint.
number[]
Confidence score from 0.0 to 1.0 for each point.
How Changepoint Detection Works
- The energy gradient is computed:
gradient[i] = mean(energies[i:i+k]) - mean(energies[i-k:i])wherek = max(period, 5). - A point is a changepoint if its gradient exceeds the 95th percentile of all gradients.
- The gradient must be a local maximum (greater than or equal to both neighbors).
- Minimum spacing between changepoints equals the detected period.