> ## Documentation Index
> Fetch the complete documentation index at: https://help.dingtalk.io/llms.txt
> Use this file to discover all available pages before exploring further.

# ロールメンバーの管理範囲を設定する

> ロール保有メンバーが管理できる複数部門を指定し権限の適用範囲を制限します

本インターフェースを呼び出して、ロールメンバーの管理範囲を設定します。

## リクエスト

| **基本情報**      |                                                                                                      |
| ------------- | ---------------------------------------------------------------------------------------------------- |
| HTTP URL      | [https://api.dingtalk.io/topapi/role/scope/update](https://api.dingtalk.io/topapi/role/scope/update) |
| HTTP Method   | POST                                                                                                 |
| サポートされるアプリタイプ | appType-社内アプリ                                                                                        |
| 必要な権限         | permission-qyapi\_manage\_addresslist-連絡先データ管理権限                                                     |

### クエリパラメータ

| 名前            | タイプ    | 必須 | 例       | 説明                                                                                                                |
| ------------- | ------ | -- | ------- | ----------------------------------------------------------------------------------------------------------------- |
| access\_token | String | はい | Be3xxxx | 本インターフェースを呼び出すためのアプリ認証情報。[社内アプリの access\_token を取得する](/ja/open/development/obtain-orgapp-token)インターフェースを通じて取得します。 |

### リクエストボディ

| 名前        | タイプ    | 必須  | 例      | 説明                                                                                                              |
| --------- | ------ | --- | ------ | --------------------------------------------------------------------------------------------------------------- |
| userid    | String | はい  | EMP123 | 企業における社員の userId。                                                                                               |
| role\_id  | Number | はい  | 12345  | ロール ID。[ロールリストを取得する](/ja/open/development/obtains-a-list-of-enterprise-roles) インターフェースを呼び出して id パラメータの値を取得できます。 |
| dept\_ids | String | いいえ | 1231   | 部門 ID リスト。複数の部門 ID はカンマで区切ります。最大 50 個の部門 ID をサポートします。指定しない場合は、範囲を全員に設定します。                                      |

### リクエスト例

```curl theme={"theme":{"light":"github-light","dark":"github-dark"}}
curl -X POST "https://api.dingtalk.io/topapi/role/scope/update" \
-H 'Content-Type:application/x-www-form-urlencoded;charset=utf-8' \
-d 'access_token=3100xxxx2280f5' \
-d 'dept_ids=1231' \
-d 'role_id=12345' \
-d 'userid=EMP123'
```

Java

```text theme={"theme":{"light":"github-light","dark":"github-dark"}}
DingTalkClient client = new DefaultDingTalkClient("https://api.dingtalk.io/topapi/role/scope/update");
OapiRoleScopeUpdateRequest req = new OapiRoleScopeUpdateRequest();
req.setUserid("EMP123");
req.setRoleId(12345L);
req.setDeptIds("1231,2423");
OapiRoleScopeUpdateResponse rsp = client.execute(req, access_token);
System.out.println(rsp.getBody());
```

Python

```python theme={"theme":{"light":"github-light","dark":"github-dark"}}
import dingtalk.api

req=dingtalk.api.OapiRoleScopeUpdateRequest("https://api.dingtalk.io/topapi/role/scope/update")

req.userid="EMP123"
req.role_id=12345
req.dept_ids="1231"
try:
  resp= req.getResponse(access_token)
  print(resp)
except Exception,e:
  print(e)
```

PHP

```php theme={"theme":{"light":"github-light","dark":"github-dark"}}
include "TopSdk.php";
date_default_timezone_set('Asia/Shanghai');

$c = new DingTalkClient(DingTalkConstant::$CALL_TYPE_OAPI, DingTalkConstant::$METHOD_POST , DingTalkConstant::$FORMAT_JSON);
$req = new OapiRoleScopeUpdateRequest;
$req->setUserid("EMP123");
$req->setRoleId("12345");
$req->setDeptIds("1231,2423,53536");
$resp = $c->execute($req, $access_token, "https://api.dingtalk.io/topapi/role/scope/update");
```

C#

```text theme={"theme":{"light":"github-light","dark":"github-dark"}}
IDingTalkClient client = new DefaultDingTalkClient("https://api.dingtalk.io/topapi/role/scope/update");
OapiRoleScopeUpdateRequest req = new OapiRoleScopeUpdateRequest();
req.Userid = "EMP123";
req.RoleId = 12345L;
req.DeptIds = "1231";
OapiRoleScopeUpdateResponse rsp = client.Execute(req, access_token);
Console.WriteLine(rsp.Body);
```

## レスポンス

### レスポンスボディ

| 名前          | タイプ    | 例            | 説明          |
| ----------- | ------ | ------------ | ----------- |
| errcode     | Number | 0            | リターンコード。    |
| errmsg      | String | ok           | リターンコードの説明。 |
| request\_id | String | 4pe0h4hlsit9 | リクエスト ID。   |

### レスポンスボディの例

```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
{
  "errcode":"0",
  "errmsg":"ok",
  "request_id":"4pe0h4hlsit9"
}
```

### エラーコード

本インターフェースの呼び出しでエラーが発生した場合は、エラーメッセージに基づいて [グローバルエラーコード](/ja/open/development/server-api-error-codes-1) ドキュメントから解決方法を検索してください。

| エラーコード（errcode） | エラーコードの説明（errmsg） | 解決方法                    |
| --------------- | ----------------- | ----------------------- |
| 40003           | 無効な userId        | userId が正しいか確認してください    |
| 34018           | role\_id を空にできません | roleId を入力してください        |
| 60301           | 無効な role\_id      | role\_id が正しいか確認してください  |
| 60003           | 部門が存在しません         | dept\_ids が正しいか確認してください |
| 46004           | 社員が組織内に存在しません     | パラメータが正しいか確認してください      |
| 400002          | 無効なパラメータ          | 入力パラメータが正しいか確認してください    |
| -1              | システムビジー           | 後で再試行してください             |
