def METHOD_NAME(self, request: Request, organization) -> Response:
    """
    Fetches actions that an alert rule can perform for an organization
    """
    if not features.has("organizations:incidents", organization, actor=request.user):
        raise ResourceDoesNotExist
    actions = []
    # Cache Integration objects in this data structure to save DB calls.
    provider_integrations = defaultdict(list)
    for integration in get_available_action_integrations_for_org(organization):
        provider_integrations[integration.provider].append(integration)
    for registered_type in AlertRuleTriggerAction.get_registered_types():
        # Used cached integrations for each `registered_type` instead of making N calls.
        if registered_type.integration_provider:
            actions += [
                build_action_response(
                    registered_type, integration=integration, organization=organization
                )
                for integration in provider_integrations[registered_type.integration_provider]
            ]
        # Add all alertable SentryApps to the list.
        elif registered_type.type == AlertRuleTriggerAction.Type.SENTRY_APP:
            actions += [
                build_action_response(registered_type, sentry_app_installation=install)
                for install in SentryAppInstallation.objects.get_installed_for_organization(
                    organization.id
                ).filter(
                    sentry_app__is_alertable=True,
                )
            ]
        else:
            actions.append(build_action_response(registered_type))
    return Response(actions, status=status.HTTP_200_OK)