aws_sdk_appsync/client/
create_data_source.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2impl super::Client {
3    /// Constructs a fluent builder for the [`CreateDataSource`](crate::operation::create_data_source::builders::CreateDataSourceFluentBuilder) operation.
4    ///
5    /// - The fluent builder is configurable:
6    ///   - [`api_id(impl Into<String>)`](crate::operation::create_data_source::builders::CreateDataSourceFluentBuilder::api_id) / [`set_api_id(Option<String>)`](crate::operation::create_data_source::builders::CreateDataSourceFluentBuilder::set_api_id):<br>required: **true**<br><p>The API ID for the GraphQL API for the <code>DataSource</code>.</p><br>
7    ///   - [`name(impl Into<String>)`](crate::operation::create_data_source::builders::CreateDataSourceFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::create_data_source::builders::CreateDataSourceFluentBuilder::set_name):<br>required: **true**<br><p>A user-supplied name for the <code>DataSource</code>.</p><br>
8    ///   - [`description(impl Into<String>)`](crate::operation::create_data_source::builders::CreateDataSourceFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::create_data_source::builders::CreateDataSourceFluentBuilder::set_description):<br>required: **false**<br><p>A description of the <code>DataSource</code>.</p><br>
9    ///   - [`r#type(DataSourceType)`](crate::operation::create_data_source::builders::CreateDataSourceFluentBuilder::type) / [`set_type(Option<DataSourceType>)`](crate::operation::create_data_source::builders::CreateDataSourceFluentBuilder::set_type):<br>required: **true**<br><p>The type of the <code>DataSource</code>.</p><br>
10    ///   - [`service_role_arn(impl Into<String>)`](crate::operation::create_data_source::builders::CreateDataSourceFluentBuilder::service_role_arn) / [`set_service_role_arn(Option<String>)`](crate::operation::create_data_source::builders::CreateDataSourceFluentBuilder::set_service_role_arn):<br>required: **false**<br><p>The Identity and Access Management (IAM) service role Amazon Resource Name (ARN) for the data source. The system assumes this role when accessing the data source.</p><br>
11    ///   - [`dynamodb_config(DynamodbDataSourceConfig)`](crate::operation::create_data_source::builders::CreateDataSourceFluentBuilder::dynamodb_config) / [`set_dynamodb_config(Option<DynamodbDataSourceConfig>)`](crate::operation::create_data_source::builders::CreateDataSourceFluentBuilder::set_dynamodb_config):<br>required: **false**<br><p>Amazon DynamoDB settings.</p><br>
12    ///   - [`lambda_config(LambdaDataSourceConfig)`](crate::operation::create_data_source::builders::CreateDataSourceFluentBuilder::lambda_config) / [`set_lambda_config(Option<LambdaDataSourceConfig>)`](crate::operation::create_data_source::builders::CreateDataSourceFluentBuilder::set_lambda_config):<br>required: **false**<br><p>Lambda settings.</p><br>
13    ///   - [`elasticsearch_config(ElasticsearchDataSourceConfig)`](crate::operation::create_data_source::builders::CreateDataSourceFluentBuilder::elasticsearch_config) / [`set_elasticsearch_config(Option<ElasticsearchDataSourceConfig>)`](crate::operation::create_data_source::builders::CreateDataSourceFluentBuilder::set_elasticsearch_config):<br>required: **false**<br><p>Amazon OpenSearch Service settings.</p> <p>As of September 2021, Amazon Elasticsearch service is Amazon OpenSearch Service. This configuration is deprecated. For new data sources, use <code>CreateDataSourceRequest$openSearchServiceConfig</code> to create an OpenSearch data source.</p><br>
14    ///   - [`open_search_service_config(OpenSearchServiceDataSourceConfig)`](crate::operation::create_data_source::builders::CreateDataSourceFluentBuilder::open_search_service_config) / [`set_open_search_service_config(Option<OpenSearchServiceDataSourceConfig>)`](crate::operation::create_data_source::builders::CreateDataSourceFluentBuilder::set_open_search_service_config):<br>required: **false**<br><p>Amazon OpenSearch Service settings.</p><br>
15    ///   - [`http_config(HttpDataSourceConfig)`](crate::operation::create_data_source::builders::CreateDataSourceFluentBuilder::http_config) / [`set_http_config(Option<HttpDataSourceConfig>)`](crate::operation::create_data_source::builders::CreateDataSourceFluentBuilder::set_http_config):<br>required: **false**<br><p>HTTP endpoint settings.</p><br>
16    ///   - [`relational_database_config(RelationalDatabaseDataSourceConfig)`](crate::operation::create_data_source::builders::CreateDataSourceFluentBuilder::relational_database_config) / [`set_relational_database_config(Option<RelationalDatabaseDataSourceConfig>)`](crate::operation::create_data_source::builders::CreateDataSourceFluentBuilder::set_relational_database_config):<br>required: **false**<br><p>Relational database settings.</p><br>
17    ///   - [`event_bridge_config(EventBridgeDataSourceConfig)`](crate::operation::create_data_source::builders::CreateDataSourceFluentBuilder::event_bridge_config) / [`set_event_bridge_config(Option<EventBridgeDataSourceConfig>)`](crate::operation::create_data_source::builders::CreateDataSourceFluentBuilder::set_event_bridge_config):<br>required: **false**<br><p>Amazon EventBridge settings.</p><br>
18    ///   - [`metrics_config(DataSourceLevelMetricsConfig)`](crate::operation::create_data_source::builders::CreateDataSourceFluentBuilder::metrics_config) / [`set_metrics_config(Option<DataSourceLevelMetricsConfig>)`](crate::operation::create_data_source::builders::CreateDataSourceFluentBuilder::set_metrics_config):<br>required: **false**<br><p>Enables or disables enhanced data source metrics for specified data sources. Note that <code>metricsConfig</code> won't be used unless the <code>dataSourceLevelMetricsBehavior</code> value is set to <code>PER_DATA_SOURCE_METRICS</code>. If the <code>dataSourceLevelMetricsBehavior</code> is set to <code>FULL_REQUEST_DATA_SOURCE_METRICS</code> instead, <code>metricsConfig</code> will be ignored. However, you can still set its value.</p> <p><code>metricsConfig</code> can be <code>ENABLED</code> or <code>DISABLED</code>.</p><br>
19    /// - On success, responds with [`CreateDataSourceOutput`](crate::operation::create_data_source::CreateDataSourceOutput) with field(s):
20    ///   - [`data_source(Option<DataSource>)`](crate::operation::create_data_source::CreateDataSourceOutput::data_source): <p>The <code>DataSource</code> object.</p>
21    /// - On failure, responds with [`SdkError<CreateDataSourceError>`](crate::operation::create_data_source::CreateDataSourceError)
22    pub fn create_data_source(&self) -> crate::operation::create_data_source::builders::CreateDataSourceFluentBuilder {
23        crate::operation::create_data_source::builders::CreateDataSourceFluentBuilder::new(self.handle.clone())
24    }
25}