@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api StorSimple8000SeriesManagementClient
@base https://management.azure.com
@version 2017-06-01
@auth OAuth2
@common_fields {api-version: any # The api version, subscriptionId: any # The subscription id, resourceGroupName: any # The resource group name, managerName: any # The manager name}
@endpoints 92
@hint download_for_search
@toc providers(1), subscriptions(91)

@group providers
@endpoint GET /providers/Microsoft.StorSimple/operations
@desc Lists all of the available REST API operations of the Microsoft.StorSimple provider
@returns(200) The collection of available provider operations.

@endgroup

@group subscriptions
@endpoint GET /subscriptions/{subscriptionId}/providers/Microsoft.StorSimple/managers
@desc Retrieves all the managers in a subscription.
@returns(200) The collection of StorSimple managers.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers
@desc Retrieves all the managers in a resource group.
@returns(200) The collection of StorSimple managers.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}
@desc Returns the properties of the specified manager name.
@returns(200) The StorSimple manager.

@endpoint PUT /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}
@desc Creates or updates the manager.
@required {parameters: map # The manager.}
@returns(200) The StorSimple manager has been successfully updated
@returns(201) The StorSimple manager has been successfully created

@endpoint DELETE /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}
@desc Deletes the manager.
@returns(200) The StorSimple manager has been successfully deleted
@returns(204) The StorSimple manager is already in a deleted state

@endpoint PATCH /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}
@desc Updates the StorSimple Manager.
@required {parameters: map # The manager update parameters.}
@returns(200) The StorSimple manager has been successfully updated

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/accessControlRecords
@desc Retrieves all the access control records in a manager.
@returns(200) The collection of access control records.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/accessControlRecords/{accessControlRecordName}
@desc Returns the properties of the specified access control record name.
@required {accessControlRecordName: any # Name of access control record to be fetched.}
@returns(200) The access control record.

@endpoint PUT /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/accessControlRecords/{accessControlRecordName}
@desc Creates or Updates an access control record.
@required {accessControlRecordName: any # The name of the access control record., parameters: map # The access control record to be added or updated.}
@returns(200) Successfully created or updated the access control record.
@returns(202) Accepted the request to create or update the access control record.

@endpoint DELETE /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/accessControlRecords/{accessControlRecordName}
@desc Deletes the access control record.
@required {accessControlRecordName: any # The name of the access control record to delete.}
@returns(202) Accepted the request to delete the access control record.
@returns(204) Successfully deleted the access control record.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/alerts
@desc Retrieves all the alerts in a manager.
@optional {$filter: any # OData Filter options}
@returns(200) The collection of alerts.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/bandwidthSettings
@desc Retrieves all the bandwidth setting in a manager.
@returns(200) The collection of bandwidth settings.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/bandwidthSettings/{bandwidthSettingName}
@desc Returns the properties of the specified bandwidth setting name.
@required {bandwidthSettingName: any # The name of bandwidth setting to be fetched.}
@returns(200) The bandwidth setting.

@endpoint PUT /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/bandwidthSettings/{bandwidthSettingName}
@desc Creates or updates the bandwidth setting
@required {bandwidthSettingName: any # The bandwidth setting name., parameters: map # The bandwidth setting to be added or updated.}
@returns(200) Successfully created or updated the bandwidth setting.
@returns(202) Accepted the request to create or update the bandwidth setting.

@endpoint DELETE /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/bandwidthSettings/{bandwidthSettingName}
@desc Deletes the bandwidth setting
@required {bandwidthSettingName: any # The name of the bandwidth setting.}
@returns(202) Accepted the request to delete the bandwidth setting.
@returns(204) Successfully deleted the bandwidth setting.

@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/clearAlerts
@desc Clear the alerts.
@required {parameters: map # The clear alert request.}
@returns(204) Successfully cleared the alerts.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/cloudApplianceConfigurations
@desc Lists supported cloud appliance models and supported configurations.
@returns(200) The collection of cloud appliance configuration.

@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/configureDevice
@desc Complete minimal setup before using the device.
@required {parameters: map # The minimal properties to configure a device.}
@returns(202) Accepted the request to configure device.
@returns(204) Successfully configured the device.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices
@desc Returns the list of devices for the specified manager.
@optional {$expand: any # Specify $expand=details to populate additional fields related to the device or $expand=rolloverdetails to populate additional fields related to the service data encryption key rollover on device}
@returns(200) The collection of devices.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}
@desc Returns the properties of the specified device.
@required {deviceName: any # The device name}
@optional {$expand: any # Specify $expand=details to populate additional fields related to the device or $expand=rolloverdetails to populate additional fields related to the service data encryption key rollover on device}
@returns(200) The device.

@endpoint DELETE /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}
@desc Deletes the device.
@required {deviceName: any # The device name}
@returns(202) Accepted the request to delete the device.
@returns(204) Successfully deleted the device.

@endpoint PATCH /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}
@desc Patches the device.
@required {deviceName: any # The device name, parameters: map # Patch representation of the device.}
@returns(200) Successfully patched the device.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/alertSettings/default
@desc Gets the alert settings of the specified device.
@required {deviceName: any # The device name}
@returns(200) The Alert settings.

@endpoint PUT /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/alertSettings/default
@desc Creates or updates the alert settings of the specified device.
@required {deviceName: any # The device name, parameters: map # The alert settings to be added or updated.}
@returns(200) Successfully created or updated the alert settings.
@returns(202) Accepted the request to create or update the alert settings.

@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/authorizeForServiceEncryptionKeyRollover
@desc Authorizes the specified device for service data encryption key rollover.
@required {deviceName: any # The device name}
@returns(204) Successfully authorized the device for service encryption key rollover

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/backupPolicies
@desc Gets all the backup policies in a device.
@required {deviceName: any # The device name}
@returns(200) The collection of backup policies.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/backupPolicies/{backupPolicyName}
@desc Gets the properties of the specified backup policy name.
@required {deviceName: any # The device name, backupPolicyName: any # The name of backup policy to be fetched.}
@returns(200) The backup policy.

@endpoint PUT /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/backupPolicies/{backupPolicyName}
@desc Creates or updates the backup policy.
@required {deviceName: any # The device name, backupPolicyName: any # The name of the backup policy to be created/updated., parameters: map # The backup policy.}
@returns(200) Successfully created or updated the backup policy.
@returns(202) Accepted the request to create or update the backup policy.

@endpoint DELETE /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/backupPolicies/{backupPolicyName}
@desc Deletes the backup policy.
@required {deviceName: any # The device name, backupPolicyName: any # The name of the backup policy.}
@returns(202) Accepted the request to delete the backup policy.
@returns(204) Successfully deleted the backup policy.

@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/backupPolicies/{backupPolicyName}/backup
@desc Backup the backup policy now.
@required {deviceName: any # The device name, backupPolicyName: any # The backup policy name., backupType: any # The backup Type. This can be cloudSnapshot or localSnapshot.}
@returns(202) Accepted the request to backup the backup policy.
@returns(204) Successfully completed backup of the backup policy.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/backupPolicies/{backupPolicyName}/schedules
@desc Gets all the backup schedules in a backup policy.
@required {deviceName: any # The device name, backupPolicyName: any # The backup policy name.}
@returns(200) The collection of backup schedules.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/backupPolicies/{backupPolicyName}/schedules/{backupScheduleName}
@desc Gets the properties of the specified backup schedule name.
@required {deviceName: any # The device name, backupPolicyName: any # The backup policy name., backupScheduleName: any # The name of the backup schedule to be fetched}
@returns(200) The backup schedule.

@endpoint PUT /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/backupPolicies/{backupPolicyName}/schedules/{backupScheduleName}
@desc Creates or updates the backup schedule.
@required {deviceName: any # The device name, backupPolicyName: any # The backup policy name., backupScheduleName: any # The backup schedule name., parameters: map # The backup schedule.}
@returns(200) Successfully created or updated the backup schedule.
@returns(202) Accepted the request to create or update the backup schedule.

@endpoint DELETE /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/backupPolicies/{backupPolicyName}/schedules/{backupScheduleName}
@desc Deletes the backup schedule.
@required {deviceName: any # The device name, backupPolicyName: any # The backup policy name., backupScheduleName: any # The name the backup schedule.}
@returns(202) Accepted the request to delete the backup schedule.
@returns(204) Successfully deleted the backup schedule.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/backups
@desc Retrieves all the backups in a device.
@required {deviceName: any # The device name}
@optional {$filter: any # OData Filter options}
@returns(200) The collection of backups.

@endpoint DELETE /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/backups/{backupName}
@desc Deletes the backup.
@required {deviceName: any # The device name, backupName: any # The backup name.}
@returns(202) Accepted the request to delete the backup.
@returns(204) Successfully deleted the backup.

@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/backups/{backupName}/elements/{backupElementName}/clone
@desc Clones the backup element as a new volume.
@required {deviceName: any # The device name, backupName: any # The backup name., backupElementName: any # The backup element name., parameters: map # The clone request object.}
@returns(200) Successfully cloned the backup.
@returns(202) Accepted the request to clone.

@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/backups/{backupName}/restore
@desc Restores the backup on the device.
@required {deviceName: any # The device name, backupName: any # The backupSet name}
@returns(200) Successfully restored the backup.
@returns(202) Accepted the request to restore.

@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/deactivate
@desc Deactivates the device.
@required {deviceName: any # The device name}
@returns(202) Accepted the request to deactivate the device.
@returns(204) Successfully deactivated the device.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/hardwareComponentGroups
@desc Lists the hardware component groups at device-level.
@required {deviceName: any # The device name}
@returns(200) Successfully fetched hardware component groups.

@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/hardwareComponentGroups/{hardwareComponentGroupName}/changeControllerPowerState
@desc Changes the power state of the controller.
@required {deviceName: any # The device name, hardwareComponentGroupName: any # The hardware component group name., parameters: map # The controller power state change request.}
@returns(202) Accepted the request to change power state of the controller.
@returns(204) Successfully changed the power state of the controller.

@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/installUpdates
@desc Downloads and installs the updates on the device.
@required {deviceName: any # The device name}
@returns(202) Accepted the request to download and install updates.
@returns(204) Successfully installed updates.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/jobs
@desc Gets all the jobs for specified device. With optional OData query parameters, a filtered set of jobs is returned.
@required {deviceName: any # The device name}
@optional {$filter: any # OData Filter options}
@returns(200) The collection of jobs for the specified manager and device name.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/jobs/{jobName}
@desc Gets the details of the specified job name.
@required {deviceName: any # The device name, jobName: any # The job Name.}
@returns(200) The job.

@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/jobs/{jobName}/cancel
@desc Cancels a job on the device.
@required {deviceName: any # The device name, jobName: any # The jobName.}
@returns(202) Accepted the request to cancel a deviceJob
@returns(204) Successfully cancelled the deviceJob

@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/listFailoverSets
@desc Returns all failover sets for a given device and their eligibility for participating in a failover. A failover set refers to a set of volume containers that need to be failed-over as a single unit to maintain data integrity.
@required {deviceName: any # The device name}
@returns(200) Returns the list of failover sets on the given device.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/metrics
@desc Gets the metrics for the specified device.
@required {deviceName: any # The device name, $filter: any # OData Filter options}
@returns(200) The collection of metrics.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/metricsDefinitions
@desc Gets the metric definitions for the specified device.
@required {deviceName: any # The device name}
@returns(200) The collection of metric definitions.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/networkSettings/default
@desc Gets the network settings of the specified device.
@required {deviceName: any # The device name}
@returns(200) The Network settings.

@endpoint PATCH /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/networkSettings/default
@desc Updates the network settings on the specified device.
@required {deviceName: any # The device name, parameters: map # The network settings to be updated.}
@returns(200) The Network settings.
@returns(202) Accepted the request to update network settings.

@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/publicEncryptionKey
@desc Returns the public encryption key of the device.
@required {deviceName: any # The device name}
@returns(200) The public key.

@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/scanForUpdates
@desc Scans for updates on the device.
@required {deviceName: any # The device name}
@returns(202) Accepted the request to scan for updates.
@returns(204) Successfully scanned for updates.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/securitySettings/default
@desc Returns the Security properties of the specified device name.
@required {deviceName: any # The device name}
@returns(200) Device Security settings.

@endpoint PATCH /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/securitySettings/default
@desc Patch Security properties of the specified device name.
@required {deviceName: any # The device name, parameters: map # The security settings properties to be patched.}
@returns(200) The device Security settings.
@returns(202) Accepted the request to update device security settings.

@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/securitySettings/default/syncRemoteManagementCertificate
@desc sync Remote management Certificate between appliance and Service
@required {deviceName: any # The device name}
@returns(202) Accepted the request to sync Remote Management certificate settings.
@returns(204) Successfully synced Remote Management certificate settings.

@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/sendTestAlertEmail
@desc Sends a test alert email.
@required {deviceName: any # The device name, parameters: map # The send test alert email request.}
@returns(204) Successfully sent the test email.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/timeSettings/default
@desc Gets the time settings of the specified device.
@required {deviceName: any # The device name}
@returns(200) The time settings.

@endpoint PUT /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/timeSettings/default
@desc Creates or updates the time settings of the specified device.
@required {deviceName: any # The device name, parameters: map # The time settings to be added or updated.}
@returns(200) Successfully created or updated the time settings.
@returns(202) Accepted the request to create or update the time settings.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/updateSummary/default
@desc Returns the update summary of the specified device name.
@required {deviceName: any # The device name}
@returns(200) The update summary.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/volumeContainers
@desc Gets all the volume containers in a device.
@required {deviceName: any # The device name}
@returns(200) The VolumeContainer List

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/volumeContainers/{volumeContainerName}
@desc Gets the properties of the specified volume container name.
@required {deviceName: any # The device name, volumeContainerName: any # The name of the volume container.}
@returns(200) The VolumeContainer.

@endpoint PUT /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/volumeContainers/{volumeContainerName}
@desc Creates or updates the volume container.
@required {deviceName: any # The device name, volumeContainerName: any # The name of the volume container., parameters: map # The volume container to be added or updated.}
@returns(200) Successfully created or updated the Volume Container.
@returns(202) Accepted the request to create or update the Volume Container

@endpoint DELETE /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/volumeContainers/{volumeContainerName}
@desc Deletes the volume container.
@required {deviceName: any # The device name, volumeContainerName: any # The name of the volume container.}
@returns(202) Accepted the request to delete the Volume Container.
@returns(204) Successfully deleted Volume Container.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/volumeContainers/{volumeContainerName}/metrics
@desc Gets the metrics for the specified volume container.
@required {deviceName: any # The device name, volumeContainerName: any # The volume container name., $filter: any # OData Filter options}
@returns(200) The collection of metrics.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/volumeContainers/{volumeContainerName}/metricsDefinitions
@desc Gets the metric definitions for the specified volume container.
@required {deviceName: any # The device name, volumeContainerName: any # The volume container name.}
@returns(200) The collection of metric definitions.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/volumeContainers/{volumeContainerName}/volumes
@desc Retrieves all the volumes in a volume container.
@required {deviceName: any # The device name, volumeContainerName: any # The volume container name.}
@returns(200) The collection of volumes.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/volumeContainers/{volumeContainerName}/volumes/{volumeName}
@desc Returns the properties of the specified volume name.
@required {deviceName: any # The device name, volumeContainerName: any # The volume container name., volumeName: any # The volume name.}
@returns(200) The volume.

@endpoint PUT /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/volumeContainers/{volumeContainerName}/volumes/{volumeName}
@desc Creates or updates the volume.
@required {deviceName: any # The device name, volumeContainerName: any # The volume container name., volumeName: any # The volume name., parameters: map # Volume to be created or updated.}
@returns(200) Successfully created or updated the volume.
@returns(202) Accepted the request to create or update the volume.

@endpoint DELETE /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/volumeContainers/{volumeContainerName}/volumes/{volumeName}
@desc Deletes the volume.
@required {deviceName: any # The device name, volumeContainerName: any # The volume container name., volumeName: any # The volume name.}
@returns(202) Accepted the request to create or update the volume.
@returns(204) Successfully deleted the volume.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/volumeContainers/{volumeContainerName}/volumes/{volumeName}/metrics
@desc Gets the metrics for the specified volume.
@required {deviceName: any # The device name, volumeContainerName: any # The volume container name., volumeName: any # The volume name., $filter: any # OData Filter options}
@returns(200) The collection of metrics

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/volumeContainers/{volumeContainerName}/volumes/{volumeName}/metricsDefinitions
@desc Gets the metric definitions for the specified volume.
@required {deviceName: any # The device name, volumeContainerName: any # The volume container name., volumeName: any # The volume name.}
@returns(200) The collection of metric definitions.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{deviceName}/volumes
@desc Retrieves all the volumes in a device.
@required {deviceName: any # The device name}
@returns(200) The collection of volumes.

@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{sourceDeviceName}/failover
@desc Failovers a set of volume containers from a specified source device to a target device.
@required {sourceDeviceName: any # The source device name on which failover is performed., parameters: map # FailoverRequest containing the source device and the list of volume containers to be failed over.}
@returns(202) Accepted the request to failover the device.
@returns(204) Successfully completed failover of the device.

@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/devices/{sourceDeviceName}/listFailoverTargets
@desc Given a list of volume containers to be failed over from a source device, this method returns the eligibility result, as a failover target, for all devices under that resource.
@required {sourceDeviceName: any # The source device name on which failover is performed., parameters: map # ListFailoverTargetsRequest containing the list of volume containers to be failed over.}
@returns(200) The list of target devices and their eligibility for failover.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/encryptionSettings/default
@desc Returns the encryption settings of the manager.
@returns(200) The encryption settings.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/extendedInformation/vaultExtendedInfo
@desc Returns the extended information of the specified manager name.
@returns(200) The manager extended information.

@endpoint PUT /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/extendedInformation/vaultExtendedInfo
@desc Creates the extended info of the manager.
@required {parameters: map # The manager extended information.}
@returns(200) The extended information on the manager has been successfully created

@endpoint DELETE /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/extendedInformation/vaultExtendedInfo
@desc Deletes the extended info of the manager.
@returns(204) The extended information on the manager has been successfully deleted

@endpoint PATCH /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/extendedInformation/vaultExtendedInfo
@desc Updates the extended info of the manager.
@required {parameters: map # The manager extended information., If-Match: any # Pass the ETag of ExtendedInfo fetched from GET call}
@returns(200) The extended information on the manager has been successfully created

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/features
@desc Lists the features and their support status
@optional {$filter: any # OData Filter options}
@returns(200) The collection of features.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/jobs
@desc Gets all the jobs for the specified manager. With optional OData query parameters, a filtered set of jobs is returned.
@optional {$filter: any # OData Filter options}
@returns(200) The collection of device jobs on all devices under the specified manager.

@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/listActivationKey
@desc Returns the activation key of the manager.
@returns(200) The activation key.

@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/listPublicEncryptionKey
@desc Returns the symmetric encrypted public encryption key of the manager.
@returns(200) The encryption key.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/metrics
@desc Gets the metrics for the specified manager.
@required {$filter: any # OData Filter options}
@returns(200) The collection of metrics.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/metricsDefinitions
@desc Gets the metric definitions for the specified manager.
@returns(200) The collection of metric definitions.

@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/provisionCloudAppliance
@desc Provisions cloud appliance.
@required {parameters: map # The cloud appliance}
@returns(200) Successfully created job for provision cloud appliance.
@returns(202) Accepted the request to provision cloud appliance.

@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/regenerateActivationKey
@desc Re-generates and returns the activation key of the manager.
@returns(200) The regenerated activation key.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/storageAccountCredentials
@desc Gets all the storage account credentials in a manager.
@returns(200) The collection of storage account credentials.

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/storageAccountCredentials/{storageAccountCredentialName}
@desc Gets the properties of the specified storage account credential name.
@required {storageAccountCredentialName: any # The name of storage account credential to be fetched.}
@returns(200) The storage account credential.

@endpoint PUT /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/storageAccountCredentials/{storageAccountCredentialName}
@desc Creates or updates the storage account credential.
@required {storageAccountCredentialName: any # The storage account credential name., parameters: map # The storage account credential to be added or updated.}
@returns(200) Successfully created or updated the storage account credential.
@returns(202) Accepted the request to create or update the storage account credential.

@endpoint DELETE /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorSimple/managers/{managerName}/storageAccountCredentials/{storageAccountCredentialName}
@desc Deletes the storage account credential.
@required {storageAccountCredentialName: any # The name of the storage account credential.}
@returns(202) Accepted the request to delete the storage account credential.
@returns(204) Successfully deleted the storage account credential.

@endgroup

@end
