# 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 Metrics API version: 1.0.0 extends: openapi/microsoft-azure-metrics-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['/providers/Microsoft.ADHybridHealthService/services/{serviceName}/metrics/{metricName}/groups/{groupName}'].get update: x-apievangelist-phrasing: intent: Get server metrics for a Connect Health service effect: read questions: - How do I pull server metric values for a Connect Health service by metric and group? - Can I limit Connect Health service metrics to a date range? instructions: - text: Get metric {metric} group {group} values for Connect Health service {service}. slots: metric: path.metricName group: path.groupName service: path.serviceName - text: Get {metric} metrics in group {group} for service {service} from {from} to {to}. slots: metric: path.metricName group: path.groupName service: path.serviceName from: query.fromDate to: query.toDate method: generated generated: '2026-09-26' - target: $.paths['/providers/Microsoft.ADHybridHealthService/services/{serviceName}/metrics/{metricName}/groups/{groupName}/average'].get update: x-apievangelist-phrasing: intent: Get the average of a Connect Health metric effect: read questions: - What's the average value of a Connect Health metric for a group? - Can I get an averaged figure instead of raw metric values for my sync service? instructions: - text: Get the average of metric {metric} in group {group} for service {service}. slots: metric: path.metricName group: path.groupName service: path.serviceName - text: Show averaged {metric} values for group {group} on Connect Health service {service}. slots: metric: path.metricName group: path.groupName service: path.serviceName method: generated generated: '2026-09-26' - target: $.paths['/providers/Microsoft.ADHybridHealthService/services/{serviceName}/metrics/{metricName}/groups/{groupName}/sum'].get update: x-apievangelist-phrasing: intent: Get the sum of a Connect Health metric effect: read questions: - How can I get the total (sum) of a Connect Health metric for a group? - Is there a way to add up all values of a service metric in one call? instructions: - text: Get the sum of metric {metric} in group {group} for service {service}. slots: metric: path.metricName group: path.groupName service: path.serviceName - text: Total the {metric} values for group {group} on Connect Health service {service}. slots: metric: path.metricName group: path.groupName service: path.serviceName method: generated generated: '2026-09-26' - target: $.paths['/providers/Microsoft.ADHybridHealthService/services/{serviceName}/metricmetadata'].get update: x-apievangelist-phrasing: intent: List metric metadata for a Connect Health service effect: read questions: - Which metrics are available for my Connect Health service? - Can I list only performance-counter metrics for a service? instructions: - text: List metric metadata for Connect Health service {service}. slots: service: path.serviceName - text: List metric definitions for service {service} filtered by {filter}. slots: service: path.serviceName filter: query.$filter method: generated generated: '2026-09-26' - target: $.paths['/providers/Microsoft.ADHybridHealthService/services/{serviceName}/metricmetadata/{metricName}'].get update: x-apievangelist-phrasing: intent: Get metadata for one Connect Health metric effect: read questions: - How do I see the definition and groupings of one specific Connect Health metric? - What metadata does a single service metric expose? instructions: - text: Get metadata for metric {metric} on Connect Health service {service}. slots: metric: path.metricName service: path.serviceName - text: Describe the metric {metric} of service {service}. slots: metric: path.metricName service: path.serviceName method: generated generated: '2026-09-26' - target: $.paths['/providers/Microsoft.ADHybridHealthService/services/{serviceName}/metricmetadata/{metricName}/groups/{groupName}'].get update: x-apievangelist-phrasing: intent: Get metric metadata for a metric group effect: read questions: - Can I get the metric metadata for one metric and group combination? - What series does a Connect Health metric group include over a date window? instructions: - text: Get metadata for metric {metric} group {group} on service {service}. slots: metric: path.metricName group: path.groupName service: path.serviceName - text: Show metric metadata for {metric} group {group} on {service} between {from} and {to}. slots: metric: path.metricName group: path.groupName service: path.serviceName from: query.fromDate to: query.toDate method: generated generated: '2026-09-26' - target: $.paths['/providers/Microsoft.ADHybridHealthService/services/{serviceName}/servicemembers/{serviceMemberId}/metrics/{metricName}/groups/{groupName}'].get update: x-apievangelist-phrasing: intent: Get metrics for one server in a service effect: read questions: - How do I get metric values for one specific server onboarded to Connect Health? - Can I pull a single server's metrics for a date range? instructions: - text: Get metric {metric} group {group} for server {member} in service {service}. slots: metric: path.metricName group: path.groupName member: path.serviceMemberId service: path.serviceName - text: Get {metric} values in group {group} for server {member} of {service} from {from} to {to}. slots: metric: path.metricName group: path.groupName member: path.serviceMemberId service: path.serviceName from: query.fromDate to: query.toDate method: generated generated: '2026-09-26' - target: $.paths['/providers/Microsoft.ADHybridHealthService/services/{serviceName}/servicemembers/{serviceMemberId}/metrics/{metricName}'].get update: x-apievangelist-phrasing: intent: List connectors and run profiles for a server effect: read questions: - Which sync connectors and run profile names does a Connect Health server report? - Can I list run profiles per connector for one sync server? instructions: - text: List connectors and run profile names for metric {metric} on server {member} in {service}. slots: metric: path.metricName member: path.serviceMemberId service: path.serviceName - text: Show connector metadata for server {member} of service {service}, metric {metric}. slots: metric: path.metricName member: path.serviceMemberId service: path.serviceName method: generated generated: '2026-09-26' - target: $.paths['/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProvider}/{resourceTypeName}/{resourceName}/metrics'].post update: x-apievangelist-phrasing: intent: Send custom metric values for a resource effect: write questions: - How do I push custom metric values to Azure Monitor for a resource? - Can I post my own metric data points with a timestamp? instructions: - text: Post metric data {data} at time {time} for resource {resource} of type {type} in {group}. slots: data: requestBody.data time: requestBody.time resource: path.resourceName type: path.resourceTypeName group: path.resourceGroupName - text: Emit custom metrics for {resource} under provider {provider}, type {type}, group {group}, subscription {subscription}. slots: subscription: path.subscriptionId resource: path.resourceName provider: path.resourceProvider type: path.resourceTypeName group: path.resourceGroupName method: generated generated: '2026-09-26' - target: $.paths['/subscriptions/{subscriptionId}/metrics:getBatch'].post update: x-apievangelist-phrasing: intent: Query metrics for many resources in one batch effect: read questions: - Can I fetch the same metrics for many resources in a single call? - How do I batch-query Azure Monitor metric values across a list of resource IDs? instructions: - text: Get metrics {metrics} in namespace {namespace} for resources {resources}. slots: metrics: query.metricnames namespace: query.metricnamespace resources: requestBody.resourceids - text: Batch-fetch {metrics} from {namespace} in subscription {subscription} between {start} and {end}. slots: subscription: path.subscriptionId metrics: query.metricnames namespace: query.metricnamespace start: query.starttime end: query.endtime method: generated generated: '2026-09-26' - target: $.paths['/subscriptions/{subscriptionId}/providers/Microsoft.Insights/metrics'].get update: x-apievangelist-phrasing: intent: List metric data for a subscription effect: read questions: - How do I get Azure Monitor metric data across my whole subscription? - Can I query subscription-level metrics for a timespan and interval using query parameters? instructions: - text: List subscription metrics {metrics} over {timespan}. slots: metrics: query.metricnames timespan: query.timespan - text: Get subscription-scope metric data at interval {interval} filtered by {filter}. slots: interval: query.interval filter: query.$filter method: generated generated: '2026-09-26' - target: $.paths['/subscriptions/{subscriptionId}/providers/Microsoft.Insights/metrics'].post update: x-apievangelist-phrasing: intent: Query subscription metrics with a request body effect: read questions: - Can I send subscription metric query options in a POST body instead of the URL? - Which subscription metrics query lets me set top, order by and roll-up in the body? instructions: - text: Query subscription metrics {metrics} in the request body with aggregation {aggregation}. slots: metrics: requestBody.metricNames aggregation: requestBody.aggregation - text: POST a subscription metrics query for the top {top} series ordered by {order}. slots: top: requestBody.top order: requestBody.orderBy method: generated generated: '2026-09-26' - target: $.paths['/{resourceUri}/providers/Microsoft.Insights/metrics'].get update: x-apievangelist-phrasing: intent: List metric values for a resource effect: read questions: - How do I read Azure Monitor metric values for a single resource over a timespan? - Can I pick metric names and a time grain when querying a resource's metrics? instructions: - text: List metrics {metrics} for resource {resourceUri} over {timespan} at interval {interval}. slots: metrics: query.metricnames resourceUri: path.resourceUri timespan: query.timespan interval: query.interval - text: Get resource metric values with result type {resultType}. slots: resultType: query.resultType method: generated generated: '2026-10-01' - target: $.paths['/{resourceUri}/providers/microsoft.insights/metrics'].get update: x-apievangelist-phrasing: intent: List resource metrics via the filter-only endpoint effect: read questions: - Is there an older resource metrics endpoint that only takes an OData filter? - Can I get resource metric values using just a $filter expression on the lowercase microsoft.insights path? instructions: - text: List metric values for resource {resourceUri} on the filter-only endpoint with {filter}. slots: resourceUri: path.resourceUri filter: query.$filter - text: Use the lowercase microsoft.insights metrics path to fetch values matching {filter}. slots: filter: query.$filter method: generated generated: '2026-10-01'