aws-sdk-appsync 1.58.0 → 1.60.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.
@@ -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