/** * 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 ForecastService { namespace Model { /** */ class CreateExplainabilityExportRequest : public ForecastServiceRequest { public: AWS_FORECASTSERVICE_API CreateExplainabilityExportRequest(); // 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 "CreateExplainabilityExport"; } AWS_FORECASTSERVICE_API Aws::String SerializePayload() const override; AWS_FORECASTSERVICE_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

A unique name for the Explainability export.

*/ inline const Aws::String& GetExplainabilityExportName() const{ return m_explainabilityExportName; } /** *

A unique name for the Explainability export.

*/ inline bool ExplainabilityExportNameHasBeenSet() const { return m_explainabilityExportNameHasBeenSet; } /** *

A unique name for the Explainability export.

*/ inline void SetExplainabilityExportName(const Aws::String& value) { m_explainabilityExportNameHasBeenSet = true; m_explainabilityExportName = value; } /** *

A unique name for the Explainability export.

*/ inline void SetExplainabilityExportName(Aws::String&& value) { m_explainabilityExportNameHasBeenSet = true; m_explainabilityExportName = std::move(value); } /** *

A unique name for the Explainability export.

*/ inline void SetExplainabilityExportName(const char* value) { m_explainabilityExportNameHasBeenSet = true; m_explainabilityExportName.assign(value); } /** *

A unique name for the Explainability export.

*/ inline CreateExplainabilityExportRequest& WithExplainabilityExportName(const Aws::String& value) { SetExplainabilityExportName(value); return *this;} /** *

A unique name for the Explainability export.

*/ inline CreateExplainabilityExportRequest& WithExplainabilityExportName(Aws::String&& value) { SetExplainabilityExportName(std::move(value)); return *this;} /** *

A unique name for the Explainability export.

*/ inline CreateExplainabilityExportRequest& WithExplainabilityExportName(const char* value) { SetExplainabilityExportName(value); return *this;} /** *

The Amazon Resource Name (ARN) of the Explainability to export.

*/ inline const Aws::String& GetExplainabilityArn() const{ return m_explainabilityArn; } /** *

The Amazon Resource Name (ARN) of the Explainability to export.

*/ inline bool ExplainabilityArnHasBeenSet() const { return m_explainabilityArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the Explainability to export.

*/ inline void SetExplainabilityArn(const Aws::String& value) { m_explainabilityArnHasBeenSet = true; m_explainabilityArn = value; } /** *

The Amazon Resource Name (ARN) of the Explainability to export.

*/ inline void SetExplainabilityArn(Aws::String&& value) { m_explainabilityArnHasBeenSet = true; m_explainabilityArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the Explainability to export.

*/ inline void SetExplainabilityArn(const char* value) { m_explainabilityArnHasBeenSet = true; m_explainabilityArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the Explainability to export.

*/ inline CreateExplainabilityExportRequest& WithExplainabilityArn(const Aws::String& value) { SetExplainabilityArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the Explainability to export.

*/ inline CreateExplainabilityExportRequest& WithExplainabilityArn(Aws::String&& value) { SetExplainabilityArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the Explainability to export.

*/ inline CreateExplainabilityExportRequest& WithExplainabilityArn(const char* value) { SetExplainabilityArn(value); return *this;} inline const DataDestination& GetDestination() const{ return m_destination; } inline bool DestinationHasBeenSet() const { return m_destinationHasBeenSet; } inline void SetDestination(const DataDestination& value) { m_destinationHasBeenSet = true; m_destination = value; } inline void SetDestination(DataDestination&& value) { m_destinationHasBeenSet = true; m_destination = std::move(value); } inline CreateExplainabilityExportRequest& WithDestination(const DataDestination& value) { SetDestination(value); return *this;} inline CreateExplainabilityExportRequest& WithDestination(DataDestination&& value) { SetDestination(std::move(value)); return *this;} /** *

Optional metadata to help you categorize and organize your resources. Each * tag consists of a key and an optional value, both of which you define. Tag keys * and values are case sensitive.

The following restrictions apply to * tags:

  • For each resource, each tag key must be unique and each * tag key must have one value.

  • Maximum number of tags per * resource: 50.

  • Maximum key length: 128 Unicode characters in * UTF-8.

  • Maximum value length: 256 Unicode characters in * UTF-8.

  • Accepted characters: all letters and numbers, spaces * representable in UTF-8, and + - = . _ : / @. If your tagging schema is used * across other services and resources, the character restrictions of those * services also apply.

  • Key prefixes cannot include any upper or * lowercase combination of aws: or AWS:. Values can have * this prefix. If a tag value has aws as its prefix but the key does * not, Forecast considers it to be a user tag and will count against the limit of * 50 tags. Tags with only the key prefix of aws do not count against * your tags per resource limit. You cannot edit or delete tag keys with this * prefix.

*/ inline const Aws::Vector& GetTags() const{ return m_tags; } /** *

Optional metadata to help you categorize and organize your resources. Each * tag consists of a key and an optional value, both of which you define. Tag keys * and values are case sensitive.

The following restrictions apply to * tags:

  • For each resource, each tag key must be unique and each * tag key must have one value.

  • Maximum number of tags per * resource: 50.

  • Maximum key length: 128 Unicode characters in * UTF-8.

  • Maximum value length: 256 Unicode characters in * UTF-8.

  • Accepted characters: all letters and numbers, spaces * representable in UTF-8, and + - = . _ : / @. If your tagging schema is used * across other services and resources, the character restrictions of those * services also apply.

  • Key prefixes cannot include any upper or * lowercase combination of aws: or AWS:. Values can have * this prefix. If a tag value has aws as its prefix but the key does * not, Forecast considers it to be a user tag and will count against the limit of * 50 tags. Tags with only the key prefix of aws do not count against * your tags per resource limit. You cannot edit or delete tag keys with this * prefix.

*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *

Optional metadata to help you categorize and organize your resources. Each * tag consists of a key and an optional value, both of which you define. Tag keys * and values are case sensitive.

The following restrictions apply to * tags:

  • For each resource, each tag key must be unique and each * tag key must have one value.

  • Maximum number of tags per * resource: 50.

  • Maximum key length: 128 Unicode characters in * UTF-8.

  • Maximum value length: 256 Unicode characters in * UTF-8.

  • Accepted characters: all letters and numbers, spaces * representable in UTF-8, and + - = . _ : / @. If your tagging schema is used * across other services and resources, the character restrictions of those * services also apply.

  • Key prefixes cannot include any upper or * lowercase combination of aws: or AWS:. Values can have * this prefix. If a tag value has aws as its prefix but the key does * not, Forecast considers it to be a user tag and will count against the limit of * 50 tags. Tags with only the key prefix of aws do not count against * your tags per resource limit. You cannot edit or delete tag keys with this * prefix.

*/ inline void SetTags(const Aws::Vector& value) { m_tagsHasBeenSet = true; m_tags = value; } /** *

Optional metadata to help you categorize and organize your resources. Each * tag consists of a key and an optional value, both of which you define. Tag keys * and values are case sensitive.

The following restrictions apply to * tags:

  • For each resource, each tag key must be unique and each * tag key must have one value.

  • Maximum number of tags per * resource: 50.

  • Maximum key length: 128 Unicode characters in * UTF-8.

  • Maximum value length: 256 Unicode characters in * UTF-8.

  • Accepted characters: all letters and numbers, spaces * representable in UTF-8, and + - = . _ : / @. If your tagging schema is used * across other services and resources, the character restrictions of those * services also apply.

  • Key prefixes cannot include any upper or * lowercase combination of aws: or AWS:. Values can have * this prefix. If a tag value has aws as its prefix but the key does * not, Forecast considers it to be a user tag and will count against the limit of * 50 tags. Tags with only the key prefix of aws do not count against * your tags per resource limit. You cannot edit or delete tag keys with this * prefix.

*/ inline void SetTags(Aws::Vector&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } /** *

Optional metadata to help you categorize and organize your resources. Each * tag consists of a key and an optional value, both of which you define. Tag keys * and values are case sensitive.

The following restrictions apply to * tags:

  • For each resource, each tag key must be unique and each * tag key must have one value.

  • Maximum number of tags per * resource: 50.

  • Maximum key length: 128 Unicode characters in * UTF-8.

  • Maximum value length: 256 Unicode characters in * UTF-8.

  • Accepted characters: all letters and numbers, spaces * representable in UTF-8, and + - = . _ : / @. If your tagging schema is used * across other services and resources, the character restrictions of those * services also apply.

  • Key prefixes cannot include any upper or * lowercase combination of aws: or AWS:. Values can have * this prefix. If a tag value has aws as its prefix but the key does * not, Forecast considers it to be a user tag and will count against the limit of * 50 tags. Tags with only the key prefix of aws do not count against * your tags per resource limit. You cannot edit or delete tag keys with this * prefix.

*/ inline CreateExplainabilityExportRequest& WithTags(const Aws::Vector& value) { SetTags(value); return *this;} /** *

Optional metadata to help you categorize and organize your resources. Each * tag consists of a key and an optional value, both of which you define. Tag keys * and values are case sensitive.

The following restrictions apply to * tags:

  • For each resource, each tag key must be unique and each * tag key must have one value.

  • Maximum number of tags per * resource: 50.

  • Maximum key length: 128 Unicode characters in * UTF-8.

  • Maximum value length: 256 Unicode characters in * UTF-8.

  • Accepted characters: all letters and numbers, spaces * representable in UTF-8, and + - = . _ : / @. If your tagging schema is used * across other services and resources, the character restrictions of those * services also apply.

  • Key prefixes cannot include any upper or * lowercase combination of aws: or AWS:. Values can have * this prefix. If a tag value has aws as its prefix but the key does * not, Forecast considers it to be a user tag and will count against the limit of * 50 tags. Tags with only the key prefix of aws do not count against * your tags per resource limit. You cannot edit or delete tag keys with this * prefix.

*/ inline CreateExplainabilityExportRequest& WithTags(Aws::Vector&& value) { SetTags(std::move(value)); return *this;} /** *

Optional metadata to help you categorize and organize your resources. Each * tag consists of a key and an optional value, both of which you define. Tag keys * and values are case sensitive.

The following restrictions apply to * tags:

  • For each resource, each tag key must be unique and each * tag key must have one value.

  • Maximum number of tags per * resource: 50.

  • Maximum key length: 128 Unicode characters in * UTF-8.

  • Maximum value length: 256 Unicode characters in * UTF-8.

  • Accepted characters: all letters and numbers, spaces * representable in UTF-8, and + - = . _ : / @. If your tagging schema is used * across other services and resources, the character restrictions of those * services also apply.

  • Key prefixes cannot include any upper or * lowercase combination of aws: or AWS:. Values can have * this prefix. If a tag value has aws as its prefix but the key does * not, Forecast considers it to be a user tag and will count against the limit of * 50 tags. Tags with only the key prefix of aws do not count against * your tags per resource limit. You cannot edit or delete tag keys with this * prefix.

*/ inline CreateExplainabilityExportRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } /** *

Optional metadata to help you categorize and organize your resources. Each * tag consists of a key and an optional value, both of which you define. Tag keys * and values are case sensitive.

The following restrictions apply to * tags:

  • For each resource, each tag key must be unique and each * tag key must have one value.

  • Maximum number of tags per * resource: 50.

  • Maximum key length: 128 Unicode characters in * UTF-8.

  • Maximum value length: 256 Unicode characters in * UTF-8.

  • Accepted characters: all letters and numbers, spaces * representable in UTF-8, and + - = . _ : / @. If your tagging schema is used * across other services and resources, the character restrictions of those * services also apply.

  • Key prefixes cannot include any upper or * lowercase combination of aws: or AWS:. Values can have * this prefix. If a tag value has aws as its prefix but the key does * not, Forecast considers it to be a user tag and will count against the limit of * 50 tags. Tags with only the key prefix of aws do not count against * your tags per resource limit. You cannot edit or delete tag keys with this * prefix.

*/ inline CreateExplainabilityExportRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } /** *

The format of the exported data, CSV or PARQUET.

*/ inline const Aws::String& GetFormat() const{ return m_format; } /** *

The format of the exported data, CSV or PARQUET.

*/ inline bool FormatHasBeenSet() const { return m_formatHasBeenSet; } /** *

The format of the exported data, CSV or PARQUET.

*/ inline void SetFormat(const Aws::String& value) { m_formatHasBeenSet = true; m_format = value; } /** *

The format of the exported data, CSV or PARQUET.

*/ inline void SetFormat(Aws::String&& value) { m_formatHasBeenSet = true; m_format = std::move(value); } /** *

The format of the exported data, CSV or PARQUET.

*/ inline void SetFormat(const char* value) { m_formatHasBeenSet = true; m_format.assign(value); } /** *

The format of the exported data, CSV or PARQUET.

*/ inline CreateExplainabilityExportRequest& WithFormat(const Aws::String& value) { SetFormat(value); return *this;} /** *

The format of the exported data, CSV or PARQUET.

*/ inline CreateExplainabilityExportRequest& WithFormat(Aws::String&& value) { SetFormat(std::move(value)); return *this;} /** *

The format of the exported data, CSV or PARQUET.

*/ inline CreateExplainabilityExportRequest& WithFormat(const char* value) { SetFormat(value); return *this;} private: Aws::String m_explainabilityExportName; bool m_explainabilityExportNameHasBeenSet = false; Aws::String m_explainabilityArn; bool m_explainabilityArnHasBeenSet = false; DataDestination m_destination; bool m_destinationHasBeenSet = false; Aws::Vector m_tags; bool m_tagsHasBeenSet = false; Aws::String m_format; bool m_formatHasBeenSet = false; }; } // namespace Model } // namespace ForecastService } // namespace Aws