aws-sdk-forecastservice 1.36.0 → 1.37.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -10,6 +10,56 @@
10
10
  module Aws::ForecastService
11
11
  module Types
12
12
 
13
+ # Defines the modifications that you are making to an attribute for a
14
+ # what-if forecast. For example, you can use this operation to create a
15
+ # what-if forecast that investigates a 10% off sale on all shoes. To do
16
+ # this, you specify `"AttributeName": "shoes"`, `"Operation":
17
+ # "MULTIPLY"`, and `"Value": "0.90"`. Pair this operation with the
18
+ # TimeSeriesCondition operation within the
19
+ # CreateWhatIfForecastRequest$TimeSeriesTransformations operation to
20
+ # define a subset of attribute items that are modified.
21
+ #
22
+ # @note When making an API call, you may pass Action
23
+ # data as a hash:
24
+ #
25
+ # {
26
+ # attribute_name: "Name", # required
27
+ # operation: "ADD", # required, accepts ADD, SUBTRACT, MULTIPLY, DIVIDE
28
+ # value: 1.0, # required
29
+ # }
30
+ #
31
+ # @!attribute [rw] attribute_name
32
+ # The related time series that you are modifying. This value is case
33
+ # insensitive.
34
+ # @return [String]
35
+ #
36
+ # @!attribute [rw] operation
37
+ # The operation that is applied to the provided attribute. Operations
38
+ # include:
39
+ #
40
+ # * `ADD` - adds `Value` to all rows of `AttributeName`.
41
+ #
42
+ # * `SUBTRACT` - subtracts `Value` from all rows of `AttributeName`.
43
+ #
44
+ # * `MULTIPLY` - multiplies all rows of `AttributeName` by `Value`.
45
+ #
46
+ # * `DIVIDE` - divides all rows of `AttributeName` by `Value`.
47
+ # @return [String]
48
+ #
49
+ # @!attribute [rw] value
50
+ # The value that is applied for the chosen `Operation`.
51
+ # @return [Float]
52
+ #
53
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/Action AWS API Documentation
54
+ #
55
+ class Action < Struct.new(
56
+ :attribute_name,
57
+ :operation,
58
+ :value)
59
+ SENSITIVE = []
60
+ include Aws::Structure
61
+ end
62
+
13
63
  # Describes an additional dataset. This object is part of the DataConfig
14
64
  # object. Forecast supports the Weather Index and Holidays additional
15
65
  # datasets.
@@ -1961,6 +2011,284 @@ module Aws::ForecastService
1961
2011
  include Aws::Structure
1962
2012
  end
1963
2013
 
2014
+ # @note When making an API call, you may pass CreateWhatIfAnalysisRequest
2015
+ # data as a hash:
2016
+ #
2017
+ # {
2018
+ # what_if_analysis_name: "Name", # required
2019
+ # forecast_arn: "Arn", # required
2020
+ # time_series_selector: {
2021
+ # time_series_identifiers: {
2022
+ # data_source: {
2023
+ # s3_config: { # required
2024
+ # path: "S3Path", # required
2025
+ # role_arn: "Arn", # required
2026
+ # kms_key_arn: "KMSKeyArn",
2027
+ # },
2028
+ # },
2029
+ # schema: {
2030
+ # attributes: [
2031
+ # {
2032
+ # attribute_name: "Name",
2033
+ # attribute_type: "string", # accepts string, integer, float, timestamp, geolocation
2034
+ # },
2035
+ # ],
2036
+ # },
2037
+ # format: "Format",
2038
+ # },
2039
+ # },
2040
+ # tags: [
2041
+ # {
2042
+ # key: "TagKey", # required
2043
+ # value: "TagValue", # required
2044
+ # },
2045
+ # ],
2046
+ # }
2047
+ #
2048
+ # @!attribute [rw] what_if_analysis_name
2049
+ # The name of the what-if analysis. Each name must be unique.
2050
+ # @return [String]
2051
+ #
2052
+ # @!attribute [rw] forecast_arn
2053
+ # The Amazon Resource Name (ARN) of the baseline forecast.
2054
+ # @return [String]
2055
+ #
2056
+ # @!attribute [rw] time_series_selector
2057
+ # Defines the set of time series that are used in the what-if analysis
2058
+ # with a `TimeSeriesIdentifiers` object. What-if analyses are
2059
+ # performed only for the time series in this object.
2060
+ #
2061
+ # The `TimeSeriesIdentifiers` object needs the following information:
2062
+ #
2063
+ # * `DataSource`
2064
+ #
2065
+ # * `Format`
2066
+ #
2067
+ # * `Schema`
2068
+ # @return [Types::TimeSeriesSelector]
2069
+ #
2070
+ # @!attribute [rw] tags
2071
+ # A list of [tags][1] to apply to the what if forecast.
2072
+ #
2073
+ #
2074
+ #
2075
+ # [1]: https://docs.aws.amazon.com/forecast/latest/dg/tagging-forecast-resources.html
2076
+ # @return [Array<Types::Tag>]
2077
+ #
2078
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/CreateWhatIfAnalysisRequest AWS API Documentation
2079
+ #
2080
+ class CreateWhatIfAnalysisRequest < Struct.new(
2081
+ :what_if_analysis_name,
2082
+ :forecast_arn,
2083
+ :time_series_selector,
2084
+ :tags)
2085
+ SENSITIVE = []
2086
+ include Aws::Structure
2087
+ end
2088
+
2089
+ # @!attribute [rw] what_if_analysis_arn
2090
+ # The Amazon Resource Name (ARN) of the what-if analysis.
2091
+ # @return [String]
2092
+ #
2093
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/CreateWhatIfAnalysisResponse AWS API Documentation
2094
+ #
2095
+ class CreateWhatIfAnalysisResponse < Struct.new(
2096
+ :what_if_analysis_arn)
2097
+ SENSITIVE = []
2098
+ include Aws::Structure
2099
+ end
2100
+
2101
+ # @note When making an API call, you may pass CreateWhatIfForecastExportRequest
2102
+ # data as a hash:
2103
+ #
2104
+ # {
2105
+ # what_if_forecast_export_name: "Name", # required
2106
+ # what_if_forecast_arns: ["LongArn"], # required
2107
+ # destination: { # required
2108
+ # s3_config: { # required
2109
+ # path: "S3Path", # required
2110
+ # role_arn: "Arn", # required
2111
+ # kms_key_arn: "KMSKeyArn",
2112
+ # },
2113
+ # },
2114
+ # tags: [
2115
+ # {
2116
+ # key: "TagKey", # required
2117
+ # value: "TagValue", # required
2118
+ # },
2119
+ # ],
2120
+ # format: "Format",
2121
+ # }
2122
+ #
2123
+ # @!attribute [rw] what_if_forecast_export_name
2124
+ # The name of the what-if forecast to export.
2125
+ # @return [String]
2126
+ #
2127
+ # @!attribute [rw] what_if_forecast_arns
2128
+ # The list of what-if forecast Amazon Resource Names (ARNs) to export.
2129
+ # @return [Array<String>]
2130
+ #
2131
+ # @!attribute [rw] destination
2132
+ # The location where you want to save the forecast and an AWS Identity
2133
+ # and Access Management (IAM) role that Amazon Forecast can assume to
2134
+ # access the location. The forecast must be exported to an Amazon S3
2135
+ # bucket.
2136
+ #
2137
+ # If encryption is used, `Destination` must include an AWS Key
2138
+ # Management Service (KMS) key. The IAM role must allow Amazon
2139
+ # Forecast permission to access the key.
2140
+ # @return [Types::DataDestination]
2141
+ #
2142
+ # @!attribute [rw] tags
2143
+ # A list of [tags][1] to apply to the what if forecast.
2144
+ #
2145
+ #
2146
+ #
2147
+ # [1]: https://docs.aws.amazon.com/forecast/latest/dg/tagging-forecast-resources.html
2148
+ # @return [Array<Types::Tag>]
2149
+ #
2150
+ # @!attribute [rw] format
2151
+ # The format of the exported data, CSV or PARQUET.
2152
+ # @return [String]
2153
+ #
2154
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/CreateWhatIfForecastExportRequest AWS API Documentation
2155
+ #
2156
+ class CreateWhatIfForecastExportRequest < Struct.new(
2157
+ :what_if_forecast_export_name,
2158
+ :what_if_forecast_arns,
2159
+ :destination,
2160
+ :tags,
2161
+ :format)
2162
+ SENSITIVE = []
2163
+ include Aws::Structure
2164
+ end
2165
+
2166
+ # @!attribute [rw] what_if_forecast_export_arn
2167
+ # The Amazon Resource Name (ARN) of the what-if forecast.
2168
+ # @return [String]
2169
+ #
2170
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/CreateWhatIfForecastExportResponse AWS API Documentation
2171
+ #
2172
+ class CreateWhatIfForecastExportResponse < Struct.new(
2173
+ :what_if_forecast_export_arn)
2174
+ SENSITIVE = []
2175
+ include Aws::Structure
2176
+ end
2177
+
2178
+ # @note When making an API call, you may pass CreateWhatIfForecastRequest
2179
+ # data as a hash:
2180
+ #
2181
+ # {
2182
+ # what_if_forecast_name: "Name", # required
2183
+ # what_if_analysis_arn: "Arn", # required
2184
+ # time_series_transformations: [
2185
+ # {
2186
+ # action: {
2187
+ # attribute_name: "Name", # required
2188
+ # operation: "ADD", # required, accepts ADD, SUBTRACT, MULTIPLY, DIVIDE
2189
+ # value: 1.0, # required
2190
+ # },
2191
+ # time_series_conditions: [
2192
+ # {
2193
+ # attribute_name: "Name", # required
2194
+ # attribute_value: "AttributeValue", # required
2195
+ # condition: "EQUALS", # required, accepts EQUALS, NOT_EQUALS, LESS_THAN, GREATER_THAN
2196
+ # },
2197
+ # ],
2198
+ # },
2199
+ # ],
2200
+ # time_series_replacements_data_source: {
2201
+ # s3_config: { # required
2202
+ # path: "S3Path", # required
2203
+ # role_arn: "Arn", # required
2204
+ # kms_key_arn: "KMSKeyArn",
2205
+ # },
2206
+ # schema: { # required
2207
+ # attributes: [
2208
+ # {
2209
+ # attribute_name: "Name",
2210
+ # attribute_type: "string", # accepts string, integer, float, timestamp, geolocation
2211
+ # },
2212
+ # ],
2213
+ # },
2214
+ # format: "Format",
2215
+ # timestamp_format: "TimestampFormat",
2216
+ # },
2217
+ # tags: [
2218
+ # {
2219
+ # key: "TagKey", # required
2220
+ # value: "TagValue", # required
2221
+ # },
2222
+ # ],
2223
+ # }
2224
+ #
2225
+ # @!attribute [rw] what_if_forecast_name
2226
+ # The name of the what-if forecast. Names must be unique within each
2227
+ # what-if analysis.
2228
+ # @return [String]
2229
+ #
2230
+ # @!attribute [rw] what_if_analysis_arn
2231
+ # The Amazon Resource Name (ARN) of the what-if analysis.
2232
+ # @return [String]
2233
+ #
2234
+ # @!attribute [rw] time_series_transformations
2235
+ # The transformations that are applied to the baseline time series.
2236
+ # Each transformation contains an action and a set of conditions. An
2237
+ # action is applied only when all conditions are met. If no conditions
2238
+ # are provided, the action is applied to all items.
2239
+ # @return [Array<Types::TimeSeriesTransformation>]
2240
+ #
2241
+ # @!attribute [rw] time_series_replacements_data_source
2242
+ # The replacement time series dataset, which contains the rows that
2243
+ # you want to change in the related time series dataset. A replacement
2244
+ # time series does not need to contain all rows that are in the
2245
+ # baseline related time series. Include only the rows
2246
+ # (measure-dimension combinations) that you want to include in the
2247
+ # what-if forecast. This dataset is merged with the original time
2248
+ # series to create a transformed dataset that is used for the what-if
2249
+ # analysis.
2250
+ #
2251
+ # This dataset should contain the items to modify (such as item\_id or
2252
+ # workforce\_type), any relevant dimensions, the timestamp column, and
2253
+ # at least one of the related time series columns. This file should
2254
+ # not contain duplicate timestamps for the same time series.
2255
+ #
2256
+ # Timestamps and item\_ids not included in this dataset are not
2257
+ # included in the what-if analysis.
2258
+ # @return [Types::TimeSeriesReplacementsDataSource]
2259
+ #
2260
+ # @!attribute [rw] tags
2261
+ # A list of [tags][1] to apply to the what if forecast.
2262
+ #
2263
+ #
2264
+ #
2265
+ # [1]: https://docs.aws.amazon.com/forecast/latest/dg/tagging-forecast-resources.html
2266
+ # @return [Array<Types::Tag>]
2267
+ #
2268
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/CreateWhatIfForecastRequest AWS API Documentation
2269
+ #
2270
+ class CreateWhatIfForecastRequest < Struct.new(
2271
+ :what_if_forecast_name,
2272
+ :what_if_analysis_arn,
2273
+ :time_series_transformations,
2274
+ :time_series_replacements_data_source,
2275
+ :tags)
2276
+ SENSITIVE = []
2277
+ include Aws::Structure
2278
+ end
2279
+
2280
+ # @!attribute [rw] what_if_forecast_arn
2281
+ # The Amazon Resource Name (ARN) of the what-if forecast.
2282
+ # @return [String]
2283
+ #
2284
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/CreateWhatIfForecastResponse AWS API Documentation
2285
+ #
2286
+ class CreateWhatIfForecastResponse < Struct.new(
2287
+ :what_if_forecast_arn)
2288
+ SENSITIVE = []
2289
+ include Aws::Structure
2290
+ end
2291
+
1964
2292
  # The data configuration for your dataset group and any additional
1965
2293
  # datasets.
1966
2294
  #
@@ -2454,6 +2782,66 @@ module Aws::ForecastService
2454
2782
  include Aws::Structure
2455
2783
  end
2456
2784
 
2785
+ # @note When making an API call, you may pass DeleteWhatIfAnalysisRequest
2786
+ # data as a hash:
2787
+ #
2788
+ # {
2789
+ # what_if_analysis_arn: "Arn", # required
2790
+ # }
2791
+ #
2792
+ # @!attribute [rw] what_if_analysis_arn
2793
+ # The Amazon Resource Name (ARN) of the what-if analysis that you want
2794
+ # to delete.
2795
+ # @return [String]
2796
+ #
2797
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/DeleteWhatIfAnalysisRequest AWS API Documentation
2798
+ #
2799
+ class DeleteWhatIfAnalysisRequest < Struct.new(
2800
+ :what_if_analysis_arn)
2801
+ SENSITIVE = []
2802
+ include Aws::Structure
2803
+ end
2804
+
2805
+ # @note When making an API call, you may pass DeleteWhatIfForecastExportRequest
2806
+ # data as a hash:
2807
+ #
2808
+ # {
2809
+ # what_if_forecast_export_arn: "LongArn", # required
2810
+ # }
2811
+ #
2812
+ # @!attribute [rw] what_if_forecast_export_arn
2813
+ # The Amazon Resource Name (ARN) of the what-if forecast export that
2814
+ # you want to delete.
2815
+ # @return [String]
2816
+ #
2817
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/DeleteWhatIfForecastExportRequest AWS API Documentation
2818
+ #
2819
+ class DeleteWhatIfForecastExportRequest < Struct.new(
2820
+ :what_if_forecast_export_arn)
2821
+ SENSITIVE = []
2822
+ include Aws::Structure
2823
+ end
2824
+
2825
+ # @note When making an API call, you may pass DeleteWhatIfForecastRequest
2826
+ # data as a hash:
2827
+ #
2828
+ # {
2829
+ # what_if_forecast_arn: "LongArn", # required
2830
+ # }
2831
+ #
2832
+ # @!attribute [rw] what_if_forecast_arn
2833
+ # The Amazon Resource Name (ARN) of the what-if forecast that you want
2834
+ # to delete.
2835
+ # @return [String]
2836
+ #
2837
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/DeleteWhatIfForecastRequest AWS API Documentation
2838
+ #
2839
+ class DeleteWhatIfForecastRequest < Struct.new(
2840
+ :what_if_forecast_arn)
2841
+ SENSITIVE = []
2842
+ include Aws::Structure
2843
+ end
2844
+
2457
2845
  # @note When making an API call, you may pass DescribeAutoPredictorRequest
2458
2846
  # data as a hash:
2459
2847
  #
@@ -3758,9 +4146,334 @@ module Aws::ForecastService
3758
4146
  include Aws::Structure
3759
4147
  end
3760
4148
 
3761
- # An AWS Key Management Service (KMS) key and an AWS Identity and Access
3762
- # Management (IAM) role that Amazon Forecast can assume to access the
3763
- # key. You can specify this optional object in the CreateDataset and
4149
+ # @note When making an API call, you may pass DescribeWhatIfAnalysisRequest
4150
+ # data as a hash:
4151
+ #
4152
+ # {
4153
+ # what_if_analysis_arn: "Arn", # required
4154
+ # }
4155
+ #
4156
+ # @!attribute [rw] what_if_analysis_arn
4157
+ # The Amazon Resource Name (ARN) of the what-if analysis that you are
4158
+ # interested in.
4159
+ # @return [String]
4160
+ #
4161
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/DescribeWhatIfAnalysisRequest AWS API Documentation
4162
+ #
4163
+ class DescribeWhatIfAnalysisRequest < Struct.new(
4164
+ :what_if_analysis_arn)
4165
+ SENSITIVE = []
4166
+ include Aws::Structure
4167
+ end
4168
+
4169
+ # @!attribute [rw] what_if_analysis_name
4170
+ # The name of the what-if analysis.
4171
+ # @return [String]
4172
+ #
4173
+ # @!attribute [rw] what_if_analysis_arn
4174
+ # The Amazon Resource Name (ARN) of the what-if analysis.
4175
+ # @return [String]
4176
+ #
4177
+ # @!attribute [rw] forecast_arn
4178
+ # The Amazon Resource Name (ARN) of the what-if forecast.
4179
+ # @return [String]
4180
+ #
4181
+ # @!attribute [rw] estimated_time_remaining_in_minutes
4182
+ # The approximate time remaining to complete the what-if analysis, in
4183
+ # minutes.
4184
+ # @return [Integer]
4185
+ #
4186
+ # @!attribute [rw] status
4187
+ # The status of the what-if analysis. States include:
4188
+ #
4189
+ # * `ACTIVE`
4190
+ #
4191
+ # * `CREATE_PENDING`, `CREATE_IN_PROGRESS`, `CREATE_FAILED`
4192
+ #
4193
+ # * `CREATE_STOPPING`, `CREATE_STOPPED`
4194
+ #
4195
+ # * `DELETE_PENDING`, `DELETE_IN_PROGRESS`, `DELETE_FAILED`
4196
+ #
4197
+ # <note markdown="1"> The `Status` of the what-if analysis must be `ACTIVE` before you can
4198
+ # access the analysis.
4199
+ #
4200
+ # </note>
4201
+ # @return [String]
4202
+ #
4203
+ # @!attribute [rw] message
4204
+ # If an error occurred, an informational message about the error.
4205
+ # @return [String]
4206
+ #
4207
+ # @!attribute [rw] creation_time
4208
+ # When the what-if analysis was created.
4209
+ # @return [Time]
4210
+ #
4211
+ # @!attribute [rw] last_modification_time
4212
+ # The last time the resource was modified. The timestamp depends on
4213
+ # the status of the job:
4214
+ #
4215
+ # * `CREATE_PENDING` - The `CreationTime`.
4216
+ #
4217
+ # * `CREATE_IN_PROGRESS` - The current timestamp.
4218
+ #
4219
+ # * `CREATE_STOPPING` - The current timestamp.
4220
+ #
4221
+ # * `CREATE_STOPPED` - When the job stopped.
4222
+ #
4223
+ # * `ACTIVE` or `CREATE_FAILED` - When the job finished or failed.
4224
+ # @return [Time]
4225
+ #
4226
+ # @!attribute [rw] time_series_selector
4227
+ # Defines the set of time series that are used to create the forecasts
4228
+ # in a `TimeSeriesIdentifiers` object.
4229
+ #
4230
+ # The `TimeSeriesIdentifiers` object needs the following information:
4231
+ #
4232
+ # * `DataSource`
4233
+ #
4234
+ # * `Format`
4235
+ #
4236
+ # * `Schema`
4237
+ # @return [Types::TimeSeriesSelector]
4238
+ #
4239
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/DescribeWhatIfAnalysisResponse AWS API Documentation
4240
+ #
4241
+ class DescribeWhatIfAnalysisResponse < Struct.new(
4242
+ :what_if_analysis_name,
4243
+ :what_if_analysis_arn,
4244
+ :forecast_arn,
4245
+ :estimated_time_remaining_in_minutes,
4246
+ :status,
4247
+ :message,
4248
+ :creation_time,
4249
+ :last_modification_time,
4250
+ :time_series_selector)
4251
+ SENSITIVE = []
4252
+ include Aws::Structure
4253
+ end
4254
+
4255
+ # @note When making an API call, you may pass DescribeWhatIfForecastExportRequest
4256
+ # data as a hash:
4257
+ #
4258
+ # {
4259
+ # what_if_forecast_export_arn: "LongArn", # required
4260
+ # }
4261
+ #
4262
+ # @!attribute [rw] what_if_forecast_export_arn
4263
+ # The Amazon Resource Name (ARN) of the what-if forecast export that
4264
+ # you are interested in.
4265
+ # @return [String]
4266
+ #
4267
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/DescribeWhatIfForecastExportRequest AWS API Documentation
4268
+ #
4269
+ class DescribeWhatIfForecastExportRequest < Struct.new(
4270
+ :what_if_forecast_export_arn)
4271
+ SENSITIVE = []
4272
+ include Aws::Structure
4273
+ end
4274
+
4275
+ # @!attribute [rw] what_if_forecast_export_arn
4276
+ # The Amazon Resource Name (ARN) of the what-if forecast export.
4277
+ # @return [String]
4278
+ #
4279
+ # @!attribute [rw] what_if_forecast_export_name
4280
+ # The name of the what-if forecast export.
4281
+ # @return [String]
4282
+ #
4283
+ # @!attribute [rw] what_if_forecast_arns
4284
+ # An array of Amazon Resource Names (ARNs) that represent all of the
4285
+ # what-if forecasts exported in this resource.
4286
+ # @return [Array<String>]
4287
+ #
4288
+ # @!attribute [rw] destination
4289
+ # The destination for an export job. Provide an S3 path, an AWS
4290
+ # Identity and Access Management (IAM) role that allows Amazon
4291
+ # Forecast to access the location, and an AWS Key Management Service
4292
+ # (KMS) key (optional).
4293
+ # @return [Types::DataDestination]
4294
+ #
4295
+ # @!attribute [rw] message
4296
+ # If an error occurred, an informational message about the error.
4297
+ # @return [String]
4298
+ #
4299
+ # @!attribute [rw] status
4300
+ # The status of the what-if forecast. States include:
4301
+ #
4302
+ # * `ACTIVE`
4303
+ #
4304
+ # * `CREATE_PENDING`, `CREATE_IN_PROGRESS`, `CREATE_FAILED`
4305
+ #
4306
+ # * `CREATE_STOPPING`, `CREATE_STOPPED`
4307
+ #
4308
+ # * `DELETE_PENDING`, `DELETE_IN_PROGRESS`, `DELETE_FAILED`
4309
+ #
4310
+ # <note markdown="1"> The `Status` of the what-if forecast export must be `ACTIVE` before
4311
+ # you can access the forecast export.
4312
+ #
4313
+ # </note>
4314
+ # @return [String]
4315
+ #
4316
+ # @!attribute [rw] creation_time
4317
+ # When the what-if forecast export was created.
4318
+ # @return [Time]
4319
+ #
4320
+ # @!attribute [rw] estimated_time_remaining_in_minutes
4321
+ # The approximate time remaining to complete the what-if forecast
4322
+ # export, in minutes.
4323
+ # @return [Integer]
4324
+ #
4325
+ # @!attribute [rw] last_modification_time
4326
+ # The last time the resource was modified. The timestamp depends on
4327
+ # the status of the job:
4328
+ #
4329
+ # * `CREATE_PENDING` - The `CreationTime`.
4330
+ #
4331
+ # * `CREATE_IN_PROGRESS` - The current timestamp.
4332
+ #
4333
+ # * `CREATE_STOPPING` - The current timestamp.
4334
+ #
4335
+ # * `CREATE_STOPPED` - When the job stopped.
4336
+ #
4337
+ # * `ACTIVE` or `CREATE_FAILED` - When the job finished or failed.
4338
+ # @return [Time]
4339
+ #
4340
+ # @!attribute [rw] format
4341
+ # The format of the exported data, CSV or PARQUET.
4342
+ # @return [String]
4343
+ #
4344
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/DescribeWhatIfForecastExportResponse AWS API Documentation
4345
+ #
4346
+ class DescribeWhatIfForecastExportResponse < Struct.new(
4347
+ :what_if_forecast_export_arn,
4348
+ :what_if_forecast_export_name,
4349
+ :what_if_forecast_arns,
4350
+ :destination,
4351
+ :message,
4352
+ :status,
4353
+ :creation_time,
4354
+ :estimated_time_remaining_in_minutes,
4355
+ :last_modification_time,
4356
+ :format)
4357
+ SENSITIVE = []
4358
+ include Aws::Structure
4359
+ end
4360
+
4361
+ # @note When making an API call, you may pass DescribeWhatIfForecastRequest
4362
+ # data as a hash:
4363
+ #
4364
+ # {
4365
+ # what_if_forecast_arn: "LongArn", # required
4366
+ # }
4367
+ #
4368
+ # @!attribute [rw] what_if_forecast_arn
4369
+ # The Amazon Resource Name (ARN) of the what-if forecast that you are
4370
+ # interested in.
4371
+ # @return [String]
4372
+ #
4373
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/DescribeWhatIfForecastRequest AWS API Documentation
4374
+ #
4375
+ class DescribeWhatIfForecastRequest < Struct.new(
4376
+ :what_if_forecast_arn)
4377
+ SENSITIVE = []
4378
+ include Aws::Structure
4379
+ end
4380
+
4381
+ # @!attribute [rw] what_if_forecast_name
4382
+ # The name of the what-if forecast.
4383
+ # @return [String]
4384
+ #
4385
+ # @!attribute [rw] what_if_forecast_arn
4386
+ # The Amazon Resource Name (ARN) of the what-if forecast.
4387
+ # @return [String]
4388
+ #
4389
+ # @!attribute [rw] what_if_analysis_arn
4390
+ # The Amazon Resource Name (ARN) of the what-if analysis that contains
4391
+ # this forecast.
4392
+ # @return [String]
4393
+ #
4394
+ # @!attribute [rw] estimated_time_remaining_in_minutes
4395
+ # The approximate time remaining to complete the what-if forecast, in
4396
+ # minutes.
4397
+ # @return [Integer]
4398
+ #
4399
+ # @!attribute [rw] status
4400
+ # The status of the what-if forecast. States include:
4401
+ #
4402
+ # * `ACTIVE`
4403
+ #
4404
+ # * `CREATE_PENDING`, `CREATE_IN_PROGRESS`, `CREATE_FAILED`
4405
+ #
4406
+ # * `CREATE_STOPPING`, `CREATE_STOPPED`
4407
+ #
4408
+ # * `DELETE_PENDING`, `DELETE_IN_PROGRESS`, `DELETE_FAILED`
4409
+ #
4410
+ # <note markdown="1"> The `Status` of the what-if forecast must be `ACTIVE` before you can
4411
+ # access the forecast.
4412
+ #
4413
+ # </note>
4414
+ # @return [String]
4415
+ #
4416
+ # @!attribute [rw] message
4417
+ # If an error occurred, an informational message about the error.
4418
+ # @return [String]
4419
+ #
4420
+ # @!attribute [rw] creation_time
4421
+ # When the what-if forecast was created.
4422
+ # @return [Time]
4423
+ #
4424
+ # @!attribute [rw] last_modification_time
4425
+ # The last time the resource was modified. The timestamp depends on
4426
+ # the status of the job:
4427
+ #
4428
+ # * `CREATE_PENDING` - The `CreationTime`.
4429
+ #
4430
+ # * `CREATE_IN_PROGRESS` - The current timestamp.
4431
+ #
4432
+ # * `CREATE_STOPPING` - The current timestamp.
4433
+ #
4434
+ # * `CREATE_STOPPED` - When the job stopped.
4435
+ #
4436
+ # * `ACTIVE` or `CREATE_FAILED` - When the job finished or failed.
4437
+ # @return [Time]
4438
+ #
4439
+ # @!attribute [rw] time_series_transformations
4440
+ # An array of `Action` and `TimeSeriesConditions` elements that
4441
+ # describe what transformations were applied to which time series.
4442
+ # @return [Array<Types::TimeSeriesTransformation>]
4443
+ #
4444
+ # @!attribute [rw] time_series_replacements_data_source
4445
+ # An array of `S3Config`, `Schema`, and `Format` elements that
4446
+ # describe the replacement time series.
4447
+ # @return [Types::TimeSeriesReplacementsDataSource]
4448
+ #
4449
+ # @!attribute [rw] forecast_types
4450
+ # The quantiles at which probabilistic forecasts are generated. You
4451
+ # can specify up to 5 quantiles per what-if forecast in the
4452
+ # CreateWhatIfForecast operation. If you didn't specify quantiles,
4453
+ # the default values are `["0.1", "0.5", "0.9"]`.
4454
+ # @return [Array<String>]
4455
+ #
4456
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/DescribeWhatIfForecastResponse AWS API Documentation
4457
+ #
4458
+ class DescribeWhatIfForecastResponse < Struct.new(
4459
+ :what_if_forecast_name,
4460
+ :what_if_forecast_arn,
4461
+ :what_if_analysis_arn,
4462
+ :estimated_time_remaining_in_minutes,
4463
+ :status,
4464
+ :message,
4465
+ :creation_time,
4466
+ :last_modification_time,
4467
+ :time_series_transformations,
4468
+ :time_series_replacements_data_source,
4469
+ :forecast_types)
4470
+ SENSITIVE = []
4471
+ include Aws::Structure
4472
+ end
4473
+
4474
+ # An AWS Key Management Service (KMS) key and an AWS Identity and Access
4475
+ # Management (IAM) role that Amazon Forecast can assume to access the
4476
+ # key. You can specify this optional object in the CreateDataset and
3764
4477
  # CreatePredictor requests.
3765
4478
  #
3766
4479
  # @note When making an API call, you may pass EncryptionConfig
@@ -5620,13 +6333,260 @@ module Aws::ForecastService
5620
6333
  include Aws::Structure
5621
6334
  end
5622
6335
 
5623
- # An individual metric Forecast calculated when monitoring predictor
5624
- # usage. You can compare the value for this metric to the metric's
5625
- # value in the Baseline to see how your predictor's performance is
5626
- # changing.
6336
+ # @note When making an API call, you may pass ListWhatIfAnalysesRequest
6337
+ # data as a hash:
5627
6338
  #
5628
- # For more information about metrics generated by Forecast see
5629
- # [Evaluating Predictor Accuracy][1]
6339
+ # {
6340
+ # next_token: "NextToken",
6341
+ # max_results: 1,
6342
+ # filters: [
6343
+ # {
6344
+ # key: "String", # required
6345
+ # value: "Arn", # required
6346
+ # condition: "IS", # required, accepts IS, IS_NOT
6347
+ # },
6348
+ # ],
6349
+ # }
6350
+ #
6351
+ # @!attribute [rw] next_token
6352
+ # If the result of the previous request was truncated, the response
6353
+ # includes a `NextToken`. To retrieve the next set of results, use the
6354
+ # token in the next request. Tokens expire after 24 hours.
6355
+ # @return [String]
6356
+ #
6357
+ # @!attribute [rw] max_results
6358
+ # The number of items to return in the response.
6359
+ # @return [Integer]
6360
+ #
6361
+ # @!attribute [rw] filters
6362
+ # An array of filters. For each filter, you provide a condition and a
6363
+ # match statement. The condition is either `IS` or `IS_NOT`, which
6364
+ # specifies whether to include or exclude the what-if analysis jobs
6365
+ # that match the statement from the list, respectively. The match
6366
+ # statement consists of a key and a value.
6367
+ #
6368
+ # **Filter properties**
6369
+ #
6370
+ # * `Condition` - The condition to apply. Valid values are `IS` and
6371
+ # `IS_NOT`. To include the what-if analysis jobs that match the
6372
+ # statement, specify `IS`. To exclude matching what-if analysis
6373
+ # jobs, specify `IS_NOT`.
6374
+ #
6375
+ # * `Key` - The name of the parameter to filter on. Valid values are
6376
+ # `WhatIfAnalysisArn` and `Status`.
6377
+ #
6378
+ # * `Value` - The value to match.
6379
+ #
6380
+ # For example, to list all jobs that export a forecast named
6381
+ # *electricityWhatIf*, specify the following filter:
6382
+ #
6383
+ # `"Filters": [ \{ "Condition": "IS", "Key": "WhatIfAnalysisArn",
6384
+ # "Value":
6385
+ # "arn:aws:forecast:us-west-2:<acct-id>:forecast/electricityWhatIf" \}
6386
+ # ]`
6387
+ # @return [Array<Types::Filter>]
6388
+ #
6389
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/ListWhatIfAnalysesRequest AWS API Documentation
6390
+ #
6391
+ class ListWhatIfAnalysesRequest < Struct.new(
6392
+ :next_token,
6393
+ :max_results,
6394
+ :filters)
6395
+ SENSITIVE = []
6396
+ include Aws::Structure
6397
+ end
6398
+
6399
+ # @!attribute [rw] what_if_analyses
6400
+ # An array of `WhatIfAnalysisSummary` objects that describe the
6401
+ # matched analyses.
6402
+ # @return [Array<Types::WhatIfAnalysisSummary>]
6403
+ #
6404
+ # @!attribute [rw] next_token
6405
+ # If the response is truncated, Forecast returns this token. To
6406
+ # retrieve the next set of results, use the token in the next request.
6407
+ # @return [String]
6408
+ #
6409
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/ListWhatIfAnalysesResponse AWS API Documentation
6410
+ #
6411
+ class ListWhatIfAnalysesResponse < Struct.new(
6412
+ :what_if_analyses,
6413
+ :next_token)
6414
+ SENSITIVE = []
6415
+ include Aws::Structure
6416
+ end
6417
+
6418
+ # @note When making an API call, you may pass ListWhatIfForecastExportsRequest
6419
+ # data as a hash:
6420
+ #
6421
+ # {
6422
+ # next_token: "NextToken",
6423
+ # max_results: 1,
6424
+ # filters: [
6425
+ # {
6426
+ # key: "String", # required
6427
+ # value: "Arn", # required
6428
+ # condition: "IS", # required, accepts IS, IS_NOT
6429
+ # },
6430
+ # ],
6431
+ # }
6432
+ #
6433
+ # @!attribute [rw] next_token
6434
+ # If the result of the previous request was truncated, the response
6435
+ # includes a `NextToken`. To retrieve the next set of results, use the
6436
+ # token in the next
 request. Tokens expire after 24 hours.
6437
+ # @return [String]
6438
+ #
6439
+ # @!attribute [rw] max_results
6440
+ # The number of items to return in the response.
6441
+ # @return [Integer]
6442
+ #
6443
+ # @!attribute [rw] filters
6444
+ # An array of filters. For each filter, you provide a condition and a
6445
+ # match statement. The condition is either `IS` or `IS_NOT`, which
6446
+ # specifies whether to include or exclude the what-if forecast export
6447
+ # jobs that match the statement from the list, respectively. The match
6448
+ # statement consists of a key and a value.
6449
+ #
6450
+ # **Filter properties**
6451
+ #
6452
+ # * `Condition` - The condition to apply. Valid values are `IS` and
6453
+ # `IS_NOT`. To include the forecast export jobs that match the
6454
+ # statement, specify `IS`. To exclude matching forecast export jobs,
6455
+ # specify `IS_NOT`.
6456
+ #
6457
+ # * `Key` - The name of the parameter to filter on. Valid values are
6458
+ # `WhatIfForecastExportArn` and `Status`.
6459
+ #
6460
+ # * `Value` - The value to match.
6461
+ #
6462
+ # For example, to list all jobs that export a forecast named
6463
+ # *electricityWIFExport*, specify the following filter:
6464
+ #
6465
+ # `"Filters": [ \{ "Condition": "IS", "Key":
6466
+ # "WhatIfForecastExportArn", "Value":
6467
+ # "arn:aws:forecast:us-west-2:<acct-id>:forecast/electricityWIFExport"
6468
+ # \} ]`
6469
+ # @return [Array<Types::Filter>]
6470
+ #
6471
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/ListWhatIfForecastExportsRequest AWS API Documentation
6472
+ #
6473
+ class ListWhatIfForecastExportsRequest < Struct.new(
6474
+ :next_token,
6475
+ :max_results,
6476
+ :filters)
6477
+ SENSITIVE = []
6478
+ include Aws::Structure
6479
+ end
6480
+
6481
+ # @!attribute [rw] what_if_forecast_exports
6482
+ # An array of `WhatIfForecastExports` objects that describe the
6483
+ # matched forecast exports.
6484
+ # @return [Array<Types::WhatIfForecastExportSummary>]
6485
+ #
6486
+ # @!attribute [rw] next_token
6487
+ # If the response is truncated, Forecast returns this token. To
6488
+ # retrieve the next set of results, use the token in the next request.
6489
+ # @return [String]
6490
+ #
6491
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/ListWhatIfForecastExportsResponse AWS API Documentation
6492
+ #
6493
+ class ListWhatIfForecastExportsResponse < Struct.new(
6494
+ :what_if_forecast_exports,
6495
+ :next_token)
6496
+ SENSITIVE = []
6497
+ include Aws::Structure
6498
+ end
6499
+
6500
+ # @note When making an API call, you may pass ListWhatIfForecastsRequest
6501
+ # data as a hash:
6502
+ #
6503
+ # {
6504
+ # next_token: "NextToken",
6505
+ # max_results: 1,
6506
+ # filters: [
6507
+ # {
6508
+ # key: "String", # required
6509
+ # value: "Arn", # required
6510
+ # condition: "IS", # required, accepts IS, IS_NOT
6511
+ # },
6512
+ # ],
6513
+ # }
6514
+ #
6515
+ # @!attribute [rw] next_token
6516
+ # If the result of the previous request was truncated, the response
6517
+ # includes a `NextToken`. To retrieve the next set of results, use the
6518
+ # token in the next
 request. Tokens expire after 24 hours.
6519
+ # @return [String]
6520
+ #
6521
+ # @!attribute [rw] max_results
6522
+ # The number of items to return in the response.
6523
+ # @return [Integer]
6524
+ #
6525
+ # @!attribute [rw] filters
6526
+ # An array of filters. For each filter, you provide a condition and a
6527
+ # match statement. The condition is either `IS` or `IS_NOT`, which
6528
+ # specifies whether to include or exclude the what-if forecast export
6529
+ # jobs that match the statement from the list, respectively. The match
6530
+ # statement consists of a key and a value.
6531
+ #
6532
+ # **Filter properties**
6533
+ #
6534
+ # * `Condition` - The condition to apply. Valid values are `IS` and
6535
+ # `IS_NOT`. To include the forecast export jobs that match the
6536
+ # statement, specify `IS`. To exclude matching forecast export jobs,
6537
+ # specify `IS_NOT`.
6538
+ #
6539
+ # * `Key` - The name of the parameter to filter on. Valid values are
6540
+ # `WhatIfForecastArn` and `Status`.
6541
+ #
6542
+ # * `Value` - The value to match.
6543
+ #
6544
+ # For example, to list all jobs that export a forecast named
6545
+ # *electricityWhatIfForecast*, specify the following filter:
6546
+ #
6547
+ # `"Filters": [ \{ "Condition": "IS", "Key": "WhatIfForecastArn",
6548
+ # "Value":
6549
+ # "arn:aws:forecast:us-west-2:<acct-id>:forecast/electricityWhatIfForecast"
6550
+ # \} ]`
6551
+ # @return [Array<Types::Filter>]
6552
+ #
6553
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/ListWhatIfForecastsRequest AWS API Documentation
6554
+ #
6555
+ class ListWhatIfForecastsRequest < Struct.new(
6556
+ :next_token,
6557
+ :max_results,
6558
+ :filters)
6559
+ SENSITIVE = []
6560
+ include Aws::Structure
6561
+ end
6562
+
6563
+ # @!attribute [rw] what_if_forecasts
6564
+ # An array of `WhatIfForecasts` objects that describe the matched
6565
+ # forecasts.
6566
+ # @return [Array<Types::WhatIfForecastSummary>]
6567
+ #
6568
+ # @!attribute [rw] next_token
6569
+ # If the result of the previous request was truncated, the response
6570
+ # includes a `NextToken`. To retrieve the next set of results, use the
6571
+ # token in the next
 request. Tokens expire after 24 hours.
6572
+ # @return [String]
6573
+ #
6574
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/ListWhatIfForecastsResponse AWS API Documentation
6575
+ #
6576
+ class ListWhatIfForecastsResponse < Struct.new(
6577
+ :what_if_forecasts,
6578
+ :next_token)
6579
+ SENSITIVE = []
6580
+ include Aws::Structure
6581
+ end
6582
+
6583
+ # An individual metric Forecast calculated when monitoring predictor
6584
+ # usage. You can compare the value for this metric to the metric's
6585
+ # value in the Baseline to see how your predictor's performance is
6586
+ # changing.
6587
+ #
6588
+ # For more information about metrics generated by Forecast see
6589
+ # [Evaluating Predictor Accuracy][1]
5630
6590
  #
5631
6591
  #
5632
6592
  #
@@ -6895,6 +7855,47 @@ module Aws::ForecastService
6895
7855
  include Aws::Structure
6896
7856
  end
6897
7857
 
7858
+ # Creates a subset of items within an attribute that are modified. For
7859
+ # example, you can use this operation to create a subset of items that
7860
+ # cost $5 or less. To do this, you specify `"AttributeName": "price"`,
7861
+ # `"AttributeValue": "5"`, and `"Condition": "LESS_THAN"`. Pair this
7862
+ # operation with the Action operation within the
7863
+ # CreateWhatIfForecastRequest$TimeSeriesTransformations operation to
7864
+ # define how the attribute is modified.
7865
+ #
7866
+ # @note When making an API call, you may pass TimeSeriesCondition
7867
+ # data as a hash:
7868
+ #
7869
+ # {
7870
+ # attribute_name: "Name", # required
7871
+ # attribute_value: "AttributeValue", # required
7872
+ # condition: "EQUALS", # required, accepts EQUALS, NOT_EQUALS, LESS_THAN, GREATER_THAN
7873
+ # }
7874
+ #
7875
+ # @!attribute [rw] attribute_name
7876
+ # The item\_id, dimension name, IM name, or timestamp that you are
7877
+ # modifying.
7878
+ # @return [String]
7879
+ #
7880
+ # @!attribute [rw] attribute_value
7881
+ # The value that is applied for the chosen `Condition`.
7882
+ # @return [String]
7883
+ #
7884
+ # @!attribute [rw] condition
7885
+ # The condition to apply. Valid values are `EQUALS`, `NOT_EQUALS`,
7886
+ # `LESS_THAN` and `GREATER_THAN`.
7887
+ # @return [String]
7888
+ #
7889
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/TimeSeriesCondition AWS API Documentation
7890
+ #
7891
+ class TimeSeriesCondition < Struct.new(
7892
+ :attribute_name,
7893
+ :attribute_value,
7894
+ :condition)
7895
+ SENSITIVE = []
7896
+ include Aws::Structure
7897
+ end
7898
+
6898
7899
  # Details about the import file that contains the time series for which
6899
7900
  # you want to create forecasts.
6900
7901
  #
@@ -6944,6 +7945,68 @@ module Aws::ForecastService
6944
7945
  include Aws::Structure
6945
7946
  end
6946
7947
 
7948
+ # A replacement dataset is a modified version of the baseline related
7949
+ # time series that contains only the values that you want to include in
7950
+ # a what-if forecast. The replacement dataset must contain the forecast
7951
+ # dimensions and item identifiers in the baseline related time series as
7952
+ # well as at least 1 changed time series. This dataset is merged with
7953
+ # the baseline related time series to create a transformed dataset that
7954
+ # is used for the what-if forecast.
7955
+ #
7956
+ # @note When making an API call, you may pass TimeSeriesReplacementsDataSource
7957
+ # data as a hash:
7958
+ #
7959
+ # {
7960
+ # s3_config: { # required
7961
+ # path: "S3Path", # required
7962
+ # role_arn: "Arn", # required
7963
+ # kms_key_arn: "KMSKeyArn",
7964
+ # },
7965
+ # schema: { # required
7966
+ # attributes: [
7967
+ # {
7968
+ # attribute_name: "Name",
7969
+ # attribute_type: "string", # accepts string, integer, float, timestamp, geolocation
7970
+ # },
7971
+ # ],
7972
+ # },
7973
+ # format: "Format",
7974
+ # timestamp_format: "TimestampFormat",
7975
+ # }
7976
+ #
7977
+ # @!attribute [rw] s3_config
7978
+ # The path to the file(s) in an Amazon Simple Storage Service (Amazon
7979
+ # S3) bucket, and an AWS Identity and Access Management (IAM) role
7980
+ # that Amazon Forecast can assume to access the file(s). Optionally,
7981
+ # includes an AWS Key Management Service (KMS) key. This object is
7982
+ # part of the DataSource object that is submitted in the
7983
+ # CreateDatasetImportJob request, and part of the DataDestination
7984
+ # object.
7985
+ # @return [Types::S3Config]
7986
+ #
7987
+ # @!attribute [rw] schema
7988
+ # Defines the fields of a dataset.
7989
+ # @return [Types::Schema]
7990
+ #
7991
+ # @!attribute [rw] format
7992
+ # The format of the replacement data, CSV or PARQUET.
7993
+ # @return [String]
7994
+ #
7995
+ # @!attribute [rw] timestamp_format
7996
+ # The timestamp format of the replacement data.
7997
+ # @return [String]
7998
+ #
7999
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/TimeSeriesReplacementsDataSource AWS API Documentation
8000
+ #
8001
+ class TimeSeriesReplacementsDataSource < Struct.new(
8002
+ :s3_config,
8003
+ :schema,
8004
+ :format,
8005
+ :timestamp_format)
8006
+ SENSITIVE = []
8007
+ include Aws::Structure
8008
+ end
8009
+
6947
8010
  # Defines the set of time series that are used to create the forecasts
6948
8011
  # in a `TimeSeriesIdentifiers` object.
6949
8012
  #
@@ -6992,6 +8055,52 @@ module Aws::ForecastService
6992
8055
  include Aws::Structure
6993
8056
  end
6994
8057
 
8058
+ # A transformation function is a pair of operations that select and
8059
+ # modify the rows in a related time series. You select the rows that you
8060
+ # want with a condition operation and you modify the rows with a
8061
+ # transformation operation. All conditions are joined with an AND
8062
+ # operation, meaning that all conditions must be true for the
8063
+ # transformation to be applied. Transformations are applied in the order
8064
+ # that they are listed.
8065
+ #
8066
+ # @note When making an API call, you may pass TimeSeriesTransformation
8067
+ # data as a hash:
8068
+ #
8069
+ # {
8070
+ # action: {
8071
+ # attribute_name: "Name", # required
8072
+ # operation: "ADD", # required, accepts ADD, SUBTRACT, MULTIPLY, DIVIDE
8073
+ # value: 1.0, # required
8074
+ # },
8075
+ # time_series_conditions: [
8076
+ # {
8077
+ # attribute_name: "Name", # required
8078
+ # attribute_value: "AttributeValue", # required
8079
+ # condition: "EQUALS", # required, accepts EQUALS, NOT_EQUALS, LESS_THAN, GREATER_THAN
8080
+ # },
8081
+ # ],
8082
+ # }
8083
+ #
8084
+ # @!attribute [rw] action
8085
+ # An array of actions that define a time series and how it is
8086
+ # transformed. These transformations create a new time series that is
8087
+ # used for the what-if analysis.
8088
+ # @return [Types::Action]
8089
+ #
8090
+ # @!attribute [rw] time_series_conditions
8091
+ # An array of conditions that define which members of the related time
8092
+ # series are transformed.
8093
+ # @return [Array<Types::TimeSeriesCondition>]
8094
+ #
8095
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/TimeSeriesTransformation AWS API Documentation
8096
+ #
8097
+ class TimeSeriesTransformation < Struct.new(
8098
+ :action,
8099
+ :time_series_conditions)
8100
+ SENSITIVE = []
8101
+ include Aws::Structure
8102
+ end
8103
+
6995
8104
  # @note When making an API call, you may pass UntagResourceRequest
6996
8105
  # data as a hash:
6997
8106
  #
@@ -7077,6 +8186,228 @@ module Aws::ForecastService
7077
8186
  include Aws::Structure
7078
8187
  end
7079
8188
 
8189
+ # Provides a summary of the what-if analysis properties used in the
8190
+ # ListWhatIfAnalyses operation. To get the complete set of properties,
8191
+ # call the DescribeWhatIfAnalysis operation, and provide the
8192
+ # `WhatIfAnalysisArn` that is listed in the summary.
8193
+ #
8194
+ # @!attribute [rw] what_if_analysis_arn
8195
+ # The Amazon Resource Name (ARN) of the what-if analysis.
8196
+ # @return [String]
8197
+ #
8198
+ # @!attribute [rw] what_if_analysis_name
8199
+ # The name of the what-if analysis.
8200
+ # @return [String]
8201
+ #
8202
+ # @!attribute [rw] forecast_arn
8203
+ # The Amazon Resource Name (ARN) of the baseline forecast that is
8204
+ # being used in this what-if analysis.
8205
+ # @return [String]
8206
+ #
8207
+ # @!attribute [rw] status
8208
+ # The status of the what-if analysis. States include:
8209
+ #
8210
+ # * `ACTIVE`
8211
+ #
8212
+ # * `CREATE_PENDING`, `CREATE_IN_PROGRESS`, `CREATE_FAILED`
8213
+ #
8214
+ # * `CREATE_STOPPING`, `CREATE_STOPPED`
8215
+ #
8216
+ # * `DELETE_PENDING`, `DELETE_IN_PROGRESS`, `DELETE_FAILED`
8217
+ #
8218
+ # <note markdown="1"> The `Status` of the what-if analysis must be `ACTIVE` before you can
8219
+ # access the analysis.
8220
+ #
8221
+ # </note>
8222
+ # @return [String]
8223
+ #
8224
+ # @!attribute [rw] message
8225
+ # If an error occurred, an informational message about the error.
8226
+ # @return [String]
8227
+ #
8228
+ # @!attribute [rw] creation_time
8229
+ # When the what-if analysis was created.
8230
+ # @return [Time]
8231
+ #
8232
+ # @!attribute [rw] last_modification_time
8233
+ # The last time the resource was modified. The timestamp depends on
8234
+ # the status of the job:
8235
+ #
8236
+ # * `CREATE_PENDING` - The `CreationTime`.
8237
+ #
8238
+ # * `CREATE_IN_PROGRESS` - The current timestamp.
8239
+ #
8240
+ # * `CREATE_STOPPING` - The current timestamp.
8241
+ #
8242
+ # * `CREATE_STOPPED` - When the job stopped.
8243
+ #
8244
+ # * `ACTIVE` or `CREATE_FAILED` - When the job finished or failed.
8245
+ # @return [Time]
8246
+ #
8247
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/WhatIfAnalysisSummary AWS API Documentation
8248
+ #
8249
+ class WhatIfAnalysisSummary < Struct.new(
8250
+ :what_if_analysis_arn,
8251
+ :what_if_analysis_name,
8252
+ :forecast_arn,
8253
+ :status,
8254
+ :message,
8255
+ :creation_time,
8256
+ :last_modification_time)
8257
+ SENSITIVE = []
8258
+ include Aws::Structure
8259
+ end
8260
+
8261
+ # Provides a summary of the what-if forecast export properties used in
8262
+ # the ListWhatIfForecastExports operation. To get the complete set of
8263
+ # properties, call the DescribeWhatIfForecastExport operation, and
8264
+ # provide the `WhatIfForecastExportArn` that is listed in the summary.
8265
+ #
8266
+ # @!attribute [rw] what_if_forecast_export_arn
8267
+ # The Amazon Resource Name (ARN) of the what-if forecast export.
8268
+ # @return [String]
8269
+ #
8270
+ # @!attribute [rw] what_if_forecast_arns
8271
+ # An array of Amazon Resource Names (ARNs) that define the what-if
8272
+ # forecasts included in the export.
8273
+ # @return [Array<String>]
8274
+ #
8275
+ # @!attribute [rw] what_if_forecast_export_name
8276
+ # The what-if forecast export name.
8277
+ # @return [String]
8278
+ #
8279
+ # @!attribute [rw] destination
8280
+ # The path to the Amazon Simple Storage Service (Amazon S3) bucket
8281
+ # where the forecast is exported.
8282
+ # @return [Types::DataDestination]
8283
+ #
8284
+ # @!attribute [rw] status
8285
+ # The status of the what-if forecast export. States include:
8286
+ #
8287
+ # * `ACTIVE`
8288
+ #
8289
+ # * `CREATE_PENDING`, `CREATE_IN_PROGRESS`, `CREATE_FAILED`
8290
+ #
8291
+ # * `CREATE_STOPPING`, `CREATE_STOPPED`
8292
+ #
8293
+ # * `DELETE_PENDING`, `DELETE_IN_PROGRESS`, `DELETE_FAILED`
8294
+ #
8295
+ # <note markdown="1"> The `Status` of the what-if analysis must be `ACTIVE` before you can
8296
+ # access the analysis.
8297
+ #
8298
+ # </note>
8299
+ # @return [String]
8300
+ #
8301
+ # @!attribute [rw] message
8302
+ # If an error occurred, an informational message about the error.
8303
+ # @return [String]
8304
+ #
8305
+ # @!attribute [rw] creation_time
8306
+ # When the what-if forecast export was created.
8307
+ # @return [Time]
8308
+ #
8309
+ # @!attribute [rw] last_modification_time
8310
+ # The last time the resource was modified. The timestamp depends on
8311
+ # the status of the job:
8312
+ #
8313
+ # * `CREATE_PENDING` - The `CreationTime`.
8314
+ #
8315
+ # * `CREATE_IN_PROGRESS` - The current timestamp.
8316
+ #
8317
+ # * `CREATE_STOPPING` - The current timestamp.
8318
+ #
8319
+ # * `CREATE_STOPPED` - When the job stopped.
8320
+ #
8321
+ # * `ACTIVE` or `CREATE_FAILED` - When the job finished or failed.
8322
+ # @return [Time]
8323
+ #
8324
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/WhatIfForecastExportSummary AWS API Documentation
8325
+ #
8326
+ class WhatIfForecastExportSummary < Struct.new(
8327
+ :what_if_forecast_export_arn,
8328
+ :what_if_forecast_arns,
8329
+ :what_if_forecast_export_name,
8330
+ :destination,
8331
+ :status,
8332
+ :message,
8333
+ :creation_time,
8334
+ :last_modification_time)
8335
+ SENSITIVE = []
8336
+ include Aws::Structure
8337
+ end
8338
+
8339
+ # Provides a summary of the what-if forecast properties used in the
8340
+ # ListWhatIfForecasts operation. To get the complete set of properties,
8341
+ # call the DescribeWhatIfForecast operation, and provide the
8342
+ # `WhatIfForecastArn` that is listed in the summary.
8343
+ #
8344
+ # @!attribute [rw] what_if_forecast_arn
8345
+ # The Amazon Resource Name (ARN) of the what-if forecast.
8346
+ # @return [String]
8347
+ #
8348
+ # @!attribute [rw] what_if_forecast_name
8349
+ # The name of the what-if forecast.
8350
+ # @return [String]
8351
+ #
8352
+ # @!attribute [rw] what_if_analysis_arn
8353
+ # The Amazon Resource Name (ARN) of the what-if analysis that contains
8354
+ # this what-if forecast.
8355
+ # @return [String]
8356
+ #
8357
+ # @!attribute [rw] status
8358
+ # The status of the what-if forecast. States include:
8359
+ #
8360
+ # * `ACTIVE`
8361
+ #
8362
+ # * `CREATE_PENDING`, `CREATE_IN_PROGRESS`, `CREATE_FAILED`
8363
+ #
8364
+ # * `CREATE_STOPPING`, `CREATE_STOPPED`
8365
+ #
8366
+ # * `DELETE_PENDING`, `DELETE_IN_PROGRESS`, `DELETE_FAILED`
8367
+ #
8368
+ # <note markdown="1"> The `Status` of the what-if analysis must be `ACTIVE` before you can
8369
+ # access the analysis.
8370
+ #
8371
+ # </note>
8372
+ # @return [String]
8373
+ #
8374
+ # @!attribute [rw] message
8375
+ # If an error occurred, an informational message about the error.
8376
+ # @return [String]
8377
+ #
8378
+ # @!attribute [rw] creation_time
8379
+ # When the what-if forecast was created.
8380
+ # @return [Time]
8381
+ #
8382
+ # @!attribute [rw] last_modification_time
8383
+ # The last time the resource was modified. The timestamp depends on
8384
+ # the status of the job:
8385
+ #
8386
+ # * `CREATE_PENDING` - The `CreationTime`.
8387
+ #
8388
+ # * `CREATE_IN_PROGRESS` - The current timestamp.
8389
+ #
8390
+ # * `CREATE_STOPPING` - The current timestamp.
8391
+ #
8392
+ # * `CREATE_STOPPED` - When the job stopped.
8393
+ #
8394
+ # * `ACTIVE` or `CREATE_FAILED` - When the job finished or failed.
8395
+ # @return [Time]
8396
+ #
8397
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/WhatIfForecastSummary AWS API Documentation
8398
+ #
8399
+ class WhatIfForecastSummary < Struct.new(
8400
+ :what_if_forecast_arn,
8401
+ :what_if_forecast_name,
8402
+ :what_if_analysis_arn,
8403
+ :status,
8404
+ :message,
8405
+ :creation_time,
8406
+ :last_modification_time)
8407
+ SENSITIVE = []
8408
+ include Aws::Structure
8409
+ end
8410
+
7080
8411
  # The metrics for a time range within the evaluation portion of a
7081
8412
  # dataset. This object is part of the EvaluationResult object.
7082
8413
  #