ControlUp · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Controlup Alerts API

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

What the actions change

x-apievangelist-phrasing

Targets 14

$.info
$.paths['/alerts'].get
$.paths['/alerts'].post
$.paths['/alerts/{id}'].get
$.paths['/alerts/{id}'].post
$.paths['/alerts/{id}'].delete
$.paths['/organizations/{orgId}/alert-configs'].get
$.paths['/alerts/scouts'].get
$.paths['/alerts/{scoutId}'].get
$.paths['/scouts/{scoutId}/alerts'].get
$.paths['/scouts/{scoutId}/alerts'].post
$.paths['/scouts/{scoutId}/alerts/{alertId}'].get
$.paths['/scouts/{scoutId}/alerts/{alertId}'].delete
$.paths['/scouts/{scoutId}/alerts/{alertId}'].patch

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 Controlup Alerts API
  version: 1.0.0
extends: openapi/controlup-alerts-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: 13
- target: $.paths['/alerts'].get
  update:
    x-apievangelist-phrasing:
      intent: List configured device alerts
      effect: read
      questions:
      - Which device alerts are configured in ControlUp for Desktops?
      - Can I filter my configured alerts with an OpenSearch query?
      instructions:
      - text: List all configured device alerts.
      - text: Find device alerts matching the OpenSearch query {query}.
        slots:
          query: query.query
      method: generated
      generated: '2026-09-26'
- target: $.paths['/alerts'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a device alert
      effect: write
      questions:
      - How do I create an alert that fires when devices meet certain conditions?
      - Can a new alert trigger a webhook, run a script or email people?
      - Can an alert raise a ServiceNow incident automatically?
      instructions:
      - text: Create alert {name} with severity {severity} on platform {platform} using index {index} and conditions {filters}.
        slots:
          filters: requestBody.filters
          index: requestBody.index
          name: requestBody.name
          platform: requestBody.platform
          severity: requestBody.severity
      - text: Set up alert {name} that fires after {results_threshold} matches in {results_threshold_seconds} seconds, re-triggering every {retrigger_interval}.
        slots:
          name: requestBody.name
          results_threshold: requestBody.results_threshold
          results_threshold_seconds: requestBody.results_threshold_seconds
          retrigger_interval: requestBody.retrigger_interval
      - text: Create alert {name} that emails {email_addresses} when triggered.
        slots:
          email_addresses: requestBody.email_addresses
          name: requestBody.name
      method: generated
      generated: '2026-09-26'
- target: $.paths['/alerts/{id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a device alert
      effect: read
      questions:
      - What conditions and actions does a specific device alert have?
      - Can I look up one alert's configuration by its ID?
      instructions:
      - text: Get device alert {id}.
        slots:
          id: path.id
      - text: Show the conditions and notifications on alert {id}.
        slots:
          id: path.id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/alerts/{id}'].post
  update:
    x-apievangelist-phrasing:
      intent: Edit a device alert
      effect: write
      questions:
      - How do I change the severity or conditions of an existing device alert?
      - Can I disable an alert without deleting it?
      instructions:
      - text: Set enabled to {enabled} on device alert {id}.
        slots:
          enabled: requestBody.enabled
          id: path.id
      - text: Change the severity of device alert {id} to {severity}.
        slots:
          id: path.id
          severity: requestBody.severity
      - text: Point device alert {id} at webhook {webhook_url}.
        slots:
          id: path.id
          webhook_url: requestBody.webhook_url
      method: generated
      generated: '2026-09-26'
- target: $.paths['/alerts/{id}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a device alert
      effect: destructive
      questions:
      - How do I remove a device alert I no longer need?
      - Is deleting a device alert permanent?
      instructions:
      - text: Delete device alert {id}.
        slots:
          id: path.id
      - text: Remove the alert with ID {id}.
        slots:
          id: path.id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/organizations/{orgId}/alert-configs'].get
  update:
    x-apievangelist-phrasing:
      intent: List an organization's alert configurations
      effect: read
      questions:
      - What alert configurations are set up for my organization?
      - Can I search my organization's alert configs by text?
      instructions:
      - text: List the alert configurations for organization {orgId}.
        slots:
          orgId: path.orgId
      - text: Search alert configurations in organization {orgId} for {_search}.
        slots:
          _search: query._search
          orgId: path.orgId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/alerts/scouts'].get
  update:
    x-apievangelist-phrasing:
      intent: List Scouts that triggered alerts
      effect: read
      questions:
      - Which Scouts have triggered an alert in the last 24 hours?
      - Can I see which synthetic monitors alerted during a specific time window?
      instructions:
      - text: List the Scout IDs that triggered alerts in the last day.
      - text: List Scouts with alerts between {start} and {end}.
        slots:
          end: query.end
          start: query.start
      method: generated
      generated: '2026-09-26'
- target: $.paths['/alerts/{scoutId}'].get
  update:
    x-apievangelist-phrasing:
      intent: List alerts generated for a Scout
      effect: read
      questions:
      - What alerts has a particular Scout generated recently?
      - Can I page through one Scout's alerts over a custom date range?
      instructions:
      - text: List alerts fired by Scout {scoutId}.
        slots:
          scoutId: path.scoutId
      - text: Show alerts for Scout {scoutId} from {start} to {end}.
        slots:
          end: query.end
          scoutId: path.scoutId
          start: query.start
      method: generated
      generated: '2026-09-26'
- target: $.paths['/scouts/{scoutId}/alerts'].get
  update:
    x-apievangelist-phrasing:
      intent: List a Scout's alert policies
      effect: read
      questions:
      - Does a given Scout already have an alert policy configured?
      - How many alert policies can one Scout have?
      instructions:
      - text: List the alert policies configured on Scout {scoutId}.
        slots:
          scoutId: path.scoutId
      - text: Check whether Scout {scoutId} has an alert policy.
        slots:
          scoutId: path.scoutId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/scouts/{scoutId}/alerts'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a Scout alert policy
      effect: write
      questions:
      - How do I get notified when a Scout's test results fail?
      - Can I set which test results trigger an alert for a Scout?
      instructions:
      - text: Create an alert policy on Scout {scoutId} triggering on {conditions}.
        slots:
          conditions: requestBody.conditions
          scoutId: path.scoutId
      - text: Add an alert policy to Scout {scoutId} with conditions {conditions} and notifications {notifications}.
        slots:
          conditions: requestBody.conditions
          notifications: requestBody.notifications
          scoutId: path.scoutId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/scouts/{scoutId}/alerts/{alertId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a Scout alert policy's details
      effect: read
      questions:
      - What settings and notifications does a Scout's alert policy use?
      - Is a particular Scout alert policy enabled?
      instructions:
      - text: Get alert policy {alertId} on Scout {scoutId}.
        slots:
          alertId: path.alertId
          scoutId: path.scoutId
      - text: Show the notification settings of Scout {scoutId} policy {alertId}.
        slots:
          alertId: path.alertId
          scoutId: path.scoutId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/scouts/{scoutId}/alerts/{alertId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a Scout alert policy
      effect: destructive
      questions:
      - How do I stop a Scout from alerting by removing its policy?
      - Can I delete a Scout's alert policy so I can create a fresh one?
      instructions:
      - text: Delete alert policy {alertId} from Scout {scoutId}.
        slots:
          alertId: path.alertId
          scoutId: path.scoutId
      - text: Remove the alert policy {alertId} on Scout {scoutId}.
        slots:
          alertId: path.alertId
          scoutId: path.scoutId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/scouts/{scoutId}/alerts/{alertId}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Update a Scout alert policy
      effect: write
      questions:
      - How do I change the conditions on a Scout's existing alert policy?
      - Can I temporarily disable a Scout alert policy?
      instructions:
      - text: Set disabled to {disabled} on Scout {scoutId} alert policy {alertId}.
        slots:
          alertId: path.alertId
          disabled: requestBody.disabled
          scoutId: path.scoutId
      - text: Update the notifications on Scout {scoutId} policy {alertId} to {notifications}.
        slots:
          alertId: path.alertId
          notifications: requestBody.notifications
          scoutId: path.scoutId
      method: generated
      generated: '2026-09-26'