api/classes/CUser.php, line 453 on 2.2.4, foreach ($user['user_medias'] as $mediaData) {, fails when only one media item is passed in.
Workaround by passing $user['user_medias'] to zbx_toArray prior to the foreach loop
$user['user_medias'] = zbx_toArray($user['user_medias']);
Server answer API error: { "code": -32602, "message": "Invalid params.", "data": "DBerror"} on request: { "method": "user.create", "params": { "alias": "AA11111", "passwd": "nbitdvju", "surname": "last", "name": "first", "lang": "en_US", "type": 2, "usrgrps": { "usrgrpid": 14 }, "user_medias": { "active": 0, "mediatypeid": "1", "period": "1-7,00:00-24:00", "sendto": "[email protected]", "severity": 63 } }, "auth": "18da1ca254ef6104c49c123060c9ec20", "id": 90951, "jsonrpc": "2.0"}
551177 Query SELECT i.nextid FROM ids i WHERE i.nodeid=0 AND i.table_name='media' AND i.field_name='mediaid' 551177 Query INSERT INTO media (mediaid,userid,mediatypeid,sendto,active,severity,period) VALUES ('1','10','','','','','') 551177 Query ROLLBACK