/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the models.lex.v2-2020-08-07.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.LexModelsV2.Model { /// /// Container for the parameters to the ListIntentMetrics operation. /// Retrieves summary metrics for the intents in your bot. The following fields are required: /// /// /// /// Of the optional fields, you can organize the results in the following ways: /// /// /// /// Note that an order field exists in both binBy and metrics. /// You can specify only one order in a given request. /// /// public partial class ListIntentMetricsRequest : AmazonLexModelsV2Request { private List _binBy = new List(); private string _botId; private DateTime? _endDateTime; private List _filters = new List(); private List _groupBy = new List(); private int? _maxResults; private List _metrics = new List(); private string _nextToken; private DateTime? _startDateTime; /// /// Gets and sets the property BinBy. /// /// A list of objects, each of which contains specifications for organizing the results /// by time. /// /// [AWSProperty(Min=1, Max=1)] public List BinBy { get { return this._binBy; } set { this._binBy = value; } } // Check to see if BinBy property is set internal bool IsSetBinBy() { return this._binBy != null && this._binBy.Count > 0; } /// /// Gets and sets the property BotId. /// /// The identifier for the bot for which you want to retrieve intent metrics. /// /// [AWSProperty(Required=true, Min=10, Max=10)] public string BotId { get { return this._botId; } set { this._botId = value; } } // Check to see if BotId property is set internal bool IsSetBotId() { return this._botId != null; } /// /// Gets and sets the property EndDateTime. /// /// The date and time that marks the end of the range of time for which you want to see /// intent metrics. /// /// [AWSProperty(Required=true)] public DateTime EndDateTime { get { return this._endDateTime.GetValueOrDefault(); } set { this._endDateTime = value; } } // Check to see if EndDateTime property is set internal bool IsSetEndDateTime() { return this._endDateTime.HasValue; } /// /// Gets and sets the property Filters. /// /// A list of objects, each of which describes a condition by which you want to filter /// the results. /// /// [AWSProperty(Min=1, Max=9)] public List Filters { get { return this._filters; } set { this._filters = value; } } // Check to see if Filters property is set internal bool IsSetFilters() { return this._filters != null && this._filters.Count > 0; } /// /// Gets and sets the property GroupBy. /// /// A list of objects, each of which specifies how to group the results. You can group /// by the following criteria: /// ///
  • /// /// IntentName – The name of the intent. /// ///
  • /// /// IntentEndState – The final state of the intent. The possible end states /// are detailed in Key /// definitions in the user guide. /// ///
///
[AWSProperty(Min=1, Max=3)] public List GroupBy { get { return this._groupBy; } set { this._groupBy = value; } } // Check to see if GroupBy property is set internal bool IsSetGroupBy() { return this._groupBy != null && this._groupBy.Count > 0; } /// /// Gets and sets the property MaxResults. /// /// The maximum number of results to return in each page of results. If there are fewer /// results than the maximum page size, only the actual number of results are returned. /// /// [AWSProperty(Min=1, Max=1000)] public int MaxResults { get { return this._maxResults.GetValueOrDefault(); } set { this._maxResults = value; } } // Check to see if MaxResults property is set internal bool IsSetMaxResults() { return this._maxResults.HasValue; } /// /// Gets and sets the property Metrics. /// /// A list of objects, each of which contains a metric you want to list, the statistic /// for the metric you want to return, and the order by which to organize the results. /// /// [AWSProperty(Required=true, Min=1, Max=5)] public List Metrics { get { return this._metrics; } set { this._metrics = value; } } // Check to see if Metrics property is set internal bool IsSetMetrics() { return this._metrics != null && this._metrics.Count > 0; } /// /// Gets and sets the property NextToken. /// /// If the response from the ListIntentMetrics operation contains more results than specified /// in the maxResults parameter, a token is returned in the response. /// /// /// /// Use the returned token in the nextToken parameter of a ListIntentMetrics request to /// return the next page of results. For a complete set of results, call the ListIntentMetrics /// operation until the nextToken returned in the response is null. /// /// public string NextToken { get { return this._nextToken; } set { this._nextToken = value; } } // Check to see if NextToken property is set internal bool IsSetNextToken() { return this._nextToken != null; } /// /// Gets and sets the property StartDateTime. /// /// The timestamp that marks the beginning of the range of time for which you want to /// see intent metrics. /// /// [AWSProperty(Required=true)] public DateTime StartDateTime { get { return this._startDateTime.GetValueOrDefault(); } set { this._startDateTime = value; } } // Check to see if StartDateTime property is set internal bool IsSetStartDateTime() { return this._startDateTime.HasValue; } } }