# 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 Record Sets API version: 1.0.0 extends: openapi/microsoft-azure-recordsets-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: 13 - target: $.paths['/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/{recordType}/{relativeRecordSetName}'].get update: x-apievangelist-phrasing: intent: Get a record set in a public DNS zone effect: read questions: - What values does a specific record hold in my public DNS zone? - Can I look up one A or CNAME record set in an internet-facing DNS zone? instructions: - text: Get the {recordType} record set {relativeRecordSetName} in public zone {zoneName}. slots: recordType: path.recordType relativeRecordSetName: path.relativeRecordSetName zoneName: path.zoneName - text: Show public DNS record {relativeRecordSetName} of type {recordType} from {zoneName}. slots: relativeRecordSetName: path.relativeRecordSetName recordType: path.recordType zoneName: path.zoneName method: generated generated: '2026-09-26' - target: $.paths['/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/{recordType}/{relativeRecordSetName}'].put update: x-apievangelist-phrasing: intent: Create or replace a public DNS record set effect: write questions: - How do I add a new record to my public DNS zone? - Why can't I create an SOA record set in a public zone? - Can I stop a public DNS record from being overwritten if it already exists? instructions: - text: Create {recordType} record {relativeRecordSetName} in public zone {zoneName} with {properties}. slots: recordType: path.recordType relativeRecordSetName: path.relativeRecordSetName zoneName: path.zoneName properties: requestBody.properties - text: Add public record {relativeRecordSetName} ({recordType}) to {zoneName} only if none exists, If-None-Match {ifNoneMatch}. slots: relativeRecordSetName: path.relativeRecordSetName recordType: path.recordType zoneName: path.zoneName ifNoneMatch: header.If-None-Match method: generated generated: '2026-09-26' - target: $.paths['/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/{recordType}/{relativeRecordSetName}'].delete update: x-apievangelist-phrasing: intent: Delete a record set from a public DNS zone effect: destructive questions: - How do I remove a record from my public DNS zone? - Can I delete a public zone's record only if it hasn't changed since I read it? instructions: - text: Delete the {recordType} record {relativeRecordSetName} from public zone {zoneName}. slots: recordType: path.recordType relativeRecordSetName: path.relativeRecordSetName zoneName: path.zoneName - text: Remove public DNS record {relativeRecordSetName} ({recordType}) in {zoneName} if its etag is still {etag}. slots: relativeRecordSetName: path.relativeRecordSetName recordType: path.recordType zoneName: path.zoneName etag: header.If-Match method: generated generated: '2026-09-26' - target: $.paths['/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/{recordType}/{relativeRecordSetName}'].patch update: x-apievangelist-phrasing: intent: Patch an existing public DNS record set effect: write questions: - Can I change the TTL or values of an existing record in my public zone? - How do I edit a public DNS record without replacing it wholesale? instructions: - text: Patch public record {relativeRecordSetName} ({recordType}) in zone {zoneName} with {properties}. slots: relativeRecordSetName: path.relativeRecordSetName recordType: path.recordType zoneName: path.zoneName properties: requestBody.properties - text: Update the existing {recordType} entry {relativeRecordSetName} on public zone {zoneName}. slots: recordType: path.recordType relativeRecordSetName: path.relativeRecordSetName zoneName: path.zoneName method: generated generated: '2026-09-26' - target: $.paths['/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/{recordType}'].get update: x-apievangelist-phrasing: intent: List public DNS records of one type effect: read questions: - What are all the MX records in my public DNS zone? - Can I list only one record type from an internet-facing zone? instructions: - text: List all {recordType} record sets in public zone {zoneName}. slots: recordType: path.recordType zoneName: path.zoneName - text: Show {recordType} records in {zoneName} whose names end in {suffix}. slots: recordType: path.recordType zoneName: path.zoneName suffix: query.$recordsetnamesuffix method: generated generated: '2026-09-26' - target: $.paths['/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/recordsets'].get update: x-apievangelist-phrasing: intent: List all record sets in a public DNS zone effect: read questions: - What records of every type are in my public DNS zone? - Can I cap how many public zone records come back per page? instructions: - text: List every record set in public zone {zoneName}. slots: zoneName: path.zoneName - text: Show the first {top} records of all types in {zoneName}. slots: top: query.$top zoneName: path.zoneName method: generated generated: '2026-09-26' - target: $.paths['/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/all'].get update: x-apievangelist-phrasing: intent: List all public zone records via the /all route effect: read questions: - Is there an /all endpoint that dumps every record in a public DNS zone? - Can I pull the complete public zone listing filtered by a name suffix through the all-records route? instructions: - text: Use the all-records route to list public zone {zoneName}. slots: zoneName: path.zoneName - text: Through the /all listing, return records in {zoneName} ending with {suffix}. slots: zoneName: path.zoneName suffix: query.$recordsetnamesuffix method: generated generated: '2026-09-26' - target: $.paths['/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateDnsZones/{privateZoneName}/{recordType}/{relativeRecordSetName}'].get update: x-apievangelist-phrasing: intent: Get a record set in a private DNS zone effect: read questions: - What does a specific record resolve to inside my private DNS zone? - Can I read one record set from a Private DNS zone linked to my VNet? instructions: - text: Get private record {relativeRecordSetName} ({recordType}) in zone {privateZoneName}, group {resourceGroupName}, subscription {subscriptionId}. slots: relativeRecordSetName: path.relativeRecordSetName recordType: path.recordType privateZoneName: path.privateZoneName resourceGroupName: path.resourceGroupName subscriptionId: path.subscriptionId - text: Show the {recordType} entry {relativeRecordSetName} in private zone {privateZoneName}. slots: recordType: path.recordType relativeRecordSetName: path.relativeRecordSetName privateZoneName: path.privateZoneName method: generated generated: '2026-09-26' - target: $.paths['/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateDnsZones/{privateZoneName}/{recordType}/{relativeRecordSetName}'].put update: x-apievangelist-phrasing: intent: Create or replace a private DNS record set effect: write questions: - How do I add an internal hostname to my Private DNS zone? - Can I create a private zone record only when it doesn't already exist? instructions: - text: Create {recordType} record {relativeRecordSetName} in private zone {privateZoneName} of group {resourceGroupName}, subscription {subscriptionId}. slots: recordType: path.recordType relativeRecordSetName: path.relativeRecordSetName privateZoneName: path.privateZoneName resourceGroupName: path.resourceGroupName subscriptionId: path.subscriptionId - text: Write private record {relativeRecordSetName} ({recordType}) in {privateZoneName} with values {properties}. slots: relativeRecordSetName: path.relativeRecordSetName recordType: path.recordType privateZoneName: path.privateZoneName properties: requestBody.properties method: generated generated: '2026-09-26' - target: $.paths['/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateDnsZones/{privateZoneName}/{recordType}/{relativeRecordSetName}'].delete update: x-apievangelist-phrasing: intent: Delete a record set from a private DNS zone effect: destructive questions: - How do I remove an internal record from my Private DNS zone? - Can deleting a private zone record be undone? instructions: - text: Delete private record {relativeRecordSetName} ({recordType}) from {privateZoneName} in group {resourceGroupName}, subscription {subscriptionId}. slots: relativeRecordSetName: path.relativeRecordSetName recordType: path.recordType privateZoneName: path.privateZoneName resourceGroupName: path.resourceGroupName subscriptionId: path.subscriptionId - text: Remove the {recordType} record {relativeRecordSetName} from private zone {privateZoneName}. slots: recordType: path.recordType relativeRecordSetName: path.relativeRecordSetName privateZoneName: path.privateZoneName method: generated generated: '2026-09-26' - target: $.paths['/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateDnsZones/{privateZoneName}/{recordType}/{relativeRecordSetName}'].patch update: x-apievangelist-phrasing: intent: Patch an existing private DNS record set effect: write questions: - Can I change the IPs behind an existing record in my private zone? - How do I edit a Private DNS record while guarding against concurrent changes? instructions: - text: Patch private record {relativeRecordSetName} ({recordType}) in {privateZoneName}, group {resourceGroupName}, subscription {subscriptionId}. slots: relativeRecordSetName: path.relativeRecordSetName recordType: path.recordType privateZoneName: path.privateZoneName resourceGroupName: path.resourceGroupName subscriptionId: path.subscriptionId - text: Update private zone {privateZoneName} entry {relativeRecordSetName} ({recordType}) only if etag is {etag}. slots: privateZoneName: path.privateZoneName relativeRecordSetName: path.relativeRecordSetName recordType: path.recordType etag: header.If-Match method: generated generated: '2026-09-26' - target: $.paths['/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateDnsZones/{privateZoneName}/{recordType}'].get update: x-apievangelist-phrasing: intent: List private DNS records of one type effect: read questions: - Which A records are defined in my Private DNS zone? - Can I filter a private zone's records to a single type? instructions: - text: List {recordType} records in private zone {privateZoneName}, group {resourceGroupName}, subscription {subscriptionId}. slots: recordType: path.recordType privateZoneName: path.privateZoneName resourceGroupName: path.resourceGroupName subscriptionId: path.subscriptionId - text: Show private {recordType} entries in {privateZoneName} ending in {suffix}. slots: recordType: path.recordType privateZoneName: path.privateZoneName suffix: query.$recordsetnamesuffix method: generated generated: '2026-09-26' - target: $.paths['/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateDnsZones/{privateZoneName}/ALL'].get update: x-apievangelist-phrasing: intent: List all record sets in a private DNS zone effect: read questions: - What records of every type exist in my Private DNS zone? - Can I page through a whole private zone's records? instructions: - text: List every record in private zone {privateZoneName} in group {resourceGroupName}, subscription {subscriptionId}. slots: privateZoneName: path.privateZoneName resourceGroupName: path.resourceGroupName subscriptionId: path.subscriptionId - text: Return the first {top} private records of all types in {privateZoneName}. slots: top: query.$top privateZoneName: path.privateZoneName method: generated generated: '2026-09-26'