swagger: "2.0"
schemes:
  - https
host: management.azure.com
info:
  description: The Data Migration Service helps people migrate their data from on-premise database servers to Azure, or from older database software to newer software. The service manages one or more workers that are joined to a customer's virtual network, which is assumed to provide connectivity to their databases. To avoid frequent updates to the resource provider, data migration tasks are implemented by the resource provider in a generic way as task resources, each of which has a task type (which identifies the type of work to run), input, and output. The client is responsible for providing appropriate task type and inputs, which will be passed through unexamined to the machines that implement the functionality, and for understanding the output, which is passed back unexamined to the client.
  title: Azure Data Migration Service Resource Provider
  version: 2017-11-15-preview
  x-apisguru-categories:
    - cloud
  x-logo:
    url: https://api.apis.guru/v2/cache/logo/https_assets.onestore.ms_cdnfiles_onestorerolling-1606-01000_shell_v3_images_logo_microsoft.png
  x-ms-code-generation-settings:
    name: DataMigrationServiceClient
  x-origin:
    - format: swagger
      url: https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2017-11-15-preview/datamigration.json
      version: "2.0"
  x-preferred: false
  x-providerName: azure.com
  x-serviceName: datamigration
  x-tags:
    - Azure
    - Microsoft
consumes:
  - application/json
produces:
  - application/json
securityDefinitions:
  azure_auth:
    authorizationUrl: https://login.microsoftonline.com/common/oauth2/authorize
    description: Azure Active Directory OAuth2 Flow
    flow: implicit
    scopes:
      user_impersonation: impersonate your user account
    type: oauth2
security:
  - azure_auth:
      - user_impersonation
parameters:
  apiVersion:
    description: Version of the API
    in: query
    name: api-version
    required: true
    type: string
  deleteRunningTasks:
    description: Delete the resource even if it contains running tasks
    in: query
    name: deleteRunningTasks
    required: false
    type: boolean
    x-ms-parameter-location: method
  groupName:
    description: Name of the resource group
    in: path
    name: groupName
    required: true
    type: string
    x-ms-parameter-location: method
  location:
    description: The Azure region of the operation
    in: path
    name: location
    required: true
    type: string
    x-ms-parameter-location: method
  project:
    description: Information about the project
    in: body
    name: parameters
    required: true
    schema:
      allOf:
        - allOf:
            - description: ARM resource.
              properties:
                id:
                  description: Resource ID.
                  readOnly: true
                  type: string
                name:
                  description: Resource name.
                  readOnly: true
                  type: string
                type:
                  description: Resource type.
                  readOnly: true
                  type: string
              x-ms-azure-resource: true
          description: ARM tracked top level resource.
          properties:
            location:
              description: Resource location.
              type: string
              x-ms-mutability:
                - read
                - create
            tags:
              additionalProperties:
                type: string
              description: Resource tags.
              type: object
              x-ms-mutability:
                - read
                - create
                - update
          required:
            - location
      description: A project resource
      properties:
        properties:
          description: Project-specific properties
          properties:
            creationTime:
              description: UTC Date and time when project was created
              format: date-time
              readOnly: true
              type: string
            databasesInfo:
              description: List of DatabaseInfo
              items:
                description: Project Database Details
                properties:
                  sourceDatabaseName:
                    description: Name of the database
                    type: string
                required:
                  - sourceDatabaseName
                type: object
              type: array
            provisioningState:
              description: The project's provisioning state
              enum:
                - Deleting
                - Succeeded
              readOnly: true
              type: string
              x-ms-enum:
                modelAsString: false
                name: ProjectProvisioningState
            sourceConnectionInfo:
              description: Defines the connection properties of a server
              discriminator: type
              properties:
                password:
                  description: Password credential.
                  type: string
                type:
                  description: Type of connection info
                  type: string
                userName:
                  description: User name
                  type: string
              required:
                - type
              type: object
              x-ms-discriminator-value: Unknown
            sourcePlatform:
              description: Source platform of the project
              enum:
                - SQL
                - Unknown
              type: string
              x-ms-enum:
                modelAsString: false
                name: ProjectSourcePlatform
            targetConnectionInfo:
              description: Defines the connection properties of a server
              discriminator: type
              properties:
                password:
                  description: Password credential.
                  type: string
                type:
                  description: Type of connection info
                  type: string
                userName:
                  description: User name
                  type: string
              required:
                - type
              type: object
              x-ms-discriminator-value: Unknown
            targetPlatform:
              description: Target platform of the project
              enum:
                - SQLDB
                - Unknown
              type: string
              x-ms-enum:
                modelAsString: false
                name: ProjectTargetPlatform
          required:
            - sourcePlatform
            - targetPlatform
          type: object
      type: object
    x-ms-parameter-location: method
  projectName:
    description: Name of the project
    in: path
    name: projectName
    required: true
    type: string
    x-ms-parameter-location: method
  projectTask:
    description: Information about the task
    in: body
    name: parameters
    required: true
    schema:
      allOf:
        - description: ARM resource.
          properties:
            id:
              description: Resource ID.
              readOnly: true
              type: string
            name:
              description: Resource name.
              readOnly: true
              type: string
            type:
              description: Resource type.
              readOnly: true
              type: string
          x-ms-azure-resource: true
      description: A task resource
      properties:
        etag:
          description: HTTP strong entity tag value. This is ignored if submitted.
          type: string
        properties:
          description: Base class for all types of DMS task properties. If task is not supported by current client, this object is returned.
          discriminator: taskType
          properties:
            errors:
              description: Array of errors. This is ignored if submitted.
              items:
                description: Error information in OData format.
                properties:
                  code:
                    description: The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError'
                    type: string
                  details:
                    description: Inner errors that caused this error
                    items:
                      $ref: "#/definitions/ODataError"
                    type: array
                  message:
                    description: The human-readable description of the error
                    type: string
                type: object
              readOnly: true
              type: array
            state:
              description: The state of the task. This is ignored if submitted.
              enum:
                - Unknown
                - Queued
                - Running
                - Canceled
                - Succeeded
                - Failed
                - FailedInputValidation
                - Faulted
              readOnly: true
              type: string
              x-ms-enum:
                modelAsString: false
                name: TaskState
            taskType:
              description: Task type.
              type: string
          required:
            - taskType
          type: object
          x-ms-discriminator-value: Unknown
      type: object
    x-ms-parameter-location: method
  requestedName:
    description: Requested name to validate
    in: body
    name: parameters
    required: true
    schema:
      description: A resource type and proposed name
      properties:
        name:
          description: The proposed resource name
          type: string
        type:
          description: The resource type chain (e.g. virtualMachines/extensions)
          type: string
      type: object
    x-ms-parameter-location: method
  service:
    description: Information about the service
    in: body
    name: parameters
    required: true
    schema:
      allOf:
        - allOf:
            - description: ARM resource.
              properties:
                id:
                  description: Resource ID.
                  readOnly: true
                  type: string
                name:
                  description: Resource name.
                  readOnly: true
                  type: string
                type:
                  description: Resource type.
                  readOnly: true
                  type: string
              x-ms-azure-resource: true
          description: ARM tracked top level resource.
          properties:
            location:
              description: Resource location.
              type: string
              x-ms-mutability:
                - read
                - create
            tags:
              additionalProperties:
                type: string
              description: Resource tags.
              type: object
              x-ms-mutability:
                - read
                - create
                - update
          required:
            - location
      description: A Data Migration Service resource
      properties:
        etag:
          description: HTTP strong entity tag value. Ignored if submitted
          type: string
        kind:
          description: The resource kind. Only 'vm' (the default) is supported.
          type: string
        properties:
          description: Properties of the Data Migration service instance
          properties:
            provisioningState:
              description: The resource's provisioning state
              enum:
                - Accepted
                - Deleting
                - Deploying
                - Stopped
                - Stopping
                - Starting
                - FailedToStart
                - FailedToStop
                - Succeeded
                - Failed
              readOnly: true
              type: string
              x-ms-enum:
                modelAsString: false
                name: ServiceProvisioningState
            publicKey:
              description: The public key of the service, used to encrypt secrets sent to the service
              type: string
            virtualSubnetId:
              description: The ID of the Microsoft.Network/virtualNetworks/subnets resource to which the service should be joined
              type: string
          required:
            - virtualSubnetId
          type: object
        sku:
          description: An Azure SKU instance
          properties:
            capacity:
              description: The capacity of the SKU, if it supports scaling
              type: integer
            family:
              description: The SKU family, used when the service has multiple performance classes within a tier, such as 'A', 'D', etc. for virtual machines
              type: string
            name:
              description: The unique name of the SKU, such as 'P3'
              type: string
            size:
              description: The size of the SKU, used when the name alone does not denote a service size or when a SKU has multiple performance classes within a family, e.g. 'A1' for virtual machines
              type: string
            tier:
              description: The tier of the SKU, such as 'Free', 'Basic', 'Standard', or 'Premium'
              type: string
          type: object
      type: object
    x-ms-parameter-location: method
  serviceName:
    description: Name of the service
    in: path
    name: serviceName
    required: true
    type: string
    x-ms-parameter-location: method
  subscriptionId:
    description: Identifier of the subscription
    in: path
    name: subscriptionId
    required: true
    type: string
  taskName:
    description: Name of the Task
    in: path
    name: taskName
    required: true
    type: string
    x-ms-parameter-location: method
  taskType:
    description: Filter tasks by task type
    in: query
    name: taskType
    required: false
    type: string
    x-ms-parameter-location: method
  timeoutMs:
    description: The number of milliseconds the task is allowed to run, up to 20000
    format: int32
    in: query
    name: timeoutMs
    required: false
    type: integer
    x-ms-parameter-location: method
paths:
  /providers/Microsoft.DataMigration/operations:
    get:
      description: Lists all available actions exposed by the Data Migration Service resource provider.
      operationId: Operations_List
      parameters:
        - $ref: "#/parameters/apiVersion"
      responses:
        "200":
          description: Got action list
          schema:
            description: OData page of action (operation) objects
            properties:
              nextLink:
                description: URL to load the next page of actions
                type: string
              value:
                description: List of actions
                items:
                  description: Description of an action supported by the Data Migration Service
                  properties:
                    display:
                      description: Localized display text
                      properties:
                        description:
                          description: The localized operation description
                          type: string
                        operation:
                          description: The localized operation name
                          type: string
                        provider:
                          description: The localized resource provider name
                          type: string
                        resource:
                          description: The localized resource type name
                          type: string
                      type: object
                    name:
                      description: The fully qualified action name, e.g. Microsoft.DataMigration/services/read
                      type: string
                  type: object
                type: array
            type: object
        default:
          description: Error
          schema:
            description: Error information.
            properties:
              error:
                description: Error information in OData format.
                properties:
                  code:
                    description: The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError'
                    type: string
                  details:
                    description: Inner errors that caused this error
                    items:
                      $ref: "#/definitions/ODataError"
                    type: array
                  message:
                    description: The human-readable description of the error
                    type: string
                type: object
            type: object
      summary: Get available resource provider actions (operations)
      tags:
        - Standard operation
        - GET
      x-ms-examples:
        Operations_List:
          parameters:
            api-version: 2017-11-15-preview
          responses:
            "200":
              body:
                value:
                  - display:
                      description: Read information about services.
                      operation: Read
                      provider: Data Migration Service
                      resource: Data Migration Service
                    name: Microsoft.DataMigration/services/read
      x-ms-pageable:
        nextLinkName: nextLink
  "/subscriptions/{subscriptionId}/providers/Microsoft.DataMigration/locations/{location}/checkNameAvailability":
    post:
      description: This method checks whether a proposed top-level resource name is valid and available.
      operationId: Services_CheckNameAvailability
      parameters:
        - $ref: "#/parameters/subscriptionId"
        - $ref: "#/parameters/apiVersion"
        - $ref: "#/parameters/location"
        - $ref: "#/parameters/requestedName"
      responses:
        "200":
          description: Name checked
          schema:
            description: Indicates whether a proposed resource name is available
            properties:
              message:
                description: The localized reason why the name is not available, if nameAvailable is false
                type: string
              nameAvailable:
                description: If true, the name is valid and available. If false, 'reason' describes why not.
                type: boolean
              reason:
                description: The reason why the name is not available, if nameAvailable is false
                enum:
                  - AlreadyExists
                  - Invalid
                type: string
                x-ms-enum:
                  modelAsString: false
                  name: NameCheckFailureReason
            type: object
        default:
          description: Error
          schema:
            description: Error information.
            properties:
              error:
                description: Error information in OData format.
                properties:
                  code:
                    description: The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError'
                    type: string
                  details:
                    description: Inner errors that caused this error
                    items:
                      $ref: "#/definitions/ODataError"
                    type: array
                  message:
                    description: The human-readable description of the error
                    type: string
                type: object
            type: object
      summary: Check name validity and availability
      tags:
        - Standard operation
        - POST
      x-ms-examples:
        Services_CheckNameAvailability:
          parameters:
            api-version: 2017-11-15-preview
            location: eastus
            parameters:
              requestedName:
                name: DmsSdkService
                type: services
            subscriptionId: fc04246f-04c5-437e-ac5e-206a19e7193f
          responses:
            "200":
              body:
                nameAvailable: true
  "/subscriptions/{subscriptionId}/providers/Microsoft.DataMigration/locations/{location}/usages":
    get:
      description: This method returns region-specific quotas and resource usage information for the Data Migration Service.
      operationId: Usages_List
      parameters:
        - $ref: "#/parameters/subscriptionId"
        - $ref: "#/parameters/location"
        - $ref: "#/parameters/apiVersion"
      responses:
        "200":
          description: Quotas returned
          schema:
            description: OData page of quota objects
            properties:
              nextLink:
                description: URL to load the next page of quotas, or null or missing if this is the last page
                type: string
              value:
                description: List of quotas
                items:
                  description: Describes a quota for or usage details about a resource
                  properties:
                    currentValue:
                      description: The current value of the quota. If null or missing, the current value cannot be determined in the context of the request.
                      format: double
                      type: number
                    id:
                      description: The resource ID of the quota object
                      type: string
                    limit:
                      description: The maximum value of the quota. If null or missing, the quota has no maximum, in which case it merely tracks usage.
                      format: double
                      type: number
                    name:
                      description: The name of the quota
                      properties:
                        localizedValue:
                          description: The localized name of the quota
                          type: string
                        value:
                          description: The unlocalized name (or ID) of the quota
                          type: string
                      type: object
                    unit:
                      description: The unit for the quota, such as Count, Bytes, BytesPerSecond, etc.
                      type: string
                  type: object
                type: array
            type: object
        default:
          description: Error
          schema:
            description: Error information.
            properties:
              error:
                description: Error information in OData format.
                properties:
                  code:
                    description: The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError'
                    type: string
                  details:
                    description: Inner errors that caused this error
                    items:
                      $ref: "#/definitions/ODataError"
                    type: array
                  message:
                    description: The human-readable description of the error
                    type: string
                type: object
            type: object
      summary: Get resource quotas and usage information
      tags:
        - Standard operation
        - GET
      x-ms-examples:
        Services_Usages:
          parameters:
            api-version: 2017-11-15-preview
            location: westus
            subscriptionId: 90fb80a6-0f71-4761-8f03-921e7396f3c0
          responses:
            "200":
              body:
                value:
                  - currentValue: 1
                    id: /subscriptions/90fb80a6-0f71-4761-8f03-921e7396f3c0/providers/Microsoft.DataMigration/locations/westus/usages/Services
                    limit: 2
                    name:
                      localizedValue: DMS service instances per region
                      value: Services
                    unit: Count
      x-ms-pageable:
        nextLinkName: nextLink
  "/subscriptions/{subscriptionId}/providers/Microsoft.DataMigration/services":
    get:
      description: The services resource is the top-level resource that represents the Data Migration Service. This method returns a list of service resources in a subscription.
      operationId: Services_List
      parameters:
        - $ref: "#/parameters/subscriptionId"
        - $ref: "#/parameters/apiVersion"
      responses:
        "200":
          description: Got services
          schema:
            description: OData page of service objects
            properties:
              nextLink:
                description: URL to load the next page of services
                type: string
              value:
                description: List of services
                items:
                  allOf:
                    - allOf:
                        - description: ARM resource.
                          properties:
                            id:
                              description: Resource ID.
                              readOnly: true
                              type: string
                            name:
                              description: Resource name.
                              readOnly: true
                              type: string
                            type:
                              description: Resource type.
                              readOnly: true
                              type: string
                          x-ms-azure-resource: true
                      description: ARM tracked top level resource.
                      properties:
                        location:
                          description: Resource location.
                          type: string
                          x-ms-mutability:
                            - read
                            - create
                        tags:
                          additionalProperties:
                            type: string
                          description: Resource tags.
                          type: object
                          x-ms-mutability:
                            - read
                            - create
                            - update
                      required:
                        - location
                  description: A Data Migration Service resource
                  properties:
                    etag:
                      description: HTTP strong entity tag value. Ignored if submitted
                      type: string
                    kind:
                      description: The resource kind. Only 'vm' (the default) is supported.
                      type: string
                    properties:
                      description: Properties of the Data Migration service instance
                      properties:
                        provisioningState:
                          description: The resource's provisioning state
                          enum:
                            - Accepted
                            - Deleting
                            - Deploying
                            - Stopped
                            - Stopping
                            - Starting
                            - FailedToStart
                            - FailedToStop
                            - Succeeded
                            - Failed
                          readOnly: true
                          type: string
                          x-ms-enum:
                            modelAsString: false
                            name: ServiceProvisioningState
                        publicKey:
                          description: The public key of the service, used to encrypt secrets sent to the service
                          type: string
                        virtualSubnetId:
                          description: The ID of the Microsoft.Network/virtualNetworks/subnets resource to which the service should be joined
                          type: string
                      required:
                        - virtualSubnetId
                      type: object
                    sku:
                      description: An Azure SKU instance
                      properties:
                        capacity:
                          description: The capacity of the SKU, if it supports scaling
                          type: integer
                        family:
                          description: The SKU family, used when the service has multiple performance classes within a tier, such as 'A', 'D', etc. for virtual machines
                          type: string
                        name:
                          description: The unique name of the SKU, such as 'P3'
                          type: string
                        size:
                          description: The size of the SKU, used when the name alone does not denote a service size or when a SKU has multiple performance classes within a family, e.g. 'A1' for virtual machines
                          type: string
                        tier:
                          description: The tier of the SKU, such as 'Free', 'Basic', 'Standard', or 'Premium'
                          type: string
                      type: object
                  type: object
                type: array
            type: object
        default:
          description: Error
          schema:
            description: Error information.
            properties:
              error:
                description: Error information in OData format.
                properties:
                  code:
                    description: The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError'
                    type: string
                  details:
                    description: Inner errors that caused this error
                    items:
                      $ref: "#/definitions/ODataError"
                    type: array
                  message:
                    description: The human-readable description of the error
                    type: string
                type: object
            type: object
      summary: Get services in subscription
      tags:
        - Service resource
        - Standard operation
        - GET
      x-ms-examples:
        Services_List:
          parameters:
            api-version: 2017-11-15-preview
            subscriptionId: fc04246f-04c5-437e-ac5e-206a19e7193f
          responses:
            "200":
              body:
                value:
                  - id: /subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg1/providers/Microsoft.DataMigration/services/DmsSdkService1
                    location: southcentralus
                    name: DmsSdkService1
                    sku:
                      name: GeneralPurpose_4vCores
                      size: 4 vCores
                      tier: General Purpose
                    type: Microsoft.DataMigration/services
                  - id: /subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg2/providers/Microsoft.DataMigration/services/DmsSdkService2
                    location: centralus
                    name: DmsSdkService2
                    sku:
                      name: Basic_2vCores
                      size: 2 vCores
                      tier: Basic
                    type: Microsoft.DataMigration/services
      x-ms-pageable:
        nextLinkName: nextLink
  "/subscriptions/{subscriptionId}/providers/Microsoft.DataMigration/skus":
    get:
      description: The skus action returns the list of SKUs that DMS supports.
      operationId: ResourceSkus_ListSkus
      parameters:
        - $ref: "#/parameters/subscriptionId"
        - $ref: "#/parameters/apiVersion"
      responses:
        "200":
          description: Got SKUs
          schema:
            description: The DMS List SKUs operation response.
            properties:
              nextLink:
                description: The uri to fetch the next page of DMS SKUs. Call ListNext() with this to fetch the next page of DMS SKUs.
                type: string
              value:
                description: The list of SKUs available for the subscription.
                items:
                  description: Describes an available DMS SKU.
                  properties:
                    apiVersions:
                      description: The api versions that support this SKU.
                      items:
                        type: string
                      readOnly: true
                      type: array
                    capabilities:
                      description: A name value pair to describe the capability.
                      items:
                        description: Describes The SKU capabilites object.
                        properties:
                          name:
                            description: An invariant to describe the feature.
                            readOnly: true
                            type: string
                          value:
                            description: An invariant if the feature is measured by quantity.
                            readOnly: true
                            type: string
                      readOnly: true
                      type: array
                    capacity:
                      description: Describes scaling information of a SKU.
                      properties:
                        default:
                          description: The default capacity.
                          format: int64
                          readOnly: true
                          type: integer
                        maximum:
                          description: The maximum capacity.
                          format: int64
                          readOnly: true
                          type: integer
                        minimum:
                          description: The minimum capacity.
                          format: int64
                          readOnly: true
                          type: integer
                        scaleType:
                          description: The scale type applicable to the SKU.
                          enum:
                            - Automatic
                            - Manual
                            - None
                          readOnly: true
                          type: string
                          x-ms-enum:
                            modelAsString: false
                            name: ResourceSkuCapacityScaleType
                    costs:
                      description: Metadata for retrieving price info.
                      items:
                        description: Describes metadata for retrieving price info.
                        properties:
                          extendedUnit:
                            description: An invariant to show the extended unit.
                            readOnly: true
                            type: string
                          meterID:
                            description: Used for querying price from commerce.
                            readOnly: true
                            type: string
                          quantity:
                            description: The multiplier is needed to extend the base metered cost.
                            format: int64
                            readOnly: true
                            type: integer
                      readOnly: true
                      type: array
                    family:
                      description: The Family of this particular SKU.
                      readOnly: true
                      type: string
                    kind:
                      description: The Kind of resources that are supported in this SKU.
                      readOnly: true
                      type: string
                    locations:
                      description: The set of locations that the SKU is available.
                      items:
                        type: string
                      readOnly: true
                      type: array
                    name:
                      description: The name of SKU.
                      readOnly: true
                      type: string
                    resourceType:
                      description: The type of resource the SKU applies to.
                      readOnly: true
                      type: string
                    restrictions:
                      description: The restrictions because of which SKU cannot be used. This is empty if there are no restrictions.
                      items:
                        description: Describes scaling information of a SKU.
                        properties:
                          reasonCode:
                            description: The reason code for restriction.
                            enum:
                              - QuotaId
                              - NotAvailableForSubscription
                            readOnly: true
                            type: string
                            x-ms-enum:
                              modelAsString: false
                              name: ResourceSkuRestrictionsReasonCode
                          type:
                            description: The type of restrictions.
                            enum:
                              - location
                            readOnly: true
                            type: string
                            x-ms-enum:
                              modelAsString: false
                              name: ResourceSkuRestrictionsType
                          values:
                            description: The value of restrictions. If the restriction type is set to location. This would be different locations where the SKU is restricted.
                            items:
                              type: string
                            readOnly: true
                            type: array
                      readOnly: true
                      type: array
                    size:
                      description: The Size of the SKU.
                      readOnly: true
                      type: string
                    tier:
                      description: Specifies the tier of DMS in a scale set.
                      readOnly: true
                      type: string
                type: array
            required:
              - value
        default:
          description: Error
          schema:
            description: Error information.
            properties:
              error:
                description: Error information in OData format.
                properties:
                  code:
                    description: The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError'
                    type: string
                  details:
                    description: Inner errors that caused this error
                    items:
                      $ref: "#/definitions/ODataError"
                    type: array
                  message:
                    description: The human-readable description of the error
                    type: string
                type: object
            type: object
      summary: Get supported SKUs
      tags:
        - Standard operation
        - GET
      x-ms-examples:
        ListSkus:
          parameters:
            api-version: 2017-11-15-preview
            subscriptionId: subid
          responses:
            "200":
              body:
                value:
                  - locations:
                      - East Asia
                      - Southeast Asia
                      - Australia East
                      - Australia Southeast
                      - Brazil South
                      - Canada Central
                      - Canada East
                      - North Europe
                      - West Europe
                      - Central India
                      - South India
                      - West India
                      - Japan East
                      - Japan West
                      - Korea South
                      - Korea Central
                      - UK South
                      - UK South 2
                      - UK North
                      - UK West
                      - East US 2 EUAP
                      - Central US
                      - East US
                      - East US 2
                      - North Central US
                      - South Central US
                      - West Central US
                      - West US
                      - West US 2
                    name: PP1
                    resourceType: services
                    restrictions: []
      x-ms-pageable:
        nextLinkName: nextLink
  "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services":
    get:
      description: The Services resource is the top-level resource that represents the Data Migration Service. This method returns a list of service resources in a resource group.
      operationId: Services_ListByResourceGroup
      parameters:
        - $ref: "#/parameters/subscriptionId"
        - $ref: "#/parameters/groupName"
        - $ref: "#/parameters/apiVersion"
      responses:
        "200":
          description: Got services
          schema:
            description: OData page of service objects
            properties:
              nextLink:
                description: URL to load the next page of services
                type: string
              value:
                description: List of services
                items:
                  allOf:
                    - allOf:
                        - description: ARM resource.
                          properties:
                            id:
                              description: Resource ID.
                              readOnly: true
                              type: string
                            name:
                              description: Resource name.
                              readOnly: true
                              type: string
                            type:
                              description: Resource type.
                              readOnly: true
                              type: string
                          x-ms-azure-resource: true
                      description: ARM tracked top level resource.
                      properties:
                        location:
                          description: Resource location.
                          type: string
                          x-ms-mutability:
                            - read
                            - create
                        tags:
                          additionalProperties:
                            type: string
                          description: Resource tags.
                          type: object
                          x-ms-mutability:
                            - read
                            - create
                            - update
                      required:
                        - location
                  description: A Data Migration Service resource
                  properties:
                    etag:
                      description: HTTP strong entity tag value. Ignored if submitted
                      type: string
                    kind:
                      description: The resource kind. Only 'vm' (the default) is supported.
                      type: string
                    properties:
                      description: Properties of the Data Migration service instance
                      properties:
                        provisioningState:
                          description: The resource's provisioning state
                          enum:
                            - Accepted
                            - Deleting
                            - Deploying
                            - Stopped
                            - Stopping
                            - Starting
                            - FailedToStart
                            - FailedToStop
                            - Succeeded
                            - Failed
                          readOnly: true
                          type: string
                          x-ms-enum:
                            modelAsString: false
                            name: ServiceProvisioningState
                        publicKey:
                          description: The public key of the service, used to encrypt secrets sent to the service
                          type: string
                        virtualSubnetId:
                          description: The ID of the Microsoft.Network/virtualNetworks/subnets resource to which the service should be joined
                          type: string
                      required:
                        - virtualSubnetId
                      type: object
                    sku:
                      description: An Azure SKU instance
                      properties:
                        capacity:
                          description: The capacity of the SKU, if it supports scaling
                          type: integer
                        family:
                          description: The SKU family, used when the service has multiple performance classes within a tier, such as 'A', 'D', etc. for virtual machines
                          type: string
                        name:
                          description: The unique name of the SKU, such as 'P3'
                          type: string
                        size:
                          description: The size of the SKU, used when the name alone does not denote a service size or when a SKU has multiple performance classes within a family, e.g. 'A1' for virtual machines
                          type: string
                        tier:
                          description: The tier of the SKU, such as 'Free', 'Basic', 'Standard', or 'Premium'
                          type: string
                      type: object
                  type: object
                type: array
            type: object
        default:
          description: Error
          schema:
            description: Error information.
            properties:
              error:
                description: Error information in OData format.
                properties:
                  code:
                    description: The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError'
                    type: string
                  details:
                    description: Inner errors that caused this error
                    items:
                      $ref: "#/definitions/ODataError"
                    type: array
                  message:
                    description: The human-readable description of the error
                    type: string
                type: object
            type: object
      summary: Get services in resource group
      tags:
        - Service resource
        - Standard operation
        - GET
      x-ms-examples:
        Services_ListByResourceGroup:
          parameters:
            api-version: 2017-11-15-preview
            groupName: DmsSdkRg
            subscriptionId: fc04246f-04c5-437e-ac5e-206a19e7193f
          responses:
            "200":
              body:
                value:
                  - id: /subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService1
                    location: southcentralus
                    name: DmsSdkService1
                    sku:
                      name: GeneralPurpose_4vCores
                      size: 4 vCores
                      tier: General Purpose
                    type: Microsoft.DataMigration/services
                  - id: /subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService2
                    location: southcentralus
                    name: DmsSdkService2
                    sku:
                      name: Basic_2vCores
                      size: 2 vCores
                      tier: Basic
                    type: Microsoft.DataMigration/services
      x-ms-pageable:
        nextLinkName: nextLink
  "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}":
    delete:
      description: The services resource is the top-level resource that represents the Data Migration Service. The DELETE method deletes a service. Any running tasks will be canceled.
      operationId: Services_Delete
      parameters:
        - $ref: "#/parameters/deleteRunningTasks"
      responses:
        "200":
          description: Service resource deleted
        "202":
          description: Deletion accepted
        "204":
          description: Service not found
        default:
          description: Error
          schema:
            description: Error information.
            properties:
              error:
                description: Error information in OData format.
                properties:
                  code:
                    description: The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError'
                    type: string
                  details:
                    description: Inner errors that caused this error
                    items:
                      $ref: "#/definitions/ODataError"
                    type: array
                  message:
                    description: The human-readable description of the error
                    type: string
                type: object
            type: object
      summary: Delete DMS Service Instance
      tags:
        - Service resource
        - Standard operation
        - DELETE
      x-ms-examples:
        Services_CreateOrUpdate:
          parameters:
            api-version: 2017-11-15-preview
            groupName: DmsSdkRg
            serviceName: DmsSdkService
            subscriptionId: fc04246f-04c5-437e-ac5e-206a19e7193f
          responses:
            "200": {}
            "202":
              body: ""
            "204": {}
      x-ms-long-running-operation: true
    get:
      description: The services resource is the top-level resource that represents the Data Migration Service. The GET method retrieves information about a service instance.
      operationId: Services_Get
      responses:
        "200":
          description: A service instance resource
          schema:
            allOf:
              - allOf:
                  - description: ARM resource.
                    properties:
                      id:
                        description: Resource ID.
                        readOnly: true
                        type: string
                      name:
                        description: Resource name.
                        readOnly: true
                        type: string
                      type:
                        description: Resource type.
                        readOnly: true
                        type: string
                    x-ms-azure-resource: true
                description: ARM tracked top level resource.
                properties:
                  location:
                    description: Resource location.
                    type: string
                    x-ms-mutability:
                      - read
                      - create
                  tags:
                    additionalProperties:
                      type: string
                    description: Resource tags.
                    type: object
                    x-ms-mutability:
                      - read
                      - create
                      - update
                required:
                  - location
            description: A Data Migration Service resource
            properties:
              etag:
                description: HTTP strong entity tag value. Ignored if submitted
                type: string
              kind:
                description: The resource kind. Only 'vm' (the default) is supported.
                type: string
              properties:
                description: Properties of the Data Migration service instance
                properties:
                  provisioningState:
                    description: The resource's provisioning state
                    enum:
                      - Accepted
                      - Deleting
                      - Deploying
                      - Stopped
                      - Stopping
                      - Starting
                      - FailedToStart
                      - FailedToStop
                      - Succeeded
                      - Failed
                    readOnly: true
                    type: string
                    x-ms-enum:
                      modelAsString: false
                      name: ServiceProvisioningState
                  publicKey:
                    description: The public key of the service, used to encrypt secrets sent to the service
                    type: string
                  virtualSubnetId:
                    description: The ID of the Microsoft.Network/virtualNetworks/subnets resource to which the service should be joined
                    type: string
                required:
                  - virtualSubnetId
                type: object
              sku:
                description: An Azure SKU instance
                properties:
                  capacity:
                    description: The capacity of the SKU, if it supports scaling
                    type: integer
                  family:
                    description: The SKU family, used when the service has multiple performance classes within a tier, such as 'A', 'D', etc. for virtual machines
                    type: string
                  name:
                    description: The unique name of the SKU, such as 'P3'
                    type: string
                  size:
                    description: The size of the SKU, used when the name alone does not denote a service size or when a SKU has multiple performance classes within a family, e.g. 'A1' for virtual machines
                    type: string
                  tier:
                    description: The tier of the SKU, such as 'Free', 'Basic', 'Standard', or 'Premium'
                    type: string
                type: object
            type: object
        default:
          description: Error
          schema:
            description: Error information.
            properties:
              error:
                description: Error information in OData format.
                properties:
                  code:
                    description: The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError'
                    type: string
                  details:
                    description: Inner errors that caused this error
                    items:
                      $ref: "#/definitions/ODataError"
                    type: array
                  message:
                    description: The human-readable description of the error
                    type: string
                type: object
            type: object
      summary: Get DMS Service Instance
      tags:
        - Service resource
        - Standard operation
        - GET
      x-ms-examples:
        Services_CreateOrUpdate:
          parameters:
            api-version: 2017-11-15-preview
            groupName: DmsSdkRg
            serviceName: DmsSdkService
            subscriptionId: fc04246f-04c5-437e-ac5e-206a19e7193f
          responses:
            "200":
              body:
                etag: VVFgsiFIruaTduI4hoNOUXLMXr5Y79qytW2cotz4viI=
                id: /subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService
                location: southcentralus
                name: DmsSdkService
                properties:
                  provisioningState: Succeeded
                  publicKey: 0;AQAB;kkQk9TqKG6+ZP2DDr0yjdnlHsZjJFBbL++2eSJvTDzIJFE98nGSA3RNX4EC65oSmsaNhKZi7y6v+cuU6/7q08uom5IfTK0CxmjRnKdoOHnZnP9TShaFLiZPv7H/FXoUIzHKuaOxg+/35AlhDXLVFjKmwfScLC+g6sEWDhlfWzcN7c34yVOGF+BQyZHIeqBcf9HDcwgFfjvAlEh0x4sTeLUNdpjLEv74ce3A/kJMBdFUoxVXvHcMjVVGXC4gS1VLb7Ykoihx+/c5qbhKMNff21v5lwxzNLfIMGzL+T8vKab+3Cpmusk2JaBJ+6glIIuhrpaX5X9fgmvenzzluUWMX9w==
                  virtualSubnetId: /subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkTestNetwork/providers/Microsoft.Network/virtualNetworks/DmsSdkTestNetwork/subnets/default
                sku:
                  name: Basic_1vCore
                  size: 1 vCore
                  tier: Basic
                type: Microsoft.DataMigration/services
    parameters:
      - $ref: "#/parameters/subscriptionId"
      - $ref: "#/parameters/groupName"
      - $ref: "#/parameters/serviceName"
      - $ref: "#/parameters/apiVersion"
    patch:
      description: The services resource is the top-level resource that represents the Data Migration Service. The PATCH method updates an existing service. This method can change the kind, SKU, and network of the service, but if tasks are currently running (i.e. the service is busy), this will fail with 400 Bad Request ("ServiceIsBusy").
      operationId: Services_Update
      parameters:
        - $ref: "#/parameters/service"
      responses:
        "200":
          description: Service resource updated
          schema:
            allOf:
              - allOf:
                  - description: ARM resource.
                    properties:
                      id:
                        description: Resource ID.
                        readOnly: true
                        type: string
                      name:
                        description: Resource name.
                        readOnly: true
                        type: string
                      type:
                        description: Resource type.
                        readOnly: true
                        type: string
                    x-ms-azure-resource: true
                description: ARM tracked top level resource.
                properties:
                  location:
                    description: Resource location.
                    type: string
                    x-ms-mutability:
                      - read
                      - create
                  tags:
                    additionalProperties:
                      type: string
                    description: Resource tags.
                    type: object
                    x-ms-mutability:
                      - read
                      - create
                      - update
                required:
                  - location
            description: A Data Migration Service resource
            properties:
              etag:
                description: HTTP strong entity tag value. Ignored if submitted
                type: string
              kind:
                description: The resource kind. Only 'vm' (the default) is supported.
                type: string
              properties:
                description: Properties of the Data Migration service instance
                properties:
                  provisioningState:
                    description: The resource's provisioning state
                    enum:
                      - Accepted
                      - Deleting
                      - Deploying
                      - Stopped
                      - Stopping
                      - Starting
                      - FailedToStart
                      - FailedToStop
                      - Succeeded
                      - Failed
                    readOnly: true
                    type: string
                    x-ms-enum:
                      modelAsString: false
                      name: ServiceProvisioningState
                  publicKey:
                    description: The public key of the service, used to encrypt secrets sent to the service
                    type: string
                  virtualSubnetId:
                    description: The ID of the Microsoft.Network/virtualNetworks/subnets resource to which the service should be joined
                    type: string
                required:
                  - virtualSubnetId
                type: object
              sku:
                description: An Azure SKU instance
                properties:
                  capacity:
                    description: The capacity of the SKU, if it supports scaling
                    type: integer
                  family:
                    description: The SKU family, used when the service has multiple performance classes within a tier, such as 'A', 'D', etc. for virtual machines
                    type: string
                  name:
                    description: The unique name of the SKU, such as 'P3'
                    type: string
                  size:
                    description: The size of the SKU, used when the name alone does not denote a service size or when a SKU has multiple performance classes within a family, e.g. 'A1' for virtual machines
                    type: string
                  tier:
                    description: The tier of the SKU, such as 'Free', 'Basic', 'Standard', or 'Premium'
                    type: string
                type: object
            type: object
        "202":
          description: Update accepted
        default:
          description: Error
          schema:
            description: Error information.
            properties:
              error:
                description: Error information in OData format.
                properties:
                  code:
                    description: The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError'
                    type: string
                  details:
                    description: Inner errors that caused this error
                    items:
                      $ref: "#/definitions/ODataError"
                    type: array
                  message:
                    description: The human-readable description of the error
                    type: string
                type: object
            type: object
      summary: Create or update DMS Service Instance
      tags:
        - Service resource
        - Standard operation
        - PATCH
      x-ms-examples:
        Services_CreateOrUpdate:
          parameters:
            api-version: 2017-11-15-preview
            groupName: DmsSdkRg
            parameters:
              properties:
                virtualSubnetId: /subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkTestNetwork/providers/Microsoft.Network/virtualNetworks/DmsSdkTestNetwork/subnets/default
            serviceName: DmsSdkService
            subscriptionId: fc04246f-04c5-437e-ac5e-206a19e7193f
          responses:
            "200":
              body:
                etag: 9QuK/U0GvTJpjIrlOzITXVy68+bmmQ3bFkHudLxmkUw=
                id: /subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService
                location: southcentralus
                name: DmsSdkService
                properties:
                  provisioningState: Accepted
                  virtualSubnetId: /subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkTestNetwork/providers/Microsoft.Network/virtualNetworks/DmsSdkTestNetwork/subnets/default
                sku:
                  name: Basic_1vCore
                  size: 1 vCore
                  tier: Basic
                type: Microsoft.DataMigration/services
            "202": {}
      x-ms-long-running-operation: true
    put:
      description: The services resource is the top-level resource that represents the Data Migration Service. The PUT method creates a new service or updates an existing one. When a service is updated, existing child resources (i.e. tasks) are unaffected. Services currently support a single kind, "vm", which refers to a VM-based service, although other kinds may be added in the future. This method can change the kind, SKU, and network of the service, but if tasks are currently running (i.e. the service is busy), this will fail with 400 Bad Request ("ServiceIsBusy"). The provider will reply when successful with 200 OK or 201 Created. Long-running operations use the provisioningState property.
      operationId: Services_CreateOrUpdate
      parameters:
        - $ref: "#/parameters/service"
      responses:
        "200":
          description: Service updated
          schema:
            allOf:
              - allOf:
                  - description: ARM resource.
                    properties:
                      id:
                        description: Resource ID.
                        readOnly: true
                        type: string
                      name:
                        description: Resource name.
                        readOnly: true
                        type: string
                      type:
                        description: Resource type.
                        readOnly: true
                        type: string
                    x-ms-azure-resource: true
                description: ARM tracked top level resource.
                properties:
                  location:
                    description: Resource location.
                    type: string
                    x-ms-mutability:
                      - read
                      - create
                  tags:
                    additionalProperties:
                      type: string
                    description: Resource tags.
                    type: object
                    x-ms-mutability:
                      - read
                      - create
                      - update
                required:
                  - location
            description: A Data Migration Service resource
            properties:
              etag:
                description: HTTP strong entity tag value. Ignored if submitted
                type: string
              kind:
                description: The resource kind. Only 'vm' (the default) is supported.
                type: string
              properties:
                description: Properties of the Data Migration service instance
                properties:
                  provisioningState:
                    description: The resource's provisioning state
                    enum:
                      - Accepted
                      - Deleting
                      - Deploying
                      - Stopped
                      - Stopping
                      - Starting
                      - FailedToStart
                      - FailedToStop
                      - Succeeded
                      - Failed
                    readOnly: true
                    type: string
                    x-ms-enum:
                      modelAsString: false
                      name: ServiceProvisioningState
                  publicKey:
                    description: The public key of the service, used to encrypt secrets sent to the service
                    type: string
                  virtualSubnetId:
                    description: The ID of the Microsoft.Network/virtualNetworks/subnets resource to which the service should be joined
                    type: string
                required:
                  - virtualSubnetId
                type: object
              sku:
                description: An Azure SKU instance
                properties:
                  capacity:
                    description: The capacity of the SKU, if it supports scaling
                    type: integer
                  family:
                    description: The SKU family, used when the service has multiple performance classes within a tier, such as 'A', 'D', etc. for virtual machines
                    type: string
                  name:
                    description: The unique name of the SKU, such as 'P3'
                    type: string
                  size:
                    description: The size of the SKU, used when the name alone does not denote a service size or when a SKU has multiple performance classes within a family, e.g. 'A1' for virtual machines
                    type: string
                  tier:
                    description: The tier of the SKU, such as 'Free', 'Basic', 'Standard', or 'Premium'
                    type: string
                type: object
            type: object
        "201":
          description: Service created (use provisioningState)
          schema:
            allOf:
              - allOf:
                  - description: ARM resource.
                    properties:
                      id:
                        description: Resource ID.
                        readOnly: true
                        type: string
                      name:
                        description: Resource name.
                        readOnly: true
                        type: string
                      type:
                        description: Resource type.
                        readOnly: true
                        type: string
                    x-ms-azure-resource: true
                description: ARM tracked top level resource.
                properties:
                  location:
                    description: Resource location.
                    type: string
                    x-ms-mutability:
                      - read
                      - create
                  tags:
                    additionalProperties:
                      type: string
                    description: Resource tags.
                    type: object
                    x-ms-mutability:
                      - read
                      - create
                      - update
                required:
                  - location
            description: A Data Migration Service resource
            properties:
              etag:
                description: HTTP strong entity tag value. Ignored if submitted
                type: string
              kind:
                description: The resource kind. Only 'vm' (the default) is supported.
                type: string
              properties:
                description: Properties of the Data Migration service instance
                properties:
                  provisioningState:
                    description: The resource's provisioning state
                    enum:
                      - Accepted
                      - Deleting
                      - Deploying
                      - Stopped
                      - Stopping
                      - Starting
                      - FailedToStart
                      - FailedToStop
                      - Succeeded
                      - Failed
                    readOnly: true
                    type: string
                    x-ms-enum:
                      modelAsString: false
                      name: ServiceProvisioningState
                  publicKey:
                    description: The public key of the service, used to encrypt secrets sent to the service
                    type: string
                  virtualSubnetId:
                    description: The ID of the Microsoft.Network/virtualNetworks/subnets resource to which the service should be joined
                    type: string
                required:
                  - virtualSubnetId
                type: object
              sku:
                description: An Azure SKU instance
                properties:
                  capacity:
                    description: The capacity of the SKU, if it supports scaling
                    type: integer
                  family:
                    description: The SKU family, used when the service has multiple performance classes within a tier, such as 'A', 'D', etc. for virtual machines
                    type: string
                  name:
                    description: The unique name of the SKU, such as 'P3'
                    type: string
                  size:
                    description: The size of the SKU, used when the name alone does not denote a service size or when a SKU has multiple performance classes within a family, e.g. 'A1' for virtual machines
                    type: string
                  tier:
                    description: The tier of the SKU, such as 'Free', 'Basic', 'Standard', or 'Premium'
                    type: string
                type: object
            type: object
        "202":
          description: Update accepted
        default:
          description: Error
          schema:
            description: Error information.
            properties:
              error:
                description: Error information in OData format.
                properties:
                  code:
                    description: The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError'
                    type: string
                  details:
                    description: Inner errors that caused this error
                    items:
                      $ref: "#/definitions/ODataError"
                    type: array
                  message:
                    description: The human-readable description of the error
                    type: string
                type: object
            type: object
      summary: Create or update DMS Instance
      tags:
        - Service resource
        - Standard operation
        - PUT
      x-ms-examples:
        Services_CreateOrUpdate:
          parameters:
            api-version: 2017-11-15-preview
            groupName: DmsSdkRg
            parameters:
              location: southcentralus
              properties:
                virtualSubnetId: /subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkTestNetwork/providers/Microsoft.Network/virtualNetworks/DmsSdkTestNetwork/subnets/default
              sku:
                name: Basic_1vCore
            serviceName: DmsSdkService
            subscriptionId: fc04246f-04c5-437e-ac5e-206a19e7193f
          responses:
            "200":
              body:
                etag: 9QuK/U0GvTJpjIrlOzITXVy68+bmmQ3bFkHudLxmkUw=
                id: /subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService
                location: southcentralus
                name: DmsSdkService
                properties:
                  provisioningState: Accepted
                  virtualSubnetId: /subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkTestNetwork/providers/Microsoft.Network/virtualNetworks/DmsSdkTestNetwork/subnets/default
                sku:
                  name: Basic_1vCore
                  size: 1 vCore
                  tier: Basic
                type: Microsoft.DataMigration/services
            "201":
              body:
                etag: 9QuK/U0GvTJpjIrlOzITXVy68+bmmQ3bFkHudLxmkUw=
                id: /subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService
                location: southcentralus
                name: DmsSdkService
                properties:
                  provisioningState: Accepted
                  virtualSubnetId: /subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkTestNetwork/providers/Microsoft.Network/virtualNetworks/DmsSdkTestNetwork/subnets/default
                sku:
                  name: Basic_1vCore
                  size: 1 vCore
                  tier: Basic
                type: Microsoft.DataMigration/services
            "202": {}
      x-ms-long-running-operation: true
  "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/checkNameAvailability":
    post:
      description: This method checks whether a proposed nested resource name is valid and available.
      operationId: Services_CheckChildrenNameAvailability
      parameters:
        - $ref: "#/parameters/subscriptionId"
        - $ref: "#/parameters/groupName"
        - $ref: "#/parameters/apiVersion"
        - $ref: "#/parameters/serviceName"
        - $ref: "#/parameters/requestedName"
      responses:
        "200":
          description: Name checked
          schema:
            description: Indicates whether a proposed resource name is available
            properties:
              message:
                description: The localized reason why the name is not available, if nameAvailable is false
                type: string
              nameAvailable:
                description: If true, the name is valid and available. If false, 'reason' describes why not.
                type: boolean
              reason:
                description: The reason why the name is not available, if nameAvailable is false
                enum:
                  - AlreadyExists
                  - Invalid
                type: string
                x-ms-enum:
                  modelAsString: false
                  name: NameCheckFailureReason
            type: object
        default:
          description: Error
          schema:
            description: Error information.
            properties:
              error:
                description: Error information in OData format.
                properties:
                  code:
                    description: The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError'
                    type: string
                  details:
                    description: Inner errors that caused this error
                    items:
                      $ref: "#/definitions/ODataError"
                    type: array
                  message:
                    description: The human-readable description of the error
                    type: string
                type: object
            type: object
      summary: Check nested resource name validity and availability
      tags:
        - Custom operation
        - POST
      x-ms-examples:
        Services_CheckChildrenNameAvailability:
          parameters:
            api-version: 2017-11-15-preview
            groupName: DmsSdkRg
            parameters:
              requestedName:
                name: Task1
                type: tasks
            serviceName: DmsSdkService
            subscriptionId: fc04246f-04c5-437e-ac5e-206a19e7193f
          responses:
            "200":
              body:
                nameAvailable: true
  "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/checkStatus":
    post:
      description: The services resource is the top-level resource that represents the Data Migration Service. This action performs a health check and returns the status of the service and virtual machine size.
      operationId: Services_CheckStatus
      parameters:
        - $ref: "#/parameters/subscriptionId"
        - $ref: "#/parameters/groupName"
        - $ref: "#/parameters/serviceName"
        - $ref: "#/parameters/apiVersion"
      responses:
        "200":
          description: Health checked
          schema:
            description: Service health status
            properties:
              agentVersion:
                description: The DMS instance agent version
                type: string
              status:
                description: The machine-readable status, such as 'Initializing', 'Offline', 'Online', 'Deploying', 'Deleting', 'Stopped', 'Stopping', 'Starting', 'FailedToStart', 'FailedToStop' or 'Failed'
                type: string
              supportedTaskTypes:
                description: The list of supported task types
                items:
                  description: Migration task type
                  type: string
                type: array
              vmSize:
                description: The services virtual machine size, such as 'Standard_D2_v2'
                type: string
            type: object
        default:
          description: Error
          schema:
            description: Error information.
            properties:
              error:
                description: Error information in OData format.
                properties:
                  code:
                    description: The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError'
                    type: string
                  details:
                    description: Inner errors that caused this error
                    items:
                      $ref: "#/definitions/ODataError"
                    type: array
                  message:
                    description: The human-readable description of the error
                    type: string
                type: object
            type: object
      summary: Check service health status
      tags:
        - Service resource
        - Custom operation
        - POST
      x-ms-examples:
        Services_CheckStatus:
          parameters:
            api-version: 2017-11-15-preview
            groupName: DmsSdkRg
            serviceName: DmsSdkService
            subscriptionId: fc04246f-04c5-437e-ac5e-206a19e7193f
          responses:
            "200":
              body:
                agentVersion: 3.3.3871.6
                status: Online
                supportedTaskTypes:
                  - diagnostic.count
                  - diagnostic.echo
                  - diagnostic.error
                  - diagnostic.fastCount
                  - ConnectToSource.SqlServer
                  - GetUserTables.Sql
                  - ConnectToTarget.SqlDb
                  - Migrate.SqlServer.SqlDb
                vmSize: Standard_A1_v2
  "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects":
    get:
      description: The project resource is a nested resource representing a stored migration project. This method returns a list of projects owned by a service resource.
      operationId: Projects_List
      parameters:
        - $ref: "#/parameters/subscriptionId"
        - $ref: "#/parameters/groupName"
        - $ref: "#/parameters/serviceName"
        - $ref: "#/parameters/apiVersion"
      responses:
        "200":
          description: List of projects
          schema:
            description: OData page of project resources
            properties:
              nextLink:
                description: URL to load the next page of projects
                type: string
              value:
                description: List of projects
                items:
                  allOf:
                    - allOf:
                        - description: ARM resource.
                          properties:
                            id:
                              description: Resource ID.
                              readOnly: true
                              type: string
                            name:
                              description: Resource name.
                              readOnly: true
                              type: string
                            type:
                              description: Resource type.
                              readOnly: true
                              type: string
                          x-ms-azure-resource: true
                      description: ARM tracked top level resource.
                      properties:
                        location:
                          description: Resource location.
                          type: string
                          x-ms-mutability:
                            - read
                            - create
                        tags:
                          additionalProperties:
                            type: string
                          description: Resource tags.
                          type: object
                          x-ms-mutability:
                            - read
                            - create
                            - update
                      required:
                        - location
                  description: A project resource
                  properties:
                    properties:
                      description: Project-specific properties
                      properties:
                        creationTime:
                          description: UTC Date and time when project was created
                          format: date-time
                          readOnly: true
                          type: string
                        databasesInfo:
                          description: List of DatabaseInfo
                          items:
                            description: Project Database Details
                            properties:
                              sourceDatabaseName:
                                description: Name of the database
                                type: string
                            required:
                              - sourceDatabaseName
                            type: object
                          type: array
                        provisioningState:
                          description: The project's provisioning state
                          enum:
                            - Deleting
                            - Succeeded
                          readOnly: true
                          type: string
                          x-ms-enum:
                            modelAsString: false
                            name: ProjectProvisioningState
                        sourceConnectionInfo:
                          description: Defines the connection properties of a server
                          discriminator: type
                          properties:
                            password:
                              description: Password credential.
                              type: string
                            type:
                              description: Type of connection info
                              type: string
                            userName:
                              description: User name
                              type: string
                          required:
                            - type
                          type: object
                          x-ms-discriminator-value: Unknown
                        sourcePlatform:
                          description: Source platform of the project
                          enum:
                            - SQL
                            - Unknown
                          type: string
                          x-ms-enum:
                            modelAsString: false
                            name: ProjectSourcePlatform
                        targetConnectionInfo:
                          description: Defines the connection properties of a server
                          discriminator: type
                          properties:
                            password:
                              description: Password credential.
                              type: string
                            type:
                              description: Type of connection info
                              type: string
                            userName:
                              description: User name
                              type: string
                          required:
                            - type
                          type: object
                          x-ms-discriminator-value: Unknown
                        targetPlatform:
                          description: Target platform of the project
                          enum:
                            - SQLDB
                            - Unknown
                          type: string
                          x-ms-enum:
                            modelAsString: false
                            name: ProjectTargetPlatform
                      required:
                        - sourcePlatform
                        - targetPlatform
                      type: object
                  type: object
                type: array
            type: object
        default:
          description: Error
          schema:
            description: Error information.
            properties:
              error:
                description: Error information in OData format.
                properties:
                  code:
                    description: The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError'
                    type: string
                  details:
                    description: Inner errors that caused this error
                    items:
                      $ref: "#/definitions/ODataError"
                    type: array
                  message:
                    description: The human-readable description of the error
                    type: string
                type: object
            type: object
      summary: Get projects in a service
      tags:
        - Project resource
        - Standard operation
        - GET
      x-ms-examples:
        Projects_List:
          parameters:
            api-version: 2017-11-15-preview
            groupName: DmsSdkRg
            serviceName: DmsSdkService
            subscriptionId: fc04246f-04c5-437e-ac5e-206a19e7193f
          responses:
            "200":
              body:
                value:
                  - id: /subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService/projects/project1
                    location: southcentralus
                    name: project1
                    properties:
                      creationTime: 2017-11-14T01:29:56.3049263+00:00
                      provisioningState: Succeeded
                      sourcePlatform: SQL
                      targetPlatform: SQLDB
                    type: Microsoft.DataMigration/services/projects
                  - id: /subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService/projects/project2
                    location: southcentralus
                    name: project2
                    properties:
                      creationTime: 2017-11-14T01:30:05.6185148+00:00
                      provisioningState: Succeeded
                      sourcePlatform: SQL
                      targetPlatform: SQLDB
                    type: Microsoft.DataMigration/services/projects
      x-ms-pageable:
        nextLinkName: nextLink
  "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}":
    delete:
      description: The project resource is a nested resource representing a stored migration project. The DELETE method deletes a project.
      operationId: Projects_Delete
      parameters:
        - $ref: "#/parameters/deleteRunningTasks"
      responses:
        "200":
          description: Project resource deleted
        "204":
          description: Not found
        default:
          description: Error
          schema:
            description: Error information.
            properties:
              error:
                description: Error information in OData format.
                properties:
                  code:
                    description: The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError'
                    type: string
                  details:
                    description: Inner errors that caused this error
                    items:
                      $ref: "#/definitions/ODataError"
                    type: array
                  message:
                    description: The human-readable description of the error
                    type: string
                type: object
            type: object
      summary: Delete project
      tags:
        - Project resource
        - Standard operation
        - DELETE
      x-ms-examples:
        Projects_Delete:
          parameters:
            api-version: 2017-11-15-preview
            groupName: DmsSdkRg
            projectName: DmsSdkProject
            serviceName: DmsSdkService
            subscriptionId: fc04246f-04c5-437e-ac5e-206a19e7193f
          responses:
            "200":
              body: ""
            "204":
              body: ""
    get:
      description: The project resource is a nested resource representing a stored migration project. The GET method retrieves information about a project.
      operationId: Projects_Get
      responses:
        "200":
          description: A project resource
          schema:
            allOf:
              - allOf:
                  - description: ARM resource.
                    properties:
                      id:
                        description: Resource ID.
                        readOnly: true
                        type: string
                      name:
                        description: Resource name.
                        readOnly: true
                        type: string
                      type:
                        description: Resource type.
                        readOnly: true
                        type: string
                    x-ms-azure-resource: true
                description: ARM tracked top level resource.
                properties:
                  location:
                    description: Resource location.
                    type: string
                    x-ms-mutability:
                      - read
                      - create
                  tags:
                    additionalProperties:
                      type: string
                    description: Resource tags.
                    type: object
                    x-ms-mutability:
                      - read
                      - create
                      - update
                required:
                  - location
            description: A project resource
            properties:
              properties:
                description: Project-specific properties
                properties:
                  creationTime:
                    description: UTC Date and time when project was created
                    format: date-time
                    readOnly: true
                    type: string
                  databasesInfo:
                    description: List of DatabaseInfo
                    items:
                      description: Project Database Details
                      properties:
                        sourceDatabaseName:
                          description: Name of the database
                          type: string
                      required:
                        - sourceDatabaseName
                      type: object
                    type: array
                  provisioningState:
                    description: The project's provisioning state
                    enum:
                      - Deleting
                      - Succeeded
                    readOnly: true
                    type: string
                    x-ms-enum:
                      modelAsString: false
                      name: ProjectProvisioningState
                  sourceConnectionInfo:
                    description: Defines the connection properties of a server
                    discriminator: type
                    properties:
                      password:
                        description: Password credential.
                        type: string
                      type:
                        description: Type of connection info
                        type: string
                      userName:
                        description: User name
                        type: string
                    required:
                      - type
                    type: object
                    x-ms-discriminator-value: Unknown
                  sourcePlatform:
                    description: Source platform of the project
                    enum:
                      - SQL
                      - Unknown
                    type: string
                    x-ms-enum:
                      modelAsString: false
                      name: ProjectSourcePlatform
                  targetConnectionInfo:
                    description: Defines the connection properties of a server
                    discriminator: type
                    properties:
                      password:
                        description: Password credential.
                        type: string
                      type:
                        description: Type of connection info
                        type: string
                      userName:
                        description: User name
                        type: string
                    required:
                      - type
                    type: object
                    x-ms-discriminator-value: Unknown
                  targetPlatform:
                    description: Target platform of the project
                    enum:
                      - SQLDB
                      - Unknown
                    type: string
                    x-ms-enum:
                      modelAsString: false
                      name: ProjectTargetPlatform
                required:
                  - sourcePlatform
                  - targetPlatform
                type: object
            type: object
        default:
          description: Error
          schema:
            description: Error information.
            properties:
              error:
                description: Error information in OData format.
                properties:
                  code:
                    description: The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError'
                    type: string
                  details:
                    description: Inner errors that caused this error
                    items:
                      $ref: "#/definitions/ODataError"
                    type: array
                  message:
                    description: The human-readable description of the error
                    type: string
                type: object
            type: object
      summary: Get project information
      tags:
        - Project resource
        - Standard operation
        - GET
      x-ms-examples:
        Projects_Get:
          parameters:
            api-version: 2017-11-15-preview
            groupName: DmsSdkRg
            projectName: DmsSdkProject
            serviceName: DmsSdkService
            subscriptionId: fc04246f-04c5-437e-ac5e-206a19e7193f
          responses:
            "200":
              body:
                id: /subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService/projects/DmsSdkProject
                location: southcentralus
                name: DmsSdkProject
                properties:
                  creationTime: 2017-11-03T02:35:11.6561001-07:00
                  provisioningState: Succeeded
                  sourcePlatform: SQL
                  targetPlatform: SQLDB
                type: Microsoft.DataMigration/services/projects
    parameters:
      - $ref: "#/parameters/subscriptionId"
      - $ref: "#/parameters/groupName"
      - $ref: "#/parameters/serviceName"
      - $ref: "#/parameters/projectName"
      - $ref: "#/parameters/apiVersion"
    patch:
      description: The project resource is a nested resource representing a stored migration project. The PATCH method updates an existing project.
      operationId: Projects_Update
      parameters:
        - $ref: "#/parameters/project"
      responses:
        "200":
          description: Project resource updated
          schema:
            allOf:
              - allOf:
                  - description: ARM resource.
                    properties:
                      id:
                        description: Resource ID.
                        readOnly: true
                        type: string
                      name:
                        description: Resource name.
                        readOnly: true
                        type: string
                      type:
                        description: Resource type.
                        readOnly: true
                        type: string
                    x-ms-azure-resource: true
                description: ARM tracked top level resource.
                properties:
                  location:
                    description: Resource location.
                    type: string
                    x-ms-mutability:
                      - read
                      - create
                  tags:
                    additionalProperties:
                      type: string
                    description: Resource tags.
                    type: object
                    x-ms-mutability:
                      - read
                      - create
                      - update
                required:
                  - location
            description: A project resource
            properties:
              properties:
                description: Project-specific properties
                properties:
                  creationTime:
                    description: UTC Date and time when project was created
                    format: date-time
                    readOnly: true
                    type: string
                  databasesInfo:
                    description: List of DatabaseInfo
                    items:
                      description: Project Database Details
                      properties:
                        sourceDatabaseName:
                          description: Name of the database
                          type: string
                      required:
                        - sourceDatabaseName
                      type: object
                    type: array
                  provisioningState:
                    description: The project's provisioning state
                    enum:
                      - Deleting
                      - Succeeded
                    readOnly: true
                    type: string
                    x-ms-enum:
                      modelAsString: false
                      name: ProjectProvisioningState
                  sourceConnectionInfo:
                    description: Defines the connection properties of a server
                    discriminator: type
                    properties:
                      password:
                        description: Password credential.
                        type: string
                      type:
                        description: Type of connection info
                        type: string
                      userName:
                        description: User name
                        type: string
                    required:
                      - type
                    type: object
                    x-ms-discriminator-value: Unknown
                  sourcePlatform:
                    description: Source platform of the project
                    enum:
                      - SQL
                      - Unknown
                    type: string
                    x-ms-enum:
                      modelAsString: false
                      name: ProjectSourcePlatform
                  targetConnectionInfo:
                    description: Defines the connection properties of a server
                    discriminator: type
                    properties:
                      password:
                        description: Password credential.
                        type: string
                      type:
                        description: Type of connection info
                        type: string
                      userName:
                        description: User name
                        type: string
                    required:
                      - type
                    type: object
                    x-ms-discriminator-value: Unknown
                  targetPlatform:
                    description: Target platform of the project
                    enum:
                      - SQLDB
                      - Unknown
                    type: string
                    x-ms-enum:
                      modelAsString: false
                      name: ProjectTargetPlatform
                required:
                  - sourcePlatform
                  - targetPlatform
                type: object
            type: object
        default:
          description: Error
          schema:
            description: Error information.
            properties:
              error:
                description: Error information in OData format.
                properties:
                  code:
                    description: The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError'
                    type: string
                  details:
                    description: Inner errors that caused this error
                    items:
                      $ref: "#/definitions/ODataError"
                    type: array
                  message:
                    description: The human-readable description of the error
                    type: string
                type: object
            type: object
      summary: Update project
      tags:
        - Project resource
        - Standard operation
        - PATCH
      x-ms-examples:
        Projects_Update:
          parameters:
            api-version: 2017-11-15-preview
            groupName: DmsSdkRg
            parameters:
              properties:
                sourcePlatform: SQL
                targetPlatform: SQLDB
            projectName: DmsSdkProject
            serviceName: DmsSdkService
            subscriptionId: fc04246f-04c5-437e-ac5e-206a19e7193f
          responses:
            "200":
              body:
                id: /subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService/projects/DmsSdkProject
                location: southcentralus
                name: DmsSdkProject
                properties:
                  creationTime: 2017-11-03T02:14:54.2458282-07:00
                  provisioningState: Succeeded
                  sourcePlatform: SQL
                  targetPlatform: SQLDB
                type: Microsoft.DataMigration/services/projects
    put:
      description: The project resource is a nested resource representing a stored migration project. The PUT method creates a new project or updates an existing one.
      operationId: Projects_CreateOrUpdate
      parameters:
        - $ref: "#/parameters/project"
      responses:
        "200":
          description: Project updated
          schema:
            allOf:
              - allOf:
                  - description: ARM resource.
                    properties:
                      id:
                        description: Resource ID.
                        readOnly: true
                        type: string
                      name:
                        description: Resource name.
                        readOnly: true
                        type: string
                      type:
                        description: Resource type.
                        readOnly: true
                        type: string
                    x-ms-azure-resource: true
                description: ARM tracked top level resource.
                properties:
                  location:
                    description: Resource location.
                    type: string
                    x-ms-mutability:
                      - read
                      - create
                  tags:
                    additionalProperties:
                      type: string
                    description: Resource tags.
                    type: object
                    x-ms-mutability:
                      - read
                      - create
                      - update
                required:
                  - location
            description: A project resource
            properties:
              properties:
                description: Project-specific properties
                properties:
                  creationTime:
                    description: UTC Date and time when project was created
                    format: date-time
                    readOnly: true
                    type: string
                  databasesInfo:
                    description: List of DatabaseInfo
                    items:
                      description: Project Database Details
                      properties:
                        sourceDatabaseName:
                          description: Name of the database
                          type: string
                      required:
                        - sourceDatabaseName
                      type: object
                    type: array
                  provisioningState:
                    description: The project's provisioning state
                    enum:
                      - Deleting
                      - Succeeded
                    readOnly: true
                    type: string
                    x-ms-enum:
                      modelAsString: false
                      name: ProjectProvisioningState
                  sourceConnectionInfo:
                    description: Defines the connection properties of a server
                    discriminator: type
                    properties:
                      password:
                        description: Password credential.
                        type: string
                      type:
                        description: Type of connection info
                        type: string
                      userName:
                        description: User name
                        type: string
                    required:
                      - type
                    type: object
                    x-ms-discriminator-value: Unknown
                  sourcePlatform:
                    description: Source platform of the project
                    enum:
                      - SQL
                      - Unknown
                    type: string
                    x-ms-enum:
                      modelAsString: false
                      name: ProjectSourcePlatform
                  targetConnectionInfo:
                    description: Defines the connection properties of a server
                    discriminator: type
                    properties:
                      password:
                        description: Password credential.
                        type: string
                      type:
                        description: Type of connection info
                        type: string
                      userName:
                        description: User name
                        type: string
                    required:
                      - type
                    type: object
                    x-ms-discriminator-value: Unknown
                  targetPlatform:
                    description: Target platform of the project
                    enum:
                      - SQLDB
                      - Unknown
                    type: string
                    x-ms-enum:
                      modelAsString: false
                      name: ProjectTargetPlatform
                required:
                  - sourcePlatform
                  - targetPlatform
                type: object
            type: object
        "201":
          description: Project created
          schema:
            allOf:
              - allOf:
                  - description: ARM resource.
                    properties:
                      id:
                        description: Resource ID.
                        readOnly: true
                        type: string
                      name:
                        description: Resource name.
                        readOnly: true
                        type: string
                      type:
                        description: Resource type.
                        readOnly: true
                        type: string
                    x-ms-azure-resource: true
                description: ARM tracked top level resource.
                properties:
                  location:
                    description: Resource location.
                    type: string
                    x-ms-mutability:
                      - read
                      - create
                  tags:
                    additionalProperties:
                      type: string
                    description: Resource tags.
                    type: object
                    x-ms-mutability:
                      - read
                      - create
                      - update
                required:
                  - location
            description: A project resource
            properties:
              properties:
                description: Project-specific properties
                properties:
                  creationTime:
                    description: UTC Date and time when project was created
                    format: date-time
                    readOnly: true
                    type: string
                  databasesInfo:
                    description: List of DatabaseInfo
                    items:
                      description: Project Database Details
                      properties:
                        sourceDatabaseName:
                          description: Name of the database
                          type: string
                      required:
                        - sourceDatabaseName
                      type: object
                    type: array
                  provisioningState:
                    description: The project's provisioning state
                    enum:
                      - Deleting
                      - Succeeded
                    readOnly: true
                    type: string
                    x-ms-enum:
                      modelAsString: false
                      name: ProjectProvisioningState
                  sourceConnectionInfo:
                    description: Defines the connection properties of a server
                    discriminator: type
                    properties:
                      password:
                        description: Password credential.
                        type: string
                      type:
                        description: Type of connection info
                        type: string
                      userName:
                        description: User name
                        type: string
                    required:
                      - type
                    type: object
                    x-ms-discriminator-value: Unknown
                  sourcePlatform:
                    description: Source platform of the project
                    enum:
                      - SQL
                      - Unknown
                    type: string
                    x-ms-enum:
                      modelAsString: false
                      name: ProjectSourcePlatform
                  targetConnectionInfo:
                    description: Defines the connection properties of a server
                    discriminator: type
                    properties:
                      password:
                        description: Password credential.
                        type: string
                      type:
                        description: Type of connection info
                        type: string
                      userName:
                        description: User name
                        type: string
                    required:
                      - type
                    type: object
                    x-ms-discriminator-value: Unknown
                  targetPlatform:
                    description: Target platform of the project
                    enum:
                      - SQLDB
                      - Unknown
                    type: string
                    x-ms-enum:
                      modelAsString: false
                      name: ProjectTargetPlatform
                required:
                  - sourcePlatform
                  - targetPlatform
                type: object
            type: object
        default:
          description: Error
          schema:
            description: Error information.
            properties:
              error:
                description: Error information in OData format.
                properties:
                  code:
                    description: The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError'
                    type: string
                  details:
                    description: Inner errors that caused this error
                    items:
                      $ref: "#/definitions/ODataError"
                    type: array
                  message:
                    description: The human-readable description of the error
                    type: string
                type: object
            type: object
      summary: Create or update project
      tags:
        - Project resource
        - Standard operation
        - PUT
      x-ms-examples:
        Projects_CreateOrUpdate:
          parameters:
            api-version: 2017-11-15-preview
            groupName: DmsSdkRg
            parameters:
              location: southcentralus
              properties:
                sourcePlatform: SQL
                targetPlatform: SQLDB
            projectName: DmsSdkProject
            serviceName: DmsSdkService
            subscriptionId: fc04246f-04c5-437e-ac5e-206a19e7193f
          responses:
            "200":
              body:
                id: /subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService/projects/DmsSdkProject
                location: southcentralus
                name: DmsSdkProject
                properties:
                  creationTime: 2017-11-03T02:14:54.2458282-07:00
                  provisioningState: Succeeded
                  sourcePlatform: SQL
                  targetPlatform: SQLDB
                type: Microsoft.DataMigration/services/projects
            "201":
              body:
                id: /subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService/projects/DmsSdkProject
                location: southcentralus
                name: DmsSdkProject
                properties:
                  creationTime: 2017-11-03T02:14:54.2458282-07:00
                  provisioningState: Succeeded
                  sourcePlatform: SQL
                  targetPlatform: SQLDB
                type: Microsoft.DataMigration/services/projects
  "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks":
    get:
      description: The services resource is the top-level resource that represents the Data Migration Service. This method returns a list of tasks owned by a service resource. Some tasks may have a status of Unknown, which indicates that an error occurred while querying the status of that task.
      operationId: Tasks_List
      parameters:
        - $ref: "#/parameters/subscriptionId"
        - $ref: "#/parameters/groupName"
        - $ref: "#/parameters/serviceName"
        - $ref: "#/parameters/projectName"
        - $ref: "#/parameters/apiVersion"
        - $ref: "#/parameters/taskType"
      responses:
        "200":
          description: Got tasks
          schema:
            description: OData page of tasks
            properties:
              nextLink:
                description: URL to load the next page of tasks
                type: string
              value:
                description: List of tasks
                items:
                  allOf:
                    - description: ARM resource.
                      properties:
                        id:
                          description: Resource ID.
                          readOnly: true
                          type: string
                        name:
                          description: Resource name.
                          readOnly: true
                          type: string
                        type:
                          description: Resource type.
                          readOnly: true
                          type: string
                      x-ms-azure-resource: true
                  description: A task resource
                  properties:
                    etag:
                      description: HTTP strong entity tag value. This is ignored if submitted.
                      type: string
                    properties:
                      description: Base class for all types of DMS task properties. If task is not supported by current client, this object is returned.
                      discriminator: taskType
                      properties:
                        errors:
                          description: Array of errors. This is ignored if submitted.
                          items:
                            description: Error information in OData format.
                            properties:
                              code:
                                description: The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError'
                                type: string
                              details:
                                description: Inner errors that caused this error
                                items:
                                  $ref: "#/definitions/ODataError"
                                type: array
                              message:
                                description: The human-readable description of the error
                                type: string
                            type: object
                          readOnly: true
                          type: array
                        state:
                          description: The state of the task. This is ignored if submitted.
                          enum:
                            - Unknown
                            - Queued
                            - Running
                            - Canceled
                            - Succeeded
                            - Failed
                            - FailedInputValidation
                            - Faulted
                          readOnly: true
                          type: string
                          x-ms-enum:
                            modelAsString: false
                            name: TaskState
                        taskType:
                          description: Task type.
                          type: string
                      required:
                        - taskType
                      type: object
                      x-ms-discriminator-value: Unknown
                  type: object
                type: array
            type: object
        default:
          description: Error
          schema:
            description: Error information.
            properties:
              error:
                description: Error information in OData format.
                properties:
                  code:
                    description: The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError'
                    type: string
                  details:
                    description: Inner errors that caused this error
                    items:
                      $ref: "#/definitions/ODataError"
                    type: array
                  message:
                    description: The human-readable description of the error
                    type: string
                type: object
            type: object
      summary: Get tasks in a service
      tags:
        - Service resource
        - Standard operation
        - GET
      x-ms-examples:
        Tasks_List:
          parameters:
            api-version: 2017-11-15-preview
            groupName: DmsSdkRg
            projectName: DmsSdkProject
            serviceName: DmsSdkService
            subscriptionId: fc04246f-04c5-437e-ac5e-206a19e7193f
          responses:
            "200":
              body:
                value:
                  - etag: 0vPYxzfnDaDH9yhOJAnqTyTRpa09Kb7pm+LEukDBbw8=
                    id: /subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService/projects/DmsSdkProject/tasks/DmsSdkTask
                    name: DmsSdkTask
                    properties:
                      input:
                        targetConnectionInfo:
                          authentication: SqlAuthentication
                          dataSource: ssma-test-server.database.windows.net
                          encryptConnection: true
                          trustServerCertificate: true
                          type: SqlConnectionInfo
                          userName: testuser
                      state: Queued
                      taskType: ConnectToTarget.SqlDb
                    type: Microsoft.DataMigration/services/projects/tasks
      x-ms-pageable:
        nextLinkName: nextLink
  "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks/{taskName}":
    delete:
      description: The tasks resource is a nested, proxy-only resource representing work performed by a DMS instance. The DELETE method deletes a task, canceling it first if it's running.
      operationId: Tasks_Delete
      parameters:
        - $ref: "#/parameters/deleteRunningTasks"
      responses:
        "200":
          description: Task resource deleted
        "204":
          description: Not found
        default:
          description: Error
          schema:
            description: Error information.
            properties:
              error:
                description: Error information in OData format.
                properties:
                  code:
                    description: The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError'
                    type: string
                  details:
                    description: Inner errors that caused this error
                    items:
                      $ref: "#/definitions/ODataError"
                    type: array
                  message:
                    description: The human-readable description of the error
                    type: string
                type: object
            type: object
      summary: Delete task
      tags:
        - Task resource
        - Standard operation
        - DELETE
      x-ms-examples:
        Tasks_Delete:
          parameters:
            api-version: 2017-11-15-preview
            groupName: DmsSdkRg
            projectName: DmsSdkProject
            serviceName: DmsSdkService
            subscriptionId: fc04246f-04c5-437e-ac5e-206a19e7193f
            taskName: DmsSdkTask
          responses:
            "200":
              body: ""
            "204":
              body: ""
    get:
      description: The tasks resource is a nested, proxy-only resource representing work performed by a DMS instance. The GET method retrieves information about a task.
      operationId: Tasks_Get
      parameters:
        - description: Expand the response
          in: query
          name: $expand
          required: false
          type: string
      responses:
        "200":
          description: A task resource
          schema:
            allOf:
              - description: ARM resource.
                properties:
                  id:
                    description: Resource ID.
                    readOnly: true
                    type: string
                  name:
                    description: Resource name.
                    readOnly: true
                    type: string
                  type:
                    description: Resource type.
                    readOnly: true
                    type: string
                x-ms-azure-resource: true
            description: A task resource
            properties:
              etag:
                description: HTTP strong entity tag value. This is ignored if submitted.
                type: string
              properties:
                description: Base class for all types of DMS task properties. If task is not supported by current client, this object is returned.
                discriminator: taskType
                properties:
                  errors:
                    description: Array of errors. This is ignored if submitted.
                    items:
                      description: Error information in OData format.
                      properties:
                        code:
                          description: The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError'
                          type: string
                        details:
                          description: Inner errors that caused this error
                          items:
                            $ref: "#/definitions/ODataError"
                          type: array
                        message:
                          description: The human-readable description of the error
                          type: string
                      type: object
                    readOnly: true
                    type: array
                  state:
                    description: The state of the task. This is ignored if submitted.
                    enum:
                      - Unknown
                      - Queued
                      - Running
                      - Canceled
                      - Succeeded
                      - Failed
                      - FailedInputValidation
                      - Faulted
                    readOnly: true
                    type: string
                    x-ms-enum:
                      modelAsString: false
                      name: TaskState
                  taskType:
                    description: Task type.
                    type: string
                required:
                  - taskType
                type: object
                x-ms-discriminator-value: Unknown
            type: object
        default:
          description: Error
          schema:
            description: Error information.
            properties:
              error:
                description: Error information in OData format.
                properties:
                  code:
                    description: The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError'
                    type: string
                  details:
                    description: Inner errors that caused this error
                    items:
                      $ref: "#/definitions/ODataError"
                    type: array
                  message:
                    description: The human-readable description of the error
                    type: string
                type: object
            type: object
      summary: Get task information
      tags:
        - Task resource
        - Standard operation
        - GET
      x-ms-examples:
        Tasks_Get:
          parameters:
            api-version: 2017-11-15-preview
            groupName: DmsSdkRg
            projectName: DmsSdkProject
            serviceName: DmsSdkService
            subscriptionId: fc04246f-04c5-437e-ac5e-206a19e7193f
            taskName: DmsSdkTask
          responses:
            "200":
              body:
                etag: 0vPYxzfnDaDH9yhOJAnqTyTRpa09Kb7pm+LEukDBbw8=
                id: /subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService/projects/DmsSdkProject/tasks/DmsSdkTask
                name: DmsSdkTask
                properties:
                  input:
                    targetConnectionInfo:
                      authentication: SqlAuthentication
                      dataSource: ssma-test-server.database.windows.net
                      encryptConnection: true
                      trustServerCertificate: true
                      type: SqlConnectionInfo
                      userName: testuser
                  state: Queued
                  taskType: ConnectToTarget.SqlDb
                type: Microsoft.DataMigration/services/projects/tasks
    parameters:
      - $ref: "#/parameters/subscriptionId"
      - $ref: "#/parameters/groupName"
      - $ref: "#/parameters/serviceName"
      - $ref: "#/parameters/projectName"
      - $ref: "#/parameters/taskName"
      - $ref: "#/parameters/apiVersion"
    patch:
      description: The tasks resource is a nested, proxy-only resource representing work performed by a DMS instance. The PATCH method updates an existing task, but since tasks have no mutable custom properties, there is little reason to do so.
      operationId: Tasks_Update
      parameters:
        - $ref: "#/parameters/projectTask"
      responses:
        "200":
          description: Task resource updated
          schema:
            allOf:
              - description: ARM resource.
                properties:
                  id:
                    description: Resource ID.
                    readOnly: true
                    type: string
                  name:
                    description: Resource name.
                    readOnly: true
                    type: string
                  type:
                    description: Resource type.
                    readOnly: true
                    type: string
                x-ms-azure-resource: true
            description: A task resource
            properties:
              etag:
                description: HTTP strong entity tag value. This is ignored if submitted.
                type: string
              properties:
                description: Base class for all types of DMS task properties. If task is not supported by current client, this object is returned.
                discriminator: taskType
                properties:
                  errors:
                    description: Array of errors. This is ignored if submitted.
                    items:
                      description: Error information in OData format.
                      properties:
                        code:
                          description: The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError'
                          type: string
                        details:
                          description: Inner errors that caused this error
                          items:
                            $ref: "#/definitions/ODataError"
                          type: array
                        message:
                          description: The human-readable description of the error
                          type: string
                      type: object
                    readOnly: true
                    type: array
                  state:
                    description: The state of the task. This is ignored if submitted.
                    enum:
                      - Unknown
                      - Queued
                      - Running
                      - Canceled
                      - Succeeded
                      - Failed
                      - FailedInputValidation
                      - Faulted
                    readOnly: true
                    type: string
                    x-ms-enum:
                      modelAsString: false
                      name: TaskState
                  taskType:
                    description: Task type.
                    type: string
                required:
                  - taskType
                type: object
                x-ms-discriminator-value: Unknown
            type: object
        default:
          description: Error
          schema:
            description: Error information.
            properties:
              error:
                description: Error information in OData format.
                properties:
                  code:
                    description: The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError'
                    type: string
                  details:
                    description: Inner errors that caused this error
                    items:
                      $ref: "#/definitions/ODataError"
                    type: array
                  message:
                    description: The human-readable description of the error
                    type: string
                type: object
            type: object
      summary: Create or update task
      tags:
        - Task resource
        - Standard operation
        - PATCH
      x-ms-examples:
        Tasks_Update:
          parameters:
            api-version: 2017-11-15-preview
            groupName: DmsSdkRg
            parameters:
              properties:
                input:
                  targetConnectionInfo:
                    authentication: SqlAuthentication
                    dataSource: ssma-test-server.database.windows.net
                    encryptConnection: true
                    password: testpassword
                    trustServerCertificate: true
                    type: SqlConnectionInfo
                    userName: testuser
                taskType: ConnectToTarget.SqlDb
            projectName: DmsSdkProject
            serviceName: DmsSdkService
            subscriptionId: fc04246f-04c5-437e-ac5e-206a19e7193f
            taskName: DmsSdkTask
          responses:
            "200":
              body:
                etag: 0vPYxzfnDaDH9yhOJAnqTyTRpa09Kb7pm+LEukDBbw8=
                id: /subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService/projects/DmsSdkProject/tasks/DmsSdkTask
                name: DmsSdkTask
                properties:
                  input:
                    targetConnectionInfo:
                      authentication: SqlAuthentication
                      dataSource: ssma-test-server.database.windows.net
                      encryptConnection: true
                      trustServerCertificate: true
                      type: SqlConnectionInfo
                      userName: testuser
                  state: Queued
                  taskType: ConnectToTarget.SqlDb
                type: Microsoft.DataMigration/services/projects/tasks
    put:
      description: The tasks resource is a nested, proxy-only resource representing work performed by a DMS instance. The PUT method creates a new task or updates an existing one, although since tasks have no mutable custom properties, there is little reason to update an exising one.
      operationId: Tasks_CreateOrUpdate
      parameters:
        - $ref: "#/parameters/projectTask"
      responses:
        "200":
          description: Task updated
          schema:
            allOf:
              - description: ARM resource.
                properties:
                  id:
                    description: Resource ID.
                    readOnly: true
                    type: string
                  name:
                    description: Resource name.
                    readOnly: true
                    type: string
                  type:
                    description: Resource type.
                    readOnly: true
                    type: string
                x-ms-azure-resource: true
            description: A task resource
            properties:
              etag:
                description: HTTP strong entity tag value. This is ignored if submitted.
                type: string
              properties:
                description: Base class for all types of DMS task properties. If task is not supported by current client, this object is returned.
                discriminator: taskType
                properties:
                  errors:
                    description: Array of errors. This is ignored if submitted.
                    items:
                      description: Error information in OData format.
                      properties:
                        code:
                          description: The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError'
                          type: string
                        details:
                          description: Inner errors that caused this error
                          items:
                            $ref: "#/definitions/ODataError"
                          type: array
                        message:
                          description: The human-readable description of the error
                          type: string
                      type: object
                    readOnly: true
                    type: array
                  state:
                    description: The state of the task. This is ignored if submitted.
                    enum:
                      - Unknown
                      - Queued
                      - Running
                      - Canceled
                      - Succeeded
                      - Failed
                      - FailedInputValidation
                      - Faulted
                    readOnly: true
                    type: string
                    x-ms-enum:
                      modelAsString: false
                      name: TaskState
                  taskType:
                    description: Task type.
                    type: string
                required:
                  - taskType
                type: object
                x-ms-discriminator-value: Unknown
            type: object
        "201":
          description: Task created
          schema:
            allOf:
              - description: ARM resource.
                properties:
                  id:
                    description: Resource ID.
                    readOnly: true
                    type: string
                  name:
                    description: Resource name.
                    readOnly: true
                    type: string
                  type:
                    description: Resource type.
                    readOnly: true
                    type: string
                x-ms-azure-resource: true
            description: A task resource
            properties:
              etag:
                description: HTTP strong entity tag value. This is ignored if submitted.
                type: string
              properties:
                description: Base class for all types of DMS task properties. If task is not supported by current client, this object is returned.
                discriminator: taskType
                properties:
                  errors:
                    description: Array of errors. This is ignored if submitted.
                    items:
                      description: Error information in OData format.
                      properties:
                        code:
                          description: The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError'
                          type: string
                        details:
                          description: Inner errors that caused this error
                          items:
                            $ref: "#/definitions/ODataError"
                          type: array
                        message:
                          description: The human-readable description of the error
                          type: string
                      type: object
                    readOnly: true
                    type: array
                  state:
                    description: The state of the task. This is ignored if submitted.
                    enum:
                      - Unknown
                      - Queued
                      - Running
                      - Canceled
                      - Succeeded
                      - Failed
                      - FailedInputValidation
                      - Faulted
                    readOnly: true
                    type: string
                    x-ms-enum:
                      modelAsString: false
                      name: TaskState
                  taskType:
                    description: Task type.
                    type: string
                required:
                  - taskType
                type: object
                x-ms-discriminator-value: Unknown
            type: object
        default:
          description: Error
          schema:
            description: Error information.
            properties:
              error:
                description: Error information in OData format.
                properties:
                  code:
                    description: The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError'
                    type: string
                  details:
                    description: Inner errors that caused this error
                    items:
                      $ref: "#/definitions/ODataError"
                    type: array
                  message:
                    description: The human-readable description of the error
                    type: string
                type: object
            type: object
      summary: Create or update task
      tags:
        - Task resource
        - Standard operation
        - PUT
      x-ms-examples:
        Tasks_CreateOrUpdate:
          parameters:
            api-version: 2017-11-15-preview
            groupName: DmsSdkRg
            parameters:
              properties:
                input:
                  targetConnectionInfo:
                    authentication: SqlAuthentication
                    dataSource: ssma-test-server.database.windows.net
                    encryptConnection: true
                    password: testpassword
                    trustServerCertificate: true
                    type: SqlConnectionInfo
                    userName: testuser
                taskType: ConnectToTarget.SqlDb
            projectName: DmsSdkProject
            serviceName: DmsSdkService
            subscriptionId: fc04246f-04c5-437e-ac5e-206a19e7193f
            taskName: DmsSdkTask
          responses:
            "200":
              body:
                etag: 0vPYxzfnDaDH9yhOJAnqTyTRpa09Kb7pm+LEukDBbw8=
                id: /subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService/projects/DmsSdkProject/tasks/DmsSdkTask
                name: DmsSdkTask
                properties:
                  input:
                    targetConnectionInfo:
                      authentication: SqlAuthentication
                      dataSource: ssma-test-server.database.windows.net
                      encryptConnection: true
                      trustServerCertificate: true
                      type: SqlConnectionInfo
                      userName: testuser
                  state: Queued
                  taskType: ConnectToTarget.SqlDb
                type: Microsoft.DataMigration/services/projects/tasks
            "201":
              body:
                etag: 0vPYxzfnDaDH9yhOJAnqTyTRpa09Kb7pm+LEukDBbw8=
                id: /subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService/projects/DmsSdkProject/tasks/DmsSdkTask
                name: DmsSdkTask
                properties:
                  input:
                    targetConnectionInfo:
                      authentication: SqlAuthentication
                      dataSource: ssma-test-server.database.windows.net
                      encryptConnection: true
                      trustServerCertificate: true
                      type: SqlConnectionInfo
                      userName: testuser
                  state: Queued
                  taskType: ConnectToTarget.SqlDb
                type: Microsoft.DataMigration/services/projects/tasks
  "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks/{taskName}/cancel":
    post:
      description: The tasks resource is a nested, proxy-only resource representing work performed by a DMS instance. This method cancels a task if it's currently queued or running.
      operationId: Tasks_Cancel
      parameters:
        - $ref: "#/parameters/subscriptionId"
        - $ref: "#/parameters/groupName"
        - $ref: "#/parameters/serviceName"
        - $ref: "#/parameters/projectName"
        - $ref: "#/parameters/taskName"
        - $ref: "#/parameters/apiVersion"
      responses:
        "200":
          description: Task canceled
          schema:
            allOf:
              - description: ARM resource.
                properties:
                  id:
                    description: Resource ID.
                    readOnly: true
                    type: string
                  name:
                    description: Resource name.
                    readOnly: true
                    type: string
                  type:
                    description: Resource type.
                    readOnly: true
                    type: string
                x-ms-azure-resource: true
            description: A task resource
            properties:
              etag:
                description: HTTP strong entity tag value. This is ignored if submitted.
                type: string
              properties:
                description: Base class for all types of DMS task properties. If task is not supported by current client, this object is returned.
                discriminator: taskType
                properties:
                  errors:
                    description: Array of errors. This is ignored if submitted.
                    items:
                      description: Error information in OData format.
                      properties:
                        code:
                          description: The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError'
                          type: string
                        details:
                          description: Inner errors that caused this error
                          items:
                            $ref: "#/definitions/ODataError"
                          type: array
                        message:
                          description: The human-readable description of the error
                          type: string
                      type: object
                    readOnly: true
                    type: array
                  state:
                    description: The state of the task. This is ignored if submitted.
                    enum:
                      - Unknown
                      - Queued
                      - Running
                      - Canceled
                      - Succeeded
                      - Failed
                      - FailedInputValidation
                      - Faulted
                    readOnly: true
                    type: string
                    x-ms-enum:
                      modelAsString: false
                      name: TaskState
                  taskType:
                    description: Task type.
                    type: string
                required:
                  - taskType
                type: object
                x-ms-discriminator-value: Unknown
            type: object
        default:
          description: Error
          schema:
            description: Error information.
            properties:
              error:
                description: Error information in OData format.
                properties:
                  code:
                    description: The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError'
                    type: string
                  details:
                    description: Inner errors that caused this error
                    items:
                      $ref: "#/definitions/ODataError"
                    type: array
                  message:
                    description: The human-readable description of the error
                    type: string
                type: object
            type: object
      summary: Cancel a task
      tags:
        - Task resource
        - Custom operation
        - POST
      x-ms-examples:
        Tasks_Cancel:
          parameters:
            api-version: 2017-11-15-preview
            groupName: DmsSdkRg
            projectName: DmsSdkProject
            serviceName: DmsSdkService
            subscriptionId: fc04246f-04c5-437e-ac5e-206a19e7193f
            taskName: DmsSdkTask
          responses:
            "200":
              body:
                etag: 0vPYxzfnDaDH9yhOJAnqTyTRpa09Kb7pm+LEukDBbw8=
                id: /subscriptions/fc04246f-04c5-437e-ac5e-206a19e7193f/resourceGroups/DmsSdkRg/providers/Microsoft.DataMigration/services/DmsSdkService/projects/DmsSdkProject/tasks/DmsSdkTask
                name: DmsSdkTask
                properties:
                  input:
                    targetConnectionInfo:
                      authentication: SqlAuthentication
                      dataSource: ssma-test-server.database.windows.net
                      encryptConnection: true
                      trustServerCertificate: true
                      type: SqlConnectionInfo
                      userName: testuser
                  state: Queued
                  taskType: ConnectToTarget.SqlDb
                type: Microsoft.DataMigration/services/projects/tasks
  "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/skus":
    get:
      description: The services resource is the top-level resource that represents the Data Migration Service. The skus action returns the list of SKUs that a service resource can be updated to.
      operationId: Services_ListSkus
      parameters:
        - $ref: "#/parameters/subscriptionId"
        - $ref: "#/parameters/groupName"
        - $ref: "#/parameters/serviceName"
        - $ref: "#/parameters/apiVersion"
      responses:
        "200":
          description: Got SKUs
          schema:
            description: OData page of available SKUs
            properties:
              nextLink:
                description: URL to load the next page of service SKUs
                type: string
              value:
                description: List of service SKUs
                items:
                  description: Describes the available service SKU.
                  properties:
                    capacity:
                      description: A description of the scaling capacities of the SKU
                      properties:
                        default:
                          description: The default capacity
                          type: integer
                        maximum:
                          description: The maximum capacity
                          type: integer
                        minimum:
                          description: The minimum capacity, usually 0 or 1.
                          type: integer
                        scaleType:
                          description: The scalability approach
                          enum:
                            - none
                            - manual
                            - automatic
                          type: string
                          x-ms-enum:
                            modelAsString: false
                            name: ServiceScalability
                      type: object
                    resourceType:
                      description: The resource type, including the provider namespace
                      type: string
                    sku:
                      description: SKU name, tier, etc.
                      properties:
                        family:
                          description: SKU family
                          type: string
                        name:
                          description: The name of the SKU
                          type: string
                        size:
                          description: SKU size
                          type: string
                        tier:
                          description: The tier of the SKU, such as "Free", "Basic", "Standard", or "Premium"
                          type: string
                      type: object
                  type: object
                type: array
            type: object
        default:
          description: Error
          schema:
            description: Error information.
            properties:
              error:
                description: Error information in OData format.
                properties:
                  code:
                    description: The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError'
                    type: string
                  details:
                    description: Inner errors that caused this error
                    items:
                      $ref: "#/definitions/ODataError"
                    type: array
                  message:
                    description: The human-readable description of the error
                    type: string
                type: object
            type: object
      summary: Get compatible SKUs
      tags:
        - Service resource
        - Standard operation
        - GET
      x-ms-examples:
        Services_ListSkus:
          parameters:
            api-version: 2017-11-15-preview
            groupName: DmsSdkRg
            serviceName: DmsSdkService
            subscriptionId: fc04246f-04c5-437e-ac5e-206a19e7193f
          responses:
            "200":
              body:
                value:
                  - resourceType: Microsoft.DataMigration/services
                    sku:
                      name: Basic_1vCore
                      size: 1 vCore
                      tier: Basic
      x-ms-pageable:
        nextLinkName: nextLink
  "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/start":
    post:
      description: The services resource is the top-level resource that represents the Data Migration Service. This action starts the service and the service can be used for data migration.
      operationId: Services_Start
      parameters:
        - $ref: "#/parameters/subscriptionId"
        - $ref: "#/parameters/groupName"
        - $ref: "#/parameters/serviceName"
        - $ref: "#/parameters/apiVersion"
      responses:
        "200":
          description: The service has already been started.
        "202":
          description: The request to start service is accepted.
        default:
          description: Error
          schema:
            description: Error information.
            properties:
              error:
                description: Error information in OData format.
                properties:
                  code:
                    description: The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError'
                    type: string
                  details:
                    description: Inner errors that caused this error
                    items:
                      $ref: "#/definitions/ODataError"
                    type: array
                  message:
                    description: The human-readable description of the error
                    type: string
                type: object
            type: object
      summary: Start service
      tags:
        - Service resource
        - Custom operation
        - POST
      x-ms-examples:
        Services_Start:
          parameters:
            api-version: 2017-11-15-preview
            groupName: DmsSdkRg
            serviceName: DmsSdkService
            subscriptionId: fc04246f-04c5-437e-ac5e-206a19e7193f
          responses:
            "200":
              body: ""
            "202":
              body: ""
      x-ms-long-running-operation: true
  "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/stop":
    post:
      description: The services resource is the top-level resource that represents the Data Migration Service. This action stops the service and the service cannot be used for data migration. The service owner won't be billed when the service is stopped.
      operationId: Services_Stop
      parameters:
        - $ref: "#/parameters/subscriptionId"
        - $ref: "#/parameters/groupName"
        - $ref: "#/parameters/serviceName"
        - $ref: "#/parameters/apiVersion"
      responses:
        "200":
          description: The service has already been stopped.
        "202":
          description: The request to stop service is accepted.
        default:
          description: Error
          schema:
            description: Error information.
            properties:
              error:
                description: Error information in OData format.
                properties:
                  code:
                    description: The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError'
                    type: string
                  details:
                    description: Inner errors that caused this error
                    items:
                      $ref: "#/definitions/ODataError"
                    type: array
                  message:
                    description: The human-readable description of the error
                    type: string
                type: object
            type: object
      summary: Stop service
      tags:
        - Service resource
        - Custom operation
        - POST
      x-ms-examples:
        Services_Stop:
          parameters:
            api-version: 2017-11-15-preview
            groupName: DmsSdkRg
            serviceName: DmsSdkService
            subscriptionId: fc04246f-04c5-437e-ac5e-206a19e7193f
          responses:
            "200":
              body: ""
            "202":
              body: ""
      x-ms-long-running-operation: true
definitions:
  ODataError: {}
  ODataErrror:
    type: object
