This method allows to update existing hosts.

    This method is only available to Admin and Super admin user types. Permissions to call the method can be revoked in user role settings. See for more information.

    Parameters

    (object/array) Host properties to be updated.

    The hostid property must be defined for each host, all other properties are optional. Only the given properties will be updated, all others will remain unchanged.

    Note, however, that updating the host technical name will also update the host’s visible name (if not given or empty) by the host’s technical name value.

    Additionally to the , the method accepts the following parameters.

    As opposed to the Zabbix frontend, when name (visible host name) is the same as host (technical host name), updating host via API will not automatically update name. Both properties need to be updated explicitly.

    (object) Returns an object containing the IDs of the updated hosts under the hostids property.

    Examples

    Enabling a host

    Enable host monitoring, i.e. set its status to 0.

    Request:

    1. {
    2. "jsonrpc": "2.0",
    3. "result": {
    4. "hostids": [
    5. "10126"
    6. ]
    7. },
    8. "id": 1
    9. }

    Unlinking templates

    Unlink and clear two templates from host.

    Request:

    1. {
    2. "jsonrpc": "2.0",
    3. "method": "host.update",
    4. "params": {
    5. "hostid": "10126",
    6. "templates_clear": [
    7. {
    8. "templateid": "10124"
    9. {
    10. "templateid": "10125"
    11. ]
    12. },
    13. "auth": "038e1d7b1735c6a5436ee9eae095879e",
    14. "id": 1
    15. }

    Response:

    Updating host macros

    Replace all host macros with two new ones.

    Request:

    1. {
    2. "jsonrpc": "2.0",
    3. "method": "host.update",
    4. "params": {
    5. "hostid": "10126",
    6. "macros": [
    7. {
    8. "macro": "{$PASS}",
    9. "value": "password"
    10. },
    11. {
    12. "macro": "{$DISC}",
    13. "value": "sda",
    14. "description": "Updated description"
    15. }
    16. ]
    17. },
    18. "auth": "038e1d7b1735c6a5436ee9eae095879e",
    19. "id": 1
    20. }

    Response:

    1. "jsonrpc": "2.0",
    2. "result": {
    3. "hostids": [
    4. "10126"
    5. ]
    6. "id": 1
    7. }

    Updating host inventory

    Change inventory mode and add location

    Request:

    Response:

    1. {
    2. "jsonrpc": "2.0",
    3. "result": {
    4. "hostids": [
    5. "10387"
    6. ]
    7. },
    8. "id": 1
    9. }

    Updating host tags

    Replace all host tags with a new one.

    1. {
    2. "jsonrpc": "2.0",
    3. "method": "host.update",
    4. "params": {
    5. "hostid": "10387",
    6. "tags": {
    7. "tag": "OS",
    8. "value": "CentOS 7"
    9. }
    10. },
    11. "auth": "038e1d7b1735c6a5436ee9eae095879e",
    12. }

    Response:

    Source