Designing a fairly and rationally flexible API design means faster and smoother future development.
I propose writing these get methods with a few rational open doors for the future.
E.g.
    @classmethod
    def get(cls, resource, name=None):
        """
        Return a ResourceAction on the specified resource with the specified name.

        :param str name: Name of the action
        :param Resource resource: Resource on which this action exists
        """
        args = dict(resource=resource)
        if name is not None:
            args['name'] = name
            return cls.query.filter_by(**args).first()
        else:
            return cls.query.filter_by(**args).all()

Let it be intuition-based, without overdoing it. Not overdoing it will mean that it is barely any extra effort and hence doing this has got nothing to lose.

The result is just a few open doors with fairly low extra effort, which will save future EMI-like efforts just to open various doors.