GitHub Nodes API

The Nodes API from GitHub — 3 operation(s) for nodes.

Documentation

📖
Documentation
https://docs.github.com/en/rest/apps
📖
Documentation
https://docs.github.com/en/rest/codes-of-conduct/codes-of-conduct
📖
Documentation
https://docs.github.com/en/rest/emojis
📖
Documentation
https://docs.github.com/en/rest/gitignore
📖
Documentation
https://docs.github.com/en/rest/apps/installations
📖
Documentation
https://docs.github.com/en/rest/enterprise-admin
📖
Documentation
https://docs.github.com/en/rest/activity/events
📖
Documentation
https://docs.github.com/en/rest/orgs
📖
Documentation
https://docs.github.com/en/rest/rate-limit
📖
Documentation
https://docs.github.com/en/enterprise-cloud@latest/rest/scim
📖
Documentation
https://docs.github.com/en/rest/using-the-rest-api/getting-started-with-the-rest-api
📖
Documentation
https://docs.github.com/en/rest/teams
📖
Documentation
https://docs.github.com/en/rest/meta/meta
📖
Documentation
https://docs.github.com/en/rest/actions
📖
Documentation
https://docs.github.com/en/rest/branches
📖
Documentation
https://docs.github.com/en/rest/code-scanning
📖
Documentation
https://docs.github.com/en/rest/collaborators
📖
Documentation
https://docs.github.com/en/rest/dependabot
📖
Documentation
https://docs.github.com/en/rest/webhooks
📖
Documentation
https://docs.github.com/en/rest/pulls
📖
Documentation
https://docs.github.com/en/rest/git/tags
📖
Documentation
https://docs.github.com/en/rest/repos/autolinks
📖
Documentation
https://docs.github.com/en/rest/collaborators/invitations

Specifications

Other Resources

OpenAPI Specification

github-nodes-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: 1.1.4
  title: GitHub Manage Nodes API
  description: Needs description.
  license:
    name: MIT
    url: https://spdx.org/licenses/MIT
  termsOfService: https://docs.github.com/articles/github-terms-of-service
  contact:
    name: Support
    url: https://support.github.com/contact?tags=dotcom-rest-api
  x-github-plan: ghes
  x-github-release: 3.9
servers:
- url: '{protocol}://{hostname}/api/v3'
  variables:
    hostname:
      description: Self-hosted Enterprise Server hostname
      default: HOSTNAME
    protocol:
      description: Self-hosted Enterprise Server protocol
      default: http
tags:
- name: Nodes
paths:
  /manage/v1/config/nodes:
    get:
      summary: GitHub Get Ghes Node Metadata for All Nodes
      description: Get node metadata for all configured nodes in the current cluster. For more information, see "[About clustering](https://docs.github.com/enterprise-server@3.9/admin/enterprise-management/configuring-clustering/about-clustering)."
      operationId: getGhesNodeMetadataForAllNodes
      tags:
      - Nodes
      externalDocs:
        description: API method documentation
        url: https://docs.github.com/enterprise-server@3.9/rest/enterprise-admin/manage-ghes#get-ghes-node-metadata-for-all-nodes
      servers:
      - url: '{protocol}://{hostname}'
        variables:
          hostname:
            default: HOSTNAME
            description: Self-hosted Enterprise Server hostname
          protocol:
            default: http
            description: Self-hosted Enterprise Server protocol
      parameters:
      - $ref: '#/components/parameters/uuid'
      - $ref: '#/components/parameters/cluster-roles'
      responses:
        '200':
          description: Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ghes-config-nodes'
              examples:
                default:
                  $ref: '#/components/examples/ghes-config-nodes'
        '401':
          description: Unauthorized
        '500':
          description: Internal error
      x-github:
        githubCloudOnly: false
        enabledForGitHubApps: false
        category: enterprise-admin
        subcategory: manage-ghes
      security:
      - bearerHttpAuthentication: []
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /manage/v1/replication/status:
    get:
      summary: GitHub Get the Status of Services Running on All Replica Nodes
      description: 'Gets the status of all services running on each replica node.

        This endpoint may take several seconds to reply.'
      operationId: getTheStatusOfServicesRunningOnAllReplicaNodes
      tags:
      - Nodes
      externalDocs:
        description: API method documentation
        url: https://docs.github.com/enterprise-server@3.9/rest/enterprise-admin/manage-ghes#get-the-status-of-services-running-on-all-replica-nodes
      servers:
      - url: '{protocol}://{hostname}'
        variables:
          hostname:
            default: HOSTNAME
            description: Self-hosted Enterprise Server hostname
          protocol:
            default: http
            description: Self-hosted Enterprise Server protocol
      parameters:
      - $ref: '#/components/parameters/uuid'
      - $ref: '#/components/parameters/cluster-roles'
      responses:
        '200':
          description: Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ghes-replication-status'
              examples:
                default:
                  $ref: '#/components/examples/ghes-replication-status'
        '401':
          description: Unauthorized
        '500':
          description: Internal error
      x-github:
        githubCloudOnly: false
        enabledForGitHubApps: false
        category: enterprise-admin
        subcategory: manage-ghes
      security:
      - bearerHttpAuthentication: []
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /manage/v1/version:
    get:
      summary: GitHub Get All Ghes Release Versions for All Nodes
      description: Gets the GitHub Enterprise Server release versions that are currently installed on all available nodes. For more information, see "[GitHub Enterprise Server releases](https://docs.github.com/enterprise-server@3.9/admin/all-releases)."
      operationId: getAllGhesReleaseVersionsForAllNodes
      tags:
      - Nodes
      externalDocs:
        description: API method documentation
        url: https://docs.github.com/enterprise-server@3.9/rest/enterprise-admin/manage-ghes#get-all-ghes-release-versions-for-all-nodes
      servers:
      - url: '{protocol}://{hostname}'
        variables:
          hostname:
            default: HOSTNAME
            description: Self-hosted Enterprise Server hostname
          protocol:
            default: http
            description: Self-hosted Enterprise Server protocol
      parameters:
      - $ref: '#/components/parameters/uuid'
      - $ref: '#/components/parameters/cluster-roles'
      responses:
        '200':
          description: Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ghes-version'
              examples:
                default:
                  $ref: '#/components/examples/ghes-version'
        '401':
          description: Unauthorized
        '500':
          description: Internal error
      x-github:
        githubCloudOnly: false
        enabledForGitHubApps: false
        category: enterprise-admin
        subcategory: manage-ghes
      security:
      - bearerHttpAuthentication: []
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
components:
  schemas:
    ghes-replication-status-indicator:
      type: string
      enum:
      - UNKNOWN
      - OK
      - WARNING
      - CRITICAL
    ghes-version:
      type: array
      items:
        type: object
        properties:
          hostname:
            type: string
            format: hostname
          version:
            type: object
            properties:
              version:
                type: string
                pattern: '[0-9]\.[0-9]{2}\.[0-9]'
              platform:
                type: string
                enum:
                - ami
                - azure
                - esx
                - gce
                - hyperv
                - kvm
              build_id:
                type: string
                pattern: '[0-9a-f]{8}'
              build_date:
                type: string
                format: date
    ghes-replication-status:
      type: object
      properties:
        status:
          $ref: '#/components/schemas/ghes-replication-status-indicator'
        nodes:
          type: array
          items:
            type: object
            properties:
              hostname:
                type: string
              status:
                $ref: '#/components/schemas/ghes-replication-status-indicator'
              services:
                type: array
                items:
                  type: object
                  properties:
                    status:
                      $ref: '#/components/schemas/ghes-replication-status-indicator'
                    name:
                      type: string
                    details:
                      type: string
    ghes-config-nodes:
      type: object
      properties:
        topology:
          $ref: '#/components/schemas/ghes-cluster-topology'
        nodes:
          type: array
          items:
            type: object
            properties:
              hostname:
                type: string
              uuid:
                type: string
              replica:
                type: boolean
              cluster_roles:
                type: array
                items:
                  $ref: '#/components/schemas/ghes-cluster-roles'
    ghes-cluster-topology:
      type: string
      enum:
      - SingleNode
      - Ha
      - Cluster
  parameters:
    cluster-roles:
      name: cluster_roles
      description: The cluster roles from the cluster configuration file.
      in: query
      required: false
      schema:
        type: string
    uuid:
      name: uuid
      description: The UUID which identifies a node.
      in: query
      required: false
      schema:
        type: string
  examples:
    ghes-config-nodes:
      value:
        topology: Cluster
        nodes:
        - hostname: data1
          uuid: 1b6cf518-f97c-11ed-8544-061d81f7eedb
          cluster_roles:
          - ConsulServer
          - ElasticsearchServer
          - GitServer
          - StorageServer
        - hostname: data2
          uuid: 228406d4-f97c-11ed-ab01-062281bbcf03
          cluster_roles:
          - ElasticsearchServer
          - StorageServer
          - PagesServer
    ghes-version:
      value:
      - hostname: ghe-local-primary
        version:
          version: 3.9.0
          platform: azure
          build_id: fc542058b5
          build_date: '2023-05-02'
    ghes-replication-status:
      value:
        status: OK
        nodes:
        - hostname: ghe-local-primary
          status: OK
          services: []
        - hostname: ghe-local-replica
          status: OK
          services:
          - status: OK
            name: redis
            details: replication is in sync
          - status: OK
            name: elasticsearch
            details: cluster is in sync (0 shards initializing, 0 shards unassigned)
          - status: OK
            name: git
            details: replication is in sync
          - status: OK
            name: pages
            details: replication is in sync
          - status: OK
            name: alambic
            details: replication is in sync
          - status: OK
            name: git-hooks
            details: replication is in sync
          - status: OK
            name: consul
            details: replication is in sync
          - status: OK
            name: mysql
            details: replication is in sync
  securitySchemes:
    bearerHttpAuthentication:
      description: Bearer Token
      type: http
      scheme: Bearer
externalDocs:
  description: GitHub Enterprise Developer Docs
  url: https://docs.github.com/enterprise-server@3.9/rest/