このページで
hostprototype.update
説明
object hostprototype.update(object/array hostPrototypes)
このメソッドでは、既存のホストプロトタイプを更新できます。
このメソッドは、Admin および Super admin ユーザータイプでのみ利用できます。
このメソッドを呼び出す権限は、ユーザーロール設定で取り消すことができます。詳細は、ユーザーロールを参照してください。
パラメータ
(object/array) 更新するホストプロトタイプのプロパティ。
各ホストプロトタイプでは hostid プロパティを定義する必要があり、その他の
プロパティはすべて任意です。渡されたプロパティのみが更新され、それ以外は
変更されません。
このメソッドは、標準のホストプロトタイプ プロパティに加えて、以下の パラメータを受け付けます。
| パラメータ | 型 | 説明 |
|---|---|---|
| groupLinks | array | ホストプロトタイプ上の現在のグループリンクを置き換えるためのグループリンク。 パラメータの動作: - 継承されたオブジェクトでは read-only |
| groupPrototypes | array | ホストプロトタイプ上の既存のグループプロトタイプを置き換えるためのグループプロトタイプ。 リクエストに含まれていないすべてのグループプロトタイプは削除されます。 パラメータの動作: - 継承されたオブジェクトでは read-only |
| macros | object/array | 現在のユーザーマクロを置き換えるためのユーザーマクロ。 リクエストに含まれていないすべてのマクロは削除されます。 |
| tags | object/array | 現在のタグを置き換えるためのホストプロトタイプタグ。 リクエストに含まれていないすべてのタグは削除されます。 パラメータの動作: - 継承されたオブジェクトでは read-only |
| interfaces | object/array | 現在のインターフェースを置き換えるための、ホストプロトタイプのカスタムインターフェース。 カスタムインターフェースオブジェクトには、そのすべてのパラメータを含める必要があります。 リクエストに含まれていないすべてのインターフェースは削除されます。 パラメータの動作: - Host prototype object の custom_interfaces が "use host prototypes custom interfaces" に設定されている場合に supported- 継承されたオブジェクトでは read-only |
| templates | object/array | 現在リンクされているテンプレートを置き換えるためのテンプレート。 テンプレートでは templateid プロパティのみを定義する必要があります。 |
戻り値
(object) hostidsプロパティの下で更新されたホストプロトタイプのIDを含むオブジェクトを返します。
例
ホストプロトタイプの無効化
ホストプロトタイプを無効化します。つまり、そのステータスを「1」に設定します。
{
"jsonrpc": "2.0",
"method": "hostprototype.update",
"params": {
"hostid": "10092",
"status": 1
},
"id": 1
}
レスポンス:
{
"jsonrpc": "2.0",
"result": {
"hostids": [
"10092"
]
},
"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",
"result": {
"hostids": [
"10092"
]
},
"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
}
レスポンス:
{
"jsonrpc": "2.0",
"result": {
"hostids": [
"10092"
]
},
"id": 1
}
関連項目
ソース
CHostPrototype::update() in ui/include/classes/api/services/CHostPrototype.php.