aws-sdk-appsync 1.58.0 → 1.60.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -374,7 +374,7 @@ module Aws::AppSync
374
374
  # The domain name.
375
375
  #
376
376
  # @option params [required, String] :api_id
377
- # The API ID.
377
+ # The API ID. Private APIs can not be associated with custom domains.
378
378
  #
379
379
  # @return [Types::AssociateApiResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
380
380
  #
@@ -403,6 +403,128 @@ module Aws::AppSync
403
403
  req.send_request(options)
404
404
  end
405
405
 
406
+ # Creates an association between a Merged API and source API using the
407
+ # source API's identifier.
408
+ #
409
+ # @option params [required, String] :source_api_identifier
410
+ # The identifier of the AppSync Source API. This is generated by the
411
+ # AppSync service. In most cases, source APIs (especially in your
412
+ # account) only require the API ID value or ARN of the source API.
413
+ # However, source APIs from other accounts (cross-account use cases)
414
+ # strictly require the full resource ARN of the source API.
415
+ #
416
+ # @option params [required, String] :merged_api_identifier
417
+ # The identifier of the AppSync Merged API. This is generated by the
418
+ # AppSync service. In most cases, Merged APIs (especially in your
419
+ # account) only require the API ID value or ARN of the merged API.
420
+ # However, Merged APIs in other accounts (cross-account use cases)
421
+ # strictly require the full resource ARN of the merged API.
422
+ #
423
+ # @option params [String] :description
424
+ # The description field.
425
+ #
426
+ # @option params [Types::SourceApiAssociationConfig] :source_api_association_config
427
+ # The `SourceApiAssociationConfig` object data.
428
+ #
429
+ # @return [Types::AssociateMergedGraphqlApiResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
430
+ #
431
+ # * {Types::AssociateMergedGraphqlApiResponse#source_api_association #source_api_association} => Types::SourceApiAssociation
432
+ #
433
+ # @example Request syntax with placeholder values
434
+ #
435
+ # resp = client.associate_merged_graphql_api({
436
+ # source_api_identifier: "String", # required
437
+ # merged_api_identifier: "String", # required
438
+ # description: "String",
439
+ # source_api_association_config: {
440
+ # merge_type: "MANUAL_MERGE", # accepts MANUAL_MERGE, AUTO_MERGE
441
+ # },
442
+ # })
443
+ #
444
+ # @example Response structure
445
+ #
446
+ # resp.source_api_association.association_id #=> String
447
+ # resp.source_api_association.association_arn #=> String
448
+ # resp.source_api_association.source_api_id #=> String
449
+ # resp.source_api_association.source_api_arn #=> String
450
+ # resp.source_api_association.merged_api_arn #=> String
451
+ # resp.source_api_association.merged_api_id #=> String
452
+ # resp.source_api_association.description #=> String
453
+ # resp.source_api_association.source_api_association_config.merge_type #=> String, one of "MANUAL_MERGE", "AUTO_MERGE"
454
+ # resp.source_api_association.source_api_association_status #=> String, one of "MERGE_SCHEDULED", "MERGE_FAILED", "MERGE_SUCCESS", "MERGE_IN_PROGRESS", "AUTO_MERGE_SCHEDULE_FAILED", "DELETION_SCHEDULED", "DELETION_IN_PROGRESS", "DELETION_FAILED"
455
+ # resp.source_api_association.source_api_association_status_detail #=> String
456
+ # resp.source_api_association.last_successful_merge_date #=> Time
457
+ #
458
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/AssociateMergedGraphqlApi AWS API Documentation
459
+ #
460
+ # @overload associate_merged_graphql_api(params = {})
461
+ # @param [Hash] params ({})
462
+ def associate_merged_graphql_api(params = {}, options = {})
463
+ req = build_request(:associate_merged_graphql_api, params)
464
+ req.send_request(options)
465
+ end
466
+
467
+ # Creates an association between a Merged API and source API using the
468
+ # Merged API's identifier.
469
+ #
470
+ # @option params [required, String] :merged_api_identifier
471
+ # The identifier of the AppSync Merged API. This is generated by the
472
+ # AppSync service. In most cases, Merged APIs (especially in your
473
+ # account) only require the API ID value or ARN of the merged API.
474
+ # However, Merged APIs in other accounts (cross-account use cases)
475
+ # strictly require the full resource ARN of the merged API.
476
+ #
477
+ # @option params [required, String] :source_api_identifier
478
+ # The identifier of the AppSync Source API. This is generated by the
479
+ # AppSync service. In most cases, source APIs (especially in your
480
+ # account) only require the API ID value or ARN of the source API.
481
+ # However, source APIs from other accounts (cross-account use cases)
482
+ # strictly require the full resource ARN of the source API.
483
+ #
484
+ # @option params [String] :description
485
+ # The description field.
486
+ #
487
+ # @option params [Types::SourceApiAssociationConfig] :source_api_association_config
488
+ # The `SourceApiAssociationConfig` object data.
489
+ #
490
+ # @return [Types::AssociateSourceGraphqlApiResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
491
+ #
492
+ # * {Types::AssociateSourceGraphqlApiResponse#source_api_association #source_api_association} => Types::SourceApiAssociation
493
+ #
494
+ # @example Request syntax with placeholder values
495
+ #
496
+ # resp = client.associate_source_graphql_api({
497
+ # merged_api_identifier: "String", # required
498
+ # source_api_identifier: "String", # required
499
+ # description: "String",
500
+ # source_api_association_config: {
501
+ # merge_type: "MANUAL_MERGE", # accepts MANUAL_MERGE, AUTO_MERGE
502
+ # },
503
+ # })
504
+ #
505
+ # @example Response structure
506
+ #
507
+ # resp.source_api_association.association_id #=> String
508
+ # resp.source_api_association.association_arn #=> String
509
+ # resp.source_api_association.source_api_id #=> String
510
+ # resp.source_api_association.source_api_arn #=> String
511
+ # resp.source_api_association.merged_api_arn #=> String
512
+ # resp.source_api_association.merged_api_id #=> String
513
+ # resp.source_api_association.description #=> String
514
+ # resp.source_api_association.source_api_association_config.merge_type #=> String, one of "MANUAL_MERGE", "AUTO_MERGE"
515
+ # resp.source_api_association.source_api_association_status #=> String, one of "MERGE_SCHEDULED", "MERGE_FAILED", "MERGE_SUCCESS", "MERGE_IN_PROGRESS", "AUTO_MERGE_SCHEDULE_FAILED", "DELETION_SCHEDULED", "DELETION_IN_PROGRESS", "DELETION_FAILED"
516
+ # resp.source_api_association.source_api_association_status_detail #=> String
517
+ # resp.source_api_association.last_successful_merge_date #=> Time
518
+ #
519
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/AssociateSourceGraphqlApi AWS API Documentation
520
+ #
521
+ # @overload associate_source_graphql_api(params = {})
522
+ # @param [Hash] params ({})
523
+ def associate_source_graphql_api(params = {}, options = {})
524
+ req = build_request(:associate_source_graphql_api, params)
525
+ req.send_request(options)
526
+ end
527
+
406
528
  # Creates a cache for the GraphQL API.
407
529
  #
408
530
  # @option params [required, String] :api_id
@@ -424,9 +546,9 @@ module Aws::AppSync
424
546
  # @option params [required, String] :api_caching_behavior
425
547
  # Caching behavior.
426
548
  #
427
- # * **FULL\_REQUEST\_CACHING**\: All requests are fully cached.
549
+ # * **FULL\_REQUEST\_CACHING**: All requests are fully cached.
428
550
  #
429
- # * **PER\_RESOLVER\_CACHING**\: Individual resolvers that you specify
551
+ # * **PER\_RESOLVER\_CACHING**: Individual resolvers that you specify
430
552
  # are cached.
431
553
  #
432
554
  # @option params [required, String] :type
@@ -455,19 +577,19 @@ module Aws::AppSync
455
577
  # The following legacy instance types are available, but their use is
456
578
  # discouraged:
457
579
  #
458
- # * **T2\_SMALL**\: A t2.small instance type.
580
+ # * **T2\_SMALL**: A t2.small instance type.
459
581
  #
460
- # * **T2\_MEDIUM**\: A t2.medium instance type.
582
+ # * **T2\_MEDIUM**: A t2.medium instance type.
461
583
  #
462
- # * **R4\_LARGE**\: A r4.large instance type.
584
+ # * **R4\_LARGE**: A r4.large instance type.
463
585
  #
464
- # * **R4\_XLARGE**\: A r4.xlarge instance type.
586
+ # * **R4\_XLARGE**: A r4.xlarge instance type.
465
587
  #
466
- # * **R4\_2XLARGE**\: A r4.2xlarge instance type.
588
+ # * **R4\_2XLARGE**: A r4.2xlarge instance type.
467
589
  #
468
- # * **R4\_4XLARGE**\: A r4.4xlarge instance type.
590
+ # * **R4\_4XLARGE**: A r4.4xlarge instance type.
469
591
  #
470
- # * **R4\_8XLARGE**\: A r4.8xlarge instance type.
592
+ # * **R4\_8XLARGE**: A r4.8xlarge instance type.
471
593
  #
472
594
  # @return [Types::CreateApiCacheResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
473
595
  #
@@ -867,6 +989,29 @@ module Aws::AppSync
867
989
  # @option params [Types::LambdaAuthorizerConfig] :lambda_authorizer_config
868
990
  # Configuration for Lambda function authorization.
869
991
  #
992
+ # @option params [String] :visibility
993
+ # Sets the value of the GraphQL API to public (`GLOBAL`) or private
994
+ # (`PRIVATE`). If no value is provided, the visibility will be set to
995
+ # `GLOBAL` by default. This value cannot be changed once the API has
996
+ # been created.
997
+ #
998
+ # @option params [String] :api_type
999
+ # The value that indicates whether the GraphQL API is a standard API
1000
+ # (`GRAPHQL`) or merged API (`MERGED`).
1001
+ #
1002
+ # @option params [String] :merged_api_execution_role_arn
1003
+ # The Identity and Access Management service role ARN for a merged API.
1004
+ # The AppSync service assumes this role on behalf of the Merged API to
1005
+ # validate access to source APIs at runtime and to prompt the
1006
+ # `AUTO_MERGE` to update the merged API endpoint with the source API
1007
+ # changes automatically.
1008
+ #
1009
+ # @option params [String] :owner_contact
1010
+ # The owner contact information for an API resource.
1011
+ #
1012
+ # This field accepts any string input with a length of 0 - 256
1013
+ # characters.
1014
+ #
870
1015
  # @return [Types::CreateGraphqlApiResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
871
1016
  #
872
1017
  # * {Types::CreateGraphqlApiResponse#graphql_api #graphql_api} => Types::GraphqlApi
@@ -923,6 +1068,10 @@ module Aws::AppSync
923
1068
  # authorizer_uri: "String", # required
924
1069
  # identity_validation_expression: "String",
925
1070
  # },
1071
+ # visibility: "GLOBAL", # accepts GLOBAL, PRIVATE
1072
+ # api_type: "GRAPHQL", # accepts GRAPHQL, MERGED
1073
+ # merged_api_execution_role_arn: "String",
1074
+ # owner_contact: "String",
926
1075
  # })
927
1076
  #
928
1077
  # @example Response structure
@@ -963,6 +1112,13 @@ module Aws::AppSync
963
1112
  # resp.graphql_api.lambda_authorizer_config.authorizer_result_ttl_in_seconds #=> Integer
964
1113
  # resp.graphql_api.lambda_authorizer_config.authorizer_uri #=> String
965
1114
  # resp.graphql_api.lambda_authorizer_config.identity_validation_expression #=> String
1115
+ # resp.graphql_api.dns #=> Hash
1116
+ # resp.graphql_api.dns["String"] #=> String
1117
+ # resp.graphql_api.visibility #=> String, one of "GLOBAL", "PRIVATE"
1118
+ # resp.graphql_api.api_type #=> String, one of "GRAPHQL", "MERGED"
1119
+ # resp.graphql_api.merged_api_execution_role_arn #=> String
1120
+ # resp.graphql_api.owner #=> String
1121
+ # resp.graphql_api.owner_contact #=> String
966
1122
  #
967
1123
  # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/CreateGraphqlApi AWS API Documentation
968
1124
  #
@@ -1008,11 +1164,11 @@ module Aws::AppSync
1008
1164
  # @option params [String] :kind
1009
1165
  # The resolver type.
1010
1166
  #
1011
- # * **UNIT**\: A UNIT resolver type. A UNIT resolver is the default
1167
+ # * **UNIT**: A UNIT resolver type. A UNIT resolver is the default
1012
1168
  # resolver type. You can use a UNIT resolver to run a GraphQL query
1013
1169
  # against a single data source.
1014
1170
  #
1015
- # * **PIPELINE**\: A PIPELINE resolver type. You can use a PIPELINE
1171
+ # * **PIPELINE**: A PIPELINE resolver type. You can use a PIPELINE
1016
1172
  # resolver to invoke a series of `Function` objects in a serial
1017
1173
  # manner. You can use a pipeline resolver to run a GraphQL query
1018
1174
  # against multiple data sources.
@@ -1376,6 +1532,82 @@ module Aws::AppSync
1376
1532
  req.send_request(options)
1377
1533
  end
1378
1534
 
1535
+ # Deletes an association between a Merged API and source API using the
1536
+ # source API's identifier and the association ID.
1537
+ #
1538
+ # @option params [required, String] :source_api_identifier
1539
+ # The identifier of the AppSync Source API. This is generated by the
1540
+ # AppSync service. In most cases, source APIs (especially in your
1541
+ # account) only require the API ID value or ARN of the source API.
1542
+ # However, source APIs from other accounts (cross-account use cases)
1543
+ # strictly require the full resource ARN of the source API.
1544
+ #
1545
+ # @option params [required, String] :association_id
1546
+ # The ID generated by the AppSync service for the source API
1547
+ # association.
1548
+ #
1549
+ # @return [Types::DisassociateMergedGraphqlApiResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1550
+ #
1551
+ # * {Types::DisassociateMergedGraphqlApiResponse#source_api_association_status #source_api_association_status} => String
1552
+ #
1553
+ # @example Request syntax with placeholder values
1554
+ #
1555
+ # resp = client.disassociate_merged_graphql_api({
1556
+ # source_api_identifier: "String", # required
1557
+ # association_id: "String", # required
1558
+ # })
1559
+ #
1560
+ # @example Response structure
1561
+ #
1562
+ # resp.source_api_association_status #=> String, one of "MERGE_SCHEDULED", "MERGE_FAILED", "MERGE_SUCCESS", "MERGE_IN_PROGRESS", "AUTO_MERGE_SCHEDULE_FAILED", "DELETION_SCHEDULED", "DELETION_IN_PROGRESS", "DELETION_FAILED"
1563
+ #
1564
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/DisassociateMergedGraphqlApi AWS API Documentation
1565
+ #
1566
+ # @overload disassociate_merged_graphql_api(params = {})
1567
+ # @param [Hash] params ({})
1568
+ def disassociate_merged_graphql_api(params = {}, options = {})
1569
+ req = build_request(:disassociate_merged_graphql_api, params)
1570
+ req.send_request(options)
1571
+ end
1572
+
1573
+ # Deletes an association between a Merged API and source API using the
1574
+ # Merged API's identifier and the association ID.
1575
+ #
1576
+ # @option params [required, String] :merged_api_identifier
1577
+ # The identifier of the AppSync Merged API. This is generated by the
1578
+ # AppSync service. In most cases, Merged APIs (especially in your
1579
+ # account) only require the API ID value or ARN of the merged API.
1580
+ # However, Merged APIs in other accounts (cross-account use cases)
1581
+ # strictly require the full resource ARN of the merged API.
1582
+ #
1583
+ # @option params [required, String] :association_id
1584
+ # The ID generated by the AppSync service for the source API
1585
+ # association.
1586
+ #
1587
+ # @return [Types::DisassociateSourceGraphqlApiResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1588
+ #
1589
+ # * {Types::DisassociateSourceGraphqlApiResponse#source_api_association_status #source_api_association_status} => String
1590
+ #
1591
+ # @example Request syntax with placeholder values
1592
+ #
1593
+ # resp = client.disassociate_source_graphql_api({
1594
+ # merged_api_identifier: "String", # required
1595
+ # association_id: "String", # required
1596
+ # })
1597
+ #
1598
+ # @example Response structure
1599
+ #
1600
+ # resp.source_api_association_status #=> String, one of "MERGE_SCHEDULED", "MERGE_FAILED", "MERGE_SUCCESS", "MERGE_IN_PROGRESS", "AUTO_MERGE_SCHEDULE_FAILED", "DELETION_SCHEDULED", "DELETION_IN_PROGRESS", "DELETION_FAILED"
1601
+ #
1602
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/DisassociateSourceGraphqlApi AWS API Documentation
1603
+ #
1604
+ # @overload disassociate_source_graphql_api(params = {})
1605
+ # @param [Hash] params ({})
1606
+ def disassociate_source_graphql_api(params = {}, options = {})
1607
+ req = build_request(:disassociate_source_graphql_api, params)
1608
+ req.send_request(options)
1609
+ end
1610
+
1379
1611
  # Evaluates the given code and returns the response. The code definition
1380
1612
  # requirements depend on the specified runtime. For `APPSYNC_JS`
1381
1613
  # runtimes, the code defines the request and response functions. The
@@ -1766,6 +1998,13 @@ module Aws::AppSync
1766
1998
  # resp.graphql_api.lambda_authorizer_config.authorizer_result_ttl_in_seconds #=> Integer
1767
1999
  # resp.graphql_api.lambda_authorizer_config.authorizer_uri #=> String
1768
2000
  # resp.graphql_api.lambda_authorizer_config.identity_validation_expression #=> String
2001
+ # resp.graphql_api.dns #=> Hash
2002
+ # resp.graphql_api.dns["String"] #=> String
2003
+ # resp.graphql_api.visibility #=> String, one of "GLOBAL", "PRIVATE"
2004
+ # resp.graphql_api.api_type #=> String, one of "GRAPHQL", "MERGED"
2005
+ # resp.graphql_api.merged_api_execution_role_arn #=> String
2006
+ # resp.graphql_api.owner #=> String
2007
+ # resp.graphql_api.owner_contact #=> String
1769
2008
  #
1770
2009
  # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/GetGraphqlApi AWS API Documentation
1771
2010
  #
@@ -1897,6 +2136,53 @@ module Aws::AppSync
1897
2136
  req.send_request(options)
1898
2137
  end
1899
2138
 
2139
+ # Retrieves a `SourceApiAssociation` object.
2140
+ #
2141
+ # @option params [required, String] :merged_api_identifier
2142
+ # The identifier of the AppSync Merged API. This is generated by the
2143
+ # AppSync service. In most cases, Merged APIs (especially in your
2144
+ # account) only require the API ID value or ARN of the merged API.
2145
+ # However, Merged APIs in other accounts (cross-account use cases)
2146
+ # strictly require the full resource ARN of the merged API.
2147
+ #
2148
+ # @option params [required, String] :association_id
2149
+ # The ID generated by the AppSync service for the source API
2150
+ # association.
2151
+ #
2152
+ # @return [Types::GetSourceApiAssociationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2153
+ #
2154
+ # * {Types::GetSourceApiAssociationResponse#source_api_association #source_api_association} => Types::SourceApiAssociation
2155
+ #
2156
+ # @example Request syntax with placeholder values
2157
+ #
2158
+ # resp = client.get_source_api_association({
2159
+ # merged_api_identifier: "String", # required
2160
+ # association_id: "String", # required
2161
+ # })
2162
+ #
2163
+ # @example Response structure
2164
+ #
2165
+ # resp.source_api_association.association_id #=> String
2166
+ # resp.source_api_association.association_arn #=> String
2167
+ # resp.source_api_association.source_api_id #=> String
2168
+ # resp.source_api_association.source_api_arn #=> String
2169
+ # resp.source_api_association.merged_api_arn #=> String
2170
+ # resp.source_api_association.merged_api_id #=> String
2171
+ # resp.source_api_association.description #=> String
2172
+ # resp.source_api_association.source_api_association_config.merge_type #=> String, one of "MANUAL_MERGE", "AUTO_MERGE"
2173
+ # resp.source_api_association.source_api_association_status #=> String, one of "MERGE_SCHEDULED", "MERGE_FAILED", "MERGE_SUCCESS", "MERGE_IN_PROGRESS", "AUTO_MERGE_SCHEDULE_FAILED", "DELETION_SCHEDULED", "DELETION_IN_PROGRESS", "DELETION_FAILED"
2174
+ # resp.source_api_association.source_api_association_status_detail #=> String
2175
+ # resp.source_api_association.last_successful_merge_date #=> Time
2176
+ #
2177
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/GetSourceApiAssociation AWS API Documentation
2178
+ #
2179
+ # @overload get_source_api_association(params = {})
2180
+ # @param [Hash] params ({})
2181
+ def get_source_api_association(params = {}, options = {})
2182
+ req = build_request(:get_source_api_association, params)
2183
+ req.send_request(options)
2184
+ end
2185
+
1900
2186
  # Retrieves a `Type` object.
1901
2187
  #
1902
2188
  # @option params [required, String] :api_id
@@ -2059,7 +2345,9 @@ module Aws::AppSync
2059
2345
  # Lists multiple custom domain names.
2060
2346
  #
2061
2347
  # @option params [String] :next_token
2062
- # The API token.
2348
+ # An identifier that was returned from the previous call to this
2349
+ # operation, which you can use to return the next set of items in the
2350
+ # list.
2063
2351
  #
2064
2352
  # @option params [Integer] :max_results
2065
2353
  # The maximum number of results that you want the request to return.
@@ -2160,6 +2448,13 @@ module Aws::AppSync
2160
2448
  # @option params [Integer] :max_results
2161
2449
  # The maximum number of results that you want the request to return.
2162
2450
  #
2451
+ # @option params [String] :api_type
2452
+ # The value that indicates whether the GraphQL API is a standard API
2453
+ # (`GRAPHQL`) or merged API (`MERGED`).
2454
+ #
2455
+ # @option params [String] :owner
2456
+ # The account owner of the GraphQL API.
2457
+ #
2163
2458
  # @return [Types::ListGraphqlApisResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2164
2459
  #
2165
2460
  # * {Types::ListGraphqlApisResponse#graphql_apis #graphql_apis} => Array<Types::GraphqlApi>
@@ -2170,6 +2465,8 @@ module Aws::AppSync
2170
2465
  # resp = client.list_graphql_apis({
2171
2466
  # next_token: "PaginationToken",
2172
2467
  # max_results: 1,
2468
+ # api_type: "GRAPHQL", # accepts GRAPHQL, MERGED
2469
+ # owner: "CURRENT_ACCOUNT", # accepts CURRENT_ACCOUNT, OTHER_ACCOUNTS
2173
2470
  # })
2174
2471
  #
2175
2472
  # @example Response structure
@@ -2211,6 +2508,13 @@ module Aws::AppSync
2211
2508
  # resp.graphql_apis[0].lambda_authorizer_config.authorizer_result_ttl_in_seconds #=> Integer
2212
2509
  # resp.graphql_apis[0].lambda_authorizer_config.authorizer_uri #=> String
2213
2510
  # resp.graphql_apis[0].lambda_authorizer_config.identity_validation_expression #=> String
2511
+ # resp.graphql_apis[0].dns #=> Hash
2512
+ # resp.graphql_apis[0].dns["String"] #=> String
2513
+ # resp.graphql_apis[0].visibility #=> String, one of "GLOBAL", "PRIVATE"
2514
+ # resp.graphql_apis[0].api_type #=> String, one of "GRAPHQL", "MERGED"
2515
+ # resp.graphql_apis[0].merged_api_execution_role_arn #=> String
2516
+ # resp.graphql_apis[0].owner #=> String
2517
+ # resp.graphql_apis[0].owner_contact #=> String
2214
2518
  # resp.next_token #=> String
2215
2519
  #
2216
2520
  # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/ListGraphqlApis AWS API Documentation
@@ -2348,6 +2652,53 @@ module Aws::AppSync
2348
2652
  req.send_request(options)
2349
2653
  end
2350
2654
 
2655
+ # Lists the `SourceApiAssociationSummary` data.
2656
+ #
2657
+ # @option params [required, String] :api_id
2658
+ # The API ID.
2659
+ #
2660
+ # @option params [String] :next_token
2661
+ # An identifier that was returned from the previous call to this
2662
+ # operation, which you can use to return the next set of items in the
2663
+ # list.
2664
+ #
2665
+ # @option params [Integer] :max_results
2666
+ # The maximum number of results that you want the request to return.
2667
+ #
2668
+ # @return [Types::ListSourceApiAssociationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2669
+ #
2670
+ # * {Types::ListSourceApiAssociationsResponse#source_api_association_summaries #source_api_association_summaries} => Array<Types::SourceApiAssociationSummary>
2671
+ # * {Types::ListSourceApiAssociationsResponse#next_token #next_token} => String
2672
+ #
2673
+ # @example Request syntax with placeholder values
2674
+ #
2675
+ # resp = client.list_source_api_associations({
2676
+ # api_id: "String", # required
2677
+ # next_token: "PaginationToken",
2678
+ # max_results: 1,
2679
+ # })
2680
+ #
2681
+ # @example Response structure
2682
+ #
2683
+ # resp.source_api_association_summaries #=> Array
2684
+ # resp.source_api_association_summaries[0].association_id #=> String
2685
+ # resp.source_api_association_summaries[0].association_arn #=> String
2686
+ # resp.source_api_association_summaries[0].source_api_id #=> String
2687
+ # resp.source_api_association_summaries[0].source_api_arn #=> String
2688
+ # resp.source_api_association_summaries[0].merged_api_id #=> String
2689
+ # resp.source_api_association_summaries[0].merged_api_arn #=> String
2690
+ # resp.source_api_association_summaries[0].description #=> String
2691
+ # resp.next_token #=> String
2692
+ #
2693
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/ListSourceApiAssociations AWS API Documentation
2694
+ #
2695
+ # @overload list_source_api_associations(params = {})
2696
+ # @param [Hash] params ({})
2697
+ def list_source_api_associations(params = {}, options = {})
2698
+ req = build_request(:list_source_api_associations, params)
2699
+ req.send_request(options)
2700
+ end
2701
+
2351
2702
  # Lists the tags for a resource.
2352
2703
  #
2353
2704
  # @option params [required, String] :resource_arn
@@ -2426,6 +2777,64 @@ module Aws::AppSync
2426
2777
  req.send_request(options)
2427
2778
  end
2428
2779
 
2780
+ # Lists `Type` objects by the source API association ID.
2781
+ #
2782
+ # @option params [required, String] :merged_api_identifier
2783
+ # The identifier of the AppSync Merged API. This is generated by the
2784
+ # AppSync service. In most cases, Merged APIs (especially in your
2785
+ # account) only require the API ID value or ARN of the merged API.
2786
+ # However, Merged APIs in other accounts (cross-account use cases)
2787
+ # strictly require the full resource ARN of the merged API.
2788
+ #
2789
+ # @option params [required, String] :association_id
2790
+ # The ID generated by the AppSync service for the source API
2791
+ # association.
2792
+ #
2793
+ # @option params [required, String] :format
2794
+ # The format type.
2795
+ #
2796
+ # @option params [String] :next_token
2797
+ # An identifier that was returned from the previous call to this
2798
+ # operation, which you can use to return the next set of items in the
2799
+ # list.
2800
+ #
2801
+ # @option params [Integer] :max_results
2802
+ # The maximum number of results that you want the request to return.
2803
+ #
2804
+ # @return [Types::ListTypesByAssociationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2805
+ #
2806
+ # * {Types::ListTypesByAssociationResponse#types #types} => Array<Types::Type>
2807
+ # * {Types::ListTypesByAssociationResponse#next_token #next_token} => String
2808
+ #
2809
+ # @example Request syntax with placeholder values
2810
+ #
2811
+ # resp = client.list_types_by_association({
2812
+ # merged_api_identifier: "String", # required
2813
+ # association_id: "String", # required
2814
+ # format: "SDL", # required, accepts SDL, JSON
2815
+ # next_token: "PaginationToken",
2816
+ # max_results: 1,
2817
+ # })
2818
+ #
2819
+ # @example Response structure
2820
+ #
2821
+ # resp.types #=> Array
2822
+ # resp.types[0].name #=> String
2823
+ # resp.types[0].description #=> String
2824
+ # resp.types[0].arn #=> String
2825
+ # resp.types[0].definition #=> String
2826
+ # resp.types[0].format #=> String, one of "SDL", "JSON"
2827
+ # resp.next_token #=> String
2828
+ #
2829
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/ListTypesByAssociation AWS API Documentation
2830
+ #
2831
+ # @overload list_types_by_association(params = {})
2832
+ # @param [Hash] params ({})
2833
+ def list_types_by_association(params = {}, options = {})
2834
+ req = build_request(:list_types_by_association, params)
2835
+ req.send_request(options)
2836
+ end
2837
+
2429
2838
  # Adds a new schema to your GraphQL API.
2430
2839
  #
2431
2840
  # This operation is asynchronous. Use to determine when it has
@@ -2461,6 +2870,44 @@ module Aws::AppSync
2461
2870
  req.send_request(options)
2462
2871
  end
2463
2872
 
2873
+ # Initiates a merge operation. Returns a status that shows the result of
2874
+ # the merge operation.
2875
+ #
2876
+ # @option params [required, String] :association_id
2877
+ # The ID generated by the AppSync service for the source API
2878
+ # association.
2879
+ #
2880
+ # @option params [required, String] :merged_api_identifier
2881
+ # The identifier of the AppSync Merged API. This is generated by the
2882
+ # AppSync service. In most cases, Merged APIs (especially in your
2883
+ # account) only require the API ID value or ARN of the merged API.
2884
+ # However, Merged APIs in other accounts (cross-account use cases)
2885
+ # strictly require the full resource ARN of the merged API.
2886
+ #
2887
+ # @return [Types::StartSchemaMergeResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2888
+ #
2889
+ # * {Types::StartSchemaMergeResponse#source_api_association_status #source_api_association_status} => String
2890
+ #
2891
+ # @example Request syntax with placeholder values
2892
+ #
2893
+ # resp = client.start_schema_merge({
2894
+ # association_id: "String", # required
2895
+ # merged_api_identifier: "String", # required
2896
+ # })
2897
+ #
2898
+ # @example Response structure
2899
+ #
2900
+ # resp.source_api_association_status #=> String, one of "MERGE_SCHEDULED", "MERGE_FAILED", "MERGE_SUCCESS", "MERGE_IN_PROGRESS", "AUTO_MERGE_SCHEDULE_FAILED", "DELETION_SCHEDULED", "DELETION_IN_PROGRESS", "DELETION_FAILED"
2901
+ #
2902
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/StartSchemaMerge AWS API Documentation
2903
+ #
2904
+ # @overload start_schema_merge(params = {})
2905
+ # @param [Hash] params ({})
2906
+ def start_schema_merge(params = {}, options = {})
2907
+ req = build_request(:start_schema_merge, params)
2908
+ req.send_request(options)
2909
+ end
2910
+
2464
2911
  # Tags a resource with user-supplied tags.
2465
2912
  #
2466
2913
  # @option params [required, String] :resource_arn
@@ -2528,9 +2975,9 @@ module Aws::AppSync
2528
2975
  # @option params [required, String] :api_caching_behavior
2529
2976
  # Caching behavior.
2530
2977
  #
2531
- # * **FULL\_REQUEST\_CACHING**\: All requests are fully cached.
2978
+ # * **FULL\_REQUEST\_CACHING**: All requests are fully cached.
2532
2979
  #
2533
- # * **PER\_RESOLVER\_CACHING**\: Individual resolvers that you specify
2980
+ # * **PER\_RESOLVER\_CACHING**: Individual resolvers that you specify
2534
2981
  # are cached.
2535
2982
  #
2536
2983
  # @option params [required, String] :type
@@ -2559,19 +3006,19 @@ module Aws::AppSync
2559
3006
  # The following legacy instance types are available, but their use is
2560
3007
  # discouraged:
2561
3008
  #
2562
- # * **T2\_SMALL**\: A t2.small instance type.
3009
+ # * **T2\_SMALL**: A t2.small instance type.
2563
3010
  #
2564
- # * **T2\_MEDIUM**\: A t2.medium instance type.
3011
+ # * **T2\_MEDIUM**: A t2.medium instance type.
2565
3012
  #
2566
- # * **R4\_LARGE**\: A r4.large instance type.
3013
+ # * **R4\_LARGE**: A r4.large instance type.
2567
3014
  #
2568
- # * **R4\_XLARGE**\: A r4.xlarge instance type.
3015
+ # * **R4\_XLARGE**: A r4.xlarge instance type.
2569
3016
  #
2570
- # * **R4\_2XLARGE**\: A r4.2xlarge instance type.
3017
+ # * **R4\_2XLARGE**: A r4.2xlarge instance type.
2571
3018
  #
2572
- # * **R4\_4XLARGE**\: A r4.4xlarge instance type.
3019
+ # * **R4\_4XLARGE**: A r4.4xlarge instance type.
2573
3020
  #
2574
- # * **R4\_8XLARGE**\: A r4.8xlarge instance type.
3021
+ # * **R4\_8XLARGE**: A r4.8xlarge instance type.
2575
3022
  #
2576
3023
  # @return [Types::UpdateApiCacheResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2577
3024
  #
@@ -2965,6 +3412,19 @@ module Aws::AppSync
2965
3412
  # @option params [Types::LambdaAuthorizerConfig] :lambda_authorizer_config
2966
3413
  # Configuration for Lambda function authorization.
2967
3414
  #
3415
+ # @option params [String] :merged_api_execution_role_arn
3416
+ # The Identity and Access Management service role ARN for a merged API.
3417
+ # The AppSync service assumes this role on behalf of the Merged API to
3418
+ # validate access to source APIs at runtime and to prompt the
3419
+ # `AUTO_MERGE` to update the merged API endpoint with the source API
3420
+ # changes automatically.
3421
+ #
3422
+ # @option params [String] :owner_contact
3423
+ # The owner contact information for an API resource.
3424
+ #
3425
+ # This field accepts any string input with a length of 0 - 256
3426
+ # characters.
3427
+ #
2968
3428
  # @return [Types::UpdateGraphqlApiResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2969
3429
  #
2970
3430
  # * {Types::UpdateGraphqlApiResponse#graphql_api #graphql_api} => Types::GraphqlApi
@@ -3019,6 +3479,8 @@ module Aws::AppSync
3019
3479
  # authorizer_uri: "String", # required
3020
3480
  # identity_validation_expression: "String",
3021
3481
  # },
3482
+ # merged_api_execution_role_arn: "String",
3483
+ # owner_contact: "String",
3022
3484
  # })
3023
3485
  #
3024
3486
  # @example Response structure
@@ -3059,6 +3521,13 @@ module Aws::AppSync
3059
3521
  # resp.graphql_api.lambda_authorizer_config.authorizer_result_ttl_in_seconds #=> Integer
3060
3522
  # resp.graphql_api.lambda_authorizer_config.authorizer_uri #=> String
3061
3523
  # resp.graphql_api.lambda_authorizer_config.identity_validation_expression #=> String
3524
+ # resp.graphql_api.dns #=> Hash
3525
+ # resp.graphql_api.dns["String"] #=> String
3526
+ # resp.graphql_api.visibility #=> String, one of "GLOBAL", "PRIVATE"
3527
+ # resp.graphql_api.api_type #=> String, one of "GRAPHQL", "MERGED"
3528
+ # resp.graphql_api.merged_api_execution_role_arn #=> String
3529
+ # resp.graphql_api.owner #=> String
3530
+ # resp.graphql_api.owner_contact #=> String
3062
3531
  #
3063
3532
  # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/UpdateGraphqlApi AWS API Documentation
3064
3533
  #
@@ -3100,11 +3569,11 @@ module Aws::AppSync
3100
3569
  # @option params [String] :kind
3101
3570
  # The resolver type.
3102
3571
  #
3103
- # * **UNIT**\: A UNIT resolver type. A UNIT resolver is the default
3572
+ # * **UNIT**: A UNIT resolver type. A UNIT resolver is the default
3104
3573
  # resolver type. You can use a UNIT resolver to run a GraphQL query
3105
3574
  # against a single data source.
3106
3575
  #
3107
- # * **PIPELINE**\: A PIPELINE resolver type. You can use a PIPELINE
3576
+ # * **PIPELINE**: A PIPELINE resolver type. You can use a PIPELINE
3108
3577
  # resolver to invoke a series of `Function` objects in a serial
3109
3578
  # manner. You can use a pipeline resolver to run a GraphQL query
3110
3579
  # against multiple data sources.
@@ -3199,6 +3668,64 @@ module Aws::AppSync
3199
3668
  req.send_request(options)
3200
3669
  end
3201
3670
 
3671
+ # Updates some of the configuration choices of a particular source API
3672
+ # association.
3673
+ #
3674
+ # @option params [required, String] :association_id
3675
+ # The ID generated by the AppSync service for the source API
3676
+ # association.
3677
+ #
3678
+ # @option params [required, String] :merged_api_identifier
3679
+ # The identifier of the AppSync Merged API. This is generated by the
3680
+ # AppSync service. In most cases, Merged APIs (especially in your
3681
+ # account) only require the API ID value or ARN of the merged API.
3682
+ # However, Merged APIs in other accounts (cross-account use cases)
3683
+ # strictly require the full resource ARN of the merged API.
3684
+ #
3685
+ # @option params [String] :description
3686
+ # The description field.
3687
+ #
3688
+ # @option params [Types::SourceApiAssociationConfig] :source_api_association_config
3689
+ # The `SourceApiAssociationConfig` object data.
3690
+ #
3691
+ # @return [Types::UpdateSourceApiAssociationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3692
+ #
3693
+ # * {Types::UpdateSourceApiAssociationResponse#source_api_association #source_api_association} => Types::SourceApiAssociation
3694
+ #
3695
+ # @example Request syntax with placeholder values
3696
+ #
3697
+ # resp = client.update_source_api_association({
3698
+ # association_id: "String", # required
3699
+ # merged_api_identifier: "String", # required
3700
+ # description: "String",
3701
+ # source_api_association_config: {
3702
+ # merge_type: "MANUAL_MERGE", # accepts MANUAL_MERGE, AUTO_MERGE
3703
+ # },
3704
+ # })
3705
+ #
3706
+ # @example Response structure
3707
+ #
3708
+ # resp.source_api_association.association_id #=> String
3709
+ # resp.source_api_association.association_arn #=> String
3710
+ # resp.source_api_association.source_api_id #=> String
3711
+ # resp.source_api_association.source_api_arn #=> String
3712
+ # resp.source_api_association.merged_api_arn #=> String
3713
+ # resp.source_api_association.merged_api_id #=> String
3714
+ # resp.source_api_association.description #=> String
3715
+ # resp.source_api_association.source_api_association_config.merge_type #=> String, one of "MANUAL_MERGE", "AUTO_MERGE"
3716
+ # resp.source_api_association.source_api_association_status #=> String, one of "MERGE_SCHEDULED", "MERGE_FAILED", "MERGE_SUCCESS", "MERGE_IN_PROGRESS", "AUTO_MERGE_SCHEDULE_FAILED", "DELETION_SCHEDULED", "DELETION_IN_PROGRESS", "DELETION_FAILED"
3717
+ # resp.source_api_association.source_api_association_status_detail #=> String
3718
+ # resp.source_api_association.last_successful_merge_date #=> Time
3719
+ #
3720
+ # @see http://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/UpdateSourceApiAssociation AWS API Documentation
3721
+ #
3722
+ # @overload update_source_api_association(params = {})
3723
+ # @param [Hash] params ({})
3724
+ def update_source_api_association(params = {}, options = {})
3725
+ req = build_request(:update_source_api_association, params)
3726
+ req.send_request(options)
3727
+ end
3728
+
3202
3729
  # Updates a `Type` object.
3203
3730
  #
3204
3731
  # @option params [required, String] :api_id
@@ -3256,7 +3783,7 @@ module Aws::AppSync
3256
3783
  params: params,
3257
3784
  config: config)
3258
3785
  context[:gem_name] = 'aws-sdk-appsync'
3259
- context[:gem_version] = '1.58.0'
3786
+ context[:gem_version] = '1.60.0'
3260
3787
  Seahorse::Client::Request.new(handlers, context)
3261
3788
  end
3262
3789