---
title: "List GitHub installations the user can connect (OAuth code exchange)"
method: POST
path: "/v1/orgs/{orgId}/runner-pools/installations"
tags: ["Runners"]
---

# List GitHub installations the user can connect (OAuth code exchange)

`POST /v1/orgs/{orgId}/runner-pools/installations`

## Path parameters

- `orgId` string, required

## Request body

- RunnerInstallationsRequest
  - `code` string, required
  - `state` string

## Response `200`

OK

- RunnerInstallationsResult
  - `installations` RunnerInstallation[], required
    - `account` string, required
    - `accountType` string, required
    - `alreadyConnected` boolean, required
    - `connectGrant` string, required
    - `installationId` integer, required

## Other responses

- `400` — The request is invalid
- `401` — Missing or invalid API key
- `403` — API key lacks the required scope

---

[API](https://skmtc.dev/openrelay/apis/openrelay-api.md) · [All operations](https://skmtc.dev/openrelay/apis/openrelay-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/openrelay/openrelay-api/revisions/3dc47c9667e8/schema)
