Gets a specific artifact for a workflow run
GET
/repos/{owner}/{repo}/actions/artifacts/{artifact_id}
const url = 'https://gitea.example.com/api/v1/repos/example/example/actions/artifacts/example';const options = {method: 'GET', headers: {Authorization: 'Basic <credentials>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://gitea.example.com/api/v1/repos/example/example/actions/artifacts/example \ --header 'Authorization: Basic <credentials>'Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”owner
required
string
Name of the owner
repo
required
string
Name of the repository
artifact_id
required
string
Id of the artifact
Responses
Section titled “Responses”Artifact
Media typeapplication/json
ActionArtifact represents a ActionArtifact
object
archive_download_url
string
created_at
string format: date-time
expired
boolean
expires_at
string format: date-time
id
integer format: int64
name
string
size_in_bytes
integer format: int64
updated_at
string format: date-time
url
string
workflow_run
ActionWorkflowRun represents a WorkflowRun
object
head_sha
string
id
integer format: int64
repository_id
integer format: int64
Examplegenerated
{ "archive_download_url": "example", "created_at": "2026-04-15T12:00:00Z", "expired": true, "expires_at": "2026-04-15T12:00:00Z", "id": 1, "name": "example", "size_in_bytes": 1, "updated_at": "2026-04-15T12:00:00Z", "url": "example", "workflow_run": { "head_sha": "example", "id": 1, "repository_id": 1 }}APIError is error format response
Media typeapplication/json
Headers
Section titled “Headers”message
string
url
string
APINotFound is a not found empty response
Media typeapplication/json