Gitpod gitpod.v1.IntegrationService API

The gitpod.v1.IntegrationService API from Gitpod — 11 operation(s) for gitpod.v1.integrationservice.

Operations 11

POST /gitpod.v1.IntegrationService/CreateIntegration CreateIntegration #
POST /gitpod.v1.IntegrationService/CreateIntegrationDefinition CreateIntegrationDefinition #
POST /gitpod.v1.IntegrationService/DeleteIntegration DeleteIntegration #
POST /gitpod.v1.IntegrationService/DeleteIntegrationDefinition DeleteIntegrationDefinition #
POST /gitpod.v1.IntegrationService/GetIntegration GetIntegration #
POST /gitpod.v1.IntegrationService/GetIntegrationDefinition GetIntegrationDefinition #
POST /gitpod.v1.IntegrationService/ListIntegrationDefinitions ListIntegrationDefinitions #
POST /gitpod.v1.IntegrationService/ListIntegrations ListIntegrations #
POST /gitpod.v1.IntegrationService/UpdateIntegration UpdateIntegration #
POST /gitpod.v1.IntegrationService/UpdateIntegrationDefinition UpdateIntegrationDefinition #
POST /gitpod.v1.IntegrationService/ValidateIntegration ValidateIntegration #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/gitpod-gitpod-v1-integrationservice-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

gitpod-gitpod-v1-integrationservice-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: gitpod.v1 gitpod.v1.AccountService Gitpod.v1.Integration Service API
  version: v1.0.0
servers:
- url: https://api.gitpod.io
  description: Gitpod API
tags:
- name: gitpod.v1.IntegrationService
  x-displayName: gitpod.v1.IntegrationService
paths:
  /gitpod.v1.IntegrationService/CreateIntegration:
    servers: []
    post:
      description: "Creates a new integration instance within an organization.\n\n Use this method to:\n - Instantiate an integration for an organization\n - Configure integration-specific settings\n - Enable integration capabilities"
      operationId: gitpod.v1.IntegrationService.CreateIntegration
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/gitpod.v1.CreateIntegrationRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gitpod.v1.CreateIntegrationResponse'
          description: Success
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/connect.error'
          description: Error
      security:
      - bearerAuth: []
      summary: CreateIntegration
      tags:
      - gitpod.v1.IntegrationService
  /gitpod.v1.IntegrationService/CreateIntegrationDefinition:
    servers: []
    post:
      description: "Creates a new integration definition.\n Requires service account authentication.\n\n Use this method to:\n - Add new integration types dynamically\n - Configure integration capabilities\n - Set up authentication requirements"
      operationId: gitpod.v1.IntegrationService.CreateIntegrationDefinition
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/gitpod.v1.CreateIntegrationDefinitionRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gitpod.v1.CreateIntegrationDefinitionResponse'
          description: Success
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/connect.error'
          description: Error
      security:
      - bearerAuth: []
      summary: CreateIntegrationDefinition
      tags:
      - gitpod.v1.IntegrationService
  /gitpod.v1.IntegrationService/DeleteIntegration:
    servers: []
    post:
      description: "Deletes an integration instance.\n\n Use this method to:\n - Remove unused integrations\n - Clean up configurations\n - Revoke integration access"
      operationId: gitpod.v1.IntegrationService.DeleteIntegration
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/gitpod.v1.DeleteIntegrationRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gitpod.v1.DeleteIntegrationResponse'
          description: Success
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/connect.error'
          description: Error
      security:
      - bearerAuth: []
      summary: DeleteIntegration
      tags:
      - gitpod.v1.IntegrationService
  /gitpod.v1.IntegrationService/DeleteIntegrationDefinition:
    servers: []
    post:
      description: "Deletes an integration definition.\n Requires service account authentication.\n Fails if any integrations depend on this definition.\n\n Use this method to:\n - Remove unused integration types\n - Clean up deprecated integrations"
      operationId: gitpod.v1.IntegrationService.DeleteIntegrationDefinition
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/gitpod.v1.DeleteIntegrationDefinitionRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gitpod.v1.DeleteIntegrationDefinitionResponse'
          description: Success
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/connect.error'
          description: Error
      security:
      - bearerAuth: []
      summary: DeleteIntegrationDefinition
      tags:
      - gitpod.v1.IntegrationService
  /gitpod.v1.IntegrationService/GetIntegration:
    servers: []
    post:
      description: "Gets details about a specific integration instance.\n\n Use this method to:\n - View integration configuration\n - Check integration status\n - Verify enabled capabilities"
      operationId: gitpod.v1.IntegrationService.GetIntegration
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/gitpod.v1.GetIntegrationRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gitpod.v1.GetIntegrationResponse'
          description: Success
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/connect.error'
          description: Error
      security:
      - bearerAuth: []
      summary: GetIntegration
      tags:
      - gitpod.v1.IntegrationService
  /gitpod.v1.IntegrationService/GetIntegrationDefinition:
    servers: []
    post:
      description: "Gets details about a specific integration definition.\n\n Use this method to:\n - View integration definition configuration\n - Check supported capabilities\n - Verify authentication requirements"
      operationId: gitpod.v1.IntegrationService.GetIntegrationDefinition
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/gitpod.v1.GetIntegrationDefinitionRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gitpod.v1.GetIntegrationDefinitionResponse'
          description: Success
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/connect.error'
          description: Error
      security:
      - bearerAuth: []
      summary: GetIntegrationDefinition
      tags:
      - gitpod.v1.IntegrationService
  /gitpod.v1.IntegrationService/ListIntegrationDefinitions:
    servers: []
    post:
      description: "Lists available integration definitions.\n\n Use this method to:\n - View all available integrations\n - Check integration capabilities\n - Discover supported services"
      operationId: gitpod.v1.IntegrationService.ListIntegrationDefinitions
      parameters:
      - in: query
        name: pageSize
        schema:
          default: 25
          maximum: 100
          minimum: 0
          type: integer
      - in: query
        name: token
        schema:
          default: ''
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/gitpod.v1.ListIntegrationDefinitionsRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gitpod.v1.ListIntegrationDefinitionsResponse'
          description: Success
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/connect.error'
          description: Error
      security:
      - bearerAuth: []
      summary: ListIntegrationDefinitions
      tags:
      - gitpod.v1.IntegrationService
  /gitpod.v1.IntegrationService/ListIntegrations:
    servers: []
    post:
      description: "Lists integration instances for the organization.\n\n Use this method to:\n - View all integrations for an organization\n - Monitor integration configurations"
      operationId: gitpod.v1.IntegrationService.ListIntegrations
      parameters:
      - in: query
        name: pageSize
        schema:
          default: 25
          maximum: 100
          minimum: 0
          type: integer
      - in: query
        name: token
        schema:
          default: ''
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/gitpod.v1.ListIntegrationsRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gitpod.v1.ListIntegrationsResponse'
          description: Success
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/connect.error'
          description: Error
      security:
      - bearerAuth: []
      summary: ListIntegrations
      tags:
      - gitpod.v1.IntegrationService
  /gitpod.v1.IntegrationService/UpdateIntegration:
    servers: []
    post:
      description: "Updates an existing integration instance.\n\n Use this method to:\n - Modify integration settings\n - Enable/disable capabilities\n - Change integration status"
      operationId: gitpod.v1.IntegrationService.UpdateIntegration
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/gitpod.v1.UpdateIntegrationRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gitpod.v1.UpdateIntegrationResponse'
          description: Success
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/connect.error'
          description: Error
      security:
      - bearerAuth: []
      summary: UpdateIntegration
      tags:
      - gitpod.v1.IntegrationService
  /gitpod.v1.IntegrationService/UpdateIntegrationDefinition:
    servers: []
    post:
      description: "Updates an existing integration definition.\n Requires service account authentication.\n\n Use this method to:\n - Modify integration capabilities\n - Update authentication configuration\n - Change integration metadata"
      operationId: gitpod.v1.IntegrationService.UpdateIntegrationDefinition
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/gitpod.v1.UpdateIntegrationDefinitionRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gitpod.v1.UpdateIntegrationDefinitionResponse'
          description: Success
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/connect.error'
          description: Error
      security:
      - bearerAuth: []
      summary: UpdateIntegrationDefinition
      tags:
      - gitpod.v1.IntegrationService
  /gitpod.v1.IntegrationService/ValidateIntegration:
    servers: []
    post:
      description: "Validates an integration's configuration and connectivity.\n\n Runs a set of checks (e.g. app token validity) and returns results for each.\n All checks are always returned; failing checks include a message and an optional action_hint."
      operationId: gitpod.v1.IntegrationService.ValidateIntegration
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/gitpod.v1.ValidateIntegrationRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/gitpod.v1.ValidateIntegrationResponse'
          description: Success
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/connect.error'
          description: Error
      security:
      - bearerAuth: []
      summary: ValidateIntegration
      tags:
      - gitpod.v1.IntegrationService
components:
  schemas:
    gitpod.v1.IntegrationAgentClientCapability:
      additionalProperties: false
      description: "IntegrationAgentClientCapability indicates the integration supports agent client functionality.\n The webhook signing secret is stored in IntegrationProprietaryAppConfig.webhook_secret. Empty - presence of this capability indicates agent client support"
      title: IntegrationAgentClientCapability
      type: object
    gitpod.v1.ValidateIntegrationRequest:
      additionalProperties: false
      properties:
        integrationId:
          minLength: 1
          title: integration_id
          type: string
      title: ValidateIntegrationRequest
      type: object
    gitpod.v1.ListIntegrationsResponse:
      additionalProperties: false
      properties:
        integrations:
          items:
            $ref: '#/components/schemas/gitpod.v1.Integration'
          title: integrations
          type: array
        pagination:
          $ref: '#/components/schemas/gitpod.v1.PaginationResponse'
          title: pagination
      required:
      - pagination
      title: ListIntegrationsResponse
      type: object
    gitpod.v1.IntegrationLoginCapability:
      additionalProperties: false
      description: IntegrationLoginCapability defines login/authentication capability Additional login configuration can be added here
      title: IntegrationLoginCapability
      type: object
    gitpod.v1.ListIntegrationDefinitionsRequest:
      additionalProperties: false
      properties:
        pagination:
          $ref: '#/components/schemas/gitpod.v1.PaginationRequest'
          title: pagination
      title: ListIntegrationDefinitionsRequest
      type: object
    gitpod.v1.DeleteIntegrationRequest:
      additionalProperties: false
      properties:
        id:
          format: uuid
          title: id
          type: string
      title: DeleteIntegrationRequest
      type: object
    gitpod.v1.PaginationResponse:
      additionalProperties: false
      properties:
        nextToken:
          description: "Token passed for retrieving the next set of results. Empty if there are no\n more results"
          title: next_token
          type: string
      title: PaginationResponse
      type: object
    gitpod.v1.ListIntegrationDefinitionsResponse:
      additionalProperties: false
      properties:
        definitions:
          items:
            $ref: '#/components/schemas/gitpod.v1.IntegrationDefinition'
          title: definitions
          type: array
        pagination:
          $ref: '#/components/schemas/gitpod.v1.PaginationResponse'
          title: pagination
      required:
      - pagination
      title: ListIntegrationDefinitionsResponse
      type: object
    gitpod.v1.ValidationCheck.Check:
      enum:
      - CHECK_UNSPECIFIED
      - CHECK_APP_TOKEN
      - CHECK_APP_INSTALLATION
      title: Check
      type: string
    connect.error:
      additionalProperties: true
      description: 'Error type returned by Connect: https://connectrpc.com/docs/go/errors/#http-representation'
      properties:
        code:
          description: The status code, which should be an enum value of [google.rpc.Code][google.rpc.Code].
          enum:
          - canceled
          - unknown
          - invalid_argument
          - deadline_exceeded
          - not_found
          - already_exists
          - permission_denied
          - resource_exhausted
          - failed_precondition
          - aborted
          - out_of_range
          - unimplemented
          - internal
          - unavailable
          - data_loss
          - unauthenticated
          example:
          - not_found
          type: string
        message:
          description: A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the [google.rpc.Status.details][google.rpc.Status.details] field, or localized by the client.
          type: string
      title: Connect Error
      type: object
    gitpod.v1.UpdateIntegrationRequest:
      additionalProperties: false
      properties:
        auth:
          $ref: '#/components/schemas/gitpod.v1.IntegrationAuthentication'
          description: auth defines which authentication methods are enabled for this integration
          title: auth
        capabilities:
          $ref: '#/components/schemas/gitpod.v1.IntegrationCapabilities'
          description: capabilities defines which capabilities are enabled for this integration
          title: capabilities
        enabled:
          description: enabled indicates if this integration is enabled
          title: enabled
          type:
          - boolean
          - 'null'
        host:
          description: host is the hostname for this integration (e.g., "linear.app") - optional, inherits from definition
          title: host
          type:
          - string
          - 'null'
        id:
          format: uuid
          title: id
          type: string
      title: UpdateIntegrationRequest
      type: object
    gitpod.v1.IntegrationMCPCapability:
      additionalProperties: false
      description: IntegrationMCPCapability defines Model Context Protocol capability
      properties:
        url:
          description: url is the remote server URL for the MCP server
          title: url
          type: string
      title: IntegrationMCPCapability
      type: object
    gitpod.v1.IntegrationContextParsingCapability:
      additionalProperties: false
      description: IntegrationContextParsingCapability defines context parsing capability Additional context parsing configuration can be added here
      title: IntegrationContextParsingCapability
      type: object
    gitpod.v1.GetIntegrationRequest:
      additionalProperties: false
      properties:
        id:
          format: uuid
          title: id
          type: string
      title: GetIntegrationRequest
      type: object
    gitpod.v1.ValidateIntegrationResponse:
      additionalProperties: false
      properties:
        checks:
          description: "checks contains the result of every check performed.\n Passing checks have empty message and action_hint."
          items:
            $ref: '#/components/schemas/gitpod.v1.ValidationCheck'
          title: checks
          type: array
        valid:
          description: valid is true when all checks pass (convenience field).
          title: valid
          type: boolean
      title: ValidateIntegrationResponse
      type: object
    gitpod.v1.PaginationRequest:
      additionalProperties: false
      properties:
        pageSize:
          description: "Page size is the maximum number of results to retrieve per page.\n Defaults to 25. Maximum 100."
          format: int32
          maximum: 100
          title: page_size
          type: integer
        token:
          description: "Token for the next set of results that was returned as next_token of a\n PaginationResponse"
          title: token
          type: string
      title: PaginationRequest
      type: object
    gitpod.v1.GetIntegrationResponse:
      additionalProperties: false
      properties:
        integration:
          $ref: '#/components/schemas/gitpod.v1.Integration'
          title: integration
      required:
      - integration
      title: GetIntegrationResponse
      type: object
    gitpod.v1.UpdateIntegrationResponse:
      additionalProperties: false
      properties:
        integration:
          $ref: '#/components/schemas/gitpod.v1.Integration'
          title: integration
      required:
      - integration
      title: UpdateIntegrationResponse
      type: object
    gitpod.v1.IntegrationProprietaryAppConfig:
      additionalProperties: false
      description: "IntegrationProprietaryAppConfig defines proprietary application integration configuration.\n Used for app installations that interact with Ona (e.g., GitHub Apps, Linear agent apps)."
      properties:
        appId:
          description: "app_id is the application identifier assigned by the provider (e.g., GitHub App ID).\n Used to authenticate as the application itself."
          title: app_id
          type: string
        appScopes:
          description: "app_scopes are OAuth scopes to request when using app installation flows.\n If not set, falls back to the standard OAuth scopes."
          items:
            type: string
          title: app_scopes
          type: array
        appSlug:
          description: "app_slug is the URL-friendly identifier assigned by the provider (e.g., GitHub App slug).\n Used to construct installation URLs like https://github.com/apps/{app_slug}/installations/new."
          title: app_slug
          type: string
        authParams:
          additionalProperties:
            title: value
            type: string
          description: "auth_params are additional OAuth authorization parameters to include in the auth URL.\n Example: {\"actor\": \"app\"} for Linear agent installations."
          title: auth_params
          type: object
        clientId:
          description: client_id is the app client ID
          title: client_id
          type: string
        clientSecret:
          description: client_secret is the app client secret
          title: client_secret
          type: string
        privateKey:
          description: "private_key is the PEM-encoded private key used to sign JWTs for app authentication.\n This is sensitive and will be censored in API responses."
          title: private_key
          type: string
        tokenUrl:
          description: "token_url is the OAuth token exchange endpoint for app installation flows.\n If not set, falls back to the standard oauth.token_url.\n Slack requires a different token endpoint for app-level vs user-level flows."
          title: token_url
          type: string
        webhookSecret:
          description: webhook_secret is the secret used to verify webhook signatures from the app provider
          title: webhook_secret
          type: string
      title: IntegrationProprietaryAppConfig
      type: object
    gitpod.v1.CreateIntegrationResponse:
      additionalProperties: false
      properties:
        integration:
          $ref: '#/components/schemas/gitpod.v1.Integration'
          title: integration
      required:
      - integration
      title: CreateIntegrationResponse
      type: object
    gitpod.v1.ValidationCheck:
      additionalProperties: false
      properties:
        actionHint:
          description: "Machine-readable hint the frontend uses to resolve the issue (e.g. \"app_installation_oauth\").\n Empty when the check passes or no automated fix is available."
          title: action_hint
          type: string
        check:
          $ref: '#/components/schemas/gitpod.v1.ValidationCheck.Check'
          description: Which check this result is for.
          title: check
        documentationUrl:
          description: "URL to documentation explaining this check failure and resolution steps.\n Empty when the check passes or no docs exist for this check."
          title: documentation_url
          type: string
        message:
          description: Human-readable description of the problem. Empty when the check passes.
          title: message
          type: string
      title: ValidationCheck
      type: object
    gitpod.v1.CreateIntegrationDefinitionRequest:
      additionalProperties: false
      properties:
        auth:
          $ref: '#/components/schemas/gitpod.v1.IntegrationAuthentication'
          description: auth defines the authentication requirements for this integration
          title: auth
        capabilities:
          $ref: '#/components/schemas/gitpod.v1.IntegrationCapabilities'
          description: capabilities defines what this integration can do
          title: capabilities
        description:
          description: description provides a human-readable description of the integration
          title: description
          type: string
        experimental:
          description: experimental indicates if this integration is experimental and requires feature flag
          title: experimental
          type: boolean
        host:
          description: host is the hostname for this integration (e.g., "linear.app")
          title: host
          type: string
        iconUrl:
          description: icon_url is the URL for this integration's icon
          title: icon_url
          type: string
        name:
          description: name is the human-readable name for this integration type
          minLength: 1
          title: name
          type: string
      title: CreateIntegrationDefinitionRequest
      type: object
    gitpod.v1.CreateIntegrationDefinitionResponse:
      additionalProperties: false
      properties:
        definition:
          $ref: '#/components/schemas/gitpod.v1.IntegrationDefinition'
          title: definition
      required:
      - definition
      title: CreateIntegrationDefinitionResponse
      type: object
    gitpod.v1.UpdateIntegrationDefinitionResponse:
      additionalProperties: false
      properties:
        definition:
          $ref: '#/components/schemas/gitpod.v1.IntegrationDefinition'
          title: definition
      required:
      - definition
      title: UpdateIntegrationDefinitionResponse
      type: object
    gitpod.v1.CreateIntegrationRequest:
      additionalProperties: false
      properties:
        auth:
          $ref: '#/components/schemas/gitpod.v1.IntegrationAuthentication'
          description: auth defines which authentication methods are enabled for this integration
          title: auth
        capabilities:
          $ref: '#/components/schemas/gitpod.v1.IntegrationCapabilities'
          description: capabilities defines which capabilities are enabled for this integration
          title: capabilities
        enabled:
          description: enabled indicates if this integration is enabled
          title: enabled
          type: boolean
        host:
          description: host is the hostname for this integration (e.g., "linear.app") - optional, inherits from definition
          title: host
          type: string
        integrationDefinitionId:
          description: integration_definition_id references the integration definition ID
          minLength: 1
          title: integration_definition_id
          type: string
        runnerId:
          description: runner_id is optional and immutable - if provided, restricts integration to specific runner
          format: uuid
          title: runner_id
          type: string
      title: CreateIntegrationRequest
      type: object
    gitpod.v1.GetIntegrationDefinitionRequest:
      additionalProperties: false
      properties:
        id:
          minLength: 1
          title: id
          type: string
      title: GetIntegrationDefinitionRequest
      type: object
    gitpod.v1.DeleteIntegrationResponse:
      additionalProperties: false
      title: DeleteIntegrationResponse
      type: object
    gitpod.v1.IntegrationDefinition:
      additionalProperties: false
      description: "IntegrationDefinition defines a service that can be integrated with\n (e.g. Linear, GitHub, etc.)"
      properties:
        auth:
          $ref: '#/components/schemas/gitpod.v1.IntegrationAuthentication'
          description: auth defines the authentication requirements for this integration
          title: auth
        capabilities:
          $ref: '#/components/schemas/gitpod.v1.IntegrationCapabilities'
          description: capabilities defines what this integration can do
          title: capabilities
        description:
          description: description provides a human-readable description of the integration
          title: description
          type: string
        experimental:
          description: experimental indicates if this integration is experimental and requires feature flag
          title: experimental
          type: boolean
        host:
          description: host is the hostname for this integration (e.g., "linear.app")
          title: host
          type: string
        iconUrl:
          description: icon_url is the URL for this integration's icon
          title: icon_url
          type: string
        id:
          description: id is the unique identifier for this integration definition
          title: id
          type: string
        name:
          description: name is the human-readable name for this integration type
          title: name
          type: string
      required:
      - id
      - name
      title: IntegrationDefinition
      type: object
    gitpod.v1.Integration:
      additionalProperties: false
      description: Integration represents an instantiated integration within an organization
      properties:
        auth:
          $ref: '#/components/schemas/gitpod.v1.IntegrationAuthentication'
          description: auth defines which authentication methods are enabled for this integration
          title: auth
        capabilities:
          $ref: '#/components/schemas/gitpod.v1.IntegrationCapabilities'
          description: capabilities defines which capabilities are enabled for this integration
          title: capabilities
        enabled:
          description: enabled indicates if this integration is currently enabled
          title: enabled
          type: boolean
        host:
          description: host is the hostname for this integration (e.g., "linear.app") - optional, inherits from definition
          title: host
          type: string
        id:
          description: id is the unique identifier for this integration instance
          title: id
          type: string
        integrationDefinitionId:
          description: integration_definition_id references the integration definition ID
          title: integration_definition_id
          type: string
        organizationId:
          description: organization_id is the organization this integration belongs to
          title: organization_id
          type: string
        runnerId:
          description: runner_id - if set, restricts integration to specific runner
          title: runner_id
          type: string
      required:
      - id
      - organizationId
      - integrationDefinitionId
      title: Integration
      type: object
    gitpod.v1.GetIntegrationDefinitionResponse:
      additionalProperties: false
      properties:
        definition:
          $ref: '#/components/schemas/gitpod.v1.IntegrationDefinition'
          title: definition
      required:
      - definition
      title: GetIntegrationDefinitionResponse
      type: object
    gitpod.v1.IntegrationOAuthConfig:
      additionalProperties: false
      description: IntegrationOAuthConfig defines OAuth-specific configuration
      properties:
        authParams:
          additionalProperties:
            title: value
            type: string
          description: "auth_params are additional query parameters to include in the OAuth\n authorization URL. Use comma-separated values for multi-value params\n (e.g., \"search:read,chat:write\" for Slack's user_scope)."
          title: auth_params
          type: object
        authUrl:
          description: auth_url is the OAuth authorization endpoint URL
          title: auth_url
          type: string
        clientId:
          description: client_id is the OAuth client ID (optional if dynamic_registration is enabled)
          title: client_id
          type: string
        clientSecret:
          description: client_secret is the OAuth client secret (optional for public clients)
          title: client_secret
          type: string
        dynamicRegistration:
          description: "dynamic_registration enables RFC 7591 OAuth 2.0 Dynamic Client Registration.\n When enabled, client credentials are obtained automatically from the authorization\n server's regis

# --- truncated at 32 KB (38 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/gitpod/refs/heads/main/openapi/gitpod-gitpod-v1-integrationservice-api-openapi.yml