워크플로 작업에 대한 REST API 엔드포인트
REST API를 사용하여 GitHub Actions에 대한 워크플로 작업과 상호 작용합니다.
GitHub Actions
워크플로 작업 정보
REST API를 사용하면 GitHub Actions 로그 및 워크플로 작업을 볼 수 있습니다. 워크플로 작업은 동일한 실행기에서 실행되는 단계의 집합입니다. 자세한 정보는 "GitHub Actions에 대한 워크플로 구문"을(를) 참조하세요.
Get a job for a workflow run
Gets a specific job in a workflow run.
Anyone with read access to the repository can use this endpoint.
If the repository is private, OAuth tokens and personal access tokens (classic) need the repo
scope to use this endpoint.
"Get a job for a workflow run"에 대한 세분화된 액세스 토큰
이 엔드포인트는 다음 세분화된 토큰 형식에서 작동합니다.:
세분화된 토큰에는 다음 권한 집합이 있어야 합니다.:
- "Actions" repository permissions (read)
공용 리소스만 요청되는 경우 인증 또는 앞서 언급한 권한 없이 이 엔드포인트를 사용할 수 있습니다.
"Get a job for a workflow run"에 대한 매개 변수
속성, 형식, 설명 |
---|
accept string Setting to |
속성, 형식, 설명 |
---|
owner string RequiredThe account owner of the repository. The name is not case sensitive. |
repo string RequiredThe name of the repository without the |
job_id integer RequiredThe unique identifier of the job. |
"Get a job for a workflow run"에 대한 HTTP 응답 상태 코드
상태 코드 | 설명 |
---|---|
200 | OK |
"Get a job for a workflow run"에 대한 코드 샘플
GHE.com에서 GitHub에 액세스하는 경우 api.github.com
을 api.SUBDOMAIN.ghe.com
의 엔터프라이즈 전용 하위 도메인으로 바꾸세요.
요청 예제
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/jobs/JOB_ID
Response
Status: 200
{
"id": 399444496,
"run_id": 29679449,
"run_url": "https://api.github.com/repos/octo-org/octo-repo/actions/runs/29679449",
"node_id": "MDEyOldvcmtmbG93IEpvYjM5OTQ0NDQ5Ng==",
"head_sha": "f83a356604ae3c5d03e1b46ef4d1ca77d64a90b0",
"url": "https://api.github.com/repos/octo-org/octo-repo/actions/jobs/399444496",
"html_url": "https://github.com/octo-org/octo-repo/runs/29679449/jobs/399444496",
"status": "completed",
"conclusion": "success",
"started_at": "2020-01-20T17:42:40Z",
"completed_at": "2020-01-20T17:44:39Z",
"name": "build",
"steps": [
{
"name": "Set up job",
"status": "completed",
"conclusion": "success",
"number": 1,
"started_at": "2020-01-20T09:42:40.000-08:00",
"completed_at": "2020-01-20T09:42:41.000-08:00"
},
{
"name": "Run actions/checkout@v2",
"status": "completed",
"conclusion": "success",
"number": 2,
"started_at": "2020-01-20T09:42:41.000-08:00",
"completed_at": "2020-01-20T09:42:45.000-08:00"
},
{
"name": "Set up Ruby",
"status": "completed",
"conclusion": "success",
"number": 3,
"started_at": "2020-01-20T09:42:45.000-08:00",
"completed_at": "2020-01-20T09:42:45.000-08:00"
},
{
"name": "Run actions/cache@v3",
"status": "completed",
"conclusion": "success",
"number": 4,
"started_at": "2020-01-20T09:42:45.000-08:00",
"completed_at": "2020-01-20T09:42:48.000-08:00"
},
{
"name": "Install Bundler",
"status": "completed",
"conclusion": "success",
"number": 5,
"started_at": "2020-01-20T09:42:48.000-08:00",
"completed_at": "2020-01-20T09:42:52.000-08:00"
},
{
"name": "Install Gems",
"status": "completed",
"conclusion": "success",
"number": 6,
"started_at": "2020-01-20T09:42:52.000-08:00",
"completed_at": "2020-01-20T09:42:53.000-08:00"
},
{
"name": "Run Tests",
"status": "completed",
"conclusion": "success",
"number": 7,
"started_at": "2020-01-20T09:42:53.000-08:00",
"completed_at": "2020-01-20T09:42:59.000-08:00"
},
{
"name": "Deploy to Heroku",
"status": "completed",
"conclusion": "success",
"number": 8,
"started_at": "2020-01-20T09:42:59.000-08:00",
"completed_at": "2020-01-20T09:44:39.000-08:00"
},
{
"name": "Post actions/cache@v3",
"status": "completed",
"conclusion": "success",
"number": 16,
"started_at": "2020-01-20T09:44:39.000-08:00",
"completed_at": "2020-01-20T09:44:39.000-08:00"
},
{
"name": "Complete job",
"status": "completed",
"conclusion": "success",
"number": 17,
"started_at": "2020-01-20T09:44:39.000-08:00",
"completed_at": "2020-01-20T09:44:39.000-08:00"
}
],
"check_run_url": "https://api.github.com/repos/octo-org/octo-repo/check-runs/399444496",
"labels": [
"self-hosted",
"foo",
"bar"
],
"runner_id": 1,
"runner_name": "my runner",
"runner_group_id": 2,
"runner_group_name": "my runner group",
"workflow_name": "CI",
"head_branch": "main"
}
Download job logs for a workflow run
Gets a redirect URL to download a plain text file of logs for a workflow job. This link expires after 1 minute. Look
for Location:
in the response header to find the URL for the download.
Anyone with read access to the repository can use this endpoint.
If the repository is private, OAuth tokens and personal access tokens (classic) need the repo
scope to use this endpoint.
"Download job logs for a workflow run"에 대한 세분화된 액세스 토큰
이 엔드포인트는 다음 세분화된 토큰 형식에서 작동합니다.:
세분화된 토큰에는 다음 권한 집합이 있어야 합니다.:
- "Actions" repository permissions (read)
공용 리소스만 요청되는 경우 인증 또는 앞서 언급한 권한 없이 이 엔드포인트를 사용할 수 있습니다.
"Download job logs for a workflow run"에 대한 매개 변수
속성, 형식, 설명 |
---|
accept string Setting to |
속성, 형식, 설명 |
---|
owner string RequiredThe account owner of the repository. The name is not case sensitive. |
repo string RequiredThe name of the repository without the |
job_id integer RequiredThe unique identifier of the job. |
"Download job logs for a workflow run"에 대한 HTTP 응답 상태 코드
상태 코드 | 설명 |
---|---|
302 | Found |
"Download job logs for a workflow run"에 대한 코드 샘플
GHE.com에서 GitHub에 액세스하는 경우 api.github.com
을 api.SUBDOMAIN.ghe.com
의 엔터프라이즈 전용 하위 도메인으로 바꾸세요.
요청 예제
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/jobs/JOB_ID/logs
Response
Status: 302
List jobs for a workflow run attempt
Lists jobs for a specific workflow run attempt. 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.
OAuth app tokens and personal access tokens (classic) need the repo
scope to use this endpoint with a private repository.
"List jobs for a workflow run attempt"에 대한 세분화된 액세스 토큰
이 엔드포인트는 다음 세분화된 토큰 형식에서 작동합니다.:
세분화된 토큰에는 다음 권한 집합이 있어야 합니다.:
- "Actions" repository permissions (read)
공용 리소스만 요청되는 경우 인증 또는 앞서 언급한 권한 없이 이 엔드포인트를 사용할 수 있습니다.
"List jobs for a workflow run attempt"에 대한 매개 변수
속성, 형식, 설명 |
---|
accept string Setting to |
속성, 형식, 설명 |
---|
owner string RequiredThe account owner of the repository. The name is not case sensitive. |
repo string RequiredThe name of the repository without the |
run_id integer RequiredThe unique identifier of the workflow run. |
attempt_number integer RequiredThe attempt number of the workflow run. |
속성, 형식, 설명 |
---|
per_page integer The number of results per page (max 100). For more information, see "Using pagination in the REST API." 기본값: |
page integer The page number of the results to fetch. For more information, see "Using pagination in the REST API." 기본값: |
"List jobs for a workflow run attempt"에 대한 HTTP 응답 상태 코드
상태 코드 | 설명 |
---|---|
200 | OK |
404 | Resource not found |
"List jobs for a workflow run attempt"에 대한 코드 샘플
GHE.com에서 GitHub에 액세스하는 경우 api.github.com
을 api.SUBDOMAIN.ghe.com
의 엔터프라이즈 전용 하위 도메인으로 바꾸세요.
요청 예제
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/runs/RUN_ID/attempts/ATTEMPT_NUMBER/jobs
Response
Status: 200
{
"total_count": 1,
"jobs": [
{
"id": 399444496,
"run_id": 29679449,
"run_url": "https://api.github.com/repos/octo-org/octo-repo/actions/runs/29679449",
"node_id": "MDEyOldvcmtmbG93IEpvYjM5OTQ0NDQ5Ng==",
"head_sha": "f83a356604ae3c5d03e1b46ef4d1ca77d64a90b0",
"url": "https://api.github.com/repos/octo-org/octo-repo/actions/jobs/399444496",
"html_url": "https://github.com/octo-org/octo-repo/runs/29679449/jobs/399444496",
"status": "completed",
"conclusion": "success",
"started_at": "2020-01-20T17:42:40Z",
"completed_at": "2020-01-20T17:44:39Z",
"name": "build",
"steps": [
{
"name": "Set up job",
"status": "completed",
"conclusion": "success",
"number": 1,
"started_at": "2020-01-20T09:42:40.000-08:00",
"completed_at": "2020-01-20T09:42:41.000-08:00"
},
{
"name": "Run actions/checkout@v2",
"status": "completed",
"conclusion": "success",
"number": 2,
"started_at": "2020-01-20T09:42:41.000-08:00",
"completed_at": "2020-01-20T09:42:45.000-08:00"
},
{
"name": "Set up Ruby",
"status": "completed",
"conclusion": "success",
"number": 3,
"started_at": "2020-01-20T09:42:45.000-08:00",
"completed_at": "2020-01-20T09:42:45.000-08:00"
},
{
"name": "Run actions/cache@v3",
"status": "completed",
"conclusion": "success",
"number": 4,
"started_at": "2020-01-20T09:42:45.000-08:00",
"completed_at": "2020-01-20T09:42:48.000-08:00"
},
{
"name": "Install Bundler",
"status": "completed",
"conclusion": "success",
"number": 5,
"started_at": "2020-01-20T09:42:48.000-08:00",
"completed_at": "2020-01-20T09:42:52.000-08:00"
},
{
"name": "Install Gems",
"status": "completed",
"conclusion": "success",
"number": 6,
"started_at": "2020-01-20T09:42:52.000-08:00",
"completed_at": "2020-01-20T09:42:53.000-08:00"
},
{
"name": "Run Tests",
"status": "completed",
"conclusion": "success",
"number": 7,
"started_at": "2020-01-20T09:42:53.000-08:00",
"completed_at": "2020-01-20T09:42:59.000-08:00"
},
{
"name": "Deploy to Heroku",
"status": "completed",
"conclusion": "success",
"number": 8,
"started_at": "2020-01-20T09:42:59.000-08:00",
"completed_at": "2020-01-20T09:44:39.000-08:00"
},
{
"name": "Post actions/cache@v3",
"status": "completed",
"conclusion": "success",
"number": 16,
"started_at": "2020-01-20T09:44:39.000-08:00",
"completed_at": "2020-01-20T09:44:39.000-08:00"
},
{
"name": "Complete job",
"status": "completed",
"conclusion": "success",
"number": 17,
"started_at": "2020-01-20T09:44:39.000-08:00",
"completed_at": "2020-01-20T09:44:39.000-08:00"
}
],
"check_run_url": "https://api.github.com/repos/octo-org/octo-repo/check-runs/399444496",
"labels": [
"self-hosted",
"foo",
"bar"
],
"runner_id": 1,
"runner_name": "my runner",
"runner_group_id": 2,
"runner_group_name": "my runner group",
"workflow_name": "CI",
"head_branch": "main"
}
]
}
List jobs for a workflow run
Lists jobs for a workflow run. 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.
OAuth app tokens and personal access tokens (classic) need the repo
scope to use this endpoint with a private repository.
"List jobs for a workflow run"에 대한 세분화된 액세스 토큰
이 엔드포인트는 다음 세분화된 토큰 형식에서 작동합니다.:
세분화된 토큰에는 다음 권한 집합이 있어야 합니다.:
- "Actions" repository permissions (read)
공용 리소스만 요청되는 경우 인증 또는 앞서 언급한 권한 없이 이 엔드포인트를 사용할 수 있습니다.
"List jobs for a workflow run"에 대한 매개 변수
속성, 형식, 설명 |
---|
accept string Setting to |
속성, 형식, 설명 |
---|
owner string RequiredThe account owner of the repository. The name is not case sensitive. |
repo string RequiredThe name of the repository without the |
run_id integer RequiredThe unique identifier of the workflow run. |
속성, 형식, 설명 |
---|
filter string Filters jobs by their 기본값: 다음 중 하나일 수 있습니다.: |
per_page integer The number of results per page (max 100). For more information, see "Using pagination in the REST API." 기본값: |
page integer The page number of the results to fetch. For more information, see "Using pagination in the REST API." 기본값: |
"List jobs for a workflow run"에 대한 HTTP 응답 상태 코드
상태 코드 | 설명 |
---|---|
200 | OK |
"List jobs for a workflow run"에 대한 코드 샘플
GHE.com에서 GitHub에 액세스하는 경우 api.github.com
을 api.SUBDOMAIN.ghe.com
의 엔터프라이즈 전용 하위 도메인으로 바꾸세요.
요청 예제
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/runs/RUN_ID/jobs
Response
Status: 200
{
"total_count": 1,
"jobs": [
{
"id": 399444496,
"run_id": 29679449,
"run_url": "https://api.github.com/repos/octo-org/octo-repo/actions/runs/29679449",
"node_id": "MDEyOldvcmtmbG93IEpvYjM5OTQ0NDQ5Ng==",
"head_sha": "f83a356604ae3c5d03e1b46ef4d1ca77d64a90b0",
"url": "https://api.github.com/repos/octo-org/octo-repo/actions/jobs/399444496",
"html_url": "https://github.com/octo-org/octo-repo/runs/29679449/jobs/399444496",
"status": "completed",
"conclusion": "success",
"started_at": "2020-01-20T17:42:40Z",
"completed_at": "2020-01-20T17:44:39Z",
"name": "build",
"steps": [
{
"name": "Set up job",
"status": "completed",
"conclusion": "success",
"number": 1,
"started_at": "2020-01-20T09:42:40.000-08:00",
"completed_at": "2020-01-20T09:42:41.000-08:00"
},
{
"name": "Run actions/checkout@v2",
"status": "completed",
"conclusion": "success",
"number": 2,
"started_at": "2020-01-20T09:42:41.000-08:00",
"completed_at": "2020-01-20T09:42:45.000-08:00"
},
{
"name": "Set up Ruby",
"status": "completed",
"conclusion": "success",
"number": 3,
"started_at": "2020-01-20T09:42:45.000-08:00",
"completed_at": "2020-01-20T09:42:45.000-08:00"
},
{
"name": "Run actions/cache@v3",
"status": "completed",
"conclusion": "success",
"number": 4,
"started_at": "2020-01-20T09:42:45.000-08:00",
"completed_at": "2020-01-20T09:42:48.000-08:00"
},
{
"name": "Install Bundler",
"status": "completed",
"conclusion": "success",
"number": 5,
"started_at": "2020-01-20T09:42:48.000-08:00",
"completed_at": "2020-01-20T09:42:52.000-08:00"
},
{
"name": "Install Gems",
"status": "completed",
"conclusion": "success",
"number": 6,
"started_at": "2020-01-20T09:42:52.000-08:00",
"completed_at": "2020-01-20T09:42:53.000-08:00"
},
{
"name": "Run Tests",
"status": "completed",
"conclusion": "success",
"number": 7,
"started_at": "2020-01-20T09:42:53.000-08:00",
"completed_at": "2020-01-20T09:42:59.000-08:00"
},
{
"name": "Deploy to Heroku",
"status": "completed",
"conclusion": "success",
"number": 8,
"started_at": "2020-01-20T09:42:59.000-08:00",
"completed_at": "2020-01-20T09:44:39.000-08:00"
},
{
"name": "Post actions/cache@v3",
"status": "completed",
"conclusion": "success",
"number": 16,
"started_at": "2020-01-20T09:44:39.000-08:00",
"completed_at": "2020-01-20T09:44:39.000-08:00"
},
{
"name": "Complete job",
"status": "completed",
"conclusion": "success",
"number": 17,
"started_at": "2020-01-20T09:44:39.000-08:00",
"completed_at": "2020-01-20T09:44:39.000-08:00"
}
],
"check_run_url": "https://api.github.com/repos/octo-org/octo-repo/check-runs/399444496",
"labels": [
"self-hosted",
"foo",
"bar"
],
"runner_id": 1,
"runner_name": "my runner",
"runner_group_id": 2,
"runner_group_name": "my runner group",
"workflow_name": "CI",
"head_branch": "main"
}
]
}