Skip to content
Ona Docs

ListSCMIntegrations

POST/gitpod.v1.RunnerConfigurationService/ListSCMIntegrations

Lists SCM integrations for a runner.

Use this method to:

  • View all integrations
  • Monitor integration status
  • Check available SCMs

Examples

  • List integrations:

    Shows all SCM integrations.

    filter:
      runnerIds: ["d2c94c27-3b76-4a42-b88c-95a85e392c68"]
    pagination:
      pageSize: 20
Query ParametersExpand Collapse
token: optional string
pageSize: optional number
maximum100
minimum0
Body ParametersJSONExpand Collapse
filter: optional object { runnerIds }
runnerIds: optional array of string

runner_ids filters the response to only SCM integrations of these Runner IDs

ReturnsExpand Collapse
integrations: optional array of ScmIntegration { id, host, oauth, 4 more }
id: optional string

id is the unique identifier of the SCM integration

host: optional string
oauth: optional ScmIntegrationOAuthConfig { clientId, encryptedClientSecret, issuerUrl }
clientId: optional string

client_id is the OAuth app’s client ID in clear text.

encryptedClientSecret: optional string

encrypted_client_secret is the OAuth app’s secret encrypted with the runner’s public key.

formatbyte
issuerUrl: optional string

issuer_url is used to override the authentication provider URL, if it doesn’t match the SCM host.

+optional if not set, this account is owned by the installation.

pat: optional boolean
runnerId: optional string
scmId: optional string

scm_id references the scm_id in the runner’s configuration schema that this integration is for

virtualDirectory: optional string

virtual_directory is the virtual directory path for Azure DevOps Server (e.g., “/tfs”). This field is only used for Azure DevOps Server SCM integrations and should be empty for other SCM types. Azure DevOps Server APIs work without collection when PAT scope is ‘All accessible organizations’.

ListSCMIntegrations

curl https://app.gitpod.io/api/gitpod.v1.RunnerConfigurationService/ListSCMIntegrations \
    -H 'Content-Type: application/json' \
    -H "Authorization: Bearer $GITPOD_API_KEY" \
    -d '{}'
{
  "integrations": [
    {
      "id": "id",
      "host": "host",
      "oauth": {
        "clientId": "clientId",
        "encryptedClientSecret": "U3RhaW5sZXNzIHJvY2tz",
        "issuerUrl": "issuerUrl"
      },
      "pat": true,
      "runnerId": "runnerId",
      "scmId": "scmId",
      "virtualDirectory": "virtualDirectory"
    }
  ],
  "pagination": {
    "nextToken": "nextToken"
  }
}
Returns Examples
{
  "integrations": [
    {
      "id": "id",
      "host": "host",
      "oauth": {
        "clientId": "clientId",
        "encryptedClientSecret": "U3RhaW5sZXNzIHJvY2tz",
        "issuerUrl": "issuerUrl"
      },
      "pat": true,
      "runnerId": "runnerId",
      "scmId": "scmId",
      "virtualDirectory": "virtualDirectory"
    }
  ],
  "pagination": {
    "nextToken": "nextToken"
  }
}