// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`CreateCampaign`](crate::operation::create_campaign::builders::CreateCampaignFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`name(impl Into<String>)`](crate::operation::create_campaign::builders::CreateCampaignFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::create_campaign::builders::CreateCampaignFluentBuilder::set_name):<br>required: **true**<br><p>A name for the new campaign. The campaign name must be unique within your account.</p><br>
/// - [`solution_version_arn(impl Into<String>)`](crate::operation::create_campaign::builders::CreateCampaignFluentBuilder::solution_version_arn) / [`set_solution_version_arn(Option<String>)`](crate::operation::create_campaign::builders::CreateCampaignFluentBuilder::set_solution_version_arn):<br>required: **true**<br><p>The Amazon Resource Name (ARN) of the solution version to deploy.</p><br>
/// - [`min_provisioned_tps(i32)`](crate::operation::create_campaign::builders::CreateCampaignFluentBuilder::min_provisioned_tps) / [`set_min_provisioned_tps(Option<i32>)`](crate::operation::create_campaign::builders::CreateCampaignFluentBuilder::set_min_provisioned_tps):<br>required: **false**<br><p>Specifies the requested minimum provisioned transactions (recommendations) per second that Amazon Personalize will support. A high <code>minProvisionedTPS</code> will increase your bill. We recommend starting with 1 for <code>minProvisionedTPS</code> (the default). Track your usage using Amazon CloudWatch metrics, and increase the <code>minProvisionedTPS</code> as necessary.</p><br>
/// - [`campaign_config(CampaignConfig)`](crate::operation::create_campaign::builders::CreateCampaignFluentBuilder::campaign_config) / [`set_campaign_config(Option<CampaignConfig>)`](crate::operation::create_campaign::builders::CreateCampaignFluentBuilder::set_campaign_config):<br>required: **false**<br><p>The configuration details of a campaign.</p><br>
/// - [`tags(Tag)`](crate::operation::create_campaign::builders::CreateCampaignFluentBuilder::tags) / [`set_tags(Option<Vec::<Tag>>)`](crate::operation::create_campaign::builders::CreateCampaignFluentBuilder::set_tags):<br>required: **false**<br><p>A list of <a href="https://docs.aws.amazon.com/personalize/latest/dg/tagging-resources.html">tags</a> to apply to the campaign.</p><br>
/// - On success, responds with [`CreateCampaignOutput`](crate::operation::create_campaign::CreateCampaignOutput) with field(s):
/// - [`campaign_arn(Option<String>)`](crate::operation::create_campaign::CreateCampaignOutput::campaign_arn): <p>The Amazon Resource Name (ARN) of the campaign.</p>
/// - On failure, responds with [`SdkError<CreateCampaignError>`](crate::operation::create_campaign::CreateCampaignError)
pub fn create_campaign(&self) -> crate::operation::create_campaign::builders::CreateCampaignFluentBuilder {
crate::operation::create_campaign::builders::CreateCampaignFluentBuilder::new(self.handle.clone())
}
}