object hostprototype.create(object/array hostPrototypes)
このメソッドでは、新しいホストプロトタイプを作成できます。
このメソッドはAdminおよびSuperadminユーザータイプでのみ使用できます。 メソッドを呼び出す権限は、ユーザーロール設定で取り消すことができます。 詳細についてはユーザーの役割を参照してください。
(object/array)
作成するホストプロトタイプ
このメソッドは標準のホストプロトタイププロパティに加えて、次のパラメーターを受け入れます。
パラメータ | タイプ | 説明 |
---|---|---|
groupLinks (必須) |
array | ホストプロトタイプ用に作成するグループリンク |
ruleid (必須) |
string | ホストプロトタイプが属するLLDルールのID |
groupPrototypes | array | ホストプロトタイプ用に作成されるグループプロトタイプ |
macros | object/array | ホストプロトタイプ用に作成するユーザーマクロ |
tags | object/array | ホストプロトタイプタグ. |
interfaces | object/array | ホストプロトタイプカスタムインターフェース. |
templates | object/array | ホストプロトタイプにリンクするテンプレート テンプレートには templateid プロパティを定義する必要があります。 |
(object)
hostids
プロパティの下で作成されたホストプロトタイプのIDを含むオブジェクトを返します。 返されるIDの順序は、渡されたホストプロトタイプの順序と一致します。
グループプロトタイプ"{#HV.NAME}"、タグペア"Datacenter": "{#DATACENTER.NAME}"およびコミュニティ{$SNMP_COMMUNITY}を使用したカスタムSNMPv2インターフェイス127.0.0.1:161を使用して、LLDルール"23542"にホストプロトタイプ"{#VM.NAME}"を作成し、ホストグループ「2」にリンクします。
Request:
{
"jsonrpc": "2.0",
"method": "hostprototype.create",
"params": {
"host": "{#VM.NAME}",
"ruleid": "23542",
"custom_interfaces": "1",
"groupLinks": [
{
"groupid": "2"
}
],
"groupPrototypes": [
{
"name": "{#HV.NAME}"
}
],
"tags": [
{
"tag": "Datacenter",
"value": "{#DATACENTER.NAME}"
}
],
"interfaces": [
{
"main": "1",
"type": "2",
"useip": "1",
"ip": "127.0.0.1",
"dns": "",
"port": "161",
"details": {
"version": "2",
"bulk": "1",
"community": "{$SNMP_COMMUNITY}"
}
}
]
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Response:
CHostPrototype::create() in ui/include/classes/api/services/CHostPrototype.php.