@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api VMwareCloudSimple
@base https://management.azure.com
@version 2019-04-01
@auth OAuth2
@common_fields {api-version: any # Client API version., subscriptionId: any # The subscription ID.}
@endpoints 34
@hint download_for_search
@toc providers(1), subscriptions(33)

@group providers
@endpoint GET /providers/Microsoft.VMwareCloudSimple/operations
@desc Implements list of available operations
@returns(200) successful operation

@endgroup

@group subscriptions
@endpoint GET /subscriptions/{subscriptionId}/providers/Microsoft.VMwareCloudSimple/dedicatedCloudNodes
@desc Implements list of dedicated cloud nodes within subscription method
@optional {$filter: any # The filter to apply on the list operation, $top: any # The maximum number of record sets to return, $skipToken: any # to be used by nextLink implementation}
@returns(200) successful operation

@endpoint GET /subscriptions/{subscriptionId}/providers/Microsoft.VMwareCloudSimple/dedicatedCloudServices
@desc Implements list of dedicatedCloudService objects within subscription method
@optional {$filter: any # The filter to apply on the list operation, $top: any # The maximum number of record sets to return, $skipToken: any # to be used by nextLink implementation}
@returns(200) successful operation

@endpoint GET /subscriptions/{subscriptionId}/providers/Microsoft.VMwareCloudSimple/locations/{regionId}/availabilities
@desc Implements SkuAvailability List method
@required {regionId: any # The region Id (westus, eastus)}
@optional {skuId: any # sku id, if no sku is passed availability for all skus will be returned}
@returns(200) successful operation

@endpoint GET /subscriptions/{subscriptionId}/providers/Microsoft.VMwareCloudSimple/locations/{regionId}/operationResults/{operationId}
@desc Implements get of async operation
@required {regionId: any # The region Id (westus, eastus), Referer: any # referer url, operationId: any # operation id}
@returns(200) Successful operation
@returns(202) Operation is still running
@returns(204) No Content

@endpoint GET /subscriptions/{subscriptionId}/providers/Microsoft.VMwareCloudSimple/locations/{regionId}/privateClouds
@desc Implements private cloud list GET method
@required {regionId: any # The region Id (westus, eastus)}
@returns(200) successful operation

@endpoint GET /subscriptions/{subscriptionId}/providers/Microsoft.VMwareCloudSimple/locations/{regionId}/privateClouds/{pcName}
@desc Implements private cloud GET method
@required {pcName: any # The private cloud name, regionId: any # The region Id (westus, eastus)}
@returns(200) successful operation

@endpoint GET /subscriptions/{subscriptionId}/providers/Microsoft.VMwareCloudSimple/locations/{regionId}/privateClouds/{pcName}/customizationPolicies
@desc Implements get of customization policies list
@required {regionId: any # The region Id (westus, eastus), pcName: any # The private cloud name}
@optional {$filter: any # The filter to apply on the list operation. only type is allowed here as a filter e.g. $filter=type eq 'xxxx'}
@returns(200) successful operation

@endpoint GET /subscriptions/{subscriptionId}/providers/Microsoft.VMwareCloudSimple/locations/{regionId}/privateClouds/{pcName}/customizationPolicies/{customizationPolicyName}
@desc Implements get of customization policy
@required {regionId: any # The region Id (westus, eastus), pcName: any # The private cloud name, customizationPolicyName: any # customization policy name}
@returns(200) successful operation

@endpoint GET /subscriptions/{subscriptionId}/providers/Microsoft.VMwareCloudSimple/locations/{regionId}/privateClouds/{pcName}/resourcePools
@desc Implements get of resource pools list
@required {regionId: any # The region Id (westus, eastus), pcName: any # The private cloud name}
@returns(200) successful operation

@endpoint GET /subscriptions/{subscriptionId}/providers/Microsoft.VMwareCloudSimple/locations/{regionId}/privateClouds/{pcName}/resourcePools/{resourcePoolName}
@desc Implements get of resource pool
@required {regionId: any # The region Id (westus, eastus), pcName: any # The private cloud name, resourcePoolName: any # resource pool id (vsphereId)}
@returns(200) successful operation

@endpoint GET /subscriptions/{subscriptionId}/providers/Microsoft.VMwareCloudSimple/locations/{regionId}/privateClouds/{pcName}/virtualMachineTemplates
@desc Implements list of available VM templates
@required {pcName: any # The private cloud name, regionId: any # The region Id (westus, eastus), resourcePoolName: any # Resource pool used to derive vSphere cluster which contains VM templates}
@returns(200) successful operation

@endpoint GET /subscriptions/{subscriptionId}/providers/Microsoft.VMwareCloudSimple/locations/{regionId}/privateClouds/{pcName}/virtualMachineTemplates/{virtualMachineTemplateName}
@desc Implements virtual machine template GET method
@required {regionId: any # The region Id (westus, eastus), pcName: any # The private cloud name, virtualMachineTemplateName: any # virtual machine template id (vsphereId)}
@returns(200) successful operation

@endpoint GET /subscriptions/{subscriptionId}/providers/Microsoft.VMwareCloudSimple/locations/{regionId}/privateClouds/{pcName}/virtualNetworks
@desc Implements list available virtual networks within a subscription method
@required {regionId: any # The region Id (westus, eastus), pcName: any # The private cloud name, resourcePoolName: any # Resource pool used to derive vSphere cluster which contains virtual networks}
@returns(200) successful operation

@endpoint GET /subscriptions/{subscriptionId}/providers/Microsoft.VMwareCloudSimple/locations/{regionId}/privateClouds/{pcName}/virtualNetworks/{virtualNetworkName}
@desc Implements virtual network GET method
@required {regionId: any # The region Id (westus, eastus), pcName: any # The private cloud name, virtualNetworkName: any # virtual network id (vsphereId)}
@returns(200) successful operation

@endpoint GET /subscriptions/{subscriptionId}/providers/Microsoft.VMwareCloudSimple/locations/{regionId}/usages
@desc Implements Usages List method
@required {regionId: any # The region Id (westus, eastus)}
@optional {$filter: any # The filter to apply on the list operation. only name.value is allowed here as a filter e.g. $filter=name.value eq 'xxxx'}
@returns(200) successful operation

@endpoint GET /subscriptions/{subscriptionId}/providers/Microsoft.VMwareCloudSimple/virtualMachines
@desc Implements list virtual machine within subscription method
@optional {$filter: any # The filter to apply on the list operation, $top: any # The maximum number of record sets to return, $skipToken: any # to be used by nextLink implementation}
@returns(200) successful operation

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VMwareCloudSimple/dedicatedCloudNodes
@desc Implements list of dedicated cloud nodes within RG method
@required {resourceGroupName: any # The name of the resource group}
@optional {$filter: any # The filter to apply on the list operation, $top: any # The maximum number of record sets to return, $skipToken: any # to be used by nextLink implementation}
@returns(200) successful operation

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VMwareCloudSimple/dedicatedCloudNodes/{dedicatedCloudNodeName}
@desc Implements dedicated cloud node GET method
@required {resourceGroupName: any # The name of the resource group, dedicatedCloudNodeName: any # dedicated cloud node name}
@returns(200) successful operation

@endpoint PUT /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VMwareCloudSimple/dedicatedCloudNodes/{dedicatedCloudNodeName}
@desc Implements dedicated cloud node PUT method
@required {resourceGroupName: any # The name of the resource group, Referer: any # referer url, dedicatedCloudNodeName: any # dedicated cloud node name, dedicatedCloudNodeRequest: any # Create Dedicated Cloud Node request}
@returns(200) If resource is created or updated successfully, 200 should be returned

@endpoint DELETE /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VMwareCloudSimple/dedicatedCloudNodes/{dedicatedCloudNodeName}
@desc Implements dedicated cloud node DELETE method
@required {resourceGroupName: any # The name of the resource group, dedicatedCloudNodeName: any # dedicated cloud node name}
@returns(204) no content. resource does not exist and the request is well formed

@endpoint PATCH /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VMwareCloudSimple/dedicatedCloudNodes/{dedicatedCloudNodeName}
@desc Implements dedicated cloud node PATCH method
@required {resourceGroupName: any # The name of the resource group, dedicatedCloudNodeName: any # dedicated cloud node name, dedicatedCloudNodeRequest: any # Patch Dedicated Cloud Node request}
@returns(200) If resource is created or updated successfully, 200 should be returned

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VMwareCloudSimple/dedicatedCloudServices
@desc Implements list of dedicatedCloudService objects within RG method
@required {resourceGroupName: any # The name of the resource group}
@optional {$filter: any # The filter to apply on the list operation, $top: any # The maximum number of record sets to return, $skipToken: any # to be used by nextLink implementation}
@returns(200) successful operation

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VMwareCloudSimple/dedicatedCloudServices/{dedicatedCloudServiceName}
@desc Implements dedicatedCloudService GET method
@required {resourceGroupName: any # The name of the resource group, dedicatedCloudServiceName: any # dedicated cloud Service name}
@returns(200) successful operation

@endpoint PUT /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VMwareCloudSimple/dedicatedCloudServices/{dedicatedCloudServiceName}
@desc Implements dedicated cloud service PUT method
@required {resourceGroupName: any # The name of the resource group, dedicatedCloudServiceName: any # dedicated cloud Service name, dedicatedCloudServiceRequest: any # Create Dedicated Cloud Service request}
@returns(200) If resource is created or updated successfully, 200 should be returned

@endpoint DELETE /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VMwareCloudSimple/dedicatedCloudServices/{dedicatedCloudServiceName}
@desc Implements dedicatedCloudService DELETE method
@required {resourceGroupName: any # The name of the resource group, dedicatedCloudServiceName: any # dedicated cloud service name}
@returns(204) no content. resource does not exist and the request is well formed

@endpoint PATCH /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VMwareCloudSimple/dedicatedCloudServices/{dedicatedCloudServiceName}
@desc Implements dedicatedCloudService PATCH method
@required {resourceGroupName: any # The name of the resource group, dedicatedCloudServiceName: any # dedicated cloud service name, dedicatedCloudServiceRequest: any # Patch Dedicated Cloud Service request}
@returns(200) If resource is created or updated successfully, 200 should be returned

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VMwareCloudSimple/virtualMachines
@desc Implements list virtual machine within RG method
@required {resourceGroupName: any # The name of the resource group}
@optional {$filter: any # The filter to apply on the list operation, $top: any # The maximum number of record sets to return, $skipToken: any # to be used by nextLink implementation}
@returns(200) successful operation

@endpoint GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VMwareCloudSimple/virtualMachines/{virtualMachineName}
@desc Implements virtual machine GET method
@required {resourceGroupName: any # The name of the resource group, virtualMachineName: any # virtual machine name}
@returns(200) successful operation

@endpoint PUT /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VMwareCloudSimple/virtualMachines/{virtualMachineName}
@desc Implements virtual machine PUT method
@required {resourceGroupName: any # The name of the resource group, Referer: any # referer url, virtualMachineName: any # virtual machine name, virtualMachineRequest: any # Create or Update Virtual Machine request}
@returns(200) If resource is created or updated successfully, 200 should be returned
@returns(201) If resource is created or updated successfully, 201 should be returned. provisionedState would of VirtualMachineProperties object would reflect the state of the resource

@endpoint DELETE /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VMwareCloudSimple/virtualMachines/{virtualMachineName}
@desc Implements virtual machine DELETE method
@required {resourceGroupName: any # The name of the resource group, Referer: any # referer url, virtualMachineName: any # virtual machine name}
@returns(202) accepted. the operation will complete asynchronously
@returns(204) no content. resource does not exist and the request is well formed

@endpoint PATCH /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VMwareCloudSimple/virtualMachines/{virtualMachineName}
@desc Implements virtual machine PATCH method
@required {resourceGroupName: any # The name of the resource group, virtualMachineName: any # virtual machine name, virtualMachineRequest: any # Patch virtual machine request}
@returns(200) If resource is created or updated successfully, 200 should be returned

@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VMwareCloudSimple/virtualMachines/{virtualMachineName}/start
@desc Implements a start method for a virtual machine
@required {resourceGroupName: any # The name of the resource group, Referer: any # referer url, virtualMachineName: any # virtual machine name}
@returns(200) OK
@returns(202) Accepted. the operation will complete asynchronously

@endpoint POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VMwareCloudSimple/virtualMachines/{virtualMachineName}/stop
@desc Implements shutdown, poweroff, and suspend method for a virtual machine
@required {resourceGroupName: any # The name of the resource group, Referer: any # referer url, virtualMachineName: any # virtual machine name}
@optional {m: any # body stop mode parameter (reboot, shutdown, etc...), mode: any # query stop mode parameter (reboot, shutdown, etc...)}
@returns(200) OK
@returns(202) Accepted. the operation will complete asynchronously

@endgroup

@end
