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

# Get the Qovery Operator status for a cluster

> Returns heartbeat freshness and the image, chart, and protocol versions last reported by the running Operator, together with the current bootstrap targets and a stable drift status. A false operator_connected value means that no heartbeat was received within the presence window. The status is a display-version drift verdict, not an immutable release compatibility decision. Cluster viewer permission is sufficient.



## OpenAPI

````yaml /api-reference/openapi.yaml get /organization/{organizationId}/cluster/{clusterId}/operator/status
openapi: 3.0.0
info:
  version: 1.0.4
  title: Qovery API
  description: >
    - Qovery is the fastest way to deploy your full-stack apps on any Cloud
    provider.

    - ℹ️ The API is stable and still in development.
  contact:
    name: Qovery Product Team
    url: https://www.qovery.com
    email: support+api+documentation@qovery.com
  x-logo:
    url: https://console.qovery.com/assets/logos/logo-white.svg
    altText: Qovery
servers:
  - url: https://api.qovery.com
security:
  - bearerAuth: []
  - ApiKeyAuth: []
tags:
  - name: Account
  - name: Account Info
  - name: IPs
  - name: Alert Receivers
  - name: Alert Rules
  - name: Admin
  - name: ArgoCD
  - name: Application
  - name: Application Actions
  - name: Application Configuration
  - name: Application Database
  - name: Application Deployment Restriction
  - name: Application Deployment History
  - name: Application Environment Variable
  - name: Application Logs
  - name: Application Main Calls
  - name: Application Secret
  - name: Application Annotations Group
  - name: Applications
  - name: AutoscalingPolicy
  - name: Container
  - name: Container Actions
  - name: Container Configuration
  - name: Container Database
  - name: Container Deployment History
  - name: Container Environment Variable
  - name: Container Logs
  - name: Container Main Calls
  - name: Container Registry
  - name: Container Secret
  - name: Container Annotations Group
  - name: Containers
  - name: Deployment Stage Main Calls
  - name: Job
  - name: Job Actions
  - name: Job Configuration
  - name: Job Database
  - name: Job Deployment Restriction
  - name: Job Deployment History
  - name: Job Environment Variable
  - name: Job Logs
  - name: Job Main Calls
  - name: Job Registry
  - name: Job Secret
  - name: Job Annotations Group
  - name: Jobs
  - name: KedaTriggerAuthentication
  - name: Helm
  - name: Helm Actions
  - name: Helm Configuration
  - name: Helm Database
  - name: Helm Deployment Restriction
  - name: Helm Deployment History
  - name: Helm Logs
  - name: Helm Main Calls
  - name: Helm Repository
  - name: Helms
  - name: Backups
  - name: Billing
  - name: Blueprint Catalog
  - name: Cloud Provider
  - name: Cloud Provider Credentials
  - name: Clusters
  - name: Cluster Operator
  - name: Platform Configuration
  - name: Custom Domain
  - name: Container Custom Domain
  - name: MCP Servers
  - name: Database
  - name: Database Actions
  - name: Database Application
  - name: Database Container
  - name: Database Deployment History
  - name: Database Main Calls
  - name: Database Annotations Group
  - name: Databases
  - name: Environment
  - name: Environment Actions
  - name: Environment Deployment History
  - name: Environment Deployment Rule
  - name: Environment Logs
  - name: Environment Main Calls
  - name: Environment Secret
  - name: Environment Variable
  - name: Environments
  - name: Git
  - name: Github App
  - name: Git repositories
  - name: Members
  - name: Organization
  - name: Organization Account Git Repositories
  - name: Organization Cluster Lock
  - name: Organization Main Calls
  - name: Organization Custom Role
  - name: Organization Event
  - name: Organization Api Token
  - name: Organization Policy Api Token
  - name: Organization Webhook
  - name: Organization Annotations Group
  - name: Organization Labels Group
  - name: Organization Enterprise Connection
  - name: Project
  - name: Project Deployment Rule
  - name: Project Environment Variable
  - name: Project Main Calls
  - name: Project Secret
  - name: Projects
  - name: Referral & Rewards
  - name: Secret Manager Access
  - name: Terraforms
  - name: Terraform Main Calls
  - name: Terraform Resources
  - name: Terraform Deployment History
  - name: Terraform Deployment Restriction
  - name: Container Registries
  - name: Helm Repositories
  - name: User Sign Up
  - name: Variable Main Calls
  - name: Helm Custom Domain
  - name: Lifecycle Template Main Calls
  - name: Blueprint Main Calls
paths:
  /organization/{organizationId}/cluster/{clusterId}/operator/status:
    get:
      tags:
        - Cluster Operator
      summary: Get the Qovery Operator status for a cluster
      description: >-
        Returns heartbeat freshness and the image, chart, and protocol versions
        last reported by the running Operator, together with the current
        bootstrap targets and a stable drift status. A false operator_connected
        value means that no heartbeat was received within the presence window.
        The status is a display-version drift verdict, not an immutable release
        compatibility decision. Cluster viewer permission is sufficient.
      operationId: getClusterOperatorStatus
      parameters:
        - $ref: '#/components/parameters/organizationId'
        - $ref: '#/components/parameters/clusterId'
      responses:
        '200':
          description: Last reported Qovery Operator status
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClusterOperatorStatusResponse'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          description: >-
            The cluster does not exist or has not been attached to the Operator
            path
components:
  parameters:
    organizationId:
      name: organizationId
      in: path
      description: Organization ID
      required: true
      schema:
        type: string
        format: uuid
    clusterId:
      name: clusterId
      in: path
      description: Cluster ID
      required: true
      schema:
        type: string
        format: uuid
  schemas:
    ClusterOperatorStatusResponse:
      type: object
      required:
        - organization_id
        - cluster_id
        - operator_connected
        - status
      properties:
        organization_id:
          type: string
          format: uuid
        cluster_id:
          type: string
          format: uuid
        operator_connected:
          type: boolean
          description: Whether the last heartbeat is within the Operator presence window.
        last_heartbeat:
          type: string
          format: date-time
          nullable: true
        operator_version:
          type: string
          nullable: true
          description: >-
            Display version reported by the Operator. For the POC
            version-reporting heartbeat, the official chart sets this to the
            exact installed image tag. Legacy Operators can report opaque build
            metadata instead.
        controller_version:
          type: string
          nullable: true
        request_schema_version:
          type: string
          nullable: true
        desired_image_version:
          type: string
          nullable: true
          description: >-
            Image tag currently selected for a newly compiled Operator
            bootstrap.
        desired_chart_version:
          type: string
          nullable: true
          description: >-
            Helm chart version currently selected for a newly compiled Operator
            bootstrap.
        status:
          $ref: '#/components/schemas/ClusterOperatorFleetStatus'
        reported_chart_version:
          type: string
          nullable: true
          description: >-
            Helm chart version reported by the Operator, even without immutable
            identity.
        reported_identity:
          nullable: true
          allOf:
            - $ref: '#/components/schemas/ReportedClusterOperatorIdentity'
    ClusterOperatorFleetStatus:
      type: string
      description: >-
        Stable fleet classification. OUTDATED_IMAGE and OUTDATED_CHART identify
        which globally selected bootstrap target differs from the version
        reported by the running Operator.
      enum:
        - NOT_ATTACHED
        - DISCONNECTED
        - TARGET_UNKNOWN
        - REPORTED_VERSION_UNKNOWN
        - CURRENT
        - OUTDATED_IMAGE
        - OUTDATED_CHART
        - OUTDATED_IMAGE_AND_CHART
    ReportedClusterOperatorIdentity:
      type: object
      required:
        - release_digest
        - runtime_image_id
        - chart_version
      properties:
        release_digest:
          type: string
          description: >-
            Multi-architecture OCI index digest selected for the installed
            release.
          pattern: ^sha256:[0-9a-f]{64}$
        runtime_image_id:
          type: string
          description: OCI image reference resolved by the Kubernetes runtime.
        chart_version:
          type: string
        observed_at:
          type: string
          format: date-time
          nullable: true
  responses:
    '400':
      description: Bad request
    '401':
      description: Access token is missing or invalid
    '403':
      description: Access forbidden
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        JWT tokens should be used with OIDC account (human to machine). JWT
        tokens used by the Qovery console to communicate with the API have a
        TTL. Curl Example ' curl https://console.qovery.com/organization -H
        "Authorization: Bearer $qovery_token" '
    ApiKeyAuth:
      type: apiKey
      in: header
      name: Authorization
      description: >-
        Token API are generated by Qovery to manage machine to machine
        interaction and do not have a TTL. Curl Example ' curl
        https://console.qovery.com/organization -H "Authorization: Token
        $qovery_token" '

````