Skip to main content

워크플로

워크플로 API를 사용하면 리포지토리에 대한 워크플로를 볼 수 있습니다.

워크플로 API 정보

워크플로 API를 사용하면 리포지토리에 대한 워크플로를 볼 수 있습니다. 워크플로는 다양한 도구와 서비스를 사용하여 소프트웨어 개발 수명 주기를 자동화합니다. 자세한 내용은 “GitHub Actions로 워크플로 자동화”를 참조하세요.

이 API는 인증된 사용자 OAuth Apps 및 GitHub Apps에 사용할 수 있습니다. 액세스 토큰을 사용하려면 프라이빗 리포지토리의 경우 repo 범위가, 퍼블릭 리포지토리의 경우 public_repo 범위가 필요합니다. GitHub Apps에는 이 API를 사용할 수 있는 actions 권한이 있어야 합니다.

List repository workflows

Works with GitHub Apps

Lists the workflows in a repository. 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.

Parameters

Headers
속성, Type, 설명
acceptstring

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

Path parameters
속성, Type, 설명
ownerstringRequired

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

repostringRequired

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

Query parameters
속성, Type, 설명
per_pageinteger

The number of results per page (max 100).

Default: 30

pageinteger

Page number of the results to fetch.

Default: 1

HTTP response status codes

Status codeDescription
200

OK

Code samples

get/repos/{owner}/{repo}/actions/workflows
curl \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/actions/workflows

Response

Status: 200
{ "total_count": 2, "workflows": [ { "id": 161335, "node_id": "MDg6V29ya2Zsb3cxNjEzMzU=", "name": "CI", "path": ".github/workflows/blank.yaml", "state": "active", "created_at": "2020-01-08T23:48:37.000-08:00", "updated_at": "2020-01-08T23:50:21.000-08:00", "url": "https://api.github.com/repos/octo-org/octo-repo/actions/workflows/161335", "html_url": "https://github.com/octo-org/octo-repo/blob/master/.github/workflows/161335", "badge_url": "https://github.com/octo-org/octo-repo/workflows/CI/badge.svg" }, { "id": 269289, "node_id": "MDE4OldvcmtmbG93IFNlY29uZGFyeTI2OTI4OQ==", "name": "Linter", "path": ".github/workflows/linter.yaml", "state": "active", "created_at": "2020-01-08T23:48:37.000-08:00", "updated_at": "2020-01-08T23:50:21.000-08:00", "url": "https://api.github.com/repos/octo-org/octo-repo/actions/workflows/269289", "html_url": "https://github.com/octo-org/octo-repo/blob/master/.github/workflows/269289", "badge_url": "https://github.com/octo-org/octo-repo/workflows/Linter/badge.svg" } ] }

Get a workflow

Works with GitHub Apps

Gets a specific workflow. You can replace workflow_id with the workflow file name. For example, you could use main.yaml. 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.

Parameters

Headers
속성, Type, 설명
acceptstring

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

Path parameters
속성, Type, 설명
ownerstringRequired

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

repostringRequired

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

workflow_idRequired

The ID of the workflow. You can also pass the workflow file name as a string.

HTTP response status codes

Status codeDescription
200

OK

Code samples

get/repos/{owner}/{repo}/actions/workflows/{workflow_id}
curl \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/actions/workflows/WORKFLOW_ID

Response

Status: 200
{ "id": 161335, "node_id": "MDg6V29ya2Zsb3cxNjEzMzU=", "name": "CI", "path": ".github/workflows/blank.yaml", "state": "active", "created_at": "2020-01-08T23:48:37.000-08:00", "updated_at": "2020-01-08T23:50:21.000-08:00", "url": "https://api.github.com/repos/octo-org/octo-repo/actions/workflows/161335", "html_url": "https://github.com/octo-org/octo-repo/blob/master/.github/workflows/161335", "badge_url": "https://github.com/octo-org/octo-repo/workflows/CI/badge.svg" }

Disable a workflow

Works with GitHub Apps

Disables a workflow and sets the state of the workflow to disabled_manually. You can replace workflow_id with the workflow file name. For example, you could use main.yaml.

You must authenticate using an access token with the repo scope to use this endpoint. GitHub Apps must have the actions:write permission to use this endpoint.

Parameters

Headers
속성, Type, 설명
acceptstring

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

Path parameters
속성, Type, 설명
ownerstringRequired

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

repostringRequired

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

workflow_idRequired

The ID of the workflow. You can also pass the workflow file name as a string.

HTTP response status codes

Status codeDescription
204

No Content

Code samples

put/repos/{owner}/{repo}/actions/workflows/{workflow_id}/disable
curl \ -X PUT \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/actions/workflows/WORKFLOW_ID/disable

Response

Status: 204

Create a workflow dispatch event

Works with GitHub Apps

You can use this endpoint to manually trigger a GitHub Actions workflow run. You can replace workflow_id with the workflow file name. For example, you could use main.yaml.

You must configure your GitHub Actions workflow to run when the workflow_dispatch webhook event occurs. The inputs are configured in the workflow file. For more information about how to configure the workflow_dispatch event in the workflow file, see "Events that trigger workflows."

You must authenticate using an access token with the repo scope to use this endpoint. GitHub Apps must have the actions:write permission to use this endpoint. For more information, see "Creating a personal access token for the command line."

Parameters

Headers
속성, Type, 설명
acceptstring

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

Path parameters
속성, Type, 설명
ownerstringRequired

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

repostringRequired

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

workflow_idRequired

The ID of the workflow. You can also pass the workflow file name as a string.

Body parameters
속성, Type, 설명
refstringRequired

The git reference for the workflow. The reference can be a branch or tag name.

inputsobject

Input keys and values configured in the workflow file. The maximum number of properties is 10. Any default properties configured in the workflow file will be used when inputs are omitted.

HTTP response status codes

Status codeDescription
204

No Content

Code samples

post/repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches
curl \ -X POST \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/actions/workflows/WORKFLOW_ID/dispatches \ -d '{"ref":"topic-branch","inputs":{"name":"Mona the Octocat","home":"San Francisco, CA"}}'

Response

Status: 204

Enable a workflow

Works with GitHub Apps

Enables a workflow and sets the state of the workflow to active. You can replace workflow_id with the workflow file name. For example, you could use main.yaml.

You must authenticate using an access token with the repo scope to use this endpoint. GitHub Apps must have the actions:write permission to use this endpoint.

Parameters

Headers
속성, Type, 설명
acceptstring

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

Path parameters
속성, Type, 설명
ownerstringRequired

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

repostringRequired

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

workflow_idRequired

The ID of the workflow. You can also pass the workflow file name as a string.

HTTP response status codes

Status codeDescription
204

No Content

Code samples

put/repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable
curl \ -X PUT \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/actions/workflows/WORKFLOW_ID/enable

Response

Status: 204