Skip to content

send_feedback

send_feedback(
    case_id: CaseId,
    result_id: ResultId,
    usefulness: UsefulnessRating,
    *,
    config_overrides: Optional[SecurityIRClientConfig] = None,
    comment: Optional[FeedbackComment] = None,
) -> SendFeedbackResponse

Send feedback based on response investigation action

Parameters:

  • case_id (CaseId) –

    Send feedback based on request caseID

  • result_id (ResultId) –

    Send feedback based on request result ID

  • usefulness (UsefulnessRating) –

    Required enum value indicating user assessment of result q.....

  • comment (Optional[FeedbackComment], default: None ) –

    Send feedback based on request comments

Raises:

Examples:

Send positive feedback for investigation result

>>> client.send_feedback(case_id='8403556009', result_id='inv-polkjhyuty', usefulness='USEFUL', comment='The CloudTrail analysis was very helpful in identifying the root cause of the security incident.')
Send negative feedback with detailed comment
>>> client.send_feedback(case_id='8403556009', result_id='inv-irutjfhgjk', usefulness='NOT_USEFUL', comment="The investigation results were too generic and didn't provide actionable insights for our specific incident.")
Source code in docs_src/capo_security_ir/_services/security_ir.py
def send_feedback(
    self,
    case_id: "capo_security_ir.types.case_id.CaseId",
    result_id: "capo_security_ir.types.result_id.ResultId",
    usefulness: "capo_security_ir.types.usefulness_rating.UsefulnessRating",
    *,
    config_overrides: Optional[SecurityIRClientConfig] = None,
    comment: Optional[
        "capo_security_ir.types.feedback_comment.FeedbackComment"
    ] = None,
) -> "capo_security_ir.types.send_feedback_response.SendFeedbackResponse":
    """<p>Send feedback based on response investigation action</p>

    Args:
        case_id: <p>Send feedback based on request caseID</p>
        result_id: <p>Send feedback based on request result ID</p>
        usefulness: <p>Required enum value indicating user assessment of result q.....</p>
        comment: <p>Send feedback based on request comments</p>

    Raises:
        capo_security_ir.errors.access_denied_exception.AccessDeniedException: <p/>
        capo_security_ir.errors.conflict_exception.ConflictException: <p/>
        capo_security_ir.errors.internal_server_exception.InternalServerException: <p/>
        capo_security_ir.errors.invalid_token_exception.InvalidTokenException: <p/>
        capo_security_ir.errors.resource_not_found_exception.ResourceNotFoundException: <p/>
        capo_security_ir.errors.security_incident_response_not_active_exception.SecurityIncidentResponseNotActiveException: <p/>
        capo_security_ir.errors.service_quota_exceeded_exception.ServiceQuotaExceededException: <p/>
        capo_security_ir.errors.throttling_exception.ThrottlingException: <p/>
        capo_security_ir.errors.validation_exception.ValidationException: <p/>
        capo_security_ir.errors.UnknownServiceError: The service returned an error code this client does not model.

    Examples:
        Send positive feedback for investigation result

        >>> client.send_feedback(case_id='8403556009', result_id='inv-polkjhyuty', usefulness='USEFUL', comment='The CloudTrail analysis was very helpful in identifying the root cause of the security incident.')
        Send negative feedback with detailed comment

        >>> client.send_feedback(case_id='8403556009', result_id='inv-irutjfhgjk', usefulness='NOT_USEFUL', comment="The investigation results were too generic and didn't provide actionable insights for our specific incident.")
    """

    def _handler(
        req: "OperationRequest[capo_security_ir.types.send_feedback_request.SendFeedbackRequest]",
    ) -> OperationResponse[
        "capo_security_ir.types.send_feedback_response.SendFeedbackResponse"
    ]:
        import capo_security_ir._operations.security_incident_response.send_feedback

        output, http_response = (
            capo_security_ir._operations.security_incident_response.send_feedback.send_feedback(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("SendFeedback")
    )
    input_: capo_security_ir.types.send_feedback_request.SendFeedbackRequest = {
        "case_id": case_id,
        "result_id": result_id,
        "usefulness": usefulness,
    }
    if comment is not None:
        input_["comment"] = comment

    response = execute_pipeline(
        OperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    response.response.close()
    return response.output