swagger: '2.0' info: version: 2020-08-01-preview title: Microsoft Azure AccessControlClient AccessConnector MigrationServices API schemes: - https tags: - name: MigrationServices paths: ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataMigration/migrationServices/{migrationServiceName} : get: tags: - MigrationServices description: Retrieve the Database Migration Service operationId: microsoftAzureMigrationservicesGet parameters: - $ref: '#/parameters/ResourceGroupParameter' - $ref: '#/parameters/MigrationServiceNameParameter' - $ref: '#/parameters/SubscriptionIdParameter' - $ref: '#/parameters/ApiVersionParameter' responses: '200': description: Successfully retrieved the Migration Service. schema: $ref: '#/definitions/MigrationService' default: schema: $ref: ../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse description: "*** Error Responses: ***\n\n * 400 InvalidParameterValue - An invalid value was provided for parameter '{0}'.\n\n * 400 EmptyRequiredRequestBody - The request body must not be empty.\n\n * 400 GenericUser - User Failure when calling other Resource Provider.\n\n * 400 OperationIdNotFound - Operation ID '{0}' not found.\n\n * 400 OperationTypeNotFound - Operation Type '{0}' not found.\n\n * 400 InvalidArgument - Invalid argument '{0}'.\n\n * 400 DeleteServiceNotAllowed - One or more migrations attached to the migration service '{0}' are currently running. To delete the migration service, please wait until all migrations have completed or cancel the migrations manually and retry deleting the service. Running migrations are: '{1}'\n\n * 400 ServiceNameInvalid - Service name '{0}' is not valid. Please refer https://aka.ms/dmsv2naming for naming rules.\n\n * 403 AccessDenied - Access denied.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotExist - Subscription id does not exist.\n\n * 404 ResourceDoesNotExist - Resource does not exist.\n\n * 405 SubscriptionNotReady - Subscription is not in Ready state.\n\n * 409 OperationInProgress - Operation in progress on resource already.\n\n * 409 OperationCanceled - Operation Cancelled.\n\n * 409 ResourceAlreadyExists - Resource already exists.\n\n * 409 SubscriptionOperationInProgress - An operation on subscription is already in progress\n\n * 500 UnExpectedErrorOccurred - Unexpected error occurred.\n\n * 500 OperationTimeout - Operation timed out.\n\n * 500 GenericSystem - System Failure when calling other Resource Provider.\n\n * 500 NoAdfInRegion - There is no ADF configured in region '{0}'." x-ms-examples: Get Migration Service.: $ref: ./examples/GetMigrationService.json summary: Microsoft Azure Get Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Datamigration Migrationservices Migrationservicename put: tags: - MigrationServices description: Create or Update Database Migration Service. operationId: microsoftAzureMigrationservicesCreateorupdate parameters: - $ref: '#/parameters/ResourceGroupParameter' - $ref: '#/parameters/MigrationServiceNameParameter' - name: parameters in: body description: Details of MigrationService resource. required: true schema: $ref: '#/definitions/MigrationService' - $ref: '#/parameters/SubscriptionIdParameter' - $ref: '#/parameters/ApiVersionParameter' responses: '200': description: Successfully updated the migration Service. schema: $ref: '#/definitions/MigrationService' '201': description: Successfully created the migration Service. schema: $ref: '#/definitions/MigrationService' default: schema: $ref: ../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse description: "*** Error Responses: ***\n\n * 400 InvalidParameterValue - An invalid value was provided for parameter '{0}'.\n\n * 400 EmptyRequiredRequestBody - The request body must not be empty.\n\n * 400 GenericUser - User Failure when calling other Resource Provider.\n\n * 400 OperationIdNotFound - Operation ID '{0}' not found.\n\n * 400 OperationTypeNotFound - Operation Type '{0}' not found.\n\n * 400 InvalidArgument - Invalid argument '{0}'.\n\n * 400 DeleteServiceNotAllowed - One or more migrations attached to the migration service '{0}' are currently running. To delete the migration service, please wait until all migrations have completed or cancel the migrations manually and retry deleting the service. Running migrations are: '{1}'\n\n * 400 ServiceNameInvalid - Service name '{0}' is not valid. Please refer https://aka.ms/dmsv2naming for naming rules.\n\n * 403 AccessDenied - Access denied.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotExist - Subscription id does not exist.\n\n * 404 ResourceDoesNotExist - Resource does not exist.\n\n * 405 SubscriptionNotReady - Subscription is not in Ready state.\n\n * 409 OperationInProgress - Operation in progress on resource already.\n\n * 409 OperationCanceled - Operation Cancelled.\n\n * 409 ResourceAlreadyExists - Resource already exists.\n\n * 409 SubscriptionOperationInProgress - An operation on subscription is already in progress\n\n * 500 UnExpectedErrorOccurred - Unexpected error occurred.\n\n * 500 OperationTimeout - Operation timed out.\n\n * 500 GenericSystem - System Failure when calling other Resource Provider.\n\n * 500 NoAdfInRegion - There is no ADF configured in region '{0}'." x-ms-long-running-operation: true x-ms-examples: Create or Update Migration Service with minimum parameters.: $ref: ./examples/CreateOrUpdateMigrationServiceMIN.json Create or Update Migration Service with maximum parameters.: $ref: ./examples/CreateOrUpdateMigrationServiceMAX.json summary: Microsoft Azure Put Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Datamigration Migrationservices Migrationservicename delete: tags: - MigrationServices description: Delete Database Migration Service. operationId: microsoftAzureMigrationservicesDelete parameters: - $ref: '#/parameters/ResourceGroupParameter' - $ref: '#/parameters/MigrationServiceNameParameter' - $ref: '#/parameters/SubscriptionIdParameter' - $ref: '#/parameters/ApiVersionParameter' responses: '202': description: Deleting the migration Service. headers: Location: type: string '204': description: The specified migration Service does not exist. default: schema: $ref: ../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse description: "*** Error Responses: ***\n\n * 400 InvalidParameterValue - An invalid value was provided for parameter '{0}'.\n\n * 400 EmptyRequiredRequestBody - The request body must not be empty.\n\n * 400 GenericUser - User Failure when calling other Resource Provider.\n\n * 400 OperationIdNotFound - Operation ID '{0}' not found.\n\n * 400 OperationTypeNotFound - Operation Type '{0}' not found.\n\n * 400 InvalidArgument - Invalid argument '{0}'.\n\n * 400 DeleteServiceNotAllowed - One or more migrations attached to the migration service '{0}' are currently running. To delete the migration service, please wait until all migrations have completed or cancel the migrations manually and retry deleting the service. Running migrations are: '{1}'\n\n * 400 ServiceNameInvalid - Service name '{0}' is not valid. Please refer https://aka.ms/dmsv2naming for naming rules.\n\n * 403 AccessDenied - Access denied.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotExist - Subscription id does not exist.\n\n * 404 ResourceDoesNotExist - Resource does not exist.\n\n * 405 SubscriptionNotReady - Subscription is not in Ready state.\n\n * 409 OperationInProgress - Operation in progress on resource already.\n\n * 409 OperationCanceled - Operation Cancelled.\n\n * 409 ResourceAlreadyExists - Resource already exists.\n\n * 409 SubscriptionOperationInProgress - An operation on subscription is already in progress\n\n * 500 UnExpectedErrorOccurred - Unexpected error occurred.\n\n * 500 OperationTimeout - Operation timed out.\n\n * 500 GenericSystem - System Failure when calling other Resource Provider.\n\n * 500 NoAdfInRegion - There is no ADF configured in region '{0}'." x-ms-long-running-operation: true x-ms-examples: Delete Migration Service.: $ref: ./examples/DeleteMigrationService.json summary: Microsoft Azure Delete Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Datamigration Migrationservices Migrationservicename patch: tags: - MigrationServices description: Update Database Migration Service. operationId: microsoftAzureMigrationservicesUpdate parameters: - $ref: '#/parameters/ResourceGroupParameter' - $ref: '#/parameters/MigrationServiceNameParameter' - name: parameters in: body description: Details of MigrationService resource. required: true schema: $ref: '#/definitions/MigrationServiceUpdate' - $ref: '#/parameters/SubscriptionIdParameter' - $ref: '#/parameters/ApiVersionParameter' responses: '200': description: Successfully updated the migration Service. schema: $ref: '#/definitions/MigrationService' '202': description: Updating the migration Service. headers: Location: type: string default: schema: $ref: ../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse description: "*** Error Responses: ***\n\n * 400 InvalidParameterValue - An invalid value was provided for parameter '{0}'.\n\n * 400 EmptyRequiredRequestBody - The request body must not be empty.\n\n * 400 GenericUser - User Failure when calling other Resource Provider.\n\n * 400 OperationIdNotFound - Operation ID '{0}' not found.\n\n * 400 OperationTypeNotFound - Operation Type '{0}' not found.\n\n * 400 InvalidArgument - Invalid argument '{0}'.\n\n * 400 DeleteServiceNotAllowed - One or more migrations attached to the migration service '{0}' are currently running. To delete the migration service, please wait until all migrations have completed or cancel the migrations manually and retry deleting the service. Running migrations are: '{1}'\n\n * 400 ServiceNameInvalid - Service name '{0}' is not valid. Please refer https://aka.ms/dmsv2naming for naming rules.\n\n * 403 AccessDenied - Access denied.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotExist - Subscription id does not exist.\n\n * 404 ResourceDoesNotExist - Resource does not exist.\n\n * 405 SubscriptionNotReady - Subscription is not in Ready state.\n\n * 409 OperationInProgress - Operation in progress on resource already.\n\n * 409 OperationCanceled - Operation Cancelled.\n\n * 409 ResourceAlreadyExists - Resource already exists.\n\n * 409 SubscriptionOperationInProgress - An operation on subscription is already in progress\n\n * 500 UnExpectedErrorOccurred - Unexpected error occurred.\n\n * 500 OperationTimeout - Operation timed out.\n\n * 500 GenericSystem - System Failure when calling other Resource Provider.\n\n * 500 NoAdfInRegion - There is no ADF configured in region '{0}'." x-ms-long-running-operation: true x-ms-examples: Update Migration Service.: $ref: ./examples/UpdateMigrationService.json summary: Microsoft Azure Patch Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Datamigration Migrationservices Migrationservicename /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataMigration/migrationServices: get: tags: - MigrationServices description: Retrieve all migration services in the resource group. operationId: microsoftAzureMigrationservicesListbyresourcegroup parameters: - $ref: '#/parameters/ResourceGroupParameter' - $ref: '#/parameters/SubscriptionIdParameter' - $ref: '#/parameters/ApiVersionParameter' responses: '200': description: Successfully retrieved the Migration Services in the resource group. schema: $ref: '#/definitions/MigrationServiceListResult' default: schema: $ref: ../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse description: "*** Error Responses: ***\n\n * 400 InvalidParameterValue - An invalid value was provided for parameter '{0}'.\n\n * 400 EmptyRequiredRequestBody - The request body must not be empty.\n\n * 400 GenericUser - User Failure when calling other Resource Provider.\n\n * 400 OperationIdNotFound - Operation ID '{0}' not found.\n\n * 400 OperationTypeNotFound - Operation Type '{0}' not found.\n\n * 400 InvalidArgument - Invalid argument '{0}'.\n\n * 400 DeleteServiceNotAllowed - One or more migrations attached to the migration service '{0}' are currently running. To delete the migration service, please wait until all migrations have completed or cancel the migrations manually and retry deleting the service. Running migrations are: '{1}'\n\n * 400 ServiceNameInvalid - Service name '{0}' is not valid. Please refer https://aka.ms/dmsv2naming for naming rules.\n\n * 403 AccessDenied - Access denied.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotExist - Subscription id does not exist.\n\n * 404 ResourceDoesNotExist - Resource does not exist.\n\n * 405 SubscriptionNotReady - Subscription is not in Ready state.\n\n * 409 OperationInProgress - Operation in progress on resource already.\n\n * 409 OperationCanceled - Operation Cancelled.\n\n * 409 ResourceAlreadyExists - Resource already exists.\n\n * 409 SubscriptionOperationInProgress - An operation on subscription is already in progress\n\n * 500 UnExpectedErrorOccurred - Unexpected error occurred.\n\n * 500 OperationTimeout - Operation timed out.\n\n * 500 GenericSystem - System Failure when calling other Resource Provider.\n\n * 500 NoAdfInRegion - There is no ADF configured in region '{0}'." x-ms-pageable: nextLinkName: nextLink x-ms-examples: Get Migration Services in the Resource Group.: $ref: ./examples/ListByResourceGroupMigrationService.json summary: Microsoft Azure Get Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Datamigration Migrationservices /subscriptions/{subscriptionId}/providers/Microsoft.DataMigration/migrationServices: get: tags: - MigrationServices description: Retrieve all migration services in the subscriptions. operationId: microsoftAzureMigrationservicesListbysubscription parameters: - $ref: '#/parameters/SubscriptionIdParameter' - $ref: '#/parameters/ApiVersionParameter' responses: '200': description: Successfully retrieved the Migration Services in the Subscription. schema: $ref: '#/definitions/MigrationServiceListResult' default: schema: $ref: ../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse description: "*** Error Responses: ***\n\n * 400 InvalidParameterValue - An invalid value was provided for parameter '{0}'.\n\n * 400 EmptyRequiredRequestBody - The request body must not be empty.\n\n * 400 GenericUser - User Failure when calling other Resource Provider.\n\n * 400 OperationIdNotFound - Operation ID '{0}' not found.\n\n * 400 OperationTypeNotFound - Operation Type '{0}' not found.\n\n * 400 InvalidArgument - Invalid argument '{0}'.\n\n * 400 DeleteServiceNotAllowed - One or more migrations attached to the migration service '{0}' are currently running. To delete the migration service, please wait until all migrations have completed or cancel the migrations manually and retry deleting the service. Running migrations are: '{1}'\n\n * 400 ServiceNameInvalid - Service name '{0}' is not valid. Please refer https://aka.ms/dmsv2naming for naming rules.\n\n * 403 AccessDenied - Access denied.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotExist - Subscription id does not exist.\n\n * 404 ResourceDoesNotExist - Resource does not exist.\n\n * 405 SubscriptionNotReady - Subscription is not in Ready state.\n\n * 409 OperationInProgress - Operation in progress on resource already.\n\n * 409 OperationCanceled - Operation Cancelled.\n\n * 409 ResourceAlreadyExists - Resource already exists.\n\n * 409 SubscriptionOperationInProgress - An operation on subscription is already in progress\n\n * 500 UnExpectedErrorOccurred - Unexpected error occurred.\n\n * 500 OperationTimeout - Operation timed out.\n\n * 500 GenericSystem - System Failure when calling other Resource Provider.\n\n * 500 NoAdfInRegion - There is no ADF configured in region '{0}'." x-ms-pageable: nextLinkName: nextLink x-ms-examples: Get Services in the Subscriptions.: $ref: ./examples/ListBySubscriptionMigrationService.json summary: Microsoft Azure Get Subscriptions Subscriptionid Providers Microsoft Datamigration Migrationservices ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataMigration/migrationServices/{migrationServiceName}/listMigrations : get: tags: - MigrationServices description: Retrieve the List of database migrations attached to the service. operationId: microsoftAzureMigrationservicesListmigrations parameters: - $ref: '#/parameters/ResourceGroupParameter' - $ref: '#/parameters/MigrationServiceNameParameter' - $ref: '#/parameters/SubscriptionIdParameter' - $ref: '#/parameters/ApiVersionParameter' responses: '200': description: OK schema: $ref: '#/definitions/DatabaseMigrationBaseListResult' default: schema: $ref: ../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse description: "*** Error Responses: ***\n\n * 400 InvalidParameterValue - An invalid value was provided for parameter '{0}'.\n\n * 400 EmptyRequiredRequestBody - The request body must not be empty.\n\n * 400 GenericUser - User Failure when calling other Resource Provider.\n\n * 400 OperationIdNotFound - Operation ID '{0}' not found.\n\n * 400 OperationTypeNotFound - Operation Type '{0}' not found.\n\n * 400 InvalidArgument - Invalid argument '{0}'.\n\n * 400 DeleteServiceNotAllowed - One or more migrations attached to the migration service '{0}' are currently running. To delete the migration service, please wait until all migrations have completed or cancel the migrations manually and retry deleting the service. Running migrations are: '{1}'\n\n * 400 ServiceNameInvalid - Service name '{0}' is not valid. Please refer https://aka.ms/dmsv2naming for naming rules.\n\n * 403 AccessDenied - Access denied.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 SubscriptionDoesNotExist - Subscription id does not exist.\n\n * 404 ResourceDoesNotExist - Resource does not exist.\n\n * 405 SubscriptionNotReady - Subscription is not in Ready state.\n\n * 405 MigrationServiceNotSupported - \n\n * 409 OperationInProgress - Operation in progress on resource already.\n\n * 409 OperationCanceled - Operation Cancelled.\n\n * 409 ResourceAlreadyExists - Resource already exists.\n\n * 409 SubscriptionOperationInProgress - An operation on subscription is already in progress\n\n * 500 UnExpectedErrorOccurred - Unexpected error occurred.\n\n * 500 OperationTimeout - Operation timed out.\n\n * 500 GenericSystem - System Failure when calling other Resource Provider.\n\n * 500 NoAdfInRegion - " x-ms-pageable: nextLinkName: nextLink x-ms-examples: List database migrations attached to the service.: $ref: ./examples/ListMigrationsByMigrationService.json summary: Microsoft Azure Get Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Datamigration Migrationservices Migrationservicename Listmigrations definitions: DatabaseMigrationBase: description: Database Migration Resource. type: object allOf: - $ref: ../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource properties: properties: $ref: '#/definitions/DatabaseMigrationBaseProperties' x-ms-client-flatten: false x-ms-azure-resource: true DatabaseMigrationBaseProperties: required: - kind description: Database Migration Base Resource properties. type: object properties: kind: enum: - SqlMi - SqlVm - SqlDb - MongoToCosmosDbMongo type: string x-ms-enum: name: ResourceType modelAsString: true scope: description: Resource Id of the target resource. type: string x-ms-mutability: - read - create provisioningState: enum: - Provisioning - Updating - Succeeded - Failed - Canceled type: string readOnly: true x-ms-enum: name: ProvisioningState modelAsString: true description: Provisioning State of migration. ProvisioningState as Succeeded implies that validations have been performed and migration has started. migrationStatus: description: Migration status. type: string readOnly: true startedOn: format: date-time description: Database migration start time. type: string readOnly: true endedOn: format: date-time description: Database migration end time. type: string readOnly: true migrationService: description: Resource Id of the Migration Service. type: string format: arm-id x-ms-arm-id-details: allowedResources: - type: Microsoft.DataMigration/migrationServices - type: Microsoft.DataMigration/sqlMigrationServices migrationOperationId: description: ID for current migration operation. type: string migrationFailureError: $ref: '#/definitions/ErrorInfo' description: Error details in case of migration failure. readOnly: true provisioningError: description: Error message for migration provisioning failure, if any. type: string discriminator: kind ErrorInfo: description: Error details type: object properties: code: description: Error code. type: string readOnly: true message: description: Error message. type: string readOnly: true MigrationServiceProperties: description: The Migration Service properties. type: object properties: provisioningState: enum: - Provisioning - Updating - Succeeded - Failed - Canceled type: string readOnly: true x-ms-enum: name: ProvisioningState modelAsString: true description: Provisioning state to track the async operation status. integrationRuntimeState: description: Current state of the Integration runtime. type: string readOnly: true DatabaseMigrationBaseListResult: description: A list of Database Migrations. type: object properties: value: type: array items: $ref: '#/definitions/DatabaseMigrationBase' readOnly: true nextLink: type: string readOnly: true MigrationService: description: A Migration Service. type: object allOf: - $ref: ../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource properties: properties: $ref: '#/definitions/MigrationServiceProperties' x-ms-client-flatten: true x-ms-azure-resource: true MigrationServiceUpdate: description: An update to a Migration Service. type: object properties: tags: type: object additionalProperties: type: string MigrationServiceListResult: description: A list of Migration Service. type: object properties: value: type: array items: $ref: '#/definitions/MigrationService' readOnly: true nextLink: type: string readOnly: true parameters: ApiVersionParameter: name: api-version in: query description: API version to use for the request. required: true type: string x-ms-parameter-location: client ResourceGroupParameter: name: resourceGroupName in: path description: Name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal. required: true type: string x-ms-parameter-location: method MigrationServiceNameParameter: name: migrationServiceName in: path description: Name of the Migration Service. required: true type: string pattern: ^[A-Za-z][A-Za-z0-9_-]*$ x-ms-parameter-location: method SubscriptionIdParameter: name: subscriptionId in: path description: Subscription ID that identifies an Azure subscription. required: true type: string x-ms-parameter-location: client x-ms-parameterized-host: hostTemplate: '{endpoint}' useSchemePrefix: false parameters: - $ref: '#/parameters/Endpoint'