/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the servicediscovery-2017-03-14.normal.json service model.
*/
using System;
using System.Threading;
using System.Threading.Tasks;
using System.Collections.Generic;
using Amazon.Runtime;
using Amazon.ServiceDiscovery.Model;
namespace Amazon.ServiceDiscovery
{
///
/// Interface for accessing ServiceDiscovery
///
/// Cloud Map
///
/// With Cloud Map, you can configure public DNS, private DNS, or HTTP namespaces that
/// your microservice applications run in. When an instance becomes available, you can
/// call the Cloud Map API to register the instance with Cloud Map. For public or private
/// DNS namespaces, Cloud Map automatically creates DNS records and an optional health
/// check. Clients that submit public or private DNS queries, or HTTP requests, for the
/// service receive an answer that contains up to eight healthy records.
///
///
public partial interface IAmazonServiceDiscovery : IAmazonService, IDisposable
{
///
/// Paginators for the service
///
IServiceDiscoveryPaginatorFactory Paginators { get; }
#region CreateHttpNamespace
///
/// Creates an HTTP namespace. Service instances registered using an HTTP namespace can
/// be discovered using a DiscoverInstances
request but can't be discovered
/// using DNS.
///
///
///
/// For the current quota on the number of namespaces that you can create using the same
/// Amazon Web Services account, see Cloud
/// Map quotas in the Cloud Map Developer Guide.
///
///
/// Container for the necessary parameters to execute the CreateHttpNamespace service method.
///
/// The response from the CreateHttpNamespace service method, as returned by ServiceDiscovery.
///
/// The operation is already in progress.
///
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// The namespace that you're trying to create already exists.
///
///
/// The resource can't be created because you've reached the quota on the number of resources.
///
///
/// The list of tags on the resource is over the quota. The maximum number of tags that
/// can be applied to a resource is 50.
///
/// REST API Reference for CreateHttpNamespace Operation
CreateHttpNamespaceResponse CreateHttpNamespace(CreateHttpNamespaceRequest request);
///
/// Creates an HTTP namespace. Service instances registered using an HTTP namespace can
/// be discovered using a DiscoverInstances
request but can't be discovered
/// using DNS.
///
///
///
/// For the current quota on the number of namespaces that you can create using the same
/// Amazon Web Services account, see Cloud
/// Map quotas in the Cloud Map Developer Guide.
///
///
/// Container for the necessary parameters to execute the CreateHttpNamespace service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the CreateHttpNamespace service method, as returned by ServiceDiscovery.
///
/// The operation is already in progress.
///
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// The namespace that you're trying to create already exists.
///
///
/// The resource can't be created because you've reached the quota on the number of resources.
///
///
/// The list of tags on the resource is over the quota. The maximum number of tags that
/// can be applied to a resource is 50.
///
/// REST API Reference for CreateHttpNamespace Operation
Task CreateHttpNamespaceAsync(CreateHttpNamespaceRequest request, CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region CreatePrivateDnsNamespace
///
/// Creates a private namespace based on DNS, which is 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 is backend.example.com
. Service
/// instances that are registered using a private DNS namespace can be discovered using
/// either a DiscoverInstances
request or using DNS. For the current quota
/// on the number of namespaces that you can create using the same Amazon Web Services
/// account, see Cloud
/// Map quotas in the Cloud Map Developer Guide.
///
/// Container for the necessary parameters to execute the CreatePrivateDnsNamespace service method.
///
/// The response from the CreatePrivateDnsNamespace service method, as returned by ServiceDiscovery.
///
/// The operation is already in progress.
///
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// The namespace that you're trying to create already exists.
///
///
/// The resource can't be created because you've reached the quota on the number of resources.
///
///
/// The list of tags on the resource is over the quota. The maximum number of tags that
/// can be applied to a resource is 50.
///
/// REST API Reference for CreatePrivateDnsNamespace Operation
CreatePrivateDnsNamespaceResponse CreatePrivateDnsNamespace(CreatePrivateDnsNamespaceRequest request);
///
/// Creates a private namespace based on DNS, which is 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 is backend.example.com
. Service
/// instances that are registered using a private DNS namespace can be discovered using
/// either a DiscoverInstances
request or using DNS. For the current quota
/// on the number of namespaces that you can create using the same Amazon Web Services
/// account, see Cloud
/// Map quotas in the Cloud Map Developer Guide.
///
/// Container for the necessary parameters to execute the CreatePrivateDnsNamespace service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the CreatePrivateDnsNamespace service method, as returned by ServiceDiscovery.
///
/// The operation is already in progress.
///
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// The namespace that you're trying to create already exists.
///
///
/// The resource can't be created because you've reached the quota on the number of resources.
///
///
/// The list of tags on the resource is over the quota. The maximum number of tags that
/// can be applied to a resource is 50.
///
/// REST API Reference for CreatePrivateDnsNamespace Operation
Task CreatePrivateDnsNamespaceAsync(CreatePrivateDnsNamespaceRequest request, CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region CreatePublicDnsNamespace
///
/// Creates a public namespace based on DNS, which is 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
/// is backend.example.com
. You can discover instances that were registered
/// with a public DNS namespace by using either a DiscoverInstances
request
/// or using DNS. For the current quota on the number of namespaces that you can create
/// using the same Amazon Web Services account, see Cloud
/// Map quotas in the Cloud Map Developer Guide.
///
///
///
/// The CreatePublicDnsNamespace
API operation is not supported in the Amazon
/// Web Services GovCloud (US) Regions.
///
///
///
/// Container for the necessary parameters to execute the CreatePublicDnsNamespace service method.
///
/// The response from the CreatePublicDnsNamespace service method, as returned by ServiceDiscovery.
///
/// The operation is already in progress.
///
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// The namespace that you're trying to create already exists.
///
///
/// The resource can't be created because you've reached the quota on the number of resources.
///
///
/// The list of tags on the resource is over the quota. The maximum number of tags that
/// can be applied to a resource is 50.
///
/// REST API Reference for CreatePublicDnsNamespace Operation
CreatePublicDnsNamespaceResponse CreatePublicDnsNamespace(CreatePublicDnsNamespaceRequest request);
///
/// Creates a public namespace based on DNS, which is 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
/// is backend.example.com
. You can discover instances that were registered
/// with a public DNS namespace by using either a DiscoverInstances
request
/// or using DNS. For the current quota on the number of namespaces that you can create
/// using the same Amazon Web Services account, see Cloud
/// Map quotas in the Cloud Map Developer Guide.
///
///
///
/// The CreatePublicDnsNamespace
API operation is not supported in the Amazon
/// Web Services GovCloud (US) Regions.
///
///
///
/// Container for the necessary parameters to execute the CreatePublicDnsNamespace service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the CreatePublicDnsNamespace service method, as returned by ServiceDiscovery.
///
/// The operation is already in progress.
///
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// The namespace that you're trying to create already exists.
///
///
/// The resource can't be created because you've reached the quota on the number of resources.
///
///
/// The list of tags on the resource is over the quota. The maximum number of tags that
/// can be applied to a resource is 50.
///
/// REST API Reference for CreatePublicDnsNamespace Operation
Task CreatePublicDnsNamespaceAsync(CreatePublicDnsNamespaceRequest request, CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region CreateService
///
/// Creates a service. This action defines the configuration for the following entities:
///
/// -
///
/// 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 Cloud Map uses the values in the configuration to create the specified
/// entities.
///
///
///
/// For the current quota on the number of instances that you can register using the same
/// namespace and using the same service, see Cloud
/// Map quotas in the Cloud Map Developer Guide.
///
///
/// Container for the necessary parameters to execute the CreateService service method.
///
/// The response from the CreateService service method, as returned by ServiceDiscovery.
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// No namespace exists with the specified ID.
///
///
/// The resource can't be created because you've reached the quota on the number of resources.
///
///
/// The service can't be created because a service with the same name already exists.
///
///
/// The list of tags on the resource is over the quota. The maximum number of tags that
/// can be applied to a resource is 50.
///
/// REST API Reference for CreateService Operation
CreateServiceResponse CreateService(CreateServiceRequest request);
///
/// Creates a service. This action defines the configuration for the following entities:
///
/// -
///
/// 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 Cloud Map uses the values in the configuration to create the specified
/// entities.
///
///
///
/// For the current quota on the number of instances that you can register using the same
/// namespace and using the same service, see Cloud
/// Map quotas in the Cloud Map Developer Guide.
///
///
/// Container for the necessary parameters to execute the CreateService service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the CreateService service method, as returned by ServiceDiscovery.
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// No namespace exists with the specified ID.
///
///
/// The resource can't be created because you've reached the quota on the number of resources.
///
///
/// The service can't be created because a service with the same name already exists.
///
///
/// The list of tags on the resource is over the quota. The maximum number of tags that
/// can be applied to a resource is 50.
///
/// REST API Reference for CreateService Operation
Task CreateServiceAsync(CreateServiceRequest request, CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DeleteNamespace
///
/// Deletes a namespace from the current account. If the namespace still contains one
/// or more services, the request fails.
///
/// Container for the necessary parameters to execute the DeleteNamespace service method.
///
/// The response from the DeleteNamespace service method, as returned by ServiceDiscovery.
///
/// The operation is already in progress.
///
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// No namespace exists with the specified ID.
///
///
/// The specified resource can't be deleted because it contains other resources. For example,
/// you can't delete a service that contains any instances.
///
/// REST API Reference for DeleteNamespace Operation
DeleteNamespaceResponse DeleteNamespace(DeleteNamespaceRequest request);
///
/// Deletes a namespace from the current account. If the namespace still contains one
/// or more services, the request fails.
///
/// Container for the necessary parameters to execute the DeleteNamespace service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DeleteNamespace service method, as returned by ServiceDiscovery.
///
/// The operation is already in progress.
///
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// No namespace exists with the specified ID.
///
///
/// The specified resource can't be deleted because it contains other resources. For example,
/// you can't delete a service that contains any instances.
///
/// REST API Reference for DeleteNamespace Operation
Task DeleteNamespaceAsync(DeleteNamespaceRequest request, CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DeleteService
///
/// Deletes a specified service. If the service still contains one or more registered
/// instances, the request fails.
///
/// Container for the necessary parameters to execute the DeleteService service method.
///
/// The response from the DeleteService service method, as returned by ServiceDiscovery.
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// The specified resource can't be deleted because it contains other resources. For example,
/// you can't delete a service that contains any instances.
///
///
/// No service exists with the specified ID.
///
/// REST API Reference for DeleteService Operation
DeleteServiceResponse DeleteService(DeleteServiceRequest request);
///
/// Deletes a specified service. If the service still contains one or more registered
/// instances, the request fails.
///
/// Container for the necessary parameters to execute the DeleteService service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DeleteService service method, as returned by ServiceDiscovery.
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// The specified resource can't be deleted because it contains other resources. For example,
/// you can't delete a service that contains any instances.
///
///
/// No service exists with the specified ID.
///
/// REST API Reference for DeleteService Operation
Task DeleteServiceAsync(DeleteServiceRequest request, CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DeregisterInstance
///
/// Deletes the Amazon Route 53 DNS records and health check, if any, that Cloud Map created
/// for the specified instance.
///
/// Container for the necessary parameters to execute the DeregisterInstance service method.
///
/// The response from the DeregisterInstance service method, as returned by ServiceDiscovery.
///
/// The operation is already in progress.
///
///
/// No instance exists with the specified ID, or the instance was recently registered,
/// and information about the instance hasn't propagated yet.
///
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// The specified resource can't be deleted because it contains other resources. For example,
/// you can't delete a service that contains any instances.
///
///
/// No service exists with the specified ID.
///
/// REST API Reference for DeregisterInstance Operation
DeregisterInstanceResponse DeregisterInstance(DeregisterInstanceRequest request);
///
/// Deletes the Amazon Route 53 DNS records and health check, if any, that Cloud Map created
/// for the specified instance.
///
/// Container for the necessary parameters to execute the DeregisterInstance service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DeregisterInstance service method, as returned by ServiceDiscovery.
///
/// The operation is already in progress.
///
///
/// No instance exists with the specified ID, or the instance was recently registered,
/// and information about the instance hasn't propagated yet.
///
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// The specified resource can't be deleted because it contains other resources. For example,
/// you can't delete a service that contains any instances.
///
///
/// No service exists with the specified ID.
///
/// REST API Reference for DeregisterInstance Operation
Task DeregisterInstanceAsync(DeregisterInstanceRequest request, CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DiscoverInstances
///
/// Discovers registered instances for a specified namespace and service. You can use
/// DiscoverInstances
to discover instances for any type of namespace. For
/// public and private DNS namespaces, you can also use DNS queries to discover instances.
///
/// Container for the necessary parameters to execute the DiscoverInstances service method.
///
/// The response from the DiscoverInstances service method, as returned by ServiceDiscovery.
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// No namespace exists with the specified ID.
///
///
/// The operation can't be completed because you've reached the quota for the number of
/// requests. For more information, see Cloud
/// Map API request throttling quota in the Cloud Map Developer Guide.
///
///
/// No service exists with the specified ID.
///
/// REST API Reference for DiscoverInstances Operation
DiscoverInstancesResponse DiscoverInstances(DiscoverInstancesRequest request);
///
/// Discovers registered instances for a specified namespace and service. You can use
/// DiscoverInstances
to discover instances for any type of namespace. For
/// public and private DNS namespaces, you can also use DNS queries to discover instances.
///
/// Container for the necessary parameters to execute the DiscoverInstances service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DiscoverInstances service method, as returned by ServiceDiscovery.
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// No namespace exists with the specified ID.
///
///
/// The operation can't be completed because you've reached the quota for the number of
/// requests. For more information, see Cloud
/// Map API request throttling quota in the Cloud Map Developer Guide.
///
///
/// No service exists with the specified ID.
///
/// REST API Reference for DiscoverInstances Operation
Task DiscoverInstancesAsync(DiscoverInstancesRequest request, CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region GetInstance
///
/// Gets information about a specified instance.
///
/// Container for the necessary parameters to execute the GetInstance service method.
///
/// The response from the GetInstance service method, as returned by ServiceDiscovery.
///
/// No instance exists with the specified ID, or the instance was recently registered,
/// and information about the instance hasn't propagated yet.
///
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// No service exists with the specified ID.
///
/// REST API Reference for GetInstance Operation
GetInstanceResponse GetInstance(GetInstanceRequest request);
///
/// Gets information about a specified instance.
///
/// Container for the necessary parameters to execute the GetInstance service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the GetInstance service method, as returned by ServiceDiscovery.
///
/// No instance exists with the specified ID, or the instance was recently registered,
/// and information about the instance hasn't propagated yet.
///
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// No service exists with the specified ID.
///
/// REST API Reference for GetInstance Operation
Task GetInstanceAsync(GetInstanceRequest request, CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region GetInstancesHealthStatus
///
/// Gets the current health status (Healthy
, Unhealthy
, or Unknown
)
/// of one or more instances that are associated with a specified service.
///
///
///
/// There's a brief delay between when you register an instance and when the health status
/// for the instance is available.
///
///
///
/// Container for the necessary parameters to execute the GetInstancesHealthStatus service method.
///
/// The response from the GetInstancesHealthStatus service method, as returned by ServiceDiscovery.
///
/// No instance exists with the specified ID, or the instance was recently registered,
/// and information about the instance hasn't propagated yet.
///
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// No service exists with the specified ID.
///
/// REST API Reference for GetInstancesHealthStatus Operation
GetInstancesHealthStatusResponse GetInstancesHealthStatus(GetInstancesHealthStatusRequest request);
///
/// Gets the current health status (Healthy
, Unhealthy
, or Unknown
)
/// of one or more instances that are associated with a specified service.
///
///
///
/// There's a brief delay between when you register an instance and when the health status
/// for the instance is available.
///
///
///
/// Container for the necessary parameters to execute the GetInstancesHealthStatus service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the GetInstancesHealthStatus service method, as returned by ServiceDiscovery.
///
/// No instance exists with the specified ID, or the instance was recently registered,
/// and information about the instance hasn't propagated yet.
///
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// No service exists with the specified ID.
///
/// REST API Reference for GetInstancesHealthStatus Operation
Task GetInstancesHealthStatusAsync(GetInstancesHealthStatusRequest request, CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region GetNamespace
///
/// Gets information about a namespace.
///
/// Container for the necessary parameters to execute the GetNamespace service method.
///
/// The response from the GetNamespace service method, as returned by ServiceDiscovery.
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// No namespace exists with the specified ID.
///
/// REST API Reference for GetNamespace Operation
GetNamespaceResponse GetNamespace(GetNamespaceRequest request);
///
/// Gets information about a namespace.
///
/// Container for the necessary parameters to execute the GetNamespace service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the GetNamespace service method, as returned by ServiceDiscovery.
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// No namespace exists with the specified ID.
///
/// REST API Reference for GetNamespace Operation
Task GetNamespaceAsync(GetNamespaceRequest request, CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region GetOperation
///
/// Gets information about any operation that returns an operation ID in the response,
/// such as a CreateService
request.
///
///
///
/// To get a list of operations that match specified criteria, see ListOperations.
///
///
///
/// Container for the necessary parameters to execute the GetOperation service method.
///
/// The response from the GetOperation service method, as returned by ServiceDiscovery.
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// No operation exists with the specified ID.
///
/// REST API Reference for GetOperation Operation
GetOperationResponse GetOperation(GetOperationRequest request);
///
/// Gets information about any operation that returns an operation ID in the response,
/// such as a CreateService
request.
///
///
///
/// To get a list of operations that match specified criteria, see ListOperations.
///
///
///
/// Container for the necessary parameters to execute the GetOperation service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the GetOperation service method, as returned by ServiceDiscovery.
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// No operation exists with the specified ID.
///
/// REST API Reference for GetOperation Operation
Task GetOperationAsync(GetOperationRequest request, CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region GetService
///
/// Gets the settings for a specified service.
///
/// Container for the necessary parameters to execute the GetService service method.
///
/// The response from the GetService service method, as returned by ServiceDiscovery.
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// No service exists with the specified ID.
///
/// REST API Reference for GetService Operation
GetServiceResponse GetService(GetServiceRequest request);
///
/// Gets the settings for a specified service.
///
/// Container for the necessary parameters to execute the GetService service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the GetService service method, as returned by ServiceDiscovery.
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// No service exists with the specified ID.
///
/// REST API Reference for GetService Operation
Task GetServiceAsync(GetServiceRequest request, CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region ListInstances
///
/// Lists summary information about the instances that you registered by using a specified
/// service.
///
/// Container for the necessary parameters to execute the ListInstances service method.
///
/// The response from the ListInstances service method, as returned by ServiceDiscovery.
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// No service exists with the specified ID.
///
/// REST API Reference for ListInstances Operation
ListInstancesResponse ListInstances(ListInstancesRequest request);
///
/// Lists summary information about the instances that you registered by using a specified
/// service.
///
/// Container for the necessary parameters to execute the ListInstances service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ListInstances service method, as returned by ServiceDiscovery.
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// No service exists with the specified ID.
///
/// REST API Reference for ListInstances Operation
Task ListInstancesAsync(ListInstancesRequest request, CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region ListNamespaces
///
/// Lists summary information about the namespaces that were created by the current Amazon
/// Web Services account.
///
/// Container for the necessary parameters to execute the ListNamespaces service method.
///
/// The response from the ListNamespaces service method, as returned by ServiceDiscovery.
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
/// REST API Reference for ListNamespaces Operation
ListNamespacesResponse ListNamespaces(ListNamespacesRequest request);
///
/// Lists summary information about the namespaces that were created by the current Amazon
/// Web Services account.
///
/// Container for the necessary parameters to execute the ListNamespaces service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ListNamespaces service method, as returned by ServiceDiscovery.
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
/// REST API Reference for ListNamespaces Operation
Task ListNamespacesAsync(ListNamespacesRequest request, CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region ListOperations
///
/// Lists operations that match the criteria that you specify.
///
/// Container for the necessary parameters to execute the ListOperations service method.
///
/// The response from the ListOperations service method, as returned by ServiceDiscovery.
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
/// REST API Reference for ListOperations Operation
ListOperationsResponse ListOperations(ListOperationsRequest request);
///
/// Lists operations that match the criteria that you specify.
///
/// Container for the necessary parameters to execute the ListOperations service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ListOperations service method, as returned by ServiceDiscovery.
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
/// REST API Reference for ListOperations Operation
Task ListOperationsAsync(ListOperationsRequest request, CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region ListServices
///
/// Lists summary information for all the services that are associated with one or more
/// specified namespaces.
///
/// Container for the necessary parameters to execute the ListServices service method.
///
/// The response from the ListServices service method, as returned by ServiceDiscovery.
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
/// REST API Reference for ListServices Operation
ListServicesResponse ListServices(ListServicesRequest request);
///
/// Lists summary information for all the services that are associated with one or more
/// specified namespaces.
///
/// Container for the necessary parameters to execute the ListServices service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ListServices service method, as returned by ServiceDiscovery.
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
/// REST API Reference for ListServices Operation
Task ListServicesAsync(ListServicesRequest request, CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region ListTagsForResource
///
/// Lists tags for the specified resource.
///
/// Container for the necessary parameters to execute the ListTagsForResource service method.
///
/// The response from the ListTagsForResource service method, as returned by ServiceDiscovery.
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// The operation can't be completed because the resource was not found.
///
/// REST API Reference for ListTagsForResource Operation
ListTagsForResourceResponse ListTagsForResource(ListTagsForResourceRequest request);
///
/// Lists tags for the specified resource.
///
/// Container for the necessary parameters to execute the ListTagsForResource service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ListTagsForResource service method, as returned by ServiceDiscovery.
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// The operation can't be completed because the resource was not found.
///
/// REST API Reference for ListTagsForResource Operation
Task ListTagsForResourceAsync(ListTagsForResourceRequest request, CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region RegisterInstance
///
/// 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 that's specified by
ServiceId
,
/// a record is created or updated in the hosted zone that's associated with the corresponding
/// namespace.
///
/// -
///
/// If the service includes
HealthCheckConfig
, a health check is created
/// based on the settings in the health check configuration.
///
/// -
///
/// 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 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 for the last
/// healthy instance
///
///
-
///
/// If you didn't specify a health check configuration: returns all the records
///
///
///
/// For the current quota on the number of instances that you can register using the same
/// namespace and using the same service, see Cloud
/// Map quotas in the Cloud Map Developer Guide.
///
///
/// Container for the necessary parameters to execute the RegisterInstance service method.
///
/// The response from the RegisterInstance service method, as returned by ServiceDiscovery.
///
/// The operation is already in progress.
///
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// The specified resource can't be deleted because it contains other resources. For example,
/// you can't delete a service that contains any instances.
///
///
/// The resource can't be created because you've reached the quota on the number of resources.
///
///
/// No service exists with the specified ID.
///
/// REST API Reference for RegisterInstance Operation
RegisterInstanceResponse RegisterInstance(RegisterInstanceRequest request);
///
/// 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 that's specified by
ServiceId
,
/// a record is created or updated in the hosted zone that's associated with the corresponding
/// namespace.
///
/// -
///
/// If the service includes
HealthCheckConfig
, a health check is created
/// based on the settings in the health check configuration.
///
/// -
///
/// 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 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 for the last
/// healthy instance
///
///
-
///
/// If you didn't specify a health check configuration: returns all the records
///
///
///
/// For the current quota on the number of instances that you can register using the same
/// namespace and using the same service, see Cloud
/// Map quotas in the Cloud Map Developer Guide.
///
///
/// Container for the necessary parameters to execute the RegisterInstance service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the RegisterInstance service method, as returned by ServiceDiscovery.
///
/// The operation is already in progress.
///
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// The specified resource can't be deleted because it contains other resources. For example,
/// you can't delete a service that contains any instances.
///
///
/// The resource can't be created because you've reached the quota on the number of resources.
///
///
/// No service exists with the specified ID.
///
/// REST API Reference for RegisterInstance Operation
Task RegisterInstanceAsync(RegisterInstanceRequest request, CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region TagResource
///
/// Adds one or more tags to the specified resource.
///
/// Container for the necessary parameters to execute the TagResource service method.
///
/// The response from the TagResource service method, as returned by ServiceDiscovery.
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// The operation can't be completed because the resource was not found.
///
///
/// The list of tags on the resource is over the quota. The maximum number of tags that
/// can be applied to a resource is 50.
///
/// REST API Reference for TagResource Operation
TagResourceResponse TagResource(TagResourceRequest request);
///
/// Adds one or more tags to the specified resource.
///
/// Container for the necessary parameters to execute the TagResource service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the TagResource service method, as returned by ServiceDiscovery.
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// The operation can't be completed because the resource was not found.
///
///
/// The list of tags on the resource is over the quota. The maximum number of tags that
/// can be applied to a resource is 50.
///
/// REST API Reference for TagResource Operation
Task TagResourceAsync(TagResourceRequest request, CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region UntagResource
///
/// Removes one or more tags from the specified resource.
///
/// Container for the necessary parameters to execute the UntagResource service method.
///
/// The response from the UntagResource service method, as returned by ServiceDiscovery.
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// The operation can't be completed because the resource was not found.
///
/// REST API Reference for UntagResource Operation
UntagResourceResponse UntagResource(UntagResourceRequest request);
///
/// Removes one or more tags from the specified resource.
///
/// Container for the necessary parameters to execute the UntagResource service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the UntagResource service method, as returned by ServiceDiscovery.
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// The operation can't be completed because the resource was not found.
///
/// REST API Reference for UntagResource Operation
Task UntagResourceAsync(UntagResourceRequest request, CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region UpdateHttpNamespace
///
/// Updates an HTTP namespace.
///
/// Container for the necessary parameters to execute the UpdateHttpNamespace service method.
///
/// The response from the UpdateHttpNamespace service method, as returned by ServiceDiscovery.
///
/// The operation is already in progress.
///
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// No namespace exists with the specified ID.
///
///
/// The specified resource can't be deleted because it contains other resources. For example,
/// you can't delete a service that contains any instances.
///
/// REST API Reference for UpdateHttpNamespace Operation
UpdateHttpNamespaceResponse UpdateHttpNamespace(UpdateHttpNamespaceRequest request);
///
/// Updates an HTTP namespace.
///
/// Container for the necessary parameters to execute the UpdateHttpNamespace service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the UpdateHttpNamespace service method, as returned by ServiceDiscovery.
///
/// The operation is already in progress.
///
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// No namespace exists with the specified ID.
///
///
/// The specified resource can't be deleted because it contains other resources. For example,
/// you can't delete a service that contains any instances.
///
/// REST API Reference for UpdateHttpNamespace Operation
Task UpdateHttpNamespaceAsync(UpdateHttpNamespaceRequest request, CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region UpdateInstanceCustomHealthStatus
///
/// 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.
///
///
/// Container for the necessary parameters to execute the UpdateInstanceCustomHealthStatus service method.
///
/// The response from the UpdateInstanceCustomHealthStatus service method, as returned by ServiceDiscovery.
///
/// The health check for the instance that's specified by ServiceId
and InstanceId
/// isn't a custom health check.
///
///
/// No instance exists with the specified ID, or the instance was recently registered,
/// and information about the instance hasn't propagated yet.
///
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// No service exists with the specified ID.
///
/// REST API Reference for UpdateInstanceCustomHealthStatus Operation
UpdateInstanceCustomHealthStatusResponse UpdateInstanceCustomHealthStatus(UpdateInstanceCustomHealthStatusRequest request);
///
/// 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.
///
///
/// Container for the necessary parameters to execute the UpdateInstanceCustomHealthStatus service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the UpdateInstanceCustomHealthStatus service method, as returned by ServiceDiscovery.
///
/// The health check for the instance that's specified by ServiceId
and InstanceId
/// isn't a custom health check.
///
///
/// No instance exists with the specified ID, or the instance was recently registered,
/// and information about the instance hasn't propagated yet.
///
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// No service exists with the specified ID.
///
/// REST API Reference for UpdateInstanceCustomHealthStatus Operation
Task UpdateInstanceCustomHealthStatusAsync(UpdateInstanceCustomHealthStatusRequest request, CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region UpdatePrivateDnsNamespace
///
/// Updates a private DNS namespace.
///
/// Container for the necessary parameters to execute the UpdatePrivateDnsNamespace service method.
///
/// The response from the UpdatePrivateDnsNamespace service method, as returned by ServiceDiscovery.
///
/// The operation is already in progress.
///
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// No namespace exists with the specified ID.
///
///
/// The specified resource can't be deleted because it contains other resources. For example,
/// you can't delete a service that contains any instances.
///
/// REST API Reference for UpdatePrivateDnsNamespace Operation
UpdatePrivateDnsNamespaceResponse UpdatePrivateDnsNamespace(UpdatePrivateDnsNamespaceRequest request);
///
/// Updates a private DNS namespace.
///
/// Container for the necessary parameters to execute the UpdatePrivateDnsNamespace service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the UpdatePrivateDnsNamespace service method, as returned by ServiceDiscovery.
///
/// The operation is already in progress.
///
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// No namespace exists with the specified ID.
///
///
/// The specified resource can't be deleted because it contains other resources. For example,
/// you can't delete a service that contains any instances.
///
/// REST API Reference for UpdatePrivateDnsNamespace Operation
Task UpdatePrivateDnsNamespaceAsync(UpdatePrivateDnsNamespaceRequest request, CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region UpdatePublicDnsNamespace
///
/// Updates a public DNS namespace.
///
/// Container for the necessary parameters to execute the UpdatePublicDnsNamespace service method.
///
/// The response from the UpdatePublicDnsNamespace service method, as returned by ServiceDiscovery.
///
/// The operation is already in progress.
///
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// No namespace exists with the specified ID.
///
///
/// The specified resource can't be deleted because it contains other resources. For example,
/// you can't delete a service that contains any instances.
///
/// REST API Reference for UpdatePublicDnsNamespace Operation
UpdatePublicDnsNamespaceResponse UpdatePublicDnsNamespace(UpdatePublicDnsNamespaceRequest request);
///
/// Updates a public DNS namespace.
///
/// Container for the necessary parameters to execute the UpdatePublicDnsNamespace service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the UpdatePublicDnsNamespace service method, as returned by ServiceDiscovery.
///
/// The operation is already in progress.
///
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// No namespace exists with the specified ID.
///
///
/// The specified resource can't be deleted because it contains other resources. For example,
/// you can't delete a service that contains any instances.
///
/// REST API Reference for UpdatePublicDnsNamespace Operation
Task UpdatePublicDnsNamespaceAsync(UpdatePublicDnsNamespaceRequest request, CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region UpdateService
///
/// Submits a request to perform the following operations:
///
/// -
///
/// Update the TTL setting for existing
DnsRecords
configurations
///
/// -
///
/// Add, update, or delete
HealthCheckConfig
for a specified service
///
///
///
/// You can't add, update, or delete a HealthCheckCustomConfig
configuration.
///
///
///
/// For public and private DNS namespaces, note the following:
///
/// -
///
/// If you omit any existing
DnsRecords
or HealthCheckConfig
/// configurations from an UpdateService
request, the configurations are
/// deleted from the service.
///
/// -
///
/// If you omit an existing
HealthCheckCustomConfig
configuration from an
/// UpdateService
request, the configuration isn't deleted from the service.
///
///
///
/// When you update settings for a service, Cloud Map also updates the corresponding settings
/// in all the records and health checks that were created by using the specified service.
///
///
/// Container for the necessary parameters to execute the UpdateService service method.
///
/// The response from the UpdateService service method, as returned by ServiceDiscovery.
///
/// The operation is already in progress.
///
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// No service exists with the specified ID.
///
/// REST API Reference for UpdateService Operation
UpdateServiceResponse UpdateService(UpdateServiceRequest request);
///
/// Submits a request to perform the following operations:
///
/// -
///
/// Update the TTL setting for existing
DnsRecords
configurations
///
/// -
///
/// Add, update, or delete
HealthCheckConfig
for a specified service
///
///
///
/// You can't add, update, or delete a HealthCheckCustomConfig
configuration.
///
///
///
/// For public and private DNS namespaces, note the following:
///
/// -
///
/// If you omit any existing
DnsRecords
or HealthCheckConfig
/// configurations from an UpdateService
request, the configurations are
/// deleted from the service.
///
/// -
///
/// If you omit an existing
HealthCheckCustomConfig
configuration from an
/// UpdateService
request, the configuration isn't deleted from the service.
///
///
///
/// When you update settings for a service, Cloud Map also updates the corresponding settings
/// in all the records and health checks that were created by using the specified service.
///
///
/// Container for the necessary parameters to execute the UpdateService service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the UpdateService service method, as returned by ServiceDiscovery.
///
/// The operation is already in progress.
///
///
/// One or more specified values aren't valid. For example, a required value might be
/// missing, a numeric value might be outside the allowed range, or a string value might
/// exceed length constraints.
///
///
/// No service exists with the specified ID.
///
/// REST API Reference for UpdateService Operation
Task UpdateServiceAsync(UpdateServiceRequest request, CancellationToken cancellationToken = default(CancellationToken));
#endregion
}
}