LexModelsV2 / Client / list_utterance_metrics
list_utterance_metrics#
- LexModelsV2.Client.list_utterance_metrics(**kwargs)#
Note
To use this API operation, your IAM role must have permissions to perform the ListAggregatedUtterances operation, which provides access to utterance-related analytics. See Viewing utterance statistics for the IAM policy to apply to the IAM role.
Retrieves summary metrics for the utterances in your bot. The following fields are required:
metrics
– A list of AnalyticsUtteranceMetric objects. In each object, use thename
field to specify the metric to calculate, thestatistic
field to specify whether to calculate theSum
,Average
, orMax
number, and theorder
field to specify whether to sort the results inAscending
orDescending
order.startDateTime
andendDateTime
– Define a time range for which you want to retrieve results.
Of the optional fields, you can organize the results in the following ways:
Use the
filters
field to filter the results, thegroupBy
field to specify categories by which to group the results, and thebinBy
field to specify time intervals by which to group the results.Use the
maxResults
field to limit the number of results to return in a single response and thenextToken
field to return the next batch of results if the response does not return the full set of results.
Note that an
order
field exists in bothbinBy
andmetrics
. Currently, you can specify it in either field, but not in both.See also: AWS API Documentation
Request Syntax
response = client.list_utterance_metrics( botId='string', startDateTime=datetime(2015, 1, 1), endDateTime=datetime(2015, 1, 1), metrics=[ { 'name': 'Count'|'Missed'|'Detected'|'UtteranceTimestamp', 'statistic': 'Sum'|'Avg'|'Max', 'order': 'Ascending'|'Descending' }, ], binBy=[ { 'name': 'ConversationStartTime'|'UtteranceTimestamp', 'interval': 'OneHour'|'OneDay', 'order': 'Ascending'|'Descending' }, ], groupBy=[ { 'name': 'UtteranceText'|'UtteranceState' }, ], attributes=[ { 'name': 'LastUsedIntent' }, ], filters=[ { 'name': 'BotAliasId'|'BotVersion'|'LocaleId'|'Modality'|'Channel'|'SessionId'|'OriginatingRequestId'|'UtteranceState'|'UtteranceText', 'operator': 'EQ'|'GT'|'LT', 'values': [ 'string', ] }, ], maxResults=123, nextToken='string' )
- Parameters:
botId (string) –
[REQUIRED]
The identifier for the bot for which you want to retrieve utterance metrics.
startDateTime (datetime) –
[REQUIRED]
The date and time that marks the beginning of the range of time for which you want to see utterance metrics.
endDateTime (datetime) –
[REQUIRED]
The date and time that marks the end of the range of time for which you want to see utterance metrics.
metrics (list) –
[REQUIRED]
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 method by which to organize the results.
(dict) –
Contains the metric and the summary statistic you want to calculate, and the order in which to sort the results, for the utterances across the user sessions with the bot.
name (string) – [REQUIRED]
The metric for which you want to get utterance summary statistics.
Count
– The number of utterances.Missed
– The number of utterances that Amazon Lex failed to recognize.Detected
– The number of utterances that Amazon Lex managed to detect.UtteranceTimestamp
– The date and time of the utterance.
statistic (string) – [REQUIRED]
The summary statistic to calculate.
Sum
– The total count for the category you provide inname
.Average
– The total count divided by the number of utterances in the category you provide inname
.Max
– The highest count in the category you provide inname
.
order (string) –
Specifies whether to sort the results in ascending or descending order.
binBy (list) –
A list of objects, each of which contains specifications for organizing the results by time.
(dict) –
Contains the time metric, interval, and method by which to bin the analytics data.
name (string) – [REQUIRED]
Specifies the time metric by which to bin the analytics data.
interval (string) – [REQUIRED]
Specifies the interval of time by which to bin the analytics data.
order (string) –
Specifies whether to bin the analytics data in ascending or descending order. If this field is left blank, the default order is by the key of the bin in descending order.
groupBy (list) –
A list of objects, each of which specifies how to group the results. You can group by the following criteria:
UtteranceText
– The transcription of the utterance.UtteranceState
– The state of the utterance. The possible states are detailed in Key definitions in the user guide.
(dict) –
Contains the category by which to group the utterances.
name (string) – [REQUIRED]
Specifies whether to group the utterances by their text or their state.
attributes (list) –
A list containing attributes related to the utterance that you want the response to return. The following attributes are possible:
LastUsedIntent
– The last used intent at the time of the utterance.
(dict) –
An object that specifies the last used intent at the time of the utterance as an attribute to return.
name (string) – [REQUIRED]
An attribute to return. The only available attribute is the intent that the bot mapped the utterance to.
filters (list) –
A list of objects, each of which describes a condition by which you want to filter the results.
(dict) –
Contains fields describing a condition by which to filter the utterances. The expression may be understood as
name
operator
values
. For example:LocaleId EQ Book
– The locale is the string “en”.UtteranceText CO help
– The text of the utterance contains the string “help”.
The operators that each filter supports are listed below:
BotAlias
–EQ
.BotVersion
–EQ
.LocaleId
–EQ
.Modality
–EQ
.Channel
–EQ
.SessionId
–EQ
.OriginatingRequestId
–EQ
.UtteranceState
–EQ
.UtteranceText
–EQ
,CO
.
name (string) – [REQUIRED]
The category by which to filter the utterances. The descriptions for each option are as follows:
BotAlias
– The name of the bot alias.BotVersion
– The version of the bot.LocaleId
– The locale of the bot.Modality
– The modality of the session with the bot (audio, DTMF, or text).Channel
– The channel that the bot is integrated with.SessionId
– The identifier of the session with the bot.OriginatingRequestId
– The identifier of the first request in a session.UtteranceState
– The state of the utterance.UtteranceText
– The text in the utterance.
operator (string) – [REQUIRED]
The operation by which to filter the category. The following operations are possible:
CO
– ContainsEQ
– EqualsGT
– Greater thanLT
– Less than
The operators that each filter supports are listed below:
BotAlias
–EQ
.BotVersion
–EQ
.LocaleId
–EQ
.Modality
–EQ
.Channel
–EQ
.SessionId
–EQ
.OriginatingRequestId
–EQ
.UtteranceState
–EQ
.UtteranceText
–EQ
,CO
.
values (list) – [REQUIRED]
An array containing the values of the category by which to apply the operator to filter the results. You can provide multiple values if the operator is
EQ
orCO
. If you provide multiple values, you filter for results that equal/contain any of the values. For example, if thename
,operator
, andvalues
fields areModality
,EQ
, and[Speech, Text]
, the operation filters for results where the modality was eitherSpeech
orText
.(string) –
maxResults (integer) – 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.
nextToken (string) –
If the response from the ListUtteranceMetrics 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 ListUtteranceMetrics request to return the next page of results. For a complete set of results, call the ListUtteranceMetrics operation until the nextToken returned in the response is null.
- Return type:
dict
- Returns:
Response Syntax
{ 'botId': 'string', 'results': [ { 'binKeys': [ { 'name': 'ConversationStartTime'|'UtteranceTimestamp', 'value': 123 }, ], 'groupByKeys': [ { 'name': 'UtteranceText'|'UtteranceState', 'value': 'string' }, ], 'metricsResults': [ { 'name': 'Count'|'Missed'|'Detected'|'UtteranceTimestamp', 'statistic': 'Sum'|'Avg'|'Max', 'value': 123.0 }, ], 'attributeResults': [ { 'lastUsedIntent': 'string' }, ] }, ], 'nextToken': 'string' }
Response Structure
(dict) –
botId (string) –
The identifier for the bot for which you retrieved utterance metrics.
results (list) –
The results for the utterance metrics.
(dict) –
An object containing the results for the utterance metrics you requested and the bin and/or group(s) they refer to, if applicable.
binKeys (list) –
A list of objects containing the criteria you requested for binning results and the values of the bins.
(dict) –
An object containing the criterion by which to bin the results and the value that defines that bin.
name (string) –
The criterion by which to bin the results.
value (integer) –
The value of the criterion that defines the bin.
groupByKeys (list) –
A list of objects containing the criteria you requested for grouping results and the values of the bins.
(dict) –
Contains the category by which the utterance analytics were grouped and the values for that category.
name (string) –
The category by which the utterance analytics were grouped.
value (string) –
A member of the category by which the utterance analytics were grouped.
metricsResults (list) –
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 method by which to organize the results.
(dict) –
An object containing the results for the utterance metric you requested.
name (string) –
The metric that you requested.
Count
– The number of utterances.Missed
– The number of utterances that Amazon Lex failed to recognize.Detected
– The number of utterances that Amazon Lex managed to detect.UtteranceTimestamp
– The date and time of the utterance.
statistic (string) –
The summary statistic that you requested to calculate.
Sum
– The total count for the category you provide inname
.Average
– The total count divided by the number of utterances in the category you provide inname
.Max
– The highest count in the category you provide inname
.
value (float) –
The value of the summary statistic for the metric that you requested.
attributeResults (list) –
A list of objects containing information about the last used intent at the time of an utterance.
(dict) –
An object containing the intent that the bot mapped the utterance to.
lastUsedIntent (string) –
The intent that the bot mapped the utterance to.
nextToken (string) –
If the response from the ListUtteranceMetrics 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 ListUtteranceMetrics request to return the next page of results. For a complete set of results, call the ListUtteranceMetrics operation until the nextToken returned in the response is null.
Exceptions
LexModelsV2.Client.exceptions.ThrottlingException
LexModelsV2.Client.exceptions.ValidationException
LexModelsV2.Client.exceptions.PreconditionFailedException
LexModelsV2.Client.exceptions.ServiceQuotaExceededException
LexModelsV2.Client.exceptions.InternalServerException