Add or edit a flag of the request.
        :param request_id: the id of the request
        :param username: the name of the application to be displayed
        :param percent: the percentage of completion to be displayed
        :param comment: a short message summarizing the flag
        :param url: a relevant URL
        :param uid: a unique id used to identify the flag.
            If not provided, pagure will generate one
        :param commit: which commit to flag on
        :return:

def flag_request(self, request_id, username, percent, comment, url,
                     uid=None, commit=None):
        """
        Add or edit a flag of the request.
        :param request_id: the id of the request
        :param username: the name of the application to be displayed
        :param percent: the percentage of completion to be displayed
        :param comment: a short message summarizing the flag
        :param url: a relevant URL
        :param uid: a unique id used to identify the flag.
            If not provided, pagure will generate one
        :param commit: which commit to flag on
        :return:
        """
        request_url = "{}pull-request/{}/flag".format(self.create_basic_url(),
                                                      request_id)

        payload = {'username': username, 'percent': percent,
                   'comment': comment, 'url': url}
        if commit is not None:
            payload['commit'] = commit
        if uid is not None:
            payload['uid'] = uid

        return_value = self._call_api(request_url,
                                      method='POST', data=payload)

        LOG.debug(return_value)