---
title: "Get an issue artifact"
method: GET
path: "/repos/{owner}/{repo}/issues/{issue_number}/artifacts/{artifact_number}"
tags: ["issues"]
---

# Get an issue artifact

`GET /repos/{owner}/{repo}/issues/{issue_number}/artifacts/{artifact_number}`

## Request

- Base URL: `https://api.github.com`
- URL: `https://api.github.com/repos/{owner}/{repo}/issues/{issue_number}/artifacts/{artifact_number}`
- Auth: none declared

Returns an artifact attached to an issue by its per-issue artifact number,
along with its version history ordered from newest to oldest.

## Path parameters

- `owner` string, required
- `repo` string, required
- `issue_number` integer, required
- `artifact_number` integer, required

## Response `200`

The requested artifact.

- union
  - IssueArtifact: Issue artifacts are named, typed pieces of content attached to an issue. They give people and agents a durable place to preserve context and supporting material alongside the work. Each artifact has a number unique within the issue.
    - `id` integer, required: The globally unique identifier of the artifact.
    - `html_url` string, uri: The canonical browser URL for the artifact in its issue context.
    - `number` integer, required: The artifact number within the issue.
    - `type` string, required: The artifact type. The types supported for external creation and filtering are: - `generic` is a general-purpose Markdown document. - `link` represents a named link. - `plan` is a Markdown plan. - `embedded_html` is a self-contained HTML document. Its `body` contains the HTML source.
    - `name` string, required: The human-readable name of the artifact.
    - `body` string, required: The artifact content. For `embedded_html` artifacts, this is the HTML source.
    - `body_html` string, nullable, required: The artifact content rendered as HTML, or `null` if rendering times out or is skipped to protect the response's time budget. The raw content remains available in `body`.
    - `description` string, required: A short, generated summary of the artifact.
    - `creator` object, nullable, required: The user or integration that created the artifact.
      - `login` string, required
      - `id` integer, required
    - `updated_by_actor` object, nullable, required: The user or integration that most recently updated the artifact.
      - `login` string, required
      - `id` integer, required
    - `created_at` string, date-time, nullable, required: The time the artifact was created.
    - `updated_at` string, date-time, nullable, required: The time the artifact was last updated.
  - object
    - `artifact` IssueArtifact, required: Issue artifacts are named, typed pieces of content attached to an issue. They give people and agents a durable place to preserve context and supporting material alongside the work. Each artifact has a number unique within the issue.
      - `id` integer, required: The globally unique identifier of the artifact.
      - `html_url` string, uri: The canonical browser URL for the artifact in its issue context.
      - `number` integer, required: The artifact number within the issue.
      - `type` string, required: The artifact type. The types supported for external creation and filtering are: - `generic` is a general-purpose Markdown document. - `link` represents a named link. - `plan` is a Markdown plan. - `embedded_html` is a self-contained HTML document. Its `body` contains the HTML source.
      - `name` string, required: The human-readable name of the artifact.
      - `body` string, required: The artifact content. For `embedded_html` artifacts, this is the HTML source.
      - `body_html` string, nullable, required: The artifact content rendered as HTML, or `null` if rendering times out or is skipped to protect the response's time budget. The raw content remains available in `body`.
      - `description` string, required: A short, generated summary of the artifact.
      - `creator` object, nullable, required: The user or integration that created the artifact.
        - `login` string, required
        - `id` integer, required
      - `updated_by_actor` object, nullable, required: The user or integration that most recently updated the artifact.
        - `login` string, required
        - `id` integer, required
      - `created_at` string, date-time, nullable, required: The time the artifact was created.
      - `updated_at` string, date-time, nullable, required: The time the artifact was last updated.
    - `versions` object[], required: The artifact version history, ordered from newest to oldest.
      - `version` integer, required: The sequential version number.
      - `name` string, required: The artifact name at this version.
      - `body` string, required: The artifact content at this version.
      - `body_html` string, nullable, required: The artifact content at this version rendered as HTML, or `null` if rendering times out or is skipped to protect the response's time budget. The raw content remains available in `body`.
      - `created_at` string, date-time, nullable, required: The time this version was created.
      - `actor` object, nullable, required: The user or integration that created this version.
        - `login` string, required
        - `id` integer, required

## Other responses

- `301`: Moved permanently
- `404`: Resource not found
- `410`: Gone
- `503`: Service unavailable

## Changes

- **2026-10-28** `3b55ce443f5c`: 2 info
  - the response property `oneOf[subschema #1: Issue artifact]/description` became required for the status `200`
  - the response property `oneOf[subschema #2]/artifact/description` became required for the status `200`
- **2026-10-27** `2bbf5140540d`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/github/apis/enterprise-cloud/changes/repos/:owner/:repo/issues/:issue_number/artifacts/:artifact_number/get.md)

---

[API](https://skmtc.dev/github/apis/enterprise-cloud.md) - [All operations](https://skmtc.dev/github/apis/enterprise-cloud/llms.txt) - [OpenAPI document](https://skmtc.dev/github/apis/enterprise-cloud/revisions/3b55ce443f5c?raw)
