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

# Get bastion health

> Bearer PAT authentication; RBAC permission `clusters.read`. Reports the verdict the bastion_health maintenance loop last recorded for the cluster's bastion or gateway host; it never probes the host itself.



## OpenAPI

````yaml https://platform.ankra.app/openapi.json get /api/v1/clusters/upcloud/{cluster_id}/bastion/health
openapi: 3.1.0
info:
  title: FastAPI
  version: 0.1.0
servers:
  - url: https://platform.ankra.app
security: []
paths:
  /api/v1/clusters/upcloud/{cluster_id}/bastion/health:
    get:
      tags:
        - UpCloud Cluster API
      summary: Get bastion health
      description: >-
        Bearer PAT authentication; RBAC permission `clusters.read`. Reports the
        verdict the bastion_health maintenance loop last recorded for the
        cluster's bastion or gateway host; it never probes the host itself.
      operationId: get_bastion_health_upcloud_pat
      parameters:
        - in: path
          name: cluster_id
          required: true
          schema:
            format: uuid
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BastionHealthResponse'
          description: Successful response
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContractDetailError'
          description: Unauthenticated
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContractDetailError'
          description: Permission check failed
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContractDetailError'
          description: Cluster not found, or the cluster has no bastion resource
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
          description: Request validation failed
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContractDetailError'
          description: Provider or internal failure
      security:
        - BearerAuth: []
components:
  schemas:
    BastionHealthResponse:
      properties:
        checked_at:
          description: >-
            Probe timestamp the maintenance loop stamped; empty until the first
            probe.
          type: string
        consecutive_failures:
          description: Failed probes in a row; the offline notification fires at three.
          type: integer
        detail:
          type: string
        diagnose_supported:
          description: >-
            False for providers with no bastion diagnose job lane (Scaleway's
            managed Public Gateway).
          type: boolean
        hop:
          description: Which hop the probe failed at.
          enum:
            - bastion
            - jumphost
            - ''
          type: string
        kind:
          type: string
        provider:
          type: string
        resource_id:
          format: uuid
          type: string
        state:
          description: Empty until the bastion has been probed once.
          enum:
            - healthy
            - offline
            - unknown
            - ''
          type: string
        vm_status:
          description: The provider's own view of the VM, read when SSH failed.
          type: string
      required:
        - resource_id
        - kind
        - provider
        - state
        - hop
        - detail
        - consecutive_failures
        - vm_status
        - checked_at
        - diagnose_supported
      type: object
    ContractDetailError:
      example:
        detail: Cluster not found
      properties:
        detail:
          oneOf:
            - type: string
            - additionalProperties: true
              properties: {}
              type: object
      required:
        - detail
      type: object
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          title: Detail
          type: array
      title: HTTPValidationError
      type: object
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          title: Location
          type: array
        msg:
          title: Message
          type: string
        type:
          title: Error Type
          type: string
      required:
        - loc
        - msg
        - type
      title: ValidationError
      type: object
  securitySchemes:
    BearerAuth:
      bearerFormat: PAT
      scheme: bearer
      type: http

````