Skip to main content
이제 REST API의 버전이 지정되었습니다. 자세한 내용은 "API 버전 관리 정보"를 참조하세요.

자체 호스트형 실행기에 대한 REST API 엔드포인트

REST API를 사용하여 GitHub Actions에 대한 자체 호스트 실행기와 상호 작용합니다.

GitHub Actions

자체 호스트 실행기 정보

REST API를 사용하여 GitHub Actions에서 자체 호스트 실행기를 등록, 보기 및 삭제할 수 있습니다. 자체 호스트 실행기를 사용하면 사용자 고유의 실행기를 호스트하고 GitHub Actions 워크플로에서 작업을 실행하는 데 사용되는 환경을 사용자 지정할 수 있습니다. 자세한 정보는 "사용자 고유의 실행기 호스팅"을(를) 참조하세요.

List self-hosted runners for an organization

Lists all self-hosted runners configured in an organization.

Authenticated users must have admin access to the organization to use this endpoint.

OAuth app tokens and personal access tokens (classic) need the admin:org scope to use this endpoint. If the repository is private, the repo scope is also required.

"List self-hosted runners for an organization"에 대한 세분화된 액세스 토큰

이 엔드포인트는 다음 토큰 형식에서 작동합니다.:

토큰에 다음 권한 집합이 있어야 합니다.:

  • organization_self_hosted_runners:read

"List self-hosted runners for an organization"에 대한 매개 변수

헤더
이름, Type, 설명
accept string

Setting to application/vnd.github+json is recommended.

경로 매개 변수
이름, Type, 설명
org string Required

The organization name. The name is not case sensitive.

쿼리 매개 변수
이름, Type, 설명
name string

The name of a self-hosted runner.

per_page integer

The number of results per page (max 100). For more information, see "Using pagination in the REST API."

기본값: 30

page integer

The page number of the results to fetch. For more information, see "Using pagination in the REST API."

기본값: 1

"List self-hosted runners for an organization"에 대한 HTTP 응답 상태 코드

상태 코드설명
200

OK

"List self-hosted runners for an organization"에 대한 코드 샘플

요청 예제

get/orgs/{org}/actions/runners
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/orgs/ORG/actions/runners

Response

Status: 200
{ "total_count": 2, "runners": [ { "id": 23, "name": "linux_runner", "os": "linux", "status": "online", "busy": true, "labels": [ { "id": 5, "name": "self-hosted", "type": "read-only" }, { "id": 7, "name": "X64", "type": "read-only" }, { "id": 11, "name": "Linux", "type": "read-only" } ] }, { "id": 24, "name": "mac_runner", "os": "macos", "status": "offline", "busy": false, "labels": [ { "id": 5, "name": "self-hosted", "type": "read-only" }, { "id": 7, "name": "X64", "type": "read-only" }, { "id": 20, "name": "macOS", "type": "read-only" }, { "id": 21, "name": "no-gpu", "type": "custom" } ] } ] }

List runner applications for an organization

Lists binaries for the runner application that you can download and run.

Authenticated users must have admin access to the organization to use this endpoint.

OAuth app tokens and personal access tokens (classic) need the admin:org scope to use this endpoint. If the repository is private, the repo scope is also required.

"List runner applications for an organization"에 대한 세분화된 액세스 토큰

이 엔드포인트는 다음 토큰 형식에서 작동합니다.:

토큰에 다음 권한 집합이 있어야 합니다.:

  • organization_self_hosted_runners:read

"List runner applications for an organization"에 대한 매개 변수

헤더
이름, Type, 설명
accept string

Setting to application/vnd.github+json is recommended.

경로 매개 변수
이름, Type, 설명
org string Required

The organization name. The name is not case sensitive.

"List runner applications for an organization"에 대한 HTTP 응답 상태 코드

상태 코드설명
200

OK

"List runner applications for an organization"에 대한 코드 샘플

요청 예제

get/orgs/{org}/actions/runners/downloads
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/orgs/ORG/actions/runners/downloads

Response

Status: 200
[ { "os": "osx", "architecture": "x64", "download_url": "https://github.com/actions/runner/releases/download/v2.164.0/actions-runner-osx-x64-2.164.0.tar.gz", "filename": "actions-runner-osx-x64-2.164.0.tar.gz" }, { "os": "linux", "architecture": "x64", "download_url": "https://github.com/actions/runner/releases/download/v2.164.0/actions-runner-linux-x64-2.164.0.tar.gz", "filename": "actions-runner-linux-x64-2.164.0.tar.gz" }, { "os": "linux", "architecture": "arm", "download_url": "https://github.com/actions/runner/releases/download/v2.164.0/actions-runner-linux-arm-2.164.0.tar.gz", "filename": "actions-runner-linux-arm-2.164.0.tar.gz" }, { "os": "win", "architecture": "x64", "download_url": "https://github.com/actions/runner/releases/download/v2.164.0/actions-runner-win-x64-2.164.0.zip", "filename": "actions-runner-win-x64-2.164.0.zip" }, { "os": "linux", "architecture": "arm64", "download_url": "https://github.com/actions/runner/releases/download/v2.164.0/actions-runner-linux-arm64-2.164.0.tar.gz", "filename": "actions-runner-linux-arm64-2.164.0.tar.gz" } ]

Create configuration for a just-in-time runner for an organization

Generates a configuration that can be passed to the runner application at startup.

The authenticated user must have admin access to the organization.

OAuth tokens and personal access tokens (classic) need theadmin:org scope to use this endpoint. If the repository is private, OAuth tokens and personal access tokens (classic) need the repo scope to use this endpoint.

"Create configuration for a just-in-time runner for an organization"에 대한 세분화된 액세스 토큰

이 엔드포인트는 다음 토큰 형식에서 작동합니다.:

토큰에 다음 권한 집합이 있어야 합니다.:

  • organization_self_hosted_runners:write

"Create configuration for a just-in-time runner for an organization"에 대한 매개 변수

헤더
이름, Type, 설명
accept string

Setting to application/vnd.github+json is recommended.

경로 매개 변수
이름, Type, 설명
org string Required

The organization name. The name is not case sensitive.

본문 매개 변수
이름, Type, 설명
name string Required

The name of the new runner.

runner_group_id integer Required

The ID of the runner group to register the runner to.

labels array of strings Required

The names of the custom labels to add to the runner. Minimum items: 1. Maximum items: 100.

work_folder string

The working directory to be used for job execution, relative to the runner install directory.

기본값: _work

"Create configuration for a just-in-time runner for an organization"에 대한 HTTP 응답 상태 코드

상태 코드설명
201

Created

404

Resource not found

422

Validation failed, or the endpoint has been spammed.

"Create configuration for a just-in-time runner for an organization"에 대한 코드 샘플

요청 예제

post/orgs/{org}/actions/runners/generate-jitconfig
curl -L \ -X POST \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/orgs/ORG/actions/runners/generate-jitconfig \ -d '{"name":"New runner","runner_group_id":1,"labels":["self-hosted","X64","macOS","no-gpu"],"work_folder":"_work"}'

Response

Status: 201
{ "runner": { "id": 23, "name": "New runner", "os": "unknown", "status": "offline", "busy": false, "labels": [ { "id": 5, "name": "self-hosted", "type": "read-only" }, { "id": 7, "name": "X64", "type": "read-only" }, { "id": 20, "name": "macOS", "type": "read-only" }, { "id": 21, "name": "no-gpu", "type": "custom" } ] }, "encoded_jit_config": "abc123" }

Create a registration token for an organization

Returns a token that you can pass to the config script. The token expires after one hour.

For example, you can replace TOKEN in the following example with the registration token provided by this endpoint to configure your self-hosted runner:

./config.sh --url https://github.com/octo-org --token TOKEN

Authenticated users must have admin access to the organization to use this endpoint.

OAuth tokens and personal access tokens (classic) need theadmin:org scope to use this endpoint. If the repository is private, OAuth tokens and personal access tokens (classic) need the repo scope to use this endpoint.

"Create a registration token for an organization"에 대한 세분화된 액세스 토큰

이 엔드포인트는 다음 토큰 형식에서 작동합니다.:

토큰에 다음 권한 집합이 있어야 합니다.:

  • organization_self_hosted_runners:write

"Create a registration token for an organization"에 대한 매개 변수

헤더
이름, Type, 설명
accept string

Setting to application/vnd.github+json is recommended.

경로 매개 변수
이름, Type, 설명
org string Required

The organization name. The name is not case sensitive.

"Create a registration token for an organization"에 대한 HTTP 응답 상태 코드

상태 코드설명
201

Created

"Create a registration token for an organization"에 대한 코드 샘플

요청 예제

post/orgs/{org}/actions/runners/registration-token
curl -L \ -X POST \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/orgs/ORG/actions/runners/registration-token

Response

Status: 201
{ "token": "LLBF3JGZDX3P5PMEXLND6TS6FCWO6", "expires_at": "2020-01-22T12:13:35.123-08:00" }

Create a remove token for an organization

Returns a token that you can pass to the config script to remove a self-hosted runner from an organization. The token expires after one hour.

For example, you can replace TOKEN in the following example with the registration token provided by this endpoint to remove your self-hosted runner from an organization:

./config.sh remove --token TOKEN

Authenticated users must have admin access to the organization to use this endpoint.

OAuth tokens and personal access tokens (classic) need theadmin:org scope to use this endpoint. If the repository is private, OAuth tokens and personal access tokens (classic) need the repo scope to use this endpoint.

"Create a remove token for an organization"에 대한 세분화된 액세스 토큰

이 엔드포인트는 다음 토큰 형식에서 작동합니다.:

토큰에 다음 권한 집합이 있어야 합니다.:

  • organization_self_hosted_runners:write

"Create a remove token for an organization"에 대한 매개 변수

헤더
이름, Type, 설명
accept string

Setting to application/vnd.github+json is recommended.

경로 매개 변수
이름, Type, 설명
org string Required

The organization name. The name is not case sensitive.

"Create a remove token for an organization"에 대한 HTTP 응답 상태 코드

상태 코드설명
201

Created

"Create a remove token for an organization"에 대한 코드 샘플

요청 예제

post/orgs/{org}/actions/runners/remove-token
curl -L \ -X POST \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/orgs/ORG/actions/runners/remove-token

Response

Status: 201
{ "token": "AABF3JGZDX3P5PMEXLND6TS6FCWO6", "expires_at": "2020-01-29T12:13:35.123-08:00" }

Get a self-hosted runner for an organization

Gets a specific self-hosted runner configured in an organization.

Authenticated users must have admin access to the organization to use this endpoint.

OAuth app tokens and personal access tokens (classic) need the admin:org scope to use this endpoint. If the repository is private, the repo scope is also required.

"Get a self-hosted runner for an organization"에 대한 세분화된 액세스 토큰

이 엔드포인트는 다음 토큰 형식에서 작동합니다.:

토큰에 다음 권한 집합이 있어야 합니다.:

  • organization_self_hosted_runners:read

"Get a self-hosted runner for an organization"에 대한 매개 변수

헤더
이름, Type, 설명
accept string

Setting to application/vnd.github+json is recommended.

경로 매개 변수
이름, Type, 설명
org string Required

The organization name. The name is not case sensitive.

runner_id integer Required

Unique identifier of the self-hosted runner.

"Get a self-hosted runner for an organization"에 대한 HTTP 응답 상태 코드

상태 코드설명
200

OK

"Get a self-hosted runner for an organization"에 대한 코드 샘플

요청 예제

get/orgs/{org}/actions/runners/{runner_id}
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/orgs/ORG/actions/runners/RUNNER_ID

Response

Status: 200
{ "id": 23, "name": "MBP", "os": "macos", "status": "online", "busy": true, "labels": [ { "id": 5, "name": "self-hosted", "type": "read-only" }, { "id": 7, "name": "X64", "type": "read-only" }, { "id": 20, "name": "macOS", "type": "read-only" }, { "id": 21, "name": "no-gpu", "type": "custom" } ] }

Delete a self-hosted runner from an organization

Forces the removal of a self-hosted runner from an organization. You can use this endpoint to completely remove the runner when the machine you were using no longer exists.

Authenticated users must have admin access to the organization to use this endpoint.

OAuth tokens and personal access tokens (classic) need theadmin:org scope to use this endpoint. If the repository is private, OAuth tokens and personal access tokens (classic) need the repo scope to use this endpoint.

"Delete a self-hosted runner from an organization"에 대한 세분화된 액세스 토큰

이 엔드포인트는 다음 토큰 형식에서 작동합니다.:

토큰에 다음 권한 집합이 있어야 합니다.:

  • organization_self_hosted_runners:write

"Delete a self-hosted runner from an organization"에 대한 매개 변수

헤더
이름, Type, 설명
accept string

Setting to application/vnd.github+json is recommended.

경로 매개 변수
이름, Type, 설명
org string Required

The organization name. The name is not case sensitive.

runner_id integer Required

Unique identifier of the self-hosted runner.

"Delete a self-hosted runner from an organization"에 대한 HTTP 응답 상태 코드

상태 코드설명
204

No Content

"Delete a self-hosted runner from an organization"에 대한 코드 샘플

요청 예제

delete/orgs/{org}/actions/runners/{runner_id}
curl -L \ -X DELETE \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/orgs/ORG/actions/runners/RUNNER_ID

Response

Status: 204

List labels for a self-hosted runner for an organization

Lists all labels for a self-hosted runner configured in an organization.

Authenticated users must have admin access to the organization to use this endpoint.

OAuth app tokens and personal access tokens (classic) need the admin:org scope to use this endpoint. If the repository is private, the repo scope is also required.

"List labels for a self-hosted runner for an organization"에 대한 세분화된 액세스 토큰

이 엔드포인트는 다음 토큰 형식에서 작동합니다.:

토큰에 다음 권한 집합이 있어야 합니다.:

  • organization_self_hosted_runners:read

"List labels for a self-hosted runner for an organization"에 대한 매개 변수

헤더
이름, Type, 설명
accept string

Setting to application/vnd.github+json is recommended.

경로 매개 변수
이름, Type, 설명
org string Required

The organization name. The name is not case sensitive.

runner_id integer Required

Unique identifier of the self-hosted runner.

"List labels for a self-hosted runner for an organization"에 대한 HTTP 응답 상태 코드

상태 코드설명
200

OK

404

Resource not found

"List labels for a self-hosted runner for an organization"에 대한 코드 샘플

요청 예제

get/orgs/{org}/actions/runners/{runner_id}/labels
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/orgs/ORG/actions/runners/RUNNER_ID/labels

Response

Status: 200
{ "total_count": 4, "labels": [ { "id": 5, "name": "self-hosted", "type": "read-only" }, { "id": 7, "name": "X64", "type": "read-only" }, { "id": 20, "name": "macOS", "type": "read-only" }, { "id": 21, "name": "no-gpu", "type": "custom" } ] }

Add custom labels to a self-hosted runner for an organization

Adds custom labels to a self-hosted runner configured in an organization.

Authenticated users must have admin access to the organization to use this endpoint.

OAuth tokens and personal access tokens (classic) need the admin:org scope to use this endpoint.

"Add custom labels to a self-hosted runner for an organization"에 대한 세분화된 액세스 토큰

이 엔드포인트는 다음 토큰 형식에서 작동합니다.:

토큰에 다음 권한 집합이 있어야 합니다.:

  • organization_self_hosted_runners:write

"Add custom labels to a self-hosted runner for an organization"에 대한 매개 변수

헤더
이름, Type, 설명
accept string

Setting to application/vnd.github+json is recommended.

경로 매개 변수
이름, Type, 설명
org string Required

The organization name. The name is not case sensitive.

runner_id integer Required

Unique identifier of the self-hosted runner.

본문 매개 변수
이름, Type, 설명
labels array of strings Required

The names of the custom labels to add to the runner.

"Add custom labels to a self-hosted runner for an organization"에 대한 HTTP 응답 상태 코드

상태 코드설명
200

OK

404

Resource not found

422

Validation failed, or the endpoint has been spammed.

"Add custom labels to a self-hosted runner for an organization"에 대한 코드 샘플

요청 예제

post/orgs/{org}/actions/runners/{runner_id}/labels
curl -L \ -X POST \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/orgs/ORG/actions/runners/RUNNER_ID/labels \ -d '{"labels":["gpu","accelerated"]}'

Response

Status: 200
{ "total_count": 4, "labels": [ { "id": 5, "name": "self-hosted", "type": "read-only" }, { "id": 7, "name": "X64", "type": "read-only" }, { "id": 20, "name": "macOS", "type": "read-only" }, { "id": 21, "name": "no-gpu", "type": "custom" } ] }

Set custom labels for a self-hosted runner for an organization

Remove all previous custom labels and set the new custom labels for a specific self-hosted runner configured in an organization.

Authenticated users must have admin access to the organization to use this endpoint.

OAuth app tokens and personal access tokens (classic) need the admin:org scope to use this endpoint. If the repository is private, the repo scope is also required.

"Set custom labels for a self-hosted runner for an organization"에 대한 세분화된 액세스 토큰

이 엔드포인트는 다음 토큰 형식에서 작동합니다.:

토큰에 다음 권한 집합이 있어야 합니다.:

  • organization_self_hosted_runners:write

"Set custom labels for a self-hosted runner for an organization"에 대한 매개 변수

헤더
이름, Type, 설명
accept string

Setting to application/vnd.github+json is recommended.

경로 매개 변수
이름, Type, 설명
org string Required

The organization name. The name is not case sensitive.

runner_id integer Required

Unique identifier of the self-hosted runner.

본문 매개 변수
이름, Type, 설명
labels array of strings Required

The names of the custom labels to set for the runner. You can pass an empty array to remove all custom labels.

"Set custom labels for a self-hosted runner for an organization"에 대한 HTTP 응답 상태 코드

상태 코드설명
200

OK

404

Resource not found

422

Validation failed, or the endpoint has been spammed.

"Set custom labels for a self-hosted runner for an organization"에 대한 코드 샘플

요청 예제

put/orgs/{org}/actions/runners/{runner_id}/labels
curl -L \ -X PUT \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/orgs/ORG/actions/runners/RUNNER_ID/labels \ -d '{"labels":["gpu","accelerated"]}'

Response

Status: 200
{ "total_count": 4, "labels": [ { "id": 5, "name": "self-hosted", "type": "read-only" }, { "id": 7, "name": "X64", "type": "read-only" }, { "id": 20, "name": "macOS", "type": "read-only" }, { "id": 21, "name": "no-gpu", "type": "custom" } ] }

Remove all custom labels from a self-hosted runner for an organization

Remove all custom labels from a self-hosted runner configured in an organization. Returns the remaining read-only labels from the runner.

Authenticated users must have admin access to the organization to use this endpoint.

OAuth app tokens and personal access tokens (classic) need the admin:org scope to use this endpoint. If the repository is private, the repo scope is also required.

"Remove all custom labels from a self-hosted runner for an organization"에 대한 세분화된 액세스 토큰

이 엔드포인트는 다음 토큰 형식에서 작동합니다.:

토큰에 다음 권한 집합이 있어야 합니다.:

  • organization_self_hosted_runners:write

"Remove all custom labels from a self-hosted runner for an organization"에 대한 매개 변수

헤더
이름, Type, 설명
accept string

Setting to application/vnd.github+json is recommended.

경로 매개 변수
이름, Type, 설명
org string Required

The organization name. The name is not case sensitive.

runner_id integer Required

Unique identifier of the self-hosted runner.

"Remove all custom labels from a self-hosted runner for an organization"에 대한 HTTP 응답 상태 코드

상태 코드설명
200

OK

404

Resource not found

"Remove all custom labels from a self-hosted runner for an organization"에 대한 코드 샘플

요청 예제

delete/orgs/{org}/actions/runners/{runner_id}/labels
curl -L \ -X DELETE \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/orgs/ORG/actions/runners/RUNNER_ID/labels

Response

Status: 200
{ "total_count": 3, "labels": [ { "id": 5, "name": "self-hosted", "type": "read-only" }, { "id": 7, "name": "X64", "type": "read-only" }, { "id": 20, "name": "macOS", "type": "read-only" } ] }

Remove a custom label from a self-hosted runner for an organization

Remove a custom label from a self-hosted runner configured in an organization. Returns the remaining labels from the runner.

This endpoint returns a 404 Not Found status if the custom label is not present on the runner.

Authenticated users must have admin access to the organization to use this endpoint.

OAuth app tokens and personal access tokens (classic) need the admin:org scope to use this endpoint. If the repository is private, the repo scope is also required.

"Remove a custom label from a self-hosted runner for an organization"에 대한 세분화된 액세스 토큰

이 엔드포인트는 다음 토큰 형식에서 작동합니다.:

토큰에 다음 권한 집합이 있어야 합니다.:

  • organization_self_hosted_runners:write

"Remove a custom label from a self-hosted runner for an organization"에 대한 매개 변수

헤더
이름, Type, 설명
accept string

Setting to application/vnd.github+json is recommended.

경로 매개 변수
이름, Type, 설명
org string Required

The organization name. The name is not case sensitive.

runner_id integer Required

Unique identifier of the self-hosted runner.

name string Required

The name of a self-hosted runner's custom label.

"Remove a custom label from a self-hosted runner for an organization"에 대한 HTTP 응답 상태 코드

상태 코드설명
200

OK

404

Resource not found

422

Validation failed, or the endpoint has been spammed.

"Remove a custom label from a self-hosted runner for an organization"에 대한 코드 샘플

요청 예제

delete/orgs/{org}/actions/runners/{runner_id}/labels/{name}
curl -L \ -X DELETE \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/orgs/ORG/actions/runners/RUNNER_ID/labels/NAME

Response

Status: 200
{ "total_count": 4, "labels": [ { "id": 5, "name": "self-hosted", "type": "read-only" }, { "id": 7, "name": "X64", "type": "read-only" }, { "id": 20, "name": "macOS", "type": "read-only" }, { "id": 21, "name": "no-gpu", "type": "custom" } ] }

List self-hosted runners for a repository

Lists all self-hosted runners configured in a repository.

Authenticated users must have admin access to the repository to use this endpoint.

OAuth app tokens and personal access tokens (classic) need the repo scope to use this endpoint.

"List self-hosted runners for a repository"에 대한 세분화된 액세스 토큰

이 엔드포인트는 다음 토큰 형식에서 작동합니다.:

토큰에 다음 권한 집합이 있어야 합니다.:

  • administration:read

"List self-hosted runners for a repository"에 대한 매개 변수

헤더
이름, Type, 설명
accept string

Setting to application/vnd.github+json is recommended.

경로 매개 변수
이름, Type, 설명
owner string Required

The account owner of the repository. The name is not case sensitive.

repo string Required

The name of the repository without the .git extension. The name is not case sensitive.

쿼리 매개 변수
이름, Type, 설명
name string

The name of a self-hosted runner.

per_page integer

The number of results per page (max 100). For more information, see "Using pagination in the REST API."

기본값: 30

page integer

The page number of the results to fetch. For more information, see "Using pagination in the REST API."

기본값: 1

"List self-hosted runners for a repository"에 대한 HTTP 응답 상태 코드

상태 코드설명
200

OK

"List self-hosted runners for a repository"에 대한 코드 샘플

요청 예제

get/repos/{owner}/{repo}/actions/runners
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/OWNER/REPO/actions/runners

Response

Status: 200
{ "total_count": 2, "runners": [ { "id": 23, "name": "linux_runner", "os": "linux", "status": "online", "busy": true, "labels": [ { "id": 5, "name": "self-hosted", "type": "read-only" }, { "id": 7, "name": "X64", "type": "read-only" }, { "id": 11, "name": "Linux", "type": "read-only" } ] }, { "id": 24, "name": "mac_runner", "os": "macos", "status": "offline", "busy": false, "labels": [ { "id": 5, "name": "self-hosted", "type": "read-only" }, { "id": 7, "name": "X64", "type": "read-only" }, { "id": 20, "name": "macOS", "type": "read-only" }, { "id": 21, "name": "no-gpu", "type": "custom" } ] } ] }

List runner applications for a repository

Lists binaries for the runner application that you can download and run.

Authenticated users must have admin access to the repository to use this endpoint.

OAuth app tokens and personal access tokens (classic) need the repo scope to use this endpoint.

"List runner applications for a repository"에 대한 세분화된 액세스 토큰

이 엔드포인트는 다음 토큰 형식에서 작동합니다.:

토큰에 다음 권한 집합이 있어야 합니다.:

  • administration:read

"List runner applications for a repository"에 대한 매개 변수

헤더
이름, Type, 설명
accept string

Setting to application/vnd.github+json is recommended.

경로 매개 변수
이름, Type, 설명
owner string Required

The account owner of the repository. The name is not case sensitive.

repo string Required

The name of the repository without the .git extension. The name is not case sensitive.

"List runner applications for a repository"에 대한 HTTP 응답 상태 코드

상태 코드설명
200

OK

"List runner applications for a repository"에 대한 코드 샘플

요청 예제

get/repos/{owner}/{repo}/actions/runners/downloads
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/OWNER/REPO/actions/runners/downloads

Response

Status: 200
[ { "os": "osx", "architecture": "x64", "download_url": "https://github.com/actions/runner/releases/download/v2.164.0/actions-runner-osx-x64-2.164.0.tar.gz", "filename": "actions-runner-osx-x64-2.164.0.tar.gz" }, { "os": "linux", "architecture": "x64", "download_url": "https://github.com/actions/runner/releases/download/v2.164.0/actions-runner-linux-x64-2.164.0.tar.gz", "filename": "actions-runner-linux-x64-2.164.0.tar.gz" }, { "os": "linux", "architecture": "arm", "download_url": "https://github.com/actions/runner/releases/download/v2.164.0/actions-runner-linux-arm-2.164.0.tar.gz", "filename": "actions-runner-linux-arm-2.164.0.tar.gz" }, { "os": "win", "architecture": "x64", "download_url": "https://github.com/actions/runner/releases/download/v2.164.0/actions-runner-win-x64-2.164.0.zip", "filename": "actions-runner-win-x64-2.164.0.zip" }, { "os": "linux", "architecture": "arm64", "download_url": "https://github.com/actions/runner/releases/download/v2.164.0/actions-runner-linux-arm64-2.164.0.tar.gz", "filename": "actions-runner-linux-arm64-2.164.0.tar.gz" } ]

Create configuration for a just-in-time runner for a repository

Generates a configuration that can be passed to the runner application at startup.

The authenticated user must have admin access to the repository.

OAuth tokens and personal access tokens (classic) need therepo scope to use this endpoint.

"Create configuration for a just-in-time runner for a repository"에 대한 세분화된 액세스 토큰

이 엔드포인트는 다음 토큰 형식에서 작동합니다.:

토큰에 다음 권한 집합이 있어야 합니다.:

  • administration:write

"Create configuration for a just-in-time runner for a repository"에 대한 매개 변수

헤더
이름, Type, 설명
accept string

Setting to application/vnd.github+json is recommended.

경로 매개 변수
이름, Type, 설명
owner string Required

The account owner of the repository. The name is not case sensitive.

repo string Required

The name of the repository without the .git extension. The name is not case sensitive.

본문 매개 변수
이름, Type, 설명
name string Required

The name of the new runner.

runner_group_id integer Required

The ID of the runner group to register the runner to.

labels array of strings Required

The names of the custom labels to add to the runner. Minimum items: 1. Maximum items: 100.

work_folder string

The working directory to be used for job execution, relative to the runner install directory.

기본값: _work

"Create configuration for a just-in-time runner for a repository"에 대한 HTTP 응답 상태 코드

상태 코드설명
201

Created

404

Resource not found

422

Validation failed, or the endpoint has been spammed.

"Create configuration for a just-in-time runner for a repository"에 대한 코드 샘플

요청 예제

post/repos/{owner}/{repo}/actions/runners/generate-jitconfig
curl -L \ -X POST \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/OWNER/REPO/actions/runners/generate-jitconfig \ -d '{"name":"New runner","runner_group_id":1,"labels":["self-hosted","X64","macOS","no-gpu"],"work_folder":"_work"}'

Response

Status: 201
{ "runner": { "id": 23, "name": "New runner", "os": "unknown", "status": "offline", "busy": false, "labels": [ { "id": 5, "name": "self-hosted", "type": "read-only" }, { "id": 7, "name": "X64", "type": "read-only" }, { "id": 20, "name": "macOS", "type": "read-only" }, { "id": 21, "name": "no-gpu", "type": "custom" } ] }, "encoded_jit_config": "abc123" }

Create a registration token for a repository

Returns a token that you can pass to the config script. The token expires after one hour.

For example, you can replace TOKEN in the following example with the registration token provided by this endpoint to configure your self-hosted runner:

./config.sh --url https://github.com/octo-org --token TOKEN

Authenticated users must have admin access to the repository to use this endpoint.

OAuth tokens and personal access tokens (classic) need the repo scope to use this endpoint.

"Create a registration token for a repository"에 대한 세분화된 액세스 토큰

이 엔드포인트는 다음 토큰 형식에서 작동합니다.:

토큰에 다음 권한 집합이 있어야 합니다.:

  • administration:write

"Create a registration token for a repository"에 대한 매개 변수

헤더
이름, Type, 설명
accept string

Setting to application/vnd.github+json is recommended.

경로 매개 변수
이름, Type, 설명
owner string Required

The account owner of the repository. The name is not case sensitive.

repo string Required

The name of the repository without the .git extension. The name is not case sensitive.

"Create a registration token for a repository"에 대한 HTTP 응답 상태 코드

상태 코드설명
201

Created

"Create a registration token for a repository"에 대한 코드 샘플

요청 예제

post/repos/{owner}/{repo}/actions/runners/registration-token
curl -L \ -X POST \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/OWNER/REPO/actions/runners/registration-token

Response

Status: 201
{ "token": "LLBF3JGZDX3P5PMEXLND6TS6FCWO6", "expires_at": "2020-01-22T12:13:35.123-08:00" }

Create a remove token for a repository

Returns a token that you can pass to the config script to remove a self-hosted runner from an repository. The token expires after one hour.

For example, you can replace TOKEN in the following example with the registration token provided by this endpoint to remove your self-hosted runner from an organization:

./config.sh remove --token TOKEN

Authenticated users must have admin access to the repository to use this endpoint.

OAuth tokens and personal access tokens (classic) need the repo scope to use this endpoint.

"Create a remove token for a repository"에 대한 세분화된 액세스 토큰

이 엔드포인트는 다음 토큰 형식에서 작동합니다.:

토큰에 다음 권한 집합이 있어야 합니다.:

  • administration:write

"Create a remove token for a repository"에 대한 매개 변수

헤더
이름, Type, 설명
accept string

Setting to application/vnd.github+json is recommended.

경로 매개 변수
이름, Type, 설명
owner string Required

The account owner of the repository. The name is not case sensitive.

repo string Required

The name of the repository without the .git extension. The name is not case sensitive.

"Create a remove token for a repository"에 대한 HTTP 응답 상태 코드

상태 코드설명
201

Created

"Create a remove token for a repository"에 대한 코드 샘플

요청 예제

post/repos/{owner}/{repo}/actions/runners/remove-token
curl -L \ -X POST \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/OWNER/REPO/actions/runners/remove-token

Response

Status: 201
{ "token": "AABF3JGZDX3P5PMEXLND6TS6FCWO6", "expires_at": "2020-01-29T12:13:35.123-08:00" }

Get a self-hosted runner for a repository

Gets a specific self-hosted runner configured in a repository.

Authenticated users must have admin access to the repository to use this endpoint.

OAuth app tokens and personal access tokens (classic) need the repo scope to use this endpoint.

"Get a self-hosted runner for a repository"에 대한 세분화된 액세스 토큰

이 엔드포인트는 다음 토큰 형식에서 작동합니다.:

토큰에 다음 권한 집합이 있어야 합니다.:

  • administration:read

"Get a self-hosted runner for a repository"에 대한 매개 변수

헤더
이름, Type, 설명
accept string

Setting to application/vnd.github+json is recommended.

경로 매개 변수
이름, Type, 설명
owner string Required

The account owner of the repository. The name is not case sensitive.

repo string Required

The name of the repository without the .git extension. The name is not case sensitive.

runner_id integer Required

Unique identifier of the self-hosted runner.

"Get a self-hosted runner for a repository"에 대한 HTTP 응답 상태 코드

상태 코드설명
200

OK

"Get a self-hosted runner for a repository"에 대한 코드 샘플

요청 예제

get/repos/{owner}/{repo}/actions/runners/{runner_id}
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/OWNER/REPO/actions/runners/RUNNER_ID

Response

Status: 200
{ "id": 23, "name": "MBP", "os": "macos", "status": "online", "busy": true, "labels": [ { "id": 5, "name": "self-hosted", "type": "read-only" }, { "id": 7, "name": "X64", "type": "read-only" }, { "id": 20, "name": "macOS", "type": "read-only" }, { "id": 21, "name": "no-gpu", "type": "custom" } ] }

Delete a self-hosted runner from a repository

Forces the removal of a self-hosted runner from a repository. You can use this endpoint to completely remove the runner when the machine you were using no longer exists.

Authenticated users must have admin access to the repository to use this endpoint.

OAuth tokens and personal access tokens (classic) need the repo scope to use this endpoint.

"Delete a self-hosted runner from a repository"에 대한 세분화된 액세스 토큰

이 엔드포인트는 다음 토큰 형식에서 작동합니다.:

토큰에 다음 권한 집합이 있어야 합니다.:

  • administration:write

"Delete a self-hosted runner from a repository"에 대한 매개 변수

헤더
이름, Type, 설명
accept string

Setting to application/vnd.github+json is recommended.

경로 매개 변수
이름, Type, 설명
owner string Required

The account owner of the repository. The name is not case sensitive.

repo string Required

The name of the repository without the .git extension. The name is not case sensitive.

runner_id integer Required

Unique identifier of the self-hosted runner.

"Delete a self-hosted runner from a repository"에 대한 HTTP 응답 상태 코드

상태 코드설명
204

No Content

"Delete a self-hosted runner from a repository"에 대한 코드 샘플

요청 예제

delete/repos/{owner}/{repo}/actions/runners/{runner_id}
curl -L \ -X DELETE \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/OWNER/REPO/actions/runners/RUNNER_ID

Response

Status: 204

List labels for a self-hosted runner for a repository

Lists all labels for a self-hosted runner configured in a repository.

Authenticated users must have admin access to the repository to use this endpoint.

OAuth app tokens and personal access tokens (classic) need the repo scope to use this endpoint.

"List labels for a self-hosted runner for a repository"에 대한 세분화된 액세스 토큰

이 엔드포인트는 다음 토큰 형식에서 작동합니다.:

토큰에 다음 권한 집합이 있어야 합니다.:

  • administration:read

"List labels for a self-hosted runner for a repository"에 대한 매개 변수

헤더
이름, Type, 설명
accept string

Setting to application/vnd.github+json is recommended.

경로 매개 변수
이름, Type, 설명
owner string Required

The account owner of the repository. The name is not case sensitive.

repo string Required

The name of the repository without the .git extension. The name is not case sensitive.

runner_id integer Required

Unique identifier of the self-hosted runner.

"List labels for a self-hosted runner for a repository"에 대한 HTTP 응답 상태 코드

상태 코드설명
200

OK

404

Resource not found

"List labels for a self-hosted runner for a repository"에 대한 코드 샘플

요청 예제

get/repos/{owner}/{repo}/actions/runners/{runner_id}/labels
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/OWNER/REPO/actions/runners/RUNNER_ID/labels

Response

Status: 200
{ "total_count": 4, "labels": [ { "id": 5, "name": "self-hosted", "type": "read-only" }, { "id": 7, "name": "X64", "type": "read-only" }, { "id": 20, "name": "macOS", "type": "read-only" }, { "id": 21, "name": "no-gpu", "type": "custom" } ] }

Add custom labels to a self-hosted runner for a repository

Adds custom labels to a self-hosted runner configured in a repository.

Authenticated users must have admin access to the organization to use this endpoint.

OAuth tokens and personal access tokens (classic) need the repo scope to use this endpoint.

"Add custom labels to a self-hosted runner for a repository"에 대한 세분화된 액세스 토큰

이 엔드포인트는 다음 토큰 형식에서 작동합니다.:

토큰에 다음 권한 집합이 있어야 합니다.:

  • administration:write

"Add custom labels to a self-hosted runner for a repository"에 대한 매개 변수

헤더
이름, Type, 설명
accept string

Setting to application/vnd.github+json is recommended.

경로 매개 변수
이름, Type, 설명
owner string Required

The account owner of the repository. The name is not case sensitive.

repo string Required

The name of the repository without the .git extension. The name is not case sensitive.

runner_id integer Required

Unique identifier of the self-hosted runner.

본문 매개 변수
이름, Type, 설명
labels array of strings Required

The names of the custom labels to add to the runner.

"Add custom labels to a self-hosted runner for a repository"에 대한 HTTP 응답 상태 코드

상태 코드설명
200

OK

404

Resource not found

422

Validation failed, or the endpoint has been spammed.

"Add custom labels to a self-hosted runner for a repository"에 대한 코드 샘플

요청 예제

post/repos/{owner}/{repo}/actions/runners/{runner_id}/labels
curl -L \ -X POST \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/OWNER/REPO/actions/runners/RUNNER_ID/labels \ -d '{"labels":["gpu","accelerated"]}'

Response

Status: 200
{ "total_count": 4, "labels": [ { "id": 5, "name": "self-hosted", "type": "read-only" }, { "id": 7, "name": "X64", "type": "read-only" }, { "id": 20, "name": "macOS", "type": "read-only" }, { "id": 21, "name": "no-gpu", "type": "custom" } ] }

Set custom labels for a self-hosted runner for a repository

Remove all previous custom labels and set the new custom labels for a specific self-hosted runner configured in a repository.

Authenticated users must have admin access to the repository to use this endpoint.

OAuth app tokens and personal access tokens (classic) need the repo scope to use this endpoint.

"Set custom labels for a self-hosted runner for a repository"에 대한 세분화된 액세스 토큰

이 엔드포인트는 다음 토큰 형식에서 작동합니다.:

토큰에 다음 권한 집합이 있어야 합니다.:

  • administration:write

"Set custom labels for a self-hosted runner for a repository"에 대한 매개 변수

헤더
이름, Type, 설명
accept string

Setting to application/vnd.github+json is recommended.

경로 매개 변수
이름, Type, 설명
owner string Required

The account owner of the repository. The name is not case sensitive.

repo string Required

The name of the repository without the .git extension. The name is not case sensitive.

runner_id integer Required

Unique identifier of the self-hosted runner.

본문 매개 변수
이름, Type, 설명
labels array of strings Required

The names of the custom labels to set for the runner. You can pass an empty array to remove all custom labels.

"Set custom labels for a self-hosted runner for a repository"에 대한 HTTP 응답 상태 코드

상태 코드설명
200

OK

404

Resource not found

422

Validation failed, or the endpoint has been spammed.

"Set custom labels for a self-hosted runner for a repository"에 대한 코드 샘플

요청 예제

put/repos/{owner}/{repo}/actions/runners/{runner_id}/labels
curl -L \ -X PUT \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/OWNER/REPO/actions/runners/RUNNER_ID/labels \ -d '{"labels":["gpu","accelerated"]}'

Response

Status: 200
{ "total_count": 4, "labels": [ { "id": 5, "name": "self-hosted", "type": "read-only" }, { "id": 7, "name": "X64", "type": "read-only" }, { "id": 20, "name": "macOS", "type": "read-only" }, { "id": 21, "name": "no-gpu", "type": "custom" } ] }

Remove all custom labels from a self-hosted runner for a repository

Remove all custom labels from a self-hosted runner configured in a repository. Returns the remaining read-only labels from the runner.

Authenticated users must have admin access to the repository to use this endpoint.

OAuth app tokens and personal access tokens (classic) need the repo scope to use this endpoint.

"Remove all custom labels from a self-hosted runner for a repository"에 대한 세분화된 액세스 토큰

이 엔드포인트는 다음 토큰 형식에서 작동합니다.:

토큰에 다음 권한 집합이 있어야 합니다.:

  • administration:write

"Remove all custom labels from a self-hosted runner for a repository"에 대한 매개 변수

헤더
이름, Type, 설명
accept string

Setting to application/vnd.github+json is recommended.

경로 매개 변수
이름, Type, 설명
owner string Required

The account owner of the repository. The name is not case sensitive.

repo string Required

The name of the repository without the .git extension. The name is not case sensitive.

runner_id integer Required

Unique identifier of the self-hosted runner.

"Remove all custom labels from a self-hosted runner for a repository"에 대한 HTTP 응답 상태 코드

상태 코드설명
200

OK

404

Resource not found

"Remove all custom labels from a self-hosted runner for a repository"에 대한 코드 샘플

요청 예제

delete/repos/{owner}/{repo}/actions/runners/{runner_id}/labels
curl -L \ -X DELETE \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/OWNER/REPO/actions/runners/RUNNER_ID/labels

Response

Status: 200
{ "total_count": 3, "labels": [ { "id": 5, "name": "self-hosted", "type": "read-only" }, { "id": 7, "name": "X64", "type": "read-only" }, { "id": 20, "name": "macOS", "type": "read-only" } ] }

Remove a custom label from a self-hosted runner for a repository

Remove a custom label from a self-hosted runner configured in a repository. Returns the remaining labels from the runner.

This endpoint returns a 404 Not Found status if the custom label is not present on the runner.

Authenticated users must have admin access to the repository to use this endpoint.

OAuth app tokens and personal access tokens (classic) need the repo scope to use this endpoint.

"Remove a custom label from a self-hosted runner for a repository"에 대한 세분화된 액세스 토큰

이 엔드포인트는 다음 토큰 형식에서 작동합니다.:

토큰에 다음 권한 집합이 있어야 합니다.:

  • administration:write

"Remove a custom label from a self-hosted runner for a repository"에 대한 매개 변수

헤더
이름, Type, 설명
accept string

Setting to application/vnd.github+json is recommended.

경로 매개 변수
이름, Type, 설명
owner string Required

The account owner of the repository. The name is not case sensitive.

repo string Required

The name of the repository without the .git extension. The name is not case sensitive.

runner_id integer Required

Unique identifier of the self-hosted runner.

name string Required

The name of a self-hosted runner's custom label.

"Remove a custom label from a self-hosted runner for a repository"에 대한 HTTP 응답 상태 코드

상태 코드설명
200

OK

404

Resource not found

422

Validation failed, or the endpoint has been spammed.

"Remove a custom label from a self-hosted runner for a repository"에 대한 코드 샘플

요청 예제

delete/repos/{owner}/{repo}/actions/runners/{runner_id}/labels/{name}
curl -L \ -X DELETE \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/OWNER/REPO/actions/runners/RUNNER_ID/labels/NAME

Response

Status: 200
{ "total_count": 4, "labels": [ { "id": 5, "name": "self-hosted", "type": "read-only" }, { "id": 7, "name": "X64", "type": "read-only" }, { "id": 20, "name": "macOS", "type": "read-only" }, { "id": 21, "name": "no-gpu", "type": "custom" } ] }