aws-sdk-servicediscovery 1.19.0 → 1.24.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -11,6 +11,7 @@ module Aws::ServiceDiscovery
11
11
 
12
12
  include Seahorse::Model
13
13
 
14
+ AmazonResourceName = Shapes::StringShape.new(name: 'AmazonResourceName')
14
15
  Arn = Shapes::StringShape.new(name: 'Arn')
15
16
  AttrKey = Shapes::StringShape.new(name: 'AttrKey')
16
17
  AttrValue = Shapes::StringShape.new(name: 'AttrValue')
@@ -34,6 +35,7 @@ module Aws::ServiceDiscovery
34
35
  DeregisterInstanceResponse = Shapes::StructureShape.new(name: 'DeregisterInstanceResponse')
35
36
  DiscoverInstancesRequest = Shapes::StructureShape.new(name: 'DiscoverInstancesRequest')
36
37
  DiscoverInstancesResponse = Shapes::StructureShape.new(name: 'DiscoverInstancesResponse')
38
+ DiscoverMaxResults = Shapes::IntegerShape.new(name: 'DiscoverMaxResults')
37
39
  DnsConfig = Shapes::StructureShape.new(name: 'DnsConfig')
38
40
  DnsConfigChange = Shapes::StructureShape.new(name: 'DnsConfigChange')
39
41
  DnsProperties = Shapes::StructureShape.new(name: 'DnsProperties')
@@ -78,6 +80,8 @@ module Aws::ServiceDiscovery
78
80
  ListOperationsResponse = Shapes::StructureShape.new(name: 'ListOperationsResponse')
79
81
  ListServicesRequest = Shapes::StructureShape.new(name: 'ListServicesRequest')
80
82
  ListServicesResponse = Shapes::StructureShape.new(name: 'ListServicesResponse')
83
+ ListTagsForResourceRequest = Shapes::StructureShape.new(name: 'ListTagsForResourceRequest')
84
+ ListTagsForResourceResponse = Shapes::StructureShape.new(name: 'ListTagsForResourceResponse')
81
85
  MaxResults = Shapes::IntegerShape.new(name: 'MaxResults')
82
86
  Message = Shapes::StringShape.new(name: 'Message')
83
87
  Namespace = Shapes::StructureShape.new(name: 'Namespace')
@@ -108,11 +112,13 @@ module Aws::ServiceDiscovery
108
112
  RecordType = Shapes::StringShape.new(name: 'RecordType')
109
113
  RegisterInstanceRequest = Shapes::StructureShape.new(name: 'RegisterInstanceRequest')
110
114
  RegisterInstanceResponse = Shapes::StructureShape.new(name: 'RegisterInstanceResponse')
115
+ RequestLimitExceeded = Shapes::StructureShape.new(name: 'RequestLimitExceeded')
111
116
  ResourceCount = Shapes::IntegerShape.new(name: 'ResourceCount')
112
117
  ResourceDescription = Shapes::StringShape.new(name: 'ResourceDescription')
113
118
  ResourceId = Shapes::StringShape.new(name: 'ResourceId')
114
119
  ResourceInUse = Shapes::StructureShape.new(name: 'ResourceInUse')
115
120
  ResourceLimitExceeded = Shapes::StructureShape.new(name: 'ResourceLimitExceeded')
121
+ ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
116
122
  ResourcePath = Shapes::StringShape.new(name: 'ResourcePath')
117
123
  RoutingPolicy = Shapes::StringShape.new(name: 'RoutingPolicy')
118
124
  Service = Shapes::StructureShape.new(name: 'Service')
@@ -125,7 +131,17 @@ module Aws::ServiceDiscovery
125
131
  ServiceNotFound = Shapes::StructureShape.new(name: 'ServiceNotFound')
126
132
  ServiceSummariesList = Shapes::ListShape.new(name: 'ServiceSummariesList')
127
133
  ServiceSummary = Shapes::StructureShape.new(name: 'ServiceSummary')
134
+ Tag = Shapes::StructureShape.new(name: 'Tag')
135
+ TagKey = Shapes::StringShape.new(name: 'TagKey')
136
+ TagKeyList = Shapes::ListShape.new(name: 'TagKeyList')
137
+ TagList = Shapes::ListShape.new(name: 'TagList')
138
+ TagResourceRequest = Shapes::StructureShape.new(name: 'TagResourceRequest')
139
+ TagResourceResponse = Shapes::StructureShape.new(name: 'TagResourceResponse')
140
+ TagValue = Shapes::StringShape.new(name: 'TagValue')
128
141
  Timestamp = Shapes::TimestampShape.new(name: 'Timestamp')
142
+ TooManyTagsException = Shapes::StructureShape.new(name: 'TooManyTagsException')
143
+ UntagResourceRequest = Shapes::StructureShape.new(name: 'UntagResourceRequest')
144
+ UntagResourceResponse = Shapes::StructureShape.new(name: 'UntagResourceResponse')
129
145
  UpdateInstanceCustomHealthStatusRequest = Shapes::StructureShape.new(name: 'UpdateInstanceCustomHealthStatusRequest')
130
146
  UpdateServiceRequest = Shapes::StructureShape.new(name: 'UpdateServiceRequest')
131
147
  UpdateServiceResponse = Shapes::StructureShape.new(name: 'UpdateServiceResponse')
@@ -136,6 +152,7 @@ module Aws::ServiceDiscovery
136
152
  CreateHttpNamespaceRequest.add_member(:name, Shapes::ShapeRef.new(shape: NamespaceName, required: true, location_name: "Name"))
137
153
  CreateHttpNamespaceRequest.add_member(:creator_request_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "CreatorRequestId", metadata: {"idempotencyToken"=>true}))
138
154
  CreateHttpNamespaceRequest.add_member(:description, Shapes::ShapeRef.new(shape: ResourceDescription, location_name: "Description"))
155
+ CreateHttpNamespaceRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
139
156
  CreateHttpNamespaceRequest.struct_class = Types::CreateHttpNamespaceRequest
140
157
 
141
158
  CreateHttpNamespaceResponse.add_member(:operation_id, Shapes::ShapeRef.new(shape: OperationId, location_name: "OperationId"))
@@ -145,6 +162,7 @@ module Aws::ServiceDiscovery
145
162
  CreatePrivateDnsNamespaceRequest.add_member(:creator_request_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "CreatorRequestId", metadata: {"idempotencyToken"=>true}))
146
163
  CreatePrivateDnsNamespaceRequest.add_member(:description, Shapes::ShapeRef.new(shape: ResourceDescription, location_name: "Description"))
147
164
  CreatePrivateDnsNamespaceRequest.add_member(:vpc, Shapes::ShapeRef.new(shape: ResourceId, required: true, location_name: "Vpc"))
165
+ CreatePrivateDnsNamespaceRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
148
166
  CreatePrivateDnsNamespaceRequest.struct_class = Types::CreatePrivateDnsNamespaceRequest
149
167
 
150
168
  CreatePrivateDnsNamespaceResponse.add_member(:operation_id, Shapes::ShapeRef.new(shape: OperationId, location_name: "OperationId"))
@@ -153,6 +171,7 @@ module Aws::ServiceDiscovery
153
171
  CreatePublicDnsNamespaceRequest.add_member(:name, Shapes::ShapeRef.new(shape: NamespaceName, required: true, location_name: "Name"))
154
172
  CreatePublicDnsNamespaceRequest.add_member(:creator_request_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "CreatorRequestId", metadata: {"idempotencyToken"=>true}))
155
173
  CreatePublicDnsNamespaceRequest.add_member(:description, Shapes::ShapeRef.new(shape: ResourceDescription, location_name: "Description"))
174
+ CreatePublicDnsNamespaceRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
156
175
  CreatePublicDnsNamespaceRequest.struct_class = Types::CreatePublicDnsNamespaceRequest
157
176
 
158
177
  CreatePublicDnsNamespaceResponse.add_member(:operation_id, Shapes::ShapeRef.new(shape: OperationId, location_name: "OperationId"))
@@ -165,6 +184,7 @@ module Aws::ServiceDiscovery
165
184
  CreateServiceRequest.add_member(:dns_config, Shapes::ShapeRef.new(shape: DnsConfig, location_name: "DnsConfig"))
166
185
  CreateServiceRequest.add_member(:health_check_config, Shapes::ShapeRef.new(shape: HealthCheckConfig, location_name: "HealthCheckConfig"))
167
186
  CreateServiceRequest.add_member(:health_check_custom_config, Shapes::ShapeRef.new(shape: HealthCheckCustomConfig, location_name: "HealthCheckCustomConfig"))
187
+ CreateServiceRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
168
188
  CreateServiceRequest.struct_class = Types::CreateServiceRequest
169
189
 
170
190
  CreateServiceResponse.add_member(:service, Shapes::ShapeRef.new(shape: Service, location_name: "Service"))
@@ -193,7 +213,7 @@ module Aws::ServiceDiscovery
193
213
 
194
214
  DiscoverInstancesRequest.add_member(:namespace_name, Shapes::ShapeRef.new(shape: NamespaceName, required: true, location_name: "NamespaceName"))
195
215
  DiscoverInstancesRequest.add_member(:service_name, Shapes::ShapeRef.new(shape: ServiceName, required: true, location_name: "ServiceName"))
196
- DiscoverInstancesRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "MaxResults"))
216
+ DiscoverInstancesRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: DiscoverMaxResults, location_name: "MaxResults"))
197
217
  DiscoverInstancesRequest.add_member(:query_parameters, Shapes::ShapeRef.new(shape: Attributes, location_name: "QueryParameters"))
198
218
  DiscoverInstancesRequest.add_member(:health_status, Shapes::ShapeRef.new(shape: HealthStatusFilter, location_name: "HealthStatus"))
199
219
  DiscoverInstancesRequest.struct_class = Types::DiscoverInstancesRequest
@@ -337,6 +357,12 @@ module Aws::ServiceDiscovery
337
357
  ListServicesResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
338
358
  ListServicesResponse.struct_class = Types::ListServicesResponse
339
359
 
360
+ ListTagsForResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: AmazonResourceName, required: true, location_name: "ResourceARN"))
361
+ ListTagsForResourceRequest.struct_class = Types::ListTagsForResourceRequest
362
+
363
+ ListTagsForResourceResponse.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
364
+ ListTagsForResourceResponse.struct_class = Types::ListTagsForResourceResponse
365
+
340
366
  Namespace.add_member(:id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "Id"))
341
367
  Namespace.add_member(:arn, Shapes::ShapeRef.new(shape: Arn, location_name: "Arn"))
342
368
  Namespace.add_member(:name, Shapes::ShapeRef.new(shape: NamespaceName, location_name: "Name"))
@@ -417,12 +443,18 @@ module Aws::ServiceDiscovery
417
443
  RegisterInstanceResponse.add_member(:operation_id, Shapes::ShapeRef.new(shape: OperationId, location_name: "OperationId"))
418
444
  RegisterInstanceResponse.struct_class = Types::RegisterInstanceResponse
419
445
 
446
+ RequestLimitExceeded.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
447
+ RequestLimitExceeded.struct_class = Types::RequestLimitExceeded
448
+
420
449
  ResourceInUse.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
421
450
  ResourceInUse.struct_class = Types::ResourceInUse
422
451
 
423
452
  ResourceLimitExceeded.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
424
453
  ResourceLimitExceeded.struct_class = Types::ResourceLimitExceeded
425
454
 
455
+ ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
456
+ ResourceNotFoundException.struct_class = Types::ResourceNotFoundException
457
+
426
458
  Service.add_member(:id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "Id"))
427
459
  Service.add_member(:arn, Shapes::ShapeRef.new(shape: Arn, location_name: "Arn"))
428
460
  Service.add_member(:name, Shapes::ShapeRef.new(shape: ServiceName, location_name: "Name"))
@@ -442,7 +474,7 @@ module Aws::ServiceDiscovery
442
474
  ServiceAlreadyExists.struct_class = Types::ServiceAlreadyExists
443
475
 
444
476
  ServiceChange.add_member(:description, Shapes::ShapeRef.new(shape: ResourceDescription, location_name: "Description"))
445
- ServiceChange.add_member(:dns_config, Shapes::ShapeRef.new(shape: DnsConfigChange, required: true, location_name: "DnsConfig"))
477
+ ServiceChange.add_member(:dns_config, Shapes::ShapeRef.new(shape: DnsConfigChange, location_name: "DnsConfig"))
446
478
  ServiceChange.add_member(:health_check_config, Shapes::ShapeRef.new(shape: HealthCheckConfig, location_name: "HealthCheckConfig"))
447
479
  ServiceChange.struct_class = Types::ServiceChange
448
480
 
@@ -469,6 +501,30 @@ module Aws::ServiceDiscovery
469
501
  ServiceSummary.add_member(:create_date, Shapes::ShapeRef.new(shape: Timestamp, location_name: "CreateDate"))
470
502
  ServiceSummary.struct_class = Types::ServiceSummary
471
503
 
504
+ Tag.add_member(:key, Shapes::ShapeRef.new(shape: TagKey, required: true, location_name: "Key"))
505
+ Tag.add_member(:value, Shapes::ShapeRef.new(shape: TagValue, required: true, location_name: "Value"))
506
+ Tag.struct_class = Types::Tag
507
+
508
+ TagKeyList.member = Shapes::ShapeRef.new(shape: TagKey)
509
+
510
+ TagList.member = Shapes::ShapeRef.new(shape: Tag)
511
+
512
+ TagResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: AmazonResourceName, required: true, location_name: "ResourceARN"))
513
+ TagResourceRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, required: true, location_name: "Tags"))
514
+ TagResourceRequest.struct_class = Types::TagResourceRequest
515
+
516
+ TagResourceResponse.struct_class = Types::TagResourceResponse
517
+
518
+ TooManyTagsException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
519
+ TooManyTagsException.add_member(:resource_name, Shapes::ShapeRef.new(shape: AmazonResourceName, location_name: "ResourceName"))
520
+ TooManyTagsException.struct_class = Types::TooManyTagsException
521
+
522
+ UntagResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: AmazonResourceName, required: true, location_name: "ResourceARN"))
523
+ UntagResourceRequest.add_member(:tag_keys, Shapes::ShapeRef.new(shape: TagKeyList, required: true, location_name: "TagKeys"))
524
+ UntagResourceRequest.struct_class = Types::UntagResourceRequest
525
+
526
+ UntagResourceResponse.struct_class = Types::UntagResourceResponse
527
+
472
528
  UpdateInstanceCustomHealthStatusRequest.add_member(:service_id, Shapes::ShapeRef.new(shape: ResourceId, required: true, location_name: "ServiceId"))
473
529
  UpdateInstanceCustomHealthStatusRequest.add_member(:instance_id, Shapes::ShapeRef.new(shape: ResourceId, required: true, location_name: "InstanceId"))
474
530
  UpdateInstanceCustomHealthStatusRequest.add_member(:status, Shapes::ShapeRef.new(shape: CustomHealthStatus, required: true, location_name: "Status"))
@@ -510,6 +566,7 @@ module Aws::ServiceDiscovery
510
566
  o.errors << Shapes::ShapeRef.new(shape: NamespaceAlreadyExists)
511
567
  o.errors << Shapes::ShapeRef.new(shape: ResourceLimitExceeded)
512
568
  o.errors << Shapes::ShapeRef.new(shape: DuplicateRequest)
569
+ o.errors << Shapes::ShapeRef.new(shape: TooManyTagsException)
513
570
  end)
514
571
 
515
572
  api.add_operation(:create_private_dns_namespace, Seahorse::Model::Operation.new.tap do |o|
@@ -522,6 +579,7 @@ module Aws::ServiceDiscovery
522
579
  o.errors << Shapes::ShapeRef.new(shape: NamespaceAlreadyExists)
523
580
  o.errors << Shapes::ShapeRef.new(shape: ResourceLimitExceeded)
524
581
  o.errors << Shapes::ShapeRef.new(shape: DuplicateRequest)
582
+ o.errors << Shapes::ShapeRef.new(shape: TooManyTagsException)
525
583
  end)
526
584
 
527
585
  api.add_operation(:create_public_dns_namespace, Seahorse::Model::Operation.new.tap do |o|
@@ -534,6 +592,7 @@ module Aws::ServiceDiscovery
534
592
  o.errors << Shapes::ShapeRef.new(shape: NamespaceAlreadyExists)
535
593
  o.errors << Shapes::ShapeRef.new(shape: ResourceLimitExceeded)
536
594
  o.errors << Shapes::ShapeRef.new(shape: DuplicateRequest)
595
+ o.errors << Shapes::ShapeRef.new(shape: TooManyTagsException)
537
596
  end)
538
597
 
539
598
  api.add_operation(:create_service, Seahorse::Model::Operation.new.tap do |o|
@@ -546,6 +605,7 @@ module Aws::ServiceDiscovery
546
605
  o.errors << Shapes::ShapeRef.new(shape: ResourceLimitExceeded)
547
606
  o.errors << Shapes::ShapeRef.new(shape: NamespaceNotFound)
548
607
  o.errors << Shapes::ShapeRef.new(shape: ServiceAlreadyExists)
608
+ o.errors << Shapes::ShapeRef.new(shape: TooManyTagsException)
549
609
  end)
550
610
 
551
611
  api.add_operation(:delete_namespace, Seahorse::Model::Operation.new.tap do |o|
@@ -596,6 +656,7 @@ module Aws::ServiceDiscovery
596
656
  o.errors << Shapes::ShapeRef.new(shape: ServiceNotFound)
597
657
  o.errors << Shapes::ShapeRef.new(shape: NamespaceNotFound)
598
658
  o.errors << Shapes::ShapeRef.new(shape: InvalidInput)
659
+ o.errors << Shapes::ShapeRef.new(shape: RequestLimitExceeded)
599
660
  end)
600
661
 
601
662
  api.add_operation(:get_instance, Seahorse::Model::Operation.new.tap do |o|
@@ -717,6 +778,16 @@ module Aws::ServiceDiscovery
717
778
  )
718
779
  end)
719
780
 
781
+ api.add_operation(:list_tags_for_resource, Seahorse::Model::Operation.new.tap do |o|
782
+ o.name = "ListTagsForResource"
783
+ o.http_method = "POST"
784
+ o.http_request_uri = "/"
785
+ o.input = Shapes::ShapeRef.new(shape: ListTagsForResourceRequest)
786
+ o.output = Shapes::ShapeRef.new(shape: ListTagsForResourceResponse)
787
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
788
+ o.errors << Shapes::ShapeRef.new(shape: InvalidInput)
789
+ end)
790
+
720
791
  api.add_operation(:register_instance, Seahorse::Model::Operation.new.tap do |o|
721
792
  o.name = "RegisterInstance"
722
793
  o.http_method = "POST"
@@ -730,6 +801,27 @@ module Aws::ServiceDiscovery
730
801
  o.errors << Shapes::ShapeRef.new(shape: ServiceNotFound)
731
802
  end)
732
803
 
804
+ api.add_operation(:tag_resource, Seahorse::Model::Operation.new.tap do |o|
805
+ o.name = "TagResource"
806
+ o.http_method = "POST"
807
+ o.http_request_uri = "/"
808
+ o.input = Shapes::ShapeRef.new(shape: TagResourceRequest)
809
+ o.output = Shapes::ShapeRef.new(shape: TagResourceResponse)
810
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
811
+ o.errors << Shapes::ShapeRef.new(shape: TooManyTagsException)
812
+ o.errors << Shapes::ShapeRef.new(shape: InvalidInput)
813
+ end)
814
+
815
+ api.add_operation(:untag_resource, Seahorse::Model::Operation.new.tap do |o|
816
+ o.name = "UntagResource"
817
+ o.http_method = "POST"
818
+ o.http_request_uri = "/"
819
+ o.input = Shapes::ShapeRef.new(shape: UntagResourceRequest)
820
+ o.output = Shapes::ShapeRef.new(shape: UntagResourceResponse)
821
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
822
+ o.errors << Shapes::ShapeRef.new(shape: InvalidInput)
823
+ end)
824
+
733
825
  api.add_operation(:update_instance_custom_health_status, Seahorse::Model::Operation.new.tap do |o|
734
826
  o.name = "UpdateInstanceCustomHealthStatus"
735
827
  o.http_method = "POST"
@@ -6,6 +6,42 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::ServiceDiscovery
9
+
10
+ # When ServiceDiscovery returns an error response, the Ruby SDK constructs and raises an error.
11
+ # These errors all extend Aws::ServiceDiscovery::Errors::ServiceError < {Aws::Errors::ServiceError}
12
+ #
13
+ # You can rescue all ServiceDiscovery errors using ServiceError:
14
+ #
15
+ # begin
16
+ # # do stuff
17
+ # rescue Aws::ServiceDiscovery::Errors::ServiceError
18
+ # # rescues all ServiceDiscovery API errors
19
+ # end
20
+ #
21
+ #
22
+ # ## Request Context
23
+ # ServiceError objects have a {Aws::Errors::ServiceError#context #context} method that returns
24
+ # information about the request that generated the error.
25
+ # See {Seahorse::Client::RequestContext} for more information.
26
+ #
27
+ # ## Error Classes
28
+ # * {CustomHealthNotFound}
29
+ # * {DuplicateRequest}
30
+ # * {InstanceNotFound}
31
+ # * {InvalidInput}
32
+ # * {NamespaceAlreadyExists}
33
+ # * {NamespaceNotFound}
34
+ # * {OperationNotFound}
35
+ # * {RequestLimitExceeded}
36
+ # * {ResourceInUse}
37
+ # * {ResourceLimitExceeded}
38
+ # * {ResourceNotFoundException}
39
+ # * {ServiceAlreadyExists}
40
+ # * {ServiceNotFound}
41
+ # * {TooManyTagsException}
42
+ #
43
+ # Additionally, error classes are dynamically generated for service errors based on the error code
44
+ # if they are not defined above.
9
45
  module Errors
10
46
 
11
47
  extend Aws::Errors::DynamicErrors
@@ -23,7 +59,6 @@ module Aws::ServiceDiscovery
23
59
  def message
24
60
  @message || @data[:message]
25
61
  end
26
-
27
62
  end
28
63
 
29
64
  class DuplicateRequest < ServiceError
@@ -44,7 +79,6 @@ module Aws::ServiceDiscovery
44
79
  def duplicate_operation_id
45
80
  @data[:duplicate_operation_id]
46
81
  end
47
-
48
82
  end
49
83
 
50
84
  class InstanceNotFound < ServiceError
@@ -60,7 +94,6 @@ module Aws::ServiceDiscovery
60
94
  def message
61
95
  @message || @data[:message]
62
96
  end
63
-
64
97
  end
65
98
 
66
99
  class InvalidInput < ServiceError
@@ -76,7 +109,6 @@ module Aws::ServiceDiscovery
76
109
  def message
77
110
  @message || @data[:message]
78
111
  end
79
-
80
112
  end
81
113
 
82
114
  class NamespaceAlreadyExists < ServiceError
@@ -102,7 +134,6 @@ module Aws::ServiceDiscovery
102
134
  def namespace_id
103
135
  @data[:namespace_id]
104
136
  end
105
-
106
137
  end
107
138
 
108
139
  class NamespaceNotFound < ServiceError
@@ -118,7 +149,6 @@ module Aws::ServiceDiscovery
118
149
  def message
119
150
  @message || @data[:message]
120
151
  end
121
-
122
152
  end
123
153
 
124
154
  class OperationNotFound < ServiceError
@@ -134,7 +164,21 @@ module Aws::ServiceDiscovery
134
164
  def message
135
165
  @message || @data[:message]
136
166
  end
167
+ end
168
+
169
+ class RequestLimitExceeded < ServiceError
170
+
171
+ # @param [Seahorse::Client::RequestContext] context
172
+ # @param [String] message
173
+ # @param [Aws::ServiceDiscovery::Types::RequestLimitExceeded] data
174
+ def initialize(context, message, data = Aws::EmptyStructure.new)
175
+ super(context, message, data)
176
+ end
137
177
 
178
+ # @return [String]
179
+ def message
180
+ @message || @data[:message]
181
+ end
138
182
  end
139
183
 
140
184
  class ResourceInUse < ServiceError
@@ -150,7 +194,6 @@ module Aws::ServiceDiscovery
150
194
  def message
151
195
  @message || @data[:message]
152
196
  end
153
-
154
197
  end
155
198
 
156
199
  class ResourceLimitExceeded < ServiceError
@@ -166,7 +209,21 @@ module Aws::ServiceDiscovery
166
209
  def message
167
210
  @message || @data[:message]
168
211
  end
212
+ end
213
+
214
+ class ResourceNotFoundException < ServiceError
215
+
216
+ # @param [Seahorse::Client::RequestContext] context
217
+ # @param [String] message
218
+ # @param [Aws::ServiceDiscovery::Types::ResourceNotFoundException] data
219
+ def initialize(context, message, data = Aws::EmptyStructure.new)
220
+ super(context, message, data)
221
+ end
169
222
 
223
+ # @return [String]
224
+ def message
225
+ @message || @data[:message]
226
+ end
170
227
  end
171
228
 
172
229
  class ServiceAlreadyExists < ServiceError
@@ -192,7 +249,6 @@ module Aws::ServiceDiscovery
192
249
  def service_id
193
250
  @data[:service_id]
194
251
  end
195
-
196
252
  end
197
253
 
198
254
  class ServiceNotFound < ServiceError
@@ -208,7 +264,26 @@ module Aws::ServiceDiscovery
208
264
  def message
209
265
  @message || @data[:message]
210
266
  end
267
+ end
268
+
269
+ class TooManyTagsException < ServiceError
270
+
271
+ # @param [Seahorse::Client::RequestContext] context
272
+ # @param [String] message
273
+ # @param [Aws::ServiceDiscovery::Types::TooManyTagsException] data
274
+ def initialize(context, message, data = Aws::EmptyStructure.new)
275
+ super(context, message, data)
276
+ end
277
+
278
+ # @return [String]
279
+ def message
280
+ @message || @data[:message]
281
+ end
211
282
 
283
+ # @return [String]
284
+ def resource_name
285
+ @data[:resource_name]
286
+ end
212
287
  end
213
288
 
214
289
  end
@@ -6,6 +6,7 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::ServiceDiscovery
9
+
9
10
  class Resource
10
11
 
11
12
  # @param options ({})
@@ -15,6 +15,12 @@ module Aws::ServiceDiscovery
15
15
  # name: "NamespaceName", # required
16
16
  # creator_request_id: "ResourceId",
17
17
  # description: "ResourceDescription",
18
+ # tags: [
19
+ # {
20
+ # key: "TagKey", # required
21
+ # value: "TagValue", # required
22
+ # },
23
+ # ],
18
24
  # }
19
25
  #
20
26
  # @!attribute [rw] name
@@ -35,18 +41,31 @@ module Aws::ServiceDiscovery
35
41
  # A description for the namespace.
36
42
  # @return [String]
37
43
  #
44
+ # @!attribute [rw] tags
45
+ # The tags to add to the namespace. Each tag consists of a key and an
46
+ # optional value, both of which you define. Tag keys can have a
47
+ # maximum character length of 128 characters, and tag values can have
48
+ # a maximum length of 256 characters.
49
+ # @return [Array<Types::Tag>]
50
+ #
38
51
  # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/CreateHttpNamespaceRequest AWS API Documentation
39
52
  #
40
53
  class CreateHttpNamespaceRequest < Struct.new(
41
54
  :name,
42
55
  :creator_request_id,
43
- :description)
56
+ :description,
57
+ :tags)
44
58
  include Aws::Structure
45
59
  end
46
60
 
47
61
  # @!attribute [rw] operation_id
48
62
  # A value that you can use to determine whether the request completed
49
- # successfully. To get the status of the operation, see GetOperation.
63
+ # successfully. To get the status of the operation, see
64
+ # [GetOperation][1].
65
+ #
66
+ #
67
+ #
68
+ # [1]: https://docs.aws.amazon.com/cloud-map/latest/api/API_GetOperation.html
50
69
  # @return [String]
51
70
  #
52
71
  # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/CreateHttpNamespaceResponse AWS API Documentation
@@ -64,6 +83,12 @@ module Aws::ServiceDiscovery
64
83
  # creator_request_id: "ResourceId",
65
84
  # description: "ResourceDescription",
66
85
  # vpc: "ResourceId", # required
86
+ # tags: [
87
+ # {
88
+ # key: "TagKey", # required
89
+ # value: "TagValue", # required
90
+ # },
91
+ # ],
67
92
  # }
68
93
  #
69
94
  # @!attribute [rw] name
@@ -92,19 +117,32 @@ module Aws::ServiceDiscovery
92
117
  # with.
93
118
  # @return [String]
94
119
  #
120
+ # @!attribute [rw] tags
121
+ # The tags to add to the namespace. Each tag consists of a key and an
122
+ # optional value, both of which you define. Tag keys can have a
123
+ # maximum character length of 128 characters, and tag values can have
124
+ # a maximum length of 256 characters.
125
+ # @return [Array<Types::Tag>]
126
+ #
95
127
  # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/CreatePrivateDnsNamespaceRequest AWS API Documentation
96
128
  #
97
129
  class CreatePrivateDnsNamespaceRequest < Struct.new(
98
130
  :name,
99
131
  :creator_request_id,
100
132
  :description,
101
- :vpc)
133
+ :vpc,
134
+ :tags)
102
135
  include Aws::Structure
103
136
  end
104
137
 
105
138
  # @!attribute [rw] operation_id
106
139
  # A value that you can use to determine whether the request completed
107
- # successfully. To get the status of the operation, see GetOperation.
140
+ # successfully. To get the status of the operation, see
141
+ # [GetOperation][1].
142
+ #
143
+ #
144
+ #
145
+ # [1]: https://docs.aws.amazon.com/cloud-map/latest/api/API_GetOperation.html
108
146
  # @return [String]
109
147
  #
110
148
  # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/CreatePrivateDnsNamespaceResponse AWS API Documentation
@@ -121,6 +159,12 @@ module Aws::ServiceDiscovery
121
159
  # name: "NamespaceName", # required
122
160
  # creator_request_id: "ResourceId",
123
161
  # description: "ResourceDescription",
162
+ # tags: [
163
+ # {
164
+ # key: "TagKey", # required
165
+ # value: "TagValue", # required
166
+ # },
167
+ # ],
124
168
  # }
125
169
  #
126
170
  # @!attribute [rw] name
@@ -141,18 +185,31 @@ module Aws::ServiceDiscovery
141
185
  # A description for the namespace.
142
186
  # @return [String]
143
187
  #
188
+ # @!attribute [rw] tags
189
+ # The tags to add to the namespace. Each tag consists of a key and an
190
+ # optional value, both of which you define. Tag keys can have a
191
+ # maximum character length of 128 characters, and tag values can have
192
+ # a maximum length of 256 characters.
193
+ # @return [Array<Types::Tag>]
194
+ #
144
195
  # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/CreatePublicDnsNamespaceRequest AWS API Documentation
145
196
  #
146
197
  class CreatePublicDnsNamespaceRequest < Struct.new(
147
198
  :name,
148
199
  :creator_request_id,
149
- :description)
200
+ :description,
201
+ :tags)
150
202
  include Aws::Structure
151
203
  end
152
204
 
153
205
  # @!attribute [rw] operation_id
154
206
  # A value that you can use to determine whether the request completed
155
- # successfully. To get the status of the operation, see GetOperation.
207
+ # successfully. To get the status of the operation, see
208
+ # [GetOperation][1].
209
+ #
210
+ #
211
+ #
212
+ # [1]: https://docs.aws.amazon.com/cloud-map/latest/api/API_GetOperation.html
156
213
  # @return [String]
157
214
  #
158
215
  # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/CreatePublicDnsNamespaceResponse AWS API Documentation
@@ -188,10 +245,34 @@ module Aws::ServiceDiscovery
188
245
  # health_check_custom_config: {
189
246
  # failure_threshold: 1,
190
247
  # },
248
+ # tags: [
249
+ # {
250
+ # key: "TagKey", # required
251
+ # value: "TagValue", # required
252
+ # },
253
+ # ],
191
254
  # }
192
255
  #
193
256
  # @!attribute [rw] name
194
257
  # The name that you want to assign to the service.
258
+ #
259
+ # If you want AWS Cloud Map to create an SRV record when you register
260
+ # an instance, and if you're using a system that requires a specific
261
+ # SRV format, such as [HAProxy][1], specify the following for `Name`\:
262
+ #
263
+ # * Start the name with an underscore (\_), such as `_exampleservice`
264
+ #
265
+ # * End the name with *.\_protocol*, such as `._tcp`
266
+ #
267
+ # When you register an instance, AWS Cloud Map creates an SRV record
268
+ # and assigns a name to the record by concatenating the service name
269
+ # and the namespace name, for example:
270
+ #
271
+ # `_exampleservice._tcp.example.com`
272
+ #
273
+ #
274
+ #
275
+ # [1]: http://www.haproxy.org/
195
276
  # @return [String]
196
277
  #
197
278
  # @!attribute [rw] namespace_id
@@ -219,10 +300,11 @@ module Aws::ServiceDiscovery
219
300
  # @return [Types::DnsConfig]
220
301
  #
221
302
  # @!attribute [rw] health_check_config
222
- # *Public DNS namespaces only.* A complex type that contains settings
223
- # for an optional Route 53 health check. If you specify settings for a
224
- # health check, AWS Cloud Map associates the health check with all the
225
- # Route 53 DNS records that you specify in `DnsConfig`.
303
+ # *Public DNS and HTTP namespaces only.* A complex type that contains
304
+ # settings for an optional Route 53 health check. If you specify
305
+ # settings for a health check, AWS Cloud Map associates the health
306
+ # check with all the Route 53 DNS records that you specify in
307
+ # `DnsConfig`.
226
308
  #
227
309
  # If you specify a health check configuration, you can specify either
228
310
  # `HealthCheckCustomConfig` or `HealthCheckConfig` but not both.
@@ -241,8 +323,18 @@ module Aws::ServiceDiscovery
241
323
  #
242
324
  # If you specify a health check configuration, you can specify either
243
325
  # `HealthCheckCustomConfig` or `HealthCheckConfig` but not both.
326
+ #
327
+ # You can't add, update, or delete a `HealthCheckCustomConfig`
328
+ # configuration from an existing service.
244
329
  # @return [Types::HealthCheckCustomConfig]
245
330
  #
331
+ # @!attribute [rw] tags
332
+ # The tags to add to the service. Each tag consists of a key and an
333
+ # optional value, both of which you define. Tag keys can have a
334
+ # maximum character length of 128 characters, and tag values can have
335
+ # a maximum length of 256 characters.
336
+ # @return [Array<Types::Tag>]
337
+ #
246
338
  # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/CreateServiceRequest AWS API Documentation
247
339
  #
248
340
  class CreateServiceRequest < Struct.new(
@@ -252,7 +344,8 @@ module Aws::ServiceDiscovery
252
344
  :description,
253
345
  :dns_config,
254
346
  :health_check_config,
255
- :health_check_custom_config)
347
+ :health_check_custom_config,
348
+ :tags)
256
349
  include Aws::Structure
257
350
  end
258
351
 
@@ -300,7 +393,12 @@ module Aws::ServiceDiscovery
300
393
 
301
394
  # @!attribute [rw] operation_id
302
395
  # A value that you can use to determine whether the request completed
303
- # successfully. To get the status of the operation, see GetOperation.
396
+ # successfully. To get the status of the operation, see
397
+ # [GetOperation][1].
398
+ #
399
+ #
400
+ #
401
+ # [1]: https://docs.aws.amazon.com/cloud-map/latest/api/API_GetOperation.html
304
402
  # @return [String]
305
403
  #
306
404
  # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/DeleteNamespaceResponse AWS API Documentation
@@ -345,8 +443,12 @@ module Aws::ServiceDiscovery
345
443
  # @return [String]
346
444
  #
347
445
  # @!attribute [rw] instance_id
348
- # The value that you specified for `Id` in the RegisterInstance
446
+ # The value that you specified for `Id` in the [RegisterInstance][1]
349
447
  # request.
448
+ #
449
+ #
450
+ #
451
+ # [1]: https://docs.aws.amazon.com/cloud-map/latest/api/API_RegisterInstance.html
350
452
  # @return [String]
351
453
  #
352
454
  # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/DeregisterInstanceRequest AWS API Documentation
@@ -359,7 +461,11 @@ module Aws::ServiceDiscovery
359
461
 
360
462
  # @!attribute [rw] operation_id
361
463
  # A value that you can use to determine whether the request completed
362
- # successfully. For more information, see GetOperation.
464
+ # successfully. For more information, see [GetOperation][1].
465
+ #
466
+ #
467
+ #
468
+ # [1]: https://docs.aws.amazon.com/cloud-map/latest/api/API_GetOperation.html
363
469
  # @return [String]
364
470
  #
365
471
  # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/DeregisterInstanceResponse AWS API Documentation
@@ -393,9 +499,10 @@ module Aws::ServiceDiscovery
393
499
  # @return [String]
394
500
  #
395
501
  # @!attribute [rw] max_results
396
- # The maximum number of instances that you want Cloud Map to return in
397
- # the response to a `DiscoverInstances` request. If you don't specify
398
- # a value for `MaxResults`, Cloud Map returns up to 100 instances.
502
+ # The maximum number of instances that you want AWS Cloud Map to
503
+ # return in the response to a `DiscoverInstances` request. If you
504
+ # don't specify a value for `MaxResults`, AWS Cloud Map returns up to
505
+ # 100 instances.
399
506
  # @return [Integer]
400
507
  #
401
508
  # @!attribute [rw] query_parameters
@@ -509,8 +616,8 @@ module Aws::ServiceDiscovery
509
616
  #
510
617
  #
511
618
  #
512
- # [1]: http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html#routing-policy-multivalue
513
- # [2]: http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html#routing-policy-weighted
619
+ # [1]: https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html#routing-policy-multivalue
620
+ # [2]: https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html#routing-policy-weighted
514
621
  # @return [String]
515
622
  #
516
623
  # @!attribute [rw] dns_records
@@ -585,25 +692,25 @@ module Aws::ServiceDiscovery
585
692
  #
586
693
  # @!attribute [rw] type
587
694
  # The type of the resource, which indicates the type of value that
588
- # Route 53 returns in response to DNS queries.
695
+ # Route 53 returns in response to DNS queries. You can specify values
696
+ # for `Type` in the following combinations:
589
697
  #
590
- # Note the following:
698
+ # * A
699
+ #
700
+ # * AAAA
591
701
  #
592
- # * **A, AAAA, and SRV records:** You can specify settings for a
593
- # maximum of one A, one AAAA, and one SRV record. You can specify
594
- # them in any combination.
702
+ # * A and AAAA
595
703
  #
596
- # * **CNAME records:** If you specify `CNAME` for `Type`, you can't
597
- # define any other records. This is a limitation of DNS: you can't
598
- # create a CNAME record and any other type of record that has the
599
- # same name as a CNAME record.
704
+ # * SRV
600
705
  #
601
- # * **Alias records:** If you want AWS Cloud Map to create a Route 53
602
- # alias record when you register an instance, specify `A` or `AAAA`
603
- # for `Type`.
706
+ # * CNAME
604
707
  #
605
- # * **All records:** You specify settings other than `TTL` and `Type`
606
- # when you register an instance.
708
+ # If you want AWS Cloud Map to create a Route 53 alias record when you
709
+ # register an instance, specify `A` or `AAAA` for `Type`.
710
+ #
711
+ # You specify other settings, such as the IP address for A and AAAA
712
+ # records, when you register an instance. For more information, see
713
+ # [RegisterInstance][1].
607
714
  #
608
715
  # The following values are supported:
609
716
  #
@@ -624,7 +731,7 @@ module Aws::ServiceDiscovery
624
731
  #
625
732
  # * You specify the domain name that you want to route traffic to when
626
733
  # you register an instance. For more information, see
627
- # RegisterInstanceRequest$Attributes.
734
+ # [Attributes][2] in the topic [RegisterInstance][1].
628
735
  #
629
736
  # * You must specify `WEIGHTED` for the value of `RoutingPolicy`.
630
737
  #
@@ -645,8 +752,8 @@ module Aws::ServiceDiscovery
645
752
  # can't be changed.
646
753
  #
647
754
  # * The value of `port` comes from the value that you specify for the
648
- # `AWS_INSTANCE_PORT` attribute when you submit a RegisterInstance
649
- # request.
755
+ # `AWS_INSTANCE_PORT` attribute when you submit a
756
+ # [RegisterInstance][1] request.
650
757
  #
651
758
  # * The value of `service-hostname` is a concatenation of the
652
759
  # following values:
@@ -664,11 +771,24 @@ module Aws::ServiceDiscovery
664
771
  #
665
772
  # `test.backend.example.com`
666
773
  #
667
- # If you specify settings for an SRV record and if you specify values
668
- # for `AWS_INSTANCE_IPV4`, `AWS_INSTANCE_IPV6`, or both in the
669
- # `RegisterInstance` request, AWS Cloud Map automatically creates `A`
670
- # and/or `AAAA` records that have the same name as the value of
671
- # `service-hostname` in the SRV record. You can ignore these records.
774
+ # If you specify settings for an SRV record, note the following:
775
+ #
776
+ # * If you specify values for `AWS_INSTANCE_IPV4`,
777
+ # `AWS_INSTANCE_IPV6`, or both in the `RegisterInstance` request,
778
+ # AWS Cloud Map automatically creates `A` and/or `AAAA` records that
779
+ # have the same name as the value of `service-hostname` in the SRV
780
+ # record. You can ignore these records.
781
+ #
782
+ # * If you're using a system that requires a specific SRV format,
783
+ # such as HAProxy, see the [Name][3] element in the documentation
784
+ # about `CreateService` for information about how to specify the
785
+ # correct name format.
786
+ #
787
+ #
788
+ #
789
+ # [1]: https://docs.aws.amazon.com/cloud-map/latest/api/API_RegisterInstance.html
790
+ # [2]: https://docs.aws.amazon.com/cloud-map/latest/api/API_RegisterInstance.html#cloudmap-RegisterInstance-request-Attributes
791
+ # [3]: https://docs.aws.amazon.com/cloud-map/latest/api/API_CreateService.html#cloudmap-CreateService-request-Name
672
792
  # @return [String]
673
793
  #
674
794
  # @!attribute [rw] ttl
@@ -678,11 +798,15 @@ module Aws::ServiceDiscovery
678
798
  # <note markdown="1"> Alias records don't include a TTL because Route 53 uses the TTL for
679
799
  # the AWS resource that an alias record routes traffic to. If you
680
800
  # include the `AWS_ALIAS_DNS_NAME` attribute when you submit a
681
- # RegisterInstance request, the `TTL` value is ignored. Always specify
682
- # a TTL for the service; you can use a service to register instances
683
- # that create either alias or non-alias records.
801
+ # [RegisterInstance][1] request, the `TTL` value is ignored. Always
802
+ # specify a TTL for the service; you can use a service to register
803
+ # instances that create either alias or non-alias records.
684
804
  #
685
805
  # </note>
806
+ #
807
+ #
808
+ #
809
+ # [1]: https://docs.aws.amazon.com/cloud-map/latest/api/API_RegisterInstance.html
686
810
  # @return [Integer]
687
811
  #
688
812
  # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/DnsRecord AWS API Documentation
@@ -767,9 +891,13 @@ module Aws::ServiceDiscovery
767
891
  # all the instances that are associated with the specified service.
768
892
  #
769
893
  # <note markdown="1"> To get the IDs for the instances that you've registered by using a
770
- # specified service, submit a ListInstances request.
894
+ # specified service, submit a [ListInstances][1] request.
771
895
  #
772
896
  # </note>
897
+ #
898
+ #
899
+ #
900
+ # [1]: https://docs.aws.amazon.com/cloud-map/latest/api/API_ListInstances.html
773
901
  # @return [Array<String>]
774
902
  #
775
903
  # @!attribute [rw] max_results
@@ -907,10 +1035,10 @@ module Aws::ServiceDiscovery
907
1035
  include Aws::Structure
908
1036
  end
909
1037
 
910
- # *Public DNS namespaces only.* A complex type that contains settings
911
- # for an optional health check. If you specify settings for a health
912
- # check, AWS Cloud Map associates the health check with the records that
913
- # you specify in `DnsConfig`.
1038
+ # *Public DNS and HTTP namespaces only.* A complex type that contains
1039
+ # settings for an optional health check. If you specify settings for a
1040
+ # health check, AWS Cloud Map associates the health check with the
1041
+ # records that you specify in `DnsConfig`.
914
1042
  #
915
1043
  # If you specify a health check configuration, you can specify either
916
1044
  # `HealthCheckCustomConfig` or `HealthCheckConfig` but not both.
@@ -973,8 +1101,8 @@ module Aws::ServiceDiscovery
973
1101
  #
974
1102
  #
975
1103
  # [1]: http://aws.amazon.com/route53/pricing/
976
- # [2]: http://docs.aws.amazon.com/Route53/latest/APIReference/API_HealthCheckConfig.html#Route53-Type-HealthCheckConfig-Regions
977
- # [3]: http://docs.aws.amazon.com/Route53/latest/APIReference/API_AliasTarget.html#Route53-Type-AliasTarget-EvaluateTargetHealth
1104
+ # [2]: https://docs.aws.amazon.com/Route53/latest/APIReference/API_HealthCheckConfig.html#Route53-Type-HealthCheckConfig-Regions
1105
+ # [3]: https://docs.aws.amazon.com/Route53/latest/APIReference/API_AliasTarget.html#Route53-Type-AliasTarget-EvaluateTargetHealth
978
1106
  #
979
1107
  # @note When making an API call, you may pass HealthCheckConfig
980
1108
  # data as a hash:
@@ -1015,7 +1143,7 @@ module Aws::ServiceDiscovery
1015
1143
  #
1016
1144
  #
1017
1145
  #
1018
- # [1]: http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-determining-health-of-endpoints.html
1146
+ # [1]: https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-determining-health-of-endpoints.html
1019
1147
  # @return [String]
1020
1148
  #
1021
1149
  # @!attribute [rw] resource_path
@@ -1039,7 +1167,7 @@ module Aws::ServiceDiscovery
1039
1167
  #
1040
1168
  #
1041
1169
  #
1042
- # [1]: http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-determining-health-of-endpoints.html
1170
+ # [1]: https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-determining-health-of-endpoints.html
1043
1171
  # @return [Integer]
1044
1172
  #
1045
1173
  # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/HealthCheckConfig AWS API Documentation
@@ -1069,9 +1197,9 @@ module Aws::ServiceDiscovery
1069
1197
  # `HealthCheckCustomConfig` or `HealthCheckConfig` but not both.
1070
1198
  #
1071
1199
  # To change the status of a custom health check, submit an
1072
- # `UpdateInstanceCustomHealthStatus` request. Cloud Map doesn't monitor
1073
- # the status of the resource, it just keeps a record of the status
1074
- # specified in the most recent `UpdateInstanceCustomHealthStatus`
1200
+ # `UpdateInstanceCustomHealthStatus` request. AWS Cloud Map doesn't
1201
+ # monitor the status of the resource, it just keeps a record of the
1202
+ # status specified in the most recent `UpdateInstanceCustomHealthStatus`
1075
1203
  # request.
1076
1204
  #
1077
1205
  # Here's how custom health checks work:
@@ -1080,9 +1208,9 @@ module Aws::ServiceDiscovery
1080
1208
  #
1081
1209
  # The failure threshold indicates the number of 30-second intervals
1082
1210
  # you want AWS Cloud Map to wait between the time that your
1083
- # application sends an UpdateInstanceCustomHealthStatus request and
1084
- # the time that AWS Cloud Map stops routing internet traffic to the
1085
- # corresponding resource.
1211
+ # application sends an [UpdateInstanceCustomHealthStatus][1] request
1212
+ # and the time that AWS Cloud Map stops routing internet traffic to
1213
+ # the corresponding resource.
1086
1214
  #
1087
1215
  # 2. You register an instance.
1088
1216
  #
@@ -1105,7 +1233,9 @@ module Aws::ServiceDiscovery
1105
1233
  # arrive during that time to change the status back to healthy, AWS
1106
1234
  # Cloud Map stops routing traffic to the resource.
1107
1235
  #
1108
- # Note the following about configuring custom health checks.
1236
+ #
1237
+ #
1238
+ # [1]: https://docs.aws.amazon.com/cloud-map/latest/api/API_UpdateInstanceCustomHealthStatus.html
1109
1239
  #
1110
1240
  # @note When making an API call, you may pass HealthCheckCustomConfig
1111
1241
  # data as a hash:
@@ -1115,18 +1245,18 @@ module Aws::ServiceDiscovery
1115
1245
  # }
1116
1246
  #
1117
1247
  # @!attribute [rw] failure_threshold
1118
- # The number of 30-second intervals that you want Cloud Map to wait
1119
- # after receiving an `UpdateInstanceCustomHealthStatus` request before
1120
- # it changes the health status of a service instance. For example,
1121
- # suppose you specify a value of `2` for `FailureTheshold`, and then
1122
- # your application sends an `UpdateInstanceCustomHealthStatus`
1123
- # request. Cloud Map waits for approximately 60 seconds (2 x 30)
1124
- # before changing the status of the service instance based on that
1125
- # request.
1248
+ # The number of 30-second intervals that you want AWS Cloud Map to
1249
+ # wait after receiving an `UpdateInstanceCustomHealthStatus` request
1250
+ # before it changes the health status of a service instance. For
1251
+ # example, suppose you specify a value of `2` for `FailureTheshold`,
1252
+ # and then your application sends an
1253
+ # `UpdateInstanceCustomHealthStatus` request. AWS Cloud Map waits for
1254
+ # approximately 60 seconds (2 x 30) before changing the status of the
1255
+ # service instance based on that request.
1126
1256
  #
1127
1257
  # Sending a second or subsequent `UpdateInstanceCustomHealthStatus`
1128
1258
  # request with the same value before `FailureThreshold x 30` seconds
1129
- # has passed doesn't accelerate the change. Cloud Map still waits
1259
+ # has passed doesn't accelerate the change. AWS Cloud Map still waits
1130
1260
  # `FailureThreshold x 30` seconds after the first request to make the
1131
1261
  # change.
1132
1262
  # @return [Integer]
@@ -1138,9 +1268,13 @@ module Aws::ServiceDiscovery
1138
1268
  include Aws::Structure
1139
1269
  end
1140
1270
 
1141
- # In a response to a DiscoverInstance request, `HttpInstanceSummary`
1142
- # contains information about one instance that matches the values that
1143
- # you specified in the request.
1271
+ # In a response to a [DiscoverInstances][1] request,
1272
+ # `HttpInstanceSummary` contains information about one instance that
1273
+ # matches the values that you specified in the request.
1274
+ #
1275
+ #
1276
+ #
1277
+ # [1]: https://docs.aws.amazon.com/cloud-map/latest/api/API_DiscoverInstances.html
1144
1278
  #
1145
1279
  # @!attribute [rw] instance_id
1146
1280
  # The ID of an instance that matches the values that you specified in
@@ -1201,7 +1335,7 @@ module Aws::ServiceDiscovery
1201
1335
  # * If the service that is specified by `ServiceId` includes settings
1202
1336
  # for an SRV record, the value of `InstanceId` is automatically
1203
1337
  # included as part of the value for the SRV record. For more
1204
- # information, see DnsRecord$Type.
1338
+ # information, see [DnsRecord &gt; Type][1].
1205
1339
  #
1206
1340
  # * You can use this value to update an existing instance.
1207
1341
  #
@@ -1219,6 +1353,10 @@ module Aws::ServiceDiscovery
1219
1353
  # example.
1220
1354
  #
1221
1355
  # </note>
1356
+ #
1357
+ #
1358
+ #
1359
+ # [1]: https://docs.aws.amazon.com/cloud-map/latest/api/API_DnsRecord.html#cloudmap-Type-DnsRecord-Type
1222
1360
  # @return [String]
1223
1361
  #
1224
1362
  # @!attribute [rw] creator_request_id
@@ -1311,11 +1449,11 @@ module Aws::ServiceDiscovery
1311
1449
  # endpoint that you want Route 53 to send requests to.
1312
1450
  #
1313
1451
  # This value is required if you specified settings for an SRV record
1314
- # when you created the service.
1452
+ # or a Route 53 health check when you created the service.
1315
1453
  #
1316
1454
  #
1317
1455
  #
1318
- # [1]: http://docs.aws.amazon.com/Route53/latest/APIReference/API_AliasTarget.html
1456
+ # [1]: https://docs.aws.amazon.com/Route53/latest/APIReference/API_AliasTarget.html
1319
1457
  # @return [Hash<String,String>]
1320
1458
  #
1321
1459
  # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/Instance AWS API Documentation
@@ -1707,6 +1845,36 @@ module Aws::ServiceDiscovery
1707
1845
  include Aws::Structure
1708
1846
  end
1709
1847
 
1848
+ # @note When making an API call, you may pass ListTagsForResourceRequest
1849
+ # data as a hash:
1850
+ #
1851
+ # {
1852
+ # resource_arn: "AmazonResourceName", # required
1853
+ # }
1854
+ #
1855
+ # @!attribute [rw] resource_arn
1856
+ # The Amazon Resource Name (ARN) of the resource that you want to
1857
+ # retrieve tags for.
1858
+ # @return [String]
1859
+ #
1860
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/ListTagsForResourceRequest AWS API Documentation
1861
+ #
1862
+ class ListTagsForResourceRequest < Struct.new(
1863
+ :resource_arn)
1864
+ include Aws::Structure
1865
+ end
1866
+
1867
+ # @!attribute [rw] tags
1868
+ # The tags that are assigned to the resource.
1869
+ # @return [Array<Types::Tag>]
1870
+ #
1871
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/ListTagsForResourceResponse AWS API Documentation
1872
+ #
1873
+ class ListTagsForResourceResponse < Struct.new(
1874
+ :tags)
1875
+ include Aws::Structure
1876
+ end
1877
+
1710
1878
  # A complex type that contains information about a specified namespace.
1711
1879
  #
1712
1880
  # @!attribute [rw] id
@@ -1723,8 +1891,17 @@ module Aws::ServiceDiscovery
1723
1891
  # @return [String]
1724
1892
  #
1725
1893
  # @!attribute [rw] type
1726
- # The type of the namespace. Valid values are `DNS_PUBLIC` and
1727
- # `DNS_PRIVATE`.
1894
+ # The type of the namespace. The methods for discovering instances
1895
+ # depends on the value that you specify:
1896
+ #
1897
+ # * `HTTP`\: Instances can be discovered only programmatically, using
1898
+ # the AWS Cloud Map `DiscoverInstances` API.
1899
+ #
1900
+ # * `DNS_PUBLIC`\: Instances can be discovered using public DNS
1901
+ # queries and using the `DiscoverInstances` API.
1902
+ #
1903
+ # * `DNS_PRIVATE`\: Instances can be discovered using DNS queries in
1904
+ # VPCs and using the `DiscoverInstances` API.
1728
1905
  # @return [String]
1729
1906
  #
1730
1907
  # @!attribute [rw] description
@@ -2104,7 +2281,12 @@ module Aws::ServiceDiscovery
2104
2281
  end
2105
2282
 
2106
2283
  # A complex type that contains information about an operation that
2107
- # matches the criteria that you specified in a ListOperations request.
2284
+ # matches the criteria that you specified in a [ListOperations][1]
2285
+ # request.
2286
+ #
2287
+ #
2288
+ #
2289
+ # [1]: https://docs.aws.amazon.com/cloud-map/latest/api/API_ListOperations.html
2108
2290
  #
2109
2291
  # @!attribute [rw] id
2110
2292
  # The ID for an operation.
@@ -2156,7 +2338,7 @@ module Aws::ServiceDiscovery
2156
2338
  # * If the service that is specified by `ServiceId` includes settings
2157
2339
  # for an SRV record, the value of `InstanceId` is automatically
2158
2340
  # included as part of the value for the SRV record. For more
2159
- # information, see DnsRecord$Type.
2341
+ # information, see [DnsRecord &gt; Type][1].
2160
2342
  #
2161
2343
  # * You can use this value to update an existing instance.
2162
2344
  #
@@ -2174,6 +2356,10 @@ module Aws::ServiceDiscovery
2174
2356
  # example.
2175
2357
  #
2176
2358
  # </note>
2359
+ #
2360
+ #
2361
+ #
2362
+ # [1]: https://docs.aws.amazon.com/cloud-map/latest/api/API_DnsRecord.html#cloudmap-Type-DnsRecord-Type
2177
2363
  # @return [String]
2178
2364
  #
2179
2365
  # @!attribute [rw] creator_request_id
@@ -2277,17 +2463,19 @@ module Aws::ServiceDiscovery
2277
2463
  # endpoint that you want Route 53 to send requests to.
2278
2464
  #
2279
2465
  # This value is required if you specified settings for an SRV record
2280
- # when you created the service.
2466
+ # or a Route 53 health check when you created the service.
2281
2467
  #
2282
2468
  # **Custom attributes**
2283
2469
  #
2284
2470
  # You can add up to 30 custom attributes. For each key-value pair, the
2285
2471
  # maximum length of the attribute name is 255 characters, and the
2286
- # maximum length of the attribute value is 1,024 characters.
2472
+ # maximum length of the attribute value is 1,024 characters. Total
2473
+ # size of all provided attributes (sum of all keys and values) must
2474
+ # not exceed 5,000 characters.
2287
2475
  #
2288
2476
  #
2289
2477
  #
2290
- # [1]: http://docs.aws.amazon.com/Route53/latest/APIReference/API_AliasTarget.html
2478
+ # [1]: https://docs.aws.amazon.com/Route53/latest/APIReference/API_AliasTarget.html
2291
2479
  # @return [Hash<String,String>]
2292
2480
  #
2293
2481
  # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/RegisterInstanceRequest AWS API Documentation
@@ -2302,7 +2490,12 @@ module Aws::ServiceDiscovery
2302
2490
 
2303
2491
  # @!attribute [rw] operation_id
2304
2492
  # A value that you can use to determine whether the request completed
2305
- # successfully. To get the status of the operation, see GetOperation.
2493
+ # successfully. To get the status of the operation, see
2494
+ # [GetOperation][1].
2495
+ #
2496
+ #
2497
+ #
2498
+ # [1]: https://docs.aws.amazon.com/cloud-map/latest/api/API_GetOperation.html
2306
2499
  # @return [String]
2307
2500
  #
2308
2501
  # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/RegisterInstanceResponse AWS API Documentation
@@ -2312,6 +2505,19 @@ module Aws::ServiceDiscovery
2312
2505
  include Aws::Structure
2313
2506
  end
2314
2507
 
2508
+ # The operation can't be completed because you've reached the limit on
2509
+ # the number of requests.
2510
+ #
2511
+ # @!attribute [rw] message
2512
+ # @return [String]
2513
+ #
2514
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/RequestLimitExceeded AWS API Documentation
2515
+ #
2516
+ class RequestLimitExceeded < Struct.new(
2517
+ :message)
2518
+ include Aws::Structure
2519
+ end
2520
+
2315
2521
  # The specified resource can't be deleted because it contains other
2316
2522
  # resources. For example, you can't delete a service that contains any
2317
2523
  # instances.
@@ -2339,6 +2545,18 @@ module Aws::ServiceDiscovery
2339
2545
  include Aws::Structure
2340
2546
  end
2341
2547
 
2548
+ # The operation can't be completed because the resource was not found.
2549
+ #
2550
+ # @!attribute [rw] message
2551
+ # @return [String]
2552
+ #
2553
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/ResourceNotFoundException AWS API Documentation
2554
+ #
2555
+ class ResourceNotFoundException < Struct.new(
2556
+ :message)
2557
+ include Aws::Structure
2558
+ end
2559
+
2342
2560
  # A complex type that contains information about the specified service.
2343
2561
  #
2344
2562
  # @!attribute [rw] id
@@ -2366,7 +2584,8 @@ module Aws::ServiceDiscovery
2366
2584
  # @!attribute [rw] instance_count
2367
2585
  # The number of instances that are currently associated with the
2368
2586
  # service. Instances that were previously associated with the service
2369
- # but that have been deleted are not included in the count.
2587
+ # but that have been deleted are not included in the count. The count
2588
+ # might not reflect pending registrations and deregistrations.
2370
2589
  # @return [Integer]
2371
2590
  #
2372
2591
  # @!attribute [rw] dns_config
@@ -2376,10 +2595,10 @@ module Aws::ServiceDiscovery
2376
2595
  # @return [Types::DnsConfig]
2377
2596
  #
2378
2597
  # @!attribute [rw] health_check_config
2379
- # *Public DNS namespaces only.* A complex type that contains settings
2380
- # for an optional health check. If you specify settings for a health
2381
- # check, AWS Cloud Map associates the health check with the records
2382
- # that you specify in `DnsConfig`.
2598
+ # *Public DNS and HTTP namespaces only.* A complex type that contains
2599
+ # settings for an optional health check. If you specify settings for a
2600
+ # health check, AWS Cloud Map associates the health check with the
2601
+ # records that you specify in `DnsConfig`.
2383
2602
  #
2384
2603
  # For information about the charges for health checks, see [Amazon
2385
2604
  # Route 53 Pricing][1].
@@ -2458,7 +2677,7 @@ module Aws::ServiceDiscovery
2458
2677
  #
2459
2678
  # {
2460
2679
  # description: "ResourceDescription",
2461
- # dns_config: { # required
2680
+ # dns_config: {
2462
2681
  # dns_records: [ # required
2463
2682
  # {
2464
2683
  # type: "SRV", # required, accepts SRV, A, AAAA, CNAME
@@ -2484,10 +2703,10 @@ module Aws::ServiceDiscovery
2484
2703
  # @return [Types::DnsConfigChange]
2485
2704
  #
2486
2705
  # @!attribute [rw] health_check_config
2487
- # *Public DNS namespaces only.* A complex type that contains settings
2488
- # for an optional health check. If you specify settings for a health
2489
- # check, AWS Cloud Map associates the health check with the records
2490
- # that you specify in `DnsConfig`.
2706
+ # *Public DNS and HTTP namespaces only.* A complex type that contains
2707
+ # settings for an optional health check. If you specify settings for a
2708
+ # health check, AWS Cloud Map associates the health check with the
2709
+ # records that you specify in `DnsConfig`.
2491
2710
  #
2492
2711
  # If you specify a health check configuration, you can specify either
2493
2712
  # `HealthCheckCustomConfig` or `HealthCheckConfig` but not both.
@@ -2551,8 +2770,8 @@ module Aws::ServiceDiscovery
2551
2770
  #
2552
2771
  #
2553
2772
  # [1]: http://aws.amazon.com/route53/pricing/
2554
- # [2]: http://docs.aws.amazon.com/Route53/latest/APIReference/API_HealthCheckConfig.html#Route53-Type-HealthCheckConfig-Regions
2555
- # [3]: http://docs.aws.amazon.com/Route53/latest/APIReference/API_AliasTarget.html#Route53-Type-AliasTarget-EvaluateTargetHealth
2773
+ # [2]: https://docs.aws.amazon.com/Route53/latest/APIReference/API_HealthCheckConfig.html#Route53-Type-HealthCheckConfig-Regions
2774
+ # [3]: https://docs.aws.amazon.com/Route53/latest/APIReference/API_AliasTarget.html#Route53-Type-AliasTarget-EvaluateTargetHealth
2556
2775
  # @return [Types::HealthCheckConfig]
2557
2776
  #
2558
2777
  # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/ServiceChange AWS API Documentation
@@ -2644,7 +2863,8 @@ module Aws::ServiceDiscovery
2644
2863
  # @!attribute [rw] instance_count
2645
2864
  # The number of instances that are currently associated with the
2646
2865
  # service. Instances that were previously associated with the service
2647
- # but that have been deleted are not included in the count.
2866
+ # but that have been deleted are not included in the count. The count
2867
+ # might not reflect pending registrations and deregistrations.
2648
2868
  # @return [Integer]
2649
2869
  #
2650
2870
  # @!attribute [rw] dns_config
@@ -2654,10 +2874,10 @@ module Aws::ServiceDiscovery
2654
2874
  # @return [Types::DnsConfig]
2655
2875
  #
2656
2876
  # @!attribute [rw] health_check_config
2657
- # *Public DNS namespaces only.* A complex type that contains settings
2658
- # for an optional health check. If you specify settings for a health
2659
- # check, AWS Cloud Map associates the health check with the records
2660
- # that you specify in `DnsConfig`.
2877
+ # *Public DNS and HTTP namespaces only.* A complex type that contains
2878
+ # settings for an optional health check. If you specify settings for a
2879
+ # health check, AWS Cloud Map associates the health check with the
2880
+ # records that you specify in `DnsConfig`.
2661
2881
  #
2662
2882
  # If you specify a health check configuration, you can specify either
2663
2883
  # `HealthCheckCustomConfig` or `HealthCheckConfig` but not both.
@@ -2721,8 +2941,8 @@ module Aws::ServiceDiscovery
2721
2941
  #
2722
2942
  #
2723
2943
  # [1]: http://aws.amazon.com/route53/pricing/
2724
- # [2]: http://docs.aws.amazon.com/Route53/latest/APIReference/API_HealthCheckConfig.html#Route53-Type-HealthCheckConfig-Regions
2725
- # [3]: http://docs.aws.amazon.com/Route53/latest/APIReference/API_AliasTarget.html#Route53-Type-AliasTarget-EvaluateTargetHealth
2944
+ # [2]: https://docs.aws.amazon.com/Route53/latest/APIReference/API_HealthCheckConfig.html#Route53-Type-HealthCheckConfig-Regions
2945
+ # [3]: https://docs.aws.amazon.com/Route53/latest/APIReference/API_AliasTarget.html#Route53-Type-AliasTarget-EvaluateTargetHealth
2726
2946
  # @return [Types::HealthCheckConfig]
2727
2947
  #
2728
2948
  # @!attribute [rw] health_check_custom_config
@@ -2744,7 +2964,7 @@ module Aws::ServiceDiscovery
2744
2964
  # `HealthCheckCustomConfig` or `HealthCheckConfig` but not both.
2745
2965
  #
2746
2966
  # To change the status of a custom health check, submit an
2747
- # `UpdateInstanceCustomHealthStatus` request. Cloud Map doesn't
2967
+ # `UpdateInstanceCustomHealthStatus` request. AWS Cloud Map doesn't
2748
2968
  # monitor the status of the resource, it just keeps a record of the
2749
2969
  # status specified in the most recent
2750
2970
  # `UpdateInstanceCustomHealthStatus` request.
@@ -2755,7 +2975,7 @@ module Aws::ServiceDiscovery
2755
2975
  #
2756
2976
  # The failure threshold indicates the number of 30-second
2757
2977
  # intervals you want AWS Cloud Map to wait between the time that
2758
- # your application sends an UpdateInstanceCustomHealthStatus
2978
+ # your application sends an [UpdateInstanceCustomHealthStatus][1]
2759
2979
  # request and the time that AWS Cloud Map stops routing internet
2760
2980
  # traffic to the corresponding resource.
2761
2981
  #
@@ -2781,7 +3001,9 @@ module Aws::ServiceDiscovery
2781
3001
  # arrive during that time to change the status back to healthy,
2782
3002
  # AWS Cloud Map stops routing traffic to the resource.
2783
3003
  #
2784
- # Note the following about configuring custom health checks.
3004
+ #
3005
+ #
3006
+ # [1]: https://docs.aws.amazon.com/cloud-map/latest/api/API_UpdateInstanceCustomHealthStatus.html
2785
3007
  # @return [Types::HealthCheckCustomConfig]
2786
3008
  #
2787
3009
  # @!attribute [rw] create_date
@@ -2803,6 +3025,117 @@ module Aws::ServiceDiscovery
2803
3025
  include Aws::Structure
2804
3026
  end
2805
3027
 
3028
+ # A custom key-value pair associated with a resource.
3029
+ #
3030
+ # @note When making an API call, you may pass Tag
3031
+ # data as a hash:
3032
+ #
3033
+ # {
3034
+ # key: "TagKey", # required
3035
+ # value: "TagValue", # required
3036
+ # }
3037
+ #
3038
+ # @!attribute [rw] key
3039
+ # The key identifier, or name, of the tag.
3040
+ # @return [String]
3041
+ #
3042
+ # @!attribute [rw] value
3043
+ # The string value that's associated with the key of the tag. You can
3044
+ # set the value of a tag to an empty string, but you can't set the
3045
+ # value of a tag to null.
3046
+ # @return [String]
3047
+ #
3048
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/Tag AWS API Documentation
3049
+ #
3050
+ class Tag < Struct.new(
3051
+ :key,
3052
+ :value)
3053
+ include Aws::Structure
3054
+ end
3055
+
3056
+ # @note When making an API call, you may pass TagResourceRequest
3057
+ # data as a hash:
3058
+ #
3059
+ # {
3060
+ # resource_arn: "AmazonResourceName", # required
3061
+ # tags: [ # required
3062
+ # {
3063
+ # key: "TagKey", # required
3064
+ # value: "TagValue", # required
3065
+ # },
3066
+ # ],
3067
+ # }
3068
+ #
3069
+ # @!attribute [rw] resource_arn
3070
+ # The Amazon Resource Name (ARN) of the resource that you want to
3071
+ # retrieve tags for.
3072
+ # @return [String]
3073
+ #
3074
+ # @!attribute [rw] tags
3075
+ # The tags to add to the specified resource. Specifying the tag key is
3076
+ # required. You can set the value of a tag to an empty string, but you
3077
+ # can't set the value of a tag to null.
3078
+ # @return [Array<Types::Tag>]
3079
+ #
3080
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/TagResourceRequest AWS API Documentation
3081
+ #
3082
+ class TagResourceRequest < Struct.new(
3083
+ :resource_arn,
3084
+ :tags)
3085
+ include Aws::Structure
3086
+ end
3087
+
3088
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/TagResourceResponse AWS API Documentation
3089
+ #
3090
+ class TagResourceResponse < Aws::EmptyStructure; end
3091
+
3092
+ # The list of tags on the resource is over the limit. The maximum number
3093
+ # of tags that can be applied to a resource is 50.
3094
+ #
3095
+ # @!attribute [rw] message
3096
+ # @return [String]
3097
+ #
3098
+ # @!attribute [rw] resource_name
3099
+ # The name of the resource.
3100
+ # @return [String]
3101
+ #
3102
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/TooManyTagsException AWS API Documentation
3103
+ #
3104
+ class TooManyTagsException < Struct.new(
3105
+ :message,
3106
+ :resource_name)
3107
+ include Aws::Structure
3108
+ end
3109
+
3110
+ # @note When making an API call, you may pass UntagResourceRequest
3111
+ # data as a hash:
3112
+ #
3113
+ # {
3114
+ # resource_arn: "AmazonResourceName", # required
3115
+ # tag_keys: ["TagKey"], # required
3116
+ # }
3117
+ #
3118
+ # @!attribute [rw] resource_arn
3119
+ # The Amazon Resource Name (ARN) of the resource that you want to
3120
+ # retrieve tags for.
3121
+ # @return [String]
3122
+ #
3123
+ # @!attribute [rw] tag_keys
3124
+ # The tag keys to remove from the specified resource.
3125
+ # @return [Array<String>]
3126
+ #
3127
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/UntagResourceRequest AWS API Documentation
3128
+ #
3129
+ class UntagResourceRequest < Struct.new(
3130
+ :resource_arn,
3131
+ :tag_keys)
3132
+ include Aws::Structure
3133
+ end
3134
+
3135
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/UntagResourceResponse AWS API Documentation
3136
+ #
3137
+ class UntagResourceResponse < Aws::EmptyStructure; end
3138
+
2806
3139
  # @note When making an API call, you may pass UpdateInstanceCustomHealthStatusRequest
2807
3140
  # data as a hash:
2808
3141
  #
@@ -2842,7 +3175,7 @@ module Aws::ServiceDiscovery
2842
3175
  # id: "ResourceId", # required
2843
3176
  # service: { # required
2844
3177
  # description: "ResourceDescription",
2845
- # dns_config: { # required
3178
+ # dns_config: {
2846
3179
  # dns_records: [ # required
2847
3180
  # {
2848
3181
  # type: "SRV", # required, accepts SRV, A, AAAA, CNAME
@@ -2876,7 +3209,12 @@ module Aws::ServiceDiscovery
2876
3209
 
2877
3210
  # @!attribute [rw] operation_id
2878
3211
  # A value that you can use to determine whether the request completed
2879
- # successfully. To get the status of the operation, see GetOperation.
3212
+ # successfully. To get the status of the operation, see
3213
+ # [GetOperation][1].
3214
+ #
3215
+ #
3216
+ #
3217
+ # [1]: https://docs.aws.amazon.com/cloud-map/latest/api/API_GetOperation.html
2880
3218
  # @return [String]
2881
3219
  #
2882
3220
  # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/UpdateServiceResponse AWS API Documentation