Skip to content

update_case_status

update_case_status(
    case_id: CaseId,
    case_status: SelfManagedCaseStatus,
    *,
    config_overrides: Optional[SecurityIRClientConfig] = None,
) -> UpdateCaseStatusResponse

Updates the state transitions for a designated cases.

Self-managed: the following states are available for self-managed cases.

  • Submitted → Detection and Analysis

  • Detection and Analysis → Containment, Eradication, and Recovery

  • Detection and Analysis → Post-incident Activities

  • Containment, Eradication, and Recovery → Detection and Analysis

  • Containment, Eradication, and Recovery → Post-incident Activities

  • Post-incident Activities → Containment, Eradication, and Recovery

  • Post-incident Activities → Detection and Analysis

  • Any → Closed

AWS supported: You must use the CloseCase API to close.

Parameters:

  • case_id (CaseId) –

    Required element for UpdateCaseStatus to identify the case to update.

  • case_status (SelfManagedCaseStatus) –

    Required element for UpdateCaseStatus to identify the status for a case. Options include Submitted | Detection and Analysis | Containment, Eradication and Recovery | Post-incident Activities.

Raises:

Examples:

Invoke UpdateCaseStatus

>>> client.update_case_status(case_id='8403556009', case_status='Post-incident Activities')
Source code in docs_src/capo_security_ir/_services/security_ir.py
def update_case_status(
    self,
    case_id: "capo_security_ir.types.case_id.CaseId",
    case_status: "capo_security_ir.types.self_managed_case_status.SelfManagedCaseStatus",
    *,
    config_overrides: Optional[SecurityIRClientConfig] = None,
) -> "capo_security_ir.types.update_case_status_response.UpdateCaseStatusResponse":
    """<p>Updates the state transitions for a designated cases.</p> <p> <b>Self-managed</b>: the following states are available for self-managed cases. </p> <ul> <li> <p>Submitted → Detection and Analysis</p> </li> <li> <p>Detection and Analysis → Containment, Eradication, and Recovery</p> </li> <li> <p>Detection and Analysis → Post-incident Activities</p> </li> <li> <p>Containment, Eradication, and Recovery → Detection and Analysis</p> </li> <li> <p>Containment, Eradication, and Recovery → Post-incident Activities</p> </li> <li> <p>Post-incident Activities → Containment, Eradication, and Recovery</p> </li> <li> <p>Post-incident Activities → Detection and Analysis</p> </li> <li> <p>Any → Closed</p> </li> </ul> <p> <b>AWS supported</b>: You must use the <code>CloseCase</code> API to close. </p>

    Args:
        case_id: <p>Required element for UpdateCaseStatus to identify the case to update.</p>
        case_status: <p>Required element for UpdateCaseStatus to identify the status for a case. Options include <code>Submitted | Detection and Analysis | Containment, Eradication and Recovery | Post-incident Activities</code>. </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:
        Invoke UpdateCaseStatus

        >>> client.update_case_status(case_id='8403556009', case_status='Post-incident Activities')
    """

    def _handler(
        req: "OperationRequest[capo_security_ir.types.update_case_status_request.UpdateCaseStatusRequest]",
    ) -> OperationResponse[
        "capo_security_ir.types.update_case_status_response.UpdateCaseStatusResponse"
    ]:
        import capo_security_ir._operations.security_incident_response.update_case_status

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

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("UpdateCaseStatus")
    )
    input_: capo_security_ir.types.update_case_status_request.UpdateCaseStatusRequest = {
        "case_id": case_id,
        "case_status": case_status,
    }

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