项目访问令牌 API

您可以通过访问项目访问令牌了解更多内容。

列出项目访问令牌列表

获取项目访问令牌的列表。

GET projects/:id/access_tokens
参数 类型 是否必需 描述
id integer or string yes ID 或者 URL 编码中项目的路径
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/<project_id>/access_tokens"
[
   {
      "user_id" : 141,
      "scopes" : [
         "api"
      ],
      "name" : "token",
      "expires_at" : "2021-01-31",
      "id" : 42,
      "active" : true,
      "created_at" : "2021-01-20T22:11:48.151Z",
      "revoked" : false,
      "access_level": 40
   }
]

获取项目的访问令牌

引入于极狐GitLab 14.10。

通过 ID 获取项目访问令牌

GET projects/:id/access_tokens/:token_id
参数 类型 是否必需 描述
id integer or string yes ID 或者 项目的 URL 编码路径
token_id integer or string yes 项目访问令牌的 ID。
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/<project_id>/access_tokens/<token_id>"
{
   "user_id" : 141,
   "scopes" : [
      "api"
   ],
   "name" : "token",
   "expires_at" : "2021-01-31",
   "id" : 42,
   "active" : true,
   "created_at" : "2021-01-20T22:11:48.151Z",
   "revoked" : false,
   "access_level": 40,
   "last_used_at": "2022-03-15T11:05:42.437Z"
}

创建项目访问令牌

  • 引入于极狐GitLab 13.10。
  • token 属性引入于极狐GitLab 13.10。

创建项目访问令牌

当创建项目访问令牌时, 您设置的最高角色(访问权限)依赖于您在这个群组中是所有者还是维护者角色。例如,最高角色可设置如下:

  • 所有者 (50), 如果您在这个项目中拥有所有者权限。
  • 维护者 (40),如果您在这个项目中拥有维护者权限。

在极狐GitLab 14.8 及更早版本中,项目访问令牌拥有维护者的最高角色。

POST projects/:id/access_tokens
参数 类型 是否必需 描述
id integer or string yes ID 或者 项目的 URL 编码路径
name String yes 项目访问令牌的名称。
scopes Array[String] yes 权限范围列表
access_level Integer no 访问权限。合法的值是 10 (访客),20 (报告者),30 (开发者),40 (维护者),and 50 (所有者)。默认是 40
expires_at Date no 令牌过期时间为该日期的午夜(UTC)。
curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" \
--header "Content-Type:application/json" \
--data '{ "name":"test_token", "scopes":["api", "read_repository"], "expires_at":"2021-01-31", "access_level": 30 }' \
"https://gitlab.example.com/api/v4/projects/<project_id>/access_tokens"
{
   "scopes" : [
      "api",
      "read_repository"
   ],
   "active" : true,
   "name" : "test",
   "revoked" : false,
   "created_at" : "2021-01-21T19:35:37.921Z",
   "user_id" : 166,
   "id" : 58,
   "expires_at" : "2021-01-31",
   "token" : "D4y...Wzr",
   "access_level": 30
}

撤销项目访问令牌

引入于极狐GitLab 13.9。

撤销项目访问令牌

DELETE projects/:id/access_tokens/:token_id
参数 类型 是否必需 描述
id integer or string yes ID 或者 URL 编码中项目的路径
token_id integer or string yes 项目访问令牌的 ID。
curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/<project_id>/access_tokens/<token_id>"

响应

  • 204: No Content:撤销成功。
  • 400 Bad Request 或者 404 Not Found:撤销失败。