---
title: "List all comments and events on an issue"
method: GET
path: "/repos/{owner}/{repo}/issues/{index}/timeline"
tags: ["issue"]
---

# List all comments and events on an issue

`GET /repos/{owner}/{repo}/issues/{index}/timeline`

## Request

- Base URL: `https://demo.gitea.com/api/v1`
- URL: `https://demo.gitea.com/api/v1/repos/{owner}/{repo}/issues/{index}/timeline`
- Auth: one of:
  - HTTP basic
  - API key in query parameter `token`
  - API key in query parameter `access_token`
  - API key in header `Authorization`
  - API key in query parameter `sudo`
  - API key in header `Sudo`
  - API key in header `X-GITEA-OTP`
- TypeScript: <https://skmtc.dev/gitea/apis/gitea-api/docs/repos/:owner/:repo/issues/:index/timeline/get.ts> (a function with typed inputs; its response is checked against the schema)

## Path parameters

- `owner` string, required
- `repo` string, required
- `index` integer, required

## Query parameters

- `since` string, date-time
- `page` integer
- `limit` integer
- `before` string, date-time

## Response `200`

TimelineList

- TimelineComment[]
  - `assignee` User: User represents a user
    - `active` boolean: Is user active
    - `avatar_url` string: URL to the user's avatar
    - `created` string, date-time
    - `description` string: the user's description
    - `email` string, email
    - `followers_count` integer: user counts
    - `following_count` integer
    - `full_name` string: the user's full name
    - `html_url` string: URL to the user's gitea page
    - `id` integer: the user's id
    - `is_admin` boolean: Is the user an administrator
    - `language` string: User locale
    - `last_login` string, date-time
    - `location` string: the user's location
    - `login` string: login of the user, same as `username`
    - `login_name` string: identifier of the user, provided by the external authenticator (if configured)
    - `prohibit_login` boolean: Is user login prohibited
    - `restricted` boolean: Is user restricted
    - `source_id` integer: The ID of the user's Authentication Source
    - `starred_repos_count` integer
    - `type` 'User' | 'Organization' | 'Bot': the user type
    - `visibility` 'public' | 'limited' | 'private': User visibility level option: public, limited, private
    - `website` string: the user's website
  - `assignee_team` Team: Team represents a team in an organization
    - `can_create_org_repo` boolean: Whether the team can create repositories in the organization
    - `description` string: The description of the team
    - `id` integer: The unique identifier of the team
    - `includes_all_repositories` boolean: Whether the team has access to all repositories in the organization
    - `name` string: The name of the team
    - `organization` Organization: Organization represents an organization
      - `avatar_url` string: The URL of the organization's avatar
      - `description` string: The description of the organization
      - `email` string: The email address of the organization
      - `full_name` string: The full display name of the organization
      - `id` integer: The unique identifier of the organization
      - `location` string: The location of the organization
      - `name` string: The name of the organization
      - `repo_admin_change_team_access` boolean: Whether repository administrators can change team access
      - `username` string: username of the organization deprecated
      - `visibility` 'public' | 'limited' | 'private': The visibility level of the organization (public, limited, private)
      - `website` string: The website URL of the organization
    - `permission` 'none' | 'read' | 'write' | 'admin' | 'owner'
    - `units` string[]: Deprecated: This variable should be replaced by UnitsMap and will be dropped in later versions.
    - `units_map` object
    - `visibility` 'public' | 'limited' | 'private': Team visibility within the organization. "private" teams are only listable by members and org owners; "limited" teams are listable by any organization member; "public" teams are listable by any signed-in user.
  - `body` string: Body contains the timeline event content
  - `created_at` string, date-time
  - `dependent_issue` Issue: Issue represents an issue in a repository
    - `assets` Attachment[]
      - `browser_download_url` string: DownloadURL is the URL to download the attachment
      - `created_at` string, date-time: Created is the time when the attachment was uploaded
      - `download_count` integer: DownloadCount is the number of times the attachment has been downloaded
      - `id` integer: ID is the unique identifier for the attachment
      - `name` string: Name is the filename of the attachment
      - `size` integer: Size is the file size in bytes
      - `uuid` string: UUID is the unique identifier for the attachment file
    - `assignee` User: User represents a user
      - `active` boolean: Is user active
      - `avatar_url` string: URL to the user's avatar
      - `created` string, date-time
      - `description` string: the user's description
      - `email` string, email
      - `followers_count` integer: user counts
      - `following_count` integer
      - `full_name` string: the user's full name
      - `html_url` string: URL to the user's gitea page
      - `id` integer: the user's id
      - `is_admin` boolean: Is the user an administrator
      - `language` string: User locale
      - `last_login` string, date-time
      - `location` string: the user's location
      - `login` string: login of the user, same as `username`
      - `login_name` string: identifier of the user, provided by the external authenticator (if configured)
      - `prohibit_login` boolean: Is user login prohibited
      - `restricted` boolean: Is user restricted
      - `source_id` integer: The ID of the user's Authentication Source
      - `starred_repos_count` integer
      - `type` 'User' | 'Organization' | 'Bot': the user type
      - `visibility` 'public' | 'limited' | 'private': User visibility level option: public, limited, private
      - `website` string: the user's website
    - `assignees` User[]
      - `active` boolean: Is user active
      - `avatar_url` string: URL to the user's avatar
      - `created` string, date-time
      - `description` string: the user's description
      - `email` string, email
      - `followers_count` integer: user counts
      - `following_count` integer
      - `full_name` string: the user's full name
      - `html_url` string: URL to the user's gitea page
      - `id` integer: the user's id
      - `is_admin` boolean: Is the user an administrator
      - `language` string: User locale
      - `last_login` string, date-time
      - `location` string: the user's location
      - `login` string: login of the user, same as `username`
      - `login_name` string: identifier of the user, provided by the external authenticator (if configured)
      - `prohibit_login` boolean: Is user login prohibited
      - `restricted` boolean: Is user restricted
      - `source_id` integer: The ID of the user's Authentication Source
      - `starred_repos_count` integer
      - `type` 'User' | 'Organization' | 'Bot': the user type
      - `visibility` 'public' | 'limited' | 'private': User visibility level option: public, limited, private
      - `website` string: the user's website
    - `body` string
    - `closed_at` string, date-time
    - `comments` integer
    - `content_version` integer: The version of the issue content for optimistic locking
    - `created_at` string, date-time
    - `due_date` string, date-time
    - `html_url` string
    - `id` integer
    - `is_locked` boolean
    - `labels` Label[]
      - `color` string
      - `description` string: Description provides additional context about the label's purpose
      - `exclusive` boolean
      - `id` integer: ID is the unique identifier for the label
      - `is_archived` boolean
      - `name` string: Name is the display name of the label
      - `url` string: URL is the API endpoint for accessing this label
    - `milestone` Milestone: Milestone is a collection of issues on one repository
      - `closed_at` string, date-time
      - `closed_issues` integer: ClosedIssues is the number of closed issues in this milestone
      - `created_at` string, date-time
      - `description` string: Description provides details about the milestone
      - `due_on` string, date-time
      - `id` integer: ID is the unique identifier for the milestone
      - `open_issues` integer: OpenIssues is the number of open issues in this milestone
      - `state` 'open' | 'closed': State indicates if the milestone is open or closed
      - `title` string: Title is the title of the milestone
      - `updated_at` string, date-time
    - `number` integer
    - `pin_order` integer
    - `projects` Project[]
      - `card_type` string: Card type: "text_only" or "images_and_text"
      - `closed_at` string, date-time
      - `created_at` string, date-time
      - `creator` User: User represents a user
        - `active` boolean: Is user active
        - `avatar_url` string: URL to the user's avatar
        - `created` string, date-time
        - `description` string: the user's description
        - `email` string, email
        - `followers_count` integer: user counts
        - `following_count` integer
        - `full_name` string: the user's full name
        - `html_url` string: URL to the user's gitea page
        - `id` integer: the user's id
        - `is_admin` boolean: Is the user an administrator
        - `language` string: User locale
        - `last_login` string, date-time
        - `location` string: the user's location
        - `login` string: login of the user, same as `username`
        - `login_name` string: identifier of the user, provided by the external authenticator (if configured)
        - `prohibit_login` boolean: Is user login prohibited
        - `restricted` boolean: Is user restricted
        - `source_id` integer: The ID of the user's Authentication Source
        - `starred_repos_count` integer
        - `type` 'User' | 'Organization' | 'Bot': the user type
        - `visibility` 'public' | 'limited' | 'private': User visibility level option: public, limited, private
        - `website` string: the user's website
      - `creator_id` integer: Deprecated: use Creator instead
      - `description` string
      - `html_url` string
      - `id` integer
      - `is_closed` boolean: Deprecated: use State instead
      - `num_closed_issues` integer
      - `num_issues` integer
      - `num_open_issues` integer
      - `owner_id` integer
      - `repo_id` integer
      - `state` 'open' | 'closed'
      - `template_type` string: Template type: "none", "basic_kanban" or "bug_triage"
      - `title` string
      - `type` string: Project type: "individual", "repository" or "organization"
      - `updated_at` string, date-time: null only for legacy rows that carry no update timestamp
    - `pull_request` PullRequestMeta: PullRequestMeta PR info if an issue is a PR
      - `draft` boolean
      - `html_url` string
      - `merged` boolean
      - `merged_at` string, date-time
    - `ref` string
    - `repository` RepositoryMeta: RepositoryMeta basic repository information
      - `full_name` string
      - `id` integer
      - `name` string
      - `owner` string
    - `state` 'open' | 'closed'
    - `time_estimate` integer
    - `title` string
    - `updated_at` string, date-time
    - `url` string
    - `user` User: User represents a user
      - `active` boolean: Is user active
      - `avatar_url` string: URL to the user's avatar
      - `created` string, date-time
      - `description` string: the user's description
      - `email` string, email
      - `followers_count` integer: user counts
      - `following_count` integer
      - `full_name` string: the user's full name
      - `html_url` string: URL to the user's gitea page
      - `id` integer: the user's id
      - `is_admin` boolean: Is the user an administrator
      - `language` string: User locale
      - `last_login` string, date-time
      - `location` string: the user's location
      - `login` string: login of the user, same as `username`
      - `login_name` string: identifier of the user, provided by the external authenticator (if configured)
      - `prohibit_login` boolean: Is user login prohibited
      - `restricted` boolean: Is user restricted
      - `source_id` integer: The ID of the user's Authentication Source
      - `starred_repos_count` integer
      - `type` 'User' | 'Organization' | 'Bot': the user type
      - `visibility` 'public' | 'limited' | 'private': User visibility level option: public, limited, private
      - `website` string: the user's website
  - `html_url` string: HTMLURL is the web URL for viewing the comment
  - `id` integer: ID is the unique identifier for the timeline comment
  - `issue_url` string: IssueURL is the API URL for the issue
  - `label` Label: Label a label to an issue or a pr
    - `color` string
    - `description` string: Description provides additional context about the label's purpose
    - `exclusive` boolean
    - `id` integer: ID is the unique identifier for the label
    - `is_archived` boolean
    - `name` string: Name is the display name of the label
    - `url` string: URL is the API endpoint for accessing this label
  - `milestone` Milestone: Milestone is a collection of issues on one repository
    - `closed_at` string, date-time
    - `closed_issues` integer: ClosedIssues is the number of closed issues in this milestone
    - `created_at` string, date-time
    - `description` string: Description provides details about the milestone
    - `due_on` string, date-time
    - `id` integer: ID is the unique identifier for the milestone
    - `open_issues` integer: OpenIssues is the number of open issues in this milestone
    - `state` 'open' | 'closed': State indicates if the milestone is open or closed
    - `title` string: Title is the title of the milestone
    - `updated_at` string, date-time
  - `new_ref` string
  - `new_title` string
  - `old_milestone` Milestone: Milestone is a collection of issues on one repository
    - `closed_at` string, date-time
    - `closed_issues` integer: ClosedIssues is the number of closed issues in this milestone
    - `created_at` string, date-time
    - `description` string: Description provides details about the milestone
    - `due_on` string, date-time
    - `id` integer: ID is the unique identifier for the milestone
    - `open_issues` integer: OpenIssues is the number of open issues in this milestone
    - `state` 'open' | 'closed': State indicates if the milestone is open or closed
    - `title` string: Title is the title of the milestone
    - `updated_at` string, date-time
  - `old_project_id` integer
  - `old_ref` string
  - `old_title` string
  - `project_id` integer
  - `pull_request_url` string: PRURL is the API URL for the pull request (if applicable)
  - `ref_action` string
  - `ref_comment` Comment: Comment represents a comment on a commit or issue
    - `assets` Attachment[]: Attachments contains files attached to the comment
      - `browser_download_url` string: DownloadURL is the URL to download the attachment
      - `created_at` string, date-time: Created is the time when the attachment was uploaded
      - `download_count` integer: DownloadCount is the number of times the attachment has been downloaded
      - `id` integer: ID is the unique identifier for the attachment
      - `name` string: Name is the filename of the attachment
      - `size` integer: Size is the file size in bytes
      - `uuid` string: UUID is the unique identifier for the attachment file
    - `body` string: Body contains the comment text content
    - `created_at` string, date-time
    - `html_url` string: HTMLURL is the web URL for viewing the comment
    - `id` integer: ID is the unique identifier for the comment
    - `issue_url` string: IssueURL is the API URL for the issue
    - `pull_request_url` string: PRURL is the API URL for the pull request (if applicable)
    - `updated_at` string, date-time
    - `user` User: User represents a user
      - `active` boolean: Is user active
      - `avatar_url` string: URL to the user's avatar
      - `created` string, date-time
      - `description` string: the user's description
      - `email` string, email
      - `followers_count` integer: user counts
      - `following_count` integer
      - `full_name` string: the user's full name
      - `html_url` string: URL to the user's gitea page
      - `id` integer: the user's id
      - `is_admin` boolean: Is the user an administrator
      - `language` string: User locale
      - `last_login` string, date-time
      - `location` string: the user's location
      - `login` string: login of the user, same as `username`
      - `login_name` string: identifier of the user, provided by the external authenticator (if configured)
      - `prohibit_login` boolean: Is user login prohibited
      - `restricted` boolean: Is user restricted
      - `source_id` integer: The ID of the user's Authentication Source
      - `starred_repos_count` integer
      - `type` 'User' | 'Organization' | 'Bot': the user type
      - `visibility` 'public' | 'limited' | 'private': User visibility level option: public, limited, private
      - `website` string: the user's website
  - `ref_commit_sha` string: commit SHA where issue/PR was referenced
  - `ref_issue` Issue: Issue represents an issue in a repository
    - `assets` Attachment[]
      - `browser_download_url` string: DownloadURL is the URL to download the attachment
      - `created_at` string, date-time: Created is the time when the attachment was uploaded
      - `download_count` integer: DownloadCount is the number of times the attachment has been downloaded
      - `id` integer: ID is the unique identifier for the attachment
      - `name` string: Name is the filename of the attachment
      - `size` integer: Size is the file size in bytes
      - `uuid` string: UUID is the unique identifier for the attachment file
    - `assignee` User: User represents a user
      - `active` boolean: Is user active
      - `avatar_url` string: URL to the user's avatar
      - `created` string, date-time
      - `description` string: the user's description
      - `email` string, email
      - `followers_count` integer: user counts
      - `following_count` integer
      - `full_name` string: the user's full name
      - `html_url` string: URL to the user's gitea page
      - `id` integer: the user's id
      - `is_admin` boolean: Is the user an administrator
      - `language` string: User locale
      - `last_login` string, date-time
      - `location` string: the user's location
      - `login` string: login of the user, same as `username`
      - `login_name` string: identifier of the user, provided by the external authenticator (if configured)
      - `prohibit_login` boolean: Is user login prohibited
      - `restricted` boolean: Is user restricted
      - `source_id` integer: The ID of the user's Authentication Source
      - `starred_repos_count` integer
      - `type` 'User' | 'Organization' | 'Bot': the user type
      - `visibility` 'public' | 'limited' | 'private': User visibility level option: public, limited, private
      - `website` string: the user's website
    - `assignees` User[]
      - `active` boolean: Is user active
      - `avatar_url` string: URL to the user's avatar
      - `created` string, date-time
      - `description` string: the user's description
      - `email` string, email
      - `followers_count` integer: user counts
      - `following_count` integer
      - `full_name` string: the user's full name
      - `html_url` string: URL to the user's gitea page
      - `id` integer: the user's id
      - `is_admin` boolean: Is the user an administrator
      - `language` string: User locale
      - `last_login` string, date-time
      - `location` string: the user's location
      - `login` string: login of the user, same as `username`
      - `login_name` string: identifier of the user, provided by the external authenticator (if configured)
      - `prohibit_login` boolean: Is user login prohibited
      - `restricted` boolean: Is user restricted
      - `source_id` integer: The ID of the user's Authentication Source
      - `starred_repos_count` integer
      - `type` 'User' | 'Organization' | 'Bot': the user type
      - `visibility` 'public' | 'limited' | 'private': User visibility level option: public, limited, private
      - `website` string: the user's website
    - `body` string
    - `closed_at` string, date-time
    - `comments` integer
    - `content_version` integer: The version of the issue content for optimistic locking
    - `created_at` string, date-time
    - `due_date` string, date-time
    - `html_url` string
    - `id` integer
    - `is_locked` boolean
    - `labels` Label[]
      - `color` string
      - `description` string: Description provides additional context about the label's purpose
      - `exclusive` boolean
      - `id` integer: ID is the unique identifier for the label
      - `is_archived` boolean
      - `name` string: Name is the display name of the label
      - `url` string: URL is the API endpoint for accessing this label
    - `milestone` Milestone: Milestone is a collection of issues on one repository
      - `closed_at` string, date-time
      - `closed_issues` integer: ClosedIssues is the number of closed issues in this milestone
      - `created_at` string, date-time
      - `description` string: Description provides details about the milestone
      - `due_on` string, date-time
      - `id` integer: ID is the unique identifier for the milestone
      - `open_issues` integer: OpenIssues is the number of open issues in this milestone
      - `state` 'open' | 'closed': State indicates if the milestone is open or closed
      - `title` string: Title is the title of the milestone
      - `updated_at` string, date-time
    - `number` integer
    - `pin_order` integer
    - `projects` Project[]
      - `card_type` string: Card type: "text_only" or "images_and_text"
      - `closed_at` string, date-time
      - `created_at` string, date-time
      - `creator` User: User represents a user
        - `active` boolean: Is user active
        - `avatar_url` string: URL to the user's avatar
        - `created` string, date-time
        - `description` string: the user's description
        - `email` string, email
        - `followers_count` integer: user counts
        - `following_count` integer
        - `full_name` string: the user's full name
        - `html_url` string: URL to the user's gitea page
        - `id` integer: the user's id
        - `is_admin` boolean: Is the user an administrator
        - `language` string: User locale
        - `last_login` string, date-time
        - `location` string: the user's location
        - `login` string: login of the user, same as `username`
        - `login_name` string: identifier of the user, provided by the external authenticator (if configured)
        - `prohibit_login` boolean: Is user login prohibited
        - `restricted` boolean: Is user restricted
        - `source_id` integer: The ID of the user's Authentication Source
        - `starred_repos_count` integer
        - `type` 'User' | 'Organization' | 'Bot': the user type
        - `visibility` 'public' | 'limited' | 'private': User visibility level option: public, limited, private
        - `website` string: the user's website
      - `creator_id` integer: Deprecated: use Creator instead
      - `description` string
      - `html_url` string
      - `id` integer
      - `is_closed` boolean: Deprecated: use State instead
      - `num_closed_issues` integer
      - `num_issues` integer
      - `num_open_issues` integer
      - `owner_id` integer
      - `repo_id` integer
      - `state` 'open' | 'closed'
      - `template_type` string: Template type: "none", "basic_kanban" or "bug_triage"
      - `title` string
      - `type` string: Project type: "individual", "repository" or "organization"
      - `updated_at` string, date-time: null only for legacy rows that carry no update timestamp
    - `pull_request` PullRequestMeta: PullRequestMeta PR info if an issue is a PR
      - `draft` boolean
      - `html_url` string
      - `merged` boolean
      - `merged_at` string, date-time
    - `ref` string
    - `repository` RepositoryMeta: RepositoryMeta basic repository information
      - `full_name` string
      - `id` integer
      - `name` string
      - `owner` string
    - `state` 'open' | 'closed'
    - `time_estimate` integer
    - `title` string
    - `updated_at` string, date-time
    - `url` string
    - `user` User: User represents a user
      - `active` boolean: Is user active
      - `avatar_url` string: URL to the user's avatar
      - `created` string, date-time
      - `description` string: the user's description
      - `email` string, email
      - `followers_count` integer: user counts
      - `following_count` integer
      - `full_name` string: the user's full name
      - `html_url` string: URL to the user's gitea page
      - `id` integer: the user's id
      - `is_admin` boolean: Is the user an administrator
      - `language` string: User locale
      - `last_login` string, date-time
      - `location` string: the user's location
      - `login` string: login of the user, same as `username`
      - `login_name` string: identifier of the user, provided by the external authenticator (if configured)
      - `prohibit_login` boolean: Is user login prohibited
      - `restricted` boolean: Is user restricted
      - `source_id` integer: The ID of the user's Authentication Source
      - `starred_repos_count` integer
      - `type` 'User' | 'Organization' | 'Bot': the user type
      - `visibility` 'public' | 'limited' | 'private': User visibility level option: public, limited, private
      - `website` string: the user's website
  - `removed_assignee` boolean: whether the assignees were removed or added
  - `resolve_doer` User: User represents a user
    - `active` boolean: Is user active
    - `avatar_url` string: URL to the user's avatar
    - `created` string, date-time
    - `description` string: the user's description
    - `email` string, email
    - `followers_count` integer: user counts
    - `following_count` integer
    - `full_name` string: the user's full name
    - `html_url` string: URL to the user's gitea page
    - `id` integer: the user's id
    - `is_admin` boolean: Is the user an administrator
    - `language` string: User locale
    - `last_login` string, date-time
    - `location` string: the user's location
    - `login` string: login of the user, same as `username`
    - `login_name` string: identifier of the user, provided by the external authenticator (if configured)
    - `prohibit_login` boolean: Is user login prohibited
    - `restricted` boolean: Is user restricted
    - `source_id` integer: The ID of the user's Authentication Source
    - `starred_repos_count` integer
    - `type` 'User' | 'Organization' | 'Bot': the user type
    - `visibility` 'public' | 'limited' | 'private': User visibility level option: public, limited, private
    - `website` string: the user's website
  - `review_id` integer
  - `tracked_time` TrackedTime: TrackedTime worked time for an issue / pr
    - `created` string, date-time
    - `id` integer: ID is the unique identifier for the tracked time entry
    - `issue` Issue: Issue represents an issue in a repository
      - `assets` Attachment[]
        - `browser_download_url` string: DownloadURL is the URL to download the attachment
        - `created_at` string, date-time: Created is the time when the attachment was uploaded
        - `download_count` integer: DownloadCount is the number of times the attachment has been downloaded
        - `id` integer: ID is the unique identifier for the attachment
        - `name` string: Name is the filename of the attachment
        - `size` integer: Size is the file size in bytes
        - `uuid` string: UUID is the unique identifier for the attachment file
      - `assignee` User: User represents a user
        - `active` boolean: Is user active
        - `avatar_url` string: URL to the user's avatar
        - `created` string, date-time
        - `description` string: the user's description
        - `email` string, email
        - `followers_count` integer: user counts
        - `following_count` integer
        - `full_name` string: the user's full name
        - `html_url` string: URL to the user's gitea page
        - `id` integer: the user's id
        - `is_admin` boolean: Is the user an administrator
        - `language` string: User locale
        - `last_login` string, date-time
        - `location` string: the user's location
        - `login` string: login of the user, same as `username`
        - `login_name` string: identifier of the user, provided by the external authenticator (if configured)
        - `prohibit_login` boolean: Is user login prohibited
        - `restricted` boolean: Is user restricted
        - `source_id` integer: The ID of the user's Authentication Source
        - `starred_repos_count` integer
        - `type` 'User' | 'Organization' | 'Bot': the user type
        - `visibility` 'public' | 'limited' | 'private': User visibility level option: public, limited, private
        - `website` string: the user's website
      - `assignees` User[]
        - `active` boolean: Is user active
        - `avatar_url` string: URL to the user's avatar
        - `created` string, date-time
        - `description` string: the user's description
        - `email` string, email
        - `followers_count` integer: user counts
        - `following_count` integer
        - `full_name` string: the user's full name
        - `html_url` string: URL to the user's gitea page
        - `id` integer: the user's id
        - `is_admin` boolean: Is the user an administrator
        - `language` string: User locale
        - `last_login` string, date-time
        - `location` string: the user's location
        - `login` string: login of the user, same as `username`
        - `login_name` string: identifier of the user, provided by the external authenticator (if configured)
        - `prohibit_login` boolean: Is user login prohibited
        - `restricted` boolean: Is user restricted
        - `source_id` integer: The ID of the user's Authentication Source
        - `starred_repos_count` integer
        - `type` 'User' | 'Organization' | 'Bot': the user type
        - `visibility` 'public' | 'limited' | 'private': User visibility level option: public, limited, private
        - `website` string: the user's website
      - `body` string
      - `closed_at` string, date-time
      - `comments` integer
      - `content_version` integer: The version of the issue content for optimistic locking
      - `created_at` string, date-time
      - `due_date` string, date-time
      - `html_url` string
      - `id` integer
      - `is_locked` boolean
      - `labels` Label[]
        - `color` string
        - `description` string: Description provides additional context about the label's purpose
        - `exclusive` boolean
        - `id` integer: ID is the unique identifier for the label
        - `is_archived` boolean
        - `name` string: Name is the display name of the label
        - `url` string: URL is the API endpoint for accessing this label
      - `milestone` Milestone: Milestone is a collection of issues on one repository
        - `closed_at` string, date-time
        - `closed_issues` integer: ClosedIssues is the number of closed issues in this milestone
        - `created_at` string, date-time
        - `description` string: Description provides details about the milestone
        - `due_on` string, date-time
        - `id` integer: ID is the unique identifier for the milestone
        - `open_issues` integer: OpenIssues is the number of open issues in this milestone
        - `state` 'open' | 'closed': State indicates if the milestone is open or closed
        - `title` string: Title is the title of the milestone
        - `updated_at` string, date-time
      - `number` integer
      - `pin_order` integer
      - `projects` Project[]
        - `card_type` string: Card type: "text_only" or "images_and_text"
        - `closed_at` string, date-time
        - `created_at` string, date-time
        - `creator` User: User represents a user
          - `active` boolean: Is user active
          - `avatar_url` string: URL to the user's avatar
          - `created` string, date-time
          - `description` string: the user's description
          - `email` string, email
          - `followers_count` integer: user counts
          - `following_count` integer
          - `full_name` string: the user's full name
          - `html_url` string: URL to the user's gitea page
          - `id` integer: the user's id
          - `is_admin` boolean: Is the user an administrator
          - `language` string: User locale
          - `last_login` string, date-time
          - `location` string: the user's location
          - `login` string: login of the user, same as `username`
          - `login_name` string: identifier of the user, provided by the external authenticator (if configured)
          - `prohibit_login` boolean: Is user login prohibited
          - `restricted` boolean: Is user restricted
          - `source_id` integer: The ID of the user's Authentication Source
          - `starred_repos_count` integer
          - `type` 'User' | 'Organization' | 'Bot': the user type
          - `visibility` 'public' | 'limited' | 'private': User visibility level option: public, limited, private
          - `website` string: the user's website
        - `creator_id` integer: Deprecated: use Creator instead
        - `description` string
        - `html_url` string
        - `id` integer
        - `is_closed` boolean: Deprecated: use State instead
        - `num_closed_issues` integer
        - `num_issues` integer
        - `num_open_issues` integer
        - `owner_id` integer
        - `repo_id` integer
        - `state` 'open' | 'closed'
        - `template_type` string: Template type: "none", "basic_kanban" or "bug_triage"
        - `title` string
        - `type` string: Project type: "individual", "repository" or "organization"
        - `updated_at` string, date-time: null only for legacy rows that carry no update timestamp
      - `pull_request` PullRequestMeta: PullRequestMeta PR info if an issue is a PR
        - `draft` boolean
        - `html_url` string
        - `merged` boolean
        - `merged_at` string, date-time
      - `ref` string
      - `repository` RepositoryMeta: RepositoryMeta basic repository information
        - `full_name` string
        - `id` integer
        - `name` string
        - `owner` string
      - `state` 'open' | 'closed'
      - `time_estimate` integer
      - `title` string
      - `updated_at` string, date-time
      - `url` string
      - `user` User: User represents a user
        - `active` boolean: Is user active
        - `avatar_url` string: URL to the user's avatar
        - `created` string, date-time
        - `description` string: the user's description
        - `email` string, email
        - `followers_count` integer: user counts
        - `following_count` integer
        - `full_name` string: the user's full name
        - `html_url` string: URL to the user's gitea page
        - `id` integer: the user's id
        - `is_admin` boolean: Is the user an administrator
        - `language` string: User locale
        - `last_login` string, date-time
        - `location` string: the user's location
        - `login` string: login of the user, same as `username`
        - `login_name` string: identifier of the user, provided by the external authenticator (if configured)
        - `prohibit_login` boolean: Is user login prohibited
        - `restricted` boolean: Is user restricted
        - `source_id` integer: The ID of the user's Authentication Source
        - `starred_repos_count` integer
        - `type` 'User' | 'Organization' | 'Bot': the user type
        - `visibility` 'public' | 'limited' | 'private': User visibility level option: public, limited, private
        - `website` string: the user's website
    - `issue_id` integer: deprecated (only for backwards compatibility)
    - `time` integer: Time in seconds
    - `user_id` integer: deprecated (only for backwards compatibility)
    - `user_name` string: username of the user
  - `type` string: Type indicates the type of timeline event
  - `updated_at` string, date-time
  - `user` User: User represents a user
    - `active` boolean: Is user active
    - `avatar_url` string: URL to the user's avatar
    - `created` string, date-time
    - `description` string: the user's description
    - `email` string, email
    - `followers_count` integer: user counts
    - `following_count` integer
    - `full_name` string: the user's full name
    - `html_url` string: URL to the user's gitea page
    - `id` integer: the user's id
    - `is_admin` boolean: Is the user an administrator
    - `language` string: User locale
    - `last_login` string, date-time
    - `location` string: the user's location
    - `login` string: login of the user, same as `username`
    - `login_name` string: identifier of the user, provided by the external authenticator (if configured)
    - `prohibit_login` boolean: Is user login prohibited
    - `restricted` boolean: Is user restricted
    - `source_id` integer: The ID of the user's Authentication Source
    - `starred_repos_count` integer
    - `type` 'User' | 'Organization' | 'Bot': the user type
    - `visibility` 'public' | 'limited' | 'private': User visibility level option: public, limited, private
    - `website` string: the user's website

## Other responses

- `default`: APIError is error format response

## Changes

- **2026-10-28** `7ef50c4c527f`: 1 info
  - removed the non-success response with the status `404`

[Operation history](https://skmtc.dev/gitea/apis/gitea-api/changes/repos/:owner/:repo/issues/:index/timeline/get.md)

---

[API](https://skmtc.dev/gitea/apis/gitea-api.md) - [All operations](https://skmtc.dev/gitea/apis/gitea-api/llms.txt) - [OpenAPI document](https://skmtc.dev/gitea/apis/gitea-api/revisions/b8e58c32921d?raw)
