Service Fabric Cluster API

Cluster-level operations and configuration

OpenAPI Specification

service-fabric-cluster-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Service Fabric Management Applications Cluster API
  description: The Service Fabric REST API enables cluster management, application lifecycle, service management, and health monitoring for Azure Service Fabric clusters. The API is served by the HTTP gateway running on each cluster node.
  version: '9.1'
  contact:
    name: Azure Service Fabric Documentation
    url: https://docs.microsoft.com/en-us/azure/service-fabric/
  license:
    name: MIT
    url: https://github.com/microsoft/service-fabric/blob/master/LICENSE
servers:
- url: http://{cluster_endpoint}:19080
  description: Service Fabric HTTP Gateway
  variables:
    cluster_endpoint:
      description: Service Fabric cluster endpoint (FQDN or IP)
      default: localhost
tags:
- name: Cluster
  description: Cluster-level operations and configuration
paths:
  /$/GetClusterHealth:
    get:
      operationId: getClusterHealth
      summary: Get Cluster Health
      description: Returns the health state of the Service Fabric cluster including nodes, applications, and system services.
      tags:
      - Cluster
      parameters:
      - name: api-version
        in: query
        required: true
        schema:
          type: string
          default: '9.1'
        description: Service Fabric API version
      - name: NodesHealthStateFilter
        in: query
        schema:
          type: integer
          default: 0
        description: Health state filter for nodes (0=Default, 1=Ok, 2=Warning, 4=Error, 65535=All)
      - name: ApplicationsHealthStateFilter
        in: query
        schema:
          type: integer
          default: 0
        description: Health state filter for applications
      responses:
        '200':
          description: Cluster health state
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClusterHealth'
        '400':
          description: Invalid parameters
        '500':
          description: Internal cluster error
components:
  schemas:
    ApplicationHealthState:
      type: object
      properties:
        Name:
          type: string
          description: Application URI (e.g., fabric:/MyApp)
        AggregatedHealthState:
          $ref: '#/components/schemas/HealthState'
    NodeHealthState:
      type: object
      properties:
        Name:
          type: string
          description: Node name
        AggregatedHealthState:
          $ref: '#/components/schemas/HealthState'
    HealthState:
      type: string
      enum:
      - Invalid
      - Ok
      - Warning
      - Error
      - Unknown
      description: Service Fabric health state
    ClusterHealth:
      type: object
      properties:
        AggregatedHealthState:
          $ref: '#/components/schemas/HealthState'
        NodeHealthStates:
          type: array
          items:
            $ref: '#/components/schemas/NodeHealthState'
        ApplicationHealthStates:
          type: array
          items:
            $ref: '#/components/schemas/ApplicationHealthState'
        HealthEvents:
          type: array
          items:
            $ref: '#/components/schemas/HealthEvent'
    HealthEvent:
      type: object
      properties:
        SourceId:
          type: string
          description: Source reporting the health event
        Property:
          type: string
          description: Property being reported on
        HealthState:
          $ref: '#/components/schemas/HealthState'
        Description:
          type: string
        TimeToLiveInMilliSeconds:
          type: string
          description: Duration in ISO 8601 format
        SequenceNumber:
          type: string
        IsExpired:
          type: boolean
        SourceUtcTimestamp:
          type: string
          format: date-time
        LastModifiedUtcTimestamp:
          type: string
          format: date-time