- 현재 라이선스에 대한 정보 가져오기
- 모든 라이선스에 대한 정보 가져오기
- 단일 라이선스에 대한 정보 가져오기
- 새 라이선스 추가
- 라이선스 삭제
- 청구 가능한 사용자의 재계산 트리거
- 현재 라이선스에 대한 사용 정보 검색
라이선스
Tier: Free, Premium, Ultimate
Offering: Self-Managed
라이선스 엔드포인트와 상호 작용하려면 관리자로 자격을 인증해야 합니다.
현재 라이선스에 대한 정보 가져오기
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
)를 사용합니다. - 라이선스가 만료되지 않았을 때, 현재 청구 가능한 사용자 수를 사용합니다.
반환:
- 라이선스가 없는 경우, 응답이 빈 JSON 배열로
200 OK
를 반환합니다. - 현재 사용자가 라이선스를 읽을 수 없는 경우,
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 | 요청이 성공했는지 여부. |
현재 라이선스에 대한 사용 정보 검색
현재 라이선스에 대한 사용 정보를 가져와 CSV 형식으로 내보냅니다.
GET /license/usage_export.csv
curl --request PUT --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/license/usage_export.csv"
예시 응답:
License Key,"eyJkYXRhIjoib1EwRWZXU3RobDY2Yl=
"
이메일,user@example.com
라이선스 시작 날짜,2023-02-22
라이선스 종료 날짜,2024-02-22
회사,Example Corp.
생성 일시,2023-09-05 06:56:23
"",""
날짜,청구 가능한 사용자 수
2023-07-11 12:00:05,21
2023-07-13 12:00:06,21
2023-08-16 12:00:02,21
2023-09-04 12:00:12,21
반환 값:
-
202 Accepted
: 청구 가능한 사용자를 새로 고침하는 요청이 성공적으로 시작된 경우 -
403 Forbidden
: 현재 사용자가 라이선스의 청구 가능한 사용자를 새로 고침할 수 없는 경우 -
404 Not Found
: 라이선스를 찾을 수 없는 경우