hostprototype.create

Opis

object hostprototype.create(object/array hostPrototypes)

Ta metoda pozwala tworzyć nowe prototypy hostów.

Ta metoda jest dostępna tylko dla użytkowników typu Admin i Super admin. Uprawnienia do wywołania tej metody można cofnąć w ustawieniach ról użytkownika. Zobacz Role użytkownika po więcej informacji.

Parametry

(object/array) Prototypy hostów do utworzenia.

Dodatkowo do standardowych właściwości prototypu hosta, metoda akceptuje następujące parametry.

Parametr Typ Opis
groupLinks
(wymagane)
array Powiązania grupy do utworzenia dla prototypu hosta.
ruleid
(wymagane)
string ID reguły LLD, do której należy prototyp hosta.
groupPrototypes array Prototypy grupy do utworzenia dla prototypu hosta.
macros object/array Makra użytkownika do utworzenia dla prototypu hosta.
tags object/array Znaczniki prototypu hosta .
interfaces object/array Indywidualne interfejsy prototypy hosta .
templates object/array Szablony do połączenia z prototypem hosta.

Szablony muszą mieć zdefiniowaną właściwość templateid.

Zwracane wartości

(object) Zwraca obiekt zawierający identyfikatory utworzonych prototypów hostów we właściwości hostids. Kolejność zwróconych identyfikatorów odpowiada kolejności przekazanych prototypów hostów.

Przykłady

Tworzenie prototypu hosta

Utwórz prototyp hosta "{#VM.NAME}" na regule LLD "23542" z prototypem grupy "{#HV.NAME}", parą znaczników "Datacenter": "{#DATACENTER.NAME}" oraz niestandardowym interfejsem SNMPv2 127.0.0.1:161 z hasłem {$SNMP_COMMUNITY}. Połącz go z grupą hostów "2".

Zapytanie:

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

Odpowiedź:

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

Zobacz także

Źródło

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