apicheats.dev github/llms.txt Raw .md
POST

POST /orgs/{org}/actions/runner-groups — GitHub API

GitHub token (required); https://api.github.com

GitHub API

Create a self-hosted runner group for an organization

Base URL
https://api.github.com
Auth
Authorization: Bearer <GITHUB_API_KEY>
Last verified
2026-10-20 · upstream hash matched
Actions Try in browser→
Agents: curl -H "Accept: text/markdown" this URL
→ 376 tokens · Vary: Accept

Critical gotchas

GitHub recommends an Accept: application/vnd.github+json header and an explicit X-GitHub-Api-Version header.

Fine-grained tokens only authorize repositories and permissions selected when the token is created.

cURL

curl -X POST 'https://api.github.com/orgs/example-org/actions/runner-groups' \  -H "Authorization: Bearer $GITHUB_TOKEN" \  -H 'Accept: application/vnd.github+json' \  -H 'X-GitHub-Api-Version: 2026-03-10' \  -H 'Content-Type: application/json' \  -d '{  "name": "example-name"}'

Parameters

Name In Type Required Description
org path string Yes The organization name. The name is not case sensitive.
name body string Yes Name of the runner group.
visibility body string No Visibility of a runner group. You can select all repositories, select individual repositories, or limit access to private repositories.
selected_repository_ids body integer[] No List of repository IDs that can access the runner group.
runners body integer[] No List of runner IDs to add to the runner group.
allows_public_repositories body boolean No Whether the runner group can be used by `public` repositories.
restricted_to_workflows body boolean No If `true`, the runner group will be restricted to running only the workflows specified in the `selected_workflows` array.
selected_workflows body string[] No List of workflows the runner group should be allowed to run. This setting will be ignored unless `restricted_to_workflows` is set to `true`.
network_configuration_id body string No The identifier of a hosted compute network configuration.

Response 200 OK

{
  "id": 0,
  "name": "string",
  "visibility": "string",
  "default": true,
  "selected_repositories_url": "string",
  "runners_url": "string",
  "hosted_runners_url": "string",
  "network_configuration_id": "string",
  "inherited": true,
  "inherited_allows_public_repositories": true,
  "allows_public_repositories": true,
  "workflow_restrictions_read_only": false,
  "restricted_to_workflows": false,
  "selected_workflows": [
    "octo-org/octo-repo/.github/workflows/deploy.yaml@main"
  ]
}
Get a free GitHub API key → sponsored

Affiliate link - we may earn a commission, at no extra cost to you.