Skip to content

update_review_template_answer

update_review_template_answer(
    template_arn: TemplateArn,
    lens_alias: LensAlias,
    question_id: QuestionId,
    *,
    config_overrides: Optional[WellArchitectedClientConfig] = None,
    selected_choices: Optional[SelectedChoices] = None,
    choice_updates: Optional[ChoiceUpdates] = None,
    notes: Optional[Notes] = None,
    is_applicable: Optional[IsApplicable] = None,
    reason: Optional[AnswerReason] = None,
) -> UpdateReviewTemplateAnswerOutput

Update a review template answer.

Parameters:

Raises:

Source code in docs_src/capo_wellarchitected/_services/well_architected.py
def update_review_template_answer(
    self,
    template_arn: "capo_wellarchitected.types.template_arn.TemplateArn",
    lens_alias: "capo_wellarchitected.types.lens_alias.LensAlias",
    question_id: "capo_wellarchitected.types.question_id.QuestionId",
    *,
    config_overrides: Optional[WellArchitectedClientConfig] = None,
    selected_choices: Optional[
        "capo_wellarchitected.types.selected_choices.SelectedChoices"
    ] = None,
    choice_updates: Optional[
        "capo_wellarchitected.types.choice_updates.ChoiceUpdates"
    ] = None,
    notes: Optional["capo_wellarchitected.types.notes.Notes"] = None,
    is_applicable: Optional[
        "capo_wellarchitected.types.is_applicable.IsApplicable"
    ] = None,
    reason: Optional[
        "capo_wellarchitected.types.answer_reason.AnswerReason"
    ] = None,
) -> "capo_wellarchitected.types.update_review_template_answer_output.UpdateReviewTemplateAnswerOutput":
    """<p>Update a review template answer.</p>

    Args:
        template_arn: <p>The review template ARN.</p>
        choice_updates: <p>A list of choices to be updated.</p>
        reason: <p>The update reason.</p>

    Raises:
        capo_wellarchitected.errors.access_denied_exception.AccessDeniedException: <p>User does not have sufficient access to perform this action.</p>
        capo_wellarchitected.errors.conflict_exception.ConflictException: <p>The resource has already been processed, was deleted, or is too large.</p>
        capo_wellarchitected.errors.internal_server_exception.InternalServerException: <p>There is a problem with the Well-Architected Tool API service.</p>
        capo_wellarchitected.errors.resource_not_found_exception.ResourceNotFoundException: <p>The requested resource was not found.</p>
        capo_wellarchitected.errors.throttling_exception.ThrottlingException: <p>Request was denied due to request throttling.</p>
        capo_wellarchitected.errors.validation_exception.ValidationException: <p>The user input is not valid.</p>
        capo_wellarchitected.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    def _handler(
        req: "OperationRequest[capo_wellarchitected.types.update_review_template_answer_input.UpdateReviewTemplateAnswerInput]",
    ) -> OperationResponse[
        "capo_wellarchitected.types.update_review_template_answer_output.UpdateReviewTemplateAnswerOutput"
    ]:
        import capo_wellarchitected._operations.well_architected_api_service_lambda.update_review_template_answer

        output, http_response = (
            capo_wellarchitected._operations.well_architected_api_service_lambda.update_review_template_answer.update_review_template_answer(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("UpdateReviewTemplateAnswer")
    )
    input_: capo_wellarchitected.types.update_review_template_answer_input.UpdateReviewTemplateAnswerInput = {
        "template_arn": template_arn,
        "lens_alias": lens_alias,
        "question_id": question_id,
    }
    if selected_choices is not None:
        input_["selected_choices"] = selected_choices
    if choice_updates is not None:
        input_["choice_updates"] = choice_updates
    if notes is not None:
        input_["notes"] = notes
    if is_applicable is not None:
        input_["is_applicable"] = is_applicable
    if reason is not None:
        input_["reason"] = reason

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