@classmethod
    def patterns(cls, api_name=None):
        view = cls.build_view()

        name = getattr(cls, 'api_name', cls.__name__.lower())
        if api_name:
            name = '%s_%s' % (api_name, name)

        fmt = {
            'name': name,
            'object': cls.OBJECT_PATTERN,
            'action': cls.ACTION_PATTERN,
            'argument': cls.ARGUMENT_PATTERN,
        }

        return [
            url(url_pattern.format(**fmt), view, name=view_name.format(**fmt))
            for url_pattern, view_name in cls.PATTERNS
        ]
Will return a billable action
dataset/ETHPy150Open funkybob/django-nap/nap/rest/publisher.py/BasePublisher.patterns--crossover with--dataset/ETHPy150Open jookies/jasmin/jasmin/routing/Bills.py/Bill.getAction