@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api StorageManagementClient
@base https://management.azure.com
@version 2019-06-01
@auth OAuth2
@endpoints 9
@toc subscriptions(9)

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices
@desc List all file services in storage accounts
@returns(200) OK -- List file services operation completed successfully.

@endpoint PUT /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/{FileServicesName}
@desc Sets the properties of file services in storage accounts, including CORS (Cross-Origin Resource Sharing) rules.
@required {FileServicesName: any # The name of the file Service within the specified storage account. File Service Name must be "default", parameters: any # The properties of file services in storage accounts, including CORS (Cross-Origin Resource Sharing) rules.}
@returns(200) OK -- Sets The properties of a storage account’s File service successfully.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/{FileServicesName}
@desc Gets the properties of file services in storage accounts, including CORS (Cross-Origin Resource Sharing) rules.
@required {FileServicesName: any # The name of the file Service within the specified storage account. File Service Name must be "default"}
@returns(200) OK -- returned the properties of a storage account’s File service.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/default/shares
@desc Lists all shares.
@optional {$maxpagesize: any # Optional. Specified maximum number of shares that can be included in the list., $filter: any # Optional. When specified, only share names starting with the filter will be listed., $expand: any # Optional, used to expand the properties within share's properties.}
@returns(200) OK -- List Shares operation completed successfully.

@endpoint PUT /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/default/shares/{shareName}
@desc Creates a new share under the specified account as described by request body. The share resource includes metadata and properties for that share. It does not include a list of the files contained by the share.
@required {shareName: any # The name of the file share within the specified storage account. File share names must be between 3 and 63 characters in length and use numbers, lower-case letters and dash (-) only. Every dash (-) character must be immediately preceded and followed by a letter or number., fileShare: any # Properties of the file share to create.}
@returns(200) OK -- The Share is already created.
@returns(201) Created -- Create Share operation completed successfully.

@endpoint PATCH /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/default/shares/{shareName}
@desc Updates share properties as specified in request body. Properties not mentioned in the request will not be changed. Update fails if the specified share does not already exist.
@required {shareName: any # The name of the file share within the specified storage account. File share names must be between 3 and 63 characters in length and use numbers, lower-case letters and dash (-) only. Every dash (-) character must be immediately preceded and followed by a letter or number., fileShare: any # Properties to update for the file share.}
@returns(200) OK -- Update Share operation completed successfully.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/default/shares/{shareName}
@desc Gets properties of a specified share.
@required {shareName: any # The name of the file share within the specified storage account. File share names must be between 3 and 63 characters in length and use numbers, lower-case letters and dash (-) only. Every dash (-) character must be immediately preceded and followed by a letter or number.}
@optional {$expand: any # Optional, used to expand the properties within share's properties.}
@returns(200) OK -- Get Share operation completed successfully.

@endpoint DELETE /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/default/shares/{shareName}
@desc Deletes specified share under its account.
@required {shareName: any # The name of the file share within the specified storage account. File share names must be between 3 and 63 characters in length and use numbers, lower-case letters and dash (-) only. Every dash (-) character must be immediately preceded and followed by a letter or number.}
@returns(200) OK -- Delete Share operation completed successfully.
@returns(204) No Content -- The Share not exist.

@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/default/shares/{shareName}/restore
@desc Restore a file share within a valid retention days if share soft delete is enabled
@required {shareName: any # The name of the file share within the specified storage account. File share names must be between 3 and 63 characters in length and use numbers, lower-case letters and dash (-) only. Every dash (-) character must be immediately preceded and followed by a letter or number., deletedShare: any}
@returns(200) OK -- The Share is successfully restored.

@end
