def post(self, action_alias, requester_user):
        """
        Create a new ActionAlias.

        Handles requests:
            POST /actionalias/
        """

        permission_type = PermissionType.ACTION_ALIAS_CREATE
        rbac_utils = get_rbac_backend().get_utils_class()
        rbac_utils.assert_user_has_resource_api_permission(
            user_db=requester_user,
            resource_api=action_alias,
            permission_type=permission_type,
        )

        try:
            action_alias_db = ActionAliasAPI.to_model(action_alias)
            LOG.debug(
                "/actionalias/ POST verified ActionAliasAPI and formulated ActionAliasDB=%s",
                action_alias_db,
            )
            action_alias_db = ActionAlias.add_or_update(action_alias_db)
        except (ValidationError, ValueError, ValueValidationException) as e:
            LOG.exception("Validation failed for action alias data=%s.", action_alias)
            abort(http_client.BAD_REQUEST, six.text_type(e))
            return

        extra = {"action_alias_db": action_alias_db}
        LOG.audit(
            "Action alias created. ActionAlias.id=%s" % (action_alias_db.id),
            extra=extra,
        )
        action_alias_api = ActionAliasAPI.from_model(action_alias_db)

        return Response(json=action_alias_api, status=http_client.CREATED)

        Create a new ActionAlias.

        Handles requests:
            POST /actionalias/
        
st2api/st2api/controllers/v1/actionalias.py