# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Microsoft Azure Storage API version: 1.0.0 extends: openapi/microsoft-azure-storage-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: 14 - target: $.paths['/accounts/{accountId}/blobUploadEndpoint'].get update: x-apievangelist-phrasing: intent: Get the blob upload endpoint for an account effect: read questions: - Where should I upload blobs for a given account? - Can I retrieve the blob upload endpoint assigned to an account? instructions: - text: Get the blob upload endpoint for account {accountId}. slots: accountId: path.accountId - text: Fetch where to upload files for account {accountId}. slots: accountId: path.accountId method: generated generated: '2026-09-26' - target: $.paths['/storage'].get update: x-apievangelist-phrasing: intent: List storage accounts managed by a key vault effect: read questions: - Which storage accounts is my Key Vault managing keys for? - What permission do I need to list vault-managed storage accounts? instructions: - text: List the storage accounts managed by this key vault. - text: Show up to {maxresults} vault-managed storage accounts. slots: maxresults: query.maxresults method: generated generated: '2026-09-26' - target: $.paths['/storage/{storage-account-name}/backup'].post update: x-apievangelist-phrasing: intent: Back up a vault-managed storage account effect: read questions: - How do I download a backup of a storage account managed by Key Vault? - Can I export a managed storage account so I can restore it to another vault later? instructions: - text: Back up managed storage account {storage-account-name} and download the blob. slots: storage-account-name: path.storage-account-name - text: Export a backup of vault storage account {storage-account-name}. slots: storage-account-name: path.storage-account-name method: generated generated: '2026-09-26' - target: $.paths['/storage/restore'].post update: x-apievangelist-phrasing: intent: Restore a backed-up storage account to a vault effect: write questions: - How do I restore a managed storage account from a backup into a key vault? - Can I bring a storage account backup into a different vault? instructions: - text: Restore the storage account backup {value} into this key vault. slots: value: requestBody.value - text: Import managed storage account from backup blob {value}. slots: value: requestBody.value method: generated generated: '2026-09-26' - target: $.paths['/storage/{storage-account-name}'].get update: x-apievangelist-phrasing: intent: Get a vault-managed storage account effect: read questions: - What key and rotation settings does a vault-managed storage account have? - Can I see which key is active on a managed storage account? instructions: - text: Get managed storage account {storage-account-name} from the key vault. slots: storage-account-name: path.storage-account-name - text: Show the active key and regeneration period for {storage-account-name}. slots: storage-account-name: path.storage-account-name method: generated generated: '2026-09-26' - target: $.paths['/storage/{storage-account-name}'].put update: x-apievangelist-phrasing: intent: Add a storage account for the vault to manage effect: write questions: - How do I let Key Vault manage and rotate keys for a storage account? - Can I have the vault auto-regenerate storage keys on a schedule? instructions: - text: Have the vault manage storage account {storage-account-name} with resource ID {resourceId} and active key {activeKeyName}. slots: storage-account-name: path.storage-account-name resourceId: requestBody.resourceId activeKeyName: requestBody.activeKeyName - text: Set {storage-account-name} to auto-regenerate keys ({autoRegenerateKey}) every {regenerationPeriod}. slots: storage-account-name: path.storage-account-name autoRegenerateKey: requestBody.autoRegenerateKey regenerationPeriod: requestBody.regenerationPeriod method: generated generated: '2026-09-26' - target: $.paths['/storage/{storage-account-name}'].delete update: x-apievangelist-phrasing: intent: Stop the vault managing a storage account effect: destructive questions: - Can I remove a storage account from Key Vault management? - What permission is needed to delete a vault-managed storage account? instructions: - text: Delete managed storage account {storage-account-name} from the key vault. slots: storage-account-name: path.storage-account-name - text: Remove {storage-account-name} from vault management. slots: storage-account-name: path.storage-account-name method: generated generated: '2026-09-26' - target: $.paths['/storage/{storage-account-name}'].patch update: x-apievangelist-phrasing: intent: Update a vault-managed storage account effect: write questions: - How do I change the rotation period on a storage account the vault already manages? - Can I switch the active key of a managed storage account? instructions: - text: Change the regeneration period of managed storage account {storage-account-name} to {regenerationPeriod}. slots: storage-account-name: path.storage-account-name regenerationPeriod: requestBody.regenerationPeriod - text: Switch the active key of {storage-account-name} to {activeKeyName}. slots: storage-account-name: path.storage-account-name activeKeyName: requestBody.activeKeyName method: generated generated: '2026-09-26' - target: $.paths['/storage/{storage-account-name}/regeneratekey'].post update: x-apievangelist-phrasing: intent: Regenerate a storage account key effect: write questions: - How do I rotate one key of a vault-managed storage account right now? - Can I regenerate key1 or key2 on demand? instructions: - text: Regenerate key {keyName} for storage account {storage-account-name}. slots: keyName: requestBody.keyName storage-account-name: path.storage-account-name - text: Rotate the {keyName} access key on {storage-account-name} now. slots: keyName: requestBody.keyName storage-account-name: path.storage-account-name method: generated generated: '2026-09-26' - target: $.paths['/storage/{storage-account-name}/sas'].get update: x-apievangelist-phrasing: intent: List SAS definitions for a storage account effect: read questions: - Which SAS definitions exist for my vault-managed storage account? - Can I limit how many shared access signature definitions come back? instructions: - text: List SAS definitions for storage account {storage-account-name}. slots: storage-account-name: path.storage-account-name - text: Show up to {maxresults} SAS definitions on {storage-account-name}. slots: maxresults: query.maxresults storage-account-name: path.storage-account-name method: generated generated: '2026-09-26' - target: $.paths['/storage/{storage-account-name}/sas/{sas-definition-name}'].get update: x-apievangelist-phrasing: intent: Get a SAS definition effect: read questions: - What template and validity period does a SAS definition use? - How do I inspect one shared access signature definition? instructions: - text: Get SAS definition {sas-definition-name} for storage account {storage-account-name}. slots: sas-definition-name: path.sas-definition-name storage-account-name: path.storage-account-name - text: Show the validity period of SAS {sas-definition-name} on {storage-account-name}. slots: sas-definition-name: path.sas-definition-name storage-account-name: path.storage-account-name method: generated generated: '2026-09-26' - target: $.paths['/storage/{storage-account-name}/sas/{sas-definition-name}'].put update: x-apievangelist-phrasing: intent: Create a SAS definition effect: write questions: - How do I define a shared access signature the vault issues for a storage account? - Can I choose between account and service SAS types? instructions: - text: Create SAS definition {sas-definition-name} on {storage-account-name} from template {templateUri}, type {sasType}, valid {validityPeriod}. slots: sas-definition-name: path.sas-definition-name storage-account-name: path.storage-account-name templateUri: requestBody.templateUri sasType: requestBody.sasType validityPeriod: requestBody.validityPeriod - text: Add a new SAS definition {sas-definition-name} for managed account {storage-account-name}. slots: sas-definition-name: path.sas-definition-name storage-account-name: path.storage-account-name method: generated generated: '2026-09-26' - target: $.paths['/storage/{storage-account-name}/sas/{sas-definition-name}'].delete update: x-apievangelist-phrasing: intent: Delete a SAS definition effect: destructive questions: - Can I remove a SAS definition from a managed storage account? - What happens when I delete a shared access signature definition? instructions: - text: Delete SAS definition {sas-definition-name} from storage account {storage-account-name}. slots: sas-definition-name: path.sas-definition-name storage-account-name: path.storage-account-name - text: Remove the {sas-definition-name} signature definition on {storage-account-name}. slots: sas-definition-name: path.sas-definition-name storage-account-name: path.storage-account-name method: generated generated: '2026-09-26' - target: $.paths['/storage/{storage-account-name}/sas/{sas-definition-name}'].patch update: x-apievangelist-phrasing: intent: Update a SAS definition effect: write questions: - How do I change the validity period of an existing SAS definition? - Can I update the template URI of a SAS definition I already created? instructions: - text: Change the validity period of SAS definition {sas-definition-name} on {storage-account-name} to {validityPeriod}. slots: sas-definition-name: path.sas-definition-name storage-account-name: path.storage-account-name validityPeriod: requestBody.validityPeriod - text: Update template URI of existing SAS {sas-definition-name} for {storage-account-name} to {templateUri}. slots: sas-definition-name: path.sas-definition-name storage-account-name: path.storage-account-name templateUri: requestBody.templateUri method: generated generated: '2026-09-26'