# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Azure API Management REST Product Policy API version: 1.0.0 extends: openapi/microsoft-azure-api-management-productpolicy-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: 5 - target: $.paths['/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/policies'].get update: x-apievangelist-phrasing: intent: List the policies on a product effect: read questions: - What policies are applied at the product level? - Can I see every policy configuration attached to one API product? instructions: - text: List the policies configured on product {productId} in service {serviceName}. slots: productId: path.productId serviceName: path.serviceName - text: Show the product-level policy collection. method: generated generated: '2026-10-01' - target: $.paths['/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/policies/{policyId}'].get update: x-apievangelist-phrasing: intent: Get a product's policy document effect: read questions: - How do I read the quota or rate-limit policy on a product? - Can I fetch a product's policy XML? instructions: - text: Get policy {policyId} configured on product {productId} in service {serviceName}. slots: policyId: path.policyId productId: path.productId serviceName: path.serviceName - text: Show me the product-level policy XML. method: generated generated: '2026-10-01' - target: $.paths['/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/policies/{policyId}'].put update: x-apievangelist-phrasing: intent: Set the policy on a product effect: write questions: - How do I put a call quota on everyone subscribed to a product? - Can I replace a product's policy document in one call? instructions: - text: Set policy {policyId} on product {productId} in service {serviceName} to new XML. slots: policyId: path.policyId productId: path.productId serviceName: path.serviceName - text: Replace the product-level policy with new XML. method: generated generated: '2026-10-01' - target: $.paths['/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/policies/{policyId}'].delete update: x-apievangelist-phrasing: intent: Remove the policy from a product effect: destructive questions: - Can I take the quota and rate limits off a product? - Is a product policy recoverable after deletion? instructions: - text: Delete policy {policyId} from product {productId} in service {serviceName}. slots: policyId: path.policyId productId: path.productId serviceName: path.serviceName - text: Remove the product-level policy. method: generated generated: '2026-10-01' - target: $.paths['/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/policies/{policyId}'].head update: x-apievangelist-phrasing: intent: Check a product policy's ETag effect: read questions: - How do I get the ETag of a product's policy? - Can I check whether a product has a policy without loading it? instructions: - text: Get the ETag of policy {policyId} on product {productId} in service {serviceName}. slots: policyId: path.policyId productId: path.productId serviceName: path.serviceName - text: Check whether the product has a policy set. method: generated generated: '2026-10-01'