object hostprototype.update(object/array hostPrototypes)
このメソッドは、既存のホストプロトタイプを更新します。
このメソッドは 管理者 および スーパ管理者 ユーザータイプでのみ利用できます。メソッドの呼び出し権限はユーザーロールの設定で取り消すことができます。詳細はユーザーロールを参照してください。
(object/array) 更新するホストプロトタイプのプロパティ。
各ホストプロトタイプには hostid プロパティを定義する必要があり、他のすべてのプロパティはオプションです。 渡されたプロパティのみが更新され、他のプロパティは変更されません。
標準のホストプロトタイププロパティに加えて、このメソッドは以下のパラメータを受け付けます。
| パラメータ | 型 | 説明 |
|---|---|---|
| groupLinks | array | ホストプロトタイプの現在のグループリンクを置き換えるグループリンク。 パラメータの動作: - 継承オブジェクトの場合は読み取り専用 |
| groupPrototypes | array | ホストプロトタイプの既存のグループプロトタイプを置き換えるグループプロトタイプ。 リクエストに記載されていないすべてのグループプロトタイプは削除されます。 パラメータの動作: - 継承オブジェクトの場合は読み取り専用 |
| macros | object/array | 現在のユーザーマクロを置き換えるユーザーマクロ。 リクエストに記載されていないすべてのマクロは削除されます。 |
| tags | object/array | 現在のタグを置き換えるホストプロトタイプタグ。 リクエストに記載されていないすべてのタグは削除されます。 パラメータの動作: - 継承オブジェクトの場合は読み取り専用 |
| interfaces | object/array | 現在のインターフェースを置き換えるホストプロトタイプのカスタムインターフェース。 カスタムインターフェースオブジェクトにはすべてのパラメータを含める必要があります。 リクエストに記載されていないすべてのインターフェースは削除されます。 パラメータの動作: - ホストプロトタイプオブジェクトの custom_interfacesが「ホストプロトタイプのカスタムインターフェースを使用する」に設定されている場合はサポート- 継承オブジェクトの場合は読み取り専用 |
| templates | object/array | 現在リンクされているテンプレートを置き換えるテンプレート。 テンプレートには templateidプロパティのみを定義する必要があります。 |
(object) hostidsプロパティの下で更新されたホストプロトタイプのIDを含むオブジェクトを返します。
ホストプロトタイプを無効にします。つまり、ステータスを "1" に設定します。
{
"jsonrpc": "2.0",
"method": "hostprototype.update",
"params": {
"hostid": "10092",
"status": 1
},
"id": 1
}レスポンス:
ホストプロトタイプタグを新しいものに置き換えます。
{
"jsonrpc": "2.0",
"method": "hostprototype.update",
"params": {
"hostid": "10092",
"tags": [
{
"tag": "datacenter",
"value": "{#DATACENTER.NAME}"
},
{
"tag": "instance-type",
"value": "{#INSTANCE_TYPE}"
}
]
},
"id": 1
}レスポンス:
継承されたインターフェースをホストプロトタイプのカスタムインターフェースに置き換えます。
{
"jsonrpc": "2.0",
"method": "hostprototype.update",
"params": {
"hostid": "10092",
"custom_interfaces": "1",
"interfaces": [
{
"main": "1",
"type": "2",
"useip": "1",
"ip": "127.0.0.1",
"dns": "",
"port": "161",
"details": {
"version": "2",
"bulk": "1",
"community": "{$SNMP_COMMUNITY}"
}
}
]
},
"id": 1
}レスポンス:
CHostPrototype::update() in ui/include/classes/api/services/CHostPrototype.php.