GitHub v3 REST API

Create a remove token for a repository

Returns a token that you can pass to remove a self-hosted runner from a repository. The token expires after one hour.
You must authenticate using an access token with the repo scope to use this endpoint.

Example using remove token

To remove your self-hosted runner from a repository, replace TOKEN with the remove token provided by this endpoint.

./config.sh remove --token TOKEN
post
{protocol}://{hostname}/api/v3/repos/{owner}/{repo}/actions/runners/remove-token

Path Parameters

ownerstringrequired
repostringrequired

Response

201 application/json

Response

Authentication Token

Authentication Token

tokenstringrequired

The token used for authentication

Example:v1.1f699f1069f60xxx

expires_atstring(date-time)required

The time this token expires

Example:2016-07-11T22:14:10Z

permissionsobject

Example:{"issues":"read","deployments":"write"}

repositoriesarray[object]

A git repository

Show Child Parameters
single_filestring | null

Example:config.yaml

repository_selectionstring

Describe whether all repositories have been selected or there’s a selection involved

Allowed values:allselected

post/repos/{owner}/{repo}/actions/runners/remove-token
 
201 application/json

Get a self-hosted runner for a repository

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

You must authenticate using an access token with the repo scope to use this
endpoint.

get
{protocol}://{hostname}/api/v3/repos/{owner}/{repo}/actions/runners/{runner_id}

Path Parameters

ownerstringrequired
repostringrequired
runner_idintegerrequired

Unique identifier of the self-hosted runner.

Response

200 application/json

Response

Self hosted runners

A self hosted runner

idintegerrequired

The id of the runner.

Example:5

namestringrequired

The name of the runner.

Example:iMac

osstringrequired

The Operating System of the runner.

Example:macos

statusstringrequired

The status of the runner.

Example:online

busybooleanrequired
labelsarray[object]required

A label for a self hosted runner

Show Child Parameters
get/repos/{owner}/{repo}/actions/runners/{runner_id}
 
200 application/json

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.

You must authenticate using an access token with the repo
scope to use this endpoint.

delete
{protocol}://{hostname}/api/v3/repos/{owner}/{repo}/actions/runners/{runner_id}

Path Parameters

ownerstringrequired
repostringrequired
runner_idintegerrequired

Unique identifier of the self-hosted runner.

Response

204

Response

delete/repos/{owner}/{repo}/actions/runners/{runner_id}
 
204

List workflow runs for a repository

Lists all workflow runs for a repository. You can use parameters to narrow the list of results. For more information about using parameters, see Parameters.

Anyone with read access to the repository can use this endpoint. If the repository is private you must use an access token with the repo scope. GitHub Apps must have the actions:read permission to use this endpoint.

get
{protocol}://{hostname}/api/v3/repos/{owner}/{repo}/actions/runs

Query Parameters

actorstring

Returns someone’s workflow runs. Use the login for the user who created the push associated with the check suite or workflow run.

branchstring

Returns workflow runs associated with a branch. Use the name of the branch of the push.

eventstring

Returns workflow run triggered by the event you specify. For example, push, pull_request or issue. For more information, see “Events that trigger workflows.”

statusstring

Returns workflow runs with the check run status or conclusion that you specify. For example, a conclusion can be success or a status can be in_progress. Only GitHub can set a status of waiting or requested. For a list of the possible status and conclusion options, see “Create a check run.”

Allowed values:completedaction_requiredcancelledfailureneutralskippedstalesuccesstimed_outin_progressqueuedrequestedwaiting

per_pageinteger

Results per page (max 100)

Default:30

pageinteger

Page number of the results to fetch.

Default:1

createdstring(date-time)

Returns workflow runs created within the given date-time range. For more information on the syntax, see “Understanding the search syntax.”

exclude_pull_requestsboolean

If true pull requests are omitted from the response (empty array).

Default:false

Path Parameters

ownerstringrequired
repostringrequired

Response

200 application/json

Response

total_countintegerrequired
workflow_runsarray[object]required

An invocation of a workflow

Show Child Parameters
get/repos/{owner}/{repo}/actions/runs
 
200 application/json

Get a workflow run

Gets a specific workflow run. Anyone with read access to the repository can use this endpoint. If the repository is private you must use an access token with the repo scope. GitHub Apps must have the actions:read permission to use this endpoint.

get
{protocol}://{hostname}/api/v3/repos/{owner}/{repo}/actions/runs/{run_id}

Query Parameters

exclude_pull_requestsboolean

If true pull requests are omitted from the response (empty array).

Default:false

Path Parameters

ownerstringrequired
repostringrequired
run_idintegerrequired

The id of the workflow run.

Response

200 application/json

Response

Workflow Run

An invocation of a workflow

idintegerrequired

The ID of the workflow run.

Example:5

namestring | null

The name of the workflow run.

Example:Build

node_idstringrequired

Example:MDEwOkNoZWNrU3VpdGU1

check_suite_idinteger

The ID of the associated check suite.

Example:42

check_suite_node_idstring

The node ID of the associated check suite.

Example:MDEwOkNoZWNrU3VpdGU0Mg==

head_branchstring | nullrequired

Example:master

head_shastringrequired

The SHA of the head commit that points to the version of the workflow being run.

Example:009b8a3a9ccbb128af87f9b1c0f4c62e8a304f6d

run_numberintegerrequired

The auto incrementing run number for the workflow run.

Example:106

run_attemptinteger

Attempt number of the run, 1 for first attempt and higher if the workflow was re-run.

Example:1

eventstringrequired

Example:push

statusstring | nullrequired

Example:completed

conclusionstring | nullrequired

Example:neutral

workflow_idintegerrequired

The ID of the parent workflow.

Example:5

urlstringrequired

The URL to the workflow run.

Example:https://api.github.com/repos/github/hello-world/actions/runs/5

html_urlstringrequired

Example:https://github.com/github/hello-world/suites/4

pull_requestsarray | null[object]required
Show Child Parameters
created_atstring(date-time)required
updated_atstring(date-time)required
run_started_atstring(date-time)

The start time of the latest run. Resets on re-run.

jobs_urlstringrequired

The URL to the jobs for the workflow run.

Example:https://api.github.com/repos/github/hello-world/actions/runs/5/jobs

logs_urlstringrequired

The URL to download the logs for the workflow run.

Example:https://api.github.com/repos/github/hello-world/actions/runs/5/logs

check_suite_urlstringrequired

The URL to the associated check suite.

Example:https://api.github.com/repos/github/hello-world/check-suites/12

artifacts_urlstringrequired

The URL to the artifacts for the workflow run.

Example:https://api.github.com/repos/github/hello-world/actions/runs/5/rerun/artifacts

cancel_urlstringrequired

The URL to cancel the workflow run.

Example:https://api.github.com/repos/github/hello-world/actions/runs/5/cancel

rerun_urlstringrequired

The URL to rerun the workflow run.

Example:https://api.github.com/repos/github/hello-world/actions/runs/5/rerun

previous_attempt_urlstring | null

The URL to the previous attempted run of this workflow, if one exists.

Example:https://api.github.com/repos/github/hello-world/actions/runs/5/attempts/3

workflow_urlstringrequired

The URL to the workflow.

Example:https://api.github.com/repos/github/hello-world/actions/workflows/main.yaml

head_commitobject | nullrequired

Simple Commit

Show Child Parameters
repositoryobjectrequired

Minimal Repository

Show Child Parameters
head_repositoryobjectrequired

Minimal Repository

Show Child Parameters
head_repository_idinteger

Example:5

get/repos/{owner}/{repo}/actions/runs/{run_id}
 
200 application/json