List the feedback in a document.

        Lists the feedback in a document.

        :param str feedback_type: An optional string that filters the output to include
        only feedback with the specified feedback type. The only permitted value is
        `element_classification`.
        :param date before: An optional string in the format `YYYY-MM-DD` that filters the
        output to include only feedback that was added before the specified date.
        :param date after: An optional string in the format `YYYY-MM-DD` that filters the
        output to include only feedback that was added after the specified date.
        :param str document_title: An optional string that filters the output to include
        only feedback from the document with the specified `document_title`.
        :param str model_id: An optional string that filters the output to include only
        feedback with the specified `model_id`. The only permitted value is `contracts`.
        :param str model_version: An optional string that filters the output to include
        only feedback with the specified `model_version`.
        :param str category_removed: An optional string in the form of a comma-separated
        list of categories. If this is specified, the service filters the output to
        include only feedback that has at least one category from the list removed.
        :param str category_added: An optional string in the form of a comma-separated
        list of categories. If this is specified, the service filters the output to
        include only feedback that has at least one category from the list added.
        :param str category_not_changed: An optional string in the form of a
        comma-separated list of categories. If this is specified, the service filters the
        output to include only feedback that has at least one category from the list
        unchanged.
        :param str type_removed: An optional string of comma-separated `nature`:`party`
        pairs. If this is specified, the service filters the output to include only
        feedback that has at least one `nature`:`party` pair from the list removed.
        :param str type_added: An optional string of comma-separated `nature`:`party`
        pairs. If this is specified, the service filters the output to include only
        feedback that has at least one `nature`:`party` pair from the list removed.
        :param str type_not_changed: An optional string of comma-separated
        `nature`:`party` pairs. If this is specified, the service filters the output to
        include only feedback that has at least one `nature`:`party` pair from the list
        unchanged.
        :param int page_limit: An optional integer specifying the number of documents that
        you want the service to return.
        :param str cursor: An optional string that returns the set of documents after the
        previous set. Use this parameter with the `page_limit` parameter.
        :param str sort: An optional comma-separated list of fields in the document to
        sort on. You can optionally specify the sort direction by prefixing the value of
        the field with `-` for descending order or `+` for ascending order (the default).
        Currently permitted sorting fields are `created`, `user_id`, and `document_title`.
        :param bool include_total: An optional boolean value. If specified as `true`, the
        `pagination` object in the output includes a value called `total` that gives the
        total count of feedback created.
        :param dict headers: A `dict` containing the request headers
        :return: A `DetailedResponse` containing the result, headers and HTTP status code.
        :rtype: DetailedResponse

def list_feedback(self,
                      feedback_type=None,
                      before=None,
                      after=None,
                      document_title=None,
                      model_id=None,
                      model_version=None,
                      category_removed=None,
                      category_added=None,
                      category_not_changed=None,
                      type_removed=None,
                      type_added=None,
                      type_not_changed=None,
                      page_limit=None,
                      cursor=None,
                      sort=None,
                      include_total=None,
                      **kwargs):
        """
        List the feedback in a document.

        Lists the feedback in a document.

        :param str feedback_type: An optional string that filters the output to include
        only feedback with the specified feedback type. The only permitted value is
        `element_classification`.
        :param date before: An optional string in the format `YYYY-MM-DD` that filters the
        output to include only feedback that was added before the specified date.
        :param date after: An optional string in the format `YYYY-MM-DD` that filters the
        output to include only feedback that was added after the specified date.
        :param str document_title: An optional string that filters the output to include
        only feedback from the document with the specified `document_title`.
        :param str model_id: An optional string that filters the output to include only
        feedback with the specified `model_id`. The only permitted value is `contracts`.
        :param str model_version: An optional string that filters the output to include
        only feedback with the specified `model_version`.
        :param str category_removed: An optional string in the form of a comma-separated
        list of categories. If this is specified, the service filters the output to
        include only feedback that has at least one category from the list removed.
        :param str category_added: An optional string in the form of a comma-separated
        list of categories. If this is specified, the service filters the output to
        include only feedback that has at least one category from the list added.
        :param str category_not_changed: An optional string in the form of a
        comma-separated list of categories. If this is specified, the service filters the
        output to include only feedback that has at least one category from the list
        unchanged.
        :param str type_removed: An optional string of comma-separated `nature`:`party`
        pairs. If this is specified, the service filters the output to include only
        feedback that has at least one `nature`:`party` pair from the list removed.
        :param str type_added: An optional string of comma-separated `nature`:`party`
        pairs. If this is specified, the service filters the output to include only
        feedback that has at least one `nature`:`party` pair from the list removed.
        :param str type_not_changed: An optional string of comma-separated
        `nature`:`party` pairs. If this is specified, the service filters the output to
        include only feedback that has at least one `nature`:`party` pair from the list
        unchanged.
        :param int page_limit: An optional integer specifying the number of documents that
        you want the service to return.
        :param str cursor: An optional string that returns the set of documents after the
        previous set. Use this parameter with the `page_limit` parameter.
        :param str sort: An optional comma-separated list of fields in the document to
        sort on. You can optionally specify the sort direction by prefixing the value of
        the field with `-` for descending order or `+` for ascending order (the default).
        Currently permitted sorting fields are `created`, `user_id`, and `document_title`.
        :param bool include_total: An optional boolean value. If specified as `true`, the
        `pagination` object in the output includes a value called `total` that gives the
        total count of feedback created.
        :param dict headers: A `dict` containing the request headers
        :return: A `DetailedResponse` containing the result, headers and HTTP status code.
        :rtype: DetailedResponse
        """

        headers = {}
        if 'headers' in kwargs:
            headers.update(kwargs.get('headers'))
        sdk_headers = get_sdk_headers('compare-comply', 'V1', 'list_feedback')
        headers.update(sdk_headers)

        params = {
            'version': self.version,
            'feedback_type': feedback_type,
            'before': before,
            'after': after,
            'document_title': document_title,
            'model_id': model_id,
            'model_version': model_version,
            'category_removed': category_removed,
            'category_added': category_added,
            'category_not_changed': category_not_changed,
            'type_removed': type_removed,
            'type_added': type_added,
            'type_not_changed': type_not_changed,
            'page_limit': page_limit,
            'cursor': cursor,
            'sort': sort,
            'include_total': include_total
        }

        url = '/v1/feedback'
        response = self.request(
            method='GET',
            url=url,
            headers=headers,
            params=params,
            accept_json=True)
        return response