lib/aws-sdk-servicediscovery/client.rb in aws-sdk-servicediscovery-1.8.0 vs lib/aws-sdk-servicediscovery/client.rb in aws-sdk-servicediscovery-1.9.0

- old
+ new

@@ -213,26 +213,78 @@ super end # @!group API Operations + # Creates an HTTP namespace. Service instances that you register using + # an HTTP namespace can be discovered using a `DiscoverInstances` + # request but can't be discovered using DNS. + # + # For the current limit on the number of namespaces that you can create + # using the same AWS account, see [AWS Cloud Map Limits][1] in the *AWS + # Cloud Map Developer Guide*. + # + # + # + # [1]: http://docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html + # + # @option params [required, String] :name + # The name that you want to assign to this namespace. + # + # @option params [String] :creator_request_id + # A unique string that identifies the request and that allows failed + # `CreateHttpNamespace` requests to be retried without the risk of + # executing the operation twice. `CreatorRequestId` can be any unique + # string, for example, a date/time stamp. + # + # **A suitable default value is auto-generated.** You should normally + # not need to pass this option.** + # + # @option params [String] :description + # A description for the namespace. + # + # @return [Types::CreateHttpNamespaceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: + # + # * {Types::CreateHttpNamespaceResponse#operation_id #operation_id} => String + # + # @example Request syntax with placeholder values + # + # resp = client.create_http_namespace({ + # name: "NamespaceName", # required + # creator_request_id: "ResourceId", + # description: "ResourceDescription", + # }) + # + # @example Response structure + # + # resp.operation_id #=> String + # + # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/CreateHttpNamespace AWS API Documentation + # + # @overload create_http_namespace(params = {}) + # @param [Hash] params ({}) + def create_http_namespace(params = {}, options = {}) + req = build_request(:create_http_namespace, params) + req.send_request(options) + end + # Creates a private namespace based on DNS, which will be visible only # inside a specified Amazon VPC. The namespace defines your service # naming scheme. For example, if you name your namespace `example.com` # and name your service `backend`, the resulting DNS name for the # service will be `backend.example.com`. For the current limit on the # number of namespaces that you can create using the same AWS account, - # see [Limits on Auto Naming][1] in the *Route 53 Developer Guide*. + # see [AWS Cloud Map Limits][1] in the *AWS Cloud Map Developer Guide*. # # # - # [1]: http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/DNSLimitations.html#limits-api-entities-autonaming + # [1]: http://docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html # # @option params [required, String] :name # The name that you want to assign to this namespace. When you create a - # namespace, Amazon Route 53 automatically creates a hosted zone that - # has the same name as the namespace. + # private DNS namespace, AWS Cloud Map automatically creates an Amazon + # Route 53 private hosted zone that has the same name as the namespace. # # @option params [String] :creator_request_id # A unique string that identifies the request and that allows failed # `CreatePrivateDnsNamespace` requests to be retried without the risk of # executing the operation twice. `CreatorRequestId` can be any unique @@ -277,16 +329,16 @@ # Creates a public namespace based on DNS, which will be visible on the # internet. The namespace defines your service naming scheme. For # example, if you name your namespace `example.com` and name your # service `backend`, the resulting DNS name for the service will be # `backend.example.com`. For the current limit on the number of - # namespaces that you can create using the same AWS account, see [Limits - # on Auto Naming][1] in the *Route 53 Developer Guide*. + # namespaces that you can create using the same AWS account, see [AWS + # Cloud Map Limits][1] in the *AWS Cloud Map Developer Guide*. # # # - # [1]: http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/DNSLimitations.html#limits-api-entities-autonaming + # [1]: http://docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html # # @option params [required, String] :name # The name that you want to assign to this namespace. # # @option params [String] :creator_request_id @@ -327,29 +379,43 @@ end # Creates a service, which defines the configuration for the following # entities: # - # * Up to three records (A, AAAA, and SRV) or one CNAME record + # * For public and private DNS namespaces, one of the following + # combinations of DNS records in Amazon Route 53: # + # * A + # + # * AAAA + # + # * A and AAAA + # + # * SRV + # + # * CNAME + # # * Optionally, a health check # # After you create the service, you can submit a RegisterInstance - # request, and Amazon Route 53 uses the values in the configuration to + # request, and AWS Cloud Map uses the values in the configuration to # create the specified entities. # # For the current limit on the number of instances that you can register - # using the same namespace and using the same service, see [Limits on - # Auto Naming][1] in the *Route 53 Developer Guide*. + # using the same namespace and using the same service, see [AWS Cloud + # Map Limits][1] in the *AWS Cloud Map Developer Guide*. # # # - # [1]: http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/DNSLimitations.html#limits-api-entities-autonaming + # [1]: http://docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html # # @option params [required, String] :name # The name that you want to assign to the service. # + # @option params [String] :namespace_id + # The ID of the namespace that you want to use to create the service. + # # @option params [String] :creator_request_id # A unique string that identifies the request and that allows failed # `CreateService` requests to be retried without the risk of executing # the operation twice. `CreatorRequestId` can be any unique string, for # example, a date/time stamp. @@ -358,51 +424,61 @@ # not need to pass this option.** # # @option params [String] :description # A description for the service. # - # @option params [required, Types::DnsConfig] :dns_config - # A complex type that contains information about the records that you - # want Route 53 to create when you register an instance. + # @option params [Types::DnsConfig] :dns_config + # A complex type that contains information about the Amazon Route 53 + # records that you want AWS Cloud Map to create when you register an + # instance. # # @option params [Types::HealthCheckConfig] :health_check_config # *Public DNS namespaces only.* A complex type that contains settings - # for an optional health check. If you specify settings for a health - # check, Route 53 associates the health check with all the records that - # you specify in `DnsConfig`. + # for an optional Route 53 health check. If you specify settings for a + # health check, AWS Cloud Map associates the health check with all the + # Route 53 DNS records that you specify in `DnsConfig`. # - # For information about the charges for health checks, see [Route 53 - # Pricing][1]. + # If you specify a health check configuration, you can specify either + # `HealthCheckCustomConfig` or `HealthCheckConfig` but not both. # + # For information about the charges for health checks, see [AWS Cloud + # Map Pricing][1]. # # - # [1]: http://aws.amazon.com/route53/pricing # + # [1]: http://aws.amazon.com/cloud-map/pricing/ + # # @option params [Types::HealthCheckCustomConfig] :health_check_custom_config + # A complex type that contains information about an optional custom + # health check. # + # If you specify a health check configuration, you can specify either + # `HealthCheckCustomConfig` or `HealthCheckConfig` but not both. + # # @return [Types::CreateServiceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::CreateServiceResponse#service #service} => Types::Service # # @example Request syntax with placeholder values # # resp = client.create_service({ # name: "ServiceName", # required + # namespace_id: "ResourceId", # creator_request_id: "ResourceId", # description: "ResourceDescription", - # dns_config: { # required - # namespace_id: "ResourceId", # required + # dns_config: { + # namespace_id: "ResourceId", # routing_policy: "MULTIVALUE", # accepts MULTIVALUE, WEIGHTED # dns_records: [ # required # { # type: "SRV", # required, accepts SRV, A, AAAA, CNAME # ttl: 1, # required # }, # ], # }, # health_check_config: { - # type: "HTTP", # accepts HTTP, HTTPS, TCP + # type: "HTTP", # required, accepts HTTP, HTTPS, TCP # resource_path: "ResourcePath", # failure_threshold: 1, # }, # health_check_custom_config: { # failure_threshold: 1, @@ -412,10 +488,11 @@ # @example Response structure # # resp.service.id #=> String # resp.service.arn #=> String # resp.service.name #=> String + # resp.service.namespace_id #=> String # resp.service.description #=> String # resp.service.instance_count #=> Integer # resp.service.dns_config.namespace_id #=> String # resp.service.dns_config.routing_policy #=> String, one of "MULTIVALUE", "WEIGHTED" # resp.service.dns_config.dns_records #=> Array @@ -487,12 +564,12 @@ def delete_service(params = {}, options = {}) req = build_request(:delete_service, params) req.send_request(options) end - # Deletes the records and the health check, if any, that Amazon Route 53 - # created for the specified instance. + # Deletes the Amazon Route 53 DNS records and health check, if any, that + # AWS Cloud Map created for the specified instance. # # @option params [required, String] :service_id # The ID of the service that the instance is associated with. # # @option params [required, String] :instance_id @@ -520,10 +597,69 @@ def deregister_instance(params = {}, options = {}) req = build_request(:deregister_instance, params) req.send_request(options) end + # Discovers registered instances for a specified namespace and service. + # + # @option params [required, String] :namespace_name + # The name of the namespace that you specified when you registered the + # instance. + # + # @option params [required, String] :service_name + # The name of the service that you specified when you registered the + # instance. + # + # @option params [Integer] :max_results + # The maximum number of instances that you want Cloud Map to return in + # the response to a `DiscoverInstances` request. If you don't specify a + # value for `MaxResults`, Cloud Map returns up to 100 instances. + # + # @option params [Hash<String,String>] :query_parameters + # A string map that contains attributes with values that you can use to + # filter instances by any custom attribute that you specified when you + # registered the instance. Only instances that match all the specified + # key/value pairs will be returned. + # + # @option params [String] :health_status + # The health status of the instances that you want to discover. + # + # @return [Types::DiscoverInstancesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: + # + # * {Types::DiscoverInstancesResponse#instances #instances} => Array&lt;Types::HttpInstanceSummary&gt; + # + # @example Request syntax with placeholder values + # + # resp = client.discover_instances({ + # namespace_name: "NamespaceName", # required + # service_name: "ServiceName", # required + # max_results: 1, + # query_parameters: { + # "AttrKey" => "AttrValue", + # }, + # health_status: "HEALTHY", # accepts HEALTHY, UNHEALTHY, ALL + # }) + # + # @example Response structure + # + # resp.instances #=> Array + # resp.instances[0].instance_id #=> String + # resp.instances[0].namespace_name #=> String + # resp.instances[0].service_name #=> String + # resp.instances[0].health_status #=> String, one of "HEALTHY", "UNHEALTHY", "UNKNOWN" + # resp.instances[0].attributes #=> Hash + # resp.instances[0].attributes["AttrKey"] #=> String + # + # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/DiscoverInstances AWS API Documentation + # + # @overload discover_instances(params = {}) + # @param [Hash] params ({}) + def discover_instances(params = {}, options = {}) + req = build_request(:discover_instances, params) + req.send_request(options) + end + # Gets information about a specified instance. # # @option params [required, String] :service_id # The ID of the service that the instance is associated with. # @@ -570,22 +706,22 @@ # # @option params [Array<String>] :instances # An array that contains the IDs of all the instances that you want to # get the health status for. # - # If you omit `Instances`, Amazon Route 53 returns the health status for + # If you omit `Instances`, AWS Cloud Map returns the health status for # all the instances that are associated with the specified service. # # <note markdown="1"> To get the IDs for the instances that you've registered by using a # specified service, submit a ListInstances request. # # </note> # # @option params [Integer] :max_results - # The maximum number of instances that you want Route 53 to return in - # the response to a `GetInstancesHealthStatus` request. If you don't - # specify a value for `MaxResults`, Route 53 returns up to 100 + # The maximum number of instances that you want AWS Cloud Map to return + # in the response to a `GetInstancesHealthStatus` request. If you don't + # specify a value for `MaxResults`, AWS Cloud Map returns up to 100 # instances. # # @option params [String] :next_token # For the first `GetInstancesHealthStatus` request, omit this value. # @@ -641,14 +777,15 @@ # @example Response structure # # resp.namespace.id #=> String # resp.namespace.arn #=> String # resp.namespace.name #=> String - # resp.namespace.type #=> String, one of "DNS_PUBLIC", "DNS_PRIVATE" + # resp.namespace.type #=> String, one of "DNS_PUBLIC", "DNS_PRIVATE", "HTTP" # resp.namespace.description #=> String # resp.namespace.service_count #=> Integer # resp.namespace.properties.dns_properties.hosted_zone_id #=> String + # resp.namespace.properties.http_properties.http_name #=> String # resp.namespace.create_date #=> Time # resp.namespace.creator_request_id #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/GetNamespace AWS API Documentation # @@ -719,10 +856,11 @@ # @example Response structure # # resp.service.id #=> String # resp.service.arn #=> String # resp.service.name #=> String + # resp.service.namespace_id #=> String # resp.service.description #=> String # resp.service.instance_count #=> Integer # resp.service.dns_config.namespace_id #=> String # resp.service.dns_config.routing_policy #=> String, one of "MULTIVALUE", "WEIGHTED" # resp.service.dns_config.dns_records #=> Array @@ -757,14 +895,13 @@ # can submit another `ListInstances` request to get the next group of # results. Specify the value of `NextToken` from the previous response # in the next request. # # @option params [Integer] :max_results - # The maximum number of instances that you want Amazon Route 53 to - # return in the response to a `ListInstances` request. If you don't - # specify a value for `MaxResults`, Route 53 returns up to 100 - # instances. + # The maximum number of instances that you want AWS Cloud Map to return + # in the response to a `ListInstances` request. If you don't specify a + # value for `MaxResults`, AWS Cloud Map returns up to 100 instances. # # @return [Types::ListInstancesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::ListInstancesResponse#instances #instances} => Array&lt;Types::InstanceSummary&gt; # * {Types::ListInstancesResponse#next_token #next_token} => String @@ -802,23 +939,22 @@ # # If the response contains `NextToken`, submit another `ListNamespaces` # request to get the next group of results. Specify the value of # `NextToken` from the previous response in the next request. # - # <note markdown="1"> Route 53 gets `MaxResults` namespaces and then filters them based on - # the specified criteria. It's possible that no namespaces in the first - # `MaxResults` namespaces matched the specified criteria but that + # <note markdown="1"> AWS Cloud Map gets `MaxResults` namespaces and then filters them based + # on the specified criteria. It's possible that no namespaces in the + # first `MaxResults` namespaces matched the specified criteria but that # subsequent groups of `MaxResults` namespaces do contain namespaces # that match the criteria. # # </note> # # @option params [Integer] :max_results - # The maximum number of namespaces that you want Amazon Route 53 to - # return in the response to a `ListNamespaces` request. If you don't - # specify a value for `MaxResults`, Route 53 returns up to 100 - # namespaces. + # The maximum number of namespaces that you want AWS Cloud Map to return + # in the response to a `ListNamespaces` request. If you don't specify a + # value for `MaxResults`, AWS Cloud Map returns up to 100 namespaces. # # @option params [Array<Types::NamespaceFilter>] :filters # A complex type that contains specifications for the namespaces that # you want to list. # @@ -848,11 +984,16 @@ # # resp.namespaces #=> Array # resp.namespaces[0].id #=> String # resp.namespaces[0].arn #=> String # resp.namespaces[0].name #=> String - # resp.namespaces[0].type #=> String, one of "DNS_PUBLIC", "DNS_PRIVATE" + # resp.namespaces[0].type #=> String, one of "DNS_PUBLIC", "DNS_PRIVATE", "HTTP" + # resp.namespaces[0].description #=> String + # resp.namespaces[0].service_count #=> Integer + # resp.namespaces[0].properties.dns_properties.hosted_zone_id #=> String + # resp.namespaces[0].properties.http_properties.http_name #=> String + # resp.namespaces[0].create_date #=> Time # resp.next_token #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/ListNamespaces AWS API Documentation # # @overload list_namespaces(params = {}) @@ -869,22 +1010,22 @@ # # If the response contains `NextToken`, submit another `ListOperations` # request to get the next group of results. Specify the value of # `NextToken` from the previous response in the next request. # - # <note markdown="1"> Route 53 gets `MaxResults` operations and then filters them based on - # the specified criteria. It's possible that no operations in the first - # `MaxResults` operations matched the specified criteria but that + # <note markdown="1"> AWS Cloud Map gets `MaxResults` operations and then filters them based + # on the specified criteria. It's possible that no operations in the + # first `MaxResults` operations matched the specified criteria but that # subsequent groups of `MaxResults` operations do contain operations # that match the criteria. # # </note> # # @option params [Integer] :max_results - # The maximum number of items that you want Amazon Route 53 to return in + # The maximum number of items that you want AWS Cloud Map to return in # the response to a `ListOperations` request. If you don't specify a - # value for `MaxResults`, Route 53 returns up to 100 operations. + # value for `MaxResults`, AWS Cloud Map returns up to 100 operations. # # @option params [Array<Types::OperationFilter>] :filters # A complex type that contains specifications for the operations that # you want to list, for example, operations that you started between a # specified start date and end date. @@ -935,22 +1076,22 @@ # # If the response contains `NextToken`, submit another `ListServices` # request to get the next group of results. Specify the value of # `NextToken` from the previous response in the next request. # - # <note markdown="1"> Route 53 gets `MaxResults` services and then filters them based on the - # specified criteria. It's possible that no services in the first - # `MaxResults` services matched the specified criteria but that + # <note markdown="1"> AWS Cloud Map gets `MaxResults` services and then filters them based + # on the specified criteria. It's possible that no services in the + # first `MaxResults` services matched the specified criteria but that # subsequent groups of `MaxResults` services do contain services that # match the criteria. # # </note> # # @option params [Integer] :max_results - # The maximum number of services that you want Amazon Route 53 to return + # The maximum number of services that you want AWS Cloud Map to return # in the response to a `ListServices` request. If you don't specify a - # value for `MaxResults`, Route 53 returns up to 100 services. + # value for `MaxResults`, AWS Cloud Map returns up to 100 services. # # @option params [Array<Types::ServiceFilter>] :filters # A complex type that contains specifications for the namespaces that # you want to list services for. # @@ -982,10 +1123,20 @@ # resp.services[0].id #=> String # resp.services[0].arn #=> String # resp.services[0].name #=> String # resp.services[0].description #=> String # resp.services[0].instance_count #=> Integer + # resp.services[0].dns_config.namespace_id #=> String + # resp.services[0].dns_config.routing_policy #=> String, one of "MULTIVALUE", "WEIGHTED" + # resp.services[0].dns_config.dns_records #=> Array + # resp.services[0].dns_config.dns_records[0].type #=> String, one of "SRV", "A", "AAAA", "CNAME" + # resp.services[0].dns_config.dns_records[0].ttl #=> Integer + # resp.services[0].health_check_config.type #=> String, one of "HTTP", "HTTPS", "TCP" + # resp.services[0].health_check_config.resource_path #=> String + # resp.services[0].health_check_config.failure_threshold #=> Integer + # resp.services[0].health_check_custom_config.failure_threshold #=> Integer + # resp.services[0].create_date #=> Time # resp.next_token #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/ListServices AWS API Documentation # # @overload list_services(params = {}) @@ -993,29 +1144,30 @@ def list_services(params = {}, options = {}) req = build_request(:list_services, params) req.send_request(options) end - # Creates or updates one or more records and optionally a health check - # based on the settings in a specified service. When you submit a - # `RegisterInstance` request, Amazon Route 53 does the following: + # Creates or updates one or more records and, optionally, creates a + # health check based on the settings in a specified service. When you + # submit a `RegisterInstance` request, the following occurs: # - # * For each DNS record that you define in the service specified by - # `ServiceId`, creates or updates a record in the hosted zone that is - # associated with the corresponding namespace + # * For each DNS record that you define in the service that is specified + # by `ServiceId`, a record is created or updated in the hosted zone + # that is associated with the corresponding namespace. # - # * If the service includes `HealthCheckConfig`, creates or updates a - # health check based on the settings in the health check configuration + # * If the service includes `HealthCheckConfig`, a health check is + # created based on the settings in the health check configuration. # - # * Associates the health check, if any, with each of the records + # * The health check, if any, is associated with each of the new or + # updated records. # # One `RegisterInstance` request must complete before you can submit # another request and specify the same service ID and instance ID. # # For more information, see CreateService. # - # When Route 53 receives a DNS query for the specified DNS name, it + # When AWS Cloud Map receives a DNS query for the specified DNS name, it # returns the applicable value: # # * **If the health check is healthy**\: returns all the records # # * **If the health check is unhealthy**\: returns the applicable value @@ -1023,20 +1175,20 @@ # # * **If you didn't specify a health check configuration**\: returns # all the records # # For the current limit on the number of instances that you can register - # using the same namespace and using the same service, see [Limits on - # Auto Naming][1] in the *Route 53 Developer Guide*. + # using the same namespace and using the same service, see [AWS Cloud + # Map Limits][1] in the *AWS Cloud Map Developer Guide*. # # # - # [1]: http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/DNSLimitations.html#limits-api-entities-autonaming + # [1]: http://docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html # # @option params [required, String] :service_id # The ID of the service that you want to use for settings for the - # records and health check that Route 53 will create. + # instance. # # @option params [required, String] :instance_id # An identifier that you want to associate with the instance. Note the # following: # @@ -1048,13 +1200,14 @@ # * You can use this value to update an existing instance. # # * To register a new instance, you must specify a value that is unique # among instances that you register by using the same service. # - # * If you specify an existing `InstanceId` and `ServiceId`, Route 53 - # updates the existing records. If there's also an existing health - # check, Route 53 deletes the old health check and creates a new one. + # * If you specify an existing `InstanceId` and `ServiceId`, AWS Cloud + # Map updates the existing DNS records, if any. If there's also an + # existing health check, AWS Cloud Map deletes the old health check + # and creates a new one. # # <note markdown="1"> The health check isn't deleted immediately, so it will still appear # for a while if you submit a `ListHealthChecks` request, for example. # # </note> @@ -1084,33 +1237,43 @@ # # **AWS\_ALIAS\_DNS\_NAME** # # **** # - # If you want Route 53 to create an alias record that routes traffic to - # an Elastic Load Balancing load balancer, specify the DNS name that is - # associated with the load balancer. For information about how to get - # the DNS name, see "DNSName" in the topic [AliasTarget][1]. + # If you want AWS Cloud Map to create an Amazon Route 53 alias record + # that routes traffic to an Elastic Load Balancing load balancer, + # specify the DNS name that is associated with the load balancer. For + # information about how to get the DNS name, see "DNSName" in the + # topic [AliasTarget][1] in the *Route 53 API Reference*. # # Note the following: # # * The configuration for the service that is specified by `ServiceId` # must include settings for an A record, an AAAA record, or both. # # * In the service that is specified by `ServiceId`, the value of # `RoutingPolicy` must be `WEIGHTED`. # # * If the service that is specified by `ServiceId` includes - # `HealthCheckConfig` settings, Route 53 will create the health check, - # but it won't associate the health check with the alias record. + # `HealthCheckConfig` settings, AWS Cloud Map will create the Route 53 + # health check, but it won't associate the health check with the + # alias record. # # * Auto naming currently doesn't support creating alias records that # route traffic to AWS resources other than ELB load balancers. # # * If you specify a value for `AWS_ALIAS_DNS_NAME`, don't specify # values for any of the `AWS_INSTANCE` attributes. # + # **AWS\_INIT\_HEALTH\_STATUS** + # + # If the service configuration includes `HealthCheckCustomConfig`, you + # can optionally use `AWS_INIT_HEALTH_STATUS` to specify the initial + # status of the custom health check, `HEALTHY` or `UNHEALTHY`. If you + # don't specify a value for `AWS_INIT_HEALTH_STATUS`, the initial + # status is `HEALTHY`. + # # **AWS\_INSTANCE\_CNAME** # # If the service configuration includes a CNAME record, the domain name # that you want Route 53 to return in response to DNS queries, for # example, `example.com`. @@ -1149,14 +1312,20 @@ # that you want Route 53 to send requests to. # # This value is required if you specified settings for an SRV record # when you created the service. # + # **Custom attributes** # + # You can add up to 30 custom attributes. For each key-value pair, the + # maximum length of the attribute name is 255 characters, and the + # maximum length of the attribute value is 1,024 characters. # - # [1]: http://docs.aws.amazon.com/http:/docs.aws.amazon.com/Route53/latest/APIReference/API_AliasTarget.html # + # + # [1]: http://docs.aws.amazon.com/Route53/latest/APIReference/API_AliasTarget.html + # # @return [Types::RegisterInstanceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::RegisterInstanceResponse#operation_id #operation_id} => String # # @example Request syntax with placeholder values @@ -1181,15 +1350,30 @@ def register_instance(params = {}, options = {}) req = build_request(:register_instance, params) req.send_request(options) end + # Submits a request to change the health status of a custom health check + # to healthy or unhealthy. + # + # You can use `UpdateInstanceCustomHealthStatus` to change the status + # only for custom health checks, which you define using + # `HealthCheckCustomConfig` when you create a service. You can't use it + # to change the status for Route 53 health checks, which you define + # using `HealthCheckConfig`. + # + # For more information, see HealthCheckCustomConfig. + # # @option params [required, String] :service_id + # The ID of the service that includes the configuration for the custom + # health check that you want to change the status for. # # @option params [required, String] :instance_id + # The ID of the instance that you want to change the health status for. # # @option params [required, String] :status + # The new status of the instance, `HEALTHY` or `UNHEALTHY`. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # @@ -1214,16 +1398,17 @@ # # * Update the TTL setting for existing `DnsRecords` configurations # # * Add, update, or delete `HealthCheckConfig` for a specified service # - # You must specify all `DnsRecords` configurations (and, optionally, - # `HealthCheckConfig`) that you want to appear in the updated service. - # Any current configurations that don't appear in an `UpdateService` - # request are deleted. + # For public and private DNS namespaces, you must specify all + # `DnsRecords` configurations (and, optionally, `HealthCheckConfig`) + # that you want to appear in the updated service. Any current + # configurations that don't appear in an `UpdateService` request are + # deleted. # - # When you update the TTL setting for a service, Amazon Route 53 also + # When you update the TTL setting for a service, AWS Cloud Map also # updates the corresponding settings in all the records and health # checks that were created by using the specified service. # # @option params [required, String] :id # The ID of the service that you want to update. @@ -1248,11 +1433,11 @@ # ttl: 1, # required # }, # ], # }, # health_check_config: { - # type: "HTTP", # accepts HTTP, HTTPS, TCP + # type: "HTTP", # required, accepts HTTP, HTTPS, TCP # resource_path: "ResourcePath", # failure_threshold: 1, # }, # }, # }) @@ -1281,10 +1466,10 @@ operation: config.api.operation(operation_name), client: self, params: params, config: config) context[:gem_name] = 'aws-sdk-servicediscovery' - context[:gem_version] = '1.8.0' + context[:gem_version] = '1.9.0' Seahorse::Client::Request.new(handlers, context) end # @api private # @deprecated