[comment]: # translation:outdated

[comment]: # ({36f834f7-36f834f7})
# template.update

[comment]: # ({/36f834f7-36f834f7})

[comment]: # ({cdfa658d-f8425904})
### 説明

`object template.update(object/array templates)`

このメソッドで、既存のテンプレートを更新できます。

::: noteclassic
このメソッドは*Admin*および*Super admin*ユーザータイプでのみ使用できます。 メソッドを呼び出す権限は、ユーザーロール設定で取り消すことができます。 詳細については[ユーザーの役割](/manual/web_interface/frontend_sections/administration/user_roles)を参照してください。
:::

[comment]: # ({/cdfa658d-f8425904})

[comment]: # ({54d09dcd-5d06cf34})
### パラメータ

`(object/array)` 更新するテンプレート プロパティ

テンプレートごとに `templateid` プロパティを定義する必要があります。すべてのプロパティはオプションです。 指定されたプロパティのみが更新され、他のプロパティは変更されません。

このメソッドは[標準のテンプレート プロパティ](object#template)に加えて、次のパラメーターを受け入れます。

|パラメータ|[タイプ](/manual/api/reference_commentary#data_types)|説明|
|--|--|------|
|groups|object/array|ホスト[グループ](/manual/api/reference/hostgroup/object)を使用して、テンプレートが属する現在のホスト グループを置き換えます。<br><br>ホストグループには`groupid` プロパティが定義されている必要があります。|
|tags|object/array|テンプレート[タグ](/manual/api/reference/template/object#template_tag)を使用して、現在のテンプレート タグを置き換えます。|
|macros|object/array|[ユーザー マクロ](/manual/api/reference/usermacro/object)を使用して、特定のテンプレートの現在のユーザー マクロを置き換えます。|
|templates|object/array|[テンプレート](/manual/api/reference/template/object) を使用して、現在リンクされているテンプレートを置き換えます。リンクが渡されなかったテンプレートは、リンクのみ解除されます。<br><br>テンプレートには `templateid` プロパティが定義されている必要があります。|
|templates\_clear|object/array|[テンプレート](/manual/api/reference/template/object)で指定されたテンプレートからリンクを解除してクリアします。<br><br>テンプレートには `templateid` プロパティが定義されている必要があります。|

[comment]: # ({/54d09dcd-5d06cf34})

[comment]: # ({dcba01c8-dcba01c8})
### 戻り値

`(object)` `templateids` プロパティの下で更新されたテンプレートの ID を含むオブジェクトを返します。

[comment]: # ({/dcba01c8-dcba01c8})

[comment]: # ({b41637d2-b41637d2})
### 例

[comment]: # ({/b41637d2-b41637d2})

[comment]: # ({7ee813bd-9c2469e7})
#### 標準テンプレートのプロパティの変更

テンプレートの技術名を "Linux by Zabbix agent Custom" に、表示名を "My template"に変更し、テンプレートの説明を更新します。

[リクエスト](/manual/api#performing-requests):

```json
{
    "jsonrpc": "2.0",
    "method": "template.update",
    "params": {
        "templateid": "10086",
        "host": "Linux by Zabbix agent Custom",
        "name": "My template",
        "description": "This is a custom Linux template."
    },
    "id": 1
}
```

Response:

```json
{
    "jsonrpc": "2.0",
    "result": {
        "templateids": [
            "10086"
        ]
    },
    "id": 1
}
```

[comment]: # ({/7ee813bd-9c2469e7})

[comment]: # ({2b5d5c60-4abf6dbe})
#### テンプレートグループの更新

指定されたテンプレートのすべてのテンプレートグループを別のテンプレートグループに置き換えます。

[リクエスト](/manual/api#performing-requests):

```json
{
    "jsonrpc": "2.0",
    "method": "template.update",
    "params": {
        "templateid": "10086",
        "groups": [
            {
                "groupid": "24"
            } 
        ]
    },
    "id": 1
}
```


Response:

```json
{
    "jsonrpc": "2.0",
    "result": {
        "templateids": [
            "10086"
        ]
    },
    "id": 1
}
```

[comment]: # ({/2b5d5c60-4abf6dbe})

[comment]: # ({1f5109cc-e7972b69})
#### テンプレートタグの更新

すべてのテンプレート タグを新しいものに置き換えます

Request:

```json
{
    "jsonrpc": "2.0",
    "method": "template.update",
    "params": {
        "templateid": "10086",
        "tags": [
            {
                "tag": "Host name",
                "value": "{HOST.NAME}"
            }
        ]
    },
    "auth": "038e1d7b1735c6a5436ee9eae095879e",
    "id": 1
}
```

Response:

```json
{
    "jsonrpc": "2.0",
    "result": {
        "hostids": [
            "10086"
        ]
    },
    "id": 1
}
```

[comment]: # ({/1f5109cc-e7972b69})

[comment]: # ({e808d272-d60a6434})
#### テンプレートマクロの更新

すべてのテンプレートマクロを別のマクロに置き換えます。

[リクエスト](/manual/api#performing-requests):

```json
{
    "jsonrpc": "2.0",
    "method": "template.update",
    "params": {
        "templateid": "10086",
        "macros": [
            {
                "macro": "{$MY_MACRO}",
                "value": "new_value"
            }
        ]
    },
    "id": 1
}
```

Response:

```json
{
    "jsonrpc": "2.0",
    "result": {
        "templateids": [
            "10086"
        ]
    },
    "id": 1
}
```

[comment]: # ({/e808d272-d60a6434})

[comment]: # ({c0bea3a1-7e994e6d})
#### テンプレートにリンクされたテンプレートの更新

指定されたテンプレートからすべてのテンプレートのリンクを解除（クリアせず）し、別のテンプレートをそのテンプレートにリンクします。

[リクエスト](/manual/api#performing-requests):

```json
{
    "jsonrpc": "2.0",
    "method": "template.update",
    "params": {
        "templateid": "10086",
        "templates": [
            {
                "templateid": "10087"
            }
        ]
    },
    "id": 1
}
```

Response:

```json
{
    "jsonrpc": "2.0",
    "result": {
        "templateids": [
            "10086"
        ]
    },
    "id": 1
}
```

[comment]: # ({/c0bea3a1-7e994e6d})

[comment]: # ({69f01ba0-993f083e})
#### テンプレートにリンクされたテンプレートのクリア

指定されたテンプレートを、特定のリンクされたテンプレートからリンク解除してクリアします。

[リクエスト](/manual/api#performing-requests):

```json
{
    "jsonrpc": "2.0",
    "method": "template.update",
    "params": {
        "templateid": "10086",
        "templates_clear": [
            {
                "templateid": "10087"
            }
        ]
    },
    "id": 1
}
```

Response:

```json
{
    "jsonrpc": "2.0",
    "result": {
        "templateids": [
            "10086"
        ]
    },
    "id": 1
}
```

[comment]: # ({/69f01ba0-993f083e})

[comment]: # ({eb72cc1c-eb72cc1c})
### ソース

CTemplate::update() in *ui/include/classes/api/services/CTemplate.php*.

[comment]: # ({/eb72cc1c-eb72cc1c})
