Skip to content

List artifacts of a workflow run

GET
/repos/{owner}/{repo}/actions/runs/{run_id}/artifacts
owner
required
string

Owner of the repo

repo
required
string

Name of the repo

run_id
required
integer format: int64

ID of the workflow run

name
string

Filter by artifact name

page
integer

Page number of results to return (1-based)

limit
integer

Page size of results, default maximum page size is 50

ActionArtifactList

Media type application/json
Array<object>

ActionArtifact represents an artifact of a workflow run

object
archive_download_url

The URL to download the artifact zip archive

string
created_at
string format: date-time
expired

Whether the artifact has expired

boolean
expires_at
string format: date-time
id

The artifact’s ID

integer format: int64
name

The artifact’s name

string
run_id

The ID of the workflow run that produced this artifact

integer format: int64
size_in_bytes

The total size of the artifact in bytes

integer format: int64
updated_at
string format: date-time
Example generated
[
{
"archive_download_url": "example",
"created_at": "2026-04-15T12:00:00Z",
"expired": true,
"expires_at": "2026-04-15T12:00:00Z",
"id": 1,
"name": "example",
"run_id": 1,
"size_in_bytes": 1,
"updated_at": "2026-04-15T12:00:00Z"
}
]

APIError is error format response

Media type application/json

APIError is an api error with a message

object
message
string
url
string
Example generated
{
"message": "example",
"url": "example"
}

APIForbiddenError is a forbidden error response

Media type application/json
object
message
string
url
string
Example generated
{
"message": "example",
"url": "example"
}

APINotFound is a not found error response

Media type application/json
object
errors
Array<string>
message
string
url
string
Example generated
{
"errors": [
"example"
],
"message": "example",
"url": "example"
}