aws-sdk-elasticsearchservice 1.31.0 → 1.36.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.
@@ -25,9 +25,12 @@ module Aws::ElasticsearchService
25
25
  # See {Seahorse::Client::RequestContext} for more information.
26
26
  #
27
27
  # ## Error Classes
28
+ # * {AccessDeniedException}
28
29
  # * {BaseException}
30
+ # * {ConflictException}
29
31
  # * {DisabledOperationException}
30
32
  # * {InternalException}
33
+ # * {InvalidPaginationTokenException}
31
34
  # * {InvalidTypeException}
32
35
  # * {LimitExceededException}
33
36
  # * {ResourceAlreadyExistsException}
@@ -40,6 +43,16 @@ module Aws::ElasticsearchService
40
43
 
41
44
  extend Aws::Errors::DynamicErrors
42
45
 
46
+ class AccessDeniedException < ServiceError
47
+
48
+ # @param [Seahorse::Client::RequestContext] context
49
+ # @param [String] message
50
+ # @param [Aws::ElasticsearchService::Types::AccessDeniedException] data
51
+ def initialize(context, message, data = Aws::EmptyStructure.new)
52
+ super(context, message, data)
53
+ end
54
+ end
55
+
43
56
  class BaseException < ServiceError
44
57
 
45
58
  # @param [Seahorse::Client::RequestContext] context
@@ -55,6 +68,16 @@ module Aws::ElasticsearchService
55
68
  end
56
69
  end
57
70
 
71
+ class ConflictException < ServiceError
72
+
73
+ # @param [Seahorse::Client::RequestContext] context
74
+ # @param [String] message
75
+ # @param [Aws::ElasticsearchService::Types::ConflictException] data
76
+ def initialize(context, message, data = Aws::EmptyStructure.new)
77
+ super(context, message, data)
78
+ end
79
+ end
80
+
58
81
  class DisabledOperationException < ServiceError
59
82
 
60
83
  # @param [Seahorse::Client::RequestContext] context
@@ -75,6 +98,16 @@ module Aws::ElasticsearchService
75
98
  end
76
99
  end
77
100
 
101
+ class InvalidPaginationTokenException < ServiceError
102
+
103
+ # @param [Seahorse::Client::RequestContext] context
104
+ # @param [String] message
105
+ # @param [Aws::ElasticsearchService::Types::InvalidPaginationTokenException] data
106
+ def initialize(context, message, data = Aws::EmptyStructure.new)
107
+ super(context, message, data)
108
+ end
109
+ end
110
+
78
111
  class InvalidTypeException < ServiceError
79
112
 
80
113
  # @param [Seahorse::Client::RequestContext] context
@@ -6,13 +6,7 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::ElasticsearchService
9
- # This class provides a resource oriented interface for ElasticsearchService.
10
- # To create a resource object:
11
- # resource = Aws::ElasticsearchService::Resource.new(region: 'us-west-2')
12
- # You can supply a client object with custom configuration that will be used for all resource operations.
13
- # If you do not pass +:client+, a default client will be constructed.
14
- # client = Aws::ElasticsearchService::Client.new(region: 'us-west-2')
15
- # resource = Aws::ElasticsearchService::Resource.new(client: client)
9
+
16
10
  class Resource
17
11
 
18
12
  # @param options ({})
@@ -8,6 +8,43 @@
8
8
  module Aws::ElasticsearchService
9
9
  module Types
10
10
 
11
+ # Container for the parameters to the
12
+ # `AcceptInboundCrossClusterSearchConnection` operation.
13
+ #
14
+ # @note When making an API call, you may pass AcceptInboundCrossClusterSearchConnectionRequest
15
+ # data as a hash:
16
+ #
17
+ # {
18
+ # cross_cluster_search_connection_id: "CrossClusterSearchConnectionId", # required
19
+ # }
20
+ #
21
+ # @!attribute [rw] cross_cluster_search_connection_id
22
+ # The id of the inbound connection that you want to accept.
23
+ # @return [String]
24
+ #
25
+ class AcceptInboundCrossClusterSearchConnectionRequest < Struct.new(
26
+ :cross_cluster_search_connection_id)
27
+ include Aws::Structure
28
+ end
29
+
30
+ # The result of a `AcceptInboundCrossClusterSearchConnection` operation.
31
+ # Contains details of accepted inbound connection.
32
+ #
33
+ # @!attribute [rw] cross_cluster_search_connection
34
+ # Specifies the `InboundCrossClusterSearchConnection` of accepted
35
+ # inbound connection.
36
+ # @return [Types::InboundCrossClusterSearchConnection]
37
+ #
38
+ class AcceptInboundCrossClusterSearchConnectionResponse < Struct.new(
39
+ :cross_cluster_search_connection)
40
+ include Aws::Structure
41
+ end
42
+
43
+ # An error occurred because user does not have permissions to access the
44
+ # resource. Returns HTTP status code 403.
45
+ #
46
+ class AccessDeniedException < Aws::EmptyStructure; end
47
+
11
48
  # The configured access rules for the domain's document and search
12
49
  # endpoints, and the current status of those rules.
13
50
  #
@@ -191,6 +228,42 @@ module Aws::ElasticsearchService
191
228
  include Aws::Structure
192
229
  end
193
230
 
231
+ # Container for request parameters to ` AssociatePackage ` operation.
232
+ #
233
+ # @note When making an API call, you may pass AssociatePackageRequest
234
+ # data as a hash:
235
+ #
236
+ # {
237
+ # package_id: "PackageID", # required
238
+ # domain_name: "DomainName", # required
239
+ # }
240
+ #
241
+ # @!attribute [rw] package_id
242
+ # Internal ID of the package that you want to associate with a domain.
243
+ # Use `DescribePackages` to find this value.
244
+ # @return [String]
245
+ #
246
+ # @!attribute [rw] domain_name
247
+ # Name of the domain that you want to associate the package with.
248
+ # @return [String]
249
+ #
250
+ class AssociatePackageRequest < Struct.new(
251
+ :package_id,
252
+ :domain_name)
253
+ include Aws::Structure
254
+ end
255
+
256
+ # Container for response returned by ` AssociatePackage ` operation.
257
+ #
258
+ # @!attribute [rw] domain_package_details
259
+ # `DomainPackageDetails`
260
+ # @return [Types::DomainPackageDetails]
261
+ #
262
+ class AssociatePackageResponse < Struct.new(
263
+ :domain_package_details)
264
+ include Aws::Structure
265
+ end
266
+
194
267
  # An error occurred while processing the request.
195
268
  #
196
269
  # @!attribute [rw] message
@@ -314,6 +387,11 @@ module Aws::ElasticsearchService
314
387
  include Aws::Structure
315
388
  end
316
389
 
390
+ # An error occurred because the client attempts to remove a resource
391
+ # that is currently in use. Returns HTTP status code 409.
392
+ #
393
+ class ConflictException < Aws::EmptyStructure; end
394
+
317
395
  # @note When making an API call, you may pass CreateElasticsearchDomainRequest
318
396
  # data as a hash:
319
397
  #
@@ -506,6 +584,136 @@ module Aws::ElasticsearchService
506
584
  include Aws::Structure
507
585
  end
508
586
 
587
+ # Container for the parameters to the
588
+ # `CreateOutboundCrossClusterSearchConnection` operation.
589
+ #
590
+ # @note When making an API call, you may pass CreateOutboundCrossClusterSearchConnectionRequest
591
+ # data as a hash:
592
+ #
593
+ # {
594
+ # source_domain_info: { # required
595
+ # owner_id: "OwnerId",
596
+ # domain_name: "DomainName", # required
597
+ # region: "Region",
598
+ # },
599
+ # destination_domain_info: { # required
600
+ # owner_id: "OwnerId",
601
+ # domain_name: "DomainName", # required
602
+ # region: "Region",
603
+ # },
604
+ # connection_alias: "ConnectionAlias", # required
605
+ # }
606
+ #
607
+ # @!attribute [rw] source_domain_info
608
+ # Specifies the `DomainInformation` for the source Elasticsearch
609
+ # domain.
610
+ # @return [Types::DomainInformation]
611
+ #
612
+ # @!attribute [rw] destination_domain_info
613
+ # Specifies the `DomainInformation` for the destination Elasticsearch
614
+ # domain.
615
+ # @return [Types::DomainInformation]
616
+ #
617
+ # @!attribute [rw] connection_alias
618
+ # Specifies the connection alias that will be used by the customer for
619
+ # this connection.
620
+ # @return [String]
621
+ #
622
+ class CreateOutboundCrossClusterSearchConnectionRequest < Struct.new(
623
+ :source_domain_info,
624
+ :destination_domain_info,
625
+ :connection_alias)
626
+ include Aws::Structure
627
+ end
628
+
629
+ # The result of a `CreateOutboundCrossClusterSearchConnection` request.
630
+ # Contains the details of the newly created cross-cluster search
631
+ # connection.
632
+ #
633
+ # @!attribute [rw] source_domain_info
634
+ # Specifies the `DomainInformation` for the source Elasticsearch
635
+ # domain.
636
+ # @return [Types::DomainInformation]
637
+ #
638
+ # @!attribute [rw] destination_domain_info
639
+ # Specifies the `DomainInformation` for the destination Elasticsearch
640
+ # domain.
641
+ # @return [Types::DomainInformation]
642
+ #
643
+ # @!attribute [rw] connection_alias
644
+ # Specifies the connection alias provided during the create connection
645
+ # request.
646
+ # @return [String]
647
+ #
648
+ # @!attribute [rw] connection_status
649
+ # Specifies the `OutboundCrossClusterSearchConnectionStatus` for the
650
+ # newly created connection.
651
+ # @return [Types::OutboundCrossClusterSearchConnectionStatus]
652
+ #
653
+ # @!attribute [rw] cross_cluster_search_connection_id
654
+ # Unique id for the created outbound connection, which is used for
655
+ # subsequent operations on connection.
656
+ # @return [String]
657
+ #
658
+ class CreateOutboundCrossClusterSearchConnectionResponse < Struct.new(
659
+ :source_domain_info,
660
+ :destination_domain_info,
661
+ :connection_alias,
662
+ :connection_status,
663
+ :cross_cluster_search_connection_id)
664
+ include Aws::Structure
665
+ end
666
+
667
+ # Container for request parameters to ` CreatePackage ` operation.
668
+ #
669
+ # @note When making an API call, you may pass CreatePackageRequest
670
+ # data as a hash:
671
+ #
672
+ # {
673
+ # package_name: "PackageName", # required
674
+ # package_type: "TXT-DICTIONARY", # required, accepts TXT-DICTIONARY
675
+ # package_description: "PackageDescription",
676
+ # package_source: { # required
677
+ # s3_bucket_name: "S3BucketName",
678
+ # s3_key: "S3Key",
679
+ # },
680
+ # }
681
+ #
682
+ # @!attribute [rw] package_name
683
+ # Unique identifier for the package.
684
+ # @return [String]
685
+ #
686
+ # @!attribute [rw] package_type
687
+ # Type of package. Currently supports only TXT-DICTIONARY.
688
+ # @return [String]
689
+ #
690
+ # @!attribute [rw] package_description
691
+ # Description of the package.
692
+ # @return [String]
693
+ #
694
+ # @!attribute [rw] package_source
695
+ # The customer S3 location `PackageSource` for importing the package.
696
+ # @return [Types::PackageSource]
697
+ #
698
+ class CreatePackageRequest < Struct.new(
699
+ :package_name,
700
+ :package_type,
701
+ :package_description,
702
+ :package_source)
703
+ include Aws::Structure
704
+ end
705
+
706
+ # Container for response returned by ` CreatePackage ` operation.
707
+ #
708
+ # @!attribute [rw] package_details
709
+ # Information about the package `PackageDetails`.
710
+ # @return [Types::PackageDetails]
711
+ #
712
+ class CreatePackageResponse < Struct.new(
713
+ :package_details)
714
+ include Aws::Structure
715
+ end
716
+
509
717
  # Container for the parameters to the `DeleteElasticsearchDomain`
510
718
  # operation. Specifies the name of the Elasticsearch domain that you
511
719
  # want to delete.
@@ -540,6 +748,102 @@ module Aws::ElasticsearchService
540
748
  include Aws::Structure
541
749
  end
542
750
 
751
+ # Container for the parameters to the
752
+ # `DeleteInboundCrossClusterSearchConnection` operation.
753
+ #
754
+ # @note When making an API call, you may pass DeleteInboundCrossClusterSearchConnectionRequest
755
+ # data as a hash:
756
+ #
757
+ # {
758
+ # cross_cluster_search_connection_id: "CrossClusterSearchConnectionId", # required
759
+ # }
760
+ #
761
+ # @!attribute [rw] cross_cluster_search_connection_id
762
+ # The id of the inbound connection that you want to permanently
763
+ # delete.
764
+ # @return [String]
765
+ #
766
+ class DeleteInboundCrossClusterSearchConnectionRequest < Struct.new(
767
+ :cross_cluster_search_connection_id)
768
+ include Aws::Structure
769
+ end
770
+
771
+ # The result of a `DeleteInboundCrossClusterSearchConnection` operation.
772
+ # Contains details of deleted inbound connection.
773
+ #
774
+ # @!attribute [rw] cross_cluster_search_connection
775
+ # Specifies the `InboundCrossClusterSearchConnection` of deleted
776
+ # inbound connection.
777
+ # @return [Types::InboundCrossClusterSearchConnection]
778
+ #
779
+ class DeleteInboundCrossClusterSearchConnectionResponse < Struct.new(
780
+ :cross_cluster_search_connection)
781
+ include Aws::Structure
782
+ end
783
+
784
+ # Container for the parameters to the
785
+ # `DeleteOutboundCrossClusterSearchConnection` operation.
786
+ #
787
+ # @note When making an API call, you may pass DeleteOutboundCrossClusterSearchConnectionRequest
788
+ # data as a hash:
789
+ #
790
+ # {
791
+ # cross_cluster_search_connection_id: "CrossClusterSearchConnectionId", # required
792
+ # }
793
+ #
794
+ # @!attribute [rw] cross_cluster_search_connection_id
795
+ # The id of the outbound connection that you want to permanently
796
+ # delete.
797
+ # @return [String]
798
+ #
799
+ class DeleteOutboundCrossClusterSearchConnectionRequest < Struct.new(
800
+ :cross_cluster_search_connection_id)
801
+ include Aws::Structure
802
+ end
803
+
804
+ # The result of a `DeleteOutboundCrossClusterSearchConnection`
805
+ # operation. Contains details of deleted outbound connection.
806
+ #
807
+ # @!attribute [rw] cross_cluster_search_connection
808
+ # Specifies the `OutboundCrossClusterSearchConnection` of deleted
809
+ # outbound connection.
810
+ # @return [Types::OutboundCrossClusterSearchConnection]
811
+ #
812
+ class DeleteOutboundCrossClusterSearchConnectionResponse < Struct.new(
813
+ :cross_cluster_search_connection)
814
+ include Aws::Structure
815
+ end
816
+
817
+ # Container for request parameters to ` DeletePackage ` operation.
818
+ #
819
+ # @note When making an API call, you may pass DeletePackageRequest
820
+ # data as a hash:
821
+ #
822
+ # {
823
+ # package_id: "PackageID", # required
824
+ # }
825
+ #
826
+ # @!attribute [rw] package_id
827
+ # Internal ID of the package that you want to delete. Use
828
+ # `DescribePackages` to find this value.
829
+ # @return [String]
830
+ #
831
+ class DeletePackageRequest < Struct.new(
832
+ :package_id)
833
+ include Aws::Structure
834
+ end
835
+
836
+ # Container for response parameters to ` DeletePackage ` operation.
837
+ #
838
+ # @!attribute [rw] package_details
839
+ # `PackageDetails`
840
+ # @return [Types::PackageDetails]
841
+ #
842
+ class DeletePackageResponse < Struct.new(
843
+ :package_details)
844
+ include Aws::Structure
845
+ end
846
+
543
847
  # Container for the parameters to the
544
848
  # `DescribeElasticsearchDomainConfig` operation. Specifies the domain
545
849
  # name for which you want configuration information.
@@ -687,6 +991,213 @@ module Aws::ElasticsearchService
687
991
  include Aws::Structure
688
992
  end
689
993
 
994
+ # Container for the parameters to the
995
+ # `DescribeInboundCrossClusterSearchConnections` operation.
996
+ #
997
+ # @note When making an API call, you may pass DescribeInboundCrossClusterSearchConnectionsRequest
998
+ # data as a hash:
999
+ #
1000
+ # {
1001
+ # filters: [
1002
+ # {
1003
+ # name: "NonEmptyString",
1004
+ # values: ["NonEmptyString"],
1005
+ # },
1006
+ # ],
1007
+ # max_results: 1,
1008
+ # next_token: "NextToken",
1009
+ # }
1010
+ #
1011
+ # @!attribute [rw] filters
1012
+ # A list of filters used to match properties for inbound cross-cluster
1013
+ # search connection. Available `Filter` names for this operation are:
1014
+ # * cross-cluster-search-connection-id
1015
+ # * source-domain-info.domain-name
1016
+ # * source-domain-info.owner-id
1017
+ # * source-domain-info.region
1018
+ # * destination-domain-info.domain-name
1019
+ # @return [Array<Types::Filter>]
1020
+ #
1021
+ # @!attribute [rw] max_results
1022
+ # Set this value to limit the number of results returned. If not
1023
+ # specified, defaults to 100.
1024
+ # @return [Integer]
1025
+ #
1026
+ # @!attribute [rw] next_token
1027
+ # NextToken is sent in case the earlier API call results contain the
1028
+ # NextToken. It is used for pagination.
1029
+ # @return [String]
1030
+ #
1031
+ class DescribeInboundCrossClusterSearchConnectionsRequest < Struct.new(
1032
+ :filters,
1033
+ :max_results,
1034
+ :next_token)
1035
+ include Aws::Structure
1036
+ end
1037
+
1038
+ # The result of a `DescribeInboundCrossClusterSearchConnections`
1039
+ # request. Contains the list of connections matching the filter
1040
+ # criteria.
1041
+ #
1042
+ # @!attribute [rw] cross_cluster_search_connections
1043
+ # Consists of list of `InboundCrossClusterSearchConnection` matching
1044
+ # the specified filter criteria.
1045
+ # @return [Array<Types::InboundCrossClusterSearchConnection>]
1046
+ #
1047
+ # @!attribute [rw] next_token
1048
+ # If more results are available and NextToken is present, make the
1049
+ # next request to the same API with the received NextToken to paginate
1050
+ # the remaining results.
1051
+ # @return [String]
1052
+ #
1053
+ class DescribeInboundCrossClusterSearchConnectionsResponse < Struct.new(
1054
+ :cross_cluster_search_connections,
1055
+ :next_token)
1056
+ include Aws::Structure
1057
+ end
1058
+
1059
+ # Container for the parameters to the
1060
+ # `DescribeOutboundCrossClusterSearchConnections` operation.
1061
+ #
1062
+ # @note When making an API call, you may pass DescribeOutboundCrossClusterSearchConnectionsRequest
1063
+ # data as a hash:
1064
+ #
1065
+ # {
1066
+ # filters: [
1067
+ # {
1068
+ # name: "NonEmptyString",
1069
+ # values: ["NonEmptyString"],
1070
+ # },
1071
+ # ],
1072
+ # max_results: 1,
1073
+ # next_token: "NextToken",
1074
+ # }
1075
+ #
1076
+ # @!attribute [rw] filters
1077
+ # A list of filters used to match properties for outbound
1078
+ # cross-cluster search connection. Available `Filter` names for this
1079
+ # operation are: * cross-cluster-search-connection-id
1080
+ # * destination-domain-info.domain-name
1081
+ # * destination-domain-info.owner-id
1082
+ # * destination-domain-info.region
1083
+ # * source-domain-info.domain-name
1084
+ # @return [Array<Types::Filter>]
1085
+ #
1086
+ # @!attribute [rw] max_results
1087
+ # Set this value to limit the number of results returned. If not
1088
+ # specified, defaults to 100.
1089
+ # @return [Integer]
1090
+ #
1091
+ # @!attribute [rw] next_token
1092
+ # NextToken is sent in case the earlier API call results contain the
1093
+ # NextToken. It is used for pagination.
1094
+ # @return [String]
1095
+ #
1096
+ class DescribeOutboundCrossClusterSearchConnectionsRequest < Struct.new(
1097
+ :filters,
1098
+ :max_results,
1099
+ :next_token)
1100
+ include Aws::Structure
1101
+ end
1102
+
1103
+ # The result of a `DescribeOutboundCrossClusterSearchConnections`
1104
+ # request. Contains the list of connections matching the filter
1105
+ # criteria.
1106
+ #
1107
+ # @!attribute [rw] cross_cluster_search_connections
1108
+ # Consists of list of `OutboundCrossClusterSearchConnection` matching
1109
+ # the specified filter criteria.
1110
+ # @return [Array<Types::OutboundCrossClusterSearchConnection>]
1111
+ #
1112
+ # @!attribute [rw] next_token
1113
+ # If more results are available and NextToken is present, make the
1114
+ # next request to the same API with the received NextToken to paginate
1115
+ # the remaining results.
1116
+ # @return [String]
1117
+ #
1118
+ class DescribeOutboundCrossClusterSearchConnectionsResponse < Struct.new(
1119
+ :cross_cluster_search_connections,
1120
+ :next_token)
1121
+ include Aws::Structure
1122
+ end
1123
+
1124
+ # Filter to apply in `DescribePackage` response.
1125
+ #
1126
+ # @note When making an API call, you may pass DescribePackagesFilter
1127
+ # data as a hash:
1128
+ #
1129
+ # {
1130
+ # name: "PackageID", # accepts PackageID, PackageName, PackageStatus
1131
+ # value: ["DescribePackagesFilterValue"],
1132
+ # }
1133
+ #
1134
+ # @!attribute [rw] name
1135
+ # Any field from `PackageDetails`.
1136
+ # @return [String]
1137
+ #
1138
+ # @!attribute [rw] value
1139
+ # A list of values for the specified field.
1140
+ # @return [Array<String>]
1141
+ #
1142
+ class DescribePackagesFilter < Struct.new(
1143
+ :name,
1144
+ :value)
1145
+ include Aws::Structure
1146
+ end
1147
+
1148
+ # Container for request parameters to ` DescribePackage ` operation.
1149
+ #
1150
+ # @note When making an API call, you may pass DescribePackagesRequest
1151
+ # data as a hash:
1152
+ #
1153
+ # {
1154
+ # filters: [
1155
+ # {
1156
+ # name: "PackageID", # accepts PackageID, PackageName, PackageStatus
1157
+ # value: ["DescribePackagesFilterValue"],
1158
+ # },
1159
+ # ],
1160
+ # max_results: 1,
1161
+ # next_token: "NextToken",
1162
+ # }
1163
+ #
1164
+ # @!attribute [rw] filters
1165
+ # Only returns packages that match the `DescribePackagesFilterList`
1166
+ # values.
1167
+ # @return [Array<Types::DescribePackagesFilter>]
1168
+ #
1169
+ # @!attribute [rw] max_results
1170
+ # Limits results to a maximum number of packages.
1171
+ # @return [Integer]
1172
+ #
1173
+ # @!attribute [rw] next_token
1174
+ # Used for pagination. Only necessary if a previous API call includes
1175
+ # a non-null NextToken value. If provided, returns results for the
1176
+ # next page.
1177
+ # @return [String]
1178
+ #
1179
+ class DescribePackagesRequest < Struct.new(
1180
+ :filters,
1181
+ :max_results,
1182
+ :next_token)
1183
+ include Aws::Structure
1184
+ end
1185
+
1186
+ # Container for response returned by ` DescribePackages ` operation.
1187
+ #
1188
+ # @!attribute [rw] package_details_list
1189
+ # List of `PackageDetails` objects.
1190
+ # @return [Array<Types::PackageDetails>]
1191
+ #
1192
+ # @!attribute [rw] next_token
1193
+ # @return [String]
1194
+ #
1195
+ class DescribePackagesResponse < Struct.new(
1196
+ :package_details_list,
1197
+ :next_token)
1198
+ include Aws::Structure
1199
+ end
1200
+
690
1201
  # Container for parameters to
691
1202
  # `DescribeReservedElasticsearchInstanceOfferings`
692
1203
  #
@@ -794,6 +1305,42 @@ module Aws::ElasticsearchService
794
1305
  #
795
1306
  class DisabledOperationException < Aws::EmptyStructure; end
796
1307
 
1308
+ # Container for request parameters to ` DissociatePackage ` operation.
1309
+ #
1310
+ # @note When making an API call, you may pass DissociatePackageRequest
1311
+ # data as a hash:
1312
+ #
1313
+ # {
1314
+ # package_id: "PackageID", # required
1315
+ # domain_name: "DomainName", # required
1316
+ # }
1317
+ #
1318
+ # @!attribute [rw] package_id
1319
+ # Internal ID of the package that you want to associate with a domain.
1320
+ # Use `DescribePackages` to find this value.
1321
+ # @return [String]
1322
+ #
1323
+ # @!attribute [rw] domain_name
1324
+ # Name of the domain that you want to associate the package with.
1325
+ # @return [String]
1326
+ #
1327
+ class DissociatePackageRequest < Struct.new(
1328
+ :package_id,
1329
+ :domain_name)
1330
+ include Aws::Structure
1331
+ end
1332
+
1333
+ # Container for response returned by ` DissociatePackage ` operation.
1334
+ #
1335
+ # @!attribute [rw] domain_package_details
1336
+ # `DomainPackageDetails`
1337
+ # @return [Types::DomainPackageDetails]
1338
+ #
1339
+ class DissociatePackageResponse < Struct.new(
1340
+ :domain_package_details)
1341
+ include Aws::Structure
1342
+ end
1343
+
797
1344
  # Options to configure endpoint for the Elasticsearch domain.
798
1345
  #
799
1346
  # @note When making an API call, you may pass DomainEndpointOptions
@@ -852,6 +1399,84 @@ module Aws::ElasticsearchService
852
1399
  include Aws::Structure
853
1400
  end
854
1401
 
1402
+ # @note When making an API call, you may pass DomainInformation
1403
+ # data as a hash:
1404
+ #
1405
+ # {
1406
+ # owner_id: "OwnerId",
1407
+ # domain_name: "DomainName", # required
1408
+ # region: "Region",
1409
+ # }
1410
+ #
1411
+ # @!attribute [rw] owner_id
1412
+ # @return [String]
1413
+ #
1414
+ # @!attribute [rw] domain_name
1415
+ # The name of an Elasticsearch domain. Domain names are unique across
1416
+ # the domains owned by an account within an AWS region. Domain names
1417
+ # start with a letter or number and can contain the following
1418
+ # characters: a-z (lowercase), 0-9, and - (hyphen).
1419
+ # @return [String]
1420
+ #
1421
+ # @!attribute [rw] region
1422
+ # @return [String]
1423
+ #
1424
+ class DomainInformation < Struct.new(
1425
+ :owner_id,
1426
+ :domain_name,
1427
+ :region)
1428
+ include Aws::Structure
1429
+ end
1430
+
1431
+ # Information on a package that is associated with a domain.
1432
+ #
1433
+ # @!attribute [rw] package_id
1434
+ # Internal ID of the package.
1435
+ # @return [String]
1436
+ #
1437
+ # @!attribute [rw] package_name
1438
+ # User specified name of the package.
1439
+ # @return [String]
1440
+ #
1441
+ # @!attribute [rw] package_type
1442
+ # Currently supports only TXT-DICTIONARY.
1443
+ # @return [String]
1444
+ #
1445
+ # @!attribute [rw] last_updated
1446
+ # Timestamp of the most-recent update to the association status.
1447
+ # @return [Time]
1448
+ #
1449
+ # @!attribute [rw] domain_name
1450
+ # Name of the domain you've associated a package with.
1451
+ # @return [String]
1452
+ #
1453
+ # @!attribute [rw] domain_package_status
1454
+ # State of the association. Values are
1455
+ # ASSOCIATING/ASSOCIATION\_FAILED/ACTIVE/DISSOCIATING/DISSOCIATION\_FAILED.
1456
+ # @return [String]
1457
+ #
1458
+ # @!attribute [rw] reference_path
1459
+ # The relative path on Amazon ES nodes, which can be used as
1460
+ # synonym\_path when the package is synonym file.
1461
+ # @return [String]
1462
+ #
1463
+ # @!attribute [rw] error_details
1464
+ # Additional information if the package is in an error state. Null
1465
+ # otherwise.
1466
+ # @return [Types::ErrorDetails]
1467
+ #
1468
+ class DomainPackageDetails < Struct.new(
1469
+ :package_id,
1470
+ :package_name,
1471
+ :package_type,
1472
+ :last_updated,
1473
+ :domain_name,
1474
+ :domain_package_status,
1475
+ :reference_path,
1476
+ :error_details)
1477
+ include Aws::Structure
1478
+ end
1479
+
855
1480
  # Options to enable, disable, and specify the properties of EBS storage
856
1481
  # volumes. For more information, see [ Configuring EBS-based
857
1482
  # Storage][1].
@@ -1327,6 +1952,45 @@ module Aws::ElasticsearchService
1327
1952
  include Aws::Structure
1328
1953
  end
1329
1954
 
1955
+ # @!attribute [rw] error_type
1956
+ # @return [String]
1957
+ #
1958
+ # @!attribute [rw] error_message
1959
+ # @return [String]
1960
+ #
1961
+ class ErrorDetails < Struct.new(
1962
+ :error_type,
1963
+ :error_message)
1964
+ include Aws::Structure
1965
+ end
1966
+
1967
+ # A filter used to limit results when describing inbound or outbound
1968
+ # cross-cluster search connections. Multiple values can be specified per
1969
+ # filter. A cross-cluster search connection must match at least one of
1970
+ # the specified values for it to be returned from an operation.
1971
+ #
1972
+ # @note When making an API call, you may pass Filter
1973
+ # data as a hash:
1974
+ #
1975
+ # {
1976
+ # name: "NonEmptyString",
1977
+ # values: ["NonEmptyString"],
1978
+ # }
1979
+ #
1980
+ # @!attribute [rw] name
1981
+ # Specifies the name of the filter.
1982
+ # @return [String]
1983
+ #
1984
+ # @!attribute [rw] values
1985
+ # Contains one or more values for the filter.
1986
+ # @return [Array<String>]
1987
+ #
1988
+ class Filter < Struct.new(
1989
+ :name,
1990
+ :values)
1991
+ include Aws::Structure
1992
+ end
1993
+
1330
1994
  # Container for request parameters to `
1331
1995
  # GetCompatibleElasticsearchVersions ` operation.
1332
1996
  #
@@ -1466,6 +2130,63 @@ module Aws::ElasticsearchService
1466
2130
  include Aws::Structure
1467
2131
  end
1468
2132
 
2133
+ # Specifies details of an inbound connection.
2134
+ #
2135
+ # @!attribute [rw] source_domain_info
2136
+ # Specifies the `DomainInformation` for the source Elasticsearch
2137
+ # domain.
2138
+ # @return [Types::DomainInformation]
2139
+ #
2140
+ # @!attribute [rw] destination_domain_info
2141
+ # Specifies the `DomainInformation` for the destination Elasticsearch
2142
+ # domain.
2143
+ # @return [Types::DomainInformation]
2144
+ #
2145
+ # @!attribute [rw] cross_cluster_search_connection_id
2146
+ # Specifies the connection id for the inbound cross-cluster search
2147
+ # connection.
2148
+ # @return [String]
2149
+ #
2150
+ # @!attribute [rw] connection_status
2151
+ # Specifies the `InboundCrossClusterSearchConnectionStatus` for the
2152
+ # outbound connection.
2153
+ # @return [Types::InboundCrossClusterSearchConnectionStatus]
2154
+ #
2155
+ class InboundCrossClusterSearchConnection < Struct.new(
2156
+ :source_domain_info,
2157
+ :destination_domain_info,
2158
+ :cross_cluster_search_connection_id,
2159
+ :connection_status)
2160
+ include Aws::Structure
2161
+ end
2162
+
2163
+ # Specifies the coonection status of an inbound cross-cluster search
2164
+ # connection.
2165
+ #
2166
+ # @!attribute [rw] status_code
2167
+ # The state code for inbound connection. This can be one of the
2168
+ # following:
2169
+ #
2170
+ # * PENDING\_ACCEPTANCE: Inbound connection is not yet accepted by
2171
+ # destination domain owner.
2172
+ # * APPROVED: Inbound connection is pending acceptance by destination
2173
+ # domain owner.
2174
+ # * REJECTING: Inbound connection rejection is in process.
2175
+ # * REJECTED: Inbound connection is rejected.
2176
+ # * DELETING: Inbound connection deletion is in progress.
2177
+ # * DELETED: Inbound connection is deleted and cannot be used further.
2178
+ # @return [String]
2179
+ #
2180
+ # @!attribute [rw] message
2181
+ # Specifies verbose information for the inbound connection status.
2182
+ # @return [String]
2183
+ #
2184
+ class InboundCrossClusterSearchConnectionStatus < Struct.new(
2185
+ :status_code,
2186
+ :message)
2187
+ include Aws::Structure
2188
+ end
2189
+
1469
2190
  # InstanceCountLimits represents the limits on number of instances that
1470
2191
  # be created in Amazon Elasticsearch for given InstanceType.
1471
2192
  #
@@ -1504,6 +2225,11 @@ module Aws::ElasticsearchService
1504
2225
  #
1505
2226
  class InternalException < Aws::EmptyStructure; end
1506
2227
 
2228
+ # The request processing has failed because of invalid pagination token
2229
+ # provided by customer. Returns an HTTP status code of 400.
2230
+ #
2231
+ class InvalidPaginationTokenException < Aws::EmptyStructure; end
2232
+
1507
2233
  # An exception for trying to create or access sub-resource that is
1508
2234
  # either invalid or not supported. Gives http status code of 409.
1509
2235
  #
@@ -1552,6 +2278,55 @@ module Aws::ElasticsearchService
1552
2278
  include Aws::Structure
1553
2279
  end
1554
2280
 
2281
+ # Container for request parameters to ` ListDomainsForPackage `
2282
+ # operation.
2283
+ #
2284
+ # @note When making an API call, you may pass ListDomainsForPackageRequest
2285
+ # data as a hash:
2286
+ #
2287
+ # {
2288
+ # package_id: "PackageID", # required
2289
+ # max_results: 1,
2290
+ # next_token: "NextToken",
2291
+ # }
2292
+ #
2293
+ # @!attribute [rw] package_id
2294
+ # The package for which to list domains.
2295
+ # @return [String]
2296
+ #
2297
+ # @!attribute [rw] max_results
2298
+ # Limits results to a maximum number of domains.
2299
+ # @return [Integer]
2300
+ #
2301
+ # @!attribute [rw] next_token
2302
+ # Used for pagination. Only necessary if a previous API call includes
2303
+ # a non-null NextToken value. If provided, returns results for the
2304
+ # next page.
2305
+ # @return [String]
2306
+ #
2307
+ class ListDomainsForPackageRequest < Struct.new(
2308
+ :package_id,
2309
+ :max_results,
2310
+ :next_token)
2311
+ include Aws::Structure
2312
+ end
2313
+
2314
+ # Container for response parameters to ` ListDomainsForPackage `
2315
+ # operation.
2316
+ #
2317
+ # @!attribute [rw] domain_package_details_list
2318
+ # List of `DomainPackageDetails` objects.
2319
+ # @return [Array<Types::DomainPackageDetails>]
2320
+ #
2321
+ # @!attribute [rw] next_token
2322
+ # @return [String]
2323
+ #
2324
+ class ListDomainsForPackageResponse < Struct.new(
2325
+ :domain_package_details_list,
2326
+ :next_token)
2327
+ include Aws::Structure
2328
+ end
2329
+
1555
2330
  # Container for the parameters to the ` ListElasticsearchInstanceTypes `
1556
2331
  # operation.
1557
2332
  #
@@ -1668,6 +2443,58 @@ module Aws::ElasticsearchService
1668
2443
  include Aws::Structure
1669
2444
  end
1670
2445
 
2446
+ # Container for request parameters to ` ListPackagesForDomain `
2447
+ # operation.
2448
+ #
2449
+ # @note When making an API call, you may pass ListPackagesForDomainRequest
2450
+ # data as a hash:
2451
+ #
2452
+ # {
2453
+ # domain_name: "DomainName", # required
2454
+ # max_results: 1,
2455
+ # next_token: "NextToken",
2456
+ # }
2457
+ #
2458
+ # @!attribute [rw] domain_name
2459
+ # The name of the domain for which you want to list associated
2460
+ # packages.
2461
+ # @return [String]
2462
+ #
2463
+ # @!attribute [rw] max_results
2464
+ # Limits results to a maximum number of packages.
2465
+ # @return [Integer]
2466
+ #
2467
+ # @!attribute [rw] next_token
2468
+ # Used for pagination. Only necessary if a previous API call includes
2469
+ # a non-null NextToken value. If provided, returns results for the
2470
+ # next page.
2471
+ # @return [String]
2472
+ #
2473
+ class ListPackagesForDomainRequest < Struct.new(
2474
+ :domain_name,
2475
+ :max_results,
2476
+ :next_token)
2477
+ include Aws::Structure
2478
+ end
2479
+
2480
+ # Container for response parameters to ` ListPackagesForDomain `
2481
+ # operation.
2482
+ #
2483
+ # @!attribute [rw] domain_package_details_list
2484
+ # List of `DomainPackageDetails` objects.
2485
+ # @return [Array<Types::DomainPackageDetails>]
2486
+ #
2487
+ # @!attribute [rw] next_token
2488
+ # Pagination token that needs to be supplied to the next call to get
2489
+ # the next page of results.
2490
+ # @return [String]
2491
+ #
2492
+ class ListPackagesForDomainResponse < Struct.new(
2493
+ :domain_package_details_list,
2494
+ :next_token)
2495
+ include Aws::Structure
2496
+ end
2497
+
1671
2498
  # Container for the parameters to the `ListTags` operation. Specify the
1672
2499
  # `ARN` for the Elasticsearch domain to which the tags are attached that
1673
2500
  # you want to view are attached.
@@ -1849,6 +2676,140 @@ module Aws::ElasticsearchService
1849
2676
  include Aws::Structure
1850
2677
  end
1851
2678
 
2679
+ # Specifies details of an outbound connection.
2680
+ #
2681
+ # @!attribute [rw] source_domain_info
2682
+ # Specifies the `DomainInformation` for the source Elasticsearch
2683
+ # domain.
2684
+ # @return [Types::DomainInformation]
2685
+ #
2686
+ # @!attribute [rw] destination_domain_info
2687
+ # Specifies the `DomainInformation` for the destination Elasticsearch
2688
+ # domain.
2689
+ # @return [Types::DomainInformation]
2690
+ #
2691
+ # @!attribute [rw] cross_cluster_search_connection_id
2692
+ # Specifies the connection id for the outbound cross-cluster search
2693
+ # connection.
2694
+ # @return [String]
2695
+ #
2696
+ # @!attribute [rw] connection_alias
2697
+ # Specifies the connection alias for the outbound cross-cluster search
2698
+ # connection.
2699
+ # @return [String]
2700
+ #
2701
+ # @!attribute [rw] connection_status
2702
+ # Specifies the `OutboundCrossClusterSearchConnectionStatus` for the
2703
+ # outbound connection.
2704
+ # @return [Types::OutboundCrossClusterSearchConnectionStatus]
2705
+ #
2706
+ class OutboundCrossClusterSearchConnection < Struct.new(
2707
+ :source_domain_info,
2708
+ :destination_domain_info,
2709
+ :cross_cluster_search_connection_id,
2710
+ :connection_alias,
2711
+ :connection_status)
2712
+ include Aws::Structure
2713
+ end
2714
+
2715
+ # Specifies the connection status of an outbound cross-cluster search
2716
+ # connection.
2717
+ #
2718
+ # @!attribute [rw] status_code
2719
+ # The state code for outbound connection. This can be one of the
2720
+ # following:
2721
+ #
2722
+ # * VALIDATING: The outbound connection request is being validated.
2723
+ # * VALIDATION\_FAILED: Validation failed for the connection request.
2724
+ # * PENDING\_ACCEPTANCE: Outbound connection request is validated and
2725
+ # is not yet accepted by destination domain owner.
2726
+ # * PROVISIONING: Outbound connection request is in process.
2727
+ # * ACTIVE: Outbound connection is active and ready to use.
2728
+ # * REJECTED: Outbound connection request is rejected by destination
2729
+ # domain owner.
2730
+ # * DELETING: Outbound connection deletion is in progress.
2731
+ # * DELETED: Outbound connection is deleted and cannot be used
2732
+ # further.
2733
+ # @return [String]
2734
+ #
2735
+ # @!attribute [rw] message
2736
+ # Specifies verbose information for the outbound connection status.
2737
+ # @return [String]
2738
+ #
2739
+ class OutboundCrossClusterSearchConnectionStatus < Struct.new(
2740
+ :status_code,
2741
+ :message)
2742
+ include Aws::Structure
2743
+ end
2744
+
2745
+ # Basic information about a package.
2746
+ #
2747
+ # @!attribute [rw] package_id
2748
+ # Internal ID of the package.
2749
+ # @return [String]
2750
+ #
2751
+ # @!attribute [rw] package_name
2752
+ # User specified name of the package.
2753
+ # @return [String]
2754
+ #
2755
+ # @!attribute [rw] package_type
2756
+ # Currently supports only TXT-DICTIONARY.
2757
+ # @return [String]
2758
+ #
2759
+ # @!attribute [rw] package_description
2760
+ # User-specified description of the package.
2761
+ # @return [String]
2762
+ #
2763
+ # @!attribute [rw] package_status
2764
+ # Current state of the package. Values are
2765
+ # COPYING/COPY\_FAILED/AVAILABLE/DELETING/DELETE\_FAILED
2766
+ # @return [String]
2767
+ #
2768
+ # @!attribute [rw] created_at
2769
+ # Timestamp which tells creation date of the package.
2770
+ # @return [Time]
2771
+ #
2772
+ # @!attribute [rw] error_details
2773
+ # Additional information if the package is in an error state. Null
2774
+ # otherwise.
2775
+ # @return [Types::ErrorDetails]
2776
+ #
2777
+ class PackageDetails < Struct.new(
2778
+ :package_id,
2779
+ :package_name,
2780
+ :package_type,
2781
+ :package_description,
2782
+ :package_status,
2783
+ :created_at,
2784
+ :error_details)
2785
+ include Aws::Structure
2786
+ end
2787
+
2788
+ # The S3 location for importing the package specified as `S3BucketName`
2789
+ # and `S3Key`
2790
+ #
2791
+ # @note When making an API call, you may pass PackageSource
2792
+ # data as a hash:
2793
+ #
2794
+ # {
2795
+ # s3_bucket_name: "S3BucketName",
2796
+ # s3_key: "S3Key",
2797
+ # }
2798
+ #
2799
+ # @!attribute [rw] s3_bucket_name
2800
+ # Name of the bucket containing the package.
2801
+ # @return [String]
2802
+ #
2803
+ # @!attribute [rw] s3_key
2804
+ # Key (file name) of the package.
2805
+ # @return [String]
2806
+ #
2807
+ class PackageSource < Struct.new(
2808
+ :s3_bucket_name,
2809
+ :s3_key)
2810
+ include Aws::Structure
2811
+ end
2812
+
1852
2813
  # Container for parameters to
1853
2814
  # `PurchaseReservedElasticsearchInstanceOffering`
1854
2815
  #
@@ -1915,6 +2876,38 @@ module Aws::ElasticsearchService
1915
2876
  include Aws::Structure
1916
2877
  end
1917
2878
 
2879
+ # Container for the parameters to the
2880
+ # `RejectInboundCrossClusterSearchConnection` operation.
2881
+ #
2882
+ # @note When making an API call, you may pass RejectInboundCrossClusterSearchConnectionRequest
2883
+ # data as a hash:
2884
+ #
2885
+ # {
2886
+ # cross_cluster_search_connection_id: "CrossClusterSearchConnectionId", # required
2887
+ # }
2888
+ #
2889
+ # @!attribute [rw] cross_cluster_search_connection_id
2890
+ # The id of the inbound connection that you want to reject.
2891
+ # @return [String]
2892
+ #
2893
+ class RejectInboundCrossClusterSearchConnectionRequest < Struct.new(
2894
+ :cross_cluster_search_connection_id)
2895
+ include Aws::Structure
2896
+ end
2897
+
2898
+ # The result of a `RejectInboundCrossClusterSearchConnection` operation.
2899
+ # Contains details of rejected inbound connection.
2900
+ #
2901
+ # @!attribute [rw] cross_cluster_search_connection
2902
+ # Specifies the `InboundCrossClusterSearchConnection` of rejected
2903
+ # inbound connection.
2904
+ # @return [Types::InboundCrossClusterSearchConnection]
2905
+ #
2906
+ class RejectInboundCrossClusterSearchConnectionResponse < Struct.new(
2907
+ :cross_cluster_search_connection)
2908
+ include Aws::Structure
2909
+ end
2910
+
1918
2911
  # Container for the parameters to the `RemoveTags` operation. Specify
1919
2912
  # the `ARN` for the Elasticsearch domain from which you want to remove
1920
2913
  # the specified `TagKey`.
@@ -2119,6 +3112,12 @@ module Aws::ElasticsearchService
2119
3112
  # your service software.
2120
3113
  # @return [Time]
2121
3114
  #
3115
+ # @!attribute [rw] optional_deployment
3116
+ # `True` if a service software is never automatically updated. `False`
3117
+ # if a service software is automatically updated after
3118
+ # `AutomatedUpdateDate`.
3119
+ # @return [Boolean]
3120
+ #
2122
3121
  class ServiceSoftwareOptions < Struct.new(
2123
3122
  :current_version,
2124
3123
  :new_version,
@@ -2126,7 +3125,8 @@ module Aws::ElasticsearchService
2126
3125
  :cancellable,
2127
3126
  :update_status,
2128
3127
  :description,
2129
- :automated_update_date)
3128
+ :automated_update_date,
3129
+ :optional_deployment)
2130
3130
  include Aws::Structure
2131
3131
  end
2132
3132