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

A name for the dataset.

*/ inline const Aws::String& GetDatasetName() const{ return m_datasetName; } /** *

A name for the dataset.

*/ inline bool DatasetNameHasBeenSet() const { return m_datasetNameHasBeenSet; } /** *

A name for the dataset.

*/ inline void SetDatasetName(const Aws::String& value) { m_datasetNameHasBeenSet = true; m_datasetName = value; } /** *

A name for the dataset.

*/ inline void SetDatasetName(Aws::String&& value) { m_datasetNameHasBeenSet = true; m_datasetName = std::move(value); } /** *

A name for the dataset.

*/ inline void SetDatasetName(const char* value) { m_datasetNameHasBeenSet = true; m_datasetName.assign(value); } /** *

A name for the dataset.

*/ inline CreateDatasetRequest& WithDatasetName(const Aws::String& value) { SetDatasetName(value); return *this;} /** *

A name for the dataset.

*/ inline CreateDatasetRequest& WithDatasetName(Aws::String&& value) { SetDatasetName(std::move(value)); return *this;} /** *

A name for the dataset.

*/ inline CreateDatasetRequest& WithDatasetName(const char* value) { SetDatasetName(value); return *this;} /** *

The domain associated with the dataset. When you add a dataset to a dataset * group, this value and the value specified for the Domain parameter * of the CreateDatasetGroup * operation must match.

The Domain and * DatasetType that you choose determine the fields that must be * present in the training data that you import to the dataset. For example, if you * choose the RETAIL domain and TARGET_TIME_SERIES as the * DatasetType, Amazon Forecast requires item_id, * timestamp, and demand fields to be present in your * data. For more information, see Importing * datasets.

*/ inline const Domain& GetDomain() const{ return m_domain; } /** *

The domain associated with the dataset. When you add a dataset to a dataset * group, this value and the value specified for the Domain parameter * of the CreateDatasetGroup * operation must match.

The Domain and * DatasetType that you choose determine the fields that must be * present in the training data that you import to the dataset. For example, if you * choose the RETAIL domain and TARGET_TIME_SERIES as the * DatasetType, Amazon Forecast requires item_id, * timestamp, and demand fields to be present in your * data. For more information, see Importing * datasets.

*/ inline bool DomainHasBeenSet() const { return m_domainHasBeenSet; } /** *

The domain associated with the dataset. When you add a dataset to a dataset * group, this value and the value specified for the Domain parameter * of the CreateDatasetGroup * operation must match.

The Domain and * DatasetType that you choose determine the fields that must be * present in the training data that you import to the dataset. For example, if you * choose the RETAIL domain and TARGET_TIME_SERIES as the * DatasetType, Amazon Forecast requires item_id, * timestamp, and demand fields to be present in your * data. For more information, see Importing * datasets.

*/ inline void SetDomain(const Domain& value) { m_domainHasBeenSet = true; m_domain = value; } /** *

The domain associated with the dataset. When you add a dataset to a dataset * group, this value and the value specified for the Domain parameter * of the CreateDatasetGroup * operation must match.

The Domain and * DatasetType that you choose determine the fields that must be * present in the training data that you import to the dataset. For example, if you * choose the RETAIL domain and TARGET_TIME_SERIES as the * DatasetType, Amazon Forecast requires item_id, * timestamp, and demand fields to be present in your * data. For more information, see Importing * datasets.

*/ inline void SetDomain(Domain&& value) { m_domainHasBeenSet = true; m_domain = std::move(value); } /** *

The domain associated with the dataset. When you add a dataset to a dataset * group, this value and the value specified for the Domain parameter * of the CreateDatasetGroup * operation must match.

The Domain and * DatasetType that you choose determine the fields that must be * present in the training data that you import to the dataset. For example, if you * choose the RETAIL domain and TARGET_TIME_SERIES as the * DatasetType, Amazon Forecast requires item_id, * timestamp, and demand fields to be present in your * data. For more information, see Importing * datasets.

*/ inline CreateDatasetRequest& WithDomain(const Domain& value) { SetDomain(value); return *this;} /** *

The domain associated with the dataset. When you add a dataset to a dataset * group, this value and the value specified for the Domain parameter * of the CreateDatasetGroup * operation must match.

The Domain and * DatasetType that you choose determine the fields that must be * present in the training data that you import to the dataset. For example, if you * choose the RETAIL domain and TARGET_TIME_SERIES as the * DatasetType, Amazon Forecast requires item_id, * timestamp, and demand fields to be present in your * data. For more information, see Importing * datasets.

*/ inline CreateDatasetRequest& WithDomain(Domain&& value) { SetDomain(std::move(value)); return *this;} /** *

The dataset type. Valid values depend on the chosen Domain.

*/ inline const DatasetType& GetDatasetType() const{ return m_datasetType; } /** *

The dataset type. Valid values depend on the chosen Domain.

*/ inline bool DatasetTypeHasBeenSet() const { return m_datasetTypeHasBeenSet; } /** *

The dataset type. Valid values depend on the chosen Domain.

*/ inline void SetDatasetType(const DatasetType& value) { m_datasetTypeHasBeenSet = true; m_datasetType = value; } /** *

The dataset type. Valid values depend on the chosen Domain.

*/ inline void SetDatasetType(DatasetType&& value) { m_datasetTypeHasBeenSet = true; m_datasetType = std::move(value); } /** *

The dataset type. Valid values depend on the chosen Domain.

*/ inline CreateDatasetRequest& WithDatasetType(const DatasetType& value) { SetDatasetType(value); return *this;} /** *

The dataset type. Valid values depend on the chosen Domain.

*/ inline CreateDatasetRequest& WithDatasetType(DatasetType&& value) { SetDatasetType(std::move(value)); return *this;} /** *

The frequency of data collection. This parameter is required for * RELATED_TIME_SERIES datasets.

Valid intervals are an integer followed by * Y (Year), M (Month), W (Week), D (Day), H (Hour), and min (Minute). For example, * "1D" indicates every day and "15min" indicates every 15 minutes. You cannot * specify a value that would overlap with the next larger frequency. That means, * for example, you cannot specify a frequency of 60 minutes, because that is * equivalent to 1 hour. The valid values for each frequency are the following:

*
  • Minute - 1-59

  • Hour - 1-23

  • Day - * 1-6

  • Week - 1-4

  • Month - 1-11

  • *

    Year - 1

Thus, if you want every other week forecasts, * specify "2W". Or, if you want quarterly forecasts, you specify "3M".

*/ inline const Aws::String& GetDataFrequency() const{ return m_dataFrequency; } /** *

The frequency of data collection. This parameter is required for * RELATED_TIME_SERIES datasets.

Valid intervals are an integer followed by * Y (Year), M (Month), W (Week), D (Day), H (Hour), and min (Minute). For example, * "1D" indicates every day and "15min" indicates every 15 minutes. You cannot * specify a value that would overlap with the next larger frequency. That means, * for example, you cannot specify a frequency of 60 minutes, because that is * equivalent to 1 hour. The valid values for each frequency are the following:

*
  • Minute - 1-59

  • Hour - 1-23

  • Day - * 1-6

  • Week - 1-4

  • Month - 1-11

  • *

    Year - 1

Thus, if you want every other week forecasts, * specify "2W". Or, if you want quarterly forecasts, you specify "3M".

*/ inline bool DataFrequencyHasBeenSet() const { return m_dataFrequencyHasBeenSet; } /** *

The frequency of data collection. This parameter is required for * RELATED_TIME_SERIES datasets.

Valid intervals are an integer followed by * Y (Year), M (Month), W (Week), D (Day), H (Hour), and min (Minute). For example, * "1D" indicates every day and "15min" indicates every 15 minutes. You cannot * specify a value that would overlap with the next larger frequency. That means, * for example, you cannot specify a frequency of 60 minutes, because that is * equivalent to 1 hour. The valid values for each frequency are the following:

*
  • Minute - 1-59

  • Hour - 1-23

  • Day - * 1-6

  • Week - 1-4

  • Month - 1-11

  • *

    Year - 1

Thus, if you want every other week forecasts, * specify "2W". Or, if you want quarterly forecasts, you specify "3M".

*/ inline void SetDataFrequency(const Aws::String& value) { m_dataFrequencyHasBeenSet = true; m_dataFrequency = value; } /** *

The frequency of data collection. This parameter is required for * RELATED_TIME_SERIES datasets.

Valid intervals are an integer followed by * Y (Year), M (Month), W (Week), D (Day), H (Hour), and min (Minute). For example, * "1D" indicates every day and "15min" indicates every 15 minutes. You cannot * specify a value that would overlap with the next larger frequency. That means, * for example, you cannot specify a frequency of 60 minutes, because that is * equivalent to 1 hour. The valid values for each frequency are the following:

*
  • Minute - 1-59

  • Hour - 1-23

  • Day - * 1-6

  • Week - 1-4

  • Month - 1-11

  • *

    Year - 1

Thus, if you want every other week forecasts, * specify "2W". Or, if you want quarterly forecasts, you specify "3M".

*/ inline void SetDataFrequency(Aws::String&& value) { m_dataFrequencyHasBeenSet = true; m_dataFrequency = std::move(value); } /** *

The frequency of data collection. This parameter is required for * RELATED_TIME_SERIES datasets.

Valid intervals are an integer followed by * Y (Year), M (Month), W (Week), D (Day), H (Hour), and min (Minute). For example, * "1D" indicates every day and "15min" indicates every 15 minutes. You cannot * specify a value that would overlap with the next larger frequency. That means, * for example, you cannot specify a frequency of 60 minutes, because that is * equivalent to 1 hour. The valid values for each frequency are the following:

*
  • Minute - 1-59

  • Hour - 1-23

  • Day - * 1-6

  • Week - 1-4

  • Month - 1-11

  • *

    Year - 1

Thus, if you want every other week forecasts, * specify "2W". Or, if you want quarterly forecasts, you specify "3M".

*/ inline void SetDataFrequency(const char* value) { m_dataFrequencyHasBeenSet = true; m_dataFrequency.assign(value); } /** *

The frequency of data collection. This parameter is required for * RELATED_TIME_SERIES datasets.

Valid intervals are an integer followed by * Y (Year), M (Month), W (Week), D (Day), H (Hour), and min (Minute). For example, * "1D" indicates every day and "15min" indicates every 15 minutes. You cannot * specify a value that would overlap with the next larger frequency. That means, * for example, you cannot specify a frequency of 60 minutes, because that is * equivalent to 1 hour. The valid values for each frequency are the following:

*
  • Minute - 1-59

  • Hour - 1-23

  • Day - * 1-6

  • Week - 1-4

  • Month - 1-11

  • *

    Year - 1

Thus, if you want every other week forecasts, * specify "2W". Or, if you want quarterly forecasts, you specify "3M".

*/ inline CreateDatasetRequest& WithDataFrequency(const Aws::String& value) { SetDataFrequency(value); return *this;} /** *

The frequency of data collection. This parameter is required for * RELATED_TIME_SERIES datasets.

Valid intervals are an integer followed by * Y (Year), M (Month), W (Week), D (Day), H (Hour), and min (Minute). For example, * "1D" indicates every day and "15min" indicates every 15 minutes. You cannot * specify a value that would overlap with the next larger frequency. That means, * for example, you cannot specify a frequency of 60 minutes, because that is * equivalent to 1 hour. The valid values for each frequency are the following:

*
  • Minute - 1-59

  • Hour - 1-23

  • Day - * 1-6

  • Week - 1-4

  • Month - 1-11

  • *

    Year - 1

Thus, if you want every other week forecasts, * specify "2W". Or, if you want quarterly forecasts, you specify "3M".

*/ inline CreateDatasetRequest& WithDataFrequency(Aws::String&& value) { SetDataFrequency(std::move(value)); return *this;} /** *

The frequency of data collection. This parameter is required for * RELATED_TIME_SERIES datasets.

Valid intervals are an integer followed by * Y (Year), M (Month), W (Week), D (Day), H (Hour), and min (Minute). For example, * "1D" indicates every day and "15min" indicates every 15 minutes. You cannot * specify a value that would overlap with the next larger frequency. That means, * for example, you cannot specify a frequency of 60 minutes, because that is * equivalent to 1 hour. The valid values for each frequency are the following:

*
  • Minute - 1-59

  • Hour - 1-23

  • Day - * 1-6

  • Week - 1-4

  • Month - 1-11

  • *

    Year - 1

Thus, if you want every other week forecasts, * specify "2W". Or, if you want quarterly forecasts, you specify "3M".

*/ inline CreateDatasetRequest& WithDataFrequency(const char* value) { SetDataFrequency(value); return *this;} /** *

The schema for the dataset. The schema attributes and their order must match * the fields in your data. The dataset Domain and * DatasetType that you choose determine the minimum required fields * in your training data. For information about the required fields for a specific * dataset domain and type, see Dataset * Domains and Dataset Types.

*/ inline const Schema& GetSchema() const{ return m_schema; } /** *

The schema for the dataset. The schema attributes and their order must match * the fields in your data. The dataset Domain and * DatasetType that you choose determine the minimum required fields * in your training data. For information about the required fields for a specific * dataset domain and type, see Dataset * Domains and Dataset Types.

*/ inline bool SchemaHasBeenSet() const { return m_schemaHasBeenSet; } /** *

The schema for the dataset. The schema attributes and their order must match * the fields in your data. The dataset Domain and * DatasetType that you choose determine the minimum required fields * in your training data. For information about the required fields for a specific * dataset domain and type, see Dataset * Domains and Dataset Types.

*/ inline void SetSchema(const Schema& value) { m_schemaHasBeenSet = true; m_schema = value; } /** *

The schema for the dataset. The schema attributes and their order must match * the fields in your data. The dataset Domain and * DatasetType that you choose determine the minimum required fields * in your training data. For information about the required fields for a specific * dataset domain and type, see Dataset * Domains and Dataset Types.

*/ inline void SetSchema(Schema&& value) { m_schemaHasBeenSet = true; m_schema = std::move(value); } /** *

The schema for the dataset. The schema attributes and their order must match * the fields in your data. The dataset Domain and * DatasetType that you choose determine the minimum required fields * in your training data. For information about the required fields for a specific * dataset domain and type, see Dataset * Domains and Dataset Types.

*/ inline CreateDatasetRequest& WithSchema(const Schema& value) { SetSchema(value); return *this;} /** *

The schema for the dataset. The schema attributes and their order must match * the fields in your data. The dataset Domain and * DatasetType that you choose determine the minimum required fields * in your training data. For information about the required fields for a specific * dataset domain and type, see Dataset * Domains and Dataset Types.

*/ inline CreateDatasetRequest& WithSchema(Schema&& value) { SetSchema(std::move(value)); return *this;} /** *

An Key Management Service (KMS) key and the Identity and Access Management * (IAM) role that Amazon Forecast can assume to access the key.

*/ inline const EncryptionConfig& GetEncryptionConfig() const{ return m_encryptionConfig; } /** *

An Key Management Service (KMS) key and the Identity and Access Management * (IAM) role that Amazon Forecast can assume to access the key.

*/ inline bool EncryptionConfigHasBeenSet() const { return m_encryptionConfigHasBeenSet; } /** *

An Key Management Service (KMS) key and the Identity and Access Management * (IAM) role that Amazon Forecast can assume to access the key.

*/ inline void SetEncryptionConfig(const EncryptionConfig& value) { m_encryptionConfigHasBeenSet = true; m_encryptionConfig = value; } /** *

An Key Management Service (KMS) key and the Identity and Access Management * (IAM) role that Amazon Forecast can assume to access the key.

*/ inline void SetEncryptionConfig(EncryptionConfig&& value) { m_encryptionConfigHasBeenSet = true; m_encryptionConfig = std::move(value); } /** *

An Key Management Service (KMS) key and the Identity and Access Management * (IAM) role that Amazon Forecast can assume to access the key.

*/ inline CreateDatasetRequest& WithEncryptionConfig(const EncryptionConfig& value) { SetEncryptionConfig(value); return *this;} /** *

An Key Management Service (KMS) key and the Identity and Access Management * (IAM) role that Amazon Forecast can assume to access the key.

*/ inline CreateDatasetRequest& WithEncryptionConfig(EncryptionConfig&& value) { SetEncryptionConfig(std::move(value)); return *this;} /** *

The optional metadata that you apply to the dataset to help you categorize * and organize them. Each tag consists of a key and an optional value, both of * which you define.

The following basic restrictions apply to tags:

*
  • Maximum number of tags per resource - 50.

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

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

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

  • If your tagging schema is used across multiple services * and resources, remember that other services may have restrictions on allowed * characters. Generally allowed characters are: letters, numbers, and spaces * representable in UTF-8, and the following characters: + - = . _ : / @.

  • *
  • Tag keys and values are case sensitive.

  • Do not use * aws:, AWS:, or any upper or lowercase combination of * such as a prefix for keys as it is reserved for Amazon Web Services use. You * cannot edit or delete tag keys with this prefix. Values can have this prefix. If * a tag value has aws as its prefix but the key does not, then * 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.

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

The optional metadata that you apply to the dataset to help you categorize * and organize them. Each tag consists of a key and an optional value, both of * which you define.

The following basic restrictions apply to tags:

*
  • Maximum number of tags per resource - 50.

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

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

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

  • If your tagging schema is used across multiple services * and resources, remember that other services may have restrictions on allowed * characters. Generally allowed characters are: letters, numbers, and spaces * representable in UTF-8, and the following characters: + - = . _ : / @.

  • *
  • Tag keys and values are case sensitive.

  • Do not use * aws:, AWS:, or any upper or lowercase combination of * such as a prefix for keys as it is reserved for Amazon Web Services use. You * cannot edit or delete tag keys with this prefix. Values can have this prefix. If * a tag value has aws as its prefix but the key does not, then * 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.

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

The optional metadata that you apply to the dataset to help you categorize * and organize them. Each tag consists of a key and an optional value, both of * which you define.

The following basic restrictions apply to tags:

*
  • Maximum number of tags per resource - 50.

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

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

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

  • If your tagging schema is used across multiple services * and resources, remember that other services may have restrictions on allowed * characters. Generally allowed characters are: letters, numbers, and spaces * representable in UTF-8, and the following characters: + - = . _ : / @.

  • *
  • Tag keys and values are case sensitive.

  • Do not use * aws:, AWS:, or any upper or lowercase combination of * such as a prefix for keys as it is reserved for Amazon Web Services use. You * cannot edit or delete tag keys with this prefix. Values can have this prefix. If * a tag value has aws as its prefix but the key does not, then * 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.

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

The optional metadata that you apply to the dataset to help you categorize * and organize them. Each tag consists of a key and an optional value, both of * which you define.

The following basic restrictions apply to tags:

*
  • Maximum number of tags per resource - 50.

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

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

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

  • If your tagging schema is used across multiple services * and resources, remember that other services may have restrictions on allowed * characters. Generally allowed characters are: letters, numbers, and spaces * representable in UTF-8, and the following characters: + - = . _ : / @.

  • *
  • Tag keys and values are case sensitive.

  • Do not use * aws:, AWS:, or any upper or lowercase combination of * such as a prefix for keys as it is reserved for Amazon Web Services use. You * cannot edit or delete tag keys with this prefix. Values can have this prefix. If * a tag value has aws as its prefix but the key does not, then * 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.

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

The optional metadata that you apply to the dataset to help you categorize * and organize them. Each tag consists of a key and an optional value, both of * which you define.

The following basic restrictions apply to tags:

*
  • Maximum number of tags per resource - 50.

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

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

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

  • If your tagging schema is used across multiple services * and resources, remember that other services may have restrictions on allowed * characters. Generally allowed characters are: letters, numbers, and spaces * representable in UTF-8, and the following characters: + - = . _ : / @.

  • *
  • Tag keys and values are case sensitive.

  • Do not use * aws:, AWS:, or any upper or lowercase combination of * such as a prefix for keys as it is reserved for Amazon Web Services use. You * cannot edit or delete tag keys with this prefix. Values can have this prefix. If * a tag value has aws as its prefix but the key does not, then * 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.

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

The optional metadata that you apply to the dataset to help you categorize * and organize them. Each tag consists of a key and an optional value, both of * which you define.

The following basic restrictions apply to tags:

*
  • Maximum number of tags per resource - 50.

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

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

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

  • If your tagging schema is used across multiple services * and resources, remember that other services may have restrictions on allowed * characters. Generally allowed characters are: letters, numbers, and spaces * representable in UTF-8, and the following characters: + - = . _ : / @.

  • *
  • Tag keys and values are case sensitive.

  • Do not use * aws:, AWS:, or any upper or lowercase combination of * such as a prefix for keys as it is reserved for Amazon Web Services use. You * cannot edit or delete tag keys with this prefix. Values can have this prefix. If * a tag value has aws as its prefix but the key does not, then * 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.

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

The optional metadata that you apply to the dataset to help you categorize * and organize them. Each tag consists of a key and an optional value, both of * which you define.

The following basic restrictions apply to tags:

*
  • Maximum number of tags per resource - 50.

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

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

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

  • If your tagging schema is used across multiple services * and resources, remember that other services may have restrictions on allowed * characters. Generally allowed characters are: letters, numbers, and spaces * representable in UTF-8, and the following characters: + - = . _ : / @.

  • *
  • Tag keys and values are case sensitive.

  • Do not use * aws:, AWS:, or any upper or lowercase combination of * such as a prefix for keys as it is reserved for Amazon Web Services use. You * cannot edit or delete tag keys with this prefix. Values can have this prefix. If * a tag value has aws as its prefix but the key does not, then * 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.

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

The optional metadata that you apply to the dataset to help you categorize * and organize them. Each tag consists of a key and an optional value, both of * which you define.

The following basic restrictions apply to tags:

*
  • Maximum number of tags per resource - 50.

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

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

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

  • If your tagging schema is used across multiple services * and resources, remember that other services may have restrictions on allowed * characters. Generally allowed characters are: letters, numbers, and spaces * representable in UTF-8, and the following characters: + - = . _ : / @.

  • *
  • Tag keys and values are case sensitive.

  • Do not use * aws:, AWS:, or any upper or lowercase combination of * such as a prefix for keys as it is reserved for Amazon Web Services use. You * cannot edit or delete tag keys with this prefix. Values can have this prefix. If * a tag value has aws as its prefix but the key does not, then * 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.

*/ inline CreateDatasetRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } private: Aws::String m_datasetName; bool m_datasetNameHasBeenSet = false; Domain m_domain; bool m_domainHasBeenSet = false; DatasetType m_datasetType; bool m_datasetTypeHasBeenSet = false; Aws::String m_dataFrequency; bool m_dataFrequencyHasBeenSet = false; Schema m_schema; bool m_schemaHasBeenSet = false; EncryptionConfig m_encryptionConfig; bool m_encryptionConfigHasBeenSet = false; Aws::Vector m_tags; bool m_tagsHasBeenSet = false; }; } // namespace Model } // namespace ForecastService } // namespace Aws