@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api NetworkManagementClient
@base https://management.azure.com
@version 2019-06-01
@auth OAuth2
@common_fields {resourceGroupName: any # The name of the resource group containing Network Watcher., networkWatcherName: any # The name of the Network Watcher resource.}
@endpoints 8
@toc subscriptions(8)

@endpoint PUT /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}
@desc Create or update a connection monitor.
@required {connectionMonitorName: any # The name of the connection monitor., parameters: any # Parameters that define the operation to create a connection monitor.}
@returns(200) Update successful. The operation returns the resulting network watcher resource.
@returns(201) Create successful. The operation returns the resulting network watcher resource.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}
@desc Gets a connection monitor by name.
@required {connectionMonitorName: any # The name of the connection monitor.}
@returns(200) Request successful. The operation returns a connection monitor.

@endpoint DELETE /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}
@desc Deletes the specified connection monitor.
@required {connectionMonitorName: any # The name of the connection monitor.}
@returns(202) Accepted. The operation will complete asynchronously.
@returns(204) Delete successful.

@endpoint PATCH /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}
@desc Update tags of the specified connection monitor.
@required {connectionMonitorName: any # The name of the connection monitor., parameters: any # Parameters supplied to update connection monitor tags.}
@returns(200) Request successful. The operation returns updated connection monitor.

@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/stop
@desc Stops the specified connection monitor.
@required {connectionMonitorName: any # The name of the connection monitor.}
@returns(200) Request successful. The operation stops the connection monitor.
@returns(202) Accepted. The operation will complete asynchronously.

@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/start
@desc Starts the specified connection monitor.
@required {connectionMonitorName: any # The name of the connection monitor.}
@returns(200) Request successful. The operation starts the connection monitor.
@returns(202) Accepted. The operation will complete asynchronously.

@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/query
@desc Query a snapshot of the most recent connection states.
@required {connectionMonitorName: any # The name given to the connection monitor.}
@returns(200) Successful query of connection states.
@returns(202) Accepted query of connection states.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors
@desc Lists all connection monitors for the specified Network Watcher.
@returns(200) Successful connection monitor enumeration request.

@end
