跳转至

获取企业的某个Issue

GET /api/v5/enterprises/{enterprise}/issues/{number}

该接口用于获取企业下指定的某个 Issue,返回该 Issue 的详细信息,包括标题、内容、状态、标签、评论数、优先级、类型、创建者、所属仓库及自定义字段等完整数据。

访问令牌支持说明

  • AtomGit 用户访问令牌(AtomGit user access tokens)

是否允许匿名访问

此接口允许匿名访问

请求参数

参数名 位置 类型 必填 说明
enterprise path string 是 仓库所属空间地址(组织或个人的地址 path)
number path integer 是 Issue 全局唯一 id
access_token query string 否 用户授权码

响应参数

字段 类型 必返 可为空 说明
id integer 是 — Issue 全局唯一 id
html_url string 是 — Issue 的 HTML 访问地址
number string 是 — Issue 编号(响应中为字符串)
state string 是 — Issue 状态
title string 是 — Issue 标题
body string 是 — Issue 内容
user object 是 — 创建者信息
repository object 是 — 所属仓库信息
created_at string 是 — 创建时间
updated_at string 是 — 更新时间
finished_at string 是 — 完成时间,可能为空字符串
labels array 是 — 标签列表
issue_state string 是 — Issue 状态名称
comments integer 是 — 评论数
priority integer 是 — 优先级
issue_type string 是 — Issue 类型
issue_state_detail object 是 — Issue 状态详情
issue_type_detail object 是 — Issue 类型详情
issue_priority_detail object 否 — Issue 优先级详情
custom_fields array 否 — 自定义字段信息
visibility_reason string 否 — 可见性原因

user 对象

字段 类型 必返 可为空 说明
user.avatar_url string 是 — 用户头像地址
user.html_url string 是 — 用户主页地址
user.id string 是 — 用户 id
user.login string 是 — 用户登录名
user.name string 是 — 用户昵称

repository 对象

字段 类型 必返 可为空 说明
repository.id integer 是 — 仓库 id
repository.full_name string 是 — 仓库全名(所属空间/仓库名)
repository.path string 是 — 仓库路径
repository.name string 是 — 仓库名称
repository.description string 是 — 仓库描述
repository.created_at string 是 — 仓库创建时间
repository.updated_at string 是 — 仓库更新时间
repository.assigner object 是 — 指派者信息,可能为空对象 {}
repository.paas string 是 — 托管平台信息,可能为空字符串

labels 数组元素

字段 类型 必返 可为空 说明
labels.id integer 是 — 标签 id
labels.name string 是 — 标签名称
labels.color string 是 — 标签颜色
labels.created_at string 是 — 标签创建时间
labels.updated_at string 是 — 标签添加时间

issue_state_detail 对象

字段 类型 必返 可为空 说明
issue_state_detail.title string 是 — 状态名称
issue_state_detail.serial integer 是 — 状态排序号
issue_state_detail.id integer 是 — 状态 id

issue_type_detail 对象

字段 类型 必返 可为空 说明
issue_type_detail.title string 是 — 类型名称
issue_type_detail.id integer 是 — 类型 id
issue_type_detail.is_system boolean 是 — 是否为系统内置类型

issue_priority_detail 对象

字段 类型 必返 可为空 说明
issue_priority_detail.id string 是 — 优先级 id
issue_priority_detail.title string 是 — 优先级名称

custom_fields 数组元素

字段 类型 必返 可为空 说明
custom_fields.field_name string 是 — 自定义字段名称
custom_fields.field_type string 是 — 自定义字段类型。枚举:text_single(单行文本)、text_multi(多行文本)、integer(整数)、decimal(小数)、date(日期)、select_single(单选下拉)、select_multi(多选下拉)、member_single(单选成员)、member_multi(多选成员)
custom_fields.field_visibility string 是 — 可见性。0:仅管理员可见,1:所有人可见
custom_fields.field_values string[] 是 — 自定义字段的值

Note: visibility_reason 的取值含义:public:公开可见,confidential:私密,仅项目成员可见,other:其他原因导致的仅项目成员可见。

失败响应

400 参数错误

{
  "error": "invalid_request",
  "message": "参数错误"
}

401 未认证

{
  "error": "unauthorized",
  "message": "缺少或无效的访问令牌"
}

404 资源不存在

{
  "error": "not_found",
  "message": "Issue 不存在"
}

失败响应的具体字段名以后端实际返回为准。

HTTP 响应状态码

状态码 说明
200 成功(OK)
304 未修改(Not modified)
401 需要认证(Requires authentication)
403 禁止访问(Forbidden)
404 资源不存在(Not Found)

请求示例

参数说明

  • <enterprise> 替换为仓库所属空间地址(企业、组织或个人的地址 path);
  • <number> 替换为 Issue 全局唯一 id;
  • 本接口允许匿名访问,无需携带访问令牌;如需认证,可追加可选查询参数 access_token=<token>。

cURL

curl -X GET 'https://api.atomgit.com/api/v5/enterprises/<enterprise>/issues/<number>' \
  -H 'Accept: application/json'

JavaScript

const response = await fetch("https://api.atomgit.com/api/v5/enterprises/<enterprise>/issues/<number>", {
  headers: {
    "Accept": "application/json",
  },
});

if (!response.ok) {
  throw new Error(`请求失败: ${response.status}`);
}

const data = await response.json();
console.log(data);

Python

import requests

resp = requests.get(
    "https://api.atomgit.com/api/v5/enterprises/<enterprise>/issues/<number>",
    headers={
        "Accept": "application/json",
    },
    timeout=10,
)
resp.raise_for_status()

print(resp.json())

响应示例

状态码: 200

{
  "id": 471521,
  "html_url": "https://api.atomgit.com/owner-test/wonderful1/issues/1",
  "number": "1",
  "state": "open",
  "title": "bbbbb",
  "body": "sdfsdf",
  "user": {
    "avatar_url": "https://api.atomgit.com/csdn_fenglh/avatar",
    "html_url": "https://api.atomgit.com/csdn_fenglh",
    "id": "654c61e5560ed95fd216cf31",
    "login": "csdn_fenglh",
    "name": "fenglh"
  },
  "repository": {
    "id": 686738,
    "full_name": "owner-test/wonderful1",
    "path": "wonderful1",
    "name": "wonderful1",
    "description": "我的测试代码仓库",
    "created_at": "2024-10-16T15:51:35+08:00",
    "updated_at": "2024-10-16T15:51:35+08:00",
    "assigner": {},
    "paas": ""
  },
  "created_at": "2024-12-10T16:02:12+08:00",
  "updated_at": "2024-12-10T16:02:21+08:00",
  "finished_at": "",
  "labels": [],
  "issue_state": "待办的",
  "comments": 0,
  "priority": 0,
  "issue_type": "bug",
  "issue_state_detail": {
    "title": "待办的",
    "serial": 0,
    "id": 1
  },
  "issue_type_detail": {
    "title": "缺陷",
    "id": 1,
    "is_system": true
  },
  "issue_priority_detail": {
    "id": "1",
    "title": "高"
  },
  "custom_fields": [
    {
      "field_name": "module",
      "field_type": "text_single",
      "field_visibility": "1",
      "field_values": ["登录"]
    }
  ],
  "visibility_reason": "public"
}

错误码

错误码 说明
400 参数错误或请求无法解析
401 未认证或凭证无效(缺少/无效的访问凭证)
403 禁止访问,无权限
404 请求路径不存在或资源不存在
405 请求方法不支持
429 请求过于频繁,触发限流
500 系统内部错误

本页原文 Markdown:在 AtomGit 查看·内容源自开源项目 gitcode-dev/atomgit-api-doc