/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include #include #include #include #include namespace Aws { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace SageMaker { namespace Model { class DescribeEndpointResult { public: AWS_SAGEMAKER_API DescribeEndpointResult(); AWS_SAGEMAKER_API DescribeEndpointResult(const Aws::AmazonWebServiceResult& result); AWS_SAGEMAKER_API DescribeEndpointResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

Name of the endpoint.

*/ inline const Aws::String& GetEndpointName() const{ return m_endpointName; } /** *

Name of the endpoint.

*/ inline void SetEndpointName(const Aws::String& value) { m_endpointName = value; } /** *

Name of the endpoint.

*/ inline void SetEndpointName(Aws::String&& value) { m_endpointName = std::move(value); } /** *

Name of the endpoint.

*/ inline void SetEndpointName(const char* value) { m_endpointName.assign(value); } /** *

Name of the endpoint.

*/ inline DescribeEndpointResult& WithEndpointName(const Aws::String& value) { SetEndpointName(value); return *this;} /** *

Name of the endpoint.

*/ inline DescribeEndpointResult& WithEndpointName(Aws::String&& value) { SetEndpointName(std::move(value)); return *this;} /** *

Name of the endpoint.

*/ inline DescribeEndpointResult& WithEndpointName(const char* value) { SetEndpointName(value); return *this;} /** *

The Amazon Resource Name (ARN) of the endpoint.

*/ inline const Aws::String& GetEndpointArn() const{ return m_endpointArn; } /** *

The Amazon Resource Name (ARN) of the endpoint.

*/ inline void SetEndpointArn(const Aws::String& value) { m_endpointArn = value; } /** *

The Amazon Resource Name (ARN) of the endpoint.

*/ inline void SetEndpointArn(Aws::String&& value) { m_endpointArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the endpoint.

*/ inline void SetEndpointArn(const char* value) { m_endpointArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the endpoint.

*/ inline DescribeEndpointResult& WithEndpointArn(const Aws::String& value) { SetEndpointArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the endpoint.

*/ inline DescribeEndpointResult& WithEndpointArn(Aws::String&& value) { SetEndpointArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the endpoint.

*/ inline DescribeEndpointResult& WithEndpointArn(const char* value) { SetEndpointArn(value); return *this;} /** *

The name of the endpoint configuration associated with this endpoint.

*/ inline const Aws::String& GetEndpointConfigName() const{ return m_endpointConfigName; } /** *

The name of the endpoint configuration associated with this endpoint.

*/ inline void SetEndpointConfigName(const Aws::String& value) { m_endpointConfigName = value; } /** *

The name of the endpoint configuration associated with this endpoint.

*/ inline void SetEndpointConfigName(Aws::String&& value) { m_endpointConfigName = std::move(value); } /** *

The name of the endpoint configuration associated with this endpoint.

*/ inline void SetEndpointConfigName(const char* value) { m_endpointConfigName.assign(value); } /** *

The name of the endpoint configuration associated with this endpoint.

*/ inline DescribeEndpointResult& WithEndpointConfigName(const Aws::String& value) { SetEndpointConfigName(value); return *this;} /** *

The name of the endpoint configuration associated with this endpoint.

*/ inline DescribeEndpointResult& WithEndpointConfigName(Aws::String&& value) { SetEndpointConfigName(std::move(value)); return *this;} /** *

The name of the endpoint configuration associated with this endpoint.

*/ inline DescribeEndpointResult& WithEndpointConfigName(const char* value) { SetEndpointConfigName(value); return *this;} /** *

An array of ProductionVariantSummary * objects, one for each model hosted behind this endpoint.

*/ inline const Aws::Vector& GetProductionVariants() const{ return m_productionVariants; } /** *

An array of ProductionVariantSummary * objects, one for each model hosted behind this endpoint.

*/ inline void SetProductionVariants(const Aws::Vector& value) { m_productionVariants = value; } /** *

An array of ProductionVariantSummary * objects, one for each model hosted behind this endpoint.

*/ inline void SetProductionVariants(Aws::Vector&& value) { m_productionVariants = std::move(value); } /** *

An array of ProductionVariantSummary * objects, one for each model hosted behind this endpoint.

*/ inline DescribeEndpointResult& WithProductionVariants(const Aws::Vector& value) { SetProductionVariants(value); return *this;} /** *

An array of ProductionVariantSummary * objects, one for each model hosted behind this endpoint.

*/ inline DescribeEndpointResult& WithProductionVariants(Aws::Vector&& value) { SetProductionVariants(std::move(value)); return *this;} /** *

An array of ProductionVariantSummary * objects, one for each model hosted behind this endpoint.

*/ inline DescribeEndpointResult& AddProductionVariants(const ProductionVariantSummary& value) { m_productionVariants.push_back(value); return *this; } /** *

An array of ProductionVariantSummary * objects, one for each model hosted behind this endpoint.

*/ inline DescribeEndpointResult& AddProductionVariants(ProductionVariantSummary&& value) { m_productionVariants.push_back(std::move(value)); return *this; } inline const DataCaptureConfigSummary& GetDataCaptureConfig() const{ return m_dataCaptureConfig; } inline void SetDataCaptureConfig(const DataCaptureConfigSummary& value) { m_dataCaptureConfig = value; } inline void SetDataCaptureConfig(DataCaptureConfigSummary&& value) { m_dataCaptureConfig = std::move(value); } inline DescribeEndpointResult& WithDataCaptureConfig(const DataCaptureConfigSummary& value) { SetDataCaptureConfig(value); return *this;} inline DescribeEndpointResult& WithDataCaptureConfig(DataCaptureConfigSummary&& value) { SetDataCaptureConfig(std::move(value)); return *this;} /** *

The status of the endpoint.

  • OutOfService: * Endpoint is not available to take incoming requests.

  • * Creating: CreateEndpoint * is executing.

  • Updating: UpdateEndpoint * or UpdateEndpointWeightsAndCapacities * is executing.

  • SystemUpdating: Endpoint is * undergoing maintenance and cannot be updated or deleted or re-scaled until it * has completed. This maintenance operation does not change any customer-specified * values such as VPC config, KMS encryption, model, instance type, or instance * count.

  • RollingBack: Endpoint fails to scale up * or down or change its variant weight and is in the process of rolling back to * its previous configuration. Once the rollback completes, endpoint returns to an * InService status. This transitional status only applies to an * endpoint that has autoscaling enabled and is undergoing variant weight or * capacity changes as part of an UpdateEndpointWeightsAndCapacities * call or when the UpdateEndpointWeightsAndCapacities * operation is called explicitly.

  • InService: * Endpoint is available to process incoming requests.

  • * Deleting: DeleteEndpoint * is executing.

  • Failed: Endpoint could not be * created, updated, or re-scaled. Use the FailureReason value * returned by DescribeEndpoint * for information about the failure. DeleteEndpoint * is the only operation that can be performed on a failed endpoint.

  • *
*/ inline const EndpointStatus& GetEndpointStatus() const{ return m_endpointStatus; } /** *

The status of the endpoint.

  • OutOfService: * Endpoint is not available to take incoming requests.

  • * Creating: CreateEndpoint * is executing.

  • Updating: UpdateEndpoint * or UpdateEndpointWeightsAndCapacities * is executing.

  • SystemUpdating: Endpoint is * undergoing maintenance and cannot be updated or deleted or re-scaled until it * has completed. This maintenance operation does not change any customer-specified * values such as VPC config, KMS encryption, model, instance type, or instance * count.

  • RollingBack: Endpoint fails to scale up * or down or change its variant weight and is in the process of rolling back to * its previous configuration. Once the rollback completes, endpoint returns to an * InService status. This transitional status only applies to an * endpoint that has autoscaling enabled and is undergoing variant weight or * capacity changes as part of an UpdateEndpointWeightsAndCapacities * call or when the UpdateEndpointWeightsAndCapacities * operation is called explicitly.

  • InService: * Endpoint is available to process incoming requests.

  • * Deleting: DeleteEndpoint * is executing.

  • Failed: Endpoint could not be * created, updated, or re-scaled. Use the FailureReason value * returned by DescribeEndpoint * for information about the failure. DeleteEndpoint * is the only operation that can be performed on a failed endpoint.

  • *
*/ inline void SetEndpointStatus(const EndpointStatus& value) { m_endpointStatus = value; } /** *

The status of the endpoint.

  • OutOfService: * Endpoint is not available to take incoming requests.

  • * Creating: CreateEndpoint * is executing.

  • Updating: UpdateEndpoint * or UpdateEndpointWeightsAndCapacities * is executing.

  • SystemUpdating: Endpoint is * undergoing maintenance and cannot be updated or deleted or re-scaled until it * has completed. This maintenance operation does not change any customer-specified * values such as VPC config, KMS encryption, model, instance type, or instance * count.

  • RollingBack: Endpoint fails to scale up * or down or change its variant weight and is in the process of rolling back to * its previous configuration. Once the rollback completes, endpoint returns to an * InService status. This transitional status only applies to an * endpoint that has autoscaling enabled and is undergoing variant weight or * capacity changes as part of an UpdateEndpointWeightsAndCapacities * call or when the UpdateEndpointWeightsAndCapacities * operation is called explicitly.

  • InService: * Endpoint is available to process incoming requests.

  • * Deleting: DeleteEndpoint * is executing.

  • Failed: Endpoint could not be * created, updated, or re-scaled. Use the FailureReason value * returned by DescribeEndpoint * for information about the failure. DeleteEndpoint * is the only operation that can be performed on a failed endpoint.

  • *
*/ inline void SetEndpointStatus(EndpointStatus&& value) { m_endpointStatus = std::move(value); } /** *

The status of the endpoint.

  • OutOfService: * Endpoint is not available to take incoming requests.

  • * Creating: CreateEndpoint * is executing.

  • Updating: UpdateEndpoint * or UpdateEndpointWeightsAndCapacities * is executing.

  • SystemUpdating: Endpoint is * undergoing maintenance and cannot be updated or deleted or re-scaled until it * has completed. This maintenance operation does not change any customer-specified * values such as VPC config, KMS encryption, model, instance type, or instance * count.

  • RollingBack: Endpoint fails to scale up * or down or change its variant weight and is in the process of rolling back to * its previous configuration. Once the rollback completes, endpoint returns to an * InService status. This transitional status only applies to an * endpoint that has autoscaling enabled and is undergoing variant weight or * capacity changes as part of an UpdateEndpointWeightsAndCapacities * call or when the UpdateEndpointWeightsAndCapacities * operation is called explicitly.

  • InService: * Endpoint is available to process incoming requests.

  • * Deleting: DeleteEndpoint * is executing.

  • Failed: Endpoint could not be * created, updated, or re-scaled. Use the FailureReason value * returned by DescribeEndpoint * for information about the failure. DeleteEndpoint * is the only operation that can be performed on a failed endpoint.

  • *
*/ inline DescribeEndpointResult& WithEndpointStatus(const EndpointStatus& value) { SetEndpointStatus(value); return *this;} /** *

The status of the endpoint.

  • OutOfService: * Endpoint is not available to take incoming requests.

  • * Creating: CreateEndpoint * is executing.

  • Updating: UpdateEndpoint * or UpdateEndpointWeightsAndCapacities * is executing.

  • SystemUpdating: Endpoint is * undergoing maintenance and cannot be updated or deleted or re-scaled until it * has completed. This maintenance operation does not change any customer-specified * values such as VPC config, KMS encryption, model, instance type, or instance * count.

  • RollingBack: Endpoint fails to scale up * or down or change its variant weight and is in the process of rolling back to * its previous configuration. Once the rollback completes, endpoint returns to an * InService status. This transitional status only applies to an * endpoint that has autoscaling enabled and is undergoing variant weight or * capacity changes as part of an UpdateEndpointWeightsAndCapacities * call or when the UpdateEndpointWeightsAndCapacities * operation is called explicitly.

  • InService: * Endpoint is available to process incoming requests.

  • * Deleting: DeleteEndpoint * is executing.

  • Failed: Endpoint could not be * created, updated, or re-scaled. Use the FailureReason value * returned by DescribeEndpoint * for information about the failure. DeleteEndpoint * is the only operation that can be performed on a failed endpoint.

  • *
*/ inline DescribeEndpointResult& WithEndpointStatus(EndpointStatus&& value) { SetEndpointStatus(std::move(value)); return *this;} /** *

If the status of the endpoint is Failed, the reason why it * failed.

*/ inline const Aws::String& GetFailureReason() const{ return m_failureReason; } /** *

If the status of the endpoint is Failed, the reason why it * failed.

*/ inline void SetFailureReason(const Aws::String& value) { m_failureReason = value; } /** *

If the status of the endpoint is Failed, the reason why it * failed.

*/ inline void SetFailureReason(Aws::String&& value) { m_failureReason = std::move(value); } /** *

If the status of the endpoint is Failed, the reason why it * failed.

*/ inline void SetFailureReason(const char* value) { m_failureReason.assign(value); } /** *

If the status of the endpoint is Failed, the reason why it * failed.

*/ inline DescribeEndpointResult& WithFailureReason(const Aws::String& value) { SetFailureReason(value); return *this;} /** *

If the status of the endpoint is Failed, the reason why it * failed.

*/ inline DescribeEndpointResult& WithFailureReason(Aws::String&& value) { SetFailureReason(std::move(value)); return *this;} /** *

If the status of the endpoint is Failed, the reason why it * failed.

*/ inline DescribeEndpointResult& WithFailureReason(const char* value) { SetFailureReason(value); return *this;} /** *

A timestamp that shows when the endpoint was created.

*/ inline const Aws::Utils::DateTime& GetCreationTime() const{ return m_creationTime; } /** *

A timestamp that shows when the endpoint was created.

*/ inline void SetCreationTime(const Aws::Utils::DateTime& value) { m_creationTime = value; } /** *

A timestamp that shows when the endpoint was created.

*/ inline void SetCreationTime(Aws::Utils::DateTime&& value) { m_creationTime = std::move(value); } /** *

A timestamp that shows when the endpoint was created.

*/ inline DescribeEndpointResult& WithCreationTime(const Aws::Utils::DateTime& value) { SetCreationTime(value); return *this;} /** *

A timestamp that shows when the endpoint was created.

*/ inline DescribeEndpointResult& WithCreationTime(Aws::Utils::DateTime&& value) { SetCreationTime(std::move(value)); return *this;} /** *

A timestamp that shows when the endpoint was last modified.

*/ inline const Aws::Utils::DateTime& GetLastModifiedTime() const{ return m_lastModifiedTime; } /** *

A timestamp that shows when the endpoint was last modified.

*/ inline void SetLastModifiedTime(const Aws::Utils::DateTime& value) { m_lastModifiedTime = value; } /** *

A timestamp that shows when the endpoint was last modified.

*/ inline void SetLastModifiedTime(Aws::Utils::DateTime&& value) { m_lastModifiedTime = std::move(value); } /** *

A timestamp that shows when the endpoint was last modified.

*/ inline DescribeEndpointResult& WithLastModifiedTime(const Aws::Utils::DateTime& value) { SetLastModifiedTime(value); return *this;} /** *

A timestamp that shows when the endpoint was last modified.

*/ inline DescribeEndpointResult& WithLastModifiedTime(Aws::Utils::DateTime&& value) { SetLastModifiedTime(std::move(value)); return *this;} /** *

The most recent deployment configuration for the endpoint.

*/ inline const DeploymentConfig& GetLastDeploymentConfig() const{ return m_lastDeploymentConfig; } /** *

The most recent deployment configuration for the endpoint.

*/ inline void SetLastDeploymentConfig(const DeploymentConfig& value) { m_lastDeploymentConfig = value; } /** *

The most recent deployment configuration for the endpoint.

*/ inline void SetLastDeploymentConfig(DeploymentConfig&& value) { m_lastDeploymentConfig = std::move(value); } /** *

The most recent deployment configuration for the endpoint.

*/ inline DescribeEndpointResult& WithLastDeploymentConfig(const DeploymentConfig& value) { SetLastDeploymentConfig(value); return *this;} /** *

The most recent deployment configuration for the endpoint.

*/ inline DescribeEndpointResult& WithLastDeploymentConfig(DeploymentConfig&& value) { SetLastDeploymentConfig(std::move(value)); return *this;} /** *

Returns the description of an endpoint configuration created using the * CreateEndpointConfig API.

*/ inline const AsyncInferenceConfig& GetAsyncInferenceConfig() const{ return m_asyncInferenceConfig; } /** *

Returns the description of an endpoint configuration created using the * CreateEndpointConfig API.

*/ inline void SetAsyncInferenceConfig(const AsyncInferenceConfig& value) { m_asyncInferenceConfig = value; } /** *

Returns the description of an endpoint configuration created using the * CreateEndpointConfig API.

*/ inline void SetAsyncInferenceConfig(AsyncInferenceConfig&& value) { m_asyncInferenceConfig = std::move(value); } /** *

Returns the description of an endpoint configuration created using the * CreateEndpointConfig API.

*/ inline DescribeEndpointResult& WithAsyncInferenceConfig(const AsyncInferenceConfig& value) { SetAsyncInferenceConfig(value); return *this;} /** *

Returns the description of an endpoint configuration created using the * CreateEndpointConfig API.

*/ inline DescribeEndpointResult& WithAsyncInferenceConfig(AsyncInferenceConfig&& value) { SetAsyncInferenceConfig(std::move(value)); return *this;} /** *

Returns the summary of an in-progress deployment. This field is only returned * when the endpoint is creating or updating with a new endpoint configuration.

*/ inline const PendingDeploymentSummary& GetPendingDeploymentSummary() const{ return m_pendingDeploymentSummary; } /** *

Returns the summary of an in-progress deployment. This field is only returned * when the endpoint is creating or updating with a new endpoint configuration.

*/ inline void SetPendingDeploymentSummary(const PendingDeploymentSummary& value) { m_pendingDeploymentSummary = value; } /** *

Returns the summary of an in-progress deployment. This field is only returned * when the endpoint is creating or updating with a new endpoint configuration.

*/ inline void SetPendingDeploymentSummary(PendingDeploymentSummary&& value) { m_pendingDeploymentSummary = std::move(value); } /** *

Returns the summary of an in-progress deployment. This field is only returned * when the endpoint is creating or updating with a new endpoint configuration.

*/ inline DescribeEndpointResult& WithPendingDeploymentSummary(const PendingDeploymentSummary& value) { SetPendingDeploymentSummary(value); return *this;} /** *

Returns the summary of an in-progress deployment. This field is only returned * when the endpoint is creating or updating with a new endpoint configuration.

*/ inline DescribeEndpointResult& WithPendingDeploymentSummary(PendingDeploymentSummary&& value) { SetPendingDeploymentSummary(std::move(value)); return *this;} /** *

The configuration parameters for an explainer.

*/ inline const ExplainerConfig& GetExplainerConfig() const{ return m_explainerConfig; } /** *

The configuration parameters for an explainer.

*/ inline void SetExplainerConfig(const ExplainerConfig& value) { m_explainerConfig = value; } /** *

The configuration parameters for an explainer.

*/ inline void SetExplainerConfig(ExplainerConfig&& value) { m_explainerConfig = std::move(value); } /** *

The configuration parameters for an explainer.

*/ inline DescribeEndpointResult& WithExplainerConfig(const ExplainerConfig& value) { SetExplainerConfig(value); return *this;} /** *

The configuration parameters for an explainer.

*/ inline DescribeEndpointResult& WithExplainerConfig(ExplainerConfig&& value) { SetExplainerConfig(std::move(value)); return *this;} /** *

An array of ProductionVariantSummary * objects, one for each model that you want to host at this endpoint in shadow * mode with production traffic replicated from the model specified on * ProductionVariants.

*/ inline const Aws::Vector& GetShadowProductionVariants() const{ return m_shadowProductionVariants; } /** *

An array of ProductionVariantSummary * objects, one for each model that you want to host at this endpoint in shadow * mode with production traffic replicated from the model specified on * ProductionVariants.

*/ inline void SetShadowProductionVariants(const Aws::Vector& value) { m_shadowProductionVariants = value; } /** *

An array of ProductionVariantSummary * objects, one for each model that you want to host at this endpoint in shadow * mode with production traffic replicated from the model specified on * ProductionVariants.

*/ inline void SetShadowProductionVariants(Aws::Vector&& value) { m_shadowProductionVariants = std::move(value); } /** *

An array of ProductionVariantSummary * objects, one for each model that you want to host at this endpoint in shadow * mode with production traffic replicated from the model specified on * ProductionVariants.

*/ inline DescribeEndpointResult& WithShadowProductionVariants(const Aws::Vector& value) { SetShadowProductionVariants(value); return *this;} /** *

An array of ProductionVariantSummary * objects, one for each model that you want to host at this endpoint in shadow * mode with production traffic replicated from the model specified on * ProductionVariants.

*/ inline DescribeEndpointResult& WithShadowProductionVariants(Aws::Vector&& value) { SetShadowProductionVariants(std::move(value)); return *this;} /** *

An array of ProductionVariantSummary * objects, one for each model that you want to host at this endpoint in shadow * mode with production traffic replicated from the model specified on * ProductionVariants.

*/ inline DescribeEndpointResult& AddShadowProductionVariants(const ProductionVariantSummary& value) { m_shadowProductionVariants.push_back(value); return *this; } /** *

An array of ProductionVariantSummary * objects, one for each model that you want to host at this endpoint in shadow * mode with production traffic replicated from the model specified on * ProductionVariants.

*/ inline DescribeEndpointResult& AddShadowProductionVariants(ProductionVariantSummary&& value) { m_shadowProductionVariants.push_back(std::move(value)); return *this; } inline const Aws::String& GetRequestId() const{ return m_requestId; } inline void SetRequestId(const Aws::String& value) { m_requestId = value; } inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } inline void SetRequestId(const char* value) { m_requestId.assign(value); } inline DescribeEndpointResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline DescribeEndpointResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline DescribeEndpointResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: Aws::String m_endpointName; Aws::String m_endpointArn; Aws::String m_endpointConfigName; Aws::Vector m_productionVariants; DataCaptureConfigSummary m_dataCaptureConfig; EndpointStatus m_endpointStatus; Aws::String m_failureReason; Aws::Utils::DateTime m_creationTime; Aws::Utils::DateTime m_lastModifiedTime; DeploymentConfig m_lastDeploymentConfig; AsyncInferenceConfig m_asyncInferenceConfig; PendingDeploymentSummary m_pendingDeploymentSummary; ExplainerConfig m_explainerConfig; Aws::Vector m_shadowProductionVariants; Aws::String m_requestId; }; } // namespace Model } // namespace SageMaker } // namespace Aws