@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api StorageImportExport
@base https://management.azure.com
@version 2016-11-01
@auth OAuth2
@common_fields {api-version: any # Specifies the API version to use for this request., Accept-Language: any # Specifies the preferred language for the response.}
@endpoints 10
@toc providers(3), subscriptions(7)

@group providers
@endpoint GET /providers/Microsoft.ImportExport/locations
@desc Returns a list of locations to which you can ship the disks associated with an import or export job. A location is a Microsoft data center region.
@returns(200) OK

@endpoint GET /providers/Microsoft.ImportExport/locations/{locationName}
@desc Returns the details about a location to which you can ship the disks associated with an import or export job. A location is an Azure region.
@required {locationName: any # The name of the location. For example, West US or westus.}
@returns(200) OK

@endgroup

@group subscriptions
@endpoint GET /subscriptions/{subscriptionId}/providers/Microsoft.ImportExport/jobs
@desc Returns all active and completed jobs in a subscription.
@required {subscriptionId: any # The subscription ID for the Azure user.}
@optional {$top: any # An integer value that specifies how many jobs at most should be returned. The value cannot exceed 100., $filter: any # Can be used to restrict the results to certain conditions.}
@returns(200) OK

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ImportExport/jobs
@desc Returns all active and completed jobs in a resource group.
@required {subscriptionId: any # The subscription ID for the Azure user., resourceGroupName: any # The resource group name uniquely identifies the resource group within the user subscription.}
@optional {$top: any # An integer value that specifies how many jobs at most should be returned. The value cannot exceed 100., $filter: any # Can be used to restrict the results to certain conditions.}
@returns(200) OK

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ImportExport/jobs/{jobName}
@desc Gets information about an existing job.
@required {jobName: any # The name of the import/export job., subscriptionId: any # The subscription ID for the Azure user., resourceGroupName: any # The resource group name uniquely identifies the resource group within the user subscription.}
@returns(200) OK

@endpoint PATCH /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ImportExport/jobs/{jobName}
@desc Updates specific properties of a job. You can call this operation to notify the Import/Export service that the hard drives comprising the import or export job have been shipped to the Microsoft data center. It can also be used to cancel an existing job.
@required {jobName: any # The name of the import/export job., subscriptionId: any # The subscription ID for the Azure user., resourceGroupName: any # The resource group name uniquely identifies the resource group within the user subscription., body: any # The parameters to update in the job}
@returns(200) OK

@endpoint PUT /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ImportExport/jobs/{jobName}
@desc Creates a new job or updates an existing job in the specified subscription.
@required {jobName: any # The name of the import/export job., subscriptionId: any # The subscription ID for the Azure user., resourceGroupName: any # The resource group name uniquely identifies the resource group within the user subscription., body: any # The parameters used for creating the job}
@optional {x-ms-client-tenant-id: any # The tenant ID of the client making the request.}
@returns(200) OK
@returns(201) Created

@endpoint DELETE /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ImportExport/jobs/{jobName}
@desc Deletes an existing job. Only jobs in the Creating or Completed states can be deleted.
@required {jobName: any # The name of the import/export job., subscriptionId: any # The subscription ID for the Azure user., resourceGroupName: any # The resource group name uniquely identifies the resource group within the user subscription.}
@returns(200) OK

@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ImportExport/jobs/{jobName}/listBitLockerKeys
@desc Returns the BitLocker Keys for all drives in the specified job.
@required {jobName: any # The name of the import/export job., subscriptionId: any # The subscription ID for the Azure user., resourceGroupName: any # The resource group name uniquely identifies the resource group within the user subscription.}
@returns(200) OK

@endgroup

@group providers
@endpoint GET /providers/Microsoft.ImportExport/operations
@desc Returns the list of operations supported by the import/export resource provider.
@returns(200) OK

@endgroup

@end
