[comment]: # ({286a8a1a-286a8a1a})
# Appendix 2. Changes from 3.4 to 4.0

[comment]: # ({/286a8a1a-286a8a1a})

[comment]: # ({31b2151e-31b2151e})
### Backward incompatible changes

[comment]: # ({/31b2151e-31b2151e})

[comment]: # ({6b197d0d-5a1a8ace})
#### General

Changes:<br>
[ZBXNEXT-4247](https://support.zabbix.com/browse/ZBXNEXT-4247) dropped
support of the deprecated methods `user.updateprofile`, `user.addmedia`,
`user.updatemedia`, `user.deletemedia`, `usergroup.massadd`,
`usergroup.massupdate` and `usermedia.get`<br>
[ZBXNEXT-4175](https://support.zabbix.com/browse/ZBXNEXT-4175) E-mail
values in API methods `user.get`, `user.create` and `user.update` are
represented as array if type of [Media
type](/manual/api/reference/mediatype/object#mediatype) is e-mail.<br>
[ZBX-3783](https://support.zabbix.com/browse/ZBX-3783) `proxy.delete`:
proxies cannot be deleted when are used in actions.<br>
[ZBX-18998](https://support.zabbix.com/browse/ZBX-18998) added more strict validation for JSON-RPC structure.

[comment]: # ({/6b197d0d-5a1a8ace})

[comment]: # ({2667fc94-03d104a9})
#### action

Changes:<br>
[ZBXNEXT-413](https://support.zabbix.com/browse/ZBXNEXT-413) renamed
property `maintenance_mode` to `pause_suppressed`.

[comment]: # ({/2667fc94-03d104a9})

[comment]: # ({2407e61d-321e2e7a})
#### dashboard

Changes:<br>
[ZBXNEXT-4516](https://support.zabbix.com/browse/ZBXNEXT-4516) renamed
dashboard widget types: `actlog` => `actionlog`, `dscvry` =>
`discovery`, `favgrph` => `favgraphs`, `favmap` => `favmaps`,
`favscr` => `favscreens`, `hoststat` => `problemhosts`,
`navigationtree` => `navtree`, `stszbx` => `systeminfo`, `sysmap`
=> `map`, `syssum` => `problemsbysv` and `webovr` => `web`.<br>
[ZBXNEXT-4588](https://support.zabbix.com/browse/ZBXNEXT-4588) added new
dashboard widget type: `svggraph`.

[comment]: # ({/2407e61d-321e2e7a})

[comment]: # ({55e4976b-a61a80c7})
#### drule

Changes:<br>
[ZBX-3783](https://support.zabbix.com/browse/ZBX-3783) discovery rules
cannot be deleted when are used in actions.

[comment]: # ({/55e4976b-a61a80c7})

[comment]: # ({238f3463-1eee7311})
#### user

Changes:<br>
[ZBXNEXT-4573](https://support.zabbix.com/browse/ZBXNEXT-4573)
`user.login`: password field is mandatory when HTTP authentication is
enabled.<br>
[ZBXNEXT-4573](https://support.zabbix.com/browse/ZBXNEXT-4573)
`user.create`: password field can be omitted if user belongs only to
groups that have LDAP access.<br>
[ZBXNEXT-4573](https://support.zabbix.com/browse/ZBXNEXT-4573)
`user.update`: password field can be empty string if user belongs only
to groups that have LDAP access.

[comment]: # ({/238f3463-1eee7311})

[comment]: # ({c4262b94-fde4b63d})
#### usergroup

Changes:<br>
[ZBXNEXT-4573](https://support.zabbix.com/browse/ZBXNEXT-4573) changed
`gui_access` type `2` ⇒ `3` - "disable access to the frontend".<br>
[ZBXNEXT-4573](https://support.zabbix.com/browse/ZBXNEXT-4573) added
`gui_access` type `2` - "use LDAP authentication".

[comment]: # ({/c4262b94-fde4b63d})

[comment]: # ({5b2db1cc-5b2db1cc})
### Other changes and bug fixes

[comment]: # ({/5b2db1cc-5b2db1cc})

[comment]: # ({92907f62-ceb91440})
#### General

Changes:<br>
[ZBXNEXT-4426](https://support.zabbix.com/browse/ZBXNEXT-4426) added a
new task API introducing a new method `task.create`.<br>
[ZBXNEXT-4152](https://support.zabbix.com/browse/ZBXNEXT-4152) added
possibility to filter IDs by zero. For example: `host.get()` with option
`{"proxyids": [0]}` will return hosts monitored by server.

[comment]: # ({/92907f62-ceb91440})

[comment]: # ({73dc5b55-2aa10a3f})
#### apiinfo

Changes:<br>
[ZBX-3783](https://support.zabbix.com/browse/ZBX-3783) added strict
validation of input parameters for `version` method.

[comment]: # ({/73dc5b55-2aa10a3f})

[comment]: # ({fe2b5435-a27026ef})
#### action

Changes:<br>
[ZBXNEXT-413](https://support.zabbix.com/browse/ZBXNEXT-413) changed
supported operators for action condition `16`: `4` - "in" and `7` - "not
in" to new ones `10` - "Yes" and `11` - "No".<br>
[ZBXNEXT-2788](https://support.zabbix.com/browse/ZBXNEXT-2788) added
support for `not` operator in custom expression filter formula.<br>
[ZBX-3783](https://support.zabbix.com/browse/ZBX-3783) added strict
validation of input parameters for `delete` method; added audit.

[comment]: # ({/fe2b5435-a27026ef})

[comment]: # ({4b4fbd79-e8dc57e8})
#### correlation

Changes:<br>
[ZBXNEXT-2788](https://support.zabbix.com/browse/ZBXNEXT-2788) added
support for `not` operator in custom expression filter formula.<br>
[ZBX-3783](https://support.zabbix.com/browse/ZBX-3783) added strict
validation of input parameters for `delete` method; added audit.

[comment]: # ({/4b4fbd79-e8dc57e8})

[comment]: # ({2a3fc562-06b1b8aa})
#### discoveryrule

Changes:<br>
[ZBXNEXT-2788](https://support.zabbix.com/browse/ZBXNEXT-2788) added
support for `not` operator in custom expression filter formula.\
[ZBXNEXT-2788](https://support.zabbix.com/browse/ZBXNEXT-2788) added
support of value `9` in the filter condition operator.

[comment]: # ({/2a3fc562-06b1b8aa})

[comment]: # ({5ad44c0f-4e8b6a30})
#### drule

Changes:<br>
[ZBX-3783](https://support.zabbix.com/browse/ZBX-3783) added strict
validation of input parameters for `delete` method.

[comment]: # ({/5ad44c0f-4e8b6a30})

[comment]: # ({955c6032-0c9e9b36})
#### event

Changes:<br>
[ZBXNEXT-413](https://support.zabbix.com/browse/ZBXNEXT-413)
`event.get`: added new parameter `suppressed`.<br>
[ZBXNEXT-413](https://support.zabbix.com/browse/ZBXNEXT-413)
`event.get`: added new parameter `selectSuppressionData` that returns
list of maintenances in the `suppression_data` property.<br>
[ZBXNEXT-4118](https://support.zabbix.com/browse/ZBXNEXT-4118)
`event.get`: added a new property `evaltype` and extended `tags`
property to support new value "<operator>".<br>
[ZBXNEXT-4119](https://support.zabbix.com/browse/ZBXNEXT-4119)
`event.get`: returns only problems and corresponding recovery events
that match the tag based permission filters.<br>
[ZBXNEXT-4588](https://support.zabbix.com/browse/ZBXNEXT-4588)
`event.get`: added new parameters `problem_time_from` and
`problem_time_till`.

[comment]: # ({/955c6032-0c9e9b36})

[comment]: # ({a72c1b7c-4f404cb9})
#### hostprototype

[ZBXNEXT-4656](https://support.zabbix.com/browse/ZBXNEXT-4656)
`hostprototype.create`, `hostprototype.update`: added strict validation
of input parameters and added audit.

[comment]: # ({/a72c1b7c-4f404cb9})

[comment]: # ({2c697d12-c1530612})
#### item

Changes:<br>
[ZBXNEXT-4358](https://support.zabbix.com/browse/ZBXNEXT-4358) added new
item type "HTTP agent".

[comment]: # ({/2c697d12-c1530612})

[comment]: # ({45c77606-afb188c3})
#### itemprototype

Changes:<br>
[ZBXNEXT-4200](https://support.zabbix.com/browse/ZBXNEXT-4200)
`itemprototype.create`, `itemprototype.update`: added possibility to add
regular items and web items as master items in `master_itemid`
property.

[comment]: # ({/45c77606-afb188c3})

[comment]: # ({48ed1403-57fe9fd8})
#### maintenance

Changes:<br>
[ZBXNEXT-413](https://support.zabbix.com/browse/ZBXNEXT-413) added new
property `tags_evaltype`.<br>
[ZBXNEXT-413](https://support.zabbix.com/browse/ZBXNEXT-413)
`maintenance.create`, `maintenance.update`: added new property `tags`.<br>
[ZBXNEXT-413](https://support.zabbix.com/browse/ZBXNEXT-413)
`maintenance.get`: added new option `selectTags` that returns
maintenance problem tags in the `tags` property.

[comment]: # ({/48ed1403-57fe9fd8})

[comment]: # ({3e80ff1a-0e2b51a6})
#### map

Changes:<br>
[ZBXNEXT-413](https://support.zabbix.com/browse/ZBXNEXT-413) added new
property `show_suppressed`.

[comment]: # ({/3e80ff1a-0e2b51a6})

[comment]: # ({d7da8750-8e249146})
#### mediatype

Changes:<br>
[ZBXNEXT-4144](https://support.zabbix.com/browse/ZBXNEXT-4144) password
field for authentication type "Username and password" was made as
optional.

[comment]: # ({/d7da8750-8e249146})

[comment]: # ({8f98643d-1229b83f})
#### problem

Changes:<br>
[ZBXNEXT-413](https://support.zabbix.com/browse/ZBXNEXT-413)
`problem.get`: added new parameter `suppressed`.<br>
[ZBXNEXT-413](https://support.zabbix.com/browse/ZBXNEXT-413)
`problem.get`: added new parameter `selectSuppressionData` that returns
list of maintenances in the `suppression_data` property.<br>
[ZBXNEXT-4118](https://support.zabbix.com/browse/ZBXNEXT-4118)
`problem.get`: added a new property `evaltype` and extended `tags`
property to support new value "<operator>".<br>
[ZBXNEXT-4119](https://support.zabbix.com/browse/ZBXNEXT-4119)
`problem.get`: returns only those events that match the tag based
permission filters.

[comment]: # ({/8f98643d-1229b83f})

[comment]: # ({7c1156bc-242c1d1b})
#### proxy

Changes:<br>
[ZBXNEXT-4411](https://support.zabbix.com/browse/ZBXNEXT-4411) added a
new property `auto_compress`.

[comment]: # ({/7c1156bc-242c1d1b})

[comment]: # ({fe8165a1-32d63cff})
#### trigger

Changes:<br>
[ZBXNEXT-3860](https://support.zabbix.com/browse/ZBXNEXT-3860)
`trigger.get`: added a new parameters `evaltype` and `tags` that allow
to filter triggers by tags.<br>
[ZBXNEXT-4357](https://support.zabbix.com/browse/ZBXNEXT-4357)
`trigger.get`: added a new `selectTriggerDiscovery` option that returns
the trigger discovery object in the `triggerDiscovery` property.

[comment]: # ({/fe8165a1-32d63cff})

[comment]: # ({4dcf20b3-4e2e0054})
#### usergroup

Changes:<br>
[ZBXNEXT-4119](https://support.zabbix.com/browse/ZBXNEXT-4119)
`usergroup.get`: added a new `selectTagFilters` option that returns the
array of the tag based permissions objects in the `tag_filters`
property.<br>
[ZBXNEXT-4119](https://support.zabbix.com/browse/ZBXNEXT-4119)
`usergroup.create` and `usergroup.update`: added a new `tag_filters`
property.

[comment]: # ({/4dcf20b3-4e2e0054})
