'GET /api/datatypes/sniffers
Return a list of sniffers.'

@expose_api_anonymous_and_sessionless
def sniffers(self, trans, **kwd):

    try:
        rval = []
        for sniffer_elem in self._datatypes_registry.sniffer_elems:
            datatype = sniffer_elem.get('type')
            if (datatype is not None):
                rval.append(datatype)
        return rval
    except Exception as exception:
        log.error('could    not    get    datatypes:    %s', str(exception), exc_info=True)
        if (not isinstance(exception, exceptions.MessageException)):
            raise exceptions.InternalServerError(str(exception))
        else:
            raise
