Skip to content

update_campaign_source

update_campaign_source(
    id: CampaignId,
    source: Source,
    *,
    config_overrides: Optional[ConnectCampaignsV2ClientConfig] = None,
) -> None

Updates the campaign source with a campaign. This API is idempotent.

Raises:

Source code in docs_src/capo_connectcampaignsv2/_services/connect_campaigns_v2.py
def update_campaign_source(
    self,
    id: "capo_connectcampaignsv2.types.campaign_id.CampaignId",
    source: "capo_connectcampaignsv2.types.source.Source",
    *,
    config_overrides: Optional[ConnectCampaignsV2ClientConfig] = None,
) -> None:
    """Updates the campaign source with a campaign. This API is idempotent.

    Raises:
        capo_connectcampaignsv2.errors.access_denied_exception.AccessDeniedException: You do not have sufficient access to perform this action.
        capo_connectcampaignsv2.errors.conflict_exception.ConflictException: The request could not be processed because of conflict in the current state of the resource.
        capo_connectcampaignsv2.errors.internal_server_exception.InternalServerException: Request processing failed because of an error or failure with the service.
        capo_connectcampaignsv2.errors.invalid_campaign_state_exception.InvalidCampaignStateException: The request could not be processed because of conflict in the current state of the campaign.
        capo_connectcampaignsv2.errors.resource_not_found_exception.ResourceNotFoundException: The specified resource was not found.
        capo_connectcampaignsv2.errors.validation_exception.ValidationException: The input fails to satisfy the constraints specified by an AWS service.
        capo_connectcampaignsv2.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    def _handler(
        req: "OperationRequest[capo_connectcampaignsv2.types.update_campaign_source_request.UpdateCampaignSourceRequest]",
    ) -> OperationResponse[None]:
        import capo_connectcampaignsv2._operations.amazon_connect_campaign_service_v2.update_campaign_source

        output, http_response = (
            capo_connectcampaignsv2._operations.amazon_connect_campaign_service_v2.update_campaign_source.update_campaign_source(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("UpdateCampaignSource")
    )
    input_: capo_connectcampaignsv2.types.update_campaign_source_request.UpdateCampaignSourceRequest = {
        "id": id,
        "source": source,
    }

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