Azure Migrate Projects API

Create and manage Azure Migrate projects which serve as the central container for discovery, assessment, and migration activities. Projects group related assessment and migration solutions for a workload.

OpenAPI Specification

microsoft-azure-migrate-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Azure Migrate REST API
  description: Azure Migrate provides a hub of tools for assessing and migrating servers, databases, applications,
    and virtual desktops to Azure. The REST API manages projects, assessments, migration plans, and dependencies.
  version: '2024-01-01'
externalDocs:
  description: Azure Migrate REST API Documentation
  url: https://learn.microsoft.com/en-us/rest/api/migrate/projects
servers:
- url: https://management.azure.com
  description: Azure Resource Manager
tags:
- name: Projects
  description: Projects operations
- name: Assessments
  description: Assessments operations
- name: Migration Plans
  description: Migration Plans operations
- name: Operations
  description: Operations operations
security:
- azure_auth:
  - user_impersonation
paths:
  /providers/Microsoft.Migrate/operations:
    get:
      operationId: listOperations
      summary: Azure Migrate REST API List operations
      description: Lists all available REST API operations for Microsoft.Migrate.
      tags:
      - Operations
      parameters:
      - $ref: '#/components/parameters/apiVersion'
      responses:
        '200':
          description: Operations list
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OperationList'
        default:
          description: Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /subscriptions/{subscriptionId}/providers/Microsoft.Migrate/migrateProjects:
    get:
      operationId: listMigrateprojectsBySubscription
      summary: Azure Migrate REST API List by subscription
      description: Lists all migrateProjects resources within the specified subscription.
      tags:
      - Projects
      parameters:
      - $ref: '#/components/parameters/subscriptionId'
      - $ref: '#/components/parameters/apiVersion'
      responses:
        '200':
          description: Resource list
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceList'
        default:
          description: Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/migrateProjects:
    get:
      operationId: listMigrateprojectsByResourceGroup
      summary: Azure Migrate REST API List by resource group
      description: Lists all migrateProjects resources within the specified resource group.
      tags:
      - Projects
      parameters:
      - $ref: '#/components/parameters/subscriptionId'
      - $ref: '#/components/parameters/resourceGroupName'
      - $ref: '#/components/parameters/apiVersion'
      responses:
        '200':
          description: Resource list
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceList'
        default:
          description: Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Migrate/migrateProjects/{name}:
    parameters:
    - $ref: '#/components/parameters/subscriptionId'
    - $ref: '#/components/parameters/resourceGroupName'
    - name: name
      in: path
      required: true
      description: Name of the resource.
      schema:
        type: string
    - $ref: '#/components/parameters/apiVersion'
    get:
      operationId: getMigrateprojects
      summary: Azure Migrate REST API Get resource
      description: Gets a specific migrateProjects resource.
      tags:
      - Projects
      responses:
        '200':
          description: Resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Resource'
        '404':
          description: Not found
        default:
          description: Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
    put:
      operationId: createOrUpdateMigrateprojects
      summary: Azure Migrate REST API Create or update resource
      description: Creates or updates a migrateProjects resource.
      tags:
      - Projects
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Resource'
      responses:
        '200':
          description: Resource updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Resource'
        '201':
          description: Resource created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Resource'
        default:
          description: Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
    patch:
      operationId: updateMigrateprojects
      summary: Azure Migrate REST API Update resource
      description: Updates a migrateProjects resource.
      tags:
      - Projects
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
      responses:
        '200':
          description: Resource updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Resource'
        default:
          description: Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
    delete:
      operationId: deleteMigrateprojects
      summary: Azure Migrate REST API Delete resource
      description: Deletes a migrateProjects resource.
      tags:
      - Projects
      responses:
        '200':
          description: Resource deleted
        '202':
          description: Deletion accepted
        '204':
          description: Resource not found or already deleted
        default:
          description: Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  parameters:
    subscriptionId:
      name: subscriptionId
      in: path
      required: true
      description: The ID of the target subscription.
      schema:
        type: string
    resourceGroupName:
      name: resourceGroupName
      in: path
      required: true
      description: The name of the resource group.
      schema:
        type: string
    apiVersion:
      name: api-version
      in: query
      required: true
      description: The API version to use for this operation.
      schema:
        type: string
  schemas:
    Resource:
      type: object
      properties:
        id:
          type: string
          description: Resource ID.
        name:
          type: string
          description: Resource name.
        type:
          type: string
          description: Resource type.
        location:
          type: string
          description: Resource location.
        tags:
          type: object
          additionalProperties:
            type: string
        properties:
          type: object
          description: Resource-specific properties.
    ResourceList:
      type: object
      properties:
        value:
          type: array
          items:
            $ref: '#/components/schemas/Resource'
        nextLink:
          type: string
          description: URL to the next page of results.
    ErrorResponse:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
            message:
              type: string
            target:
              type: string
    Operation:
      type: object
      properties:
        name:
          type: string
        display:
          type: object
          properties:
            provider:
              type: string
            resource:
              type: string
            operation:
              type: string
            description:
              type: string
        isDataAction:
          type: boolean
    OperationList:
      type: object
      properties:
        value:
          type: array
          items:
            $ref: '#/components/schemas/Operation'
        nextLink:
          type: string
  securitySchemes:
    azure_auth:
      type: oauth2
      description: Azure Active Directory OAuth2 Flow.
      flows:
        implicit:
          authorizationUrl: https://login.microsoftonline.com/common/oauth2/authorize
          scopes:
            user_impersonation: Impersonate your user account
x-generated-from: https://learn.microsoft.com/en-us/rest/api/migrate/projects
x-generated-by: claude-crawl-2026-05-08