Kong · Schema

GitHubAppInstallationAuth

Defines the GitHub App authorization strategy used by the GitHub integration. This strategy enables secure access to GitHub APIs using app installation tokens. It supports both API-based interactions and real-time event delivery via GitHub webhooks. Unlike standard OAuth flows, this strategy leverages GitHub's custom app installation flow and token lifecycle, making it ideal for deep, organization-level GitHub integration.

API GatewayAI GatewayAI ConnectivityAgent GatewayEvent GatewayMCP RegistryService MeshLLMKafkaKonnectOpen Source

Properties

Name Type Description
type string
config object
View JSON Schema on GitHub

JSON Schema

kong-githubappinstallationauth-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/GitHubAppInstallationAuth",
  "title": "GitHubAppInstallationAuth",
  "description": "Defines the GitHub App authorization strategy used by the GitHub integration.\nThis strategy enables secure access to GitHub APIs using app installation tokens.\nIt supports both API-based interactions and real-time event delivery via GitHub webhooks.\nUnlike standard OAuth flows, this strategy leverages GitHub's custom app installation flow\nand token lifecycle, making it ideal for deep, organization-level GitHub integration.\n",
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "const": "github_app_installation"
    },
    "config": {
      "type": "object",
      "properties": {
        "app_install_url": {
          "type": "object",
          "additionalProperties": false,
          "properties": {
            "url": {
              "description": "The URL where customers are directed to install the GitHub App into their\nGitHub organization.\n",
              "type": "string",
              "format": "uri",
              "example": "https://global.api.konghq.com/service-catalog-integrations/github/app/install"
            }
          },
          "required": [
            "url"
          ]
        },
        "app_manage_url": {
          "type": "object",
          "additionalProperties": false,
          "properties": {
            "url": {
              "description": "The GitHub App management page URL where users can view, configure, or uninstall the app after installation.",
              "type": "string",
              "format": "uri",
              "example": "https://global.api.konghq.com/service-catalog-integrations/github/app/manage"
            }
          },
          "required": [
            "url"
          ]
        },
        "authorize_app_installation_endpoint": {
          "type": "object",
          "additionalProperties": false,
          "properties": {
            "url": {
              "description": "The endpoint used to link a completed GitHub App installation with a customer account in the catalog.\nThis step finalizes the integration by exchanging metadata from the GitHub installation event.\n",
              "type": "string",
              "format": "uri",
              "example": "https://global.api.konghq.com/service-catalog-integrations/github/app/authorize-installation"
            }
          },
          "required": [
            "url"
          ]
        },
        "pending_app_installs_endpoint": {
          "type": "object",
          "additionalProperties": false,
          "properties": {
            "url": {
              "description": "The endpoint used to return a list of in-progress or unlinked GitHub App installations awaiting user confirmation.\n",
              "type": "string",
              "format": "uri",
              "example": "https://global.api.konghq.com/service-catalog-integrations/github/app/pending-installs"
            }
          },
          "required": [
            "url"
          ]
        }
      },
      "required": [
        "app_install_url",
        "app_manage_url",
        "authorize_app_installation_endpoint",
        "pending_app_installs_endpoint"
      ]
    }
  },
  "required": [
    "type",
    "config"
  ]
}