# 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 NotificationHubsManagementClient… version: 1.0.0 extends: openapi/microsoft-azure-notificationhubs-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: 14 - target: $.paths['/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NotificationHubs/namespaces/{namespaceName}/checkNotificationHubAvailability'].post update: x-apievangelist-phrasing: intent: Check if a notification hub name is available effect: read questions: - Is a notification hub name still free inside my namespace? - Can I test a hub name before trying to create it? instructions: - text: Check whether hub name {name} is available in namespace {namespaceName} of resource group {resourceGroupName}, subscription {subscriptionId}. slots: name: requestBody.name namespaceName: path.namespaceName resourceGroupName: path.resourceGroupName subscriptionId: path.subscriptionId - text: See if I can still use the notification hub name {name} in namespace {namespaceName}. slots: name: requestBody.name namespaceName: path.namespaceName method: generated generated: '2026-09-26' - target: $.paths['/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NotificationHubs/namespaces/{namespaceName}/notificationHubs/{notificationHubName}'].get update: x-apievangelist-phrasing: intent: Get one notification hub's details effect: read questions: - What are the settings of a specific notification hub? - Can I look up a single push hub in a namespace by name? instructions: - text: Show notification hub {notificationHubName} in namespace {namespaceName}, resource group {resourceGroupName}, subscription {subscriptionId}. slots: notificationHubName: path.notificationHubName namespaceName: path.namespaceName resourceGroupName: path.resourceGroupName subscriptionId: path.subscriptionId - text: Fetch the configuration of hub {notificationHubName}. slots: notificationHubName: path.notificationHubName method: generated generated: '2026-09-26' - target: $.paths['/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NotificationHubs/namespaces/{namespaceName}/notificationHubs/{notificationHubName}'].put update: x-apievangelist-phrasing: intent: Create or replace a notification hub effect: write questions: - How do I create a new notification hub inside an existing namespace? - Can I overwrite a hub's full definition in one request? instructions: - text: Create notification hub {notificationHubName} in namespace {namespaceName} of resource group {resourceGroupName}, subscription {subscriptionId}. slots: notificationHubName: path.notificationHubName namespaceName: path.namespaceName resourceGroupName: path.resourceGroupName subscriptionId: path.subscriptionId - text: Set up hub {notificationHubName} in {location} with properties {properties}. slots: notificationHubName: path.notificationHubName location: requestBody.location properties: requestBody.properties method: generated generated: '2026-09-26' - target: $.paths['/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NotificationHubs/namespaces/{namespaceName}/notificationHubs/{notificationHubName}'].delete update: x-apievangelist-phrasing: intent: Delete a notification hub effect: destructive questions: - Can I remove a notification hub I no longer send pushes through? - Does deleting a hub leave the rest of its namespace alone? instructions: - text: Delete notification hub {notificationHubName} from namespace {namespaceName} in resource group {resourceGroupName}, subscription {subscriptionId}. slots: notificationHubName: path.notificationHubName namespaceName: path.namespaceName resourceGroupName: path.resourceGroupName subscriptionId: path.subscriptionId - text: Tear down the hub {notificationHubName}. slots: notificationHubName: path.notificationHubName method: generated generated: '2026-09-26' - target: $.paths['/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NotificationHubs/namespaces/{namespaceName}/notificationHubs/{notificationHubName}'].patch update: x-apievangelist-phrasing: intent: Partially update a notification hub effect: write questions: - Can I change just the tags or SKU on a hub without redefining it? - What's the way to patch a few settings on an existing notification hub? instructions: - text: Patch hub {notificationHubName} in namespace {namespaceName}, resource group {resourceGroupName}, subscription {subscriptionId} with tags {tags}. slots: notificationHubName: path.notificationHubName namespaceName: path.namespaceName resourceGroupName: path.resourceGroupName subscriptionId: path.subscriptionId tags: requestBody.tags - text: Move existing hub {notificationHubName} to SKU {sku}. slots: notificationHubName: path.notificationHubName sku: requestBody.sku method: generated generated: '2026-09-26' - target: $.paths['/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NotificationHubs/namespaces/{namespaceName}/notificationHubs/{notificationHubName}/debugsend'].post update: x-apievangelist-phrasing: intent: Send a test push notification effect: write questions: - How do I fire a test push through a hub to check it's wired up? - Can I debug-send a notification without a real campaign? instructions: - text: Send a test push through hub {notificationHubName} in namespace {namespaceName}, resource group {resourceGroupName}, subscription {subscriptionId}. slots: notificationHubName: path.notificationHubName namespaceName: path.namespaceName resourceGroupName: path.resourceGroupName subscriptionId: path.subscriptionId - text: Debug-send a notification on {notificationHubName} and report what happened. slots: notificationHubName: path.notificationHubName method: generated generated: '2026-09-26' - target: $.paths['/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NotificationHubs/namespaces/{namespaceName}/notificationHubs/{notificationHubName}/AuthorizationRules/{authorizationRuleName}'].get update: x-apievangelist-phrasing: intent: Get a hub's authorization rule effect: read questions: - What rights does a named access policy on my notification hub grant? - Can I look up one shared access rule on a hub? instructions: - text: Show authorization rule {authorizationRuleName} on hub {notificationHubName} in namespace {namespaceName}. slots: authorizationRuleName: path.authorizationRuleName notificationHubName: path.notificationHubName namespaceName: path.namespaceName - text: Get the rights on access policy {authorizationRuleName} for {notificationHubName} in group {resourceGroupName}, subscription {subscriptionId}. slots: authorizationRuleName: path.authorizationRuleName notificationHubName: path.notificationHubName resourceGroupName: path.resourceGroupName subscriptionId: path.subscriptionId method: generated generated: '2026-09-26' - target: $.paths['/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NotificationHubs/namespaces/{namespaceName}/notificationHubs/{notificationHubName}/AuthorizationRules/{authorizationRuleName}'].put update: x-apievangelist-phrasing: intent: Create or update a hub authorization rule effect: write questions: - How do I add a send-only access policy to a notification hub? - Can I change which rights an existing hub access rule has? instructions: - text: Create authorization rule {authorizationRuleName} on hub {notificationHubName} in namespace {namespaceName}. slots: authorizationRuleName: path.authorizationRuleName notificationHubName: path.notificationHubName namespaceName: path.namespaceName - text: Set access policy {authorizationRuleName} on {notificationHubName} ({resourceGroupName}, {subscriptionId}) to {properties}. slots: authorizationRuleName: path.authorizationRuleName notificationHubName: path.notificationHubName resourceGroupName: path.resourceGroupName subscriptionId: path.subscriptionId properties: requestBody.properties method: generated generated: '2026-09-26' - target: $.paths['/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NotificationHubs/namespaces/{namespaceName}/notificationHubs/{notificationHubName}/AuthorizationRules/{authorizationRuleName}'].delete update: x-apievangelist-phrasing: intent: Delete a hub authorization rule effect: destructive questions: - Can I revoke a shared access policy on a notification hub? - Will clients using a deleted hub access rule lose access? instructions: - text: Delete authorization rule {authorizationRuleName} from hub {notificationHubName} in namespace {namespaceName}. slots: authorizationRuleName: path.authorizationRuleName notificationHubName: path.notificationHubName namespaceName: path.namespaceName - text: Remove access policy {authorizationRuleName} on {notificationHubName} in group {resourceGroupName}, subscription {subscriptionId}. slots: authorizationRuleName: path.authorizationRuleName notificationHubName: path.notificationHubName resourceGroupName: path.resourceGroupName subscriptionId: path.subscriptionId method: generated generated: '2026-09-26' - target: $.paths['/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NotificationHubs/namespaces/{namespaceName}/notificationHubs'].get update: x-apievangelist-phrasing: intent: List notification hubs in a namespace effect: read questions: - Which notification hubs are in my namespace? - Before sending a push, can I check which hubs a namespace holds? instructions: - text: List the notification hubs in namespace {ns}. slots: ns: path.namespaceName - text: Show every hub under namespace {ns} in resource group {rg}. slots: ns: path.namespaceName rg: path.resourceGroupName method: generated generated: '2026-10-01' - target: $.paths['/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NotificationHubs/namespaces/{namespaceName}/notificationHubs/{notificationHubName}/AuthorizationRules'].get update: x-apievangelist-phrasing: intent: List a hub's authorization rules effect: read questions: - Which shared access policies are defined on a notification hub? - Can I audit every access rule on a single hub? instructions: - text: List the authorization rules on hub {notificationHubName} in namespace {namespaceName}, resource group {resourceGroupName}, subscription {subscriptionId}. slots: notificationHubName: path.notificationHubName namespaceName: path.namespaceName resourceGroupName: path.resourceGroupName subscriptionId: path.subscriptionId - text: Enumerate all access policies defined for {notificationHubName}. slots: notificationHubName: path.notificationHubName method: generated generated: '2026-09-26' - target: $.paths['/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NotificationHubs/namespaces/{namespaceName}/notificationHubs/{notificationHubName}/AuthorizationRules/{authorizationRuleName}/listKeys'].post update: x-apievangelist-phrasing: intent: Get a hub rule's connection strings effect: read questions: - How do I get the connection string my backend needs to send to a hub? - Can I read the primary and secondary keys for a hub access rule? instructions: - text: Get the connection strings for rule {authorizationRuleName} on hub {notificationHubName} in namespace {namespaceName}. slots: authorizationRuleName: path.authorizationRuleName notificationHubName: path.notificationHubName namespaceName: path.namespaceName - text: Show the primary and secondary keys of {authorizationRuleName} for {notificationHubName} in {resourceGroupName}, subscription {subscriptionId}. slots: authorizationRuleName: path.authorizationRuleName notificationHubName: path.notificationHubName resourceGroupName: path.resourceGroupName subscriptionId: path.subscriptionId method: generated generated: '2026-09-26' - target: $.paths['/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NotificationHubs/namespaces/{namespaceName}/notificationHubs/{notificationHubName}/AuthorizationRules/{authorizationRuleName}/regenerateKeys'].post update: x-apievangelist-phrasing: intent: Regenerate a hub rule's access keys effect: destructive questions: - Can I rotate the keys on a notification hub access rule after a leak? - Is it possible to regenerate only the secondary key of a hub rule? instructions: - text: Regenerate the {policyKey} for rule {authorizationRuleName} on hub {notificationHubName} in namespace {namespaceName}. slots: authorizationRuleName: path.authorizationRuleName notificationHubName: path.notificationHubName namespaceName: path.namespaceName policyKey: requestBody.policyKey - text: Rotate the keys of access policy {authorizationRuleName} on {notificationHubName} in {resourceGroupName}, subscription {subscriptionId}. slots: authorizationRuleName: path.authorizationRuleName notificationHubName: path.notificationHubName resourceGroupName: path.resourceGroupName subscriptionId: path.subscriptionId method: generated generated: '2026-09-26' - target: $.paths['/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NotificationHubs/namespaces/{namespaceName}/notificationHubs/{notificationHubName}/pnsCredentials'].post update: x-apievangelist-phrasing: intent: List a hub's push service credentials effect: read questions: - Which platform push service credentials are configured on my hub? - Can I check the PNS credentials a notification hub is using? instructions: - text: Show the PNS credentials on hub {notificationHubName} in namespace {namespaceName}, resource group {resourceGroupName}, subscription {subscriptionId}. slots: notificationHubName: path.notificationHubName namespaceName: path.namespaceName resourceGroupName: path.resourceGroupName subscriptionId: path.subscriptionId - text: List the platform notification credentials configured for {notificationHubName}. slots: notificationHubName: path.notificationHubName method: generated generated: '2026-09-26'