---
title: "Cron Triage"
method: POST
path: "/cron/triage"
---

# Cron Triage

`POST /cron/triage`

Triage a cron-sourced alert for the organization identified by ``config_name``.

Args:
    request: CronTriageRequest identifying the organization (by config name),
        the triggering alert, and the reporting user.
    m2m_token: Bearer-authenticated machine token (validated by
        ``get_jwt_token_from_bearer``); this endpoint does not check its
        claims beyond requiring a valid token.

Returns:
    CronTriageResponse describing the outcome of the triage flow.

## Request body

- CronTriageRequest — Request model for cron-triggered triage investigations.
  - `user_id` string, nullable
  - `user_uuid` string, nullable
  - `user_email` string, required
  - `config_name` string, required
  - `user_message` string, required
  - `incident_time` string, required
  - `incident_timezone` string, required
  - `alert_source_id` string, required
  - `alert_name` string, required
  - `alert_description` string, required
  - `alert_source_link` string, nullable
  - `alert_tags` string[]
  - `anomaly_status` 'suppressed' | 'analyzed' | 'anomalous' | 'noise', required — Enum for anomaly status values. Used to track whether an alert has been analyzed and deemed anomalous or noise.
  - `anomaly_status_explanation_stats` AnomalyStatusExplanationStats, required — Anomaly status explanation stats for alerts.
    - `is_recovered` boolean, nullable
    - `current_alert_duration` number, nullable
    - `current_warning_duration` number, nullable
    - `baseline_alert_duration` number, nullable
    - `baseline_warning_duration` number, nullable
    - `current_alert_count` integer, nullable
    - `current_warning_count` integer, nullable
    - `baseline_alert_count` integer, nullable
    - `baseline_warning_count` integer, nullable
    - `anomaly_score` number, nullable
    - `is_blocked_by_retrigger` boolean, nullable
    - `last_triggered_time` string, date-time, nullable
    - `time_since_last_trigger_hours` number, nullable
    - `retrigger_block_hours` number, nullable
    - `fetch_time_ms` number, nullable
    - `anomaly_compute_time_ms` number, nullable
    - `trigger_decision_time_ms` number, nullable
    - `events_fetched` integer, nullable
    - `memory_bytes` integer, nullable
  - `services_context` ServiceContext[]
    - `id` string, required
    - `name` string, required
    - `description` string, nullable
  - `context_items` ContextItemInput[], nullable
    - `id` string, required
    - `organization_id` string, required
    - `context_item_name` 'central_id' | 'function' | 'application' | 'service' | 'team' | 'url_endpoint' | 'correlation_id' | 'topology_node' | 'account' | 'storage' | 'environment' | 'cluster' | 'snow_alert' | 'snow_incident' | 'snow_problem' | 'snow_change_request' | 'customer_journey' | 'domain' | 'mim_id' | 'monitor_id', required — Enum for context item names.
    - `value` string, required
    - `metadata` object, required
  - `mode` 'rca' | 'chat' | 'triage' | 'alert_story'
  - `alert_id` string, nullable
  - `monitor_id` string, nullable
  - `trigger_type` 'manual' | 'auto-trigger' | 'slack_mention' | 'slack_dm' | 'slack_investigate_command' | 'slack_channel_join_auto_trigger' | 'slack_message_auto_trigger' | 'topology_explore' | 'alert_chat' | 'alert_event_manual_investigate' | 'alert_event_anomaly_detected_investigate' | 'proactive_followup' | 'alert_story' | 'alert_summary' | 'api' | 'mcp' | 'channel_agent' | 'deep_wiki' | 'autoresearch' | 'incident_monitor_postmortem'

## Response `200`

Successful Response

- CronTriageResponse
  - `success` boolean, required

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/traversal/apis/fastapi.md) · [All operations](https://skmtc.net/traversal/apis/fastapi/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/traversal/fastapi/revisions/2134ebffd1ef/schema)
