Skip to content

update_ad_configuration

update_ad_configuration(
    arn: AdConfigurationArn,
    *,
    config_overrides: Optional[ivsClientConfig] = None,
    name: Optional[AdConfigurationName] = None,
    media_tailor_playback_configurations: Optional[
        MediaTailorPlaybackConfigurationsList
    ] = None,
    post_roll_configuration: Optional[PostRollConfiguration] = None,
) -> UpdateAdConfigurationResponse

Updates a specified ad configuration.

Parameters:

Raises:

Source code in docs_src/capo_ivs/_services/ivs.py
def update_ad_configuration(
    self,
    arn: "capo_ivs.types.ad_configuration_arn.AdConfigurationArn",
    *,
    config_overrides: Optional[ivsClientConfig] = None,
    name: Optional[
        "capo_ivs.types.ad_configuration_name.AdConfigurationName"
    ] = None,
    media_tailor_playback_configurations: Optional[
        "capo_ivs.types.media_tailor_playback_configurations_list.MediaTailorPlaybackConfigurationsList"
    ] = None,
    post_roll_configuration: Optional[
        "capo_ivs.types.post_roll_configuration.PostRollConfiguration"
    ] = None,
) -> (
    "capo_ivs.types.update_ad_configuration_response.UpdateAdConfigurationResponse"
):
    """<p>Updates a specified ad configuration.</p>

    Args:
        arn: <p>ARN of the ad configuration to be updated.</p>
        name: <p>Ad configuration name. The value does not need to be unique.</p>
        media_tailor_playback_configurations: <p>List of integration configurations with MediaTailor resources. The first item in the list is the default playback configuration used for the ad configuration. To select a different configuration per viewing session, see <a href="https://docs.aws.amazon.com/ivs/latest/LowLatencyUserGuide/private-channels-generate-tokens.html">Generate and Sign IVS Playback Tokens</a>.</p>
        post_roll_configuration: <p>Configuration for the post-roll ad break to use for this ad configuration.</p>

    Raises:
        capo_ivs.errors.access_denied_exception.AccessDeniedException: <p>User does not have sufficient access to perform this action.</p>
        capo_ivs.errors.conflict_exception.ConflictException: <p>Updating or deleting a resource can cause an inconsistent state.</p>
        capo_ivs.errors.internal_server_exception.InternalServerException: <p>Unexpected error during processing of request.</p>
        capo_ivs.errors.pending_verification.PendingVerification: <p>Your account is pending verification.</p>
        capo_ivs.errors.resource_not_found_exception.ResourceNotFoundException: <p>Request references a resource which does not exist.</p>
        capo_ivs.errors.service_quota_exceeded_exception.ServiceQuotaExceededException: <p>Request would cause a service quota to be exceeded.</p>
        capo_ivs.errors.throttling_exception.ThrottlingException: <p>Request was denied due to request throttling.</p>
        capo_ivs.errors.validation_exception.ValidationException: <p>The input fails to satisfy the constraints specified by an Amazon Web Services service.</p>
        capo_ivs.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    def _handler(
        req: "OperationRequest[capo_ivs.types.update_ad_configuration_request.UpdateAdConfigurationRequest]",
    ) -> OperationResponse[
        "capo_ivs.types.update_ad_configuration_response.UpdateAdConfigurationResponse"
    ]:
        import capo_ivs._operations.amazon_interactive_video_service.update_ad_configuration

        output, http_response = (
            capo_ivs._operations.amazon_interactive_video_service.update_ad_configuration.update_ad_configuration(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("UpdateAdConfiguration")
    )
    input_: capo_ivs.types.update_ad_configuration_request.UpdateAdConfigurationRequest = {
        "arn": arn
    }
    if name is not None:
        input_["name"] = name
    if media_tailor_playback_configurations is not None:
        input_["media_tailor_playback_configurations"] = (
            media_tailor_playback_configurations
        )
    if post_roll_configuration is not None:
        input_["post_roll_configuration"] = post_roll_configuration

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