/** * 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 namespace Aws { namespace SageMaker { namespace Model { /** */ class UpdateWorkteamRequest : public SageMakerRequest { public: AWS_SAGEMAKER_API UpdateWorkteamRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "UpdateWorkteam"; } AWS_SAGEMAKER_API Aws::String SerializePayload() const override; AWS_SAGEMAKER_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

The name of the work team to update.

*/ inline const Aws::String& GetWorkteamName() const{ return m_workteamName; } /** *

The name of the work team to update.

*/ inline bool WorkteamNameHasBeenSet() const { return m_workteamNameHasBeenSet; } /** *

The name of the work team to update.

*/ inline void SetWorkteamName(const Aws::String& value) { m_workteamNameHasBeenSet = true; m_workteamName = value; } /** *

The name of the work team to update.

*/ inline void SetWorkteamName(Aws::String&& value) { m_workteamNameHasBeenSet = true; m_workteamName = std::move(value); } /** *

The name of the work team to update.

*/ inline void SetWorkteamName(const char* value) { m_workteamNameHasBeenSet = true; m_workteamName.assign(value); } /** *

The name of the work team to update.

*/ inline UpdateWorkteamRequest& WithWorkteamName(const Aws::String& value) { SetWorkteamName(value); return *this;} /** *

The name of the work team to update.

*/ inline UpdateWorkteamRequest& WithWorkteamName(Aws::String&& value) { SetWorkteamName(std::move(value)); return *this;} /** *

The name of the work team to update.

*/ inline UpdateWorkteamRequest& WithWorkteamName(const char* value) { SetWorkteamName(value); return *this;} /** *

A list of MemberDefinition objects that contains objects that * identify the workers that make up the work team.

Workforces can be * created using Amazon Cognito or your own OIDC Identity Provider (IdP). For * private workforces created using Amazon Cognito use * CognitoMemberDefinition. For workforces created using your own OIDC * identity provider (IdP) use OidcMemberDefinition. You should not * provide input for both of these parameters in a single request.

For * workforces created using Amazon Cognito, private work teams correspond to Amazon * Cognito user groups within the user pool used to create a workforce. All * of the CognitoMemberDefinition objects that make up the member * definition must have the same ClientId and UserPool * values. To add a Amazon Cognito user group to an existing worker pool, see Adding groups to a User Pool. For more information about user pools, * see Amazon * Cognito User Pools.

For workforces created using your own OIDC IdP, * specify the user groups that you want to include in your private work team in * OidcMemberDefinition by listing those groups in * Groups. Be aware that user groups that are already in the work team * must also be listed in Groups when you make this request to remain * on the work team. If you do not include these user groups, they will no longer * be associated with the work team you update.

*/ inline const Aws::Vector& GetMemberDefinitions() const{ return m_memberDefinitions; } /** *

A list of MemberDefinition objects that contains objects that * identify the workers that make up the work team.

Workforces can be * created using Amazon Cognito or your own OIDC Identity Provider (IdP). For * private workforces created using Amazon Cognito use * CognitoMemberDefinition. For workforces created using your own OIDC * identity provider (IdP) use OidcMemberDefinition. You should not * provide input for both of these parameters in a single request.

For * workforces created using Amazon Cognito, private work teams correspond to Amazon * Cognito user groups within the user pool used to create a workforce. All * of the CognitoMemberDefinition objects that make up the member * definition must have the same ClientId and UserPool * values. To add a Amazon Cognito user group to an existing worker pool, see Adding groups to a User Pool. For more information about user pools, * see Amazon * Cognito User Pools.

For workforces created using your own OIDC IdP, * specify the user groups that you want to include in your private work team in * OidcMemberDefinition by listing those groups in * Groups. Be aware that user groups that are already in the work team * must also be listed in Groups when you make this request to remain * on the work team. If you do not include these user groups, they will no longer * be associated with the work team you update.

*/ inline bool MemberDefinitionsHasBeenSet() const { return m_memberDefinitionsHasBeenSet; } /** *

A list of MemberDefinition objects that contains objects that * identify the workers that make up the work team.

Workforces can be * created using Amazon Cognito or your own OIDC Identity Provider (IdP). For * private workforces created using Amazon Cognito use * CognitoMemberDefinition. For workforces created using your own OIDC * identity provider (IdP) use OidcMemberDefinition. You should not * provide input for both of these parameters in a single request.

For * workforces created using Amazon Cognito, private work teams correspond to Amazon * Cognito user groups within the user pool used to create a workforce. All * of the CognitoMemberDefinition objects that make up the member * definition must have the same ClientId and UserPool * values. To add a Amazon Cognito user group to an existing worker pool, see Adding groups to a User Pool. For more information about user pools, * see Amazon * Cognito User Pools.

For workforces created using your own OIDC IdP, * specify the user groups that you want to include in your private work team in * OidcMemberDefinition by listing those groups in * Groups. Be aware that user groups that are already in the work team * must also be listed in Groups when you make this request to remain * on the work team. If you do not include these user groups, they will no longer * be associated with the work team you update.

*/ inline void SetMemberDefinitions(const Aws::Vector& value) { m_memberDefinitionsHasBeenSet = true; m_memberDefinitions = value; } /** *

A list of MemberDefinition objects that contains objects that * identify the workers that make up the work team.

Workforces can be * created using Amazon Cognito or your own OIDC Identity Provider (IdP). For * private workforces created using Amazon Cognito use * CognitoMemberDefinition. For workforces created using your own OIDC * identity provider (IdP) use OidcMemberDefinition. You should not * provide input for both of these parameters in a single request.

For * workforces created using Amazon Cognito, private work teams correspond to Amazon * Cognito user groups within the user pool used to create a workforce. All * of the CognitoMemberDefinition objects that make up the member * definition must have the same ClientId and UserPool * values. To add a Amazon Cognito user group to an existing worker pool, see Adding groups to a User Pool. For more information about user pools, * see Amazon * Cognito User Pools.

For workforces created using your own OIDC IdP, * specify the user groups that you want to include in your private work team in * OidcMemberDefinition by listing those groups in * Groups. Be aware that user groups that are already in the work team * must also be listed in Groups when you make this request to remain * on the work team. If you do not include these user groups, they will no longer * be associated with the work team you update.

*/ inline void SetMemberDefinitions(Aws::Vector&& value) { m_memberDefinitionsHasBeenSet = true; m_memberDefinitions = std::move(value); } /** *

A list of MemberDefinition objects that contains objects that * identify the workers that make up the work team.

Workforces can be * created using Amazon Cognito or your own OIDC Identity Provider (IdP). For * private workforces created using Amazon Cognito use * CognitoMemberDefinition. For workforces created using your own OIDC * identity provider (IdP) use OidcMemberDefinition. You should not * provide input for both of these parameters in a single request.

For * workforces created using Amazon Cognito, private work teams correspond to Amazon * Cognito user groups within the user pool used to create a workforce. All * of the CognitoMemberDefinition objects that make up the member * definition must have the same ClientId and UserPool * values. To add a Amazon Cognito user group to an existing worker pool, see Adding groups to a User Pool. For more information about user pools, * see Amazon * Cognito User Pools.

For workforces created using your own OIDC IdP, * specify the user groups that you want to include in your private work team in * OidcMemberDefinition by listing those groups in * Groups. Be aware that user groups that are already in the work team * must also be listed in Groups when you make this request to remain * on the work team. If you do not include these user groups, they will no longer * be associated with the work team you update.

*/ inline UpdateWorkteamRequest& WithMemberDefinitions(const Aws::Vector& value) { SetMemberDefinitions(value); return *this;} /** *

A list of MemberDefinition objects that contains objects that * identify the workers that make up the work team.

Workforces can be * created using Amazon Cognito or your own OIDC Identity Provider (IdP). For * private workforces created using Amazon Cognito use * CognitoMemberDefinition. For workforces created using your own OIDC * identity provider (IdP) use OidcMemberDefinition. You should not * provide input for both of these parameters in a single request.

For * workforces created using Amazon Cognito, private work teams correspond to Amazon * Cognito user groups within the user pool used to create a workforce. All * of the CognitoMemberDefinition objects that make up the member * definition must have the same ClientId and UserPool * values. To add a Amazon Cognito user group to an existing worker pool, see Adding groups to a User Pool. For more information about user pools, * see Amazon * Cognito User Pools.

For workforces created using your own OIDC IdP, * specify the user groups that you want to include in your private work team in * OidcMemberDefinition by listing those groups in * Groups. Be aware that user groups that are already in the work team * must also be listed in Groups when you make this request to remain * on the work team. If you do not include these user groups, they will no longer * be associated with the work team you update.

*/ inline UpdateWorkteamRequest& WithMemberDefinitions(Aws::Vector&& value) { SetMemberDefinitions(std::move(value)); return *this;} /** *

A list of MemberDefinition objects that contains objects that * identify the workers that make up the work team.

Workforces can be * created using Amazon Cognito or your own OIDC Identity Provider (IdP). For * private workforces created using Amazon Cognito use * CognitoMemberDefinition. For workforces created using your own OIDC * identity provider (IdP) use OidcMemberDefinition. You should not * provide input for both of these parameters in a single request.

For * workforces created using Amazon Cognito, private work teams correspond to Amazon * Cognito user groups within the user pool used to create a workforce. All * of the CognitoMemberDefinition objects that make up the member * definition must have the same ClientId and UserPool * values. To add a Amazon Cognito user group to an existing worker pool, see Adding groups to a User Pool. For more information about user pools, * see Amazon * Cognito User Pools.

For workforces created using your own OIDC IdP, * specify the user groups that you want to include in your private work team in * OidcMemberDefinition by listing those groups in * Groups. Be aware that user groups that are already in the work team * must also be listed in Groups when you make this request to remain * on the work team. If you do not include these user groups, they will no longer * be associated with the work team you update.

*/ inline UpdateWorkteamRequest& AddMemberDefinitions(const MemberDefinition& value) { m_memberDefinitionsHasBeenSet = true; m_memberDefinitions.push_back(value); return *this; } /** *

A list of MemberDefinition objects that contains objects that * identify the workers that make up the work team.

Workforces can be * created using Amazon Cognito or your own OIDC Identity Provider (IdP). For * private workforces created using Amazon Cognito use * CognitoMemberDefinition. For workforces created using your own OIDC * identity provider (IdP) use OidcMemberDefinition. You should not * provide input for both of these parameters in a single request.

For * workforces created using Amazon Cognito, private work teams correspond to Amazon * Cognito user groups within the user pool used to create a workforce. All * of the CognitoMemberDefinition objects that make up the member * definition must have the same ClientId and UserPool * values. To add a Amazon Cognito user group to an existing worker pool, see Adding groups to a User Pool. For more information about user pools, * see Amazon * Cognito User Pools.

For workforces created using your own OIDC IdP, * specify the user groups that you want to include in your private work team in * OidcMemberDefinition by listing those groups in * Groups. Be aware that user groups that are already in the work team * must also be listed in Groups when you make this request to remain * on the work team. If you do not include these user groups, they will no longer * be associated with the work team you update.

*/ inline UpdateWorkteamRequest& AddMemberDefinitions(MemberDefinition&& value) { m_memberDefinitionsHasBeenSet = true; m_memberDefinitions.push_back(std::move(value)); return *this; } /** *

An updated description for the work team.

*/ inline const Aws::String& GetDescription() const{ return m_description; } /** *

An updated description for the work team.

*/ inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; } /** *

An updated description for the work team.

*/ inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; } /** *

An updated description for the work team.

*/ inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); } /** *

An updated description for the work team.

*/ inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); } /** *

An updated description for the work team.

*/ inline UpdateWorkteamRequest& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} /** *

An updated description for the work team.

*/ inline UpdateWorkteamRequest& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} /** *

An updated description for the work team.

*/ inline UpdateWorkteamRequest& WithDescription(const char* value) { SetDescription(value); return *this;} /** *

Configures SNS topic notifications for available or expiring work items

*/ inline const NotificationConfiguration& GetNotificationConfiguration() const{ return m_notificationConfiguration; } /** *

Configures SNS topic notifications for available or expiring work items

*/ inline bool NotificationConfigurationHasBeenSet() const { return m_notificationConfigurationHasBeenSet; } /** *

Configures SNS topic notifications for available or expiring work items

*/ inline void SetNotificationConfiguration(const NotificationConfiguration& value) { m_notificationConfigurationHasBeenSet = true; m_notificationConfiguration = value; } /** *

Configures SNS topic notifications for available or expiring work items

*/ inline void SetNotificationConfiguration(NotificationConfiguration&& value) { m_notificationConfigurationHasBeenSet = true; m_notificationConfiguration = std::move(value); } /** *

Configures SNS topic notifications for available or expiring work items

*/ inline UpdateWorkteamRequest& WithNotificationConfiguration(const NotificationConfiguration& value) { SetNotificationConfiguration(value); return *this;} /** *

Configures SNS topic notifications for available or expiring work items

*/ inline UpdateWorkteamRequest& WithNotificationConfiguration(NotificationConfiguration&& value) { SetNotificationConfiguration(std::move(value)); return *this;} private: Aws::String m_workteamName; bool m_workteamNameHasBeenSet = false; Aws::Vector m_memberDefinitions; bool m_memberDefinitionsHasBeenSet = false; Aws::String m_description; bool m_descriptionHasBeenSet = false; NotificationConfiguration m_notificationConfiguration; bool m_notificationConfigurationHasBeenSet = false; }; } // namespace Model } // namespace SageMaker } // namespace Aws