> ## Documentation Index
> Fetch the complete documentation index at: https://docs.maia.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# List repository migrations

> Returns a page of the repository migrations that have run for this project, newest first. Each entry includes both the source and the target repository, so you can see what the project was migrated from as well as what it was migrated to. Use this to find the identifier of a migration before requesting its status.



## OpenAPI

````yaml /openapi/public-api-endpoint-reference.yaml get /v1/projects/{projectId}/repository-migration
openapi: 3.1.0
info:
  title: Maia Public REST API
  version: '1.0'
servers:
  - description: EU1
    url: https://eu1.api.matillion.com/dpc
  - description: US1
    url: https://us1.api.matillion.com/dpc
security:
  - bearerAuth: []
tags:
  - description: Manage Schedules
    name: Schedules
  - description: Manage Connections
    name: Connections
  - description: Operations for managing Project Variables
    name: Project Variables
  - description: Manage Pipelines
    name: Pipelines
  - description: Review pipelines against quality rules
    name: Pipeline Quality Review
  - description: >-
      Describe how to configure a connection for a given auth provider, auth
      type and platform connection type.
    name: Connection Schema
  - description: Execute tests within a project
    name: Test Execution
  - description: Manage your AI agent tasks
    name: AI Agent Tasks
  - description: SCIM endpoints for user/group permission management
    name: Directory Integration
  - description: Publish shared pipeline artifacts
    name: Shared Pipeline Artifacts
  - description: Manage Repositories
    name: Repositories
  - description: Report on Credit Consumption
    name: Consumption
  - description: >-
      Start and track the migration of a Git repository into a project's working
      tree.
    name: Repository Migration
  - description: Manage Artifacts
    name: Artifacts
  - description: Operations for data lineage and governance
    name: Data Lineage
  - description: Manage Streaming Pipelines
    name: Streaming Pipelines
  - description: Execute a pipeline
    name: Pipeline Execution
  - description: ''
    name: Environments
  - description: ''
    name: Projects
  - description: Manage Agents
    name: Agents
  - description: Operations for managing Environment-level Overrides of Project Variables
    name: Project Variable Environment Overrides
  - description: Query audit events
    name: Audit Events
  - description: Connector Profiles
    name: Connectors
paths:
  /v1/projects/{projectId}/repository-migration:
    get:
      tags:
        - Repository Migration
      summary: List repository migrations
      description: >-
        Returns a page of the repository migrations that have run for this
        project, newest first. Each entry includes both the source and the
        target repository, so you can see what the project was migrated from as
        well as what it was migrated to. Use this to find the identifier of a
        migration before requesting its status.
      operationId: listMigrations
      parameters:
        - description: The unique identifier of the project that owns the working tree.
          in: path
          name: projectId
          required: true
          schema:
            type: string
            format: uuid
        - description: Page number (0-indexed)
          example: '0'
          in: query
          name: page
          schema: {}
        - description: Number of records per page (from 1 to 100)
          example: '25'
          in: query
          name: size
          schema: {}
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PagedResultListRepositoryMigrationSummary'
          description: >-
            A page of repository migrations. Possibly empty if the project has
            never been migrated
        '400':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDetail'
          description: Invalid request
        '403':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDetail'
          description: Forbidden
        '404':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDetail'
          description: Project not found
        '500':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDetail'
          description: Unexpected error occurred
        '504':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDetail'
          description: Gateway timeout
components:
  schemas:
    PagedResultListRepositoryMigrationSummary:
      type: object
      properties:
        page:
          type: integer
          format: int32
          description: The 0-indexed page number of the returned results.
          example: 1
        results:
          type: array
          description: Page of results or empty.
          items:
            $ref: '#/components/schemas/RepositoryMigrationSummary'
        size:
          type: integer
          format: int32
          description: The size of each page of results.
          example: 50
        total:
          type: integer
          format: int64
          description: Total number of available results across all pages.
          example: 472
    ProblemDetail:
      type: object
      properties:
        detail:
          type: string
        instance:
          type: string
        status:
          type: integer
          format: int32
        title:
          type: string
        type:
          type: string
          format: uri
        violations:
          type: array
          items:
            type: string
    RepositoryMigrationSummary:
      type: object
      description: >-
        A repository migration that has run for this project, including its
        source and target repository.
      properties:
        completedAt:
          type: string
          format: date-time
          description: >-
            The time the migration finished, in UTC. Absent while the migration
            is still in progress.
        detail:
          type: string
          description: >-
            Human-readable detail about the migration's outcome, such as a
            failure reason. Absent when there is no detail to report.
        migrationId:
          type: string
          format: uuid
          description: >-
            The unique identifier of the repository migration. Pass this to the
            migration-status endpoint.
        mode:
          type: string
          description: >-
            The migration mode that was used. MIRROR_PUSH copied the full
            working tree to the target repository; RECONFIGURE pointed the
            project at the target repository without pushing content.
          enum:
            - MIRROR_PUSH
            - RECONFIGURE
        sourceCloneUrl:
          type: string
          description: The clone URL of the repository the project was migrated from.
        sourceEnterpriseOauthId:
          type: string
          format: uuid
          description: >-
            The unique identifier of the enterprise OAuth connection used to
            authenticate with the source repository. Absent for public or
            personal repositories.
        sourceName:
          type: string
          description: The display name of the repository the project was migrated from.
        sourceProvider:
          type: string
          description: >-
            The Git provider that hosted the repository the project was migrated
            from. MATILLION means the project was on Matillion-hosted Git before
            the migration.
          enum:
            - MATILLION
            - GITHUB
            - AZURE_DEVOPS
            - GITLAB
            - BITBUCKET
            - BITBUCKET_DATA_CENTER
            - GITLAB_ENTERPRISE
            - GITHUB_ENTERPRISE
            - UNKNOWN
        startedAt:
          type: string
          format: date-time
          description: The time the migration started, in UTC.
        status:
          type: string
          description: >-
            The lifecycle state of the migration. One of IN_PROGRESS, COMPLETED,
            FAILED, or UNKNOWN.
          enum:
            - IN_PROGRESS
            - COMPLETED
            - FAILED
            - UNKNOWN
        targetCloneUrl:
          type: string
          description: The clone URL of the repository the project was migrated to.
        targetEnterpriseOauthId:
          type: string
          format: uuid
          description: >-
            The unique identifier of the enterprise OAuth connection used to
            authenticate with the target repository. Absent for public or
            personal repositories.
        targetName:
          type: string
          description: The display name of the repository the project was migrated to.
        targetProvider:
          type: string
          description: The Git provider hosting the repository the project was migrated to.
          enum:
            - MATILLION
            - GITHUB
            - AZURE_DEVOPS
            - GITLAB
            - BITBUCKET
            - BITBUCKET_DATA_CENTER
            - GITLAB_ENTERPRISE
            - GITHUB_ENTERPRISE
            - UNKNOWN
      required:
        - migrationId
        - status
  securitySchemes:
    bearerAuth:
      bearerFormat: JWT
      description: a valid bearer token
      scheme: bearer
      type: http

````