Você está visualizando a documentação da versão de desenvolvimento, que pode estar incompleta.
Esta página foi traduzida automaticamente. Se você notar um erro, selecione-o e pressione Ctrl+Enter para reportá-lo aos editores.

hostprototype.create

Descrição

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.

Parâmetros

(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.

Valores de retorno

(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.

Exemplos

Criando um protótipo de host

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".

Requisição:

{
           "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:

{
           "jsonrpc": "2.0",
           "result": {
               "hostids": [
                   "10103"
               ]
           },
           "id": 1
       }

Veja também

Origem

CHostPrototype::create() em ui/include/classes/api/services/CHostPrototype.php.