グループとプロジェクトのアクセス要求 API
注:この機能は GitLab 8.11 で導入されました。
有効なアクセスレベル
アクセス・レベルはGitlab::Access
モジュールで定義されています。現在、これらのレベルは認識されています:
- アクセス不可 (
0
) - ゲスト (
10
) - レポーター (
20
) - 開発者 (
30
) - メンテナー (
40
) - オーナー (
50
) - グループに対してのみ有効。
グループまたはプロジェクトのアクセス要求を一覧表示します。
認証済みユーザーが閲覧可能なアクセスリクエストの一覧を取得します。
GET /groups/:id/access_requests
GET /projects/:id/access_requests
属性 | タイプ | 必須 | 説明 |
---|---|---|---|
id
| 整数/文字列 | はい | 認証されたユーザーが所有するプロジェクトのIDまたはURLエンコードされたパス |
リクエスト例
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/:id/access_requests"
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/:id/access_requests"
回答例
[
{
"id": 1,
"username": "raymond_smith",
"name": "Raymond Smith",
"state": "active",
"created_at": "2012-10-22T14:13:35Z",
"requested_at": "2012-10-22T14:13:35Z"
},
{
"id": 2,
"username": "john_doe",
"name": "John Doe",
"state": "active",
"created_at": "2012-10-22T14:13:35Z",
"requested_at": "2012-10-22T14:13:35Z"
}
]
グループまたはプロジェクトへのアクセス要求
認証されたユーザーのグループまたはプロジェクトへのアクセスを要求します。
POST /groups/:id/access_requests
POST /projects/:id/access_requests
属性 | タイプ | 必須 | 説明 |
---|---|---|---|
id
| 整数/文字列 | はい | 認証されたユーザーが所有するプロジェクトのIDまたはURLエンコードされたパス |
リクエスト例
curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/:id/access_requests"
curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/:id/access_requests"
回答例
{
"id": 1,
"username": "raymond_smith",
"name": "Raymond Smith",
"state": "active",
"created_at": "2012-10-22T14:13:35Z",
"requested_at": "2012-10-22T14:13:35Z"
}
アクセス要求の承認者
指定されたユーザーのアクセス要求を承認します。
PUT /groups/:id/access_requests/:user_id/approve
PUT /projects/:id/access_requests/:user_id/approve
属性 | タイプ | 必須 | 説明 |
---|---|---|---|
id
| 整数/文字列 | はい | 認証されたユーザーが所有するプロジェクトのIDまたはURLエンコードされたパス |
user_id
| 整数 | はい | アクセス要求者のユーザーID |
access_level
| 整数 | いいえ | 有効なアクセスレベル (デフォルト:30 , 開発者アクセスレベル)
|
リクエスト例
curl --request PUT --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/:id/access_requests/:user_id/approve?access_level=20"
curl --request PUT --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/:id/access_requests/:user_id/approve?access_level=20"
回答例
{
"id": 1,
"username": "raymond_smith",
"name": "Raymond Smith",
"state": "active",
"created_at": "2012-10-22T14:13:35Z",
"access_level": 20
}
アクセス要求の拒否
指定されたユーザのアクセス要求を拒否します。
DELETE /groups/:id/access_requests/:user_id
DELETE /projects/:id/access_requests/:user_id
属性 | タイプ | 必須 | 説明 |
---|---|---|---|
id
| 整数/文字列 | はい | 認証されたユーザーが所有するプロジェクトのIDまたはURLエンコードされたパス |
user_id
| 整数 | はい | アクセス要求者のユーザーID |
リクエスト例
curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/:id/access_requests/:user_id"
curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/:id/access_requests/:user_id"