object hostprototype.create(object/array hostPrototypes)
Este método permite criar novos protótipos de host.
Este método está disponível apenas para os tipos de usuário Admin e Super admin. As permissões para chamar o método podem ser revogadas nas configurações de função do usuário. Consulte Funções de usuário para mais informações.
(object/array) Protótipos de host a serem criados.
Além das propriedades padrão do protótipo de host, o método aceita os seguintes parâmetros.
| Parâmetro | Tipo | Descrição |
|---|---|---|
| groupLinks | array | Vínculos de grupo a serem criados para o protótipo de host. Comportamento do parâmetro: - obrigatório |
| ruleid | ID | ID da regra LLD à qual o protótipo de host pertence. Comportamento do parâmetro: - obrigatório |
| groupPrototypes | array | Protótipos de grupo a serem criados para o protótipo de host. |
| macros | object/array | Macros de usuário a serem criadas para o protótipo de host. |
| tags | object/array | Tags do protótipo de host. |
| interfaces | object/array | Interfaces personalizadas do protótipo de host. |
| templates | object/array | Templates a serem vinculados ao protótipo de host. Os templates devem ter apenas a propriedade templateid definida. |
(object) Retorna um objeto contendo os IDs dos protótipos de host criados na propriedade hostids. A ordem dos IDs retornados corresponde à ordem dos protótipos de host passados.
Crie um protótipo de host "{#VM.NAME}" na regra LLD "23542" com um protótipo de grupo "{#HV.NAME}", par de tags "datacenter": "{#DATACENTER.NAME}" e interface SNMPv2 personalizada 127.0.0.1:161 com comunidade {$SNMP_COMMUNITY}. Vincule-o ao grupo de hosts "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
}Resposta:
CHostPrototype::create() em ui/include/classes/api/services/CHostPrototype.php.