许可证 (BASIC SELF)
要与许可证端点交互,您需要将自己验证为管理员。
检索当前许可证信息
GET /license
{
"id": 2,
"plan": "gold",
"created_at": "2018-02-27T23:21:58.674Z",
"starts_at": "2018-01-27",
"expires_at": "2022-01-27",
"historical_max": 300,
"maximum_user_count": 300,
"expired": false,
"overage": 200,
"user_limit": 100,
"active_users": 300,
"licensee": {
"Name": "John Doe1"
},
"add_ons": {
"GitLab_FileLocks": 1,
"GitLab_Auditor_User": 1
}
}
检索所有许可证信息
GET /licenses
[
{
"id": 1,
"plan": "silver",
"created_at": "2018-02-27T23:21:58.674Z",
"starts_at": "2018-01-27",
"expires_at": "2022-01-27",
"historical_max": 300,
"maximum_user_count": 300,
"expired": false,
"overage": 200,
"user_limit": 100,
"licensee": {
"Name": "John Doe1"
},
"add_ons": {
"GitLab_FileLocks": 1,
"GitLab_Auditor_User": 1
}
},
{
"id": 2,
"plan": "gold",
"created_at": "2018-02-27T23:21:58.674Z",
"starts_at": "2018-01-27",
"expires_at": "2022-01-27",
"historical_max": 300,
"maximum_user_count": 300,
"expired": false,
"overage": 200,
"user_limit": 100,
"licensee": {
"Name": "Doe John"
},
"add_ons": {
"GitLab_FileLocks": 1
}
}
]
超额是计费用户数与许可用户数之间的差额。 根据许可证是否过期,计算方式不同。
- 如果许可证已过期,则使用历史最大计费用户计数 (
historical_max
)。 - 如果许可证未过期,则使用当前计费用户计数。
返回:
-
200 OK
:响应包含 JSON 格式的许可证。如果没有许可证,则是空的 JSON 数组。 -
403 Forbidden
:如果当前用户不允许读取许可证。
检索单个许可证的信息
GET /license/:id
支持的参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
id
| integer | yes | 极狐GitLab 许可证 ID |
返回以下状态码:
-
200 OK
:包含 JSON 格式的许可证的响应 -
404 Not Found
:所请求的许可证不存在 -
403 Forbidden
:当前用户无权读取许可证
请求示例:
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/license/:id"
响应示例:
{
"id": 1,
"plan": "premium",
"created_at": "2018-02-27T23:21:58.674Z",
"starts_at": "2018-01-27",
"expires_at": "2022-01-27",
"historical_max": 300,
"maximum_user_count": 300,
"expired": false,
"overage": 200,
"user_limit": 100,
"active_users": 50,
"licensee": {
"Name": "John Doe1"
},
"add_ons": {
"GitLab_FileLocks": 1,
"GitLab_Auditor_User": 1
}
}
添加新许可证
POST /license
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
license
| string | yes | 许可证串 |
curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/license?license=eyJkYXRhIjoiMHM5Q...S01Udz09XG4ifQ=="
响应示例:
{
"id": 1,
"plan": "gold",
"created_at": "2018-02-27T23:21:58.674Z",
"starts_at": "2018-01-27",
"expires_at": "2022-01-27",
"historical_max": 300,
"maximum_user_count": 300,
"expired": false,
"overage": 200,
"user_limit": 100,
"active_users": 300,
"licensee": {
"Name": "John Doe1"
},
"add_ons": {
"GitLab_FileLocks": 1,
"GitLab_Auditor_User": 1
}
}
返回:
- 成功添加许可证:
201 Created
- 无法添加许可证:
400 Bad Request
,并返回错误原因
删除许可证
DELETE /license/:id
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
id
| integer | yes | 极狐GitLab 许可证 ID |
curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/license/:id"
响应示例:
{
"id": 2,
"plan": "gold",
"created_at": "2018-02-27T23:21:58.674Z",
"starts_at": "2018-01-27",
"expires_at": "2022-01-27",
"historical_max": 300,
"maximum_user_count": 300,
"expired": false,
"overage": 200,
"user_limit": 100,
"licensee": {
"Name": "John Doe"
},
"add_ons": {
"GitLab_FileLocks": 1,
"GitLab_Auditor_User": 1
}
}
返回:
- 成功删除许可证:
204 No Content
- 当前用户无权删除许可证:
403 Forbidden
- 无法找到要删除的许可证:
404 Not Found
触发计费用户的重新计算
PUT /license/:id/refresh_billable_users
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
id
| integer | yes | 极狐GitLab 许可证 ID |
curl --request PUT --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/license/:id/refresh_billable_users"
响应示例:
{
"success": true
}
返回以下内容:
-
202 Accepted
:如果刷新计费用户的请求成功启动。 -
403 Forbidden
:如果当前用户不允许刷新许可证的计费用户。 -
404 Not Found
:如果找不到许可证。
参数 | 类型 | 描述 |
---|---|---|
success
| boolean | 请求是否成功 |