Skip to content

update_evaluation_form async

update_evaluation_form(
    instance_id: InstanceId,
    evaluation_form_id: ResourceId,
    evaluation_form_version: VersionNumber,
    title: EvaluationFormTitle,
    items: EvaluationFormItemsList,
    *,
    config_overrides: Optional[AsyncConnectClientConfig] = None,
    create_new_version: Optional[BoxedBoolean] = None,
    description: Optional[EvaluationFormDescription] = None,
    scoring_strategy: Optional[EvaluationFormScoringStrategy] = None,
    auto_evaluation_configuration: Optional[
        EvaluationFormAutoEvaluationConfiguration
    ] = None,
    review_configuration: Optional[EvaluationReviewConfiguration] = None,
    as_draft: Optional[BoxedBoolean] = None,
    client_token: Optional[ClientToken] = None,
    target_configuration: Optional[EvaluationFormTargetConfiguration] = None,
    language_configuration: Optional[EvaluationFormLanguageConfiguration] = None,
    ai_version: Optional[EvaluationFormAIVersion] = None,
) -> UpdateEvaluationFormResponse

Updates details about a specific evaluation form version in the specified Connect Customer instance. Question and section identifiers cannot be duplicated within the same evaluation form.

This operation does not support partial updates. Instead it does a full update of evaluation form content.

Parameters:

Raises:

Source code in docs_src/capo_connect/_services/async_connect.py
async def update_evaluation_form(
    self,
    instance_id: "capo_connect.types.instance_id.InstanceId",
    evaluation_form_id: "capo_connect.types.resource_id.ResourceId",
    evaluation_form_version: "capo_connect.types.version_number.VersionNumber",
    title: "capo_connect.types.evaluation_form_title.EvaluationFormTitle",
    items: "capo_connect.types.evaluation_form_items_list.EvaluationFormItemsList",
    *,
    config_overrides: Optional[AsyncConnectClientConfig] = None,
    create_new_version: Optional[
        "capo_connect.types.boxed_boolean.BoxedBoolean"
    ] = None,
    description: Optional[
        "capo_connect.types.evaluation_form_description.EvaluationFormDescription"
    ] = None,
    scoring_strategy: Optional[
        "capo_connect.types.evaluation_form_scoring_strategy.EvaluationFormScoringStrategy"
    ] = None,
    auto_evaluation_configuration: Optional[
        "capo_connect.types.evaluation_form_auto_evaluation_configuration.EvaluationFormAutoEvaluationConfiguration"
    ] = None,
    review_configuration: Optional[
        "capo_connect.types.evaluation_review_configuration.EvaluationReviewConfiguration"
    ] = None,
    as_draft: Optional["capo_connect.types.boxed_boolean.BoxedBoolean"] = None,
    client_token: Optional["capo_connect.types.client_token.ClientToken"] = None,
    target_configuration: Optional[
        "capo_connect.types.evaluation_form_target_configuration.EvaluationFormTargetConfiguration"
    ] = None,
    language_configuration: Optional[
        "capo_connect.types.evaluation_form_language_configuration.EvaluationFormLanguageConfiguration"
    ] = None,
    ai_version: Optional[
        "capo_connect.types.evaluation_form_ai_version.EvaluationFormAIVersion"
    ] = None,
) -> "capo_connect.types.update_evaluation_form_response.UpdateEvaluationFormResponse":
    """<p>Updates details about a specific evaluation form version in the specified Connect Customer instance. Question and section identifiers cannot be duplicated within the same evaluation form.</p> <p>This operation does not support partial updates. Instead it does a full update of evaluation form content.</p>

    Args:
        instance_id: <p>The identifier of the Connect Customer instance. You can <a href="https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html">find the instance ID</a> in the Amazon Resource Name (ARN) of the instance.</p>
        evaluation_form_id: <p>The unique identifier for the evaluation form.</p>
        evaluation_form_version: <p>A version of the evaluation form to update.</p>
        create_new_version: <p>A flag indicating whether the operation must create a new version.</p>
        title: <p>A title of the evaluation form.</p>
        description: <p>The description of the evaluation form.</p>
        items: <p>Items that are part of the evaluation form. The total number of sections and questions must not exceed 100 each. Questions must be contained in a section.</p>
        scoring_strategy: <p>A scoring strategy of the evaluation form.</p>
        auto_evaluation_configuration: <p>Whether automated evaluations are enabled.</p>
        review_configuration: <p>Configuration for evaluation review settings of the evaluation form.</p>
        as_draft: <p>A boolean flag indicating whether to update evaluation form to draft state.</p>
        client_token: <p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see <a href="https://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/">Making retries safe with idempotent APIs</a>.</p>
        target_configuration: <p>Configuration that specifies the target for the evaluation form.</p>
        language_configuration: <p>Configuration for language settings of the evaluation form.</p>
        ai_version: <p>The AI version to use for the evaluation form. This specifies which AI model version is used for automated evaluations.</p>

    Raises:
        capo_connect.errors.internal_service_exception.InternalServiceException: <p>Request processing failed because of an error or failure with the service.</p>
        capo_connect.errors.invalid_parameter_exception.InvalidParameterException: <p>One or more of the specified parameters are not valid.</p>
        capo_connect.errors.resource_conflict_exception.ResourceConflictException: <p>A resource already has that name.</p>
        capo_connect.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified resource was not found.</p>
        capo_connect.errors.service_quota_exceeded_exception.ServiceQuotaExceededException: <p>The service quota has been exceeded.</p>
        capo_connect.errors.throttling_exception.ThrottlingException: <p>The throttling limit has been exceeded.</p>
        capo_connect.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_connect.types.update_evaluation_form_request.UpdateEvaluationFormRequest]",
    ) -> AsyncOperationResponse[
        "capo_connect.types.update_evaluation_form_response.UpdateEvaluationFormResponse"
    ]:
        import capo_connect._operations.amazon_connect_service.update_evaluation_form

        (
            output,
            http_response,
        ) = await capo_connect._operations.amazon_connect_service.update_evaluation_form.async_update_evaluation_form(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("UpdateEvaluationForm")
    )
    input_: capo_connect.types.update_evaluation_form_request.UpdateEvaluationFormRequest = {
        "instance_id": instance_id,
        "evaluation_form_id": evaluation_form_id,
        "evaluation_form_version": evaluation_form_version,
        "title": title,
        "items": items,
    }
    if create_new_version is not None:
        input_["create_new_version"] = create_new_version
    if description is not None:
        input_["description"] = description
    if scoring_strategy is not None:
        input_["scoring_strategy"] = scoring_strategy
    if auto_evaluation_configuration is not None:
        input_["auto_evaluation_configuration"] = auto_evaluation_configuration
    if review_configuration is not None:
        input_["review_configuration"] = review_configuration
    if as_draft is not None:
        input_["as_draft"] = as_draft
    if client_token is None:
        client_token = str(uuid.uuid4())
    input_["client_token"] = client_token
    if target_configuration is not None:
        input_["target_configuration"] = target_configuration
    if language_configuration is not None:
        input_["language_configuration"] = language_configuration
    if ai_version is not None:
        input_["ai_version"] = ai_version

    response = await aexecute_pipeline(
        AsyncOperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    await response.response.aclose()
    return response.output