aws-sdk-forecastservice 1.36.0 → 1.38.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -30,7 +30,7 @@ require 'aws-sdk-core/plugins/http_checksum.rb'
30
30
  require 'aws-sdk-core/plugins/checksum_algorithm.rb'
31
31
  require 'aws-sdk-core/plugins/defaults_mode.rb'
32
32
  require 'aws-sdk-core/plugins/recursion_detection.rb'
33
- require 'aws-sdk-core/plugins/signature_v4.rb'
33
+ require 'aws-sdk-core/plugins/sign.rb'
34
34
  require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
35
35
 
36
36
  Aws::Plugins::GlobalConfiguration.add_identifier(:forecastservice)
@@ -79,8 +79,9 @@ module Aws::ForecastService
79
79
  add_plugin(Aws::Plugins::ChecksumAlgorithm)
80
80
  add_plugin(Aws::Plugins::DefaultsMode)
81
81
  add_plugin(Aws::Plugins::RecursionDetection)
82
- add_plugin(Aws::Plugins::SignatureV4)
82
+ add_plugin(Aws::Plugins::Sign)
83
83
  add_plugin(Aws::Plugins::Protocols::JsonRpc)
84
+ add_plugin(Aws::ForecastService::Plugins::Endpoints)
84
85
 
85
86
  # @overload initialize(options)
86
87
  # @param [Hash] options
@@ -297,6 +298,19 @@ module Aws::ForecastService
297
298
  # ** Please note ** When response stubbing is enabled, no HTTP
298
299
  # requests are made, and retries are disabled.
299
300
  #
301
+ # @option options [Aws::TokenProvider] :token_provider
302
+ # A Bearer Token Provider. This can be an instance of any one of the
303
+ # following classes:
304
+ #
305
+ # * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
306
+ # tokens.
307
+ #
308
+ # * `Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an
309
+ # access token generated from `aws login`.
310
+ #
311
+ # When `:token_provider` is not configured directly, the `Aws::TokenProviderChain`
312
+ # will be used to search for tokens configured for your profile in shared configuration files.
313
+ #
300
314
  # @option options [Boolean] :use_dualstack_endpoint
301
315
  # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
302
316
  # will be used if available.
@@ -310,6 +324,9 @@ module Aws::ForecastService
310
324
  # When `true`, request parameters are validated before
311
325
  # sending the request.
312
326
  #
327
+ # @option options [Aws::ForecastService::EndpointProvider] :endpoint_provider
328
+ # The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::ForecastService::EndpointParameters`
329
+ #
313
330
  # @option options [URI::HTTP,String] :http_proxy A proxy to send
314
331
  # requests through. Formatted like 'http://proxy.com:123'.
315
332
  #
@@ -2082,6 +2099,303 @@ module Aws::ForecastService
2082
2099
  req.send_request(options)
2083
2100
  end
2084
2101
 
2102
+ # What-if analysis is a scenario modeling technique where you make a
2103
+ # hypothetical change to a time series and compare the forecasts
2104
+ # generated by these changes against the baseline, unchanged time
2105
+ # series. It is important to remember that the purpose of a what-if
2106
+ # analysis is to understand how a forecast can change given different
2107
+ # modifications to the baseline time series.
2108
+ #
2109
+ # For example, imagine you are a clothing retailer who is considering an
2110
+ # end of season sale to clear space for new styles. After creating a
2111
+ # baseline forecast, you can use a what-if analysis to investigate how
2112
+ # different sales tactics might affect your goals. You could create a
2113
+ # scenario where everything is given a 25% markdown and another where
2114
+ # everything is given a fixed dollar markdown. You can create a scenario
2115
+ # where the sale lasts for 1 week and another where the sale lasts for 1
2116
+ # month. Your what-if analysis enables you to compare many different
2117
+ # scenarios against each other.
2118
+ #
2119
+ # Note that a what-if analysis is meant to display what the forecasting
2120
+ # model has learned and how it will behave in the scenarios that you are
2121
+ # evaluating. Do not blindly use the results of the what-if analysis to
2122
+ # make business decisions. For instance, forecasts might not be accurate
2123
+ # for novel scenarios where there is no reference available to determine
2124
+ # whether a forecast is good.
2125
+ #
2126
+ # The TimeSeriesSelector object defines the items that you want in the
2127
+ # what-if analysis.
2128
+ #
2129
+ # @option params [required, String] :what_if_analysis_name
2130
+ # The name of the what-if analysis. Each name must be unique.
2131
+ #
2132
+ # @option params [required, String] :forecast_arn
2133
+ # The Amazon Resource Name (ARN) of the baseline forecast.
2134
+ #
2135
+ # @option params [Types::TimeSeriesSelector] :time_series_selector
2136
+ # Defines the set of time series that are used in the what-if analysis
2137
+ # with a `TimeSeriesIdentifiers` object. What-if analyses are performed
2138
+ # only for the time series in this object.
2139
+ #
2140
+ # The `TimeSeriesIdentifiers` object needs the following information:
2141
+ #
2142
+ # * `DataSource`
2143
+ #
2144
+ # * `Format`
2145
+ #
2146
+ # * `Schema`
2147
+ #
2148
+ # @option params [Array<Types::Tag>] :tags
2149
+ # A list of [tags][1] to apply to the what if forecast.
2150
+ #
2151
+ #
2152
+ #
2153
+ # [1]: https://docs.aws.amazon.com/forecast/latest/dg/tagging-forecast-resources.html
2154
+ #
2155
+ # @return [Types::CreateWhatIfAnalysisResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2156
+ #
2157
+ # * {Types::CreateWhatIfAnalysisResponse#what_if_analysis_arn #what_if_analysis_arn} => String
2158
+ #
2159
+ # @example Request syntax with placeholder values
2160
+ #
2161
+ # resp = client.create_what_if_analysis({
2162
+ # what_if_analysis_name: "Name", # required
2163
+ # forecast_arn: "Arn", # required
2164
+ # time_series_selector: {
2165
+ # time_series_identifiers: {
2166
+ # data_source: {
2167
+ # s3_config: { # required
2168
+ # path: "S3Path", # required
2169
+ # role_arn: "Arn", # required
2170
+ # kms_key_arn: "KMSKeyArn",
2171
+ # },
2172
+ # },
2173
+ # schema: {
2174
+ # attributes: [
2175
+ # {
2176
+ # attribute_name: "Name",
2177
+ # attribute_type: "string", # accepts string, integer, float, timestamp, geolocation
2178
+ # },
2179
+ # ],
2180
+ # },
2181
+ # format: "Format",
2182
+ # },
2183
+ # },
2184
+ # tags: [
2185
+ # {
2186
+ # key: "TagKey", # required
2187
+ # value: "TagValue", # required
2188
+ # },
2189
+ # ],
2190
+ # })
2191
+ #
2192
+ # @example Response structure
2193
+ #
2194
+ # resp.what_if_analysis_arn #=> String
2195
+ #
2196
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/CreateWhatIfAnalysis AWS API Documentation
2197
+ #
2198
+ # @overload create_what_if_analysis(params = {})
2199
+ # @param [Hash] params ({})
2200
+ def create_what_if_analysis(params = {}, options = {})
2201
+ req = build_request(:create_what_if_analysis, params)
2202
+ req.send_request(options)
2203
+ end
2204
+
2205
+ # A what-if forecast is a forecast that is created from a modified
2206
+ # version of the baseline forecast. Each what-if forecast incorporates
2207
+ # either a replacement dataset or a set of transformations to the
2208
+ # original dataset.
2209
+ #
2210
+ # @option params [required, String] :what_if_forecast_name
2211
+ # The name of the what-if forecast. Names must be unique within each
2212
+ # what-if analysis.
2213
+ #
2214
+ # @option params [required, String] :what_if_analysis_arn
2215
+ # The Amazon Resource Name (ARN) of the what-if analysis.
2216
+ #
2217
+ # @option params [Array<Types::TimeSeriesTransformation>] :time_series_transformations
2218
+ # The transformations that are applied to the baseline time series. Each
2219
+ # transformation contains an action and a set of conditions. An action
2220
+ # is applied only when all conditions are met. If no conditions are
2221
+ # provided, the action is applied to all items.
2222
+ #
2223
+ # @option params [Types::TimeSeriesReplacementsDataSource] :time_series_replacements_data_source
2224
+ # The replacement time series dataset, which contains the rows that you
2225
+ # want to change in the related time series dataset. A replacement time
2226
+ # series does not need to contain all rows that are in the baseline
2227
+ # related time series. Include only the rows (measure-dimension
2228
+ # combinations) that you want to include in the what-if forecast. This
2229
+ # dataset is merged with the original time series to create a
2230
+ # transformed dataset that is used for the what-if analysis.
2231
+ #
2232
+ # This dataset should contain the items to modify (such as item\_id or
2233
+ # workforce\_type), any relevant dimensions, the timestamp column, and
2234
+ # at least one of the related time series columns. This file should not
2235
+ # contain duplicate timestamps for the same time series.
2236
+ #
2237
+ # Timestamps and item\_ids not included in this dataset are not included
2238
+ # in the what-if analysis.
2239
+ #
2240
+ # @option params [Array<Types::Tag>] :tags
2241
+ # A list of [tags][1] to apply to the what if forecast.
2242
+ #
2243
+ #
2244
+ #
2245
+ # [1]: https://docs.aws.amazon.com/forecast/latest/dg/tagging-forecast-resources.html
2246
+ #
2247
+ # @return [Types::CreateWhatIfForecastResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2248
+ #
2249
+ # * {Types::CreateWhatIfForecastResponse#what_if_forecast_arn #what_if_forecast_arn} => String
2250
+ #
2251
+ # @example Request syntax with placeholder values
2252
+ #
2253
+ # resp = client.create_what_if_forecast({
2254
+ # what_if_forecast_name: "Name", # required
2255
+ # what_if_analysis_arn: "Arn", # required
2256
+ # time_series_transformations: [
2257
+ # {
2258
+ # action: {
2259
+ # attribute_name: "Name", # required
2260
+ # operation: "ADD", # required, accepts ADD, SUBTRACT, MULTIPLY, DIVIDE
2261
+ # value: 1.0, # required
2262
+ # },
2263
+ # time_series_conditions: [
2264
+ # {
2265
+ # attribute_name: "Name", # required
2266
+ # attribute_value: "AttributeValue", # required
2267
+ # condition: "EQUALS", # required, accepts EQUALS, NOT_EQUALS, LESS_THAN, GREATER_THAN
2268
+ # },
2269
+ # ],
2270
+ # },
2271
+ # ],
2272
+ # time_series_replacements_data_source: {
2273
+ # s3_config: { # required
2274
+ # path: "S3Path", # required
2275
+ # role_arn: "Arn", # required
2276
+ # kms_key_arn: "KMSKeyArn",
2277
+ # },
2278
+ # schema: { # required
2279
+ # attributes: [
2280
+ # {
2281
+ # attribute_name: "Name",
2282
+ # attribute_type: "string", # accepts string, integer, float, timestamp, geolocation
2283
+ # },
2284
+ # ],
2285
+ # },
2286
+ # format: "Format",
2287
+ # timestamp_format: "TimestampFormat",
2288
+ # },
2289
+ # tags: [
2290
+ # {
2291
+ # key: "TagKey", # required
2292
+ # value: "TagValue", # required
2293
+ # },
2294
+ # ],
2295
+ # })
2296
+ #
2297
+ # @example Response structure
2298
+ #
2299
+ # resp.what_if_forecast_arn #=> String
2300
+ #
2301
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/CreateWhatIfForecast AWS API Documentation
2302
+ #
2303
+ # @overload create_what_if_forecast(params = {})
2304
+ # @param [Hash] params ({})
2305
+ def create_what_if_forecast(params = {}, options = {})
2306
+ req = build_request(:create_what_if_forecast, params)
2307
+ req.send_request(options)
2308
+ end
2309
+
2310
+ # Exports a forecast created by the CreateWhatIfForecast operation to
2311
+ # your Amazon Simple Storage Service (Amazon S3) bucket. The forecast
2312
+ # file name will match the following conventions:
2313
+ #
2314
+ # `≈<ForecastExportJobName>_<ExportTimestamp>_<PartNumber>`
2315
+ #
2316
+ # The &lt;ExportTimestamp&gt; component is in Java SimpleDateFormat
2317
+ # (yyyy-MM-ddTHH-mm-ssZ).
2318
+ #
2319
+ # You must specify a DataDestination object that includes an AWS
2320
+ # Identity and Access Management (IAM) role that Amazon Forecast can
2321
+ # assume to access the Amazon S3 bucket. For more information, see
2322
+ # aws-forecast-iam-roles.
2323
+ #
2324
+ # For more information, see howitworks-forecast.
2325
+ #
2326
+ # To get a list of all your what-if forecast export jobs, use the
2327
+ # ListWhatIfForecastExports operation.
2328
+ #
2329
+ # <note markdown="1"> The `Status` of the forecast export job must be `ACTIVE` before you
2330
+ # can access the forecast in your Amazon S3 bucket. To get the status,
2331
+ # use the DescribeWhatIfForecastExport operation.
2332
+ #
2333
+ # </note>
2334
+ #
2335
+ # @option params [required, String] :what_if_forecast_export_name
2336
+ # The name of the what-if forecast to export.
2337
+ #
2338
+ # @option params [required, Array<String>] :what_if_forecast_arns
2339
+ # The list of what-if forecast Amazon Resource Names (ARNs) to export.
2340
+ #
2341
+ # @option params [required, Types::DataDestination] :destination
2342
+ # The location where you want to save the forecast and an AWS Identity
2343
+ # and Access Management (IAM) role that Amazon Forecast can assume to
2344
+ # access the location. The forecast must be exported to an Amazon S3
2345
+ # bucket.
2346
+ #
2347
+ # If encryption is used, `Destination` must include an AWS Key
2348
+ # Management Service (KMS) key. The IAM role must allow Amazon Forecast
2349
+ # permission to access the key.
2350
+ #
2351
+ # @option params [Array<Types::Tag>] :tags
2352
+ # A list of [tags][1] to apply to the what if forecast.
2353
+ #
2354
+ #
2355
+ #
2356
+ # [1]: https://docs.aws.amazon.com/forecast/latest/dg/tagging-forecast-resources.html
2357
+ #
2358
+ # @option params [String] :format
2359
+ # The format of the exported data, CSV or PARQUET.
2360
+ #
2361
+ # @return [Types::CreateWhatIfForecastExportResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2362
+ #
2363
+ # * {Types::CreateWhatIfForecastExportResponse#what_if_forecast_export_arn #what_if_forecast_export_arn} => String
2364
+ #
2365
+ # @example Request syntax with placeholder values
2366
+ #
2367
+ # resp = client.create_what_if_forecast_export({
2368
+ # what_if_forecast_export_name: "Name", # required
2369
+ # what_if_forecast_arns: ["LongArn"], # required
2370
+ # destination: { # required
2371
+ # s3_config: { # required
2372
+ # path: "S3Path", # required
2373
+ # role_arn: "Arn", # required
2374
+ # kms_key_arn: "KMSKeyArn",
2375
+ # },
2376
+ # },
2377
+ # tags: [
2378
+ # {
2379
+ # key: "TagKey", # required
2380
+ # value: "TagValue", # required
2381
+ # },
2382
+ # ],
2383
+ # format: "Format",
2384
+ # })
2385
+ #
2386
+ # @example Response structure
2387
+ #
2388
+ # resp.what_if_forecast_export_arn #=> String
2389
+ #
2390
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/CreateWhatIfForecastExport AWS API Documentation
2391
+ #
2392
+ # @overload create_what_if_forecast_export(params = {})
2393
+ # @param [Hash] params ({})
2394
+ def create_what_if_forecast_export(params = {}, options = {})
2395
+ req = build_request(:create_what_if_forecast_export, params)
2396
+ req.send_request(options)
2397
+ end
2398
+
2085
2399
  # Deletes an Amazon Forecast dataset that was created using the
2086
2400
  # [CreateDataset][1] operation. You can only delete datasets that have a
2087
2401
  # status of `ACTIVE` or `CREATE_FAILED`. To get the status use the
@@ -2404,6 +2718,91 @@ module Aws::ForecastService
2404
2718
  req.send_request(options)
2405
2719
  end
2406
2720
 
2721
+ # Deletes a what-if analysis created using the CreateWhatIfAnalysis
2722
+ # operation. You can delete only what-if analyses that have a status of
2723
+ # `ACTIVE` or `CREATE_FAILED`. To get the status, use the
2724
+ # DescribeWhatIfAnalysis operation.
2725
+ #
2726
+ # You can't delete a what-if analysis while any of its forecasts are
2727
+ # being exported.
2728
+ #
2729
+ # @option params [required, String] :what_if_analysis_arn
2730
+ # The Amazon Resource Name (ARN) of the what-if analysis that you want
2731
+ # to delete.
2732
+ #
2733
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2734
+ #
2735
+ # @example Request syntax with placeholder values
2736
+ #
2737
+ # resp = client.delete_what_if_analysis({
2738
+ # what_if_analysis_arn: "Arn", # required
2739
+ # })
2740
+ #
2741
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/DeleteWhatIfAnalysis AWS API Documentation
2742
+ #
2743
+ # @overload delete_what_if_analysis(params = {})
2744
+ # @param [Hash] params ({})
2745
+ def delete_what_if_analysis(params = {}, options = {})
2746
+ req = build_request(:delete_what_if_analysis, params)
2747
+ req.send_request(options)
2748
+ end
2749
+
2750
+ # Deletes a what-if forecast created using the CreateWhatIfForecast
2751
+ # operation. You can delete only what-if forecasts that have a status of
2752
+ # `ACTIVE` or `CREATE_FAILED`. To get the status, use the
2753
+ # DescribeWhatIfForecast operation.
2754
+ #
2755
+ # You can't delete a what-if forecast while it is being exported. After
2756
+ # a what-if forecast is deleted, you can no longer query the what-if
2757
+ # analysis.
2758
+ #
2759
+ # @option params [required, String] :what_if_forecast_arn
2760
+ # The Amazon Resource Name (ARN) of the what-if forecast that you want
2761
+ # to delete.
2762
+ #
2763
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2764
+ #
2765
+ # @example Request syntax with placeholder values
2766
+ #
2767
+ # resp = client.delete_what_if_forecast({
2768
+ # what_if_forecast_arn: "LongArn", # required
2769
+ # })
2770
+ #
2771
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/DeleteWhatIfForecast AWS API Documentation
2772
+ #
2773
+ # @overload delete_what_if_forecast(params = {})
2774
+ # @param [Hash] params ({})
2775
+ def delete_what_if_forecast(params = {}, options = {})
2776
+ req = build_request(:delete_what_if_forecast, params)
2777
+ req.send_request(options)
2778
+ end
2779
+
2780
+ # Deletes a what-if forecast export created using the
2781
+ # CreateWhatIfForecastExport operation. You can delete only what-if
2782
+ # forecast exports that have a status of `ACTIVE` or `CREATE_FAILED`. To
2783
+ # get the status, use the DescribeWhatIfForecastExport operation.
2784
+ #
2785
+ # @option params [required, String] :what_if_forecast_export_arn
2786
+ # The Amazon Resource Name (ARN) of the what-if forecast export that you
2787
+ # want to delete.
2788
+ #
2789
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2790
+ #
2791
+ # @example Request syntax with placeholder values
2792
+ #
2793
+ # resp = client.delete_what_if_forecast_export({
2794
+ # what_if_forecast_export_arn: "LongArn", # required
2795
+ # })
2796
+ #
2797
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/DeleteWhatIfForecastExport AWS API Documentation
2798
+ #
2799
+ # @overload delete_what_if_forecast_export(params = {})
2800
+ # @param [Hash] params ({})
2801
+ def delete_what_if_forecast_export(params = {}, options = {})
2802
+ req = build_request(:delete_what_if_forecast_export, params)
2803
+ req.send_request(options)
2804
+ end
2805
+
2407
2806
  # Describes a predictor created using the CreateAutoPredictor operation.
2408
2807
  #
2409
2808
  # @option params [required, String] :predictor_arn
@@ -3196,6 +3595,210 @@ module Aws::ForecastService
3196
3595
  req.send_request(options)
3197
3596
  end
3198
3597
 
3598
+ # Describes the what-if analysis created using the CreateWhatIfAnalysis
3599
+ # operation.
3600
+ #
3601
+ # In addition to listing the properties provided in the
3602
+ # `CreateWhatIfAnalysis` request, this operation lists the following
3603
+ # properties:
3604
+ #
3605
+ # * `CreationTime`
3606
+ #
3607
+ # * `LastModificationTime`
3608
+ #
3609
+ # * `Message` - If an error occurred, information about the error.
3610
+ #
3611
+ # * `Status`
3612
+ #
3613
+ # @option params [required, String] :what_if_analysis_arn
3614
+ # The Amazon Resource Name (ARN) of the what-if analysis that you are
3615
+ # interested in.
3616
+ #
3617
+ # @return [Types::DescribeWhatIfAnalysisResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3618
+ #
3619
+ # * {Types::DescribeWhatIfAnalysisResponse#what_if_analysis_name #what_if_analysis_name} => String
3620
+ # * {Types::DescribeWhatIfAnalysisResponse#what_if_analysis_arn #what_if_analysis_arn} => String
3621
+ # * {Types::DescribeWhatIfAnalysisResponse#forecast_arn #forecast_arn} => String
3622
+ # * {Types::DescribeWhatIfAnalysisResponse#estimated_time_remaining_in_minutes #estimated_time_remaining_in_minutes} => Integer
3623
+ # * {Types::DescribeWhatIfAnalysisResponse#status #status} => String
3624
+ # * {Types::DescribeWhatIfAnalysisResponse#message #message} => String
3625
+ # * {Types::DescribeWhatIfAnalysisResponse#creation_time #creation_time} => Time
3626
+ # * {Types::DescribeWhatIfAnalysisResponse#last_modification_time #last_modification_time} => Time
3627
+ # * {Types::DescribeWhatIfAnalysisResponse#time_series_selector #time_series_selector} => Types::TimeSeriesSelector
3628
+ #
3629
+ # @example Request syntax with placeholder values
3630
+ #
3631
+ # resp = client.describe_what_if_analysis({
3632
+ # what_if_analysis_arn: "Arn", # required
3633
+ # })
3634
+ #
3635
+ # @example Response structure
3636
+ #
3637
+ # resp.what_if_analysis_name #=> String
3638
+ # resp.what_if_analysis_arn #=> String
3639
+ # resp.forecast_arn #=> String
3640
+ # resp.estimated_time_remaining_in_minutes #=> Integer
3641
+ # resp.status #=> String
3642
+ # resp.message #=> String
3643
+ # resp.creation_time #=> Time
3644
+ # resp.last_modification_time #=> Time
3645
+ # resp.time_series_selector.time_series_identifiers.data_source.s3_config.path #=> String
3646
+ # resp.time_series_selector.time_series_identifiers.data_source.s3_config.role_arn #=> String
3647
+ # resp.time_series_selector.time_series_identifiers.data_source.s3_config.kms_key_arn #=> String
3648
+ # resp.time_series_selector.time_series_identifiers.schema.attributes #=> Array
3649
+ # resp.time_series_selector.time_series_identifiers.schema.attributes[0].attribute_name #=> String
3650
+ # resp.time_series_selector.time_series_identifiers.schema.attributes[0].attribute_type #=> String, one of "string", "integer", "float", "timestamp", "geolocation"
3651
+ # resp.time_series_selector.time_series_identifiers.format #=> String
3652
+ #
3653
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/DescribeWhatIfAnalysis AWS API Documentation
3654
+ #
3655
+ # @overload describe_what_if_analysis(params = {})
3656
+ # @param [Hash] params ({})
3657
+ def describe_what_if_analysis(params = {}, options = {})
3658
+ req = build_request(:describe_what_if_analysis, params)
3659
+ req.send_request(options)
3660
+ end
3661
+
3662
+ # Describes the what-if forecast created using the CreateWhatIfForecast
3663
+ # operation.
3664
+ #
3665
+ # In addition to listing the properties provided in the
3666
+ # `CreateWhatIfForecast` request, this operation lists the following
3667
+ # properties:
3668
+ #
3669
+ # * `CreationTime`
3670
+ #
3671
+ # * `LastModificationTime`
3672
+ #
3673
+ # * `Message` - If an error occurred, information about the error.
3674
+ #
3675
+ # * `Status`
3676
+ #
3677
+ # @option params [required, String] :what_if_forecast_arn
3678
+ # The Amazon Resource Name (ARN) of the what-if forecast that you are
3679
+ # interested in.
3680
+ #
3681
+ # @return [Types::DescribeWhatIfForecastResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3682
+ #
3683
+ # * {Types::DescribeWhatIfForecastResponse#what_if_forecast_name #what_if_forecast_name} => String
3684
+ # * {Types::DescribeWhatIfForecastResponse#what_if_forecast_arn #what_if_forecast_arn} => String
3685
+ # * {Types::DescribeWhatIfForecastResponse#what_if_analysis_arn #what_if_analysis_arn} => String
3686
+ # * {Types::DescribeWhatIfForecastResponse#estimated_time_remaining_in_minutes #estimated_time_remaining_in_minutes} => Integer
3687
+ # * {Types::DescribeWhatIfForecastResponse#status #status} => String
3688
+ # * {Types::DescribeWhatIfForecastResponse#message #message} => String
3689
+ # * {Types::DescribeWhatIfForecastResponse#creation_time #creation_time} => Time
3690
+ # * {Types::DescribeWhatIfForecastResponse#last_modification_time #last_modification_time} => Time
3691
+ # * {Types::DescribeWhatIfForecastResponse#time_series_transformations #time_series_transformations} => Array&lt;Types::TimeSeriesTransformation&gt;
3692
+ # * {Types::DescribeWhatIfForecastResponse#time_series_replacements_data_source #time_series_replacements_data_source} => Types::TimeSeriesReplacementsDataSource
3693
+ # * {Types::DescribeWhatIfForecastResponse#forecast_types #forecast_types} => Array&lt;String&gt;
3694
+ #
3695
+ # @example Request syntax with placeholder values
3696
+ #
3697
+ # resp = client.describe_what_if_forecast({
3698
+ # what_if_forecast_arn: "LongArn", # required
3699
+ # })
3700
+ #
3701
+ # @example Response structure
3702
+ #
3703
+ # resp.what_if_forecast_name #=> String
3704
+ # resp.what_if_forecast_arn #=> String
3705
+ # resp.what_if_analysis_arn #=> String
3706
+ # resp.estimated_time_remaining_in_minutes #=> Integer
3707
+ # resp.status #=> String
3708
+ # resp.message #=> String
3709
+ # resp.creation_time #=> Time
3710
+ # resp.last_modification_time #=> Time
3711
+ # resp.time_series_transformations #=> Array
3712
+ # resp.time_series_transformations[0].action.attribute_name #=> String
3713
+ # resp.time_series_transformations[0].action.operation #=> String, one of "ADD", "SUBTRACT", "MULTIPLY", "DIVIDE"
3714
+ # resp.time_series_transformations[0].action.value #=> Float
3715
+ # resp.time_series_transformations[0].time_series_conditions #=> Array
3716
+ # resp.time_series_transformations[0].time_series_conditions[0].attribute_name #=> String
3717
+ # resp.time_series_transformations[0].time_series_conditions[0].attribute_value #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
3718
+ # resp.time_series_transformations[0].time_series_conditions[0].condition #=> String, one of "EQUALS", "NOT_EQUALS", "LESS_THAN", "GREATER_THAN"
3719
+ # resp.time_series_replacements_data_source.s3_config.path #=> String
3720
+ # resp.time_series_replacements_data_source.s3_config.role_arn #=> String
3721
+ # resp.time_series_replacements_data_source.s3_config.kms_key_arn #=> String
3722
+ # resp.time_series_replacements_data_source.schema.attributes #=> Array
3723
+ # resp.time_series_replacements_data_source.schema.attributes[0].attribute_name #=> String
3724
+ # resp.time_series_replacements_data_source.schema.attributes[0].attribute_type #=> String, one of "string", "integer", "float", "timestamp", "geolocation"
3725
+ # resp.time_series_replacements_data_source.format #=> String
3726
+ # resp.time_series_replacements_data_source.timestamp_format #=> String
3727
+ # resp.forecast_types #=> Array
3728
+ # resp.forecast_types[0] #=> String
3729
+ #
3730
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/DescribeWhatIfForecast AWS API Documentation
3731
+ #
3732
+ # @overload describe_what_if_forecast(params = {})
3733
+ # @param [Hash] params ({})
3734
+ def describe_what_if_forecast(params = {}, options = {})
3735
+ req = build_request(:describe_what_if_forecast, params)
3736
+ req.send_request(options)
3737
+ end
3738
+
3739
+ # Describes the what-if forecast export created using the
3740
+ # CreateWhatIfForecastExport operation.
3741
+ #
3742
+ # In addition to listing the properties provided in the
3743
+ # `CreateWhatIfForecastExport` request, this operation lists the
3744
+ # following properties:
3745
+ #
3746
+ # * `CreationTime`
3747
+ #
3748
+ # * `LastModificationTime`
3749
+ #
3750
+ # * `Message` - If an error occurred, information about the error.
3751
+ #
3752
+ # * `Status`
3753
+ #
3754
+ # @option params [required, String] :what_if_forecast_export_arn
3755
+ # The Amazon Resource Name (ARN) of the what-if forecast export that you
3756
+ # are interested in.
3757
+ #
3758
+ # @return [Types::DescribeWhatIfForecastExportResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3759
+ #
3760
+ # * {Types::DescribeWhatIfForecastExportResponse#what_if_forecast_export_arn #what_if_forecast_export_arn} => String
3761
+ # * {Types::DescribeWhatIfForecastExportResponse#what_if_forecast_export_name #what_if_forecast_export_name} => String
3762
+ # * {Types::DescribeWhatIfForecastExportResponse#what_if_forecast_arns #what_if_forecast_arns} => Array&lt;String&gt;
3763
+ # * {Types::DescribeWhatIfForecastExportResponse#destination #destination} => Types::DataDestination
3764
+ # * {Types::DescribeWhatIfForecastExportResponse#message #message} => String
3765
+ # * {Types::DescribeWhatIfForecastExportResponse#status #status} => String
3766
+ # * {Types::DescribeWhatIfForecastExportResponse#creation_time #creation_time} => Time
3767
+ # * {Types::DescribeWhatIfForecastExportResponse#estimated_time_remaining_in_minutes #estimated_time_remaining_in_minutes} => Integer
3768
+ # * {Types::DescribeWhatIfForecastExportResponse#last_modification_time #last_modification_time} => Time
3769
+ # * {Types::DescribeWhatIfForecastExportResponse#format #format} => String
3770
+ #
3771
+ # @example Request syntax with placeholder values
3772
+ #
3773
+ # resp = client.describe_what_if_forecast_export({
3774
+ # what_if_forecast_export_arn: "LongArn", # required
3775
+ # })
3776
+ #
3777
+ # @example Response structure
3778
+ #
3779
+ # resp.what_if_forecast_export_arn #=> String
3780
+ # resp.what_if_forecast_export_name #=> String
3781
+ # resp.what_if_forecast_arns #=> Array
3782
+ # resp.what_if_forecast_arns[0] #=> String
3783
+ # resp.destination.s3_config.path #=> String
3784
+ # resp.destination.s3_config.role_arn #=> String
3785
+ # resp.destination.s3_config.kms_key_arn #=> String
3786
+ # resp.message #=> String
3787
+ # resp.status #=> String
3788
+ # resp.creation_time #=> Time
3789
+ # resp.estimated_time_remaining_in_minutes #=> Integer
3790
+ # resp.last_modification_time #=> Time
3791
+ # resp.format #=> String
3792
+ #
3793
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/DescribeWhatIfForecastExport AWS API Documentation
3794
+ #
3795
+ # @overload describe_what_if_forecast_export(params = {})
3796
+ # @param [Hash] params ({})
3797
+ def describe_what_if_forecast_export(params = {}, options = {})
3798
+ req = build_request(:describe_what_if_forecast_export, params)
3799
+ req.send_request(options)
3800
+ end
3801
+
3199
3802
  # Provides metrics on the accuracy of the models that were trained by
3200
3803
  # the CreatePredictor operation. Use metrics to see how well the model
3201
3804
  # performed and to decide whether to use the predictor to generate a
@@ -4161,6 +4764,262 @@ module Aws::ForecastService
4161
4764
  req.send_request(options)
4162
4765
  end
4163
4766
 
4767
+ # Returns a list of what-if analyses created using the
4768
+ # CreateWhatIfAnalysis operation. For each what-if analysis, this
4769
+ # operation returns a summary of its properties, including its Amazon
4770
+ # Resource Name (ARN). You can retrieve the complete set of properties
4771
+ # by using the what-if analysis ARN with the DescribeWhatIfAnalysis
4772
+ # operation.
4773
+ #
4774
+ # @option params [String] :next_token
4775
+ # If the result of the previous request was truncated, the response
4776
+ # includes a `NextToken`. To retrieve the next set of results, use the
4777
+ # token in the next request. Tokens expire after 24 hours.
4778
+ #
4779
+ # @option params [Integer] :max_results
4780
+ # The number of items to return in the response.
4781
+ #
4782
+ # @option params [Array<Types::Filter>] :filters
4783
+ # An array of filters. For each filter, you provide a condition and a
4784
+ # match statement. The condition is either `IS` or `IS_NOT`, which
4785
+ # specifies whether to include or exclude the what-if analysis jobs that
4786
+ # match the statement from the list, respectively. The match statement
4787
+ # consists of a key and a value.
4788
+ #
4789
+ # **Filter properties**
4790
+ #
4791
+ # * `Condition` - The condition to apply. Valid values are `IS` and
4792
+ # `IS_NOT`. To include the what-if analysis jobs that match the
4793
+ # statement, specify `IS`. To exclude matching what-if analysis jobs,
4794
+ # specify `IS_NOT`.
4795
+ #
4796
+ # * `Key` - The name of the parameter to filter on. Valid values are
4797
+ # `WhatIfAnalysisArn` and `Status`.
4798
+ #
4799
+ # * `Value` - The value to match.
4800
+ #
4801
+ # For example, to list all jobs that export a forecast named
4802
+ # *electricityWhatIf*, specify the following filter:
4803
+ #
4804
+ # `"Filters": [ \{ "Condition": "IS", "Key": "WhatIfAnalysisArn",
4805
+ # "Value":
4806
+ # "arn:aws:forecast:us-west-2:<acct-id>:forecast/electricityWhatIf" \}
4807
+ # ]`
4808
+ #
4809
+ # @return [Types::ListWhatIfAnalysesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4810
+ #
4811
+ # * {Types::ListWhatIfAnalysesResponse#what_if_analyses #what_if_analyses} => Array&lt;Types::WhatIfAnalysisSummary&gt;
4812
+ # * {Types::ListWhatIfAnalysesResponse#next_token #next_token} => String
4813
+ #
4814
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4815
+ #
4816
+ # @example Request syntax with placeholder values
4817
+ #
4818
+ # resp = client.list_what_if_analyses({
4819
+ # next_token: "NextToken",
4820
+ # max_results: 1,
4821
+ # filters: [
4822
+ # {
4823
+ # key: "String", # required
4824
+ # value: "Arn", # required
4825
+ # condition: "IS", # required, accepts IS, IS_NOT
4826
+ # },
4827
+ # ],
4828
+ # })
4829
+ #
4830
+ # @example Response structure
4831
+ #
4832
+ # resp.what_if_analyses #=> Array
4833
+ # resp.what_if_analyses[0].what_if_analysis_arn #=> String
4834
+ # resp.what_if_analyses[0].what_if_analysis_name #=> String
4835
+ # resp.what_if_analyses[0].forecast_arn #=> String
4836
+ # resp.what_if_analyses[0].status #=> String
4837
+ # resp.what_if_analyses[0].message #=> String
4838
+ # resp.what_if_analyses[0].creation_time #=> Time
4839
+ # resp.what_if_analyses[0].last_modification_time #=> Time
4840
+ # resp.next_token #=> String
4841
+ #
4842
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/ListWhatIfAnalyses AWS API Documentation
4843
+ #
4844
+ # @overload list_what_if_analyses(params = {})
4845
+ # @param [Hash] params ({})
4846
+ def list_what_if_analyses(params = {}, options = {})
4847
+ req = build_request(:list_what_if_analyses, params)
4848
+ req.send_request(options)
4849
+ end
4850
+
4851
+ # Returns a list of what-if forecast exports created using the
4852
+ # CreateWhatIfForecastExport operation. For each what-if forecast
4853
+ # export, this operation returns a summary of its properties, including
4854
+ # its Amazon Resource Name (ARN). You can retrieve the complete set of
4855
+ # properties by using the what-if forecast export ARN with the
4856
+ # DescribeWhatIfForecastExport operation.
4857
+ #
4858
+ # @option params [String] :next_token
4859
+ # If the result of the previous request was truncated, the response
4860
+ # includes a `NextToken`. To retrieve the next set of results, use the
4861
+ # token in the next
 request. Tokens expire after 24 hours.
4862
+ #
4863
+ # @option params [Integer] :max_results
4864
+ # The number of items to return in the response.
4865
+ #
4866
+ # @option params [Array<Types::Filter>] :filters
4867
+ # An array of filters. For each filter, you provide a condition and a
4868
+ # match statement. The condition is either `IS` or `IS_NOT`, which
4869
+ # specifies whether to include or exclude the what-if forecast export
4870
+ # jobs that match the statement from the list, respectively. The match
4871
+ # statement consists of a key and a value.
4872
+ #
4873
+ # **Filter properties**
4874
+ #
4875
+ # * `Condition` - The condition to apply. Valid values are `IS` and
4876
+ # `IS_NOT`. To include the forecast export jobs that match the
4877
+ # statement, specify `IS`. To exclude matching forecast export jobs,
4878
+ # specify `IS_NOT`.
4879
+ #
4880
+ # * `Key` - The name of the parameter to filter on. Valid values are
4881
+ # `WhatIfForecastExportArn` and `Status`.
4882
+ #
4883
+ # * `Value` - The value to match.
4884
+ #
4885
+ # For example, to list all jobs that export a forecast named
4886
+ # *electricityWIFExport*, specify the following filter:
4887
+ #
4888
+ # `"Filters": [ \{ "Condition": "IS", "Key": "WhatIfForecastExportArn",
4889
+ # "Value":
4890
+ # "arn:aws:forecast:us-west-2:<acct-id>:forecast/electricityWIFExport"
4891
+ # \} ]`
4892
+ #
4893
+ # @return [Types::ListWhatIfForecastExportsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4894
+ #
4895
+ # * {Types::ListWhatIfForecastExportsResponse#what_if_forecast_exports #what_if_forecast_exports} => Array&lt;Types::WhatIfForecastExportSummary&gt;
4896
+ # * {Types::ListWhatIfForecastExportsResponse#next_token #next_token} => String
4897
+ #
4898
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4899
+ #
4900
+ # @example Request syntax with placeholder values
4901
+ #
4902
+ # resp = client.list_what_if_forecast_exports({
4903
+ # next_token: "NextToken",
4904
+ # max_results: 1,
4905
+ # filters: [
4906
+ # {
4907
+ # key: "String", # required
4908
+ # value: "Arn", # required
4909
+ # condition: "IS", # required, accepts IS, IS_NOT
4910
+ # },
4911
+ # ],
4912
+ # })
4913
+ #
4914
+ # @example Response structure
4915
+ #
4916
+ # resp.what_if_forecast_exports #=> Array
4917
+ # resp.what_if_forecast_exports[0].what_if_forecast_export_arn #=> String
4918
+ # resp.what_if_forecast_exports[0].what_if_forecast_arns #=> Array
4919
+ # resp.what_if_forecast_exports[0].what_if_forecast_arns[0] #=> String
4920
+ # resp.what_if_forecast_exports[0].what_if_forecast_export_name #=> String
4921
+ # resp.what_if_forecast_exports[0].destination.s3_config.path #=> String
4922
+ # resp.what_if_forecast_exports[0].destination.s3_config.role_arn #=> String
4923
+ # resp.what_if_forecast_exports[0].destination.s3_config.kms_key_arn #=> String
4924
+ # resp.what_if_forecast_exports[0].status #=> String
4925
+ # resp.what_if_forecast_exports[0].message #=> String
4926
+ # resp.what_if_forecast_exports[0].creation_time #=> Time
4927
+ # resp.what_if_forecast_exports[0].last_modification_time #=> Time
4928
+ # resp.next_token #=> String
4929
+ #
4930
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/ListWhatIfForecastExports AWS API Documentation
4931
+ #
4932
+ # @overload list_what_if_forecast_exports(params = {})
4933
+ # @param [Hash] params ({})
4934
+ def list_what_if_forecast_exports(params = {}, options = {})
4935
+ req = build_request(:list_what_if_forecast_exports, params)
4936
+ req.send_request(options)
4937
+ end
4938
+
4939
+ # Returns a list of what-if forecasts created using the
4940
+ # CreateWhatIfForecast operation. For each what-if forecast, this
4941
+ # operation returns a summary of its properties, including its Amazon
4942
+ # Resource Name (ARN). You can retrieve the complete set of properties
4943
+ # by using the what-if forecast ARN with the DescribeWhatIfForecast
4944
+ # operation.
4945
+ #
4946
+ # @option params [String] :next_token
4947
+ # If the result of the previous request was truncated, the response
4948
+ # includes a `NextToken`. To retrieve the next set of results, use the
4949
+ # token in the next
 request. Tokens expire after 24 hours.
4950
+ #
4951
+ # @option params [Integer] :max_results
4952
+ # The number of items to return in the response.
4953
+ #
4954
+ # @option params [Array<Types::Filter>] :filters
4955
+ # An array of filters. For each filter, you provide a condition and a
4956
+ # match statement. The condition is either `IS` or `IS_NOT`, which
4957
+ # specifies whether to include or exclude the what-if forecast export
4958
+ # jobs that match the statement from the list, respectively. The match
4959
+ # statement consists of a key and a value.
4960
+ #
4961
+ # **Filter properties**
4962
+ #
4963
+ # * `Condition` - The condition to apply. Valid values are `IS` and
4964
+ # `IS_NOT`. To include the forecast export jobs that match the
4965
+ # statement, specify `IS`. To exclude matching forecast export jobs,
4966
+ # specify `IS_NOT`.
4967
+ #
4968
+ # * `Key` - The name of the parameter to filter on. Valid values are
4969
+ # `WhatIfForecastArn` and `Status`.
4970
+ #
4971
+ # * `Value` - The value to match.
4972
+ #
4973
+ # For example, to list all jobs that export a forecast named
4974
+ # *electricityWhatIfForecast*, specify the following filter:
4975
+ #
4976
+ # `"Filters": [ \{ "Condition": "IS", "Key": "WhatIfForecastArn",
4977
+ # "Value":
4978
+ # "arn:aws:forecast:us-west-2:<acct-id>:forecast/electricityWhatIfForecast"
4979
+ # \} ]`
4980
+ #
4981
+ # @return [Types::ListWhatIfForecastsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4982
+ #
4983
+ # * {Types::ListWhatIfForecastsResponse#what_if_forecasts #what_if_forecasts} => Array&lt;Types::WhatIfForecastSummary&gt;
4984
+ # * {Types::ListWhatIfForecastsResponse#next_token #next_token} => String
4985
+ #
4986
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4987
+ #
4988
+ # @example Request syntax with placeholder values
4989
+ #
4990
+ # resp = client.list_what_if_forecasts({
4991
+ # next_token: "NextToken",
4992
+ # max_results: 1,
4993
+ # filters: [
4994
+ # {
4995
+ # key: "String", # required
4996
+ # value: "Arn", # required
4997
+ # condition: "IS", # required, accepts IS, IS_NOT
4998
+ # },
4999
+ # ],
5000
+ # })
5001
+ #
5002
+ # @example Response structure
5003
+ #
5004
+ # resp.what_if_forecasts #=> Array
5005
+ # resp.what_if_forecasts[0].what_if_forecast_arn #=> String
5006
+ # resp.what_if_forecasts[0].what_if_forecast_name #=> String
5007
+ # resp.what_if_forecasts[0].what_if_analysis_arn #=> String
5008
+ # resp.what_if_forecasts[0].status #=> String
5009
+ # resp.what_if_forecasts[0].message #=> String
5010
+ # resp.what_if_forecasts[0].creation_time #=> Time
5011
+ # resp.what_if_forecasts[0].last_modification_time #=> Time
5012
+ # resp.next_token #=> String
5013
+ #
5014
+ # @see http://docs.aws.amazon.com/goto/WebAPI/forecast-2018-06-26/ListWhatIfForecasts AWS API Documentation
5015
+ #
5016
+ # @overload list_what_if_forecasts(params = {})
5017
+ # @param [Hash] params ({})
5018
+ def list_what_if_forecasts(params = {}, options = {})
5019
+ req = build_request(:list_what_if_forecasts, params)
5020
+ req.send_request(options)
5021
+ end
5022
+
4164
5023
  # Resumes a stopped monitor resource.
4165
5024
  #
4166
5025
  # @option params [required, String] :resource_arn
@@ -4369,7 +5228,7 @@ module Aws::ForecastService
4369
5228
  params: params,
4370
5229
  config: config)
4371
5230
  context[:gem_name] = 'aws-sdk-forecastservice'
4372
- context[:gem_version] = '1.36.0'
5231
+ context[:gem_version] = '1.38.0'
4373
5232
  Seahorse::Client::Request.new(handlers, context)
4374
5233
  end
4375
5234