aws-sdk-servicediscovery 1.0.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.
@@ -0,0 +1,14 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws::ServiceDiscovery
9
+ module Errors
10
+
11
+ extend Aws::Errors::DynamicErrors
12
+
13
+ end
14
+ end
@@ -0,0 +1,23 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws::ServiceDiscovery
9
+ class Resource
10
+
11
+ # @param options ({})
12
+ # @option options [Client] :client
13
+ def initialize(options = {})
14
+ @client = options[:client] || Client.new(options)
15
+ end
16
+
17
+ # @return [Client]
18
+ def client
19
+ @client
20
+ end
21
+
22
+ end
23
+ end
@@ -0,0 +1,1757 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws::ServiceDiscovery
9
+ module Types
10
+
11
+ # @note When making an API call, you may pass CreatePrivateDnsNamespaceRequest
12
+ # data as a hash:
13
+ #
14
+ # {
15
+ # name: "NamespaceName", # required
16
+ # creator_request_id: "ResourceId",
17
+ # description: "ResourceDescription",
18
+ # vpc: "ResourceId", # required
19
+ # }
20
+ #
21
+ # @!attribute [rw] name
22
+ # The name that you want to assign to this namespace. When you create
23
+ # a namespace, Amazon Route 53 automatically creates a hosted zone
24
+ # that has the same name as the namespace.
25
+ # @return [String]
26
+ #
27
+ # @!attribute [rw] creator_request_id
28
+ # An optional parameter that you can use to resolve concurrent
29
+ # creation requests. `CreatorRequestId` helps to determine if a
30
+ # specific client owns the namespace.
31
+ #
32
+ # **A suitable default value is auto-generated.** You should normally
33
+ # not need to pass this option.
34
+ # @return [String]
35
+ #
36
+ # @!attribute [rw] description
37
+ # A description for the namespace.
38
+ # @return [String]
39
+ #
40
+ # @!attribute [rw] vpc
41
+ # The ID of the Amazon VPC that you want to associate the namespace
42
+ # with.
43
+ # @return [String]
44
+ #
45
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/CreatePrivateDnsNamespaceRequest AWS API Documentation
46
+ #
47
+ class CreatePrivateDnsNamespaceRequest < Struct.new(
48
+ :name,
49
+ :creator_request_id,
50
+ :description,
51
+ :vpc)
52
+ include Aws::Structure
53
+ end
54
+
55
+ # @!attribute [rw] operation_id
56
+ # A value that you can use to determine whether the request completed
57
+ # successfully. To get the status of the operation, see GetOperation.
58
+ # @return [String]
59
+ #
60
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/CreatePrivateDnsNamespaceResponse AWS API Documentation
61
+ #
62
+ class CreatePrivateDnsNamespaceResponse < Struct.new(
63
+ :operation_id)
64
+ include Aws::Structure
65
+ end
66
+
67
+ # @note When making an API call, you may pass CreatePublicDnsNamespaceRequest
68
+ # data as a hash:
69
+ #
70
+ # {
71
+ # name: "NamespaceName", # required
72
+ # creator_request_id: "ResourceId",
73
+ # description: "ResourceDescription",
74
+ # }
75
+ #
76
+ # @!attribute [rw] name
77
+ # The name that you want to assign to this namespace.
78
+ # @return [String]
79
+ #
80
+ # @!attribute [rw] creator_request_id
81
+ # An optional parameter that you can use to resolve concurrent
82
+ # creation requests. `CreatorRequestId` helps to determine if a
83
+ # specific client owns the namespace.
84
+ #
85
+ # **A suitable default value is auto-generated.** You should normally
86
+ # not need to pass this option.
87
+ # @return [String]
88
+ #
89
+ # @!attribute [rw] description
90
+ # A description for the namespace.
91
+ # @return [String]
92
+ #
93
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/CreatePublicDnsNamespaceRequest AWS API Documentation
94
+ #
95
+ class CreatePublicDnsNamespaceRequest < Struct.new(
96
+ :name,
97
+ :creator_request_id,
98
+ :description)
99
+ include Aws::Structure
100
+ end
101
+
102
+ # @!attribute [rw] operation_id
103
+ # A value that you can use to determine whether the request completed
104
+ # successfully. To get the status of the operation, see GetOperation.
105
+ # @return [String]
106
+ #
107
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/CreatePublicDnsNamespaceResponse AWS API Documentation
108
+ #
109
+ class CreatePublicDnsNamespaceResponse < Struct.new(
110
+ :operation_id)
111
+ include Aws::Structure
112
+ end
113
+
114
+ # @note When making an API call, you may pass CreateServiceRequest
115
+ # data as a hash:
116
+ #
117
+ # {
118
+ # name: "ServiceName", # required
119
+ # creator_request_id: "ResourceId",
120
+ # description: "ResourceDescription",
121
+ # dns_config: { # required
122
+ # namespace_id: "ResourceId", # required
123
+ # dns_records: [ # required
124
+ # {
125
+ # type: "SRV", # required, accepts SRV, A, AAAA
126
+ # ttl: 1, # required
127
+ # },
128
+ # ],
129
+ # },
130
+ # health_check_config: {
131
+ # type: "HTTP", # accepts HTTP, HTTPS, TCP
132
+ # resource_path: "ResourcePath",
133
+ # failure_threshold: 1,
134
+ # },
135
+ # }
136
+ #
137
+ # @!attribute [rw] name
138
+ # The name that you want to assign to the service.
139
+ # @return [String]
140
+ #
141
+ # @!attribute [rw] creator_request_id
142
+ # An optional parameter that you can use to resolve concurrent
143
+ # creation requests. `CreatorRequestId` helps to determine if a
144
+ # specific client owns the namespace.
145
+ #
146
+ # **A suitable default value is auto-generated.** You should normally
147
+ # not need to pass this option.
148
+ # @return [String]
149
+ #
150
+ # @!attribute [rw] description
151
+ # A description for the service.
152
+ # @return [String]
153
+ #
154
+ # @!attribute [rw] dns_config
155
+ # A complex type that contains information about the resource record
156
+ # sets that you want Amazon Route 53 to create when you register an
157
+ # instance.
158
+ # @return [Types::DnsConfig]
159
+ #
160
+ # @!attribute [rw] health_check_config
161
+ # *Public DNS namespaces only.* A complex type that contains settings
162
+ # for an optional health check. If you specify settings for a health
163
+ # check, Amazon Route 53 associates the health check with all the
164
+ # resource record sets that you specify in `DnsConfig`.
165
+ #
166
+ # <note markdown="1"> The health check uses 30 seconds as the request interval. This is
167
+ # the number of seconds between the time that each Amazon Route 53
168
+ # health checker gets a response from your endpoint and the time that
169
+ # it sends the next health check request. A health checker in each
170
+ # data center around the world sends your endpoint a health check
171
+ # request every 30 seconds. On average, your endpoint receives a
172
+ # health check request about every two seconds. Health checkers in
173
+ # different data centers don't coordinate with one another, so
174
+ # you'll sometimes see several requests per second followed by a few
175
+ # seconds with no health checks at all.
176
+ #
177
+ # </note>
178
+ #
179
+ # For information about the charges for health checks, see [Amazon
180
+ # Route 53 Pricing][1].
181
+ #
182
+ #
183
+ #
184
+ # [1]: http://aws.amazon.com/route53/pricing
185
+ # @return [Types::HealthCheckConfig]
186
+ #
187
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/CreateServiceRequest AWS API Documentation
188
+ #
189
+ class CreateServiceRequest < Struct.new(
190
+ :name,
191
+ :creator_request_id,
192
+ :description,
193
+ :dns_config,
194
+ :health_check_config)
195
+ include Aws::Structure
196
+ end
197
+
198
+ # @!attribute [rw] service
199
+ # A complex type that contains information about the new service.
200
+ # @return [Types::Service]
201
+ #
202
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/CreateServiceResponse AWS API Documentation
203
+ #
204
+ class CreateServiceResponse < Struct.new(
205
+ :service)
206
+ include Aws::Structure
207
+ end
208
+
209
+ # @note When making an API call, you may pass DeleteNamespaceRequest
210
+ # data as a hash:
211
+ #
212
+ # {
213
+ # id: "ResourceId", # required
214
+ # }
215
+ #
216
+ # @!attribute [rw] id
217
+ # The ID of the namespace that you want to delete.
218
+ # @return [String]
219
+ #
220
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/DeleteNamespaceRequest AWS API Documentation
221
+ #
222
+ class DeleteNamespaceRequest < Struct.new(
223
+ :id)
224
+ include Aws::Structure
225
+ end
226
+
227
+ # @!attribute [rw] operation_id
228
+ # A value that you can use to determine whether the request completed
229
+ # successfully. To get the status of the operation, see GetOperation.
230
+ # @return [String]
231
+ #
232
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/DeleteNamespaceResponse AWS API Documentation
233
+ #
234
+ class DeleteNamespaceResponse < Struct.new(
235
+ :operation_id)
236
+ include Aws::Structure
237
+ end
238
+
239
+ # @note When making an API call, you may pass DeleteServiceRequest
240
+ # data as a hash:
241
+ #
242
+ # {
243
+ # id: "ResourceId", # required
244
+ # }
245
+ #
246
+ # @!attribute [rw] id
247
+ # The ID of the service that you want to delete.
248
+ # @return [String]
249
+ #
250
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/DeleteServiceRequest AWS API Documentation
251
+ #
252
+ class DeleteServiceRequest < Struct.new(
253
+ :id)
254
+ include Aws::Structure
255
+ end
256
+
257
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/DeleteServiceResponse AWS API Documentation
258
+ #
259
+ class DeleteServiceResponse < Aws::EmptyStructure; end
260
+
261
+ # @note When making an API call, you may pass DeregisterInstanceRequest
262
+ # data as a hash:
263
+ #
264
+ # {
265
+ # service_id: "ResourceId", # required
266
+ # instance_id: "ResourceId", # required
267
+ # }
268
+ #
269
+ # @!attribute [rw] service_id
270
+ # The ID of the service that the instance is associated with.
271
+ # @return [String]
272
+ #
273
+ # @!attribute [rw] instance_id
274
+ # The value that you specified for `Id` in the RegisterInstance
275
+ # request.
276
+ # @return [String]
277
+ #
278
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/DeregisterInstanceRequest AWS API Documentation
279
+ #
280
+ class DeregisterInstanceRequest < Struct.new(
281
+ :service_id,
282
+ :instance_id)
283
+ include Aws::Structure
284
+ end
285
+
286
+ # @!attribute [rw] operation_id
287
+ # A value that you can use to determine whether the request completed
288
+ # successfully. For more information, see GetOperation.
289
+ # @return [String]
290
+ #
291
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/DeregisterInstanceResponse AWS API Documentation
292
+ #
293
+ class DeregisterInstanceResponse < Struct.new(
294
+ :operation_id)
295
+ include Aws::Structure
296
+ end
297
+
298
+ # A complex type that contains information about the resource record
299
+ # sets that you want Amazon Route 53 to create when you register an
300
+ # instance.
301
+ #
302
+ # @note When making an API call, you may pass DnsConfig
303
+ # data as a hash:
304
+ #
305
+ # {
306
+ # namespace_id: "ResourceId", # required
307
+ # dns_records: [ # required
308
+ # {
309
+ # type: "SRV", # required, accepts SRV, A, AAAA
310
+ # ttl: 1, # required
311
+ # },
312
+ # ],
313
+ # }
314
+ #
315
+ # @!attribute [rw] namespace_id
316
+ # The ID of the namespace to use for DNS configuration.
317
+ # @return [String]
318
+ #
319
+ # @!attribute [rw] dns_records
320
+ # An array that contains one `DnsRecord` object for each resource
321
+ # record set that you want Amazon Route 53 to create when you register
322
+ # an instance.
323
+ # @return [Array<Types::DnsRecord>]
324
+ #
325
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/DnsConfig AWS API Documentation
326
+ #
327
+ class DnsConfig < Struct.new(
328
+ :namespace_id,
329
+ :dns_records)
330
+ include Aws::Structure
331
+ end
332
+
333
+ # A complex type that contains information about changes to the resource
334
+ # record sets that Amazon Route 53 creates when you register an
335
+ # instance.
336
+ #
337
+ # @note When making an API call, you may pass DnsConfigChange
338
+ # data as a hash:
339
+ #
340
+ # {
341
+ # dns_records: [ # required
342
+ # {
343
+ # type: "SRV", # required, accepts SRV, A, AAAA
344
+ # ttl: 1, # required
345
+ # },
346
+ # ],
347
+ # }
348
+ #
349
+ # @!attribute [rw] dns_records
350
+ # An array that contains one `DnsRecord` object for each resource
351
+ # record set that you want Amazon Route 53 to create when you register
352
+ # an instance.
353
+ # @return [Array<Types::DnsRecord>]
354
+ #
355
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/DnsConfigChange AWS API Documentation
356
+ #
357
+ class DnsConfigChange < Struct.new(
358
+ :dns_records)
359
+ include Aws::Structure
360
+ end
361
+
362
+ # A complex type that contains the ID for the hosted zone that Amazon
363
+ # Route 53 creates when you create a namespace.
364
+ #
365
+ # @!attribute [rw] hosted_zone_id
366
+ # The ID for the hosted zone that Amazon Route 53 creates when you
367
+ # create a namespace.
368
+ # @return [String]
369
+ #
370
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/DnsProperties AWS API Documentation
371
+ #
372
+ class DnsProperties < Struct.new(
373
+ :hosted_zone_id)
374
+ include Aws::Structure
375
+ end
376
+
377
+ # A complex type that contains information about the resource record
378
+ # sets that you want Amazon Route 53 to create when you register an
379
+ # instance.
380
+ #
381
+ # @note When making an API call, you may pass DnsRecord
382
+ # data as a hash:
383
+ #
384
+ # {
385
+ # type: "SRV", # required, accepts SRV, A, AAAA
386
+ # ttl: 1, # required
387
+ # }
388
+ #
389
+ # @!attribute [rw] type
390
+ # The type of the resource, which indicates the value that Amazon
391
+ # Route 53 returns in response to DNS queries. The following values
392
+ # are supported:
393
+ #
394
+ # * **A**\: Amazon Route 53 returns the IP address of the resource in
395
+ # IPv4 format, such as 192.0.2.44.
396
+ #
397
+ # * **AAAA**\: Amazon Route 53 returns the IP address of the resource
398
+ # in IPv6 format, such as 2001:0db8:85a3:0000:0000:abcd:0001:2345.
399
+ #
400
+ # * **SRV**\: Amazon Route 53 returns the value for an SRV record. The
401
+ # value for an SRV record uses the following template, which can't
402
+ # be changed:
403
+ #
404
+ # `priority weight port resource-record-set-name`
405
+ #
406
+ # The values of `priority` and `weight` are both set to 1. The value
407
+ # of port comes from the value that you specify for `Port` when you
408
+ # submit a RegisterInstance request.
409
+ # @return [String]
410
+ #
411
+ # @!attribute [rw] ttl
412
+ # The amount of time, in seconds, that you want DNS resolvers to cache
413
+ # the settings for this resource record set.
414
+ # @return [Integer]
415
+ #
416
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/DnsRecord AWS API Documentation
417
+ #
418
+ class DnsRecord < Struct.new(
419
+ :type,
420
+ :ttl)
421
+ include Aws::Structure
422
+ end
423
+
424
+ # @note When making an API call, you may pass GetInstanceRequest
425
+ # data as a hash:
426
+ #
427
+ # {
428
+ # service_id: "ResourceId", # required
429
+ # instance_id: "ResourceId", # required
430
+ # }
431
+ #
432
+ # @!attribute [rw] service_id
433
+ # The ID of the service that the instance is associated with.
434
+ # @return [String]
435
+ #
436
+ # @!attribute [rw] instance_id
437
+ # The ID of the instance that you want to get information about.
438
+ # @return [String]
439
+ #
440
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/GetInstanceRequest AWS API Documentation
441
+ #
442
+ class GetInstanceRequest < Struct.new(
443
+ :service_id,
444
+ :instance_id)
445
+ include Aws::Structure
446
+ end
447
+
448
+ # @!attribute [rw] instance
449
+ # A complex type that contains information about a specified instance.
450
+ # @return [Types::Instance]
451
+ #
452
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/GetInstanceResponse AWS API Documentation
453
+ #
454
+ class GetInstanceResponse < Struct.new(
455
+ :instance)
456
+ include Aws::Structure
457
+ end
458
+
459
+ # @note When making an API call, you may pass GetInstancesHealthStatusRequest
460
+ # data as a hash:
461
+ #
462
+ # {
463
+ # service_id: "ResourceId", # required
464
+ # instances: ["ResourceId"],
465
+ # max_results: 1,
466
+ # next_token: "NextToken",
467
+ # }
468
+ #
469
+ # @!attribute [rw] service_id
470
+ # The ID of the service that the instance is associated with.
471
+ # @return [String]
472
+ #
473
+ # @!attribute [rw] instances
474
+ # An array that contains the IDs of all the instances that you want to
475
+ # get the health status for. To get the IDs for the instances that
476
+ # you've created by using a specified service, submit a ListInstances
477
+ # request.
478
+ #
479
+ # If you omit `Instances`, Amazon Route 53 returns the health status
480
+ # for all the instances that are associated with the specified
481
+ # service.
482
+ # @return [Array<String>]
483
+ #
484
+ # @!attribute [rw] max_results
485
+ # The maximum number of instances that you want Amazon Route 53 to
486
+ # return in the response to a `GetInstancesHealthStatus` request. If
487
+ # you don't specify a value for `MaxResults`, Amazon Route 53 returns
488
+ # up to 100 instances.
489
+ # @return [Integer]
490
+ #
491
+ # @!attribute [rw] next_token
492
+ # For the first `GetInstancesHealthStatus` request, omit this value.
493
+ #
494
+ # If more than `MaxResults` instances match the specified criteria,
495
+ # you can submit another `GetInstancesHealthStatus` request to get the
496
+ # next group of results. Specify the value of `NextToken` from the
497
+ # previous response in the next request.
498
+ # @return [String]
499
+ #
500
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/GetInstancesHealthStatusRequest AWS API Documentation
501
+ #
502
+ class GetInstancesHealthStatusRequest < Struct.new(
503
+ :service_id,
504
+ :instances,
505
+ :max_results,
506
+ :next_token)
507
+ include Aws::Structure
508
+ end
509
+
510
+ # @!attribute [rw] status
511
+ # A complex type that contains the IDs and the health status of the
512
+ # instances that you specified in the `GetInstancesHealthStatus`
513
+ # request.
514
+ # @return [Hash<String,String>]
515
+ #
516
+ # @!attribute [rw] next_token
517
+ # If more than `MaxResults` instances match the specified criteria,
518
+ # you can submit another `GetInstancesHealthStatus` request to get the
519
+ # next group of results. Specify the value of `NextToken` from the
520
+ # previous response in the next request.
521
+ # @return [String]
522
+ #
523
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/GetInstancesHealthStatusResponse AWS API Documentation
524
+ #
525
+ class GetInstancesHealthStatusResponse < Struct.new(
526
+ :status,
527
+ :next_token)
528
+ include Aws::Structure
529
+ end
530
+
531
+ # @note When making an API call, you may pass GetNamespaceRequest
532
+ # data as a hash:
533
+ #
534
+ # {
535
+ # id: "ResourceId", # required
536
+ # }
537
+ #
538
+ # @!attribute [rw] id
539
+ # The ID of the namespace that you want to get information about.
540
+ # @return [String]
541
+ #
542
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/GetNamespaceRequest AWS API Documentation
543
+ #
544
+ class GetNamespaceRequest < Struct.new(
545
+ :id)
546
+ include Aws::Structure
547
+ end
548
+
549
+ # @!attribute [rw] namespace
550
+ # A complex type that contains information about the specified
551
+ # namespace.
552
+ # @return [Types::Namespace]
553
+ #
554
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/GetNamespaceResponse AWS API Documentation
555
+ #
556
+ class GetNamespaceResponse < Struct.new(
557
+ :namespace)
558
+ include Aws::Structure
559
+ end
560
+
561
+ # @note When making an API call, you may pass GetOperationRequest
562
+ # data as a hash:
563
+ #
564
+ # {
565
+ # operation_id: "ResourceId", # required
566
+ # }
567
+ #
568
+ # @!attribute [rw] operation_id
569
+ # The ID of the operation that you want to get more information about.
570
+ # @return [String]
571
+ #
572
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/GetOperationRequest AWS API Documentation
573
+ #
574
+ class GetOperationRequest < Struct.new(
575
+ :operation_id)
576
+ include Aws::Structure
577
+ end
578
+
579
+ # @!attribute [rw] operation
580
+ # A complex type that contains information about the operation.
581
+ # @return [Types::Operation]
582
+ #
583
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/GetOperationResponse AWS API Documentation
584
+ #
585
+ class GetOperationResponse < Struct.new(
586
+ :operation)
587
+ include Aws::Structure
588
+ end
589
+
590
+ # @note When making an API call, you may pass GetServiceRequest
591
+ # data as a hash:
592
+ #
593
+ # {
594
+ # id: "ResourceId", # required
595
+ # }
596
+ #
597
+ # @!attribute [rw] id
598
+ # The ID of the service that you want to get settings for.
599
+ # @return [String]
600
+ #
601
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/GetServiceRequest AWS API Documentation
602
+ #
603
+ class GetServiceRequest < Struct.new(
604
+ :id)
605
+ include Aws::Structure
606
+ end
607
+
608
+ # @!attribute [rw] service
609
+ # A complex type that contains information about the service.
610
+ # @return [Types::Service]
611
+ #
612
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/GetServiceResponse AWS API Documentation
613
+ #
614
+ class GetServiceResponse < Struct.new(
615
+ :service)
616
+ include Aws::Structure
617
+ end
618
+
619
+ # *Public DNS namespaces only.* A complex type that contains settings
620
+ # for an optional health check. If you specify settings for a health
621
+ # check, Amazon Route 53 associates the health check with all the
622
+ # resource record sets that you specify in `DnsConfig`.
623
+ #
624
+ # <note markdown="1"> The health check uses 30 seconds as the request interval. This is the
625
+ # number of seconds between the time that each Amazon Route 53 health
626
+ # checker gets a response from your endpoint and the time that it sends
627
+ # the next health check request. A health checker in each data center
628
+ # around the world sends your endpoint a health check request every 30
629
+ # seconds. On average, your endpoint receives a health check request
630
+ # about every two seconds. Health checkers in different data centers
631
+ # don't coordinate with one another, so you'll sometimes see several
632
+ # requests per second followed by a few seconds with no health checks at
633
+ # all.
634
+ #
635
+ # </note>
636
+ #
637
+ # For information about the charges for health checks, see [Amazon Route
638
+ # 53 Pricing][1].
639
+ #
640
+ #
641
+ #
642
+ # [1]: http://aws.amazon.com/route53/pricing
643
+ #
644
+ # @note When making an API call, you may pass HealthCheckConfig
645
+ # data as a hash:
646
+ #
647
+ # {
648
+ # type: "HTTP", # accepts HTTP, HTTPS, TCP
649
+ # resource_path: "ResourcePath",
650
+ # failure_threshold: 1,
651
+ # }
652
+ #
653
+ # @!attribute [rw] type
654
+ # The type of health check that you want to create, which indicates
655
+ # how Amazon Route 53 determines whether an endpoint is healthy.
656
+ #
657
+ # You can't change the value of `Type` after you create a health
658
+ # check.
659
+ #
660
+ # You can create the following types of health checks:
661
+ #
662
+ # * **HTTP**\: Amazon Route 53 tries to establish a TCP connection. If
663
+ # successful, Amazon Route 53 submits an HTTP request and waits for
664
+ # an HTTP status code of 200 or greater and less than 400.
665
+ #
666
+ # * **HTTPS**\: Amazon Route 53 tries to establish a TCP connection.
667
+ # If successful, Amazon Route 53 submits an HTTPS request and waits
668
+ # for an HTTP status code of 200 or greater and less than 400.
669
+ #
670
+ # If you specify HTTPS for the value of `Type`, the endpoint must
671
+ # support TLS v1.0 or later.
672
+ #
673
+ # * **TCP**\: Amazon Route 53 tries to establish a TCP connection.
674
+ #
675
+ # For more information, see [How Amazon Route 53 Determines Whether an
676
+ # Endpoint Is Healthy][1] in the *Amazon Route 53 Developer Guide*.
677
+ #
678
+ #
679
+ #
680
+ # [1]: http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-determining-health-of-endpoints.html
681
+ # @return [String]
682
+ #
683
+ # @!attribute [rw] resource_path
684
+ # The path that you want Amazon Route 53 to request when performing
685
+ # health checks. The path can be any value for which your endpoint
686
+ # will return an HTTP status code of 2xx or 3xx when the endpoint is
687
+ # healthy, such as the file `/docs/route53-health-check.html`. Amazon
688
+ # Route 53 automatically adds the DNS name for the service and a
689
+ # leading forward slash (`/`) character.
690
+ # @return [String]
691
+ #
692
+ # @!attribute [rw] failure_threshold
693
+ # The number of consecutive health checks that an endpoint must pass
694
+ # or fail for Amazon Route 53 to change the current status of the
695
+ # endpoint from unhealthy to healthy or vice versa. For more
696
+ # information, see [How Amazon Route 53 Determines Whether an Endpoint
697
+ # Is Healthy][1] in the *Amazon Route 53 Developer Guide*.
698
+ #
699
+ #
700
+ #
701
+ # [1]: http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-determining-health-of-endpoints.html
702
+ # @return [Integer]
703
+ #
704
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/HealthCheckConfig AWS API Documentation
705
+ #
706
+ class HealthCheckConfig < Struct.new(
707
+ :type,
708
+ :resource_path,
709
+ :failure_threshold)
710
+ include Aws::Structure
711
+ end
712
+
713
+ # A complex type that contains information about an instance that Amazon
714
+ # Route 53 creates when you submit a `RegisterInstance` request.
715
+ #
716
+ # @!attribute [rw] id
717
+ # An identifier that you want to associate with the instance. Note the
718
+ # following:
719
+ #
720
+ # * You can use this value to update an existing instance.
721
+ #
722
+ # * To associate a new instance, you must specify a value that is
723
+ # unique among instances that you associate by using the same
724
+ # service.
725
+ # @return [String]
726
+ #
727
+ # @!attribute [rw] creator_request_id
728
+ # An optional parameter that you can use to resolve concurrent
729
+ # creation requests. `CreatorRequestId` helps to determine if a
730
+ # specific client owns the namespace.
731
+ # @return [String]
732
+ #
733
+ # @!attribute [rw] attributes
734
+ # A string map that contains attribute keys and values. Supported
735
+ # attribute keys include the following:
736
+ #
737
+ # * `AWS_INSTANCE_PORT`\: The port on the endpoint that you want
738
+ # Amazon Route 53 to perform health checks on. This value is also
739
+ # used for the port value in an SRV record if the service that you
740
+ # specify includes an SRV record. For more information, see
741
+ # CreateService.
742
+ #
743
+ # * `AWS_INSTANCE_IP`\: If the service that you specify contains a
744
+ # resource record set template for an A or AAAA record, the IP
745
+ # address that you want Amazon Route 53 to use for the value of the
746
+ # A record.
747
+ #
748
+ # * `AWS_INSTANCE_WEIGHT`\: The weight value in an SRV record if the
749
+ # service that you specify includes an SRV record. You can also
750
+ # specify a default weight that is applied to all instances in the
751
+ # `Service` configuration. For more information, see CreateService.
752
+ #
753
+ # * `AWS_INSTANCE_PRIORITY`\: The priority value in an SRV record if
754
+ # the service that you specify includes an SRV record.
755
+ # @return [Hash<String,String>]
756
+ #
757
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/Instance AWS API Documentation
758
+ #
759
+ class Instance < Struct.new(
760
+ :id,
761
+ :creator_request_id,
762
+ :attributes)
763
+ include Aws::Structure
764
+ end
765
+
766
+ # A complex type that contains information about the instances that you
767
+ # created by using a specified service.
768
+ #
769
+ # @!attribute [rw] id
770
+ # The ID for an instance that you created by using a specified
771
+ # service.
772
+ # @return [String]
773
+ #
774
+ # @!attribute [rw] attributes
775
+ # A string map that contain attribute keys and values for an instance.
776
+ # Supported attribute keys include the following:
777
+ #
778
+ # * `AWS_INSTANCE_PORT`\: The port on the endpoint that you want
779
+ # Amazon Route 53 to perform health checks on. This value is also
780
+ # used for the port value in an SRV record if the service that you
781
+ # specify includes an SRV record. For more information, see
782
+ # CreateService.
783
+ #
784
+ # * `AWS_INSTANCE_IP`\: If the service that you specify contains a
785
+ # resource record set template for an A or AAAA record, the IP
786
+ # address that you want Amazon Route 53 to use for the value of the
787
+ # A record.
788
+ # @return [Hash<String,String>]
789
+ #
790
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/InstanceSummary AWS API Documentation
791
+ #
792
+ class InstanceSummary < Struct.new(
793
+ :id,
794
+ :attributes)
795
+ include Aws::Structure
796
+ end
797
+
798
+ # @note When making an API call, you may pass ListInstancesRequest
799
+ # data as a hash:
800
+ #
801
+ # {
802
+ # service_id: "ResourceId", # required
803
+ # next_token: "NextToken",
804
+ # max_results: 1,
805
+ # }
806
+ #
807
+ # @!attribute [rw] service_id
808
+ # The ID of the service that you want to list instances for.
809
+ # @return [String]
810
+ #
811
+ # @!attribute [rw] next_token
812
+ # For the first `ListInstances` request, omit this value.
813
+ #
814
+ # If more than `MaxResults` instances match the specified criteria,
815
+ # you can submit another `ListInstances` request to get the next group
816
+ # of results. Specify the value of `NextToken` from the previous
817
+ # response in the next request.
818
+ # @return [String]
819
+ #
820
+ # @!attribute [rw] max_results
821
+ # The maximum number of instances that you want Amazon Route 53 to
822
+ # return in the response to a `ListInstances` request. If you don't
823
+ # specify a value for `MaxResults`, Amazon Route 53 returns up to 100
824
+ # instances.
825
+ # @return [Integer]
826
+ #
827
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/ListInstancesRequest AWS API Documentation
828
+ #
829
+ class ListInstancesRequest < Struct.new(
830
+ :service_id,
831
+ :next_token,
832
+ :max_results)
833
+ include Aws::Structure
834
+ end
835
+
836
+ # @!attribute [rw] instances
837
+ # Summary information about the instances that are associated with the
838
+ # specified service.
839
+ # @return [Array<Types::InstanceSummary>]
840
+ #
841
+ # @!attribute [rw] next_token
842
+ # If more than `MaxResults` instances match the specified criteria,
843
+ # you can submit another `ListInstances` request to get the next group
844
+ # of results. Specify the value of `NextToken` from the previous
845
+ # response in the next request.
846
+ # @return [String]
847
+ #
848
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/ListInstancesResponse AWS API Documentation
849
+ #
850
+ class ListInstancesResponse < Struct.new(
851
+ :instances,
852
+ :next_token)
853
+ include Aws::Structure
854
+ end
855
+
856
+ # @note When making an API call, you may pass ListNamespacesRequest
857
+ # data as a hash:
858
+ #
859
+ # {
860
+ # next_token: "NextToken",
861
+ # max_results: 1,
862
+ # filters: [
863
+ # {
864
+ # name: "TYPE", # required, accepts TYPE
865
+ # values: ["FilterValue"], # required
866
+ # condition: "EQ", # accepts EQ, IN, BETWEEN
867
+ # },
868
+ # ],
869
+ # }
870
+ #
871
+ # @!attribute [rw] next_token
872
+ # For the first `ListNamespaces` request, omit this value.
873
+ #
874
+ # If more than `MaxResults` namespaces match the specified criteria,
875
+ # you can submit another `ListNamespaces` request to get the next
876
+ # group of results. Specify the value of `NextToken` from the previous
877
+ # response in the next request.
878
+ # @return [String]
879
+ #
880
+ # @!attribute [rw] max_results
881
+ # The maximum number of namespaces that you want Amazon Route 53 to
882
+ # return in the response to a `ListNamespaces` request. If you don't
883
+ # specify a value for `MaxResults`, Amazon Route 53 returns up to 100
884
+ # namespaces.
885
+ # @return [Integer]
886
+ #
887
+ # @!attribute [rw] filters
888
+ # A complex type that contains specifications for the namespaces that
889
+ # you want to list.
890
+ #
891
+ # If you specify more than one filter, an operation must match all
892
+ # filters to be returned by ListNamespaces.
893
+ # @return [Array<Types::NamespaceFilter>]
894
+ #
895
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/ListNamespacesRequest AWS API Documentation
896
+ #
897
+ class ListNamespacesRequest < Struct.new(
898
+ :next_token,
899
+ :max_results,
900
+ :filters)
901
+ include Aws::Structure
902
+ end
903
+
904
+ # @!attribute [rw] namespaces
905
+ # An array that contains one `NamespaceSummary` object for each
906
+ # namespace that matches the specified filter criteria.
907
+ # @return [Array<Types::NamespaceSummary>]
908
+ #
909
+ # @!attribute [rw] next_token
910
+ # If more than `MaxResults` namespaces match the specified criteria,
911
+ # you can submit another `ListNamespaces` request to get the next
912
+ # group of results. Specify the value of `NextToken` from the previous
913
+ # response in the next request.
914
+ # @return [String]
915
+ #
916
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/ListNamespacesResponse AWS API Documentation
917
+ #
918
+ class ListNamespacesResponse < Struct.new(
919
+ :namespaces,
920
+ :next_token)
921
+ include Aws::Structure
922
+ end
923
+
924
+ # @note When making an API call, you may pass ListOperationsRequest
925
+ # data as a hash:
926
+ #
927
+ # {
928
+ # next_token: "NextToken",
929
+ # max_results: 1,
930
+ # filters: [
931
+ # {
932
+ # name: "NAMESPACE_ID", # required, accepts NAMESPACE_ID, SERVICE_ID, STATUS, TYPE, UPDATE_DATE
933
+ # values: ["FilterValue"], # required
934
+ # condition: "EQ", # accepts EQ, IN, BETWEEN
935
+ # },
936
+ # ],
937
+ # }
938
+ #
939
+ # @!attribute [rw] next_token
940
+ # For the first `ListOperations` request, omit this value.
941
+ #
942
+ # If more than `MaxResults` operations match the specified criteria,
943
+ # you can submit another `ListOperations` request to get the next
944
+ # group of results. Specify the value of `NextToken` from the previous
945
+ # response in the next request.
946
+ # @return [String]
947
+ #
948
+ # @!attribute [rw] max_results
949
+ # The maximum number of items that you want Amazon Route 53 to return
950
+ # in the response to a `ListOperations` request. If you don't specify
951
+ # a value for `MaxResults`, Amazon Route 53 returns up to 100
952
+ # operations.
953
+ # @return [Integer]
954
+ #
955
+ # @!attribute [rw] filters
956
+ # A complex type that contains specifications for the operations that
957
+ # you want to list, for example, operations that you started between a
958
+ # specified start date and end date.
959
+ #
960
+ # If you specify more than one filter, an operation must match all
961
+ # filters to be returned by `ListOperations`.
962
+ # @return [Array<Types::OperationFilter>]
963
+ #
964
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/ListOperationsRequest AWS API Documentation
965
+ #
966
+ class ListOperationsRequest < Struct.new(
967
+ :next_token,
968
+ :max_results,
969
+ :filters)
970
+ include Aws::Structure
971
+ end
972
+
973
+ # @!attribute [rw] operations
974
+ # Summary information about the operations that match the specified
975
+ # criteria.
976
+ # @return [Array<Types::OperationSummary>]
977
+ #
978
+ # @!attribute [rw] next_token
979
+ # If more than `MaxResults` operations match the specified criteria,
980
+ # you can submit another `ListOperations` request to get the next
981
+ # group of results. Specify the value of `NextToken` from the previous
982
+ # response in the next request.
983
+ # @return [String]
984
+ #
985
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/ListOperationsResponse AWS API Documentation
986
+ #
987
+ class ListOperationsResponse < Struct.new(
988
+ :operations,
989
+ :next_token)
990
+ include Aws::Structure
991
+ end
992
+
993
+ # @note When making an API call, you may pass ListServicesRequest
994
+ # data as a hash:
995
+ #
996
+ # {
997
+ # next_token: "NextToken",
998
+ # max_results: 1,
999
+ # filters: [
1000
+ # {
1001
+ # name: "NAMESPACE_ID", # required, accepts NAMESPACE_ID
1002
+ # values: ["FilterValue"], # required
1003
+ # condition: "EQ", # accepts EQ, IN, BETWEEN
1004
+ # },
1005
+ # ],
1006
+ # }
1007
+ #
1008
+ # @!attribute [rw] next_token
1009
+ # For the first `ListServices` request, omit this value.
1010
+ #
1011
+ # If more than `MaxResults` services match the specified criteria, you
1012
+ # can submit another `ListServices` request to get the next group of
1013
+ # results. Specify the value of `NextToken` from the previous response
1014
+ # in the next request.
1015
+ # @return [String]
1016
+ #
1017
+ # @!attribute [rw] max_results
1018
+ # The maximum number of services that you want Amazon Route 53 to
1019
+ # return in the response to a `ListServices` request. If you don't
1020
+ # specify a value for `MaxResults`, Amazon Route 53 returns up to 100
1021
+ # services.
1022
+ # @return [Integer]
1023
+ #
1024
+ # @!attribute [rw] filters
1025
+ # A complex type that contains specifications for the namespaces that
1026
+ # you want to list services for.
1027
+ #
1028
+ # If you specify more than one filter, an operation must match all
1029
+ # filters to be returned by `ListServices`.
1030
+ # @return [Array<Types::ServiceFilter>]
1031
+ #
1032
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/ListServicesRequest AWS API Documentation
1033
+ #
1034
+ class ListServicesRequest < Struct.new(
1035
+ :next_token,
1036
+ :max_results,
1037
+ :filters)
1038
+ include Aws::Structure
1039
+ end
1040
+
1041
+ # @!attribute [rw] services
1042
+ # An array that contains one `ServiceSummary` object for each service
1043
+ # that matches the specified filter criteria.
1044
+ # @return [Array<Types::ServiceSummary>]
1045
+ #
1046
+ # @!attribute [rw] next_token
1047
+ # If more than `MaxResults` operations match the specified criteria,
1048
+ # the value of `NextToken` is the first service in the next group of
1049
+ # services that were created by the current AWS account. To get the
1050
+ # next group, specify the value of `NextToken` from the previous
1051
+ # response in the next request.
1052
+ # @return [String]
1053
+ #
1054
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/ListServicesResponse AWS API Documentation
1055
+ #
1056
+ class ListServicesResponse < Struct.new(
1057
+ :services,
1058
+ :next_token)
1059
+ include Aws::Structure
1060
+ end
1061
+
1062
+ # A complex type that contains information about a specified namespace.
1063
+ #
1064
+ # @!attribute [rw] id
1065
+ # The ID of a namespace.
1066
+ # @return [String]
1067
+ #
1068
+ # @!attribute [rw] arn
1069
+ # The Amazon Resource Name (ARN) that Amazon Route 53 assigns to the
1070
+ # namespace when you create it.
1071
+ # @return [String]
1072
+ #
1073
+ # @!attribute [rw] name
1074
+ # The name of the namespace, such as `example.com`.
1075
+ # @return [String]
1076
+ #
1077
+ # @!attribute [rw] type
1078
+ # The type of the namespace. Valid values are `DNS_PUBLIC` and
1079
+ # `DNS_PRIVATE`.
1080
+ # @return [String]
1081
+ #
1082
+ # @!attribute [rw] description
1083
+ # The description that you specify for the namespace when you create
1084
+ # it.
1085
+ # @return [String]
1086
+ #
1087
+ # @!attribute [rw] service_count
1088
+ # The number of services that are associated with the namespace.
1089
+ # @return [Integer]
1090
+ #
1091
+ # @!attribute [rw] properties
1092
+ # A complex type that contains information that's specific to the
1093
+ # type of the namespace.
1094
+ # @return [Types::NamespaceProperties]
1095
+ #
1096
+ # @!attribute [rw] create_date
1097
+ # The date that the namespace was created, in Unix date/time format
1098
+ # and Coordinated Universal Time (UTC).
1099
+ # @return [Time]
1100
+ #
1101
+ # @!attribute [rw] creator_request_id
1102
+ # An optional parameter that you can use to resolve concurrent
1103
+ # creation requests. `CreatorRequestId` helps to determine if a
1104
+ # specific client owns the namespace.
1105
+ # @return [String]
1106
+ #
1107
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/Namespace AWS API Documentation
1108
+ #
1109
+ class Namespace < Struct.new(
1110
+ :id,
1111
+ :arn,
1112
+ :name,
1113
+ :type,
1114
+ :description,
1115
+ :service_count,
1116
+ :properties,
1117
+ :create_date,
1118
+ :creator_request_id)
1119
+ include Aws::Structure
1120
+ end
1121
+
1122
+ # A complex type that identifies the namespaces that you want to list.
1123
+ # You can choose to list public or private namespaces.
1124
+ #
1125
+ # @note When making an API call, you may pass NamespaceFilter
1126
+ # data as a hash:
1127
+ #
1128
+ # {
1129
+ # name: "TYPE", # required, accepts TYPE
1130
+ # values: ["FilterValue"], # required
1131
+ # condition: "EQ", # accepts EQ, IN, BETWEEN
1132
+ # }
1133
+ #
1134
+ # @!attribute [rw] name
1135
+ # Specify `TYPE`.
1136
+ # @return [String]
1137
+ #
1138
+ # @!attribute [rw] values
1139
+ # If you specify `EQ` for `Condition`, specify either `DNS_PUBLIC` or
1140
+ # `DNS_PRIVATE`.
1141
+ #
1142
+ # If you specify `IN` for `Condition`, you can specify `DNS_PUBLIC`,
1143
+ # `DNS_PRIVATE`, or both.
1144
+ # @return [Array<String>]
1145
+ #
1146
+ # @!attribute [rw] condition
1147
+ # The operator that you want to use to determine whether
1148
+ # `ListNamespaces` returns a namespace. Valid values for `condition`
1149
+ # include:
1150
+ #
1151
+ # * `EQ`\: When you specify `EQ` for the condition, you can choose to
1152
+ # list only public namespaces or private namespaces, but not both.
1153
+ # `EQ` is the default condition and can be omitted.
1154
+ #
1155
+ # * `IN`\: When you specify `IN` for the condition, you can choose to
1156
+ # list public namespaces, private namespaces, or both.
1157
+ # @return [String]
1158
+ #
1159
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/NamespaceFilter AWS API Documentation
1160
+ #
1161
+ class NamespaceFilter < Struct.new(
1162
+ :name,
1163
+ :values,
1164
+ :condition)
1165
+ include Aws::Structure
1166
+ end
1167
+
1168
+ # A complex type that contains information that is specific to the
1169
+ # namespace type.
1170
+ #
1171
+ # @!attribute [rw] dns_properties
1172
+ # A complex type that contains the ID for the hosted zone that Amazon
1173
+ # Route 53 creates when you create a namespace.
1174
+ # @return [Types::DnsProperties]
1175
+ #
1176
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/NamespaceProperties AWS API Documentation
1177
+ #
1178
+ class NamespaceProperties < Struct.new(
1179
+ :dns_properties)
1180
+ include Aws::Structure
1181
+ end
1182
+
1183
+ # A complex type that contains information about a namespace.
1184
+ #
1185
+ # @!attribute [rw] id
1186
+ # The ID of the namespace.
1187
+ # @return [String]
1188
+ #
1189
+ # @!attribute [rw] arn
1190
+ # The Amazon Resource Name (ARN) that Amazon Route 53 assigns to the
1191
+ # namespace when you create it.
1192
+ # @return [String]
1193
+ #
1194
+ # @!attribute [rw] name
1195
+ # The name of the namespace. When you create a namespace, Amazon Route
1196
+ # 53 automatically creates a hosted zone that has the same name as the
1197
+ # namespace.
1198
+ # @return [String]
1199
+ #
1200
+ # @!attribute [rw] type
1201
+ # The type of the namespace, either public or private.
1202
+ # @return [String]
1203
+ #
1204
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/NamespaceSummary AWS API Documentation
1205
+ #
1206
+ class NamespaceSummary < Struct.new(
1207
+ :id,
1208
+ :arn,
1209
+ :name,
1210
+ :type)
1211
+ include Aws::Structure
1212
+ end
1213
+
1214
+ # A complex type that contains information about a specified operation.
1215
+ #
1216
+ # @!attribute [rw] id
1217
+ # The ID of the operation that you want to get information about.
1218
+ # @return [String]
1219
+ #
1220
+ # @!attribute [rw] type
1221
+ # The name of the operation that is associated with the specified ID.
1222
+ # @return [String]
1223
+ #
1224
+ # @!attribute [rw] status
1225
+ # The status of the operation. Values include the following:
1226
+ #
1227
+ # * **SUBMITTED**\: This is the initial state immediately after you
1228
+ # submit a request.
1229
+ #
1230
+ # * **PENDING**\: Amazon Route 53 is performing the operation.
1231
+ #
1232
+ # * **SUCCESS**\: The operation succeeded.
1233
+ #
1234
+ # * **FAIL**\: The operation failed. For the failure reason, see
1235
+ # `ErrorMessage`.
1236
+ # @return [String]
1237
+ #
1238
+ # @!attribute [rw] error_message
1239
+ # If the value of `Status` is `FAIL`, the reason that the operation
1240
+ # failed.
1241
+ # @return [String]
1242
+ #
1243
+ # @!attribute [rw] error_code
1244
+ # The code associated with `ErrorMessage`.
1245
+ # @return [String]
1246
+ #
1247
+ # @!attribute [rw] create_date
1248
+ # The date and time that the request was submitted, in Unix date/time
1249
+ # format and Coordinated Universal Time (UTC).
1250
+ # @return [Time]
1251
+ #
1252
+ # @!attribute [rw] update_date
1253
+ # The date and time that the value of `Status` changed to the current
1254
+ # value, in Unix date/time format and Coordinated Universal Time
1255
+ # (UTC).
1256
+ # @return [Time]
1257
+ #
1258
+ # @!attribute [rw] targets
1259
+ # The name of the target entity that is associated with the operation:
1260
+ #
1261
+ # * **NAMESPACE**\: The namespace ID is returned in the `ResourceId`
1262
+ # property.
1263
+ #
1264
+ # * **SERVICE**\: The service ID is returned in the `ResourceId`
1265
+ # property.
1266
+ #
1267
+ # * **INSTANCE**\: The instance ID is returned in the `ResourceId`
1268
+ # property.
1269
+ # @return [Hash<String,String>]
1270
+ #
1271
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/Operation AWS API Documentation
1272
+ #
1273
+ class Operation < Struct.new(
1274
+ :id,
1275
+ :type,
1276
+ :status,
1277
+ :error_message,
1278
+ :error_code,
1279
+ :create_date,
1280
+ :update_date,
1281
+ :targets)
1282
+ include Aws::Structure
1283
+ end
1284
+
1285
+ # A complex type that lets you select the operations that you want to
1286
+ # list.
1287
+ #
1288
+ # @note When making an API call, you may pass OperationFilter
1289
+ # data as a hash:
1290
+ #
1291
+ # {
1292
+ # name: "NAMESPACE_ID", # required, accepts NAMESPACE_ID, SERVICE_ID, STATUS, TYPE, UPDATE_DATE
1293
+ # values: ["FilterValue"], # required
1294
+ # condition: "EQ", # accepts EQ, IN, BETWEEN
1295
+ # }
1296
+ #
1297
+ # @!attribute [rw] name
1298
+ # Specify the operations that you want to get:
1299
+ #
1300
+ # * **NAMESPACE\_ID**\: Gets operations related to specified
1301
+ # namespaces.
1302
+ #
1303
+ # * **SERVICE\_ID**\: Gets operations related to specified services.
1304
+ #
1305
+ # * **STATUS**\: Gets operations based on the status of the
1306
+ # operations: `SUBMITTED`, `PENDING`, `SUCCEED`, or `FAIL`.
1307
+ #
1308
+ # * **TYPE**\: Gets specified types of operation.
1309
+ #
1310
+ # * **UPDATE\_DATE**\: Gets operations that changed status during a
1311
+ # specified date/time range.
1312
+ # @return [String]
1313
+ #
1314
+ # @!attribute [rw] values
1315
+ # Specify values that are applicable to the value that you specify for
1316
+ # `Name`\:
1317
+ #
1318
+ # * **NAMESPACE\_ID**\: Specify one namespace ID.
1319
+ #
1320
+ # * **SERVICE\_ID**\: Specify one service ID.
1321
+ #
1322
+ # * **STATUS**\: Specify one or more statuses: `SUBMITTED`, `PENDING`,
1323
+ # `SUCCEED`, or `FAIL`.
1324
+ #
1325
+ # * **TYPE**\: Specify one or more of the following types:
1326
+ # `CREATE_NAMESPACE`, `DELETE_NAMESPACE`, `UPDATE_SERVICE`,
1327
+ # `REGISTER_INSTANCE`, or `DEREGISTER_INSTANCE`.
1328
+ #
1329
+ # * **UPDATE\_DATE**\: Specify a start date and an end date in Unix
1330
+ # date/time format and Coordinated Universal Time (UTC). The start
1331
+ # date must be the first value.
1332
+ # @return [Array<String>]
1333
+ #
1334
+ # @!attribute [rw] condition
1335
+ # The operator that you want to use to determine whether an operation
1336
+ # matches the specified value. Valid values for condition include:
1337
+ #
1338
+ # * `EQ`\: When you specify `EQ` for the condition, you can specify
1339
+ # only one value. `EQ` is supported for `NAMESPACE_ID`,
1340
+ # `SERVICE_ID`, `STATUS`, and `TYPE`. `EQ` is the default condition
1341
+ # and can be omitted.
1342
+ #
1343
+ # * `IN`\: When you specify `IN` for the condition, you can specify a
1344
+ # list of one or more values. `IN` is supported for `STATUS` and
1345
+ # `TYPE`. An operation must match one of the specified values to be
1346
+ # returned in the response.
1347
+ #
1348
+ # * `BETWEEN`\: Specify two values, a start date and an end date. The
1349
+ # start date must be the first value. `BETWEEN` is supported for
1350
+ # `U`.
1351
+ # @return [String]
1352
+ #
1353
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/OperationFilter AWS API Documentation
1354
+ #
1355
+ class OperationFilter < Struct.new(
1356
+ :name,
1357
+ :values,
1358
+ :condition)
1359
+ include Aws::Structure
1360
+ end
1361
+
1362
+ # A complex type that contains information about an operation that
1363
+ # matches the criteria that you specified in a ListOperations request.
1364
+ #
1365
+ # @!attribute [rw] id
1366
+ # The ID for an operation.
1367
+ # @return [String]
1368
+ #
1369
+ # @!attribute [rw] status
1370
+ # The status of the operation. Values include the following:
1371
+ #
1372
+ # * **SUBMITTED**\: This is the initial state immediately after you
1373
+ # submit a request.
1374
+ #
1375
+ # * **PENDING**\: Amazon Route 53 is performing the operation.
1376
+ #
1377
+ # * **SUCCESS**\: The operation succeeded.
1378
+ #
1379
+ # * **FAIL**\: The operation failed. For the failure reason, see
1380
+ # `ErrorMessage`.
1381
+ # @return [String]
1382
+ #
1383
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/OperationSummary AWS API Documentation
1384
+ #
1385
+ class OperationSummary < Struct.new(
1386
+ :id,
1387
+ :status)
1388
+ include Aws::Structure
1389
+ end
1390
+
1391
+ # @note When making an API call, you may pass RegisterInstanceRequest
1392
+ # data as a hash:
1393
+ #
1394
+ # {
1395
+ # service_id: "ResourceId", # required
1396
+ # instance_id: "ResourceId", # required
1397
+ # creator_request_id: "ResourceId",
1398
+ # attributes: { # required
1399
+ # "AttrKey" => "AttrValue",
1400
+ # },
1401
+ # }
1402
+ #
1403
+ # @!attribute [rw] service_id
1404
+ # The ID of the service that you want to use for settings for the
1405
+ # resource record sets and health check that Amazon Route 53 will
1406
+ # create.
1407
+ # @return [String]
1408
+ #
1409
+ # @!attribute [rw] instance_id
1410
+ # An identifier that you want to associate with the instance. Note the
1411
+ # following:
1412
+ #
1413
+ # * You can use this value to update an existing instance.
1414
+ #
1415
+ # * To register a new instance, you must specify a value that is
1416
+ # unique among instances that you register by using the same
1417
+ # service.
1418
+ # @return [String]
1419
+ #
1420
+ # @!attribute [rw] creator_request_id
1421
+ # An optional parameter that you can use to resolve concurrent
1422
+ # creation requests. `CreatorRequestId` helps to determine if a
1423
+ # specific client owns the namespace.
1424
+ #
1425
+ # **A suitable default value is auto-generated.** You should normally
1426
+ # not need to pass this option.
1427
+ # @return [String]
1428
+ #
1429
+ # @!attribute [rw] attributes
1430
+ # A string map that contain attribute keys and values. Supported
1431
+ # attribute keys include the following:
1432
+ #
1433
+ # * `AWS_INSTANCE_PORT`\: The port on the endpoint that you want
1434
+ # Amazon Route 53 to perform health checks on. This value is also
1435
+ # used for the port value in an SRV record if the service that you
1436
+ # specify includes an SRV record. For more information, see
1437
+ # CreateService.
1438
+ #
1439
+ # * `AWS_INSTANCE_IPV4`\: If the service that you specify contains a
1440
+ # resource record set template for an A record, the IPv4 address
1441
+ # that you want Amazon Route 53 to use for the value of the A
1442
+ # record.
1443
+ #
1444
+ # * `AWS_INSTANCE_IPV6`\: If the service that you specify contains a
1445
+ # resource record set template for an AAAA record, the IPv6 address
1446
+ # that you want Amazon Route 53 to use for the value of the AAAA
1447
+ # record.
1448
+ # @return [Hash<String,String>]
1449
+ #
1450
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/RegisterInstanceRequest AWS API Documentation
1451
+ #
1452
+ class RegisterInstanceRequest < Struct.new(
1453
+ :service_id,
1454
+ :instance_id,
1455
+ :creator_request_id,
1456
+ :attributes)
1457
+ include Aws::Structure
1458
+ end
1459
+
1460
+ # @!attribute [rw] operation_id
1461
+ # A value that you can use to determine whether the request completed
1462
+ # successfully. To get the status of the operation, see GetOperation.
1463
+ # @return [String]
1464
+ #
1465
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/RegisterInstanceResponse AWS API Documentation
1466
+ #
1467
+ class RegisterInstanceResponse < Struct.new(
1468
+ :operation_id)
1469
+ include Aws::Structure
1470
+ end
1471
+
1472
+ # A complex type that contains information about the specified service.
1473
+ #
1474
+ # @!attribute [rw] id
1475
+ # The ID that Amazon Route 53 assigned to the service when you created
1476
+ # it.
1477
+ # @return [String]
1478
+ #
1479
+ # @!attribute [rw] arn
1480
+ # The Amazon Resource Name (ARN) that Amazon Route 53 assigns to the
1481
+ # service when you create it.
1482
+ # @return [String]
1483
+ #
1484
+ # @!attribute [rw] name
1485
+ # The name of the service.
1486
+ # @return [String]
1487
+ #
1488
+ # @!attribute [rw] description
1489
+ # The description of the service.
1490
+ # @return [String]
1491
+ #
1492
+ # @!attribute [rw] instance_count
1493
+ # The number of instances that are currently associated with the
1494
+ # service. Instances that were previously associated with the service
1495
+ # but that have been deleted are not included in the count.
1496
+ # @return [Integer]
1497
+ #
1498
+ # @!attribute [rw] dns_config
1499
+ # A complex type that contains information about the resource record
1500
+ # sets that you want Amazon Route 53 to create when you register an
1501
+ # instance.
1502
+ # @return [Types::DnsConfig]
1503
+ #
1504
+ # @!attribute [rw] health_check_config
1505
+ # *Public DNS namespaces only.* A complex type that contains settings
1506
+ # for an optional health check. If you specify settings for a health
1507
+ # check, Amazon Route 53 associates the health check with all the
1508
+ # resource record sets that you specify in `DnsConfig`.
1509
+ #
1510
+ # <note markdown="1"> The health check uses 30 seconds as the request interval. This is
1511
+ # the number of seconds between the time that each Amazon Route 53
1512
+ # health checker gets a response from your endpoint and the time that
1513
+ # it sends the next health check request. A health checker in each
1514
+ # data center around the world sends your endpoint a health check
1515
+ # request every 30 seconds. On average, your endpoint receives a
1516
+ # health check request about every two seconds. Health checkers in
1517
+ # different data centers don't coordinate with one another, so
1518
+ # you'll sometimes see several requests per second followed by a few
1519
+ # seconds with no health checks at all.
1520
+ #
1521
+ # </note>
1522
+ #
1523
+ # For information about the charges for health checks, see [Amazon
1524
+ # Route 53 Pricing][1].
1525
+ #
1526
+ #
1527
+ #
1528
+ # [1]: http://aws.amazon.com/route53/pricing
1529
+ # @return [Types::HealthCheckConfig]
1530
+ #
1531
+ # @!attribute [rw] create_date
1532
+ # The date and time that the service was created, in Unix format and
1533
+ # Coordinated Universal Time (UTC).
1534
+ # @return [Time]
1535
+ #
1536
+ # @!attribute [rw] creator_request_id
1537
+ # An optional parameter that you can use to resolve concurrent
1538
+ # creation requests. `CreatorRequestId` helps to determine if a
1539
+ # specific client owns the namespace.
1540
+ # @return [String]
1541
+ #
1542
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/Service AWS API Documentation
1543
+ #
1544
+ class Service < Struct.new(
1545
+ :id,
1546
+ :arn,
1547
+ :name,
1548
+ :description,
1549
+ :instance_count,
1550
+ :dns_config,
1551
+ :health_check_config,
1552
+ :create_date,
1553
+ :creator_request_id)
1554
+ include Aws::Structure
1555
+ end
1556
+
1557
+ # A complex type that contains changes to an existing service.
1558
+ #
1559
+ # @note When making an API call, you may pass ServiceChange
1560
+ # data as a hash:
1561
+ #
1562
+ # {
1563
+ # description: "ResourceDescription",
1564
+ # dns_config: { # required
1565
+ # dns_records: [ # required
1566
+ # {
1567
+ # type: "SRV", # required, accepts SRV, A, AAAA
1568
+ # ttl: 1, # required
1569
+ # },
1570
+ # ],
1571
+ # },
1572
+ # health_check_config: {
1573
+ # type: "HTTP", # accepts HTTP, HTTPS, TCP
1574
+ # resource_path: "ResourcePath",
1575
+ # failure_threshold: 1,
1576
+ # },
1577
+ # }
1578
+ #
1579
+ # @!attribute [rw] description
1580
+ # A description for the service.
1581
+ # @return [String]
1582
+ #
1583
+ # @!attribute [rw] dns_config
1584
+ # A complex type that contains information about the resource record
1585
+ # sets that you want Amazon Route 53 to create when you register an
1586
+ # instance.
1587
+ # @return [Types::DnsConfigChange]
1588
+ #
1589
+ # @!attribute [rw] health_check_config
1590
+ # *Public DNS namespaces only.* A complex type that contains settings
1591
+ # for an optional health check. If you specify settings for a health
1592
+ # check, Amazon Route 53 associates the health check with all the
1593
+ # resource record sets that you specify in `DnsConfig`.
1594
+ #
1595
+ # <note markdown="1"> The health check uses 30 seconds as the request interval. This is
1596
+ # the number of seconds between the time that each Amazon Route 53
1597
+ # health checker gets a response from your endpoint and the time that
1598
+ # it sends the next health check request. A health checker in each
1599
+ # data center around the world sends your endpoint a health check
1600
+ # request every 30 seconds. On average, your endpoint receives a
1601
+ # health check request about every two seconds. Health checkers in
1602
+ # different data centers don't coordinate with one another, so
1603
+ # you'll sometimes see several requests per second followed by a few
1604
+ # seconds with no health checks at all.
1605
+ #
1606
+ # </note>
1607
+ #
1608
+ # For information about the charges for health checks, see [Amazon
1609
+ # Route 53 Pricing][1].
1610
+ #
1611
+ #
1612
+ #
1613
+ # [1]: http://aws.amazon.com/route53/pricing
1614
+ # @return [Types::HealthCheckConfig]
1615
+ #
1616
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/ServiceChange AWS API Documentation
1617
+ #
1618
+ class ServiceChange < Struct.new(
1619
+ :description,
1620
+ :dns_config,
1621
+ :health_check_config)
1622
+ include Aws::Structure
1623
+ end
1624
+
1625
+ # A complex type that lets you specify the namespaces that you want to
1626
+ # list services for.
1627
+ #
1628
+ # @note When making an API call, you may pass ServiceFilter
1629
+ # data as a hash:
1630
+ #
1631
+ # {
1632
+ # name: "NAMESPACE_ID", # required, accepts NAMESPACE_ID
1633
+ # values: ["FilterValue"], # required
1634
+ # condition: "EQ", # accepts EQ, IN, BETWEEN
1635
+ # }
1636
+ #
1637
+ # @!attribute [rw] name
1638
+ # Specify `NAMESPACE_ID`.
1639
+ # @return [String]
1640
+ #
1641
+ # @!attribute [rw] values
1642
+ # The values that are applicable to the value that you specify for
1643
+ # `Condition` to filter the list of services.
1644
+ # @return [Array<String>]
1645
+ #
1646
+ # @!attribute [rw] condition
1647
+ # The operator that you want to use to determine whether a service is
1648
+ # returned by `ListServices`. Valid values for `Condition` include the
1649
+ # following:
1650
+ #
1651
+ # * `EQ`\: When you specify `EQ`, specify one namespace ID for
1652
+ # `Values`. `EQ` is the default condition and can be omitted.
1653
+ #
1654
+ # * `IN`\: When you specify `IN`, specify a list of the IDs for the
1655
+ # namespaces that you want `ListServices` to return a list of
1656
+ # services for.
1657
+ # @return [String]
1658
+ #
1659
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/ServiceFilter AWS API Documentation
1660
+ #
1661
+ class ServiceFilter < Struct.new(
1662
+ :name,
1663
+ :values,
1664
+ :condition)
1665
+ include Aws::Structure
1666
+ end
1667
+
1668
+ # A complex type that contains information about a specified service.
1669
+ #
1670
+ # @!attribute [rw] id
1671
+ # The ID that Amazon Route 53 assigned to the service when you created
1672
+ # it.
1673
+ # @return [String]
1674
+ #
1675
+ # @!attribute [rw] arn
1676
+ # The Amazon Resource Name (ARN) that Amazon Route 53 assigns to the
1677
+ # service when you create it.
1678
+ # @return [String]
1679
+ #
1680
+ # @!attribute [rw] name
1681
+ # The name of the service.
1682
+ # @return [String]
1683
+ #
1684
+ # @!attribute [rw] description
1685
+ # The description that you specify when you create the service.
1686
+ # @return [String]
1687
+ #
1688
+ # @!attribute [rw] instance_count
1689
+ # The number of instances that are currently associated with the
1690
+ # service. Instances that were previously associated with the service
1691
+ # but that have been deleted are not included in the count.
1692
+ # @return [Integer]
1693
+ #
1694
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/ServiceSummary AWS API Documentation
1695
+ #
1696
+ class ServiceSummary < Struct.new(
1697
+ :id,
1698
+ :arn,
1699
+ :name,
1700
+ :description,
1701
+ :instance_count)
1702
+ include Aws::Structure
1703
+ end
1704
+
1705
+ # @note When making an API call, you may pass UpdateServiceRequest
1706
+ # data as a hash:
1707
+ #
1708
+ # {
1709
+ # id: "ResourceId", # required
1710
+ # service: { # required
1711
+ # description: "ResourceDescription",
1712
+ # dns_config: { # required
1713
+ # dns_records: [ # required
1714
+ # {
1715
+ # type: "SRV", # required, accepts SRV, A, AAAA
1716
+ # ttl: 1, # required
1717
+ # },
1718
+ # ],
1719
+ # },
1720
+ # health_check_config: {
1721
+ # type: "HTTP", # accepts HTTP, HTTPS, TCP
1722
+ # resource_path: "ResourcePath",
1723
+ # failure_threshold: 1,
1724
+ # },
1725
+ # },
1726
+ # }
1727
+ #
1728
+ # @!attribute [rw] id
1729
+ # The ID of the service that you want to update.
1730
+ # @return [String]
1731
+ #
1732
+ # @!attribute [rw] service
1733
+ # A complex type that contains the new settings for the service.
1734
+ # @return [Types::ServiceChange]
1735
+ #
1736
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/UpdateServiceRequest AWS API Documentation
1737
+ #
1738
+ class UpdateServiceRequest < Struct.new(
1739
+ :id,
1740
+ :service)
1741
+ include Aws::Structure
1742
+ end
1743
+
1744
+ # @!attribute [rw] operation_id
1745
+ # A value that you can use to determine whether the request completed
1746
+ # successfully. To get the status of the operation, see GetOperation.
1747
+ # @return [String]
1748
+ #
1749
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/UpdateServiceResponse AWS API Documentation
1750
+ #
1751
+ class UpdateServiceResponse < Struct.new(
1752
+ :operation_id)
1753
+ include Aws::Structure
1754
+ end
1755
+
1756
+ end
1757
+ end