GitHub Actions · OpenAPI Overlay 1.0.0
API Evangelist enhancements for GitHub Actions Self-Hosted Runners API
5 actions
5 updates
update
extends
openapi/github-actions-self-hosted-runners-api-openapi.yml
Derived by API Evangelist
Built from the contracts GitHub Actions publishes. GitHub Actions did not publish this file.
What the actions change
x-apievangelist-providerx-apievangelist-artifactsx-github-api-version-headerx-github-default-api-versionx-github-media-typex-idempotencyx-dry-runx-rate-limit-headers
Targets 4
$.info
$.servers[0]
$.components.securitySchemes
$.paths
OpenAPI Overlay
overlay: 1.0.0
info:
title: API Evangelist enhancements for GitHub Actions Self-Hosted Runners API
version: 1.0.1
x-generated: '2026-09-17'
x-method: generated
x-source: >-
Generated from openapi/github-actions-self-hosted-runners-api-openapi.yml plus the artifacts in this repo. Captures the
runtime semantics the OpenAPI does not express — versioning header, media
type, rate-limit and request-id headers, token types, the absence of an
idempotency mechanism, and the reversibility of each write operation. The
original specification is never mutated.
extends: openapi/github-actions-self-hosted-runners-api-openapi.yml
actions:
- target: $.info
update:
x-apievangelist-provider: github-actions
x-apievangelist-artifacts:
conventions: conventions/github-actions-conventions.yml
authentication: authentication/github-actions-authentication.yml
scopes: scopes/github-actions-scopes.yml
errors: errors/github-actions-error-codes.yml
lifecycle: lifecycle/github-actions-lifecycle.yml
rate_limits: rate-limits/github-actions-rate-limits.yml
plans: plans/github-actions-plans-pricing.yml
data_model: data-model/github-actions-data-model.yml
webhooks: asyncapi/github-actions-webhooks.yml
mcp: mcp/github-actions-mcp.yml
tool_crosswalk: mcp/github-actions-tool-crosswalk.yml
skills: skills/_index.yml
- target: $.info
update:
x-github-api-version-header: X-GitHub-Api-Version
x-github-default-api-version: '2022-11-28'
x-github-media-type: application/vnd.github+json
x-idempotency:
supported: false
coverage: none
note: No Idempotency-Key header exists on this API; POST operations are not replay-safe.
x-dry-run:
supported: false
- target: $.servers[0]
update:
x-rate-limit-headers:
- x-ratelimit-limit
- x-ratelimit-remaining
- x-ratelimit-used
- x-ratelimit-reset
- x-ratelimit-resource
x-request-id-header: X-GitHub-Request-Id
x-rate-limit-detail: rate-limits/github-actions-rate-limits.yml
- target: $.components.securitySchemes
update:
x-token-types:
- fine-grained-pat
- classic-pat
- oauth-user-token
- github-app-installation-token
- github-actions-job-token
- target: $.paths
update:
x-reversibility:
deleteSelfHostedRunnerFromRepo:
operation: DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}
reversal: none
window: "none \u2014 requires a fresh registration token and re-running config.sh"
createRegistrationTokenForRepo:
operation: POST /repos/{owner}/{repo}/actions/runners/registration-token
reversal: none
window: "n/a \u2014 mints a short-lived credential; expires in one hour"
createRemoveTokenForRepo:
operation: POST /repos/{owner}/{repo}/actions/runners/remove-token
reversal: none
window: "n/a \u2014 mints a short-lived credential; expires in one hour"
addCustomLabelsToSelfHostedRunnerForRepo:
operation: POST /repos/{owner}/{repo}/actions/runners/{runner_id}/labels
reversal: removeCustomLabelFromSelfHostedRunnerForRepo
window: "unbounded"
setCustomLabelsForSelfHostedRunnerForRepo:
operation: PUT /repos/{owner}/{repo}/actions/runners/{runner_id}/labels
reversal: setCustomLabelsForSelfHostedRunnerForRepo
window: "unbounded \u2014 read listLabelsForSelfHostedRunnerForRepo first or the prior set\ \ is lost"
removeAllCustomLabelsFromSelfHostedRunnerForRepo:
operation: DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels
reversal: setCustomLabelsForSelfHostedRunnerForRepo
window: "unbounded, if the labels were read first"
removeCustomLabelFromSelfHostedRunnerForRepo:
operation: DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels/{name}
reversal: addCustomLabelsToSelfHostedRunnerForRepo
window: "unbounded"
Work with this as data
Every overlay 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 openapi overlays
4 MCP tools reach this
find_overlaysBrowse and filter every overlay in the catalog.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.
Call it yourself
curl for this page
This overlay
curl "https://apis.io/api/v1/overlays/github-actions-self-hosted-runners-api-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
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.