GitHub Actions Artifacts
REST API를 사용하여 GitHub Actions의 아티팩트와 상호 작용합니다.
About artifacts in GitHub Actions
You can use the REST API to download, delete, and retrieve information about workflow artifacts in GitHub Actions. Artifacts enable you to share data between jobs in a workflow and store data once that workflow has completed. For more information, see "Storing workflow data as artifacts."
These endpoints are available for authenticated users, OAuth Apps, and GitHub Apps. Access tokens require repo scope for private repositories and public_repo scope for public repositories. GitHub Apps must have the actions permission to use these endpoints.
List artifacts for a repository
Lists all artifacts for 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.
"List artifacts for a repository"에 대한 매개 변수
| 헤더 |
|---|
| 속성, 형식, Description |
acceptstringSetting to |
| 경로 매개 변수 |
| 속성, 형식, Description |
ownerstring필수The account owner of the repository. The name is not case sensitive. |
repostring필수The name of the repository. The name is not case sensitive. |
| 쿼리 매개 변수 |
| 속성, 형식, Description |
per_pageintegerThe number of results per page (max 100). 기본값: |
pageintegerPage number of the results to fetch. 기본값: |
namestringFilters artifacts by exact match on their name field. |
"List artifacts for a repository"에 대한 HTTP 응답 상태 코드
| 상태 코드 | Description |
|---|---|
200 | OK |
"List artifacts for a repository"에 대한 코드 샘플
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/artifactsResponse
Status: 200{
"total_count": 2,
"artifacts": [
{
"id": 11,
"node_id": "MDg6QXJ0aWZhY3QxMQ==",
"name": "Rails",
"size_in_bytes": 556,
"url": "https://api.github.com/repos/octo-org/octo-docs/actions/artifacts/11",
"archive_download_url": "https://api.github.com/repos/octo-org/octo-docs/actions/artifacts/11/zip",
"expired": false,
"created_at": "2020-01-10T14:59:22Z",
"expires_at": "2020-03-21T14:59:22Z",
"updated_at": "2020-02-21T14:59:22Z",
"workflow_run": {
"id": 2332938,
"repository_id": 1296269,
"head_repository_id": 1296269,
"head_branch": "main",
"head_sha": "328faa0536e6fef19753d9d91dc96a9931694ce3"
}
},
{
"id": 13,
"node_id": "MDg6QXJ0aWZhY3QxMw==",
"name": "Test output",
"size_in_bytes": 453,
"url": "https://api.github.com/repos/octo-org/octo-docs/actions/artifacts/13",
"archive_download_url": "https://api.github.com/repos/octo-org/octo-docs/actions/artifacts/13/zip",
"expired": false,
"created_at": "2020-01-10T14:59:22Z",
"expires_at": "2020-03-21T14:59:22Z",
"updated_at": "2020-02-21T14:59:22Z",
"workflow_run": {
"id": 2332942,
"repository_id": 1296269,
"head_repository_id": 1296269,
"head_branch": "main",
"head_sha": "178f4f6090b3fccad4a65b3e83d076a622d59652"
}
}
]
}Get an artifact
Gets a specific artifact for a 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 an artifact"에 대한 매개 변수
| 헤더 |
|---|
| 속성, 형식, Description |
acceptstringSetting to |
| 경로 매개 변수 |
| 속성, 형식, Description |
ownerstring필수The account owner of the repository. The name is not case sensitive. |
repostring필수The name of the repository. The name is not case sensitive. |
artifact_idinteger필수The unique identifier of the artifact. |
"Get an artifact"에 대한 HTTP 응답 상태 코드
| 상태 코드 | Description |
|---|---|
200 | OK |
"Get an artifact"에 대한 코드 샘플
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/artifacts/ARTIFACT_IDResponse
Status: 200{
"id": 11,
"node_id": "MDg6QXJ0aWZhY3QxMQ==",
"name": "Rails",
"size_in_bytes": 556,
"url": "https://api.github.com/repos/octo-org/octo-docs/actions/artifacts/11",
"archive_download_url": "https://api.github.com/repos/octo-org/octo-docs/actions/artifacts/11/zip",
"expired": false,
"created_at": "2020-01-10T14:59:22Z",
"expires_at": "2020-01-21T14:59:22Z",
"updated_at": "2020-01-21T14:59:22Z",
"workflow_run": {
"id": 2332938,
"repository_id": 1296269,
"head_repository_id": 1296269,
"head_branch": "main",
"head_sha": "328faa0536e6fef19753d9d91dc96a9931694ce3"
}
}Delete an artifact
Deletes an artifact for a workflow run. 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.
"Delete an artifact"에 대한 매개 변수
| 헤더 |
|---|
| 속성, 형식, Description |
acceptstringSetting to |
| 경로 매개 변수 |
| 속성, 형식, Description |
ownerstring필수The account owner of the repository. The name is not case sensitive. |
repostring필수The name of the repository. The name is not case sensitive. |
artifact_idinteger필수The unique identifier of the artifact. |
"Delete an artifact"에 대한 HTTP 응답 상태 코드
| 상태 코드 | Description |
|---|---|
204 | No Content |
"Delete an artifact"에 대한 코드 샘플
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/artifacts/ARTIFACT_IDResponse
Status: 204Download an artifact
Gets a redirect URL to download an archive for a repository. This URL expires after 1 minute. Look for Location: in
the response header to find the URL for the download. The :archive_format must be zip. 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.
"Download an artifact"에 대한 매개 변수
| 헤더 |
|---|
| 속성, 형식, Description |
acceptstringSetting to |
| 경로 매개 변수 |
| 속성, 형식, Description |
ownerstring필수The account owner of the repository. The name is not case sensitive. |
repostring필수The name of the repository. The name is not case sensitive. |
artifact_idinteger필수The unique identifier of the artifact. |
archive_formatstring필수 |
"Download an artifact"에 대한 HTTP 응답 상태 코드
| 상태 코드 | Description |
|---|---|
302 | Found |
410 | Gone |
"Download an artifact"에 대한 코드 샘플
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/artifacts/ARTIFACT_ID/ARCHIVE_FORMATResponse
Status: 302List workflow run artifacts
Lists artifacts for a 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.
"List workflow run artifacts"에 대한 매개 변수
| 헤더 |
|---|
| 속성, 형식, Description |
acceptstringSetting to |
| 경로 매개 변수 |
| 속성, 형식, Description |
ownerstring필수The account owner of the repository. The name is not case sensitive. |
repostring필수The name of the repository. The name is not case sensitive. |
run_idinteger필수The unique identifier of the workflow run. |
| 쿼리 매개 변수 |
| 속성, 형식, Description |
per_pageintegerThe number of results per page (max 100). 기본값: |
pageintegerPage number of the results to fetch. 기본값: |
"List workflow run artifacts"에 대한 HTTP 응답 상태 코드
| 상태 코드 | Description |
|---|---|
200 | OK |
"List workflow run artifacts"에 대한 코드 샘플
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/artifactsResponse
Status: 200{
"total_count": 2,
"artifacts": [
{
"id": 11,
"node_id": "MDg6QXJ0aWZhY3QxMQ==",
"name": "Rails",
"size_in_bytes": 556,
"url": "https://api.github.com/repos/octo-org/octo-docs/actions/artifacts/11",
"archive_download_url": "https://api.github.com/repos/octo-org/octo-docs/actions/artifacts/11/zip",
"expired": false,
"created_at": "2020-01-10T14:59:22Z",
"expires_at": "2020-03-21T14:59:22Z",
"updated_at": "2020-02-21T14:59:22Z",
"workflow_run": {
"id": 2332938,
"repository_id": 1296269,
"head_repository_id": 1296269,
"head_branch": "main",
"head_sha": "328faa0536e6fef19753d9d91dc96a9931694ce3"
}
},
{
"id": 13,
"node_id": "MDg6QXJ0aWZhY3QxMw==",
"name": "Test output",
"size_in_bytes": 453,
"url": "https://api.github.com/repos/octo-org/octo-docs/actions/artifacts/13",
"archive_download_url": "https://api.github.com/repos/octo-org/octo-docs/actions/artifacts/13/zip",
"expired": false,
"created_at": "2020-01-10T14:59:22Z",
"expires_at": "2020-03-21T14:59:22Z",
"updated_at": "2020-02-21T14:59:22Z",
"workflow_run": {
"id": 2332942,
"repository_id": 1296269,
"head_repository_id": 1296269,
"head_branch": "main",
"head_sha": "178f4f6090b3fccad4a65b3e83d076a622d59652"
}
}
]
}