aws-sdk-appsync 1.8.0 → 1.9.0

Sign up to get free protection for your applications and to get access to all the features.
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