このページで
hostprototype.update
説明
object hostprototype.update(object/array hostPrototypes)
このメソッドは、既存のホストプロトタイプを更新します。
このメソッドは 管理者 および スーパ管理者 ユーザータイプでのみ利用できます。メソッドの呼び出し権限はユーザーロールの設定で取り消すことができます。詳細はユーザーロールを参照してください。
パラメータ
(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.