그룹 액세스 토큰 API

Tier: Free, Premium, Ultimate Offering: GitLab.com, Self-Managed, GitLab Dedicated

그룹 액세스 토큰에 대해 더 읽어보세요.

그룹 액세스 토큰 디렉터리

그룹 액세스 토큰 디렉터리을 가져옵니다.

GET groups/:id/access_tokens
속성 유형 필수 설명
id 정수 또는 문자열 그룹의 ID 또는 URL-encoded path
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/<group_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
   }
]

그룹 액세스 토큰 가져오기

ID로 그룹 액세스 토큰을 가져옵니다.

GET groups/:id/access_tokens/:token_id
속성 유형 필수 설명
id 정수 또는 문자열 그룹의 ID 또는 URL-encoded path
token_id 정수 그룹 액세스 토큰의 ID
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/<group_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
}

그룹 액세스 토큰 생성

  • expires_at 속성의 기본값은 GitLab 16.0에서 도입되었습니다.

그룹 액세스 토큰을 생성합니다. 그룹을 소유하는 역할(Owner)을 가져야합니다.

POST groups/:id/access_tokens
속성 유형 필수 설명
id 정수 또는 문자열 그룹의 ID 또는 URL-encoded path
name 문자열 그룹 액세스 토큰의 이름
scopes Array[String] 스코프 디렉터리
access_level 정수 아니요 액세스 수준. 유효한 값은 10 (게스트), 20 (리포터), 30 (개발자), 40 (유지보수자) 및 50 (소유자)입니다.
expires_at 날짜 액세스 토큰의 만료 날짜(ISO 형식 (YYYY-MM-DD))입니다. 날짜는 액세스 토큰의 최대 유효 기간보다 늦게 설정할 수 없습니다.
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/groups/<group_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 16.0에서 도입되었습니다.

전제 조건:

그룹 액세스 토큰을 교체합니다. 이전 토큰을 폐기하고 한 주 동안 유효한 새 토큰을 만듭니다.

GitLab 16.6 이후, expires_at 매개변수를 사용하여 다른 만료 날짜를 설정할 수 있습니다. 이 비표준 만료 날짜는 교체 날짜로부터 최대 1년까지 설정할 수 있습니다.

POST /groups/:id/access_tokens/:token_id/rotate
속성 유형 필수 설명
id 정수 또는 문자열 그룹의 ID 또는 URL-encoded path
token_id 정수 액세스 토큰의 ID
expires_at 날짜 아니요 액세스 토큰의 만료 날짜(ISO 형식 (YYYY-MM-DD))로 도입되었습니다. 16.6에서
curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/<group_id>/access_tokens/<token_id>/rotate"

예시 응답:

{
    "id": 42,
    "name": "Rotated Token",
    "revoked": false,
    "created_at": "2023-08-01T15:00:00.000Z",
    "scopes": ["api"],
    "user_id": 1337,
    "last_used_at": null,
    "active": true,
    "expires_at": "2023-08-15",
    "access_level": 30,
    "token": "s3cr3t"
}

응답

  • 200: OK: 기존 토큰이 성공적으로 폐기되고 새 토큰이 생성된 경우.
  • 400: Bad Request: 교체가 성공적으로 이루어지지 않은 경우.
  • 401: Unauthorized: 다음 중 하나에 해당하는 경우:
    • 사용자가 지정된 ID의 토큰에 액세스 할 수 없음.
    • 지정된 ID의 토큰이 존재하지 않음.
  • 404: Not Found: 사용자가 관리자이지만 지정된 ID의 토큰이 존재하지 않음.

개인 정보 무단 사용 탐지

자동 재사용 탐지에 대한 자세한 내용은 개인 액세스 토큰의 자동 재사용 탐지를 참조하세요.

그룹 액세스 토큰 취소

그룹 액세스 토큰을 취소합니다.

DELETE groups/:id/access_tokens/:token_id
속성 유형 필수 설명
id 정수 또는 문자열 그룹의 ID 또는 URL-encoded path
token_id 정수 그룹 액세스 토큰의 ID
curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/<group_id>/access_tokens/<token_id>"

응답

  • 성공적으로 철회된 경우 204: No Content 반환.
  • 철회되지 않은 경우 400 Bad Request 또는 404 Not Found 반환.