Progress Software · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for WhatsUp Gold Credential API

13 actions 13 updates phrasing extends openapi/progress-software-credential-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.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 13

$.info
$.paths['/api/v1/credentials/{credentialId}'].get
$.paths['/api/v1/credentials/{credentialId}'].put
$.paths['/api/v1/credentials/{credentialId}'].delete
$.paths['/api/v1/credentials/{credentialId}/assignments/-'].get
$.paths['/api/v1/credentials/{credentialId}/assignments/-'].delete
$.paths['/api/v1/credentials/-'].get
$.paths['/api/v1/credentials/-'].post
$.paths['/api/v1/credentials/-/helper'].get
$.paths['/api/v1/credentials/-/assignments/-'].get
$.paths['/api/v1/credentials/{credentialId}/config/template'].get
$.paths['/api/v1/credentials/-/config/template'].get
$.paths['/api/v1/credentials/-/config/template'].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 WhatsUp Gold Credential API
  version: 1.0.0
extends: openapi/progress-software-credential-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: 12
- target: $.paths['/api/v1/credentials/{credentialId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a credential from the library
      effect: read
      questions:
      - How do I look up one credential in the credential library?
      - Can I view a credential's details in a fuller view?
      instructions:
      - text: Show credential {credentialId}.
        slots:
          credentialId: path.credentialId
      - text: Get credential {credentialId} using the {view} view.
        slots:
          credentialId: path.credentialId
          view: query.view
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/v1/credentials/{credentialId}'].put
  update:
    x-apievangelist-phrasing:
      intent: Update a credential
      effect: write
      questions:
      - How do I rename a stored credential or change its properties?
      - Does a credential name have to be unique when I update it?
      instructions:
      - text: Rename credential {credentialId} to {name}.
        slots:
          credentialId: path.credentialId
          name: requestBody.name
      - text: Replace the properties of credential {credentialId} with {propertyBags}.
        slots:
          credentialId: path.credentialId
          propertyBags: requestBody.propertyBags
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/v1/credentials/{credentialId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a credential from the library
      effect: destructive
      questions:
      - How do I remove a credential from the credential library entirely?
      - Can I delete an old credential I no longer use?
      instructions:
      - text: Delete credential {credentialId} from the library.
        slots:
          credentialId: path.credentialId
      - text: Remove the stored credential {credentialId}.
        slots:
          credentialId: path.credentialId
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/v1/credentials/{credentialId}/assignments/-'].get
  update:
    x-apievangelist-phrasing:
      intent: List devices using a credential
      effect: read
      questions:
      - Which devices is a particular credential assigned to?
      - Before I change a credential, how can I see everything that uses it?
      instructions:
      - text: Show which devices use credential {credentialId}.
        slots:
          credentialId: path.credentialId
      - text: List assignments of credential {credentialId}, {limit} per page.
        slots:
          credentialId: path.credentialId
          limit: query.limit
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/v1/credentials/{credentialId}/assignments/-'].delete
  update:
    x-apievangelist-phrasing:
      intent: Unassign a credential from all devices
      effect: destructive
      questions:
      - How do I detach a credential from every device at once while keeping it in the library?
      - Can I avoid orphaning active monitors when I unassign a credential everywhere?
      instructions:
      - text: Unassign credential {credentialId} from all devices.
        slots:
          credentialId: path.credentialId
      - text: Remove credential {credentialId} from every device, preventOrphanActiveMonitors {preventOrphanActiveMonitors}.
        slots:
          credentialId: path.credentialId
          preventOrphanActiveMonitors: query.preventOrphanActiveMonitors
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/v1/credentials/-'].get
  update:
    x-apievangelist-phrasing:
      intent: Search the credential library
      effect: read
      questions:
      - What credentials are stored in my credential library?
      - Can I filter stored credentials by type or search by name?
      instructions:
      - text: List the credentials in the library.
      - text: Find {type} credentials matching {search}.
        slots:
          type: query.type
          search: query.search
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/v1/credentials/-'].post
  update:
    x-apievangelist-phrasing:
      intent: Add a credential to the library
      effect: write
      questions:
      - How do I add a new credential for monitoring devices?
      - Must a new credential's name be unique within its type?
      instructions:
      - text: Add a {type} credential named {name} with properties {propertyBags}.
        slots:
          type: requestBody.type
          name: requestBody.name
          propertyBags: requestBody.propertyBags
      - text: Create credential {name} described as {description}.
        slots:
          name: requestBody.name
          description: requestBody.description
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/v1/credentials/-/helper'].get
  update:
    x-apievangelist-phrasing:
      intent: Get help building a Cisco Meraki credential
      effect: read
      questions:
      - What information do I need to build a Cisco Meraki credential from an organization API key?
      - Is there a helper that looks up Meraki organization details for a new credential?
      instructions:
      - text: Use the Meraki organization helper with API key {input}.
        slots:
          input: query.input
      - text: Run credential helper {type} with input {input}.
        slots:
          type: query.type
          input: query.input
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/v1/credentials/-/assignments/-'].get
  update:
    x-apievangelist-phrasing:
      intent: List credential assignments across all credentials
      effect: read
      questions:
      - Which credentials are assigned to which devices across the whole library?
      - Can I search credential-to-device assignments by type?
      instructions:
      - text: List every credential assignment across all devices.
      - text: Find credential assignments of type {type} matching {search}.
        slots:
          type: query.type
          search: query.search
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/v1/credentials/{credentialId}/config/template'].get
  update:
    x-apievangelist-phrasing:
      intent: Export one credential as a template
      effect: read
      questions:
      - How do I export a single credential as a reusable template?
      - Can I protect sensitive values in an exported credential template with a key?
      instructions:
      - text: Export credential {credentialId} as a template.
        slots:
          credentialId: path.credentialId
      - text: Export credential {credentialId} as a template encoded with key {key}.
        slots:
          credentialId: path.credentialId
          key: query.key
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/v1/credentials/-/config/template'].get
  update:
    x-apievangelist-phrasing:
      intent: Export credential templates in bulk
      effect: read
      questions:
      - Can I export all my credentials as templates to copy them to another server?
      - How do I export only credentials of one type as templates?
      instructions:
      - text: Export templates for all credentials in the library.
      - text: Export {type} credential templates matching {search}.
        slots:
          type: query.type
          search: query.search
      method: generated
      generated: '2026-10-01'
- target: $.paths['/api/v1/credentials/-/config/template'].patch
  update:
    x-apievangelist-phrasing:
      intent: Import credentials from templates
      effect: write
      questions:
      - How do I create credentials in bulk from exported templates?
      - Can applying templates modify existing credentials with matching IDs instead of creating new ones?
      instructions:
      - text: Apply these credential templates {templates}.
        slots:
          templates: requestBody.templates
      - text: Import templates {templates} decoded with key {key}, allowModifies {allowModifies}.
        slots:
          templates: requestBody.templates
          key: query.key
          allowModifies: requestBody.allowModifies
      method: generated
      generated: '2026-10-01'