issues

List issue artifacts

Changed on

Lists artifacts attached to an issue. Results are ordered by artifact number.

The type parameter filters the response to artifacts of one type. Results can be requested by page. The page defaults to 1; the page size defaults to 30 and can be set from 1 to 100.

The response is a bare array and does not include pagination metadata such as a Link header, a total count, or the service's has_next_page signal.

get/repos/{owner}/{repo}/issues/{issue_number}/artifacts

Request

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

Path parameters

ownerstring required

The account owner of the repository. The name is not case sensitive.

repostring required

The name of the repository without the .git extension. The name is not case sensitive.

issue_numberinteger required

The number that identifies the issue.

Query parameters

type'generic' | 'link' | 'plan' | 'embedded_html'

The artifact type to return.

per_pageinteger

The number of results per page (max 100). For more information, see "Using pagination in the REST API."

pageinteger

The page number of the results to fetch. For more information, see "Using pagination in the REST API."

Response

A list of artifacts attached to the issue.

idinteger required

The globally unique identifier of the artifact.

html_urlstring uri

The canonical browser URL for the artifact in its issue context.

numberinteger required

The artifact number within the issue.

typestring 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.
namestring required

The human-readable name of the artifact.

bodystring required

The artifact content. For embedded_html artifacts, this is the HTML source.

body_htmlstring 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.

descriptionstring required

A short, generated summary of the artifact.

created_atstring date-time nullable required

The time the artifact was created.

updated_atstring date-time nullable required

The time the artifact was last updated.

Example response

[
  {
    "id": 42,
    "html_url": "https://github.com/octocat/Hello-World/issues/1347/artifacts/1",
    "number": 1,
    "type": "plan",
    "name": "Implementation plan",
    "body": "## Plan\n\nBuild the feature in two phases.",
    "body_html": "<h2>Plan</h2>\n<p>Build the feature in two phases.</p>",
    "description": "Build the feature in two phases.",
    "creator": {
      "login": "octocat",
      "id": 1
    },
    "updated_by_actor": {
      "login": "monalisa",
      "id": 2
    },
    "created_at": "2026-09-21T15:00:00Z",
    "updated_at": "2026-09-21T15:30:00Z"
  }
]

Changes