@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api SignalRManagementClient
@base https://management.azure.com
@version 2018-10-01
@auth OAuth2
@common_fields {api-version: any # Client Api Version.}
@endpoints 12
@toc providers(1), subscriptions(11)

@group providers
@endpoint GET /providers/Microsoft.SignalRService/operations
@desc Lists all of the available REST API operations of the Microsoft.SignalRService provider.
@returns(200) Success. The response describes the list of operations.

@endgroup

@group subscriptions
@endpoint POST /subscriptions/{subscriptionId}/providers/Microsoft.SignalRService/locations/{location}/checkNameAvailability
@desc Checks that the SignalR name is valid and is not already in use.
@required {location: any # the region, subscriptionId: any # Gets subscription Id which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.}
@optional {parameters: map # Parameters supplied to the operation.}
@returns(200) Success. The response describes the name availability.

@endpoint GET /subscriptions/{subscriptionId}/providers/Microsoft.SignalRService/SignalR
@desc Handles requests to list all resources in a subscription.
@required {subscriptionId: any # Gets subscription Id which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.}
@returns(200) Success. The response describes the list of SignalR services in the subscription.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SignalRService/SignalR
@desc Handles requests to list all resources in a resource group.
@required {subscriptionId: any # Gets subscription Id which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call., resourceGroupName: any # The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.}
@returns(200) Success. The response describes the list of SignalR services in a resourceGroup.

@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SignalRService/SignalR/{resourceName}/listKeys
@desc Get the access keys of the SignalR resource.
@required {subscriptionId: any # Gets subscription Id which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call., resourceGroupName: any # The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal., resourceName: any # The name of the SignalR resource.}
@returns(200) Success. The response describes SignalR service access keys.

@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SignalRService/SignalR/{resourceName}/regenerateKey
@desc Regenerate SignalR service access key. PrimaryKey and SecondaryKey cannot be regenerated at the same time.
@required {subscriptionId: any # Gets subscription Id which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call., resourceGroupName: any # The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal., resourceName: any # The name of the SignalR resource.}
@optional {parameters: map # Parameter that describes the Regenerate Key Operation.}
@returns(201) Created and an async operation is executing in background to make the new key to take effect. The response contains new keys and a Location header to query the async operation result.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SignalRService/signalR/{resourceName}
@desc Get the SignalR service and its properties.
@required {subscriptionId: any # Gets subscription Id which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call., resourceGroupName: any # The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal., resourceName: any # The name of the SignalR resource.}
@returns(200) Success. The response describes the corresponding SignalR service.

@endpoint PUT /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SignalRService/signalR/{resourceName}
@desc Create a new SignalR service and update an exiting SignalR service.
@required {subscriptionId: any # Gets subscription Id which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call., resourceGroupName: any # The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal., resourceName: any # The name of the SignalR resource.}
@optional {parameters: map # Parameters for the create or update operation}
@returns(200) Success. The response describes a SignalR service.
@returns(201) Created. The response describes the new service and contains a Location header to query the operation result.
@returns(202) Accepted. The response indicates the exiting SignalR service is now updating and contains a Location header to query the operation result..

@endpoint DELETE /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SignalRService/signalR/{resourceName}
@desc Operation to delete a SignalR service.
@required {subscriptionId: any # Gets subscription Id which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call., resourceGroupName: any # The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal., resourceName: any # The name of the SignalR resource.}
@returns(202) Accepted. The response indicates the delete operation is performed in the background.
@returns(204) Success. The response indicates the resource is already deleted.

@endpoint PATCH /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SignalRService/signalR/{resourceName}
@desc Operation to update an exiting SignalR service.
@required {subscriptionId: any # Gets subscription Id which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call., resourceGroupName: any # The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal., resourceName: any # The name of the SignalR resource.}
@optional {parameters: map # Parameters for the update operation}
@returns(200) Success. The response describes a SignalR service.
@returns(202) Accepted. The response indicates the exiting SignalR service is now updating  and contains a Location header to query the operation result..

@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SignalRService/signalR/{resourceName}/restart
@desc Operation to restart a SignalR service.
@required {subscriptionId: any # Gets subscription Id which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call., resourceGroupName: any # The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal., resourceName: any # The name of the SignalR resource.}
@returns(202) Accepted. The response indicates the restart operation is performed in the background.
@returns(204) Success. The response indicates the operation is successful and no content will be returned.

@endpoint GET /subscriptions/{subscriptionId}/providers/Microsoft.SignalRService/locations/{location}/usages
@desc List usage quotas for Azure SignalR service by location.
@required {location: any # the location like "eastus", subscriptionId: any # Gets subscription Id which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.}
@returns(200) Success. The response describe the usage quotas of a subscription in specified region.

@endgroup

@end
