Sentry · Schema

Sentry Monitor

Represents a cron job monitor in Sentry. Monitors track scheduled tasks and alert when check-ins are missed or fail, providing visibility into the health of background jobs and cron tasks.

APMApplication MonitoringBug TrackingDeveloper ToolsError TrackingObservabilityPerformance MonitoringReal-Time Monitoring

Properties

Name Type Description
id string The unique identifier of the monitor.
slug string The URL-friendly slug of the monitor.
name string The human-readable name of the monitor.
type string The type of monitor.
config object The monitor's schedule configuration.
status string The current status of the monitor.
dateCreated string When the monitor was created.
project object The project associated with this monitor.
environments array Environment-specific monitor statuses.
View JSON Schema on GitHub

JSON Schema

sentry-monitor-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://sentry.io/schemas/monitor.json",
  "title": "Sentry Monitor",
  "description": "Represents a cron job monitor in Sentry. Monitors track scheduled tasks and alert when check-ins are missed or fail, providing visibility into the health of background jobs and cron tasks.",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "The unique identifier of the monitor."
    },
    "slug": {
      "type": "string",
      "description": "The URL-friendly slug of the monitor."
    },
    "name": {
      "type": "string",
      "description": "The human-readable name of the monitor."
    },
    "type": {
      "type": "string",
      "description": "The type of monitor.",
      "enum": ["cron_job"]
    },
    "config": {
      "type": "object",
      "description": "The monitor's schedule configuration.",
      "properties": {
        "schedule_type": {
          "type": "string",
          "description": "The type of schedule.",
          "enum": ["crontab", "interval"]
        },
        "schedule": {
          "description": "The schedule definition. A crontab string or interval array.",
          "oneOf": [
            {
              "type": "string",
              "description": "Crontab expression (e.g., '*/5 * * * *')."
            },
            {
              "type": "array",
              "description": "Interval as [value, unit] (e.g., [1, 'hour']).",
              "items": {}
            }
          ]
        },
        "checkin_margin": {
          "type": ["integer", "null"],
          "description": "Margin of minutes before a check-in is marked as missed."
        },
        "max_runtime": {
          "type": ["integer", "null"],
          "description": "Maximum runtime in minutes before a check-in is marked as timed out."
        },
        "timezone": {
          "type": "string",
          "description": "The timezone for the schedule (e.g., UTC, America/New_York)."
        }
      },
      "required": ["schedule_type", "schedule"]
    },
    "status": {
      "type": "string",
      "description": "The current status of the monitor."
    },
    "dateCreated": {
      "type": "string",
      "format": "date-time",
      "description": "When the monitor was created."
    },
    "project": {
      "type": "object",
      "description": "The project associated with this monitor.",
      "properties": {
        "id": {
          "type": "string"
        },
        "slug": {
          "type": "string"
        },
        "name": {
          "type": "string"
        }
      }
    },
    "environments": {
      "type": "array",
      "description": "Environment-specific monitor statuses.",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "status": {
            "type": "string"
          },
          "lastCheckIn": {
            "type": ["string", "null"],
            "format": "date-time"
          },
          "nextCheckIn": {
            "type": ["string", "null"],
            "format": "date-time"
          }
        }
      }
    }
  },
  "required": ["id", "name", "type", "config"]
}