@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api HealthcareApisClient
@base https://management.azure.com
@version 2019-09-16
@auth OAuth2
@common_fields {api-version: any # Client Api Version.}
@endpoints 9
@toc subscriptions(8), providers(1)

@group subscriptions
@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HealthcareApis/services/{resourceName}
@desc Get the metadata of a service instance.
@required {subscriptionId: any # The subscription identifier., resourceGroupName: any # The name of the resource group that contains the service instance., resourceName: any # The name of the service instance.}
@returns(200) The body contains all of the properties of the service instance.

@endpoint PUT /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HealthcareApis/services/{resourceName}
@desc Create or update the metadata of a service instance.
@required {subscriptionId: any # The subscription identifier., resourceGroupName: any # The name of the resource group that contains the service instance., resourceName: any # The name of the service instance., serviceDescription: map # The service instance metadata.}
@returns(200) Updated - Put request accepted and an existing resource is being updated; the operation will complete asynchronously.
@returns(201) Created - Put request accepted and a new resource was created; the operation will complete asynchronously.

@endpoint PATCH /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HealthcareApis/services/{resourceName}
@desc Update the metadata of a service instance.
@required {subscriptionId: any # The subscription identifier., resourceGroupName: any # The name of the resource group that contains the service instance., resourceName: any # The name of the service instance., servicePatchDescription: map # The service instance metadata and security metadata.}
@returns(200) The tags for the resource were updated successfully.

@endpoint DELETE /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HealthcareApis/services/{resourceName}
@desc Delete a service instance.
@required {subscriptionId: any # The subscription identifier., resourceGroupName: any # The name of the resource group that contains the service instance., resourceName: any # The name of the service instance.}
@returns(202) Accepted - Delete request accepted; the operation will complete asynchronously.
@returns(204) The resource does not exist.

@endpoint GET /subscriptions/{subscriptionId}/providers/Microsoft.HealthcareApis/services
@desc Get all the service instances in a subscription.
@required {subscriptionId: any # The subscription identifier.}
@returns(200) This is a synchronous operation. The body contains a JSON-serialized array of the metadata from all the service instances in the subscription.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HealthcareApis/services
@desc Get all the service instances in a resource group.
@required {subscriptionId: any # The subscription identifier., resourceGroupName: any # The name of the resource group that contains the service instance.}
@returns(200) This is a synchronous operation. The body contains a JSON-serialized array of the metadata from all the service instances in the resource group.

@endgroup

@group providers
@endpoint GET /providers/Microsoft.HealthcareApis/operations
@desc Lists all of the available Healthcare service REST API operations.
@returns(200) OK. The request has succeeded.

@endgroup

@group subscriptions
@endpoint POST /subscriptions/{subscriptionId}/providers/Microsoft.HealthcareApis/checkNameAvailability
@desc Check if a service instance name is available.
@required {subscriptionId: any # The subscription identifier., checkNameAvailabilityInputs: map # Set the name parameter in the CheckNameAvailabilityParameters structure to the name of the service instance to check.}
@returns(200) This is a synchronous operation. The body contains a JSON-serialized response that specifies whether the service name is available. If the name is not available, the body contains the reason.

@endpoint GET /subscriptions/{subscriptionId}/providers/Microsoft.HealthcareApis/locations/{locationName}/operationresults/{operationResultId}
@desc Get the operation result for a long running operation.
@required {subscriptionId: any # The subscription identifier., locationName: any # The location of the operation., operationResultId: any # The ID of the operation result to get.}
@returns(200) The body contains all of the properties of the operation result.
@returns(202) Accepted - Get request accepted; the operation will complete asynchronously.
@errors {404: No operation result was found matching operationResultId.}

@endgroup

@end
