aws-sdk-appsync 1.8.0 → 1.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 144efcb4f8ee2d47a92c8bce19bf1483b54ceca1
4
- data.tar.gz: aedaac6b0fd5fe6eb69e63e45b15aa46f339ad99
3
+ metadata.gz: ae5ffdf39ee628a846355bcfdafe3d6421ae0042
4
+ data.tar.gz: 6f12eea502325c551c12782227a4febff1c1f98b
5
5
  SHA512:
6
- metadata.gz: bd451723dc94f5c6dc19e6a5a74b704cf2e7eecf7f0a84f5272f6a4ed6a7ce3932dd85e171cd2589e353bd71e92a6c4c269aa7146d35eb45fb6eeba738f9bbef
7
- data.tar.gz: 39615f9968bdade2411be18f3cda0eec5481b7c2f6c9502bcaa391664266d8a0284f64d612353f9ab688c5a841c903458a3be364702b36c905d2f62e7431ea6f
6
+ metadata.gz: 8b94df71486fc4f539e5557b07673087516cba03146cf10baa86f3349071903d2c1e1ed09d62e72d03101b3ee0ce3b159cded79085dddf78a24b4327861b065b
7
+ data.tar.gz: d0a82dd6145a977aea27ecf922c508d968cded23ebc149cbbcbbb646c7302695c74e1b3e91fcf643069c1648c9ba6e84ca9a8bcba5a2a4e81675dd61afffde4e
@@ -42,6 +42,6 @@ require_relative 'aws-sdk-appsync/customizations'
42
42
  # @service
43
43
  module Aws::AppSync
44
44
 
45
- GEM_VERSION = '1.8.0'
45
+ GEM_VERSION = '1.9.0'
46
46
 
47
47
  end
@@ -15,6 +15,8 @@ require 'aws-sdk-core/plugins/helpful_socket_errors.rb'
15
15
  require 'aws-sdk-core/plugins/retry_errors.rb'
16
16
  require 'aws-sdk-core/plugins/global_configuration.rb'
17
17
  require 'aws-sdk-core/plugins/regional_endpoint.rb'
18
+ require 'aws-sdk-core/plugins/endpoint_discovery.rb'
19
+ require 'aws-sdk-core/plugins/endpoint_pattern.rb'
18
20
  require 'aws-sdk-core/plugins/response_paging.rb'
19
21
  require 'aws-sdk-core/plugins/stub_responses.rb'
20
22
  require 'aws-sdk-core/plugins/idempotency_token.rb'
@@ -45,6 +47,8 @@ module Aws::AppSync
45
47
  add_plugin(Aws::Plugins::RetryErrors)
46
48
  add_plugin(Aws::Plugins::GlobalConfiguration)
47
49
  add_plugin(Aws::Plugins::RegionalEndpoint)
50
+ add_plugin(Aws::Plugins::EndpointDiscovery)
51
+ add_plugin(Aws::Plugins::EndpointPattern)
48
52
  add_plugin(Aws::Plugins::ResponsePaging)
49
53
  add_plugin(Aws::Plugins::StubResponses)
50
54
  add_plugin(Aws::Plugins::IdempotencyToken)
@@ -98,6 +102,10 @@ module Aws::AppSync
98
102
  #
99
103
  # @option options [String] :access_key_id
100
104
  #
105
+ # @option options [Boolean] :active_endpoint_cache (false)
106
+ # When set to `true`, a thread polling for endpoints will be running in
107
+ # the background every 60 secs (default). Defaults to `false`.
108
+ #
101
109
  # @option options [Boolean] :client_side_monitoring (false)
102
110
  # When `true`, client-side metrics will be collected for all API requests from
103
111
  # this client.
@@ -118,11 +126,30 @@ module Aws::AppSync
118
126
  # When `true`, an attempt is made to coerce request parameters into
119
127
  # the required types.
120
128
  #
129
+ # @option options [Boolean] :disable_host_prefix_injection (false)
130
+ # Set to true to disable SDK automatically adding host prefix
131
+ # to default service endpoint when available.
132
+ #
121
133
  # @option options [String] :endpoint
122
134
  # The client endpoint is normally constructed from the `:region`
123
135
  # option. You should only configure an `:endpoint` when connecting
124
136
  # to test endpoints. This should be avalid HTTP(S) URI.
125
137
  #
138
+ # @option options [Integer] :endpoint_cache_max_entries (1000)
139
+ # Used for the maximum size limit of the LRU cache storing endpoints data
140
+ # for endpoint discovery enabled operations. Defaults to 1000.
141
+ #
142
+ # @option options [Integer] :endpoint_cache_max_threads (10)
143
+ # Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.
144
+ #
145
+ # @option options [Integer] :endpoint_cache_poll_interval (60)
146
+ # When :endpoint_discovery and :active_endpoint_cache is enabled,
147
+ # Use this option to config the time interval in seconds for making
148
+ # requests fetching endpoints information. Defaults to 60 sec.
149
+ #
150
+ # @option options [Boolean] :endpoint_discovery (false)
151
+ # When set to `true`, endpoint discovery will be enabled for operations when available. Defaults to `false`.
152
+ #
126
153
  # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
127
154
  # The log formatter.
128
155
  #
@@ -235,20 +262,23 @@ module Aws::AppSync
235
262
  # The type of the `DataSource`.
236
263
  #
237
264
  # @option params [String] :service_role_arn
238
- # The IAM service role ARN for the data source. The system assumes this
239
- # role when accessing the data source.
265
+ # The AWS IAM service role ARN for the data source. The system assumes
266
+ # this role when accessing the data source.
240
267
  #
241
268
  # @option params [Types::DynamodbDataSourceConfig] :dynamodb_config
242
- # DynamoDB settings.
269
+ # Amazon DynamoDB settings.
243
270
  #
244
271
  # @option params [Types::LambdaDataSourceConfig] :lambda_config
245
272
  # AWS Lambda settings.
246
273
  #
247
274
  # @option params [Types::ElasticsearchDataSourceConfig] :elasticsearch_config
248
- # Amazon Elasticsearch settings.
275
+ # Amazon Elasticsearch Service settings.
249
276
  #
250
277
  # @option params [Types::HttpDataSourceConfig] :http_config
251
- # Http endpoint settings.
278
+ # HTTP endpoint settings.
279
+ #
280
+ # @option params [Types::RelationalDatabaseDataSourceConfig] :relational_database_config
281
+ # Relational database settings.
252
282
  #
253
283
  # @return [Types::CreateDataSourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
254
284
  #
@@ -260,7 +290,7 @@ module Aws::AppSync
260
290
  # api_id: "String", # required
261
291
  # name: "ResourceName", # required
262
292
  # description: "String",
263
- # type: "AWS_LAMBDA", # required, accepts AWS_LAMBDA, AMAZON_DYNAMODB, AMAZON_ELASTICSEARCH, NONE, HTTP
293
+ # type: "AWS_LAMBDA", # required, accepts AWS_LAMBDA, AMAZON_DYNAMODB, AMAZON_ELASTICSEARCH, NONE, HTTP, RELATIONAL_DATABASE
264
294
  # service_role_arn: "String",
265
295
  # dynamodb_config: {
266
296
  # table_name: "String", # required
@@ -276,6 +306,23 @@ module Aws::AppSync
276
306
  # },
277
307
  # http_config: {
278
308
  # endpoint: "String",
309
+ # authorization_config: {
310
+ # authorization_type: "AWS_IAM", # required, accepts AWS_IAM
311
+ # aws_iam_config: {
312
+ # signing_region: "String",
313
+ # signing_service_name: "String",
314
+ # },
315
+ # },
316
+ # },
317
+ # relational_database_config: {
318
+ # relational_database_source_type: "RDS_HTTP_ENDPOINT", # accepts RDS_HTTP_ENDPOINT
319
+ # rds_http_endpoint_config: {
320
+ # aws_region: "String",
321
+ # db_cluster_identifier: "String",
322
+ # database_name: "String",
323
+ # schema: "String",
324
+ # aws_secret_store_arn: "String",
325
+ # },
279
326
  # },
280
327
  # })
281
328
  #
@@ -284,7 +331,7 @@ module Aws::AppSync
284
331
  # resp.data_source.data_source_arn #=> String
285
332
  # resp.data_source.name #=> String
286
333
  # resp.data_source.description #=> String
287
- # resp.data_source.type #=> String, one of "AWS_LAMBDA", "AMAZON_DYNAMODB", "AMAZON_ELASTICSEARCH", "NONE", "HTTP"
334
+ # resp.data_source.type #=> String, one of "AWS_LAMBDA", "AMAZON_DYNAMODB", "AMAZON_ELASTICSEARCH", "NONE", "HTTP", "RELATIONAL_DATABASE"
288
335
  # resp.data_source.service_role_arn #=> String
289
336
  # resp.data_source.dynamodb_config.table_name #=> String
290
337
  # resp.data_source.dynamodb_config.aws_region #=> String
@@ -293,6 +340,15 @@ module Aws::AppSync
293
340
  # resp.data_source.elasticsearch_config.endpoint #=> String
294
341
  # resp.data_source.elasticsearch_config.aws_region #=> String
295
342
  # resp.data_source.http_config.endpoint #=> String
343
+ # resp.data_source.http_config.authorization_config.authorization_type #=> String, one of "AWS_IAM"
344
+ # resp.data_source.http_config.authorization_config.aws_iam_config.signing_region #=> String
345
+ # resp.data_source.http_config.authorization_config.aws_iam_config.signing_service_name #=> String
346
+ # resp.data_source.relational_database_config.relational_database_source_type #=> String, one of "RDS_HTTP_ENDPOINT"
347
+ # resp.data_source.relational_database_config.rds_http_endpoint_config.aws_region #=> String
348
+ # resp.data_source.relational_database_config.rds_http_endpoint_config.db_cluster_identifier #=> String
349
+ # resp.data_source.relational_database_config.rds_http_endpoint_config.database_name #=> String
350
+ # resp.data_source.relational_database_config.rds_http_endpoint_config.schema #=> String
351
+ # resp.data_source.relational_database_config.rds_http_endpoint_config.aws_secret_store_arn #=> String
296
352
  #
297
353
  # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/CreateDataSource AWS API Documentation
298
354
  #
@@ -303,22 +359,87 @@ module Aws::AppSync
303
359
  req.send_request(options)
304
360
  end
305
361
 
362
+ # Creates a `Function` object.
363
+ #
364
+ # A function is a reusable entity. Multiple functions can be used to
365
+ # compose the resolver logic.
366
+ #
367
+ # @option params [required, String] :api_id
368
+ # The GraphQL API ID.
369
+ #
370
+ # @option params [required, String] :name
371
+ # The `Function` name. The function name does not have to be unique.
372
+ #
373
+ # @option params [String] :description
374
+ # The `Function` description.
375
+ #
376
+ # @option params [required, String] :data_source_name
377
+ # The `Function` `DataSource` name.
378
+ #
379
+ # @option params [required, String] :request_mapping_template
380
+ # The `Function` request mapping template. Functions support only the
381
+ # 2018-05-29 version of the request mapping template.
382
+ #
383
+ # @option params [String] :response_mapping_template
384
+ # The `Function` response mapping template.
385
+ #
386
+ # @option params [required, String] :function_version
387
+ # The `version` of the request mapping template. Currently the supported
388
+ # value is 2018-05-29.
389
+ #
390
+ # @return [Types::CreateFunctionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
391
+ #
392
+ # * {Types::CreateFunctionResponse#function_configuration #function_configuration} => Types::FunctionConfiguration
393
+ #
394
+ # @example Request syntax with placeholder values
395
+ #
396
+ # resp = client.create_function({
397
+ # api_id: "String", # required
398
+ # name: "ResourceName", # required
399
+ # description: "String",
400
+ # data_source_name: "ResourceName", # required
401
+ # request_mapping_template: "MappingTemplate", # required
402
+ # response_mapping_template: "MappingTemplate",
403
+ # function_version: "String", # required
404
+ # })
405
+ #
406
+ # @example Response structure
407
+ #
408
+ # resp.function_configuration.function_id #=> String
409
+ # resp.function_configuration.function_arn #=> String
410
+ # resp.function_configuration.name #=> String
411
+ # resp.function_configuration.description #=> String
412
+ # resp.function_configuration.data_source_name #=> String
413
+ # resp.function_configuration.request_mapping_template #=> String
414
+ # resp.function_configuration.response_mapping_template #=> String
415
+ # resp.function_configuration.function_version #=> String
416
+ #
417
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/CreateFunction AWS API Documentation
418
+ #
419
+ # @overload create_function(params = {})
420
+ # @param [Hash] params ({})
421
+ def create_function(params = {}, options = {})
422
+ req = build_request(:create_function, params)
423
+ req.send_request(options)
424
+ end
425
+
306
426
  # Creates a `GraphqlApi` object.
307
427
  #
308
428
  # @option params [required, String] :name
309
429
  # A user-supplied name for the `GraphqlApi`.
310
430
  #
311
431
  # @option params [Types::LogConfig] :log_config
312
- # The Amazon CloudWatch logs configuration.
432
+ # The Amazon CloudWatch Logs configuration.
313
433
  #
314
434
  # @option params [required, String] :authentication_type
315
- # The authentication type: API key, IAM, or Amazon Cognito User Pools.
435
+ # The authentication type: API key, AWS IAM, or Amazon Cognito user
436
+ # pools.
316
437
  #
317
438
  # @option params [Types::UserPoolConfig] :user_pool_config
318
- # The Amazon Cognito User Pool configuration.
439
+ # The Amazon Cognito user pool configuration.
319
440
  #
320
441
  # @option params [Types::OpenIDConnectConfig] :open_id_connect_config
321
- # The Open Id Connect configuration configuration.
442
+ # The OpenID Connect configuration.
322
443
  #
323
444
  # @return [Types::CreateGraphqlApiResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
324
445
  #
@@ -389,7 +510,7 @@ module Aws::AppSync
389
510
  # @option params [required, String] :field_name
390
511
  # The name of the field to attach the resolver to.
391
512
  #
392
- # @option params [required, String] :data_source_name
513
+ # @option params [String] :data_source_name
393
514
  # The name of the data source for which the resolver is being created.
394
515
  #
395
516
  # @option params [required, String] :request_mapping_template
@@ -402,6 +523,21 @@ module Aws::AppSync
402
523
  # @option params [String] :response_mapping_template
403
524
  # The mapping template to be used for responses from the data source.
404
525
  #
526
+ # @option params [String] :kind
527
+ # The resolver type.
528
+ #
529
+ # * **UNIT**\: A UNIT resolver type. A UNIT resolver is the default
530
+ # resolver type. A UNIT resolver enables you to execute a GraphQL
531
+ # query against a single data source.
532
+ #
533
+ # * **PIPELINE**\: A PIPELINE resolver type. A PIPELINE resolver enables
534
+ # you to execute a series of `Function` in a serial manner. You can
535
+ # use a pipeline resolver to execute a GraphQL query against multiple
536
+ # data sources.
537
+ #
538
+ # @option params [Types::PipelineConfig] :pipeline_config
539
+ # The `PipelineConfig`.
540
+ #
405
541
  # @return [Types::CreateResolverResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
406
542
  #
407
543
  # * {Types::CreateResolverResponse#resolver #resolver} => Types::Resolver
@@ -412,9 +548,13 @@ module Aws::AppSync
412
548
  # api_id: "String", # required
413
549
  # type_name: "ResourceName", # required
414
550
  # field_name: "ResourceName", # required
415
- # data_source_name: "ResourceName", # required
551
+ # data_source_name: "ResourceName",
416
552
  # request_mapping_template: "MappingTemplate", # required
417
553
  # response_mapping_template: "MappingTemplate",
554
+ # kind: "UNIT", # accepts UNIT, PIPELINE
555
+ # pipeline_config: {
556
+ # functions: ["String"],
557
+ # },
418
558
  # })
419
559
  #
420
560
  # @example Response structure
@@ -425,6 +565,9 @@ module Aws::AppSync
425
565
  # resp.resolver.resolver_arn #=> String
426
566
  # resp.resolver.request_mapping_template #=> String
427
567
  # resp.resolver.response_mapping_template #=> String
568
+ # resp.resolver.kind #=> String, one of "UNIT", "PIPELINE"
569
+ # resp.resolver.pipeline_config.functions #=> Array
570
+ # resp.resolver.pipeline_config.functions[0] #=> String
428
571
  #
429
572
  # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/CreateResolver AWS API Documentation
430
573
  #
@@ -534,6 +677,32 @@ module Aws::AppSync
534
677
  req.send_request(options)
535
678
  end
536
679
 
680
+ # Deletes a `Function`.
681
+ #
682
+ # @option params [required, String] :api_id
683
+ # The GraphQL API ID.
684
+ #
685
+ # @option params [required, String] :function_id
686
+ # The `Function` ID.
687
+ #
688
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
689
+ #
690
+ # @example Request syntax with placeholder values
691
+ #
692
+ # resp = client.delete_function({
693
+ # api_id: "String", # required
694
+ # function_id: "ResourceName", # required
695
+ # })
696
+ #
697
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/DeleteFunction AWS API Documentation
698
+ #
699
+ # @overload delete_function(params = {})
700
+ # @param [Hash] params ({})
701
+ def delete_function(params = {}, options = {})
702
+ req = build_request(:delete_function, params)
703
+ req.send_request(options)
704
+ end
705
+
537
706
  # Deletes a `GraphqlApi` object.
538
707
  #
539
708
  # @option params [required, String] :api_id
@@ -636,7 +805,7 @@ module Aws::AppSync
636
805
  # resp.data_source.data_source_arn #=> String
637
806
  # resp.data_source.name #=> String
638
807
  # resp.data_source.description #=> String
639
- # resp.data_source.type #=> String, one of "AWS_LAMBDA", "AMAZON_DYNAMODB", "AMAZON_ELASTICSEARCH", "NONE", "HTTP"
808
+ # resp.data_source.type #=> String, one of "AWS_LAMBDA", "AMAZON_DYNAMODB", "AMAZON_ELASTICSEARCH", "NONE", "HTTP", "RELATIONAL_DATABASE"
640
809
  # resp.data_source.service_role_arn #=> String
641
810
  # resp.data_source.dynamodb_config.table_name #=> String
642
811
  # resp.data_source.dynamodb_config.aws_region #=> String
@@ -645,6 +814,15 @@ module Aws::AppSync
645
814
  # resp.data_source.elasticsearch_config.endpoint #=> String
646
815
  # resp.data_source.elasticsearch_config.aws_region #=> String
647
816
  # resp.data_source.http_config.endpoint #=> String
817
+ # resp.data_source.http_config.authorization_config.authorization_type #=> String, one of "AWS_IAM"
818
+ # resp.data_source.http_config.authorization_config.aws_iam_config.signing_region #=> String
819
+ # resp.data_source.http_config.authorization_config.aws_iam_config.signing_service_name #=> String
820
+ # resp.data_source.relational_database_config.relational_database_source_type #=> String, one of "RDS_HTTP_ENDPOINT"
821
+ # resp.data_source.relational_database_config.rds_http_endpoint_config.aws_region #=> String
822
+ # resp.data_source.relational_database_config.rds_http_endpoint_config.db_cluster_identifier #=> String
823
+ # resp.data_source.relational_database_config.rds_http_endpoint_config.database_name #=> String
824
+ # resp.data_source.relational_database_config.rds_http_endpoint_config.schema #=> String
825
+ # resp.data_source.relational_database_config.rds_http_endpoint_config.aws_secret_store_arn #=> String
648
826
  #
649
827
  # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/GetDataSource AWS API Documentation
650
828
  #
@@ -655,6 +833,45 @@ module Aws::AppSync
655
833
  req.send_request(options)
656
834
  end
657
835
 
836
+ # Get a `Function`.
837
+ #
838
+ # @option params [required, String] :api_id
839
+ # The GraphQL API ID.
840
+ #
841
+ # @option params [required, String] :function_id
842
+ # The `Function` ID.
843
+ #
844
+ # @return [Types::GetFunctionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
845
+ #
846
+ # * {Types::GetFunctionResponse#function_configuration #function_configuration} => Types::FunctionConfiguration
847
+ #
848
+ # @example Request syntax with placeholder values
849
+ #
850
+ # resp = client.get_function({
851
+ # api_id: "String", # required
852
+ # function_id: "ResourceName", # required
853
+ # })
854
+ #
855
+ # @example Response structure
856
+ #
857
+ # resp.function_configuration.function_id #=> String
858
+ # resp.function_configuration.function_arn #=> String
859
+ # resp.function_configuration.name #=> String
860
+ # resp.function_configuration.description #=> String
861
+ # resp.function_configuration.data_source_name #=> String
862
+ # resp.function_configuration.request_mapping_template #=> String
863
+ # resp.function_configuration.response_mapping_template #=> String
864
+ # resp.function_configuration.function_version #=> String
865
+ #
866
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/GetFunction AWS API Documentation
867
+ #
868
+ # @overload get_function(params = {})
869
+ # @param [Hash] params ({})
870
+ def get_function(params = {}, options = {})
871
+ req = build_request(:get_function, params)
872
+ req.send_request(options)
873
+ end
874
+
658
875
  # Retrieves a `GraphqlApi` object.
659
876
  #
660
877
  # @option params [required, String] :api_id
@@ -761,6 +978,9 @@ module Aws::AppSync
761
978
  # resp.resolver.resolver_arn #=> String
762
979
  # resp.resolver.request_mapping_template #=> String
763
980
  # resp.resolver.response_mapping_template #=> String
981
+ # resp.resolver.kind #=> String, one of "UNIT", "PIPELINE"
982
+ # resp.resolver.pipeline_config.functions #=> Array
983
+ # resp.resolver.pipeline_config.functions[0] #=> String
764
984
  #
765
985
  # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/GetResolver AWS API Documentation
766
986
  #
@@ -923,7 +1143,7 @@ module Aws::AppSync
923
1143
  # resp.data_sources[0].data_source_arn #=> String
924
1144
  # resp.data_sources[0].name #=> String
925
1145
  # resp.data_sources[0].description #=> String
926
- # resp.data_sources[0].type #=> String, one of "AWS_LAMBDA", "AMAZON_DYNAMODB", "AMAZON_ELASTICSEARCH", "NONE", "HTTP"
1146
+ # resp.data_sources[0].type #=> String, one of "AWS_LAMBDA", "AMAZON_DYNAMODB", "AMAZON_ELASTICSEARCH", "NONE", "HTTP", "RELATIONAL_DATABASE"
927
1147
  # resp.data_sources[0].service_role_arn #=> String
928
1148
  # resp.data_sources[0].dynamodb_config.table_name #=> String
929
1149
  # resp.data_sources[0].dynamodb_config.aws_region #=> String
@@ -932,6 +1152,15 @@ module Aws::AppSync
932
1152
  # resp.data_sources[0].elasticsearch_config.endpoint #=> String
933
1153
  # resp.data_sources[0].elasticsearch_config.aws_region #=> String
934
1154
  # resp.data_sources[0].http_config.endpoint #=> String
1155
+ # resp.data_sources[0].http_config.authorization_config.authorization_type #=> String, one of "AWS_IAM"
1156
+ # resp.data_sources[0].http_config.authorization_config.aws_iam_config.signing_region #=> String
1157
+ # resp.data_sources[0].http_config.authorization_config.aws_iam_config.signing_service_name #=> String
1158
+ # resp.data_sources[0].relational_database_config.relational_database_source_type #=> String, one of "RDS_HTTP_ENDPOINT"
1159
+ # resp.data_sources[0].relational_database_config.rds_http_endpoint_config.aws_region #=> String
1160
+ # resp.data_sources[0].relational_database_config.rds_http_endpoint_config.db_cluster_identifier #=> String
1161
+ # resp.data_sources[0].relational_database_config.rds_http_endpoint_config.database_name #=> String
1162
+ # resp.data_sources[0].relational_database_config.rds_http_endpoint_config.schema #=> String
1163
+ # resp.data_sources[0].relational_database_config.rds_http_endpoint_config.aws_secret_store_arn #=> String
935
1164
  # resp.next_token #=> String
936
1165
  #
937
1166
  # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/ListDataSources AWS API Documentation
@@ -943,6 +1172,54 @@ module Aws::AppSync
943
1172
  req.send_request(options)
944
1173
  end
945
1174
 
1175
+ # List multiple functions.
1176
+ #
1177
+ # @option params [required, String] :api_id
1178
+ # The GraphQL API ID.
1179
+ #
1180
+ # @option params [String] :next_token
1181
+ # An identifier that was returned from the previous call to this
1182
+ # operation, which can be used to return the next set of items in the
1183
+ # list.
1184
+ #
1185
+ # @option params [Integer] :max_results
1186
+ # The maximum number of results you want the request to return.
1187
+ #
1188
+ # @return [Types::ListFunctionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1189
+ #
1190
+ # * {Types::ListFunctionsResponse#functions #functions} => Array<Types::FunctionConfiguration>
1191
+ # * {Types::ListFunctionsResponse#next_token #next_token} => String
1192
+ #
1193
+ # @example Request syntax with placeholder values
1194
+ #
1195
+ # resp = client.list_functions({
1196
+ # api_id: "String", # required
1197
+ # next_token: "PaginationToken",
1198
+ # max_results: 1,
1199
+ # })
1200
+ #
1201
+ # @example Response structure
1202
+ #
1203
+ # resp.functions #=> Array
1204
+ # resp.functions[0].function_id #=> String
1205
+ # resp.functions[0].function_arn #=> String
1206
+ # resp.functions[0].name #=> String
1207
+ # resp.functions[0].description #=> String
1208
+ # resp.functions[0].data_source_name #=> String
1209
+ # resp.functions[0].request_mapping_template #=> String
1210
+ # resp.functions[0].response_mapping_template #=> String
1211
+ # resp.functions[0].function_version #=> String
1212
+ # resp.next_token #=> String
1213
+ #
1214
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/ListFunctions AWS API Documentation
1215
+ #
1216
+ # @overload list_functions(params = {})
1217
+ # @param [Hash] params ({})
1218
+ def list_functions(params = {}, options = {})
1219
+ req = build_request(:list_functions, params)
1220
+ req.send_request(options)
1221
+ end
1222
+
946
1223
  # Lists your GraphQL APIs.
947
1224
  #
948
1225
  # @option params [String] :next_token
@@ -1034,6 +1311,9 @@ module Aws::AppSync
1034
1311
  # resp.resolvers[0].resolver_arn #=> String
1035
1312
  # resp.resolvers[0].request_mapping_template #=> String
1036
1313
  # resp.resolvers[0].response_mapping_template #=> String
1314
+ # resp.resolvers[0].kind #=> String, one of "UNIT", "PIPELINE"
1315
+ # resp.resolvers[0].pipeline_config.functions #=> Array
1316
+ # resp.resolvers[0].pipeline_config.functions[0] #=> String
1037
1317
  # resp.next_token #=> String
1038
1318
  #
1039
1319
  # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/ListResolvers AWS API Documentation
@@ -1045,6 +1325,59 @@ module Aws::AppSync
1045
1325
  req.send_request(options)
1046
1326
  end
1047
1327
 
1328
+ # List the resolvers that are associated with a specific function.
1329
+ #
1330
+ # @option params [required, String] :api_id
1331
+ # The API ID.
1332
+ #
1333
+ # @option params [required, String] :function_id
1334
+ # The Function ID.
1335
+ #
1336
+ # @option params [String] :next_token
1337
+ # An identifier that was returned from the previous call to this
1338
+ # operation, which you can use to return the next set of items in the
1339
+ # list.
1340
+ #
1341
+ # @option params [Integer] :max_results
1342
+ # The maximum number of results you want the request to return.
1343
+ #
1344
+ # @return [Types::ListResolversByFunctionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1345
+ #
1346
+ # * {Types::ListResolversByFunctionResponse#resolvers #resolvers} => Array<Types::Resolver>
1347
+ # * {Types::ListResolversByFunctionResponse#next_token #next_token} => String
1348
+ #
1349
+ # @example Request syntax with placeholder values
1350
+ #
1351
+ # resp = client.list_resolvers_by_function({
1352
+ # api_id: "String", # required
1353
+ # function_id: "String", # required
1354
+ # next_token: "PaginationToken",
1355
+ # max_results: 1,
1356
+ # })
1357
+ #
1358
+ # @example Response structure
1359
+ #
1360
+ # resp.resolvers #=> Array
1361
+ # resp.resolvers[0].type_name #=> String
1362
+ # resp.resolvers[0].field_name #=> String
1363
+ # resp.resolvers[0].data_source_name #=> String
1364
+ # resp.resolvers[0].resolver_arn #=> String
1365
+ # resp.resolvers[0].request_mapping_template #=> String
1366
+ # resp.resolvers[0].response_mapping_template #=> String
1367
+ # resp.resolvers[0].kind #=> String, one of "UNIT", "PIPELINE"
1368
+ # resp.resolvers[0].pipeline_config.functions #=> Array
1369
+ # resp.resolvers[0].pipeline_config.functions[0] #=> String
1370
+ # resp.next_token #=> String
1371
+ #
1372
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/ListResolversByFunction AWS API Documentation
1373
+ #
1374
+ # @overload list_resolvers_by_function(params = {})
1375
+ # @param [Hash] params ({})
1376
+ def list_resolvers_by_function(params = {}, options = {})
1377
+ req = build_request(:list_resolvers_by_function, params)
1378
+ req.send_request(options)
1379
+ end
1380
+
1048
1381
  # Lists the types for a given API.
1049
1382
  #
1050
1383
  # @option params [required, String] :api_id
@@ -1132,7 +1465,7 @@ module Aws::AppSync
1132
1465
  # Updates an API key.
1133
1466
  #
1134
1467
  # @option params [required, String] :api_id
1135
- # The ID for the GraphQL API
1468
+ # The ID for the GraphQL API.
1136
1469
  #
1137
1470
  # @option params [required, String] :id
1138
1471
  # The API key ID.
@@ -1190,16 +1523,19 @@ module Aws::AppSync
1190
1523
  # The new service role ARN for the data source.
1191
1524
  #
1192
1525
  # @option params [Types::DynamodbDataSourceConfig] :dynamodb_config
1193
- # The new DynamoDB configuration.
1526
+ # The new Amazon DynamoDB configuration.
1194
1527
  #
1195
1528
  # @option params [Types::LambdaDataSourceConfig] :lambda_config
1196
- # The new Lambda configuration.
1529
+ # The new AWS Lambda configuration.
1197
1530
  #
1198
1531
  # @option params [Types::ElasticsearchDataSourceConfig] :elasticsearch_config
1199
- # The new Elasticsearch configuration.
1532
+ # The new Elasticsearch Service configuration.
1200
1533
  #
1201
1534
  # @option params [Types::HttpDataSourceConfig] :http_config
1202
- # The new http endpoint configuration
1535
+ # The new HTTP endpoint configuration.
1536
+ #
1537
+ # @option params [Types::RelationalDatabaseDataSourceConfig] :relational_database_config
1538
+ # The new relational database configuration.
1203
1539
  #
1204
1540
  # @return [Types::UpdateDataSourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1205
1541
  #
@@ -1211,7 +1547,7 @@ module Aws::AppSync
1211
1547
  # api_id: "String", # required
1212
1548
  # name: "ResourceName", # required
1213
1549
  # description: "String",
1214
- # type: "AWS_LAMBDA", # required, accepts AWS_LAMBDA, AMAZON_DYNAMODB, AMAZON_ELASTICSEARCH, NONE, HTTP
1550
+ # type: "AWS_LAMBDA", # required, accepts AWS_LAMBDA, AMAZON_DYNAMODB, AMAZON_ELASTICSEARCH, NONE, HTTP, RELATIONAL_DATABASE
1215
1551
  # service_role_arn: "String",
1216
1552
  # dynamodb_config: {
1217
1553
  # table_name: "String", # required
@@ -1227,6 +1563,23 @@ module Aws::AppSync
1227
1563
  # },
1228
1564
  # http_config: {
1229
1565
  # endpoint: "String",
1566
+ # authorization_config: {
1567
+ # authorization_type: "AWS_IAM", # required, accepts AWS_IAM
1568
+ # aws_iam_config: {
1569
+ # signing_region: "String",
1570
+ # signing_service_name: "String",
1571
+ # },
1572
+ # },
1573
+ # },
1574
+ # relational_database_config: {
1575
+ # relational_database_source_type: "RDS_HTTP_ENDPOINT", # accepts RDS_HTTP_ENDPOINT
1576
+ # rds_http_endpoint_config: {
1577
+ # aws_region: "String",
1578
+ # db_cluster_identifier: "String",
1579
+ # database_name: "String",
1580
+ # schema: "String",
1581
+ # aws_secret_store_arn: "String",
1582
+ # },
1230
1583
  # },
1231
1584
  # })
1232
1585
  #
@@ -1235,7 +1588,7 @@ module Aws::AppSync
1235
1588
  # resp.data_source.data_source_arn #=> String
1236
1589
  # resp.data_source.name #=> String
1237
1590
  # resp.data_source.description #=> String
1238
- # resp.data_source.type #=> String, one of "AWS_LAMBDA", "AMAZON_DYNAMODB", "AMAZON_ELASTICSEARCH", "NONE", "HTTP"
1591
+ # resp.data_source.type #=> String, one of "AWS_LAMBDA", "AMAZON_DYNAMODB", "AMAZON_ELASTICSEARCH", "NONE", "HTTP", "RELATIONAL_DATABASE"
1239
1592
  # resp.data_source.service_role_arn #=> String
1240
1593
  # resp.data_source.dynamodb_config.table_name #=> String
1241
1594
  # resp.data_source.dynamodb_config.aws_region #=> String
@@ -1244,6 +1597,15 @@ module Aws::AppSync
1244
1597
  # resp.data_source.elasticsearch_config.endpoint #=> String
1245
1598
  # resp.data_source.elasticsearch_config.aws_region #=> String
1246
1599
  # resp.data_source.http_config.endpoint #=> String
1600
+ # resp.data_source.http_config.authorization_config.authorization_type #=> String, one of "AWS_IAM"
1601
+ # resp.data_source.http_config.authorization_config.aws_iam_config.signing_region #=> String
1602
+ # resp.data_source.http_config.authorization_config.aws_iam_config.signing_service_name #=> String
1603
+ # resp.data_source.relational_database_config.relational_database_source_type #=> String, one of "RDS_HTTP_ENDPOINT"
1604
+ # resp.data_source.relational_database_config.rds_http_endpoint_config.aws_region #=> String
1605
+ # resp.data_source.relational_database_config.rds_http_endpoint_config.db_cluster_identifier #=> String
1606
+ # resp.data_source.relational_database_config.rds_http_endpoint_config.database_name #=> String
1607
+ # resp.data_source.relational_database_config.rds_http_endpoint_config.schema #=> String
1608
+ # resp.data_source.relational_database_config.rds_http_endpoint_config.aws_secret_store_arn #=> String
1247
1609
  #
1248
1610
  # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/UpdateDataSource AWS API Documentation
1249
1611
  #
@@ -1254,6 +1616,71 @@ module Aws::AppSync
1254
1616
  req.send_request(options)
1255
1617
  end
1256
1618
 
1619
+ # Updates a `Function` object.
1620
+ #
1621
+ # @option params [required, String] :api_id
1622
+ # The GraphQL API ID.
1623
+ #
1624
+ # @option params [required, String] :name
1625
+ # The `Function` name.
1626
+ #
1627
+ # @option params [String] :description
1628
+ # The `Function` description.
1629
+ #
1630
+ # @option params [required, String] :function_id
1631
+ # The function ID.
1632
+ #
1633
+ # @option params [required, String] :data_source_name
1634
+ # The `Function` `DataSource` name.
1635
+ #
1636
+ # @option params [required, String] :request_mapping_template
1637
+ # The `Function` request mapping template. Functions support only the
1638
+ # 2018-05-29 version of the request mapping template.
1639
+ #
1640
+ # @option params [String] :response_mapping_template
1641
+ # The `Function` request mapping template.
1642
+ #
1643
+ # @option params [required, String] :function_version
1644
+ # The `version` of the request mapping template. Currently the supported
1645
+ # value is 2018-05-29.
1646
+ #
1647
+ # @return [Types::UpdateFunctionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1648
+ #
1649
+ # * {Types::UpdateFunctionResponse#function_configuration #function_configuration} => Types::FunctionConfiguration
1650
+ #
1651
+ # @example Request syntax with placeholder values
1652
+ #
1653
+ # resp = client.update_function({
1654
+ # api_id: "String", # required
1655
+ # name: "ResourceName", # required
1656
+ # description: "String",
1657
+ # function_id: "ResourceName", # required
1658
+ # data_source_name: "ResourceName", # required
1659
+ # request_mapping_template: "MappingTemplate", # required
1660
+ # response_mapping_template: "MappingTemplate",
1661
+ # function_version: "String", # required
1662
+ # })
1663
+ #
1664
+ # @example Response structure
1665
+ #
1666
+ # resp.function_configuration.function_id #=> String
1667
+ # resp.function_configuration.function_arn #=> String
1668
+ # resp.function_configuration.name #=> String
1669
+ # resp.function_configuration.description #=> String
1670
+ # resp.function_configuration.data_source_name #=> String
1671
+ # resp.function_configuration.request_mapping_template #=> String
1672
+ # resp.function_configuration.response_mapping_template #=> String
1673
+ # resp.function_configuration.function_version #=> String
1674
+ #
1675
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/UpdateFunction AWS API Documentation
1676
+ #
1677
+ # @overload update_function(params = {})
1678
+ # @param [Hash] params ({})
1679
+ def update_function(params = {}, options = {})
1680
+ req = build_request(:update_function, params)
1681
+ req.send_request(options)
1682
+ end
1683
+
1257
1684
  # Updates a `GraphqlApi` object.
1258
1685
  #
1259
1686
  # @option params [required, String] :api_id
@@ -1263,18 +1690,17 @@ module Aws::AppSync
1263
1690
  # The new name for the `GraphqlApi` object.
1264
1691
  #
1265
1692
  # @option params [Types::LogConfig] :log_config
1266
- # The Amazon CloudWatch logs configuration for the `GraphqlApi` object.
1693
+ # The Amazon CloudWatch Logs configuration for the `GraphqlApi` object.
1267
1694
  #
1268
1695
  # @option params [String] :authentication_type
1269
1696
  # The new authentication type for the `GraphqlApi` object.
1270
1697
  #
1271
1698
  # @option params [Types::UserPoolConfig] :user_pool_config
1272
- # The new Amazon Cognito User Pool configuration for the `GraphqlApi`
1699
+ # The new Amazon Cognito user pool configuration for the `GraphqlApi`
1273
1700
  # object.
1274
1701
  #
1275
1702
  # @option params [Types::OpenIDConnectConfig] :open_id_connect_config
1276
- # The Open Id Connect configuration configuration for the `GraphqlApi`
1277
- # object.
1703
+ # The OpenID Connect configuration for the `GraphqlApi` object.
1278
1704
  #
1279
1705
  # @return [Types::UpdateGraphqlApiResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1280
1706
  #
@@ -1343,7 +1769,7 @@ module Aws::AppSync
1343
1769
  # @option params [required, String] :field_name
1344
1770
  # The new field name.
1345
1771
  #
1346
- # @option params [required, String] :data_source_name
1772
+ # @option params [String] :data_source_name
1347
1773
  # The new data source name.
1348
1774
  #
1349
1775
  # @option params [required, String] :request_mapping_template
@@ -1352,6 +1778,21 @@ module Aws::AppSync
1352
1778
  # @option params [String] :response_mapping_template
1353
1779
  # The new response mapping template.
1354
1780
  #
1781
+ # @option params [String] :kind
1782
+ # The resolver type.
1783
+ #
1784
+ # * **UNIT**\: A UNIT resolver type. A UNIT resolver is the default
1785
+ # resolver type. A UNIT resolver enables you to execute a GraphQL
1786
+ # query against a single data source.
1787
+ #
1788
+ # * **PIPELINE**\: A PIPELINE resolver type. A PIPELINE resolver enables
1789
+ # you to execute a series of `Function` in a serial manner. You can
1790
+ # use a pipeline resolver to execute a GraphQL query against multiple
1791
+ # data sources.
1792
+ #
1793
+ # @option params [Types::PipelineConfig] :pipeline_config
1794
+ # The `PipelineConfig`.
1795
+ #
1355
1796
  # @return [Types::UpdateResolverResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1356
1797
  #
1357
1798
  # * {Types::UpdateResolverResponse#resolver #resolver} => Types::Resolver
@@ -1362,9 +1803,13 @@ module Aws::AppSync
1362
1803
  # api_id: "String", # required
1363
1804
  # type_name: "ResourceName", # required
1364
1805
  # field_name: "ResourceName", # required
1365
- # data_source_name: "ResourceName", # required
1806
+ # data_source_name: "ResourceName",
1366
1807
  # request_mapping_template: "MappingTemplate", # required
1367
1808
  # response_mapping_template: "MappingTemplate",
1809
+ # kind: "UNIT", # accepts UNIT, PIPELINE
1810
+ # pipeline_config: {
1811
+ # functions: ["String"],
1812
+ # },
1368
1813
  # })
1369
1814
  #
1370
1815
  # @example Response structure
@@ -1375,6 +1820,9 @@ module Aws::AppSync
1375
1820
  # resp.resolver.resolver_arn #=> String
1376
1821
  # resp.resolver.request_mapping_template #=> String
1377
1822
  # resp.resolver.response_mapping_template #=> String
1823
+ # resp.resolver.kind #=> String, one of "UNIT", "PIPELINE"
1824
+ # resp.resolver.pipeline_config.functions #=> Array
1825
+ # resp.resolver.pipeline_config.functions[0] #=> String
1378
1826
  #
1379
1827
  # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/UpdateResolver AWS API Documentation
1380
1828
  #
@@ -1442,7 +1890,7 @@ module Aws::AppSync
1442
1890
  params: params,
1443
1891
  config: config)
1444
1892
  context[:gem_name] = 'aws-sdk-appsync'
1445
- context[:gem_version] = '1.8.0'
1893
+ context[:gem_version] = '1.9.0'
1446
1894
  Seahorse::Client::Request.new(handlers, context)
1447
1895
  end
1448
1896