why not

    def dispatch(self, request, domain, indicator_type=None)

? You shouldn't have to read a function to discover one of its required parameters.  Also since you're calling to_function() on indicator_type it should clearly by kwargs['indicator_type'].

Is there a use case where someone would be expected to not supply an indicator_type or to supply an invalid indicator_type?  If not, is the try-except really a net benefit?  You're also catching AttributeError which anyone reading this code without having the to_function code up next to it would scratch their head at a bit.  Why not just catch Exception?