GitHub Actions-Artefakte
Verwende die REST-API, um mit Artefakten in GitHub Actions zu interagieren.
Informationen zu Artefakten in GitHub Actions
Mit der REST-API kannst du Informationen zu Workflowartefakten in GitHub Actions herunterladen, löschen und abrufen. Mit Artefakten kannst du Daten zwischen Aufträgen in einem Workflow teilen und Daten nach Abschluss des Workflows speichern. Weitere Informationen findest du unter Speichern von Workflowdaten als Artefakte.
Diese Endpunkte sind für authentifizierte Benutzer, OAuth Apps und GitHub Apps verfügbar. Zugriffstoken erfordern einen repo-Bereich für private Repositorys und einen public_repo-Bereich für interne Repositorys. GitHub Apps müssen über die Berechtigung actions verfügen, um diese Endpunkte zu verwenden.
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.
Parameter für „List artifacts for a repository“
| Header |
|---|
| Name, type, BESCHREIBUNG |
accept string Setting to |
| Pfadparameter |
| Name, type, BESCHREIBUNG |
owner string ErforderlichThe account owner of the repository. The name is not case sensitive. |
repo string ErforderlichThe name of the repository. The name is not case sensitive. |
| Abfrageparameter |
| Name, type, BESCHREIBUNG |
per_page integer The number of results per page (max 100). Standard: |
page integer Page number of the results to fetch. Standard: |
HTTP-Antwortstatuscodes für „List artifacts for a repository“
| Statuscode | BESCHREIBUNG |
|---|---|
200 | OK |
Codebeispiele für „List artifacts for a repository“
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
https://HOSTNAME/api/v3/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.
Parameter für „Get an artifact“
| Header |
|---|
| Name, type, BESCHREIBUNG |
accept string Setting to |
| Pfadparameter |
| Name, type, BESCHREIBUNG |
owner string ErforderlichThe account owner of the repository. The name is not case sensitive. |
repo string ErforderlichThe name of the repository. The name is not case sensitive. |
artifact_id integer ErforderlichThe unique identifier of the artifact. |
HTTP-Antwortstatuscodes für „Get an artifact“
| Statuscode | BESCHREIBUNG |
|---|---|
200 | OK |
Codebeispiele für „Get an artifact“
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
https://HOSTNAME/api/v3/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.
Parameter für „Delete an artifact“
| Header |
|---|
| Name, type, BESCHREIBUNG |
accept string Setting to |
| Pfadparameter |
| Name, type, BESCHREIBUNG |
owner string ErforderlichThe account owner of the repository. The name is not case sensitive. |
repo string ErforderlichThe name of the repository. The name is not case sensitive. |
artifact_id integer ErforderlichThe unique identifier of the artifact. |
HTTP-Antwortstatuscodes für „Delete an artifact“
| Statuscode | BESCHREIBUNG |
|---|---|
204 | No Content |
Codebeispiele für „Delete an artifact“
curl -L \
-X DELETE \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
https://HOSTNAME/api/v3/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.
Parameter für „Download an artifact“
| Header |
|---|
| Name, type, BESCHREIBUNG |
accept string Setting to |
| Pfadparameter |
| Name, type, BESCHREIBUNG |
owner string ErforderlichThe account owner of the repository. The name is not case sensitive. |
repo string ErforderlichThe name of the repository. The name is not case sensitive. |
artifact_id integer ErforderlichThe unique identifier of the artifact. |
archive_format string Erforderlich |
HTTP-Antwortstatuscodes für „Download an artifact“
| Statuscode | BESCHREIBUNG |
|---|---|
302 | Found |
410 | Gone |
Codebeispiele für „Download an artifact“
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
https://HOSTNAME/api/v3/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.
Parameter für „List workflow run artifacts“
| Header |
|---|
| Name, type, BESCHREIBUNG |
accept string Setting to |
| Pfadparameter |
| Name, type, BESCHREIBUNG |
owner string ErforderlichThe account owner of the repository. The name is not case sensitive. |
repo string ErforderlichThe name of the repository. The name is not case sensitive. |
run_id integer ErforderlichThe unique identifier of the workflow run. |
| Abfrageparameter |
| Name, type, BESCHREIBUNG |
per_page integer The number of results per page (max 100). Standard: |
page integer Page number of the results to fetch. Standard: |
HTTP-Antwortstatuscodes für „List workflow run artifacts“
| Statuscode | BESCHREIBUNG |
|---|---|
200 | OK |
Codebeispiele für „List workflow run artifacts“
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
https://HOSTNAME/api/v3/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"
}
}
]
}