UpdateEndpoint - Amazon SageMaker


Deploys the EndpointConfig specified in the request to a new fleet of instances. SageMaker shifts endpoint traffic to the new instances with the updated endpoint configuration and then deletes the old instances using the previous EndpointConfig (there is no availability loss). For more information about how to control the update and traffic shifting process, see Update models in production.

When SageMaker receives the request, it sets the endpoint status to Updating. After updating the endpoint, it sets the status to InService. To check the status of an endpoint, use the DescribeEndpoint API.


You must not delete an EndpointConfig in use by an endpoint that is live or while the UpdateEndpoint or CreateEndpoint operations are being performed on the endpoint. To update an endpoint, you must create a new EndpointConfig.

If you delete the EndpointConfig of an endpoint that is active or being created or updated you may lose visibility into the instance type the endpoint is using. The endpoint must be deleted in order to stop incurring charges.

Request Syntax

{ "DeploymentConfig": { "AutoRollbackConfiguration": { "Alarms": [ { "AlarmName": "string" } ] }, "BlueGreenUpdatePolicy": { "MaximumExecutionTimeoutInSeconds": number, "TerminationWaitInSeconds": number, "TrafficRoutingConfiguration": { "CanarySize": { "Type": "string", "Value": number }, "LinearStepSize": { "Type": "string", "Value": number }, "Type": "string", "WaitIntervalInSeconds": number } }, "RollingUpdatePolicy": { "MaximumBatchSize": { "Type": "string", "Value": number }, "MaximumExecutionTimeoutInSeconds": number, "RollbackMaximumBatchSize": { "Type": "string", "Value": number }, "WaitIntervalInSeconds": number } }, "EndpointConfigName": "string", "EndpointName": "string", "ExcludeRetainedVariantProperties": [ { "VariantPropertyType": "string" } ], "RetainAllVariantProperties": boolean, "RetainDeploymentConfig": boolean }

Request Parameters

For information about the parameters that are common to all actions, see Common Parameters.

The request accepts the following data in JSON format.


The deployment configuration for an endpoint, which contains the desired deployment strategy and rollback configurations.

Type: DeploymentConfig object

Required: No


The name of the new endpoint configuration.

Type: String

Length Constraints: Maximum length of 63.

Pattern: ^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,62}

Required: Yes


The name of the endpoint whose configuration you want to update.

Type: String

Length Constraints: Maximum length of 63.

Pattern: ^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,62}

Required: Yes


When you are updating endpoint resources with RetainAllVariantProperties, whose value is set to true, ExcludeRetainedVariantProperties specifies the list of type VariantProperty to override with the values provided by EndpointConfig. If you don't specify a value for ExcludeRetainedVariantProperties, no variant properties are overridden.

Type: Array of VariantProperty objects

Array Members: Minimum number of 0 items. Maximum number of 3 items.

Required: No


When updating endpoint resources, enables or disables the retention of variant properties, such as the instance count or the variant weight. To retain the variant properties of an endpoint when updating it, set RetainAllVariantProperties to true. To use the variant properties specified in a new EndpointConfig call when updating an endpoint, set RetainAllVariantProperties to false. The default is false.

Type: Boolean

Required: No


Specifies whether to reuse the last deployment configuration. The default value is false (the configuration is not reused).

Type: Boolean

Required: No

Response Syntax

{ "EndpointArn": "string" }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.


The Amazon Resource Name (ARN) of the endpoint.

Type: String

Length Constraints: Minimum length of 20. Maximum length of 2048.

Pattern: arn:aws[a-z\-]*:sagemaker:[a-z0-9\-]*:[0-9]{12}:endpoint/.*


For information about the errors that are common to all actions, see Common Errors.


You have exceeded an SageMaker resource limit. For example, you might have too many training jobs created.

HTTP Status Code: 400

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: