@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api Workload Monitor API
@base https://management.azure.com
@version 2018-08-31-preview
@auth OAuth2
@common_fields {api-version: any # The API version to use for this operation.}
@endpoints 13
@toc subscriptions(12), providers(1)

@group subscriptions
@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.WorkloadMonitor/monitors
@desc Get list of a monitors of a resource.
@required {resourceNamespace: any # The Namespace of the resource., resourceType: any # The type of the resource., resourceName: any # Name of the resource.}
@optional {$filter: any # Filter to be applied on the operation., $skiptoken: any # The page-continuation token to use with a paged version of this API.}
@returns(200) OK. At least one monitor is found.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.WorkloadMonitor/monitors/{monitorId}
@desc Get details of a single monitor.
@required {resourceNamespace: any # The Namespace of the resource., resourceType: any # The type of the resource., resourceName: any # Name of the resource., monitorId: any # Monitor Id.}
@returns(200) OK. monitor is found.

@endpoint PATCH /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.WorkloadMonitor/monitors/{monitorId}
@desc Update a Monitor's configuration.
@required {resourceNamespace: any # The Namespace of the resource., resourceType: any # The type of the resource., resourceName: any # Name of the resource., monitorId: any # Monitor Id., body: map # Body of the Monitor PATCH object.}
@returns(200) OK. Existing monitor is updated.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.WorkloadMonitor/components
@desc Get list of components for a resource.
@required {resourceNamespace: any # The Namespace of the resource., resourceType: any # The type of the resource., resourceName: any # Name of the resource.}
@optional {$select: any # Properties to be returned in the response., $filter: any # Filter to be applied on the operation., $apply: any # Apply aggregation., $orderby: any # Sort the result on one or more properties., $expand: any # Include properties inline in the response., $top: any # Limit the result to the specified number of rows., $skiptoken: any # The page-continuation token to use with a paged version of this API.}
@returns(200) OK. At least one component found.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.WorkloadMonitor/components/{componentId}
@desc Get details of a component.
@required {resourceNamespace: any # The Namespace of the resource., resourceType: any # The type of the resource., resourceName: any # Name of the resource., componentId: any # Component Id.}
@optional {$select: any # Properties to be returned in the response., $expand: any # Include properties inline in the response.}
@returns(200) OK. component is found.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.WorkloadMonitor/monitorInstances
@desc Get list of monitor instances for a resource.
@required {resourceNamespace: any # The Namespace of the resource., resourceType: any # The type of the resource., resourceName: any # Name of the resource.}
@optional {$select: any # Properties to be returned in the response., $filter: any # Filter to be applied on the operation., $apply: any # Apply aggregation., $orderby: any # Sort the result on one or more properties., $expand: any # Include properties inline in the response., $top: any # Limit the result to the specified number of rows., $skiptoken: any # The page-continuation token to use with a paged version of this API.}
@returns(200) OK.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.WorkloadMonitor/monitorInstances/{monitorInstanceId}
@desc Get details of a monitorInstance.
@required {resourceNamespace: any # The Namespace of the resource., resourceType: any # The type of the resource., resourceName: any # Name of the resource., monitorInstanceId: any # MonitorInstance Id.}
@optional {$select: any # Properties to be returned in the response., $expand: any # Include properties inline in the response.}
@returns(200) OK. monitorInstance is found.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.WorkloadMonitor/notificationSettings
@desc Get list of notification settings for a resource.
@required {resourceNamespace: any # The Namespace of the resource., resourceType: any # The type of the resource., resourceName: any # Name of the resource.}
@optional {$skiptoken: any # The page-continuation token to use with a paged version of this API.}
@returns(200) OK. At least one component found.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.WorkloadMonitor/notificationSettings/{notificationSettingName}
@desc Get a of notification setting for a resource.
@required {resourceNamespace: any # The Namespace of the resource., resourceType: any # The type of the resource., resourceName: any # Name of the resource., notificationSettingName: any # Default string modeled as parameter for URL to work correctly.}
@returns(200) OK. At least one component found.

@endpoint PUT /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.WorkloadMonitor/notificationSettings/{notificationSettingName}
@desc Update notification settings for a resource.
@required {resourceNamespace: any # The Namespace of the resource., resourceType: any # The type of the resource., resourceName: any # Name of the resource., notificationSettingName: any # Default string modeled as parameter for URL to work correctly., body: map # Body of the NotificationSetting PUT object.}
@returns(200) OK. At least one component found.

@endpoint GET /subscriptions/{subscriptionId}/providers/Microsoft.WorkloadMonitor/componentsSummary
@desc Get subscription wide details of components.
@optional {$select: any # Properties to be returned in the response., $filter: any # Filter to be applied on the operation., $apply: any # Apply aggregation., $orderby: any # Sort the result on one or more properties., $expand: any # Include properties inline in the response., $top: any # Limit the result to the specified number of rows., $skiptoken: any # The page-continuation token to use with a paged version of this API.}
@returns(200) OK. At least one component found.

@endpoint GET /subscriptions/{subscriptionId}/providers/Microsoft.WorkloadMonitor/monitorInstancesSummary
@desc Get subscription wide health instances.
@optional {$select: any # Properties to be returned in the response., $filter: any # Filter to be applied on the operation., $apply: any # Apply aggregation., $orderby: any # Sort the result on one or more properties., $expand: any # Include properties inline in the response., $top: any # Limit the result to the specified number of rows., $skiptoken: any # The page-continuation token to use with a paged version of this API.}
@returns(200) OK.

@endgroup

@group providers
@endpoint GET /providers/Microsoft.WorkloadMonitor/operations
@desc Gets the details of all operations possible on the resource provider.
@optional {$skiptoken: any # The page-continuation token to use with a paged version of this API.}
@returns(200) OK.

@endgroup

@end
