Create a runner pool
Connects a GitHub organization's App installation as a runner pool and starts its subscription. Repeating it returns the pool while it is active or suspended. name defaults to the GitHub owner, poolRamGb to 64 when omitted or 0, and diskSizeGb to 100 when omitted. A payment method must be on file (CARD_REQUIRED), and a personal GitHub account is refused (USER_ACCOUNT_UNSUPPORTED). When the OAuth flow is configured, pass the installation's grant from listRunnerInstallations (GRANT_REQUIRED).
Required permission
Requires the runner.write permission. See Permissions for the roles and API key permissions that include it.
Command line
The orl CLI wraps this endpoint:
orl runners pool create --installation-id <installation-id>apiKeyAuthorizationBearer <token>OpenRelay API key. Send it as Authorization: Bearer or_… (legacy vl_… keys still work).
orgId*stringapplication/json- body
name?stringinstallationId*integerint64githubOwner?stringgithubOwnerType?stringpoolRamGb?integerdiskSizeGb?integergrant?stringThe connectGrant of the chosen installation from listRunnerInstallations. Required when the OAuth flow is configured (getRunnerConnectUrl answers oauth: true).
Created
application/json- response
id*stringorganizationId*stringname*stringgithubInstallationId*integerint64githubOwner*stringgithubOwnerType*stringpoolRamGb*integerdiskSizeGb*integerruntime?stringstatus*stringsubscriptionStatus?stringtrialEndsAt?stringcurrentPeriodEnd?stringcreatedAt*stringupdatedAt*stringcurl -X POST 'https://api.openrelay.inc/v1/orgs/string/runner-pools' \ -H 'Content-Type: application/json' \ -d '{ "installationId": 0}'{ "id": "string", "organizationId": "string", "name": "string", "githubInstallationId": 0, "githubOwner": "string", "githubOwnerType": "string", "poolRamGb": 0, "diskSizeGb": 0, "runtime": "string", "status": "string", "subscriptionStatus": "string", "trialEndsAt": "string", "currentPeriodEnd": "string", "createdAt": "string", "updatedAt": "string"}List runner pools (with active/queued usage) GET
Returns the organization's GitHub runner pools, newest first, with active and queued runner counts and the RAM they hold. Deleted pools are left out.
Get the GitHub connect URL GET
Returns the URL that starts a GitHub connection: the OAuth authorize URL when OAuth is configured, otherwise the GitHub App install URL. installUrl carries the App install URL (empty when no App is configured), for installing the App on another GitHub organization.