I have setup salt-api (cherrypy) and a salt-master on the same machine and i have a few minions connected to the master.
If i then issue a command to be executed to the api that do not match any targets i get back from requests the following:
>>> r
<Response [200]>
>>> r.text
u'{"return": [{}]}'
But i get a string output on stdout from salt-api saying No minions matched the target. No command was sent, no jid was assigned. so clearly the error is recognized somewhere but the error is not handled by the root endpoint.