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

# Get forklift status

> VM migration INTO this supervisor (Forklift), switched on from the

**Authorisation:** `migration:GetStatus` on `krn:celum:supervisor:{name}:migration:*`.

**Assistant tool:** `get_component_status`



## OpenAPI

````yaml /openapi.json get /api/supervisors/{name}/migration/status
openapi: 3.0.3
info:
  description: >-
    The HTTP surface of the Celum backend, generated from its own router and

    authorisation map — so this list cannot drift from the server that serves
    it.


    **Every operation states the IAM action and resource it is authorised

    against.** That pairing is the part worth reading: a policy naming the right

    action against the wrong resource matches nothing, and fails silently.


    Request and response bodies come from the Go types the handlers send and

    decode. Where those types do not determine the shape (an interface, a

    map[string]any, an unknown custom encoding), the operation says so in

    `x-celum-schema-gap` instead of carrying a guessed schema.
  title: Celum API
  version: 1.0.0
servers:
  - description: Your Celum deployment
    url: https://{host}
    variables:
      host:
        default: celum.example.com
        description: The host your Celum backend is served from
security:
  - sessionCookie: []
  - bearerToken: []
tags:
  - description: AI assistant & MCP
    name: ai-assistant
  - description: Clusters & CAPI lifecycle
    name: capi
  - description: Certificates & external secrets
    name: certs
  - description: GitOps & apps
    name: gitops
  - description: IAM, audit & auth
    name: iam
  - description: Image library
    name: images
  - description: Infrastructure & supervisors
    name: infrastructure
  - description: Networking
    name: networking
  - description: Observability & platform health
    name: observability
  - description: Platform onboarding & settings
    name: platform-settings
  - description: Projects
    name: projects
  - description: Registries & mirroring
    name: registries
  - description: Security & flows
    name: security
  - description: Storage
    name: storage
  - description: Templates & addons
    name: templates
  - description: Virtualization platform (KubeVirt/CDI)
    name: virt
  - description: Virtual machines
    name: vms
  - description: Workloads & topology
    name: workloads
paths:
  /api/supervisors/{name}/migration/status:
    get:
      tags:
        - vms
      summary: Get forklift status
      description: >-
        VM migration INTO this supervisor (Forklift), switched on from the


        **Authorisation:** `migration:GetStatus` on
        `krn:celum:supervisor:{name}:migration:*`.


        **Assistant tool:** `get_component_status`
      operationId: get_supervisors_byName_migration_status
      parameters:
        - description: >-
            The supervisor's name, as registered under Administration →
            Supervisors.
          in: path
          name: name
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/api.migrationStatus'
          description: Success.
        '401':
          description: Not authenticated — no valid session cookie or API token.
        '403':
          description: >-
            Authenticated, but no policy allows this action on this resource.
            The body carries the action and resource that were evaluated.
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/api.ErrorBody'
          description: Not Found.
        '502':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/api.ErrorBody'
          description: Bad Gateway.
components:
  schemas:
    api.migrationStatus:
      properties:
        builtinImageRegistry:
          type: string
        chartVersion:
          type: string
        components:
          items:
            $ref: '#/components/schemas/api.migrationComponent'
          nullable: true
          type: array
        conditions:
          items:
            additionalProperties:
              type: string
            nullable: true
            type: object
          type: array
        converter:
          $ref: '#/components/schemas/api.migrationConverterStatus'
        enabled:
          type: boolean
        forkliftVersion:
          type: string
        healthy:
          type: boolean
        helmReleaseExists:
          type: boolean
        hostProviderReady:
          type: boolean
        imageRegistry:
          type: string
        imagesFromQuay:
          type: boolean
        maxVMInflight:
          format: int64
          type: integer
        nadCrdPresent:
          type: boolean
        namespace:
          type: string
        operation:
          type: string
        policiesInstalled:
          type: boolean
        prerequisites:
          items:
            $ref: '#/components/schemas/api.migrationPrereq'
          nullable: true
          type: array
        prerequisitesError:
          type: string
        ready:
          type: boolean
        revision:
          type: string
        runningMigrations:
          format: int64
          type: integer
        runningMigrationsError:
          type: string
        stocking:
          $ref: '#/components/schemas/api.forkliftStockState'
      required:
        - chartVersion
        - components
        - enabled
        - forkliftVersion
        - healthy
        - helmReleaseExists
        - hostProviderReady
        - nadCrdPresent
        - namespace
        - policiesInstalled
        - prerequisites
        - ready
        - runningMigrations
      type: object
      x-go-type: backend/internal/api.migrationStatus
    api.ErrorBody:
      properties:
        error:
          type: string
      required:
        - error
      type: object
    api.migrationComponent:
      properties:
        desired:
          format: int32
          type: integer
        name:
          type: string
        ready:
          format: int32
          type: integer
      required:
        - desired
        - name
        - ready
      type: object
      x-go-type: backend/internal/api.migrationComponent
    api.migrationConverterStatus:
      properties:
        copying:
          type: boolean
        error:
          type: string
        held:
          type: boolean
        image:
          type: string
        ref:
          type: string
        tag:
          type: string
      required:
        - held
        - image
      type: object
      x-go-type: backend/internal/api.migrationConverterStatus
    api.migrationPrereq:
      properties:
        detail:
          type: string
        name:
          type: string
        ok:
          type: boolean
        step:
          type: string
      required:
        - name
        - ok
      type: object
      x-go-type: backend/internal/api.migrationPrereq
    api.forkliftStockState:
      properties:
        attempt:
          format: int64
          type: integer
        current:
          type: string
        currentBytes:
          format: int64
          type: integer
        currentTotal:
          format: int64
          type: integer
        done:
          format: int64
          type: integer
        error:
          type: string
        finished:
          format: date-time
          type: string
        installed:
          type: boolean
        registry:
          type: string
        started:
          format: date-time
          type: string
        steps:
          items:
            $ref: '#/components/schemas/api.migrationStep'
          type: array
        total:
          format: int64
          type: integer
      required:
        - done
        - installed
        - registry
        - started
        - total
      type: object
      x-go-type: backend/internal/api.forkliftStockState
    api.migrationStep:
      properties:
        action:
          type: string
        kind:
          type: string
        name:
          type: string
      required:
        - action
        - kind
        - name
      type: object
      x-go-type: backend/internal/api.migrationStep
  securitySchemes:
    sessionCookie:
      description: >-
        The session cookie issued by the OIDC sign-in flow. This is what a
        browser uses.
      in: cookie
      name: k8s-gate-session
      type: apiKey
    bearerToken:
      description: >-
        An API token, minted from your own identity page. A token carries the
        IAM groups you held **when it was minted**, and cannot bypass deletion
        approval — except for guest clusters inside a project that same token
        created.
      scheme: bearer
      type: http

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.