このページで
hostprototype.create
説明
object hostprototype.create(object/array hostPrototypes)
このメソッドでは、新しいホストプロトタイプを作成できます。
このメソッドは、Admin および Super admin ユーザータイプでのみ利用できます。
メソッドを呼び出す権限は、ユーザーロール設定で取り消すことができます。詳細は、ユーザーロールを参照してください。
パラメータ
(object/array) 作成するホストプロトタイプ。
標準のホストプロトタイプの プロパティに加えて、このメソッドは以下の パラメータを受け付けます。
| パラメータ | Type | 説明 |
|---|---|---|
| groupLinks | array | ホストプロトタイプ用に作成するグループリンク。 パラメータの動作: - 必須 |
| ruleid | ID | このホストプロトタイプが属するLLDルールのID。 パラメータの動作: - 必須 |
| groupPrototypes | array | ホストプロトタイプ用に作成するグループプロトタイプ。 |
| macros | object/array | ホストプロトタイプ用に作成するユーザーマクロ。 |
| tags | object/array | ホストプロトタイプタグ。 |
| interfaces | object/array | ホストプロトタイプのカスタムインターフェース。 |
| templates | object/array | ホストプロトタイプにリンクするテンプレート。 テンプレートでは、 templateidプロパティのみを定義する必要があります。 |
戻り値
(object) hostidsプロパティの下で作成されたホストプロトタイプのIDを含むオブジェクトを返します。 返されるIDの順序は、渡されたホストプロトタイプの順序と一致します。
例
ホストプロトタイプの作成
LLDルール「23542」に、グループプロトタイプ「{#HV.NAME}」、タグの組「datacenter」: 「{#DATACENTER.NAME}」、およびコミュニティ {$SNMP_COMMUNITY} を使用するカスタムSNMPv2インターフェース 127.0.0.1:161 を持つホストプロトタイプ「{#VM.NAME}」を作成します。これをホストグループ「2」にリンクします。
{
"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}"
}
}
]
},
"id": 1
}
レスポンス:
{
"jsonrpc": "2.0",
"result": {
"hostids": [
"10103"
]
},
"id": 1
}
関連項目
ソース
CHostPrototype::create() in ui/include/classes/api/services/CHostPrototype.php.