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