InfoGrab DocsInfoGrab Docs

그룹 엔터프라이즈 사용자 API

요약

이 API 엔드포인트를 사용하여 엔터프라이즈 사용자와 상호작용합니다. 이 API 엔드포인트는 최상위 그룹에만 작동합니다. 지정된 최상위 그룹의 모든 엔터프라이즈 사용자를 나열합니다. page 및 per_page 페이지네이션 매개변수를 사용하여 결과를 필터링합니다.

이 API 엔드포인트를 사용하여 엔터프라이즈 사용자와 상호작용합니다. 자세한 내용은 엔터프라이즈 사용자를 참조하세요.

이 API 엔드포인트는 최상위 그룹에만 작동합니다. 사용자가 그룹의 구성원일 필요는 없습니다.

사전 요구 사항:

  • 최상위 그룹에서 Owner 역할이 있어야 합니다.

모든 엔터프라이즈 사용자 목록 조회#

히스토리
  • GitLab 17.7에서 도입되었습니다.

지정된 최상위 그룹의 모든 엔터프라이즈 사용자를 나열합니다.

page 및 per_page 페이지네이션 매개변수를 사용하여 결과를 필터링합니다.

GET /groups/:id/enterprise_users

지원되는 속성:

속성 유형 필수 설명
id 정수 또는 문자열 예 최상위 그룹의 ID 또는 URL 인코딩된 경로.
username 문자열 아니요 지정된 사용자명을 가진 사용자를 반환합니다.
search 문자열 아니요 일치하는 이름, 이메일 또는 사용자명을 가진 사용자를 반환합니다. 부분 값을 사용하면 결과가 더 많이 반환됩니다.
active 불리언 아니요 활성 사용자만 반환합니다.
blocked 불리언 아니요 차단된 사용자만 반환합니다.
created_after 날짜시간 아니요 지정된 시간 이후에 생성된 사용자를 반환합니다. 형식: ISO 8601 (YYYY-MM-DDTHH:MM:SSZ).
created_before 날짜시간 아니요 지정된 시간 이전에 생성된 사용자를 반환합니다. 형식: ISO 8601 (YYYY-MM-DDTHH:MM:SSZ).
two_factor 문자열 아니요 이중 인증(2FA) 등록 상태를 기준으로 사용자를 반환합니다. 가능한 값: enabled, disabled.

요청 예시:

curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/:id/enterprise_users"

응답 예시:

[
  {
    "id": 66,
    "username": "user22",
    "name": "Sidney Jones22",
    "state": "active",
    "avatar_url": "https://www.gravatar.com/avatar/xxx?s=80&d=identicon",
    "web_url": "http://my.gitlab.com/user22",
    "created_at": "2021-09-10T12:48:22.381Z",
    "bio": "",
    "location": null,
    "public_email": "",
    "linkedin": "",
    "twitter": "",
    "website_url": "",
    "organization": null,
    "job_title": "",
    "pronouns": null,
    "bot": false,
    "work_information": null,
    "followers": 0,
    "following": 0,
    "local_time": null,
    "last_sign_in_at": null,
    "confirmed_at": "2021-09-10T12:48:22.330Z",
    "last_activity_on": null,
    "email": "user22@example.org",
    "theme_id": 1,
    "color_scheme_id": 1,
    "projects_limit": 100000,
    "current_sign_in_at": null,
    "identities": [
      {
        "provider": "group_saml",
        "extern_uid": "2435223452345",
        "saml_provider_id": 1
      }
    ],
    "can_create_group": true,
    "can_create_project": true,
    "two_factor_enabled": false,
    "external": false,
    "private_profile": false,
    "commit_email": "user22@example.org",
    "shared_runners_minutes_limit": null,
    "extra_shared_runners_minutes_limit": null,
    "scim_identities": [
      {
        "extern_uid": "2435223452345",
        "group_id": 1,
        "active": true
      }
    ]
  },
  ...
]

엔터프라이즈 사용자 조회#

히스토리
  • GitLab 17.9에서 도입되었습니다.

지정된 엔터프라이즈 사용자를 조회합니다.

GET /groups/:id/enterprise_users/:user_id

지원되는 속성:

속성 유형 필수 설명
id 정수 또는 문자열 예 최상위 그룹의 ID 또는 URL 인코딩된 경로.
user_id 정수 예 사용자 계정의 ID.

요청 예시:

curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/:id/enterprise_users/:user_id"

응답 예시:

{
  "id": 66,
  "username": "user22",
  "name": "Sidney Jones22",
  "state": "active",
  "avatar_url": "https://www.gravatar.com/avatar/xxx?s=80&d=identicon",
  "web_url": "http://my.gitlab.com/user22",
  "created_at": "2021-09-10T12:48:22.381Z",
  "bio": "",
  "location": null,
  "public_email": "",
  "linkedin": "",
  "twitter": "",
  "website_url": "",
  "organization": null,
  "job_title": "",
  "pronouns": null,
  "bot": false,
  "work_information": null,
  "followers": 0,
  "following": 0,
  "local_time": null,
  "last_sign_in_at": null,
  "confirmed_at": "2021-09-10T12:48:22.330Z",
  "last_activity_on": null,
  "email": "user22@example.org",
  "theme_id": 1,
  "color_scheme_id": 1,
  "projects_limit": 100000,
  "current_sign_in_at": null,
  "identities": [
    {
      "provider": "group_saml",
      "extern_uid": "2435223452345",
      "saml_provider_id": 1
    }
  ],
  "can_create_group": true,
  "can_create_project": true,
  "two_factor_enabled": false,
  "external": false,
  "private_profile": false,
  "commit_email": "user22@example.org",
  "shared_runners_minutes_limit": null,
  "extra_shared_runners_minutes_limit": null,
  "scim_identities": [
    {
      "extern_uid": "2435223452345",
      "group_id": 1,
      "active": true
    }
  ]
}

엔터프라이즈 사용자 업데이트#

히스토리
  • GitLab 18.6에서 도입되었습니다.
  • projects_limit 및 can_create_group이 GitLab 19.2에서 도입되었습니다.

지정된 엔터프라이즈 사용자를 업데이트합니다.

PATCH /groups/:id/enterprise_users/:user_id

지원되는 속성:

속성 유형 필수 설명
id 정수 또는 문자열 예 최상위 그룹의 ID 또는 URL 인코딩된 경로.
user_id 정수 예 사용자 계정의 ID.
name 문자열 아니요 사용자 계정의 이름.
email 문자열 아니요 사용자 계정의 이메일 주소. 인증된 그룹 도메인의 이메일이어야 합니다.
projects_limit 정수 아니요 사용자가 생성할 수 있는 프로젝트 수.
can_create_group 불리언 아니요 사용자가 그룹을 생성할 수 있는지 나타내는 플래그.

요청 예시:

curl --request PATCH --header "PRIVATE-TOKEN: <your_access_token>" --data "email=new-email@example.com" --data "name=New name" "https://gitlab.example.com/api/v4/groups/:id/enterprise_users/:user_id"

성공 시 200 OK를 반환합니다.

성공적인 응답 예시:

{
  "id": 66,
  "username": "user22",
  "name": "New name",
  "state": "active",
  "avatar_url": "https://www.gravatar.com/avatar/xxx?s=80&d=identicon",
  "web_url": "http://my.gitlab.com/user22",
  "created_at": "2021-09-10T12:48:22.381Z",
  "bio": "",
  "location": null,
  "public_email": "",
  "linkedin": "",
  "twitter": "",
  "website_url": "",
  "organization": null,
  "job_title": "",
  "pronouns": null,
  "bot": false,
  "work_information": null,
  "followers": 0,
  "following": 0,
  "local_time": null,
  "last_sign_in_at": null,
  "confirmed_at": "2021-09-10T12:48:22.330Z",
  "last_activity_on": null,
  "email": "new-email@example.com",
  "theme_id": 1,
  "color_scheme_id": 1,
  "projects_limit": 100000,
  "current_sign_in_at": null,
  "identities": [
    {
      "provider": "group_saml",
      "extern_uid": "2435223452345",
      "saml_provider_id": 1
    }
  ],
  "can_create_group": true,
  "can_create_project": true,
  "two_factor_enabled": false,
  "external": false,
  "private_profile": false,
  "commit_email": "user22@example.org",
  "shared_runners_minutes_limit": null,
  "extra_shared_runners_minutes_limit": null,
  "scim_identities": [
    {
      "extern_uid": "2435223452345",
      "group_id": 1,
      "active": true
    }
  ]
}

기타 가능한 응답:

  • 400 Bad Request: 유효성 검사 오류.
  • 403 Forbidden: 인증된 사용자가 Owner가 아닙니다.
  • 404 Not found: 사용자를 찾을 수 없습니다.

엔터프라이즈 사용자 삭제#

히스토리
  • GitLab 18.3에서 도입되었습니다.

지정된 엔터프라이즈 사용자를 삭제합니다.

DELETE /groups/:id/enterprise_users/:user_id

지원되는 속성:

속성 유형 필수 설명
id 정수 또는 문자열 예 최상위 그룹의 ID 또는 URL 인코딩된 경로.
user_id 정수 예 사용자 계정의 ID.
hard_delete 불리언 아니요 false이면 사용자를 삭제하고 기여 내용을 고스트 사용자로 이전합니다. true이면 사용자, 관련 기여 내용 및 사용자가 단독 소유한 그룹을 삭제합니다. 기본값: false.

요청 예시:

curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/:id/enterprise_users/:user_id"

성공 시 204 No content를 반환합니다.

기타 가능한 응답:

  • 403 Forbidden: 인증된 사용자가 Owner가 아닙니다.
  • 404 Not found: 사용자를 찾을 수 없습니다.
  • 409 Conflict: 그룹의 단독 Owner인 사용자는 제거할 수 없습니다.

엔터프라이즈 사용자의 이중 인증 비활성화#

히스토리
  • GitLab 17.9에서 도입되었습니다.

지정된 엔터프라이즈 사용자의 이중 인증(2FA)을 비활성화합니다.

PATCH /groups/:id/enterprise_users/:user_id/disable_two_factor

지원되는 속성:

속성 유형 필수 설명
id 정수 또는 문자열 예 최상위 그룹의 ID 또는 URL 인코딩된 경로.
user_id 정수 예 사용자 계정의 ID.

요청 예시:

curl --request PATCH --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/:id/enterprise_users/:user_id/disable_two_factor"

성공 시 204 No content를 반환합니다.

기타 가능한 응답:

  • 400 Bad request: 지정된 사용자에게 2FA가 활성화되어 있지 않습니다.
  • 403 Forbidden: 인증된 사용자가 Owner가 아닙니다.
  • 404 Not found: 사용자를 찾을 수 없습니다.

그룹 엔터프라이즈 사용자 API

GitLab v19.5
Tier: Premium, Ultimate
Offering: GitLab.com
원문 보기

요약

이 API 엔드포인트를 사용하여 엔터프라이즈 사용자와 상호작용합니다. 이 API 엔드포인트는 최상위 그룹에만 작동합니다. 지정된 최상위 그룹의 모든 엔터프라이즈 사용자를 나열합니다. page 및 per_page 페이지네이션 매개변수를 사용하여 결과를 필터링합니다.

이 API 엔드포인트를 사용하여 엔터프라이즈 사용자와 상호작용합니다. 자세한 내용은 엔터프라이즈 사용자를 참조하세요.

이 API 엔드포인트는 최상위 그룹에만 작동합니다. 사용자가 그룹의 구성원일 필요는 없습니다.

사전 요구 사항:

  • 최상위 그룹에서 Owner 역할이 있어야 합니다.

모든 엔터프라이즈 사용자 목록 조회#

히스토리
  • GitLab 17.7에서 도입되었습니다.

지정된 최상위 그룹의 모든 엔터프라이즈 사용자를 나열합니다.

page 및 per_page 페이지네이션 매개변수를 사용하여 결과를 필터링합니다.

GET /groups/:id/enterprise_users

지원되는 속성:

속성 유형 필수 설명
id 정수 또는 문자열 예 최상위 그룹의 ID 또는 URL 인코딩된 경로.
username 문자열 아니요 지정된 사용자명을 가진 사용자를 반환합니다.
search 문자열 아니요 일치하는 이름, 이메일 또는 사용자명을 가진 사용자를 반환합니다. 부분 값을 사용하면 결과가 더 많이 반환됩니다.
active 불리언 아니요 활성 사용자만 반환합니다.
blocked 불리언 아니요 차단된 사용자만 반환합니다.
created_after 날짜시간 아니요 지정된 시간 이후에 생성된 사용자를 반환합니다. 형식: ISO 8601 (YYYY-MM-DDTHH:MM:SSZ).
created_before 날짜시간 아니요 지정된 시간 이전에 생성된 사용자를 반환합니다. 형식: ISO 8601 (YYYY-MM-DDTHH:MM:SSZ).
two_factor 문자열 아니요 이중 인증(2FA) 등록 상태를 기준으로 사용자를 반환합니다. 가능한 값: enabled, disabled.

요청 예시:

curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/:id/enterprise_users"

응답 예시:

[
  {
    "id": 66,
    "username": "user22",
    "name": "Sidney Jones22",
    "state": "active",
    "avatar_url": "https://www.gravatar.com/avatar/xxx?s=80&d=identicon",
    "web_url": "http://my.gitlab.com/user22",
    "created_at": "2021-09-10T12:48:22.381Z",
    "bio": "",
    "location": null,
    "public_email": "",
    "linkedin": "",
    "twitter": "",
    "website_url": "",
    "organization": null,
    "job_title": "",
    "pronouns": null,
    "bot": false,
    "work_information": null,
    "followers": 0,
    "following": 0,
    "local_time": null,
    "last_sign_in_at": null,
    "confirmed_at": "2021-09-10T12:48:22.330Z",
    "last_activity_on": null,
    "email": "user22@example.org",
    "theme_id": 1,
    "color_scheme_id": 1,
    "projects_limit": 100000,
    "current_sign_in_at": null,
    "identities": [
      {
        "provider": "group_saml",
        "extern_uid": "2435223452345",
        "saml_provider_id": 1
      }
    ],
    "can_create_group": true,
    "can_create_project": true,
    "two_factor_enabled": false,
    "external": false,
    "private_profile": false,
    "commit_email": "user22@example.org",
    "shared_runners_minutes_limit": null,
    "extra_shared_runners_minutes_limit": null,
    "scim_identities": [
      {
        "extern_uid": "2435223452345",
        "group_id": 1,
        "active": true
      }
    ]
  },
  ...
]

엔터프라이즈 사용자 조회#

히스토리
  • GitLab 17.9에서 도입되었습니다.

지정된 엔터프라이즈 사용자를 조회합니다.

GET /groups/:id/enterprise_users/:user_id

지원되는 속성:

속성 유형 필수 설명
id 정수 또는 문자열 예 최상위 그룹의 ID 또는 URL 인코딩된 경로.
user_id 정수 예 사용자 계정의 ID.

요청 예시:

curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/:id/enterprise_users/:user_id"

응답 예시:

{
  "id": 66,
  "username": "user22",
  "name": "Sidney Jones22",
  "state": "active",
  "avatar_url": "https://www.gravatar.com/avatar/xxx?s=80&d=identicon",
  "web_url": "http://my.gitlab.com/user22",
  "created_at": "2021-09-10T12:48:22.381Z",
  "bio": "",
  "location": null,
  "public_email": "",
  "linkedin": "",
  "twitter": "",
  "website_url": "",
  "organization": null,
  "job_title": "",
  "pronouns": null,
  "bot": false,
  "work_information": null,
  "followers": 0,
  "following": 0,
  "local_time": null,
  "last_sign_in_at": null,
  "confirmed_at": "2021-09-10T12:48:22.330Z",
  "last_activity_on": null,
  "email": "user22@example.org",
  "theme_id": 1,
  "color_scheme_id": 1,
  "projects_limit": 100000,
  "current_sign_in_at": null,
  "identities": [
    {
      "provider": "group_saml",
      "extern_uid": "2435223452345",
      "saml_provider_id": 1
    }
  ],
  "can_create_group": true,
  "can_create_project": true,
  "two_factor_enabled": false,
  "external": false,
  "private_profile": false,
  "commit_email": "user22@example.org",
  "shared_runners_minutes_limit": null,
  "extra_shared_runners_minutes_limit": null,
  "scim_identities": [
    {
      "extern_uid": "2435223452345",
      "group_id": 1,
      "active": true
    }
  ]
}

엔터프라이즈 사용자 업데이트#

히스토리
  • GitLab 18.6에서 도입되었습니다.
  • projects_limit 및 can_create_group이 GitLab 19.2에서 도입되었습니다.

지정된 엔터프라이즈 사용자를 업데이트합니다.

PATCH /groups/:id/enterprise_users/:user_id

지원되는 속성:

속성 유형 필수 설명
id 정수 또는 문자열 예 최상위 그룹의 ID 또는 URL 인코딩된 경로.
user_id 정수 예 사용자 계정의 ID.
name 문자열 아니요 사용자 계정의 이름.
email 문자열 아니요 사용자 계정의 이메일 주소. 인증된 그룹 도메인의 이메일이어야 합니다.
projects_limit 정수 아니요 사용자가 생성할 수 있는 프로젝트 수.
can_create_group 불리언 아니요 사용자가 그룹을 생성할 수 있는지 나타내는 플래그.

요청 예시:

curl --request PATCH --header "PRIVATE-TOKEN: <your_access_token>" --data "email=new-email@example.com" --data "name=New name" "https://gitlab.example.com/api/v4/groups/:id/enterprise_users/:user_id"

성공 시 200 OK를 반환합니다.

성공적인 응답 예시:

{
  "id": 66,
  "username": "user22",
  "name": "New name",
  "state": "active",
  "avatar_url": "https://www.gravatar.com/avatar/xxx?s=80&d=identicon",
  "web_url": "http://my.gitlab.com/user22",
  "created_at": "2021-09-10T12:48:22.381Z",
  "bio": "",
  "location": null,
  "public_email": "",
  "linkedin": "",
  "twitter": "",
  "website_url": "",
  "organization": null,
  "job_title": "",
  "pronouns": null,
  "bot": false,
  "work_information": null,
  "followers": 0,
  "following": 0,
  "local_time": null,
  "last_sign_in_at": null,
  "confirmed_at": "2021-09-10T12:48:22.330Z",
  "last_activity_on": null,
  "email": "new-email@example.com",
  "theme_id": 1,
  "color_scheme_id": 1,
  "projects_limit": 100000,
  "current_sign_in_at": null,
  "identities": [
    {
      "provider": "group_saml",
      "extern_uid": "2435223452345",
      "saml_provider_id": 1
    }
  ],
  "can_create_group": true,
  "can_create_project": true,
  "two_factor_enabled": false,
  "external": false,
  "private_profile": false,
  "commit_email": "user22@example.org",
  "shared_runners_minutes_limit": null,
  "extra_shared_runners_minutes_limit": null,
  "scim_identities": [
    {
      "extern_uid": "2435223452345",
      "group_id": 1,
      "active": true
    }
  ]
}

기타 가능한 응답:

  • 400 Bad Request: 유효성 검사 오류.
  • 403 Forbidden: 인증된 사용자가 Owner가 아닙니다.
  • 404 Not found: 사용자를 찾을 수 없습니다.

엔터프라이즈 사용자 삭제#

히스토리
  • GitLab 18.3에서 도입되었습니다.

지정된 엔터프라이즈 사용자를 삭제합니다.

DELETE /groups/:id/enterprise_users/:user_id

지원되는 속성:

속성 유형 필수 설명
id 정수 또는 문자열 예 최상위 그룹의 ID 또는 URL 인코딩된 경로.
user_id 정수 예 사용자 계정의 ID.
hard_delete 불리언 아니요 false이면 사용자를 삭제하고 기여 내용을 고스트 사용자로 이전합니다. true이면 사용자, 관련 기여 내용 및 사용자가 단독 소유한 그룹을 삭제합니다. 기본값: false.

요청 예시:

curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/:id/enterprise_users/:user_id"

성공 시 204 No content를 반환합니다.

기타 가능한 응답:

  • 403 Forbidden: 인증된 사용자가 Owner가 아닙니다.
  • 404 Not found: 사용자를 찾을 수 없습니다.
  • 409 Conflict: 그룹의 단독 Owner인 사용자는 제거할 수 없습니다.

엔터프라이즈 사용자의 이중 인증 비활성화#

히스토리
  • GitLab 17.9에서 도입되었습니다.

지정된 엔터프라이즈 사용자의 이중 인증(2FA)을 비활성화합니다.

PATCH /groups/:id/enterprise_users/:user_id/disable_two_factor

지원되는 속성:

속성 유형 필수 설명
id 정수 또는 문자열 예 최상위 그룹의 ID 또는 URL 인코딩된 경로.
user_id 정수 예 사용자 계정의 ID.

요청 예시:

curl --request PATCH --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/:id/enterprise_users/:user_id/disable_two_factor"

성공 시 204 No content를 반환합니다.

기타 가능한 응답:

  • 400 Bad request: 지정된 사용자에게 2FA가 활성화되어 있지 않습니다.
  • 403 Forbidden: 인증된 사용자가 Owner가 아닙니다.
  • 404 Not found: 사용자를 찾을 수 없습니다.