aws_sdk_databasemigration/client/create_endpoint.rs
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`CreateEndpoint`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`endpoint_identifier(impl Into<String>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::endpoint_identifier) / [`set_endpoint_identifier(Option<String>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::set_endpoint_identifier):<br>required: **true**<br><p>The database endpoint identifier. Identifiers must begin with a letter and must contain only ASCII letters, digits, and hyphens. They can't end with a hyphen, or contain two consecutive hyphens.</p><br>
/// - [`endpoint_type(ReplicationEndpointTypeValue)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::endpoint_type) / [`set_endpoint_type(Option<ReplicationEndpointTypeValue>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::set_endpoint_type):<br>required: **true**<br><p>The type of endpoint. Valid values are <code>source</code> and <code>target</code>.</p><br>
/// - [`engine_name(impl Into<String>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::engine_name) / [`set_engine_name(Option<String>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::set_engine_name):<br>required: **true**<br><p>The type of engine for the endpoint. Valid values, depending on the <code>EndpointType</code> value, include <code>"mysql"</code>, <code>"oracle"</code>, <code>"postgres"</code>, <code>"mariadb"</code>, <code>"aurora"</code>, <code>"aurora-postgresql"</code>, <code>"opensearch"</code>, <code>"redshift"</code>, <code>"s3"</code>, <code>"db2"</code>, <code>"db2-zos"</code>, <code>"azuredb"</code>, <code>"sybase"</code>, <code>"dynamodb"</code>, <code>"mongodb"</code>, <code>"kinesis"</code>, <code>"kafka"</code>, <code>"elasticsearch"</code>, <code>"docdb"</code>, <code>"sqlserver"</code>, <code>"neptune"</code>, <code>"babelfish"</code>, <code>redshift-serverless</code>, <code>aurora-serverless</code>, <code>aurora-postgresql-serverless</code>, <code>gcp-mysql</code>, <code>azure-sql-managed-instance</code>, <code>redis</code>, <code>dms-transfer</code>.</p><br>
/// - [`username(impl Into<String>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::username) / [`set_username(Option<String>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::set_username):<br>required: **false**<br><p>The user name to be used to log in to the endpoint database.</p><br>
/// - [`password(impl Into<String>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::password) / [`set_password(Option<String>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::set_password):<br>required: **false**<br><p>The password to be used to log in to the endpoint database.</p><br>
/// - [`server_name(impl Into<String>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::server_name) / [`set_server_name(Option<String>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::set_server_name):<br>required: **false**<br><p>The name of the server where the endpoint database resides.</p><br>
/// - [`port(i32)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::port) / [`set_port(Option<i32>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::set_port):<br>required: **false**<br><p>The port used by the endpoint database.</p><br>
/// - [`database_name(impl Into<String>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::database_name) / [`set_database_name(Option<String>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::set_database_name):<br>required: **false**<br><p>The name of the endpoint database. For a MySQL source or target endpoint, do not specify DatabaseName. To migrate to a specific database, use this setting and <code>targetDbType</code>.</p><br>
/// - [`extra_connection_attributes(impl Into<String>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::extra_connection_attributes) / [`set_extra_connection_attributes(Option<String>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::set_extra_connection_attributes):<br>required: **false**<br><p>Additional attributes associated with the connection. Each attribute is specified as a name-value pair associated by an equal sign (=). Multiple attributes are separated by a semicolon (;) with no additional white space. For information on the attributes available for connecting your source or target endpoint, see <a href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Endpoints.html">Working with DMS Endpoints</a> in the <i>Database Migration Service User Guide.</i></p><br>
/// - [`kms_key_id(impl Into<String>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::kms_key_id) / [`set_kms_key_id(Option<String>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::set_kms_key_id):<br>required: **false**<br><p>An KMS key identifier that is used to encrypt the connection parameters for the endpoint.</p> <p>If you don't specify a value for the <code>KmsKeyId</code> parameter, then DMS uses your default encryption key.</p> <p>KMS creates the default encryption key for your Amazon Web Services account. Your Amazon Web Services account has a different default encryption key for each Amazon Web Services Region.</p><br>
/// - [`tags(Tag)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::tags) / [`set_tags(Option<Vec::<Tag>>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::set_tags):<br>required: **false**<br><p>One or more tags to be assigned to the endpoint.</p><br>
/// - [`certificate_arn(impl Into<String>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::certificate_arn) / [`set_certificate_arn(Option<String>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::set_certificate_arn):<br>required: **false**<br><p>The Amazon Resource Name (ARN) for the certificate.</p><br>
/// - [`ssl_mode(DmsSslModeValue)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::ssl_mode) / [`set_ssl_mode(Option<DmsSslModeValue>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::set_ssl_mode):<br>required: **false**<br><p>The Secure Sockets Layer (SSL) mode to use for the SSL connection. The default is <code>none</code></p><br>
/// - [`service_access_role_arn(impl Into<String>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::service_access_role_arn) / [`set_service_access_role_arn(Option<String>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::set_service_access_role_arn):<br>required: **false**<br><p>The Amazon Resource Name (ARN) for the service access role that you want to use to create the endpoint. The role must allow the <code>iam:PassRole</code> action.</p><br>
/// - [`external_table_definition(impl Into<String>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::external_table_definition) / [`set_external_table_definition(Option<String>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::set_external_table_definition):<br>required: **false**<br><p>The external table definition.</p><br>
/// - [`dynamo_db_settings(DynamoDbSettings)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::dynamo_db_settings) / [`set_dynamo_db_settings(Option<DynamoDbSettings>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::set_dynamo_db_settings):<br>required: **false**<br><p>Settings in JSON format for the target Amazon DynamoDB endpoint. For information about other available settings, see <a href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.DynamoDB.html#CHAP_Target.DynamoDB.ObjectMapping">Using Object Mapping to Migrate Data to DynamoDB</a> in the <i>Database Migration Service User Guide.</i></p><br>
/// - [`s3_settings(S3Settings)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::s3_settings) / [`set_s3_settings(Option<S3Settings>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::set_s3_settings):<br>required: **false**<br><p>Settings in JSON format for the target Amazon S3 endpoint. For more information about the available settings, see <a href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.S3.html#CHAP_Target.S3.Configuring">Extra Connection Attributes When Using Amazon S3 as a Target for DMS</a> in the <i>Database Migration Service User Guide.</i></p><br>
/// - [`dms_transfer_settings(DmsTransferSettings)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::dms_transfer_settings) / [`set_dms_transfer_settings(Option<DmsTransferSettings>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::set_dms_transfer_settings):<br>required: **false**<br><p>The settings in JSON format for the DMS transfer type of source endpoint.</p> <p>Possible settings include the following:</p> <ul> <li> <p><code>ServiceAccessRoleArn</code> - The Amazon Resource Name (ARN) used by the service access IAM role. The role must allow the <code>iam:PassRole</code> action.</p></li> <li> <p><code>BucketName</code> - The name of the S3 bucket to use.</p></li> </ul> <p>Shorthand syntax for these settings is as follows: <code>ServiceAccessRoleArn=string,BucketName=string</code></p> <p>JSON syntax for these settings is as follows: <code>{ "ServiceAccessRoleArn": "string", "BucketName": "string", } </code></p><br>
/// - [`mongo_db_settings(MongoDbSettings)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::mongo_db_settings) / [`set_mongo_db_settings(Option<MongoDbSettings>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::set_mongo_db_settings):<br>required: **false**<br><p>Settings in JSON format for the source MongoDB endpoint. For more information about the available settings, see <a href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.MongoDB.html#CHAP_Source.MongoDB.Configuration">Endpoint configuration settings when using MongoDB as a source for Database Migration Service</a> in the <i>Database Migration Service User Guide.</i></p><br>
/// - [`kinesis_settings(KinesisSettings)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::kinesis_settings) / [`set_kinesis_settings(Option<KinesisSettings>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::set_kinesis_settings):<br>required: **false**<br><p>Settings in JSON format for the target endpoint for Amazon Kinesis Data Streams. For more information about the available settings, see <a href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Kinesis.html#CHAP_Target.Kinesis.ObjectMapping">Using object mapping to migrate data to a Kinesis data stream</a> in the <i>Database Migration Service User Guide.</i></p><br>
/// - [`kafka_settings(KafkaSettings)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::kafka_settings) / [`set_kafka_settings(Option<KafkaSettings>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::set_kafka_settings):<br>required: **false**<br><p>Settings in JSON format for the target Apache Kafka endpoint. For more information about the available settings, see <a href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Kafka.html#CHAP_Target.Kafka.ObjectMapping">Using object mapping to migrate data to a Kafka topic</a> in the <i>Database Migration Service User Guide.</i></p><br>
/// - [`elasticsearch_settings(ElasticsearchSettings)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::elasticsearch_settings) / [`set_elasticsearch_settings(Option<ElasticsearchSettings>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::set_elasticsearch_settings):<br>required: **false**<br><p>Settings in JSON format for the target OpenSearch endpoint. For more information about the available settings, see <a href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Elasticsearch.html#CHAP_Target.Elasticsearch.Configuration">Extra Connection Attributes When Using OpenSearch as a Target for DMS</a> in the <i>Database Migration Service User Guide</i>.</p><br>
/// - [`neptune_settings(NeptuneSettings)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::neptune_settings) / [`set_neptune_settings(Option<NeptuneSettings>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::set_neptune_settings):<br>required: **false**<br><p>Settings in JSON format for the target Amazon Neptune endpoint. For more information about the available settings, see <a href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Neptune.html#CHAP_Target.Neptune.EndpointSettings">Specifying graph-mapping rules using Gremlin and R2RML for Amazon Neptune as a target</a> in the <i>Database Migration Service User Guide.</i></p><br>
/// - [`redshift_settings(RedshiftSettings)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::redshift_settings) / [`set_redshift_settings(Option<RedshiftSettings>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::set_redshift_settings):<br>required: **false**<br><p>Provides information that defines an Amazon Redshift endpoint.</p><br>
/// - [`postgre_sql_settings(PostgreSqlSettings)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::postgre_sql_settings) / [`set_postgre_sql_settings(Option<PostgreSqlSettings>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::set_postgre_sql_settings):<br>required: **false**<br><p>Settings in JSON format for the source and target PostgreSQL endpoint. For information about other available settings, see <a href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.PostgreSQL.html#CHAP_Source.PostgreSQL.ConnectionAttrib">Extra connection attributes when using PostgreSQL as a source for DMS</a> and <a href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.PostgreSQL.html#CHAP_Target.PostgreSQL.ConnectionAttrib"> Extra connection attributes when using PostgreSQL as a target for DMS</a> in the <i>Database Migration Service User Guide.</i></p><br>
/// - [`my_sql_settings(MySqlSettings)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::my_sql_settings) / [`set_my_sql_settings(Option<MySqlSettings>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::set_my_sql_settings):<br>required: **false**<br><p>Settings in JSON format for the source and target MySQL endpoint. For information about other available settings, see <a href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.MySQL.html#CHAP_Source.MySQL.ConnectionAttrib">Extra connection attributes when using MySQL as a source for DMS</a> and <a href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.MySQL.html#CHAP_Target.MySQL.ConnectionAttrib">Extra connection attributes when using a MySQL-compatible database as a target for DMS</a> in the <i>Database Migration Service User Guide.</i></p><br>
/// - [`oracle_settings(OracleSettings)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::oracle_settings) / [`set_oracle_settings(Option<OracleSettings>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::set_oracle_settings):<br>required: **false**<br><p>Settings in JSON format for the source and target Oracle endpoint. For information about other available settings, see <a href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.Oracle.html#CHAP_Source.Oracle.ConnectionAttrib">Extra connection attributes when using Oracle as a source for DMS</a> and <a href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Oracle.html#CHAP_Target.Oracle.ConnectionAttrib"> Extra connection attributes when using Oracle as a target for DMS</a> in the <i>Database Migration Service User Guide.</i></p><br>
/// - [`sybase_settings(SybaseSettings)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::sybase_settings) / [`set_sybase_settings(Option<SybaseSettings>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::set_sybase_settings):<br>required: **false**<br><p>Settings in JSON format for the source and target SAP ASE endpoint. For information about other available settings, see <a href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.SAP.html#CHAP_Source.SAP.ConnectionAttrib">Extra connection attributes when using SAP ASE as a source for DMS</a> and <a href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.SAP.html#CHAP_Target.SAP.ConnectionAttrib">Extra connection attributes when using SAP ASE as a target for DMS</a> in the <i>Database Migration Service User Guide.</i></p><br>
/// - [`microsoft_sql_server_settings(MicrosoftSqlServerSettings)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::microsoft_sql_server_settings) / [`set_microsoft_sql_server_settings(Option<MicrosoftSqlServerSettings>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::set_microsoft_sql_server_settings):<br>required: **false**<br><p>Settings in JSON format for the source and target Microsoft SQL Server endpoint. For information about other available settings, see <a href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.SQLServer.html#CHAP_Source.SQLServer.ConnectionAttrib">Extra connection attributes when using SQL Server as a source for DMS</a> and <a href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.SQLServer.html#CHAP_Target.SQLServer.ConnectionAttrib"> Extra connection attributes when using SQL Server as a target for DMS</a> in the <i>Database Migration Service User Guide.</i></p><br>
/// - [`ibm_db2_settings(IbmDb2Settings)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::ibm_db2_settings) / [`set_ibm_db2_settings(Option<IbmDb2Settings>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::set_ibm_db2_settings):<br>required: **false**<br><p>Settings in JSON format for the source IBM Db2 LUW endpoint. For information about other available settings, see <a href="https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.DB2.html#CHAP_Source.DB2.ConnectionAttrib">Extra connection attributes when using Db2 LUW as a source for DMS</a> in the <i>Database Migration Service User Guide.</i></p><br>
/// - [`resource_identifier(impl Into<String>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::resource_identifier) / [`set_resource_identifier(Option<String>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::set_resource_identifier):<br>required: **false**<br><p>A friendly name for the resource identifier at the end of the <code>EndpointArn</code> response parameter that is returned in the created <code>Endpoint</code> object. The value for this parameter can have up to 31 characters. It can contain only ASCII letters, digits, and hyphen ('-'). Also, it can't end with a hyphen or contain two consecutive hyphens, and can only begin with a letter, such as <code>Example-App-ARN1</code>. For example, this value might result in the <code>EndpointArn</code> value <code>arn:aws:dms:eu-west-1:012345678901:rep:Example-App-ARN1</code>. If you don't specify a <code>ResourceIdentifier</code> value, DMS generates a default identifier value for the end of <code>EndpointArn</code>.</p><br>
/// - [`doc_db_settings(DocDbSettings)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::doc_db_settings) / [`set_doc_db_settings(Option<DocDbSettings>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::set_doc_db_settings):<br>required: **false**<br><p>Provides information that defines a DocumentDB endpoint.</p><br>
/// - [`redis_settings(RedisSettings)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::redis_settings) / [`set_redis_settings(Option<RedisSettings>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::set_redis_settings):<br>required: **false**<br><p>Settings in JSON format for the target Redis endpoint.</p><br>
/// - [`gcp_my_sql_settings(GcpMySqlSettings)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::gcp_my_sql_settings) / [`set_gcp_my_sql_settings(Option<GcpMySqlSettings>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::set_gcp_my_sql_settings):<br>required: **false**<br><p>Settings in JSON format for the source GCP MySQL endpoint.</p><br>
/// - [`timestream_settings(TimestreamSettings)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::timestream_settings) / [`set_timestream_settings(Option<TimestreamSettings>)`](crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::set_timestream_settings):<br>required: **false**<br><p>Settings in JSON format for the target Amazon Timestream endpoint.</p><br>
/// - On success, responds with [`CreateEndpointOutput`](crate::operation::create_endpoint::CreateEndpointOutput) with field(s):
/// - [`endpoint(Option<Endpoint>)`](crate::operation::create_endpoint::CreateEndpointOutput::endpoint): <p>The endpoint that was created.</p>
/// - On failure, responds with [`SdkError<CreateEndpointError>`](crate::operation::create_endpoint::CreateEndpointError)
pub fn create_endpoint(&self) -> crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder {
crate::operation::create_endpoint::builders::CreateEndpointFluentBuilder::new(self.handle.clone())
}
}