Sentry · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Sentry System Monitors API

15 actions 15 updates phrasing extends openapi/sentry-system-monitors-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Sentry's API. It is a proposal applied on top of the contract, not a document Sentry publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 15

$.info
$.paths['/organizations/{organization_id_or_slug}/monitors/'].get
$.paths['/organizations/{organization_id_or_slug}/monitors/'].put
$.paths['/organizations/{organization_id_or_slug}/monitors/'].post
$.paths['/organizations/{organization_id_or_slug}/monitors/'].delete
$.paths['/organizations/{organization_id_or_slug}/monitors/{monitor_id_or_slug}/'].get
$.paths['/organizations/{organization_id_or_slug}/monitors/{monitor_id_or_slug}/'].put
$.paths['/organizations/{organization_id_or_slug}/monitors/{monitor_id_or_slug}/'].delete
$.paths['/projects/{organization_id_or_slug}/{project_id_or_slug}/monitors/{monitor_id_or_slug}/'].get
$.paths['/projects/{organization_id_or_slug}/{project_id_or_slug}/monitors/{monitor_id_or_slug}/'].put
$.paths['/projects/{organization_id_or_slug}/{project_id_or_slug}/monitors/{monitor_id_or_slug}/'].delete
$.paths['/projects/{organization_id_or_slug}/{project_id_or_slug}/uptime-monitors/'].post
$.paths['/organizations/{organization_id_or_slug}/uptime-monitors/{monitor_id}/'].get
$.paths['/organizations/{organization_id_or_slug}/uptime-monitors/{monitor_id}/'].put
$.paths['/organizations/{organization_id_or_slug}/uptime-monitors/{monitor_id}/'].delete

OpenAPI Overlay

Raw ↑
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
  title: API Evangelist conversational phrasing for Sentry System Monitors API
  version: 1.0.0
extends: openapi/sentry-system-monitors-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-09-26'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 14
- target: $.paths['/organizations/{organization_id_or_slug}/monitors/'].get
  update:
    x-apievangelist-phrasing:
      intent: List an organization's monitors
      effect: read
      questions:
      - Which cron monitors does my organization have?
      - Can I list monitors for just the production environment?
      instructions:
      - text: List monitors in organization {org}.
        slots:
          org: path.organization_id_or_slug
      - text: Show {org}'s monitors in environment {environment}.
        slots:
          org: path.organization_id_or_slug
          environment: query.environment
      method: generated
      generated: '2026-09-26'
- target: $.paths['/organizations/{organization_id_or_slug}/monitors/'].put
  update:
    x-apievangelist-phrasing:
      intent: Bulk update monitor status
      effect: write
      questions:
      - Can I disable several monitors at once?
      - How do I mute a batch of monitors during maintenance?
      instructions:
      - text: Set status {status} on monitors {ids} in {org}.
        slots:
          status: requestBody.status
          ids: requestBody.ids
          org: path.organization_id_or_slug
      - text: Bulk change monitors {ids} to status {status}.
        slots:
          ids: requestBody.ids
          status: requestBody.status
      method: generated
      generated: '2026-09-26'
- target: $.paths['/organizations/{organization_id_or_slug}/monitors/'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a cron monitor
      effect: write
      questions:
      - How do I start monitoring a scheduled job?
      - What schedule config does a new monitor need?
      instructions:
      - text: Create a {type} monitor named {name} in {org} with config {config}.
        slots:
          type: requestBody.type
          name: requestBody.name
          org: path.organization_id_or_slug
          config: requestBody.config
      - text: Add monitor {name} with slug {slug} for project {project}, type {type}, config {config}.
        slots:
          name: requestBody.name
          slug: requestBody.slug
          project: requestBody.project
          type: requestBody.type
          config: requestBody.config
      method: generated
      generated: '2026-09-26'
- target: $.paths['/organizations/{organization_id_or_slug}/monitors/'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete several monitors at once
      effect: destructive
      questions:
      - Can I remove many monitors in one request?
      - Is there a bulk way to clean up old monitors?
      instructions:
      - text: Bulk delete monitors {id} from {org}.
        slots:
          id: query.id
          org: path.organization_id_or_slug
      - text: Remove all monitors with ids {id}.
        slots:
          id: query.id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/organizations/{organization_id_or_slug}/monitors/{monitor_id_or_slug}/'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a cron monitor across the org
      effect: read
      questions:
      - What schedule and status does a monitor have?
      - Can I look up a monitor by slug without knowing its project?
      instructions:
      - text: Show monitor {monitor} in organization {org}.
        slots:
          monitor: path.monitor_id_or_slug
          org: path.organization_id_or_slug
      - text: Fetch org-level details for monitor {monitor}.
        slots:
          monitor: path.monitor_id_or_slug
      method: generated
      generated: '2026-09-26'
- target: $.paths['/organizations/{organization_id_or_slug}/monitors/{monitor_id_or_slug}/'].put
  update:
    x-apievangelist-phrasing:
      intent: Update a cron monitor at org level
      effect: write
      questions:
      - How do I change the schedule of a cron monitor by its slug?
      - Can I rename a cron monitor or change its slug?
      instructions:
      - text: Update cron monitor {monitor} in {org} with schedule config {config}.
        slots:
          monitor: path.monitor_id_or_slug
          org: path.organization_id_or_slug
          config: requestBody.config
      - text: Rename cron monitor {monitor} to {name} with slug {slug}.
        slots:
          monitor: path.monitor_id_or_slug
          name: requestBody.name
          slug: requestBody.slug
      method: generated
      generated: '2026-09-26'
- target: $.paths['/organizations/{organization_id_or_slug}/monitors/{monitor_id_or_slug}/'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a cron monitor or its environments
      effect: destructive
      questions:
      - Can I delete just one environment from a cron monitor?
      - How do I remove a cron monitor entirely at the org level?
      instructions:
      - text: Delete cron monitor {monitor} from {org}.
        slots:
          monitor: path.monitor_id_or_slug
          org: path.organization_id_or_slug
      - text: Delete only environment {environment} from cron monitor {monitor}.
        slots:
          environment: query.environment
          monitor: path.monitor_id_or_slug
      method: generated
      generated: '2026-09-26'
- target: $.paths['/projects/{organization_id_or_slug}/{project_id_or_slug}/monitors/{monitor_id_or_slug}/'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a monitor within a project
      effect: read
      questions:
      - How can I view a monitor through the project it belongs to?
      - What does a project-scoped monitor look like?
      instructions:
      - text: Show monitor {monitor} in project {project} of {org}.
        slots:
          monitor: path.monitor_id_or_slug
          project: path.project_id_or_slug
          org: path.organization_id_or_slug
      - text: Fetch project {project}'s monitor {monitor}.
        slots:
          project: path.project_id_or_slug
          monitor: path.monitor_id_or_slug
      method: generated
      generated: '2026-09-26'
- target: $.paths['/projects/{organization_id_or_slug}/{project_id_or_slug}/monitors/{monitor_id_or_slug}/'].put
  update:
    x-apievangelist-phrasing:
      intent: Update a monitor within a project
      effect: write
      questions:
      - Can I edit a monitor's config through its project?
      - How do I rename a monitor scoped to one project?
      instructions:
      - text: Update monitor {monitor} in project {project} of {org} with config {config}.
        slots:
          monitor: path.monitor_id_or_slug
          project: path.project_id_or_slug
          org: path.organization_id_or_slug
          config: requestBody.config
      - text: Rename project {project}'s monitor {monitor} to {name}.
        slots:
          project: path.project_id_or_slug
          monitor: path.monitor_id_or_slug
          name: requestBody.name
      method: generated
      generated: '2026-09-26'
- target: $.paths['/projects/{organization_id_or_slug}/{project_id_or_slug}/monitors/{monitor_id_or_slug}/'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a project monitor or environments
      effect: destructive
      questions:
      - How do I delete a monitor through its project?
      - Can I drop one environment from a project's monitor?
      instructions:
      - text: Delete monitor {monitor} from project {project} in {org}.
        slots:
          monitor: path.monitor_id_or_slug
          project: path.project_id_or_slug
          org: path.organization_id_or_slug
      - text: Remove environment {environment} from project {project}'s monitor {monitor}.
        slots:
          environment: query.environment
          project: path.project_id_or_slug
          monitor: path.monitor_id_or_slug
      method: generated
      generated: '2026-09-26'
- target: $.paths['/projects/{organization_id_or_slug}/{project_id_or_slug}/uptime-monitors/'].post
  update:
    x-apievangelist-phrasing:
      intent: Create an uptime monitor for a URL
      effect: write
      questions:
      - How do I monitor whether my website is up?
      - Can I set how often an uptime check hits a URL?
      instructions:
      - text: Create uptime monitor {name} for {url} in project {project} of {org}.
        slots:
          name: requestBody.name
          url: requestBody.url
          project: path.project_id_or_slug
          org: path.organization_id_or_slug
      - text: Check {url} every {intervalSeconds} seconds with an uptime monitor named {name}.
        slots:
          url: requestBody.url
          intervalSeconds: requestBody.intervalSeconds
          name: requestBody.name
      method: generated
      generated: '2026-09-26'
- target: $.paths['/organizations/{organization_id_or_slug}/uptime-monitors/{monitor_id}/'].get
  update:
    x-apievangelist-phrasing:
      intent: Get an uptime monitor
      effect: read
      questions:
      - What URL and interval does an uptime monitor check?
      - Can I look up one uptime monitor by ID?
      instructions:
      - text: Show uptime monitor {monitor_id} in {org}.
        slots:
          monitor_id: path.monitor_id
          org: path.organization_id_or_slug
      - text: Fetch uptime check {monitor_id}.
        slots:
          monitor_id: path.monitor_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/organizations/{organization_id_or_slug}/uptime-monitors/{monitor_id}/'].put
  update:
    x-apievangelist-phrasing:
      intent: Update an uptime monitor
      effect: write
      questions:
      - How do I change the URL an uptime monitor checks?
      - Can I make an uptime check run less often?
      instructions:
      - text: Point uptime monitor {monitor_id} in {org} at {url}.
        slots:
          monitor_id: path.monitor_id
          org: path.organization_id_or_slug
          url: requestBody.url
      - text: Set uptime monitor {monitor_id} interval to {intervalSeconds} seconds.
        slots:
          monitor_id: path.monitor_id
          intervalSeconds: requestBody.intervalSeconds
      method: generated
      generated: '2026-09-26'
- target: $.paths['/organizations/{organization_id_or_slug}/uptime-monitors/{monitor_id}/'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete an uptime monitor
      effect: destructive
      questions:
      - How do I stop uptime checks for a URL?
      - Is removing an uptime monitor permanent?
      instructions:
      - text: Delete uptime monitor {monitor_id} from {org}.
        slots:
          monitor_id: path.monitor_id
          org: path.organization_id_or_slug
      - text: Remove uptime check {monitor_id}.
        slots:
          monitor_id: path.monitor_id
      method: generated
      generated: '2026-09-26'