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.
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
# 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'