Progress Software · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for WhatsUp Gold Device API
64 actions
64 updates
phrasing
extends
openapi/progress-software-device-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Progress Software's API. It is a proposal applied on top of the contract, not a document Progress Software publishes.
What the actions change
x-apievangelist-phrasing
Targets 64 · first 16 shown; the file carries all of them
$.info
$.paths['/api/v1/devices/{deviceId}/attributes/{attributeId}'].get
$.paths['/api/v1/devices/{deviceId}/attributes/{attributeId}'].put
$.paths['/api/v1/devices/{deviceId}/attributes/{attributeId}'].delete
$.paths['/api/v1/devices/{deviceId}/attributes/-'].get
$.paths['/api/v1/devices/{deviceId}/attributes/-'].post
$.paths['/api/v1/devices/{deviceId}/attributes/-'].delete
$.paths['/api/v1/devices/{deviceId}/attributes/-'].patch
$.paths['/api/v1/devices/{deviceId}/group/{groupId}'].delete
$.paths['/api/v1/devices/{deviceId}/group/-'].get
$.paths['/api/v1/devices/{deviceId}/group/-'].put
$.paths['/api/v1/devices/{deviceId}/group/-'].patch
$.paths['/api/v1/devices/{deviceId}/group/{groupId}/is-member'].get
$.paths['/api/v1/devices/{deviceId}/interfaces/default'].get
$.paths['/api/v1/devices/{deviceId}/interfaces/{interfaceId}'].get
$.paths['/api/v1/devices/{deviceId}/interfaces/{interfaceId}'].put
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 WhatsUp Gold Device API
version: 1.0.0
extends: openapi/progress-software-device-api-openapi.yml
actions:
- target: $.info
update:
x-apievangelist-phrasing:
method: generated
generated: '2026-10-01'
generator: build-phrasing.py
label: Generated by API Evangelist
operations: 63
- target: $.paths['/api/v1/devices/{deviceId}/attributes/{attributeId}'].get
update:
x-apievangelist-phrasing:
intent: Get one custom attribute on a device
effect: read
questions:
- What value does a single custom attribute hold on one of my WhatsUp Gold devices?
- Can I look up one specific device attribute by its ID?
instructions:
- text: Show attribute {attributeId} on device {deviceId}.
slots:
attributeId: path.attributeId
deviceId: path.deviceId
- text: Fetch the name and value of device attribute {attributeId} for {deviceId}.
slots:
attributeId: path.attributeId
deviceId: path.deviceId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/attributes/{attributeId}'].put
update:
x-apievangelist-phrasing:
intent: Change an existing device attribute
effect: write
questions:
- How can I rename or change the value of an attribute already on a device?
- Is it possible to edit one existing device attribute without touching the others?
instructions:
- text: Set existing attribute {attributeId} on device {deviceId} to name {name} with value {value}.
slots:
attributeId: path.attributeId
deviceId: path.deviceId
name: query.name
value: query.value
- text: Rename attribute {attributeId} on device {deviceId} to {name}.
slots:
attributeId: path.attributeId
deviceId: path.deviceId
name: query.name
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/attributes/{attributeId}'].delete
update:
x-apievangelist-phrasing:
intent: Delete one attribute from a device
effect: destructive
questions:
- How do I remove a single custom attribute from a device?
- Can I delete just one attribute by ID and keep the rest on the device?
instructions:
- text: Delete attribute {attributeId} from device {deviceId}.
slots:
attributeId: path.attributeId
deviceId: path.deviceId
- text: Remove only the attribute {attributeId} on {deviceId}.
slots:
attributeId: path.attributeId
deviceId: path.deviceId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/attributes/-'].get
update:
x-apievangelist-phrasing:
intent: List a device's custom attributes
effect: read
questions:
- Which custom attributes are set on this device?
- Can I filter a device's attributes by text in the name or the value?
- What attributes on a device have a value containing a certain string?
instructions:
- text: List all attributes on device {deviceId}.
slots:
deviceId: path.deviceId
- text: Find attributes on device {deviceId} whose name contains {nameContains}.
slots:
deviceId: path.deviceId
nameContains: query.nameContains
- text: Show up to {limit} attributes on {deviceId} with values containing {valueContains}.
slots:
limit: query.limit
deviceId: path.deviceId
valueContains: query.valueContains
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/attributes/-'].post
update:
x-apievangelist-phrasing:
intent: Add a new custom attribute to a device
effect: write
questions:
- How do I tag a device with a new name/value attribute?
- Can I attach a custom attribute like a location or owner to a monitored device?
instructions:
- text: Add attribute {name} with value {value} to device {deviceId}.
slots:
name: query.name
value: query.value
deviceId: path.deviceId
- text: Create a new attribute named {name} on device {deviceId}.
slots:
name: query.name
deviceId: path.deviceId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/attributes/-'].delete
update:
x-apievangelist-phrasing:
intent: Clear all or matching attributes from a device
effect: destructive
questions:
- How do I wipe every custom attribute off a device at once?
- Can I bulk-remove only the device attributes whose names match a pattern?
instructions:
- text: Delete every attribute on device {deviceId}.
slots:
deviceId: path.deviceId
- text: Remove all attributes on {deviceId} whose name contains {nameContains}.
slots:
deviceId: path.deviceId
nameContains: query.nameContains
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/attributes/-'].patch
update:
x-apievangelist-phrasing:
intent: Add, change and remove device attributes in one call
effect: write
questions:
- Can I add new attributes and delete old ones on a device in a single request?
- Is there a batch way to modify several attributes of one device together?
instructions:
- text: On device {deviceId}, add attributes {attributesToAdd} and delete attributes named {attributeNamesToDelete} in one batch.
slots:
deviceId: path.deviceId
attributesToAdd: requestBody.attributesToAdd
attributeNamesToDelete: requestBody.attributeNamesToDelete
- text: Run a batch attribute change on {deviceId} that modifies {attributeToModify}.
slots:
deviceId: path.deviceId
attributeToModify: requestBody.attributeToModify
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/group/{groupId}'].delete
update:
x-apievangelist-phrasing:
intent: Remove a device from one static group
effect: destructive
questions:
- How do I take a device out of a static device group?
- Why can't I remove a device's last static group or a dynamic group assignment?
instructions:
- text: Remove device {deviceId} from group {groupId}.
slots:
deviceId: path.deviceId
groupId: path.groupId
- text: Unassign group {groupId} from device {deviceId}.
slots:
groupId: path.groupId
deviceId: path.deviceId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/group/-'].get
update:
x-apievangelist-phrasing:
intent: List the groups a device belongs to
effect: read
questions:
- Which device groups is this device a member of?
- Can I filter a device's group memberships by group type?
instructions:
- text: List the groups device {deviceId} is assigned to.
slots:
deviceId: path.deviceId
- text: Show {type} group assignments for device {deviceId}.
slots:
type: query.type
deviceId: path.deviceId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/group/-'].put
update:
x-apievangelist-phrasing:
intent: Assign a device to a group
effect: write
questions:
- How do I put a device into a device group?
- Can I add a single group assignment to an existing device?
instructions:
- text: Assign device {deviceId} to a device group.
slots:
deviceId: path.deviceId
- text: Add a group membership to device {deviceId}.
slots:
deviceId: path.deviceId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/group/-'].patch
update:
x-apievangelist-phrasing:
intent: Add and remove several group memberships at once
effect: write
questions:
- Can I move a device between groups by adding and removing memberships in one request?
- Is there a batch call to change many group assignments for one device?
instructions:
- text: For device {deviceId}, add groups {groupsToAdd} and remove groups {groupsToDelete} in one batch.
slots:
deviceId: path.deviceId
groupsToAdd: requestBody.groupsToAdd
groupsToDelete: requestBody.groupsToDelete
- text: Batch-remove group memberships {groupsToDelete} from device {deviceId}.
slots:
groupsToDelete: requestBody.groupsToDelete
deviceId: path.deviceId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/group/{groupId}/is-member'].get
update:
x-apievangelist-phrasing:
intent: Check whether a device is in a group
effect: read
questions:
- Is a particular device a member of a given group?
- How can I confirm a device was added to a group before running a report?
instructions:
- text: Check if device {deviceId} is a member of group {groupId}.
slots:
deviceId: path.deviceId
groupId: path.groupId
- text: Confirm group {groupId} membership for {deviceId}.
slots:
groupId: path.groupId
deviceId: path.deviceId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/interfaces/default'].get
update:
x-apievangelist-phrasing:
intent: Get a device's default network interface
effect: read
questions:
- Which network interface is the default one used for a device?
- What address does a device's primary interface use?
instructions:
- text: Show the default network interface of device {deviceId}.
slots:
deviceId: path.deviceId
- text: Get the primary interface address for {deviceId}.
slots:
deviceId: path.deviceId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/interfaces/{interfaceId}'].get
update:
x-apievangelist-phrasing:
intent: Get one network interface on a device
effect: read
questions:
- How do I look up the details of a specific network interface by its ID?
- Can I see the host name and address configured on one device interface?
instructions:
- text: Show interface {interfaceId} on device {deviceId}.
slots:
interfaceId: path.interfaceId
deviceId: path.deviceId
- text: Fetch network interface {interfaceId} details for {deviceId}.
slots:
interfaceId: path.interfaceId
deviceId: path.deviceId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/interfaces/{interfaceId}'].put
update:
x-apievangelist-phrasing:
intent: Edit a device's network interface
effect: write
questions:
- How do I change the IP address on an existing device interface?
- Can I make an existing interface the default or poll it by host name?
instructions:
- text: Change interface {interfaceId} on device {deviceId} to address {address}.
slots:
interfaceId: path.interfaceId
deviceId: path.deviceId
address: requestBody.address
- text: Make interface {interfaceId} the default for device {deviceId}.
slots:
interfaceId: path.interfaceId
deviceId: path.deviceId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/interfaces/{interfaceId}'].delete
update:
x-apievangelist-phrasing:
intent: Delete one network interface from a device
effect: destructive
questions:
- How do I remove a stale network interface from a device?
- Can I delete one specific interface by its ID?
instructions:
- text: Delete interface {interfaceId} from device {deviceId}.
slots:
interfaceId: path.interfaceId
deviceId: path.deviceId
- text: Remove network interface {interfaceId} on {deviceId}.
slots:
interfaceId: path.interfaceId
deviceId: path.deviceId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/interfaces/-'].get
update:
x-apievangelist-phrasing:
intent: List a device's network interfaces
effect: read
questions:
- What network interfaces does a device have?
- Can I search a device's interfaces by address or host name?
instructions:
- text: List the network interfaces on device {deviceId}.
slots:
deviceId: path.deviceId
- text: Search interfaces on {deviceId} for {search}.
slots:
deviceId: path.deviceId
search: query.search
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/interfaces/-'].post
update:
x-apievangelist-phrasing:
intent: Add a network interface to a device
effect: write
questions:
- How do I add a second IP address or interface to a monitored device?
- Can a newly added interface be set as the device's default?
instructions:
- text: Add a network interface with address {address} to device {deviceId}.
slots:
address: requestBody.address
deviceId: path.deviceId
- text: Add interface host name {hostName} to {deviceId} and poll it by name.
slots:
hostName: requestBody.hostName
deviceId: path.deviceId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/interfaces/-'].delete
update:
x-apievangelist-phrasing:
intent: Remove all non-default interfaces from a device
effect: destructive
questions:
- How do I strip every interface except the default one off a device?
- Is there a way to clear extra network interfaces in one go?
instructions:
- text: Delete all network interfaces on device {deviceId} except the default.
slots:
deviceId: path.deviceId
- text: Clear the extra interfaces from {deviceId}.
slots:
deviceId: path.deviceId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/interfaces/-'].patch
update:
x-apievangelist-phrasing:
intent: Add, change and remove device interfaces in one call
effect: write
questions:
- Can I add some interfaces and delete others on a device in one batch?
- Is there a way to remove interfaces by address or host name while adding new ones?
instructions:
- text: On device {deviceId}, add interfaces {interfacesToAdd} and delete those at {addressOrHostNameToDelete} in one batch.
slots:
deviceId: path.deviceId
interfacesToAdd: requestBody.interfacesToAdd
addressOrHostNameToDelete: requestBody.addressOrHostNameToDelete
- text: Run a batch interface change on {deviceId} that modifies {interfaceToModify}.
slots:
deviceId: path.deviceId
interfaceToModify: requestBody.interfaceToModify
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/credentials/{credentialId}'].delete
update:
x-apievangelist-phrasing:
intent: Remove one credential from a device
effect: destructive
questions:
- How do I unassign a specific credential from a device?
- Can I keep active monitors from being orphaned when I remove a device credential?
instructions:
- text: Remove credential {credentialId} from device {deviceId}.
slots:
credentialId: path.credentialId
deviceId: path.deviceId
- text: Unassign credential {credentialId} from {deviceId} and prevent orphaned active monitors.
slots:
credentialId: path.credentialId
deviceId: path.deviceId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/credentials/-'].get
update:
x-apievangelist-phrasing:
intent: List credentials assigned to a device
effect: read
questions:
- Which credentials does a device use for polling?
- Can I see only the SNMP or WMI credentials assigned to a device?
instructions:
- text: List the credentials assigned to device {deviceId}.
slots:
deviceId: path.deviceId
- text: Show {type} credentials on {deviceId}.
slots:
type: query.type
deviceId: path.deviceId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/credentials/-'].put
update:
x-apievangelist-phrasing:
intent: Assign a credential to a device
effect: write
questions:
- How do I give a device a credential so it can be polled?
- Can I attach a new credential to an existing device?
instructions:
- text: Assign a credential to device {deviceId}.
slots:
deviceId: path.deviceId
- text: Attach polling credentials to {deviceId}.
slots:
deviceId: path.deviceId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/credentials/-'].delete
update:
x-apievangelist-phrasing:
intent: Remove a device's credentials by type
effect: destructive
questions:
- How do I remove all credentials of one type from a device?
- Can I clear every credential on a device without naming each ID?
instructions:
- text: Remove all {type} credentials from device {deviceId}.
slots:
type: query.type
deviceId: path.deviceId
- text: Clear every assigned credential on {deviceId}.
slots:
deviceId: path.deviceId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/monitors/{assignmentId}'].get
update:
x-apievangelist-phrasing:
intent: Get one monitor assignment on a device
effect: read
questions:
- What are the settings of one specific monitor assigned to a device?
- Can I check whether a particular monitor assignment is enabled?
instructions:
- text: Show monitor assignment {assignmentId} on device {deviceId}.
slots:
assignmentId: path.assignmentId
deviceId: path.deviceId
- text: Get the details of monitor {assignmentId} for {deviceId}.
slots:
assignmentId: path.assignmentId
deviceId: path.deviceId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/monitors/{assignmentId}'].put
update:
x-apievangelist-phrasing:
intent: Enable, disable or change a device's monitor
effect: write
questions:
- How do I disable one monitor on a device without removing it?
- Can I change the active or performance settings of an assigned monitor?
instructions:
- text: Disable monitor assignment {assignmentId} on device {deviceId}.
slots:
assignmentId: path.assignmentId
deviceId: path.deviceId
- text: Set monitor {assignmentId} on {deviceId} to enabled={enabled}.
slots:
assignmentId: path.assignmentId
deviceId: path.deviceId
enabled: requestBody.enabled
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/monitors/{assignmentId}'].delete
update:
x-apievangelist-phrasing:
intent: Remove one monitor from a device
effect: destructive
questions:
- How do I unassign a single monitor from a device?
- Can I delete one monitor assignment by its ID?
instructions:
- text: Remove monitor assignment {assignmentId} from device {deviceId}.
slots:
assignmentId: path.assignmentId
deviceId: path.deviceId
- text: Delete the monitor {assignmentId} on {deviceId}.
slots:
assignmentId: path.assignmentId
deviceId: path.deviceId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/monitors/-'].get
update:
x-apievangelist-phrasing:
intent: List monitors assigned to a device
effect: read
questions:
- Which monitors are watching this device?
- Can I list only the enabled active monitors on a device?
- What performance monitors are assigned to a device?
instructions:
- text: List the monitors assigned to device {deviceId}.
slots:
deviceId: path.deviceId
- text: Show only enabled {type} monitors on {deviceId}.
slots:
type: query.type
deviceId: path.deviceId
- text: Find monitors on {deviceId} matching {search}.
slots:
deviceId: path.deviceId
search: query.search
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/monitors/-'].post
update:
x-apievangelist-phrasing:
intent: Assign a monitor to a device
effect: write
questions:
- How do I start monitoring a device with an active or performance monitor?
- Can I assign a monitor to a device by its monitor type name?
instructions:
- text: Assign monitor type {monitorTypeName} to device {deviceId}.
slots:
monitorTypeName: requestBody.monitorTypeName
deviceId: path.deviceId
- text: Add a {type} monitor with type ID {monitorTypeId} to {deviceId}.
slots:
type: requestBody.type
monitorTypeId: requestBody.monitorTypeId
deviceId: path.deviceId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/monitors/-'].delete
update:
x-apievangelist-phrasing:
intent: Remove monitors from a device by type or search
effect: destructive
questions:
- How do I remove all passive monitors from a device at once?
- Can I bulk-unassign monitors on a device that match a search term?
instructions:
- text: Remove all {type} monitors from device {deviceId}.
slots:
type: query.type
deviceId: path.deviceId
- text: Unassign every monitor on {deviceId} matching {search}.
slots:
deviceId: path.deviceId
search: query.search
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/monitors/-'].patch
update:
x-apievangelist-phrasing:
intent: Batch-change a device's monitor assignments
effect: write
questions:
- Can I add new monitors and remove old ones on a device in one request?
- Is there a batch call to change several monitor assignments on a device?
instructions:
- text: On device {deviceId}, add monitor assignments {newAssignments} and remove {remove} in one batch.
slots:
deviceId: path.deviceId
newAssignments: requestBody.newAssignments
remove: requestBody.remove
- text: Apply monitor assignment changes {assignmentChanges} to {deviceId}.
slots:
assignmentChanges: requestBody.assignmentChanges
deviceId: path.deviceId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/config/polling'].get
update:
x-apievangelist-phrasing:
intent: Get a device's polling settings
effect: read
questions:
- How often is a device being polled?
- What is the current polling interval for one device?
instructions:
- text: Show the polling configuration for device {deviceId}.
slots:
deviceId: path.deviceId
- text: Get the polling interval of {deviceId}.
slots:
deviceId: path.deviceId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/config/polling'].put
update:
x-apievangelist-phrasing:
intent: Change one device's polling interval
effect: write
questions:
- How do I make a single device get polled more often?
- Can I set a custom polling interval in seconds for one device?
instructions:
- text: Set the polling interval of device {deviceId} to {pollingIntervalSeconds} seconds.
slots:
deviceId: path.deviceId
pollingIntervalSeconds: requestBody.pollingIntervalSeconds
- text: Poll {deviceId} every {pollingIntervalSeconds} seconds.
slots:
deviceId: path.deviceId
pollingIntervalSeconds: requestBody.pollingIntervalSeconds
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/config/maintenance'].put
update:
x-apievangelist-phrasing:
intent: Put one device into or out of maintenance mode
effect: write
questions:
- How do I put a device in maintenance mode so it stops alerting?
- Can I set an end time and reason when placing a device in maintenance right now?
instructions:
- text: Put device {deviceId} into maintenance until {endUtc} because {reason}.
slots:
deviceId: path.deviceId
endUtc: requestBody.endUtc
reason: requestBody.reason
- text: Take device {deviceId} out of maintenance mode.
slots:
deviceId: path.deviceId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/config/maintenance/schedule'].put
update:
x-apievangelist-phrasing:
intent: Schedule maintenance windows for one device
effect: write
questions:
- Can I schedule recurring maintenance windows for a single device?
- How do I plan future maintenance for one device instead of starting it now?
instructions:
- text: Set maintenance schedules {schedules} on device {deviceId}.
slots:
schedules: requestBody.schedules
deviceId: path.deviceId
- text: Schedule a maintenance window for {deviceId}.
slots:
deviceId: path.deviceId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/poll-now'].put
update:
x-apievangelist-phrasing:
intent: Poll one device immediately
effect: write
questions:
- How do I force an immediate poll of a device instead of waiting for its interval?
- Does polling a device now change its regular polling schedule?
instructions:
- text: Poll device {deviceId} right now.
slots:
deviceId: path.deviceId
- text: Trigger an immediate poll of {deviceId}.
slots:
deviceId: path.deviceId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/-/config/maintenance'].patch
update:
x-apievangelist-phrasing:
intent: Put many devices into maintenance mode
effect: write
questions:
- Can I put a whole list of devices in maintenance mode at once?
- How do I end maintenance mode for several devices together?
instructions:
- text: Put devices {devices} into maintenance until {endUtc} with reason {reason}.
slots:
devices: requestBody.devices
endUtc: requestBody.endUtc
reason: requestBody.reason
- text: Take devices {devices} out of maintenance mode.
slots:
devices: requestBody.devices
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/-/config/maintenance/schedule'].patch
update:
x-apievangelist-phrasing:
intent: Schedule maintenance windows for many devices
effect: write
questions:
- Can I apply the same maintenance schedule to many devices?
- How do I plan a future maintenance window for a set of devices?
instructions:
- text: Apply maintenance schedules {schedules} to devices {devices}.
slots:
schedules: requestBody.schedules
devices: requestBody.devices
- text: Schedule a shared maintenance window for devices {devices}.
slots:
devices: requestBody.devices
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/-/config/polling'].patch
update:
x-apievangelist-phrasing:
intent: Set the polling interval for many devices
effect: write
questions:
- Can I change the polling interval on a batch of devices in one request?
- How do I slow down polling for a list of devices?
instructions:
- text: Set the polling interval to {pollingIntervalSeconds} seconds for devices {devices}.
slots:
pollingIntervalSeconds: requestBody.pollingIntervalSeconds
devices: requestBody.devices
- text: Apply a bulk polling interval change to devices {devices}.
slots:
devices: requestBody.devices
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/-/poll-now'].patch
update:
x-apievangelist-phrasing:
intent: Poll several devices immediately
effect: write
questions:
- Can I force an immediate poll of a list of devices at once?
- How do I re-poll several devices right after a fix?
instructions:
- text: Poll devices {devices} immediately.
slots:
devices: requestBody.devices
- text: Trigger an immediate bulk poll of {devices}.
slots:
devices: requestBody.devices
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/properties'].get
update:
x-apievangelist-phrasing:
intent: Get a device's properties
effect: read
questions:
- What display name, note and SNMP OID are set on a device?
- Is a device marked as wireless?
instructions:
- text: Show the properties of device {deviceId}.
slots:
deviceId: path.deviceId
- text: Get the note and display name for {deviceId}.
slots:
deviceId: path.deviceId
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/{deviceId}/properties'].put
update:
x-apievangelist-phrasing:
intent: Edit one device's properties
effect: write
questions:
- How do I rename a device's display name?
- Can I add a note or change the action policy on a single device?
instructions:
- text: Rename device {deviceId} to {displayName}.
slots:
deviceId: path.deviceId
displayName: requestBody.displayName
- text: Set the note on device {deviceId} to {note}.
slots:
deviceId: path.deviceId
note: requestBody.note
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v1/devices/-/properties'].patch
update:
x-apievangelist-phrasing:
intent: Edit properties across many devices
effect: write
questions:
- Can I set the same note or action policy on many devices at once?
- How do I mark a batch of devices as wireless?
instructions:
- text: Set note {note} on devices {devices}.
slots:
note: requestBody.note
devices: requestBody.devices
- text: Apply action policy {actionPolicy} to devices {devices}.
slots:
actionPolicy: requestBody.actionPolicy
devices: requestBody.devices
method: generated
generated: '2026-10-01'
# --- truncated at 32 KB (44 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/progress-software/refs/heads/main/overlays/progress-software-device-api-phrasing-overlay.yaml