From e7bdeb8a795c2c9e610daedbff2e7af39f10aff3 Mon Sep 17 00:00:00 2001 From: aws-sdk-go-automation <43143561+aws-sdk-go-automation@users.noreply.github.com> Date: Tue, 18 Jul 2023 14:30:52 -0400 Subject: [PATCH] Release v1.44.302 (2023-07-18) (#4915) Release v1.44.302 (2023-07-18) === ### Service Client Updates * `service/codeguru-security`: Updates service documentation * `service/connect`: Updates service documentation * `service/es`: Updates service API * Regex Validation on the ElasticSearch Engine Version attribute * `service/m2`: Updates service API and documentation * `service/models.lex.v2`: Updates service API, documentation, and paginators * `service/snowball`: Updates service API, documentation, paginators, and examples * Adds support for RACK_5U_C. This is the first AWS Snow Family device designed to meet U.S. Military Ruggedization Standards (MIL-STD-810H) with 208 vCPU device in a portable, compact 5U, half-rack width form-factor. * `service/translate`: Updates service documentation --- CHANGELOG.md | 14 + aws/endpoints/defaults.go | 21 + aws/version.go | 2 +- .../codeguru-security/2018-05-10/docs-2.json | 6 +- models/apis/connect/2017-08-08/docs-2.json | 4 +- models/apis/es/2015-01-01/api-2.json | 2 +- models/apis/m2/2021-04-28/api-2.json | 297 +- models/apis/m2/2021-04-28/docs-2.json | 13 +- .../apis/models.lex.v2/2020-08-07/api-2.json | 1177 ++- .../apis/models.lex.v2/2020-08-07/docs-2.json | 869 +- .../2020-08-07/paginators-1.json | 30 + models/apis/snowball/2016-06-30/api-2.json | 107 +- models/apis/snowball/2016-06-30/docs-2.json | 76 +- .../apis/snowball/2016-06-30/examples-1.json | 26 + .../snowball/2016-06-30/paginators-1.json | 5 + models/apis/translate/2017-07-01/docs-2.json | 2 +- models/endpoints/endpoints.json | 16 +- service/codegurusecurity/api.go | 5 +- service/codegurusecurity/doc.go | 8 +- service/connect/api.go | 142 +- service/lexmodelsv2/api.go | 8751 ++++++++++++++--- .../lexmodelsv2/lexmodelsv2iface/interface.go | 46 + service/m2/api.go | 728 +- service/m2/m2iface/interface.go | 4 + service/snowball/api.go | 537 +- service/snowball/examples_test.go | 27 + service/snowball/snowballiface/interface.go | 7 + service/translate/api.go | 3 + 28 files changed, 11189 insertions(+), 1736 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index df86206f1b..c0e18886f1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,17 @@ +Release v1.44.302 (2023-07-18) +=== + +### Service Client Updates +* `service/codeguru-security`: Updates service documentation +* `service/connect`: Updates service documentation +* `service/es`: Updates service API + * Regex Validation on the ElasticSearch Engine Version attribute +* `service/m2`: Updates service API and documentation +* `service/models.lex.v2`: Updates service API, documentation, and paginators +* `service/snowball`: Updates service API, documentation, paginators, and examples + * Adds support for RACK_5U_C. This is the first AWS Snow Family device designed to meet U.S. Military Ruggedization Standards (MIL-STD-810H) with 208 vCPU device in a portable, compact 5U, half-rack width form-factor. +* `service/translate`: Updates service documentation + Release v1.44.301 (2023-07-17) === diff --git a/aws/endpoints/defaults.go b/aws/endpoints/defaults.go index b54f857117..aedb4f56a3 100644 --- a/aws/endpoints/defaults.go +++ b/aws/endpoints/defaults.go @@ -18069,6 +18069,9 @@ var awsPartition = partition{ endpointKey{ Region: "ap-southeast-2", }: endpoint{}, + endpointKey{ + Region: "ca-central-1", + }: endpoint{}, endpointKey{ Region: "eu-central-1", }: endpoint{}, @@ -18118,6 +18121,9 @@ var awsPartition = partition{ endpointKey{ Region: "ap-southeast-2", }: endpoint{}, + endpointKey{ + Region: "ca-central-1", + }: endpoint{}, endpointKey{ Region: "eu-central-1", }: endpoint{}, @@ -34273,6 +34279,15 @@ var awsusgovPartition = partition{ }, "codepipeline": service{ Endpoints: serviceEndpoints{ + endpointKey{ + Region: "fips-us-gov-east-1", + }: endpoint{ + Hostname: "codepipeline-fips.us-gov-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-gov-east-1", + }, + Deprecated: boxedTrue, + }, endpointKey{ Region: "fips-us-gov-west-1", }: endpoint{ @@ -34285,6 +34300,12 @@ var awsusgovPartition = partition{ endpointKey{ Region: "us-gov-east-1", }: endpoint{}, + endpointKey{ + Region: "us-gov-east-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "codepipeline-fips.us-gov-east-1.amazonaws.com", + }, endpointKey{ Region: "us-gov-west-1", }: endpoint{}, diff --git a/aws/version.go b/aws/version.go index a976cdd02a..096df39840 100644 --- a/aws/version.go +++ b/aws/version.go @@ -5,4 +5,4 @@ package aws const SDKName = "aws-sdk-go" // SDKVersion is the version of this SDK -const SDKVersion = "1.44.301" +const SDKVersion = "1.44.302" diff --git a/models/apis/codeguru-security/2018-05-10/docs-2.json b/models/apis/codeguru-security/2018-05-10/docs-2.json index fe21a12239..2d05bdf30c 100644 --- a/models/apis/codeguru-security/2018-05-10/docs-2.json +++ b/models/apis/codeguru-security/2018-05-10/docs-2.json @@ -1,6 +1,6 @@ { "version": "2.0", - "service": "

This section provides documentation for the Amazon CodeGuru Security API operations. CodeGuru Security is a service that uses program analysis and machine learning to detect security policy violations and vulnerabilities, and recommends ways to address these security risks.

By proactively detecting and providing recommendations for addressing security risks, CodeGuru Security improves the overall security of your application code. For more information about CodeGuru Security, see the Amazon CodeGuru Security User Guide.

", + "service": "

Amazon CodeGuru Security is in preview release and is subject to change.

This section provides documentation for the Amazon CodeGuru Security API operations. CodeGuru Security is a service that uses program analysis and machine learning to detect security policy violations and vulnerabilities, and recommends ways to address these security risks.

By proactively detecting and providing recommendations for addressing security risks, CodeGuru Security improves the overall security of your application code. For more information about CodeGuru Security, see the Amazon CodeGuru Security User Guide.

", "operations": { "BatchGetFindings": "

Returns a list of all requested findings.

", "CreateScan": "

Use to create a scan using code uploaded to an S3 bucket.

", @@ -10,7 +10,7 @@ "GetMetricsSummary": "

Returns top level metrics about an account from a specified date, including number of open findings, the categories with most findings, the scans with most open findings, and scans with most open critical findings.

", "GetScan": "

Returns details about a scan, including whether or not a scan has completed.

", "ListFindingsMetrics": "

Returns metrics about all findings in an account within a specified time range.

", - "ListScans": "

Returns a list of all the scans in an account.

", + "ListScans": "

Returns a list of all the standard scans in an account. Does not return express scans.

", "ListTagsForResource": "

Returns a list of all tags associated with a scan.

", "TagResource": "

Use to add one or more tags to an existing scan.

", "UntagResource": "

Use to remove one or more tags from an existing scan.

", @@ -31,7 +31,7 @@ "AnalysisType": { "base": null, "refs": { - "CreateScanRequest$analysisType": "

The type of analysis you want CodeGuru Security to perform in the scan, either Security or All. The Secuirty type only generates findings related to security. The All type generates both security findings and quality findings. Defaults to Security type if missing.

", + "CreateScanRequest$analysisType": "

The type of analysis you want CodeGuru Security to perform in the scan, either Security or All. The Security type only generates findings related to security. The All type generates both security findings and quality findings. Defaults to Security type if missing.

", "GetScanResponse$analysisType": "

The type of analysis CodeGuru Security performed in the scan, either Security or All. The Security type only generates findings related to security. The All type generates both security findings and quality findings.

" } }, diff --git a/models/apis/connect/2017-08-08/docs-2.json b/models/apis/connect/2017-08-08/docs-2.json index b366f91779..4a7044bb74 100644 --- a/models/apis/connect/2017-08-08/docs-2.json +++ b/models/apis/connect/2017-08-08/docs-2.json @@ -2364,7 +2364,7 @@ "FiltersV2List": { "base": null, "refs": { - "GetMetricDataV2Request$Filters": "

The filters to apply to returned metrics. You can filter on the following resources:

At least one filter must be passed from queues, routing profiles, agents, or user hierarchy groups.

To filter by phone number, see Create a historical metrics report in the Amazon Connect Administrator's Guide.

Note the following limits:

" + "GetMetricDataV2Request$Filters": "

The filters to apply to returned metrics. You can filter on the following resources:

At least one filter must be passed from queues, routing profiles, agents, or user hierarchy groups.

To filter by phone number, see Create a historical metrics report in the Amazon Connect Administrator's Guide.

Note the following limits:

" } }, "FunctionArn": { @@ -3802,7 +3802,7 @@ "MetricsV2": { "base": null, "refs": { - "GetMetricDataV2Request$Metrics": "

The metrics to retrieve. Specify the name, groupings, and filters for each metric. The following historical metrics are available. For a description of each metric, see Historical metrics definitions in the Amazon Connect Administrator's Guide.

AGENT_ADHERENT_TIME

This metric is available only in Amazon Web Services Regions where Forecasting, capacity planning, and scheduling is available.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AGENT_NON_RESPONSE

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AGENT_OCCUPANCY

Unit: Percentage

Valid groupings and filters: Routing Profile, Agent, Agent Hierarchy

AGENT_SCHEDULE_ADHERENCE

This metric is available only in Amazon Web Services Regions where Forecasting, capacity planning, and scheduling is available.

Unit: Percent

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AGENT_SCHEDULED_TIME

This metric is available only in Amazon Web Services Regions where Forecasting, capacity planning, and scheduling is available.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_ABANDON_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_AFTER_CONTACT_WORK_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_AGENT_CONNECTING_TIME

Unit: Seconds

Valid metric filter key: INITIATION_METHOD. For now, this metric only supports the following as INITIATION_METHOD: INBOUND | OUTBOUND | CALLBACK | API

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_HANDLE_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_HOLD_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_INTERACTION_AND_HOLD_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_INTERACTION_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile

AVG_QUEUE_ANSWER_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile

CONTACTS_ABANDONED

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

CONTACTS_CREATED

Unit: Count

Valid metric filter key: INITIATION_METHOD

Valid groupings and filters: Queue, Channel, Routing Profile

CONTACTS_HANDLED

Unit: Count

Valid metric filter key: INITIATION_METHOD, DISCONNECT_REASON

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

CONTACTS_HOLD_ABANDONS

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

CONTACTS_QUEUED

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

CONTACTS_TRANSFERRED_OUT

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

CONTACTS_TRANSFERRED_OUT_BY_AGENT

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

CONTACTS_TRANSFERRED_OUT_FROM_QUEUE

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

MAX_QUEUED_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

SERVICE_LEVEL

You can include up to 20 SERVICE_LEVEL metrics in a request.

Unit: Percent

Valid groupings and filters: Queue, Channel, Routing Profile

Threshold: For ThresholdValue, enter any whole number from 1 to 604800 (inclusive), in seconds. For Comparison, you must enter LT (for \"Less than\").

SUM_CONTACTS_ANSWERED_IN_X

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile

Threshold: For ThresholdValue, enter any whole number from 1 to 604800 (inclusive), in seconds. For Comparison, you must enter LT (for \"Less than\").

SUM_CONTACTS_ABANDONED_IN_X

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile

Threshold: For ThresholdValue, enter any whole number from 1 to 604800 (inclusive), in seconds. For Comparison, you must enter LT (for \"Less than\").

SUM_CONTACTS_DISCONNECTED

Valid metric filter key: DISCONNECT_REASON

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile

SUM_RETRY_CALLBACK_ATTEMPTS

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile

" + "GetMetricDataV2Request$Metrics": "

The metrics to retrieve. Specify the name, groupings, and filters for each metric. The following historical metrics are available. For a description of each metric, see Historical metrics definitions in the Amazon Connect Administrator's Guide.

AGENT_ADHERENT_TIME

This metric is available only in Amazon Web Services Regions where Forecasting, capacity planning, and scheduling is available.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AGENT_NON_RESPONSE

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AGENT_OCCUPANCY

Unit: Percentage

Valid groupings and filters: Routing Profile, Agent, Agent Hierarchy

AGENT_SCHEDULE_ADHERENCE

This metric is available only in Amazon Web Services Regions where Forecasting, capacity planning, and scheduling is available.

Unit: Percent

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AGENT_SCHEDULED_TIME

This metric is available only in Amazon Web Services Regions where Forecasting, capacity planning, and scheduling is available.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_ABANDON_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_AFTER_CONTACT_WORK_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature

Feature is a valid filter but not a valid grouping.

AVG_AGENT_CONNECTING_TIME

Unit: Seconds

Valid metric filter key: INITIATION_METHOD. For now, this metric only supports the following as INITIATION_METHOD: INBOUND | OUTBOUND | CALLBACK | API

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_AGENT_CONNECTING_TIME

Unit: Seconds

Valid metric filter key: INITIATION_METHOD. For now, this metric only supports the following as INITIATION_METHOD: INBOUND | OUTBOUND | CALLBACK | API

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_CONTACT_DURATION

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature

Feature is a valid filter but not a valid grouping.

AVG_CONVERSATION_DURATION

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_GREETING_TIME_AGENT

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_HANDLE_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature

Feature is a valid filter but not a valid grouping.

AVG_HOLD_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature

Feature is a valid filter but not a valid grouping.

AVG_HOLDS

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature

Feature is a valid filter but not a valid grouping.

AVG_INTERACTION_AND_HOLD_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_INTERACTION_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Feature

Feature is a valid filter but not a valid grouping.

AVG_INTERRUPTIONS_AGENT

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_INTERRUPTION_TIME_AGENT

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_NON_TALK_TIME

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_QUEUE_ANSWER_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Feature

Feature is a valid filter but not a valid grouping.

AVG_TALK_TIME

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_TALK_TIME_AGENT

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

AVG_TALK_TIME_CUSTOMER

This metric is available only for contacts analyzed by Contact Lens conversational analytics.

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

CONTACTS_ABANDONED

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

CONTACTS_CREATED

Unit: Count

Valid metric filter key: INITIATION_METHOD

Valid groupings and filters: Queue, Channel, Routing Profile, Feature

Feature is a valid filter but not a valid grouping.

CONTACTS_HANDLED

Unit: Count

Valid metric filter key: INITIATION_METHOD, DISCONNECT_REASON

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature

Feature is a valid filter but not a valid grouping.

CONTACTS_HOLD_ABANDONS

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

CONTACTS_QUEUED

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

CONTACTS_TRANSFERRED_OUT

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy, Feature

Feature is a valid filter but not a valid grouping.

CONTACTS_TRANSFERRED_OUT_BY_AGENT

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

CONTACTS_TRANSFERRED_OUT_FROM_QUEUE

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

MAX_QUEUED_TIME

Unit: Seconds

Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent Hierarchy

SERVICE_LEVEL

You can include up to 20 SERVICE_LEVEL metrics in a request.

Unit: Percent

Valid groupings and filters: Queue, Channel, Routing Profile

Threshold: For ThresholdValue, enter any whole number from 1 to 604800 (inclusive), in seconds. For Comparison, you must enter LT (for \"Less than\").

SUM_CONTACTS_ANSWERED_IN_X

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile

Threshold: For ThresholdValue, enter any whole number from 1 to 604800 (inclusive), in seconds. For Comparison, you must enter LT (for \"Less than\").

SUM_CONTACTS_ABANDONED_IN_X

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile

Threshold: For ThresholdValue, enter any whole number from 1 to 604800 (inclusive), in seconds. For Comparison, you must enter LT (for \"Less than\").

SUM_CONTACTS_DISCONNECTED

Valid metric filter key: DISCONNECT_REASON

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile

SUM_RETRY_CALLBACK_ATTEMPTS

Unit: Count

Valid groupings and filters: Queue, Channel, Routing Profile

" } }, "MinutesLimit60": { diff --git a/models/apis/es/2015-01-01/api-2.json b/models/apis/es/2015-01-01/api-2.json index c9a5696275..b9a9c9eeeb 100644 --- a/models/apis/es/2015-01-01/api-2.json +++ b/models/apis/es/2015-01-01/api-2.json @@ -1984,7 +1984,7 @@ }, "ElasticsearchVersionString":{ "type":"string", - "pattern":"^[0-9]{1}\\.[0-9]{1,2}$|^OpenSearch_[0-9]{1,2}\\.[0-9]{1,2}$" + "pattern":"^[0-9]{1}\\.[0-9]{1,2}$|^OpenSearch_[0-9]{1,2}\\.[0-9]{1,2}$|^OS_[0-9]{1,2}\\.[0-9]{1,2}$" }, "EncryptionAtRestOptions":{ "type":"structure", diff --git a/models/apis/m2/2021-04-28/api-2.json b/models/apis/m2/2021-04-28/api-2.json index 7565fc0d18..4e9f53526a 100644 --- a/models/apis/m2/2021-04-28/api-2.json +++ b/models/apis/m2/2021-04-28/api-2.json @@ -22,12 +22,12 @@ "input":{"shape":"CancelBatchJobExecutionRequest"}, "output":{"shape":"CancelBatchJobExecutionResponse"}, "errors":[ - {"shape":"ValidationException"}, - {"shape":"ConflictException"}, - {"shape":"InternalServerException"}, - {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, {"shape":"ThrottlingException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"AccessDeniedException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} ] }, "CreateApplication":{ @@ -40,12 +40,12 @@ "input":{"shape":"CreateApplicationRequest"}, "output":{"shape":"CreateApplicationResponse"}, "errors":[ - {"shape":"ValidationException"}, {"shape":"ServiceQuotaExceededException"}, - {"shape":"ConflictException"}, - {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, {"shape":"AccessDeniedException"}, - {"shape":"ThrottlingException"} + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} ], "idempotent":true }, @@ -59,13 +59,13 @@ "input":{"shape":"CreateDataSetImportTaskRequest"}, "output":{"shape":"CreateDataSetImportTaskResponse"}, "errors":[ - {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, {"shape":"ServiceQuotaExceededException"}, - {"shape":"ConflictException"}, - {"shape":"InternalServerException"}, - {"shape":"AccessDeniedException"}, {"shape":"ThrottlingException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"AccessDeniedException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} ], "idempotent":true }, @@ -79,13 +79,13 @@ "input":{"shape":"CreateDeploymentRequest"}, "output":{"shape":"CreateDeploymentResponse"}, "errors":[ - {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, {"shape":"ServiceQuotaExceededException"}, - {"shape":"ConflictException"}, - {"shape":"InternalServerException"}, - {"shape":"AccessDeniedException"}, {"shape":"ThrottlingException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"AccessDeniedException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} ], "idempotent":true }, @@ -99,12 +99,12 @@ "input":{"shape":"CreateEnvironmentRequest"}, "output":{"shape":"CreateEnvironmentResponse"}, "errors":[ - {"shape":"ValidationException"}, {"shape":"ServiceQuotaExceededException"}, - {"shape":"ConflictException"}, - {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, {"shape":"AccessDeniedException"}, - {"shape":"ThrottlingException"} + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} ], "idempotent":true }, @@ -118,11 +118,11 @@ "input":{"shape":"DeleteApplicationRequest"}, "output":{"shape":"DeleteApplicationResponse"}, "errors":[ - {"shape":"ValidationException"}, - {"shape":"ConflictException"}, - {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, {"shape":"AccessDeniedException"}, - {"shape":"ThrottlingException"} + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} ], "idempotent":true }, @@ -136,12 +136,12 @@ "input":{"shape":"DeleteApplicationFromEnvironmentRequest"}, "output":{"shape":"DeleteApplicationFromEnvironmentResponse"}, "errors":[ - {"shape":"ValidationException"}, - {"shape":"ConflictException"}, - {"shape":"InternalServerException"}, - {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, {"shape":"ThrottlingException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"AccessDeniedException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} ] }, "DeleteEnvironment":{ @@ -154,11 +154,11 @@ "input":{"shape":"DeleteEnvironmentRequest"}, "output":{"shape":"DeleteEnvironmentResponse"}, "errors":[ - {"shape":"ValidationException"}, - {"shape":"ConflictException"}, - {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, {"shape":"AccessDeniedException"}, - {"shape":"ThrottlingException"} + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} ], "idempotent":true }, @@ -172,11 +172,11 @@ "input":{"shape":"GetApplicationRequest"}, "output":{"shape":"GetApplicationResponse"}, "errors":[ - {"shape":"ValidationException"}, - {"shape":"InternalServerException"}, - {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, {"shape":"ThrottlingException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} ] }, "GetApplicationVersion":{ @@ -189,11 +189,11 @@ "input":{"shape":"GetApplicationVersionRequest"}, "output":{"shape":"GetApplicationVersionResponse"}, "errors":[ - {"shape":"ValidationException"}, - {"shape":"InternalServerException"}, - {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, {"shape":"ThrottlingException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} ] }, "GetBatchJobExecution":{ @@ -206,11 +206,11 @@ "input":{"shape":"GetBatchJobExecutionRequest"}, "output":{"shape":"GetBatchJobExecutionResponse"}, "errors":[ - {"shape":"ValidationException"}, - {"shape":"InternalServerException"}, - {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, {"shape":"ThrottlingException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} ] }, "GetDataSetDetails":{ @@ -223,11 +223,11 @@ "input":{"shape":"GetDataSetDetailsRequest"}, "output":{"shape":"GetDataSetDetailsResponse"}, "errors":[ - {"shape":"ValidationException"}, - {"shape":"InternalServerException"}, - {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, {"shape":"ThrottlingException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} ] }, "GetDataSetImportTask":{ @@ -240,11 +240,11 @@ "input":{"shape":"GetDataSetImportTaskRequest"}, "output":{"shape":"GetDataSetImportTaskResponse"}, "errors":[ - {"shape":"ValidationException"}, - {"shape":"InternalServerException"}, - {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, {"shape":"ThrottlingException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} ] }, "GetDeployment":{ @@ -257,11 +257,11 @@ "input":{"shape":"GetDeploymentRequest"}, "output":{"shape":"GetDeploymentResponse"}, "errors":[ - {"shape":"ValidationException"}, - {"shape":"InternalServerException"}, - {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, {"shape":"ThrottlingException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} ] }, "GetEnvironment":{ @@ -274,11 +274,25 @@ "input":{"shape":"GetEnvironmentRequest"}, "output":{"shape":"GetEnvironmentResponse"}, "errors":[ - {"shape":"ValidationException"}, - {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} + ] + }, + "GetSignedBluinsightsUrl":{ + "name":"GetSignedBluinsightsUrl", + "http":{ + "method":"GET", + "requestUri":"/signed-bi-url", + "responseCode":200 + }, + "output":{"shape":"GetSignedBluinsightsUrlResponse"}, + "errors":[ {"shape":"ThrottlingException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"} ] }, "ListApplicationVersions":{ @@ -291,11 +305,11 @@ "input":{"shape":"ListApplicationVersionsRequest"}, "output":{"shape":"ListApplicationVersionsResponse"}, "errors":[ - {"shape":"ValidationException"}, - {"shape":"InternalServerException"}, - {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, {"shape":"ThrottlingException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} ] }, "ListApplications":{ @@ -308,10 +322,10 @@ "input":{"shape":"ListApplicationsRequest"}, "output":{"shape":"ListApplicationsResponse"}, "errors":[ - {"shape":"ValidationException"}, - {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, {"shape":"AccessDeniedException"}, - {"shape":"ThrottlingException"} + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} ] }, "ListBatchJobDefinitions":{ @@ -324,11 +338,11 @@ "input":{"shape":"ListBatchJobDefinitionsRequest"}, "output":{"shape":"ListBatchJobDefinitionsResponse"}, "errors":[ - {"shape":"ValidationException"}, - {"shape":"InternalServerException"}, - {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, {"shape":"ThrottlingException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} ] }, "ListBatchJobExecutions":{ @@ -341,11 +355,11 @@ "input":{"shape":"ListBatchJobExecutionsRequest"}, "output":{"shape":"ListBatchJobExecutionsResponse"}, "errors":[ - {"shape":"ValidationException"}, - {"shape":"InternalServerException"}, - {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, {"shape":"ThrottlingException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} ] }, "ListDataSetImportHistory":{ @@ -358,11 +372,11 @@ "input":{"shape":"ListDataSetImportHistoryRequest"}, "output":{"shape":"ListDataSetImportHistoryResponse"}, "errors":[ - {"shape":"ValidationException"}, - {"shape":"InternalServerException"}, - {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, {"shape":"ThrottlingException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} ] }, "ListDataSets":{ @@ -375,11 +389,11 @@ "input":{"shape":"ListDataSetsRequest"}, "output":{"shape":"ListDataSetsResponse"}, "errors":[ - {"shape":"ValidationException"}, - {"shape":"InternalServerException"}, - {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, {"shape":"ThrottlingException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} ] }, "ListDeployments":{ @@ -392,11 +406,11 @@ "input":{"shape":"ListDeploymentsRequest"}, "output":{"shape":"ListDeploymentsResponse"}, "errors":[ - {"shape":"ValidationException"}, - {"shape":"InternalServerException"}, - {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, {"shape":"ThrottlingException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} ] }, "ListEngineVersions":{ @@ -409,10 +423,10 @@ "input":{"shape":"ListEngineVersionsRequest"}, "output":{"shape":"ListEngineVersionsResponse"}, "errors":[ - {"shape":"ValidationException"}, - {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, {"shape":"AccessDeniedException"}, - {"shape":"ThrottlingException"} + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} ] }, "ListEnvironments":{ @@ -425,10 +439,10 @@ "input":{"shape":"ListEnvironmentsRequest"}, "output":{"shape":"ListEnvironmentsResponse"}, "errors":[ - {"shape":"ValidationException"}, - {"shape":"InternalServerException"}, + {"shape":"ThrottlingException"}, {"shape":"AccessDeniedException"}, - {"shape":"ThrottlingException"} + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} ] }, "ListTagsForResource":{ @@ -441,11 +455,11 @@ "input":{"shape":"ListTagsForResourceRequest"}, "output":{"shape":"ListTagsForResourceResponse"}, "errors":[ - {"shape":"ValidationException"}, - {"shape":"InternalServerException"}, - {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, {"shape":"ThrottlingException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} ] }, "StartApplication":{ @@ -458,12 +472,12 @@ "input":{"shape":"StartApplicationRequest"}, "output":{"shape":"StartApplicationResponse"}, "errors":[ - {"shape":"ValidationException"}, - {"shape":"ConflictException"}, - {"shape":"InternalServerException"}, - {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, {"shape":"ThrottlingException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"AccessDeniedException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} ] }, "StartBatchJob":{ @@ -476,12 +490,12 @@ "input":{"shape":"StartBatchJobRequest"}, "output":{"shape":"StartBatchJobResponse"}, "errors":[ - {"shape":"ValidationException"}, - {"shape":"ConflictException"}, - {"shape":"InternalServerException"}, - {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, {"shape":"ThrottlingException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"AccessDeniedException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} ] }, "StopApplication":{ @@ -494,12 +508,12 @@ "input":{"shape":"StopApplicationRequest"}, "output":{"shape":"StopApplicationResponse"}, "errors":[ - {"shape":"ValidationException"}, - {"shape":"ConflictException"}, - {"shape":"InternalServerException"}, - {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, {"shape":"ThrottlingException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"AccessDeniedException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} ] }, "TagResource":{ @@ -512,12 +526,12 @@ "input":{"shape":"TagResourceRequest"}, "output":{"shape":"TagResourceResponse"}, "errors":[ - {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, {"shape":"ServiceQuotaExceededException"}, - {"shape":"InternalServerException"}, - {"shape":"AccessDeniedException"}, {"shape":"ThrottlingException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} ] }, "UntagResource":{ @@ -530,11 +544,11 @@ "input":{"shape":"UntagResourceRequest"}, "output":{"shape":"UntagResourceResponse"}, "errors":[ - {"shape":"ValidationException"}, - {"shape":"InternalServerException"}, - {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, {"shape":"ThrottlingException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"AccessDeniedException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} ] }, "UpdateApplication":{ @@ -547,12 +561,12 @@ "input":{"shape":"UpdateApplicationRequest"}, "output":{"shape":"UpdateApplicationResponse"}, "errors":[ - {"shape":"ValidationException"}, - {"shape":"ConflictException"}, - {"shape":"InternalServerException"}, - {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, {"shape":"ThrottlingException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"AccessDeniedException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} ] }, "UpdateEnvironment":{ @@ -565,13 +579,13 @@ "input":{"shape":"UpdateEnvironmentRequest"}, "output":{"shape":"UpdateEnvironmentResponse"}, "errors":[ - {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, {"shape":"ServiceQuotaExceededException"}, - {"shape":"ConflictException"}, - {"shape":"InternalServerException"}, - {"shape":"AccessDeniedException"}, {"shape":"ThrottlingException"}, - {"shape":"ResourceNotFoundException"} + {"shape":"AccessDeniedException"}, + {"shape":"ConflictException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"} ] } }, @@ -806,9 +820,7 @@ }, "CapacityValue":{ "type":"integer", - "box":true, - "max":100, - "min":1 + "box":true }, "ConflictException":{ "type":"structure", @@ -1235,9 +1247,9 @@ "enum":[ "Creating", "Available", + "Updating", "Deleting", - "Failed", - "Updating" + "Failed" ] }, "EnvironmentSummary":{ @@ -1606,6 +1618,13 @@ "vpcId":{"shape":"String50"} } }, + "GetSignedBluinsightsUrlResponse":{ + "type":"structure", + "required":["signedBiUrl"], + "members":{ + "signedBiUrl":{"shape":"String"} + } + }, "HighAvailabilityConfig":{ "type":"structure", "required":["desiredCapacity"], @@ -1991,7 +2010,7 @@ "MaxResults":{ "type":"integer", "box":true, - "max":100, + "max":2000, "min":1 }, "NextToken":{ diff --git a/models/apis/m2/2021-04-28/docs-2.json b/models/apis/m2/2021-04-28/docs-2.json index dcbc6b101e..3997f31331 100644 --- a/models/apis/m2/2021-04-28/docs-2.json +++ b/models/apis/m2/2021-04-28/docs-2.json @@ -17,6 +17,7 @@ "GetDataSetImportTask": "

Gets the status of a data set import task initiated with the CreateDataSetImportTask operation.

", "GetDeployment": "

Gets details of a specific deployment with a given deployment identifier.

", "GetEnvironment": "

Describes a specific runtime environment.

", + "GetSignedBluinsightsUrl": "

Gets a single sign-on URL that can be used to connect to AWS Blu Insights.

", "ListApplicationVersions": "

Returns a list of the application versions for a specific application.

", "ListApplications": "

Lists the applications associated with a specific Amazon Web Services account. You can provide the unique identifier of a specific runtime environment in a query parameter to see all applications associated with that environment.

", "ListBatchJobDefinitions": "

Lists all the available batch job definitions based on the batch job resources uploaded during the application creation. You can use the batch job definitions in the list to start a batch job.

", @@ -106,7 +107,7 @@ "ApplicationSummary$applicationArn": "

The Amazon Resource Name (ARN) of the application.

", "ApplicationSummary$roleArn": "

The Amazon Resource Name (ARN) of the role associated with the application.

", "ArnList$member": null, - "CreateApplicationRequest$roleArn": "

The Amazon Resource Name (ARN) of the role associated with the application.

", + "CreateApplicationRequest$roleArn": "

The Amazon Resource Name (ARN) that identifies a role that the application uses to access Amazon Web Services resources that are not part of the application or are in a different Amazon Web Services account.

", "CreateApplicationResponse$applicationArn": "

The Amazon Resource Name (ARN) of the application.

", "EnvironmentSummary$environmentArn": "

The Amazon Resource Name (ARN) of a particular runtime environment.

", "GetApplicationResponse$applicationArn": "

The Amazon Resource Name (ARN) of the application.

", @@ -216,8 +217,8 @@ "base": null, "refs": { "GetEnvironmentResponse$actualCapacity": "

The number of instances included in the runtime environment. A standalone runtime environment has a maxiumum of one instance. Currently, a high availability runtime environment has a maximum of two instances.

", - "HighAvailabilityConfig$desiredCapacity": "

The number of instances in a high availability configuration.

", - "UpdateEnvironmentRequest$desiredCapacity": "

The desired capacity for the runtime environment to update.

" + "HighAvailabilityConfig$desiredCapacity": "

The number of instances in a high availability configuration. The minimum possible value is 1 and the maximum is 100.

", + "UpdateEnvironmentRequest$desiredCapacity": "

The desired capacity for the runtime environment to update. The minimum possible value is 0 and the maximum is 100.

" } }, "ConflictException": { @@ -599,6 +600,11 @@ "refs": { } }, + "GetSignedBluinsightsUrlResponse": { + "base": null, + "refs": { + } + }, "HighAvailabilityConfig": { "base": "

Defines the details of a high availability configuration.

", "refs": { @@ -1013,6 +1019,7 @@ "GetEnvironmentResponse$kmsKeyId": "

The identifier of a customer managed key.

", "GetEnvironmentResponse$loadBalancerArn": "

The Amazon Resource Name (ARN) for the load balancer used with the runtime environment.

", "GetEnvironmentResponse$statusReason": "

The reason for the reported status.

", + "GetSignedBluinsightsUrlResponse$signedBiUrl": "

Single sign-on AWS Blu Insights URL.

", "InternalServerException$message": null, "ListBatchJobDefinitionsRequest$prefix": "

If the batch job definition is a FileBatchJobDefinition, the prefix allows you to search on the file names of FileBatchJobDefinitions.

", "PendingMaintenance$engineVersion": "

The specific runtime engine that the maintenance schedule applies to.

", diff --git a/models/apis/models.lex.v2/2020-08-07/api-2.json b/models/apis/models.lex.v2/2020-08-07/api-2.json index 2551435d14..b073c87ad0 100644 --- a/models/apis/models.lex.v2/2020-08-07/api-2.json +++ b/models/apis/models.lex.v2/2020-08-07/api-2.json @@ -997,6 +997,57 @@ {"shape":"InternalServerException"} ] }, + "ListIntentMetrics":{ + "name":"ListIntentMetrics", + "http":{ + "method":"POST", + "requestUri":"/bots/{botId}/analytics/intentmetrics", + "responseCode":200 + }, + "input":{"shape":"ListIntentMetricsRequest"}, + "output":{"shape":"ListIntentMetricsResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"PreconditionFailedException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"InternalServerException"} + ] + }, + "ListIntentPaths":{ + "name":"ListIntentPaths", + "http":{ + "method":"POST", + "requestUri":"/bots/{botId}/analytics/intentpaths", + "responseCode":200 + }, + "input":{"shape":"ListIntentPathsRequest"}, + "output":{"shape":"ListIntentPathsResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"PreconditionFailedException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"InternalServerException"} + ] + }, + "ListIntentStageMetrics":{ + "name":"ListIntentStageMetrics", + "http":{ + "method":"POST", + "requestUri":"/bots/{botId}/analytics/intentstagemetrics", + "responseCode":200 + }, + "input":{"shape":"ListIntentStageMetricsRequest"}, + "output":{"shape":"ListIntentStageMetricsResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"PreconditionFailedException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"InternalServerException"} + ] + }, "ListIntents":{ "name":"ListIntents", "http":{ @@ -1030,6 +1081,40 @@ {"shape":"ResourceNotFoundException"} ] }, + "ListSessionAnalyticsData":{ + "name":"ListSessionAnalyticsData", + "http":{ + "method":"POST", + "requestUri":"/bots/{botId}/analytics/sessions", + "responseCode":200 + }, + "input":{"shape":"ListSessionAnalyticsDataRequest"}, + "output":{"shape":"ListSessionAnalyticsDataResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"PreconditionFailedException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"InternalServerException"} + ] + }, + "ListSessionMetrics":{ + "name":"ListSessionMetrics", + "http":{ + "method":"POST", + "requestUri":"/bots/{botId}/analytics/sessionmetrics", + "responseCode":200 + }, + "input":{"shape":"ListSessionMetricsRequest"}, + "output":{"shape":"ListSessionMetricsResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"PreconditionFailedException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"InternalServerException"} + ] + }, "ListSlotTypes":{ "name":"ListSlotTypes", "http":{ @@ -1144,6 +1229,40 @@ {"shape":"InternalServerException"} ] }, + "ListUtteranceAnalyticsData":{ + "name":"ListUtteranceAnalyticsData", + "http":{ + "method":"POST", + "requestUri":"/bots/{botId}/analytics/utterances", + "responseCode":200 + }, + "input":{"shape":"ListUtteranceAnalyticsDataRequest"}, + "output":{"shape":"ListUtteranceAnalyticsDataResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"PreconditionFailedException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"InternalServerException"} + ] + }, + "ListUtteranceMetrics":{ + "name":"ListUtteranceMetrics", + "http":{ + "method":"POST", + "requestUri":"/bots/{botId}/analytics/utterancemetrics", + "responseCode":200 + }, + "input":{"shape":"ListUtteranceMetricsRequest"}, + "output":{"shape":"ListUtteranceMetricsResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"PreconditionFailedException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"InternalServerException"} + ] + }, "SearchAssociatedTranscripts":{ "name":"SearchAssociatedTranscripts", "http":{ @@ -1553,47 +1672,710 @@ "MissedCount" ] }, - "AggregatedUtterancesSortBy":{ + "AggregatedUtterancesSortBy":{ + "type":"structure", + "required":[ + "attribute", + "order" + ], + "members":{ + "attribute":{"shape":"AggregatedUtterancesSortAttribute"}, + "order":{"shape":"SortOrder"} + } + }, + "AggregatedUtterancesSummary":{ + "type":"structure", + "members":{ + "utterance":{"shape":"Utterance"}, + "hitCount":{"shape":"HitCount"}, + "missedCount":{"shape":"MissedCount"}, + "utteranceFirstRecordedInAggregationDuration":{"shape":"Timestamp"}, + "utteranceLastRecordedInAggregationDuration":{"shape":"Timestamp"}, + "containsDataFromDeletedResources":{"shape":"BoxedBoolean"} + } + }, + "AggregatedUtterancesSummaryList":{ + "type":"list", + "member":{"shape":"AggregatedUtterancesSummary"} + }, + "AllowedInputTypes":{ + "type":"structure", + "required":[ + "allowAudioInput", + "allowDTMFInput" + ], + "members":{ + "allowAudioInput":{"shape":"BoxedBoolean"}, + "allowDTMFInput":{"shape":"BoxedBoolean"} + } + }, + "AmazonResourceName":{ + "type":"string", + "max":1011, + "min":1 + }, + "AnalyticsBinByList":{ + "type":"list", + "member":{"shape":"AnalyticsBinBySpecification"}, + "max":1, + "min":1 + }, + "AnalyticsBinByName":{ + "type":"string", + "enum":[ + "ConversationStartTime", + "UtteranceTimestamp" + ] + }, + "AnalyticsBinBySpecification":{ + "type":"structure", + "required":[ + "name", + "interval" + ], + "members":{ + "name":{"shape":"AnalyticsBinByName"}, + "interval":{"shape":"AnalyticsInterval"}, + "order":{"shape":"AnalyticsSortOrder"} + } + }, + "AnalyticsBinKey":{ + "type":"structure", + "members":{ + "name":{"shape":"AnalyticsBinByName"}, + "value":{"shape":"AnalyticsBinValue"} + } + }, + "AnalyticsBinKeys":{ + "type":"list", + "member":{"shape":"AnalyticsBinKey"}, + "max":1, + "min":1 + }, + "AnalyticsBinValue":{"type":"long"}, + "AnalyticsCommonFilterName":{ + "type":"string", + "enum":[ + "BotAliasId", + "BotVersion", + "LocaleId", + "Modality", + "Channel" + ] + }, + "AnalyticsFilterOperator":{ + "type":"string", + "enum":[ + "EQ", + "GT", + "LT" + ] + }, + "AnalyticsFilterValue":{"type":"string"}, + "AnalyticsFilterValues":{ + "type":"list", + "member":{"shape":"AnalyticsFilterValue"}, + "max":5, + "min":1 + }, + "AnalyticsGroupByValue":{"type":"string"}, + "AnalyticsIntentField":{ + "type":"string", + "enum":[ + "IntentName", + "IntentEndState", + "IntentLevel" + ] + }, + "AnalyticsIntentFilter":{ + "type":"structure", + "required":[ + "name", + "operator", + "values" + ], + "members":{ + "name":{"shape":"AnalyticsIntentFilterName"}, + "operator":{"shape":"AnalyticsFilterOperator"}, + "values":{"shape":"AnalyticsFilterValues"} + } + }, + "AnalyticsIntentFilterName":{ + "type":"string", + "enum":[ + "BotAliasId", + "BotVersion", + "LocaleId", + "Modality", + "Channel", + "SessionId", + "OriginatingRequestId", + "IntentName", + "IntentEndState" + ] + }, + "AnalyticsIntentFilters":{ + "type":"list", + "member":{"shape":"AnalyticsIntentFilter"}, + "max":9, + "min":1 + }, + "AnalyticsIntentGroupByKey":{ + "type":"structure", + "members":{ + "name":{"shape":"AnalyticsIntentField"}, + "value":{"shape":"AnalyticsGroupByValue"} + } + }, + "AnalyticsIntentGroupByKeys":{ + "type":"list", + "member":{"shape":"AnalyticsIntentGroupByKey"} + }, + "AnalyticsIntentGroupByList":{ + "type":"list", + "member":{"shape":"AnalyticsIntentGroupBySpecification"}, + "max":3, + "min":1 + }, + "AnalyticsIntentGroupBySpecification":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"AnalyticsIntentField"} + } + }, + "AnalyticsIntentMetric":{ + "type":"structure", + "required":[ + "name", + "statistic" + ], + "members":{ + "name":{"shape":"AnalyticsIntentMetricName"}, + "statistic":{"shape":"AnalyticsMetricStatistic"}, + "order":{"shape":"AnalyticsSortOrder"} + } + }, + "AnalyticsIntentMetricName":{ + "type":"string", + "enum":[ + "Count", + "Success", + "Failure", + "Switched", + "Dropped" + ] + }, + "AnalyticsIntentMetricResult":{ + "type":"structure", + "members":{ + "name":{"shape":"AnalyticsIntentMetricName"}, + "statistic":{"shape":"AnalyticsMetricStatistic"}, + "value":{"shape":"AnalyticsMetricValue"} + } + }, + "AnalyticsIntentMetricResults":{ + "type":"list", + "member":{"shape":"AnalyticsIntentMetricResult"} + }, + "AnalyticsIntentMetrics":{ + "type":"list", + "member":{"shape":"AnalyticsIntentMetric"}, + "max":5, + "min":1 + }, + "AnalyticsIntentNodeSummaries":{ + "type":"list", + "member":{"shape":"AnalyticsIntentNodeSummary"}, + "max":100, + "min":1 + }, + "AnalyticsIntentNodeSummary":{ + "type":"structure", + "members":{ + "intentName":{"shape":"Name"}, + "intentPath":{"shape":"AnalyticsPath"}, + "intentCount":{"shape":"AnalyticsNodeCount"}, + "intentLevel":{"shape":"AnalyticsNodeLevel"}, + "nodeType":{"shape":"AnalyticsNodeType"} + } + }, + "AnalyticsIntentResult":{ + "type":"structure", + "members":{ + "binKeys":{"shape":"AnalyticsBinKeys"}, + "groupByKeys":{"shape":"AnalyticsIntentGroupByKeys"}, + "metricsResults":{"shape":"AnalyticsIntentMetricResults"} + } + }, + "AnalyticsIntentResults":{ + "type":"list", + "member":{"shape":"AnalyticsIntentResult"} + }, + "AnalyticsIntentStageField":{ + "type":"string", + "enum":[ + "IntentStageName", + "SwitchedToIntent" + ] + }, + "AnalyticsIntentStageFilter":{ + "type":"structure", + "required":[ + "name", + "operator", + "values" + ], + "members":{ + "name":{"shape":"AnalyticsIntentStageFilterName"}, + "operator":{"shape":"AnalyticsFilterOperator"}, + "values":{"shape":"AnalyticsFilterValues"} + } + }, + "AnalyticsIntentStageFilterName":{ + "type":"string", + "enum":[ + "BotAliasId", + "BotVersion", + "LocaleId", + "Modality", + "Channel", + "SessionId", + "OriginatingRequestId", + "IntentName", + "IntentStageName" + ] + }, + "AnalyticsIntentStageFilters":{ + "type":"list", + "member":{"shape":"AnalyticsIntentStageFilter"}, + "max":9, + "min":1 + }, + "AnalyticsIntentStageGroupByKey":{ + "type":"structure", + "members":{ + "name":{"shape":"AnalyticsIntentStageField"}, + "value":{"shape":"AnalyticsGroupByValue"} + } + }, + "AnalyticsIntentStageGroupByKeys":{ + "type":"list", + "member":{"shape":"AnalyticsIntentStageGroupByKey"} + }, + "AnalyticsIntentStageGroupByList":{ + "type":"list", + "member":{"shape":"AnalyticsIntentStageGroupBySpecification"}, + "max":2, + "min":1 + }, + "AnalyticsIntentStageGroupBySpecification":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"AnalyticsIntentStageField"} + } + }, + "AnalyticsIntentStageMetric":{ + "type":"structure", + "required":[ + "name", + "statistic" + ], + "members":{ + "name":{"shape":"AnalyticsIntentStageMetricName"}, + "statistic":{"shape":"AnalyticsMetricStatistic"}, + "order":{"shape":"AnalyticsSortOrder"} + } + }, + "AnalyticsIntentStageMetricName":{ + "type":"string", + "enum":[ + "Count", + "Success", + "Failed", + "Dropped", + "Retry" + ] + }, + "AnalyticsIntentStageMetricResult":{ + "type":"structure", + "members":{ + "name":{"shape":"AnalyticsIntentStageMetricName"}, + "statistic":{"shape":"AnalyticsMetricStatistic"}, + "value":{"shape":"AnalyticsMetricValue"} + } + }, + "AnalyticsIntentStageMetricResults":{ + "type":"list", + "member":{"shape":"AnalyticsIntentStageMetricResult"} + }, + "AnalyticsIntentStageMetrics":{ + "type":"list", + "member":{"shape":"AnalyticsIntentStageMetric"}, + "max":5, + "min":1 + }, + "AnalyticsIntentStageResult":{ + "type":"structure", + "members":{ + "binKeys":{"shape":"AnalyticsBinKeys"}, + "groupByKeys":{"shape":"AnalyticsIntentStageGroupByKeys"}, + "metricsResults":{"shape":"AnalyticsIntentStageMetricResults"} + } + }, + "AnalyticsIntentStageResults":{ + "type":"list", + "member":{"shape":"AnalyticsIntentStageResult"} + }, + "AnalyticsInterval":{ + "type":"string", + "enum":[ + "OneHour", + "OneDay" + ] + }, + "AnalyticsLongValue":{"type":"long"}, + "AnalyticsMetricStatistic":{ + "type":"string", + "enum":[ + "Sum", + "Avg", + "Max" + ] + }, + "AnalyticsMetricValue":{"type":"double"}, + "AnalyticsModality":{ + "type":"string", + "enum":[ + "Speech", + "Text", + "DTMF", + "MultiMode" + ] + }, + "AnalyticsNodeCount":{"type":"integer"}, + "AnalyticsNodeLevel":{ + "type":"integer", + "max":100, + "min":0 + }, + "AnalyticsNodeType":{ + "type":"string", + "enum":[ + "Inner", + "Exit" + ] + }, + "AnalyticsOriginatingRequestId":{"type":"string"}, + "AnalyticsPath":{ + "type":"string", + "max":1024, + "min":1 + }, + "AnalyticsPathFilter":{ + "type":"structure", + "required":[ + "name", + "operator", + "values" + ], + "members":{ + "name":{"shape":"AnalyticsCommonFilterName"}, + "operator":{"shape":"AnalyticsFilterOperator"}, + "values":{"shape":"AnalyticsFilterValues"} + } + }, + "AnalyticsPathFilters":{ + "type":"list", + "member":{"shape":"AnalyticsPathFilter"}, + "max":5, + "min":1 + }, + "AnalyticsSessionField":{ + "type":"string", + "enum":[ + "ConversationEndState", + "LocaleId" + ] + }, + "AnalyticsSessionFilter":{ + "type":"structure", + "required":[ + "name", + "operator", + "values" + ], + "members":{ + "name":{"shape":"AnalyticsSessionFilterName"}, + "operator":{"shape":"AnalyticsFilterOperator"}, + "values":{"shape":"AnalyticsFilterValues"} + } + }, + "AnalyticsSessionFilterName":{ + "type":"string", + "enum":[ + "BotAliasId", + "BotVersion", + "LocaleId", + "Modality", + "Channel", + "Duration", + "ConversationEndState", + "SessionId", + "OriginatingRequestId", + "IntentPath" + ] + }, + "AnalyticsSessionFilters":{ + "type":"list", + "member":{"shape":"AnalyticsSessionFilter"}, + "max":10, + "min":1 + }, + "AnalyticsSessionGroupByKey":{ + "type":"structure", + "members":{ + "name":{"shape":"AnalyticsSessionField"}, + "value":{"shape":"AnalyticsGroupByValue"} + } + }, + "AnalyticsSessionGroupByKeys":{ + "type":"list", + "member":{"shape":"AnalyticsSessionGroupByKey"} + }, + "AnalyticsSessionGroupByList":{ + "type":"list", + "member":{"shape":"AnalyticsSessionGroupBySpecification"}, + "max":2, + "min":1 + }, + "AnalyticsSessionGroupBySpecification":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"AnalyticsSessionField"} + } + }, + "AnalyticsSessionId":{ + "type":"string", + "pattern":"[0-9a-zA-Z._:-]" + }, + "AnalyticsSessionMetric":{ + "type":"structure", + "required":[ + "name", + "statistic" + ], + "members":{ + "name":{"shape":"AnalyticsSessionMetricName"}, + "statistic":{"shape":"AnalyticsMetricStatistic"}, + "order":{"shape":"AnalyticsSortOrder"} + } + }, + "AnalyticsSessionMetricName":{ + "type":"string", + "enum":[ + "Count", + "Success", + "Failure", + "Dropped", + "Duration", + "TurnsPerConversation", + "Concurrency" + ] + }, + "AnalyticsSessionMetricResult":{ + "type":"structure", + "members":{ + "name":{"shape":"AnalyticsSessionMetricName"}, + "statistic":{"shape":"AnalyticsMetricStatistic"}, + "value":{"shape":"AnalyticsMetricValue"} + } + }, + "AnalyticsSessionMetricResults":{ + "type":"list", + "member":{"shape":"AnalyticsSessionMetricResult"} + }, + "AnalyticsSessionMetrics":{ + "type":"list", + "member":{"shape":"AnalyticsSessionMetric"}, + "max":7, + "min":1 + }, + "AnalyticsSessionResult":{ + "type":"structure", + "members":{ + "binKeys":{"shape":"AnalyticsBinKeys"}, + "groupByKeys":{"shape":"AnalyticsSessionGroupByKeys"}, + "metricsResults":{"shape":"AnalyticsSessionMetricResults"} + } + }, + "AnalyticsSessionResults":{ + "type":"list", + "member":{"shape":"AnalyticsSessionResult"} + }, + "AnalyticsSessionSortByName":{ + "type":"string", + "enum":[ + "ConversationStartTime", + "NumberOfTurns", + "Duration" + ] + }, + "AnalyticsSortOrder":{ + "type":"string", + "enum":[ + "Ascending", + "Descending" + ] + }, + "AnalyticsUtteranceAttribute":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"AnalyticsUtteranceAttributeName"} + } + }, + "AnalyticsUtteranceAttributeName":{ + "type":"string", + "enum":["LastUsedIntent"] + }, + "AnalyticsUtteranceAttributeResult":{ + "type":"structure", + "members":{ + "lastUsedIntent":{"shape":"Name"} + } + }, + "AnalyticsUtteranceAttributeResults":{ + "type":"list", + "member":{"shape":"AnalyticsUtteranceAttributeResult"} + }, + "AnalyticsUtteranceAttributes":{ + "type":"list", + "member":{"shape":"AnalyticsUtteranceAttribute"}, + "max":1, + "min":1 + }, + "AnalyticsUtteranceField":{ + "type":"string", + "enum":[ + "UtteranceText", + "UtteranceState" + ] + }, + "AnalyticsUtteranceFilter":{ + "type":"structure", + "required":[ + "name", + "operator", + "values" + ], + "members":{ + "name":{"shape":"AnalyticsUtteranceFilterName"}, + "operator":{"shape":"AnalyticsFilterOperator"}, + "values":{"shape":"AnalyticsFilterValues"} + } + }, + "AnalyticsUtteranceFilterName":{ + "type":"string", + "enum":[ + "BotAliasId", + "BotVersion", + "LocaleId", + "Modality", + "Channel", + "SessionId", + "OriginatingRequestId", + "UtteranceState", + "UtteranceText" + ] + }, + "AnalyticsUtteranceFilters":{ + "type":"list", + "member":{"shape":"AnalyticsUtteranceFilter"}, + "max":9, + "min":1 + }, + "AnalyticsUtteranceGroupByKey":{ + "type":"structure", + "members":{ + "name":{"shape":"AnalyticsUtteranceField"}, + "value":{"shape":"AnalyticsGroupByValue"} + } + }, + "AnalyticsUtteranceGroupByKeys":{ + "type":"list", + "member":{"shape":"AnalyticsUtteranceGroupByKey"} + }, + "AnalyticsUtteranceGroupByList":{ + "type":"list", + "member":{"shape":"AnalyticsUtteranceGroupBySpecification"}, + "max":2, + "min":1 + }, + "AnalyticsUtteranceGroupBySpecification":{ + "type":"structure", + "required":["name"], + "members":{ + "name":{"shape":"AnalyticsUtteranceField"} + } + }, + "AnalyticsUtteranceMetric":{ "type":"structure", "required":[ - "attribute", - "order" + "name", + "statistic" ], "members":{ - "attribute":{"shape":"AggregatedUtterancesSortAttribute"}, - "order":{"shape":"SortOrder"} + "name":{"shape":"AnalyticsUtteranceMetricName"}, + "statistic":{"shape":"AnalyticsMetricStatistic"}, + "order":{"shape":"AnalyticsSortOrder"} } }, - "AggregatedUtterancesSummary":{ + "AnalyticsUtteranceMetricName":{ + "type":"string", + "enum":[ + "Count", + "Missed", + "Detected", + "UtteranceTimestamp" + ] + }, + "AnalyticsUtteranceMetricResult":{ "type":"structure", "members":{ - "utterance":{"shape":"Utterance"}, - "hitCount":{"shape":"HitCount"}, - "missedCount":{"shape":"MissedCount"}, - "utteranceFirstRecordedInAggregationDuration":{"shape":"Timestamp"}, - "utteranceLastRecordedInAggregationDuration":{"shape":"Timestamp"}, - "containsDataFromDeletedResources":{"shape":"BoxedBoolean"} + "name":{"shape":"AnalyticsUtteranceMetricName"}, + "statistic":{"shape":"AnalyticsMetricStatistic"}, + "value":{"shape":"AnalyticsMetricValue"} } }, - "AggregatedUtterancesSummaryList":{ + "AnalyticsUtteranceMetricResults":{ "type":"list", - "member":{"shape":"AggregatedUtterancesSummary"} + "member":{"shape":"AnalyticsUtteranceMetricResult"} }, - "AllowedInputTypes":{ + "AnalyticsUtteranceMetrics":{ + "type":"list", + "member":{"shape":"AnalyticsUtteranceMetric"}, + "max":4, + "min":1 + }, + "AnalyticsUtteranceResult":{ "type":"structure", - "required":[ - "allowAudioInput", - "allowDTMFInput" - ], "members":{ - "allowAudioInput":{"shape":"BoxedBoolean"}, - "allowDTMFInput":{"shape":"BoxedBoolean"} + "binKeys":{"shape":"AnalyticsBinKeys"}, + "groupByKeys":{"shape":"AnalyticsUtteranceGroupByKeys"}, + "metricsResults":{"shape":"AnalyticsUtteranceMetricResults"}, + "attributeResults":{"shape":"AnalyticsUtteranceAttributeResults"} } }, - "AmazonResourceName":{ + "AnalyticsUtteranceResults":{ + "type":"list", + "member":{"shape":"AnalyticsUtteranceResult"} + }, + "AnalyticsUtteranceSortByName":{ "type":"string", - "max":1011, - "min":1 + "enum":["UtteranceTimestamp"] }, "AssociatedTranscript":{ "type":"structure", @@ -1881,6 +2663,14 @@ "localeId":{"shape":"LocaleId"} } }, + "BotChannelType":{ + "type":"string", + "enum":[ + "Facebook", + "Slack", + "TwilioSms" + ] + }, "BotExportSpecification":{ "type":"structure", "required":[ @@ -2490,6 +3280,14 @@ "max":20, "min":1 }, + "ConversationEndState":{ + "type":"string", + "enum":[ + "Success", + "Failure", + "Dropped" + ] + }, "ConversationLevelIntentClassificationResultItem":{ "type":"structure", "required":[ @@ -4727,6 +5525,17 @@ "order":{"shape":"SortOrder"} } }, + "IntentState":{ + "type":"string", + "enum":[ + "Failed", + "Fulfilled", + "InProgress", + "ReadyForFulfillment", + "Waiting", + "FulfillmentInProgress" + ] + }, "IntentStatistics":{ "type":"structure", "members":{ @@ -4758,6 +5567,16 @@ "exception":true, "fault":true }, + "InvokedIntentSample":{ + "type":"structure", + "members":{ + "intentName":{"shape":"Name"} + } + }, + "InvokedIntentSamples":{ + "type":"list", + "member":{"shape":"InvokedIntentSample"} + }, "ItemId":{ "type":"string", "max":32, @@ -5098,6 +5917,96 @@ "localeId":{"shape":"LocaleId"} } }, + "ListIntentMetricsRequest":{ + "type":"structure", + "required":[ + "botId", + "startDateTime", + "endDateTime", + "metrics" + ], + "members":{ + "botId":{ + "shape":"Id", + "location":"uri", + "locationName":"botId" + }, + "startDateTime":{"shape":"Timestamp"}, + "endDateTime":{"shape":"Timestamp"}, + "metrics":{"shape":"AnalyticsIntentMetrics"}, + "binBy":{"shape":"AnalyticsBinByList"}, + "groupBy":{"shape":"AnalyticsIntentGroupByList"}, + "filters":{"shape":"AnalyticsIntentFilters"}, + "maxResults":{"shape":"MaxResults"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListIntentMetricsResponse":{ + "type":"structure", + "members":{ + "botId":{"shape":"Id"}, + "results":{"shape":"AnalyticsIntentResults"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListIntentPathsRequest":{ + "type":"structure", + "required":[ + "botId", + "startDateTime", + "endDateTime", + "intentPath" + ], + "members":{ + "botId":{ + "shape":"Id", + "location":"uri", + "locationName":"botId" + }, + "startDateTime":{"shape":"Timestamp"}, + "endDateTime":{"shape":"Timestamp"}, + "intentPath":{"shape":"AnalyticsPath"}, + "filters":{"shape":"AnalyticsPathFilters"} + } + }, + "ListIntentPathsResponse":{ + "type":"structure", + "members":{ + "nodeSummaries":{"shape":"AnalyticsIntentNodeSummaries"} + } + }, + "ListIntentStageMetricsRequest":{ + "type":"structure", + "required":[ + "botId", + "startDateTime", + "endDateTime", + "metrics" + ], + "members":{ + "botId":{ + "shape":"Id", + "location":"uri", + "locationName":"botId" + }, + "startDateTime":{"shape":"Timestamp"}, + "endDateTime":{"shape":"Timestamp"}, + "metrics":{"shape":"AnalyticsIntentStageMetrics"}, + "binBy":{"shape":"AnalyticsBinByList"}, + "groupBy":{"shape":"AnalyticsIntentStageGroupByList"}, + "filters":{"shape":"AnalyticsIntentStageFilters"}, + "maxResults":{"shape":"MaxResults"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListIntentStageMetricsResponse":{ + "type":"structure", + "members":{ + "botId":{"shape":"Id"}, + "results":{"shape":"AnalyticsIntentStageResults"}, + "nextToken":{"shape":"NextToken"} + } + }, "ListIntentsRequest":{ "type":"structure", "required":[ @@ -5181,6 +6090,67 @@ "nextToken":{"shape":"NextToken"} } }, + "ListSessionAnalyticsDataRequest":{ + "type":"structure", + "required":[ + "botId", + "startDateTime", + "endDateTime" + ], + "members":{ + "botId":{ + "shape":"Id", + "location":"uri", + "locationName":"botId" + }, + "startDateTime":{"shape":"Timestamp"}, + "endDateTime":{"shape":"Timestamp"}, + "sortBy":{"shape":"SessionDataSortBy"}, + "filters":{"shape":"AnalyticsSessionFilters"}, + "maxResults":{"shape":"MaxResults"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListSessionAnalyticsDataResponse":{ + "type":"structure", + "members":{ + "botId":{"shape":"Id"}, + "nextToken":{"shape":"NextToken"}, + "sessions":{"shape":"SessionSpecifications"} + } + }, + "ListSessionMetricsRequest":{ + "type":"structure", + "required":[ + "botId", + "startDateTime", + "endDateTime", + "metrics" + ], + "members":{ + "botId":{ + "shape":"Id", + "location":"uri", + "locationName":"botId" + }, + "startDateTime":{"shape":"Timestamp"}, + "endDateTime":{"shape":"Timestamp"}, + "metrics":{"shape":"AnalyticsSessionMetrics"}, + "binBy":{"shape":"AnalyticsBinByList"}, + "groupBy":{"shape":"AnalyticsSessionGroupByList"}, + "filters":{"shape":"AnalyticsSessionFilters"}, + "maxResults":{"shape":"MaxResults"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListSessionMetricsResponse":{ + "type":"structure", + "members":{ + "botId":{"shape":"Id"}, + "results":{"shape":"AnalyticsSessionResults"}, + "nextToken":{"shape":"NextToken"} + } + }, "ListSlotTypesRequest":{ "type":"structure", "required":[ @@ -5357,6 +6327,68 @@ "nextToken":{"shape":"NextToken"} } }, + "ListUtteranceAnalyticsDataRequest":{ + "type":"structure", + "required":[ + "botId", + "startDateTime", + "endDateTime" + ], + "members":{ + "botId":{ + "shape":"Id", + "location":"uri", + "locationName":"botId" + }, + "startDateTime":{"shape":"Timestamp"}, + "endDateTime":{"shape":"Timestamp"}, + "sortBy":{"shape":"UtteranceDataSortBy"}, + "filters":{"shape":"AnalyticsUtteranceFilters"}, + "maxResults":{"shape":"MaxResults"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListUtteranceAnalyticsDataResponse":{ + "type":"structure", + "members":{ + "botId":{"shape":"Id"}, + "nextToken":{"shape":"NextToken"}, + "utterances":{"shape":"UtteranceSpecifications"} + } + }, + "ListUtteranceMetricsRequest":{ + "type":"structure", + "required":[ + "botId", + "startDateTime", + "endDateTime", + "metrics" + ], + "members":{ + "botId":{ + "shape":"Id", + "location":"uri", + "locationName":"botId" + }, + "startDateTime":{"shape":"Timestamp"}, + "endDateTime":{"shape":"Timestamp"}, + "metrics":{"shape":"AnalyticsUtteranceMetrics"}, + "binBy":{"shape":"AnalyticsBinByList"}, + "groupBy":{"shape":"AnalyticsUtteranceGroupByList"}, + "attributes":{"shape":"AnalyticsUtteranceAttributes"}, + "filters":{"shape":"AnalyticsUtteranceFilters"}, + "maxResults":{"shape":"MaxResults"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListUtteranceMetricsResponse":{ + "type":"structure", + "members":{ + "botId":{"shape":"Id"}, + "results":{"shape":"AnalyticsUtteranceResults"}, + "nextToken":{"shape":"NextToken"} + } + }, "LocaleId":{"type":"string"}, "LocaleName":{"type":"string"}, "LogPrefix":{ @@ -5943,12 +6975,45 @@ "error":{"httpStatusCode":402}, "exception":true }, + "SessionDataSortBy":{ + "type":"structure", + "required":[ + "name", + "order" + ], + "members":{ + "name":{"shape":"AnalyticsSessionSortByName"}, + "order":{"shape":"AnalyticsSortOrder"} + } + }, "SessionId":{ "type":"string", "max":100, "min":2, "pattern":"[0-9a-zA-Z._:-]+" }, + "SessionSpecification":{ + "type":"structure", + "members":{ + "botAliasId":{"shape":"BotAliasId"}, + "botVersion":{"shape":"NumericalBotVersion"}, + "localeId":{"shape":"LocaleId"}, + "channel":{"shape":"BotChannelType"}, + "sessionId":{"shape":"AnalyticsSessionId"}, + "conversationStartTime":{"shape":"Timestamp"}, + "conversationEndTime":{"shape":"Timestamp"}, + "conversationDurationSeconds":{"shape":"AnalyticsLongValue"}, + "conversationEndState":{"shape":"ConversationEndState"}, + "mode":{"shape":"AnalyticsModality"}, + "numberOfTurns":{"shape":"AnalyticsLongValue"}, + "invokedIntentSamples":{"shape":"InvokedIntentSamples"}, + "originatingRequestId":{"shape":"AnalyticsOriginatingRequestId"} + } + }, + "SessionSpecifications":{ + "type":"list", + "member":{"shape":"SessionSpecification"} + }, "SessionTTL":{ "type":"integer", "max":86400, @@ -7590,6 +8655,38 @@ "audioFileS3Location":{"shape":"AudioFileS3Location"} } }, + "UtteranceBotResponse":{ + "type":"structure", + "members":{ + "content":{"shape":"String"}, + "contentType":{"shape":"UtteranceContentType"}, + "imageResponseCard":{"shape":"ImageResponseCard"} + } + }, + "UtteranceBotResponses":{ + "type":"list", + "member":{"shape":"UtteranceBotResponse"} + }, + "UtteranceContentType":{ + "type":"string", + "enum":[ + "PlainText", + "CustomPayload", + "SSML", + "ImageResponseCard" + ] + }, + "UtteranceDataSortBy":{ + "type":"structure", + "required":[ + "name", + "order" + ], + "members":{ + "name":{"shape":"AnalyticsUtteranceSortByName"}, + "order":{"shape":"AnalyticsSortOrder"} + } + }, "UtteranceInputSpecification":{ "type":"structure", "members":{ @@ -7620,6 +8717,38 @@ "items":{"shape":"UtteranceLevelTestResultItemList"} } }, + "UtteranceSpecification":{ + "type":"structure", + "members":{ + "botAliasId":{"shape":"BotAliasId"}, + "botVersion":{"shape":"NumericalBotVersion"}, + "localeId":{"shape":"LocaleId"}, + "sessionId":{"shape":"AnalyticsSessionId"}, + "channel":{"shape":"BotChannelType"}, + "mode":{"shape":"AnalyticsModality"}, + "conversationStartTime":{"shape":"Timestamp"}, + "conversationEndTime":{"shape":"Timestamp"}, + "utterance":{"shape":"String"}, + "utteranceTimestamp":{"shape":"Timestamp"}, + "audioVoiceDurationMillis":{"shape":"AnalyticsLongValue"}, + "utteranceUnderstood":{"shape":"UtteranceUnderstood"}, + "inputType":{"shape":"String"}, + "outputType":{"shape":"String"}, + "associatedIntentName":{"shape":"Name"}, + "associatedSlotName":{"shape":"Name"}, + "intentState":{"shape":"IntentState"}, + "dialogActionType":{"shape":"String"}, + "botResponseAudioVoiceId":{"shape":"String"}, + "slotsFilledInSession":{"shape":"String"}, + "utteranceRequestId":{"shape":"Id"}, + "botResponses":{"shape":"UtteranceBotResponses"} + } + }, + "UtteranceSpecifications":{ + "type":"list", + "member":{"shape":"UtteranceSpecification"} + }, + "UtteranceUnderstood":{"type":"boolean"}, "ValidationException":{ "type":"structure", "members":{ diff --git a/models/apis/models.lex.v2/2020-08-07/docs-2.json b/models/apis/models.lex.v2/2020-08-07/docs-2.json index 9f13ac2655..feb0b2e89a 100644 --- a/models/apis/models.lex.v2/2020-08-07/docs-2.json +++ b/models/apis/models.lex.v2/2020-08-07/docs-2.json @@ -60,8 +60,13 @@ "ListCustomVocabularyItems": "

Paginated list of custom vocabulary items for a given bot locale's custom vocabulary.

", "ListExports": "

Lists the exports for a bot, bot locale, or custom vocabulary. Exports are kept in the list for 7 days.

", "ListImports": "

Lists the imports for a bot, bot locale, or custom vocabulary. Imports are kept in the list for 7 days.

", + "ListIntentMetrics": "

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.

", + "ListIntentPaths": "

Retrieves summary statistics for a path of intents that users take over sessions with your bot. The following fields are required:

Use the optional filters field to filter the results.

", + "ListIntentStageMetrics": "

Retrieves summary metrics for the intent stages 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 only specify one order in a given request.

", "ListIntents": "

Get a list of intents that meet the specified criteria.

", "ListRecommendedIntents": "

Gets a list of recommended intents provided by the bot recommendation that you can use in your bot. Intents in the response are ordered by relevance.

", + "ListSessionAnalyticsData": "

Retrieves a list of metadata for individual user sessions with your bot. The startDateTime and endDateTime fields are required. These fields define a time range for which you want to retrieve results. Of the optional fields, you can organize the results in the following ways:

", + "ListSessionMetrics": "

Retrieves summary metrics for the user sessions with 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. Currently, you can specify it in either field, but not in both.

", "ListSlotTypes": "

Gets a list of slot types that match the specified criteria.

", "ListSlots": "

Gets a list of slots that match the specified criteria.

", "ListTagsForResource": "

Gets a list of tags associated with a resource. Only bots, bot aliases, and bot channels can have tags associated with them.

", @@ -69,6 +74,8 @@ "ListTestExecutions": "

The list of test set executions.

", "ListTestSetRecords": "

The list of test set records.

", "ListTestSets": "

The list of the test sets

", + "ListUtteranceAnalyticsData": "

Retrieves a list of metadata for individual user utterances to your bot. The startDateTime and endDateTime fields are required. These fields define a time range for which you want to retrieve results. Of the optional fields, you can organize the results in the following ways:

", + "ListUtteranceMetrics": "

Retrieves summary metrics for the utterances 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. Currently, you can specify it in either field, but not in both.

", "SearchAssociatedTranscripts": "

Search for associated transcripts that meet the specified criteria.

", "StartBotRecommendation": "

Use this to provide your transcript data, and to start the bot recommendation process.

", "StartImport": "

Starts importing a bot, bot locale, or custom vocabulary from a zip archive that you uploaded to an S3 bucket.

", @@ -200,6 +207,619 @@ "UpdateResourcePolicyResponse$resourceArn": "

The Amazon Resource Name (ARN) of the bot or bot alias that the resource policy is attached to.

" } }, + "AnalyticsBinByList": { + "base": null, + "refs": { + "ListIntentMetricsRequest$binBy": "

A list of objects, each of which contains specifications for organizing the results by time.

", + "ListIntentStageMetricsRequest$binBy": "

A list of objects, each of which contains specifications for organizing the results by time.

", + "ListSessionMetricsRequest$binBy": "

A list of objects, each of which contains specifications for organizing the results by time.

", + "ListUtteranceMetricsRequest$binBy": "

A list of objects, each of which contains specifications for organizing the results by time.

" + } + }, + "AnalyticsBinByName": { + "base": null, + "refs": { + "AnalyticsBinBySpecification$name": "

Specifies the time metric by which to bin the analytics data.

", + "AnalyticsBinKey$name": "

The criterion by which to bin the results.

" + } + }, + "AnalyticsBinBySpecification": { + "base": "

Contains the time metric, interval, and method by which to bin the analytics data.

", + "refs": { + "AnalyticsBinByList$member": null + } + }, + "AnalyticsBinKey": { + "base": "

An object containing the criterion by which to bin the results and the value that defines that bin.

", + "refs": { + "AnalyticsBinKeys$member": null + } + }, + "AnalyticsBinKeys": { + "base": null, + "refs": { + "AnalyticsIntentResult$binKeys": "

A list of objects containing the criteria you requested for binning results and the values of the bins.

", + "AnalyticsIntentStageResult$binKeys": "

A list of objects containing the criteria you requested for binning results and the values of the bins.

", + "AnalyticsSessionResult$binKeys": "

A list of objects containing the criteria you requested for binning results and the values of the bins.

", + "AnalyticsUtteranceResult$binKeys": "

A list of objects containing the criteria you requested for binning results and the values of the bins.

" + } + }, + "AnalyticsBinValue": { + "base": null, + "refs": { + "AnalyticsBinKey$value": "

The value of the criterion that defines the bin.

" + } + }, + "AnalyticsCommonFilterName": { + "base": null, + "refs": { + "AnalyticsPathFilter$name": "

The category by which to filter the intent paths. The descriptions for each option are as follows:

" + } + }, + "AnalyticsFilterOperator": { + "base": null, + "refs": { + "AnalyticsIntentFilter$operator": "

The operation by which to filter the category. The following operations are possible:

The operators that each filter supports are listed below:

", + "AnalyticsIntentStageFilter$operator": "

The operation by which to filter the category. The following operations are possible:

The operators that each filter supports are listed below:

", + "AnalyticsPathFilter$operator": "

The operation by which to filter the category. The following operations are possible:

The operators that each filter supports are listed below:

", + "AnalyticsSessionFilter$operator": "

The operation by which to filter the category. The following operations are possible:

The operators that each filter supports are listed below:

", + "AnalyticsUtteranceFilter$operator": "

The operation by which to filter the category. The following operations are possible:

The operators that each filter supports are listed below:

" + } + }, + "AnalyticsFilterValue": { + "base": null, + "refs": { + "AnalyticsFilterValues$member": null + } + }, + "AnalyticsFilterValues": { + "base": null, + "refs": { + "AnalyticsIntentFilter$values": "

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 or CO. If you provide multiple values, you filter for results that equal/contain any of the values. For example, if the name, operator, and values fields are Modality, EQ, and [Speech, Text], the operation filters for results where the modality was either Speech or Text.

", + "AnalyticsIntentStageFilter$values": "

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 or CO. If you provide multiple values, you filter for results that equal/contain any of the values. For example, if the name, operator, and values fields are Modality, EQ, and [Speech, Text], the operation filters for results where the modality was either Speech or Text.

", + "AnalyticsPathFilter$values": "

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 or CO. If you provide multiple values, you filter for results that equal/contain any of the values. For example, if the name, operator, and values fields are Modality, EQ, and [Speech, Text], the operation filters for results where the modality was either Speech or Text.

", + "AnalyticsSessionFilter$values": "

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 or CO. If you provide multiple values, you filter for results that equal/contain any of the values. For example, if the name, operator, and values fields are Modality, EQ, and [Speech, Text], the operation filters for results where the modality was either Speech or Text.

", + "AnalyticsUtteranceFilter$values": "

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 or CO. If you provide multiple values, you filter for results that equal/contain any of the values. For example, if the name, operator, and values fields are Modality, EQ, and [Speech, Text], the operation filters for results where the modality was either Speech or Text.

" + } + }, + "AnalyticsGroupByValue": { + "base": null, + "refs": { + "AnalyticsIntentGroupByKey$value": "

A member of the category by which the intent analytics were grouped.

", + "AnalyticsIntentStageGroupByKey$value": "

A member of the category by which the intent stage analytics were grouped.

", + "AnalyticsSessionGroupByKey$value": "

A member of the category by which the session analytics were grouped.

", + "AnalyticsUtteranceGroupByKey$value": "

A member of the category by which the utterance analytics were grouped.

" + } + }, + "AnalyticsIntentField": { + "base": null, + "refs": { + "AnalyticsIntentGroupByKey$name": "

A category by which the intent analytics were grouped.

", + "AnalyticsIntentGroupBySpecification$name": "

Specifies whether to group the intent stages by their name or their end state.

" + } + }, + "AnalyticsIntentFilter": { + "base": "

Contains fields describing a condition by which to filter the intents. The expression may be understood as name operator values. For example:

The operators that each filter supports are listed below:

", + "refs": { + "AnalyticsIntentFilters$member": null + } + }, + "AnalyticsIntentFilterName": { + "base": null, + "refs": { + "AnalyticsIntentFilter$name": "

The category by which to filter the intents. The descriptions for each option are as follows:

" + } + }, + "AnalyticsIntentFilters": { + "base": null, + "refs": { + "ListIntentMetricsRequest$filters": "

A list of objects, each of which describes a condition by which you want to filter the results.

" + } + }, + "AnalyticsIntentGroupByKey": { + "base": "

Contains the category by which the intent analytics were grouped and a member of that category.

", + "refs": { + "AnalyticsIntentGroupByKeys$member": null + } + }, + "AnalyticsIntentGroupByKeys": { + "base": null, + "refs": { + "AnalyticsIntentResult$groupByKeys": "

A list of objects containing the criteria you requested for grouping results and the values of the groups.

" + } + }, + "AnalyticsIntentGroupByList": { + "base": null, + "refs": { + "ListIntentMetricsRequest$groupBy": "

A list of objects, each of which specifies how to group the results. You can group by the following criteria:

" + } + }, + "AnalyticsIntentGroupBySpecification": { + "base": "

Contains the category by which to group the intents.

", + "refs": { + "AnalyticsIntentGroupByList$member": null + } + }, + "AnalyticsIntentMetric": { + "base": "

Contains the metric and the summary statistic you want to calculate, and the order in which to sort the results, for the intents in the bot.

", + "refs": { + "AnalyticsIntentMetrics$member": null + } + }, + "AnalyticsIntentMetricName": { + "base": null, + "refs": { + "AnalyticsIntentMetric$name": "

The metric for which you want to get intent summary statistics.

", + "AnalyticsIntentMetricResult$name": "

The metric that you requested. See Key definitions for more details about these metrics.

" + } + }, + "AnalyticsIntentMetricResult": { + "base": "

An object containing the results for the intent metric you requested.

", + "refs": { + "AnalyticsIntentMetricResults$member": null + } + }, + "AnalyticsIntentMetricResults": { + "base": null, + "refs": { + "AnalyticsIntentResult$metricsResults": "

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.

" + } + }, + "AnalyticsIntentMetrics": { + "base": null, + "refs": { + "ListIntentMetricsRequest$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.

" + } + }, + "AnalyticsIntentNodeSummaries": { + "base": null, + "refs": { + "ListIntentPathsResponse$nodeSummaries": "

A list of objects, each of which contains information about a node in the intent path for which you requested metrics.

" + } + }, + "AnalyticsIntentNodeSummary": { + "base": "

An object containing information about the requested path.

", + "refs": { + "AnalyticsIntentNodeSummaries$member": null + } + }, + "AnalyticsIntentResult": { + "base": "

An object containing the results for the intent metrics you requested and the bin and/or group(s) they refer to, if applicable.

", + "refs": { + "AnalyticsIntentResults$member": null + } + }, + "AnalyticsIntentResults": { + "base": null, + "refs": { + "ListIntentMetricsResponse$results": "

The results for the intent metrics.

" + } + }, + "AnalyticsIntentStageField": { + "base": null, + "refs": { + "AnalyticsIntentStageGroupByKey$name": "

A category by which the intent stage analytics were grouped.

", + "AnalyticsIntentStageGroupBySpecification$name": "

Specifies whether to group the intent stages by their name or the intent to which the session was switched.

" + } + }, + "AnalyticsIntentStageFilter": { + "base": "

Contains fields describing a condition by which to filter the intent stages. The expression may be understood as name operator values. For example:

The operators that each filter supports are listed below:

", + "refs": { + "AnalyticsIntentStageFilters$member": null + } + }, + "AnalyticsIntentStageFilterName": { + "base": null, + "refs": { + "AnalyticsIntentStageFilter$name": "

The category by which to filter the intent stages. The descriptions for each option are as follows:

" + } + }, + "AnalyticsIntentStageFilters": { + "base": null, + "refs": { + "ListIntentStageMetricsRequest$filters": "

A list of objects, each of which describes a condition by which you want to filter the results.

" + } + }, + "AnalyticsIntentStageGroupByKey": { + "base": "

Contains the category by which the intent stage analytics and the values for that category were grouped.

", + "refs": { + "AnalyticsIntentStageGroupByKeys$member": null + } + }, + "AnalyticsIntentStageGroupByKeys": { + "base": null, + "refs": { + "AnalyticsIntentStageResult$groupByKeys": "

A list of objects containing the criteria you requested for grouping results and the values of the bins.

" + } + }, + "AnalyticsIntentStageGroupByList": { + "base": null, + "refs": { + "ListIntentStageMetricsRequest$groupBy": "

A list of objects, each of which specifies how to group the results. You can group by the following criteria:

" + } + }, + "AnalyticsIntentStageGroupBySpecification": { + "base": "

Contains the category by which to group the intent stages.

", + "refs": { + "AnalyticsIntentStageGroupByList$member": null + } + }, + "AnalyticsIntentStageMetric": { + "base": "

Contains the metric and the summary statistic you want to calculate, and the order in which to sort the results, for the intent stages across the user sessions with the bot.

", + "refs": { + "AnalyticsIntentStageMetrics$member": null + } + }, + "AnalyticsIntentStageMetricName": { + "base": null, + "refs": { + "AnalyticsIntentStageMetric$name": "

The metric for which you want to get intent stage summary statistics. See Key definitions for more details about these metrics.

", + "AnalyticsIntentStageMetricResult$name": "

The metric that you requested.

" + } + }, + "AnalyticsIntentStageMetricResult": { + "base": "

An object containing the results for an intent stage metric you requested.

", + "refs": { + "AnalyticsIntentStageMetricResults$member": null + } + }, + "AnalyticsIntentStageMetricResults": { + "base": null, + "refs": { + "AnalyticsIntentStageResult$metricsResults": "

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.

" + } + }, + "AnalyticsIntentStageMetrics": { + "base": null, + "refs": { + "ListIntentStageMetricsRequest$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 method by which to organize the results.

" + } + }, + "AnalyticsIntentStageResult": { + "base": "

An object containing the results for the intent stage metrics you requested and the bin and/or group they refer to, if applicable.

", + "refs": { + "AnalyticsIntentStageResults$member": null + } + }, + "AnalyticsIntentStageResults": { + "base": null, + "refs": { + "ListIntentStageMetricsResponse$results": "

The results for the intent stage metrics.

" + } + }, + "AnalyticsInterval": { + "base": null, + "refs": { + "AnalyticsBinBySpecification$interval": "

Specifies the interval of time by which to bin the analytics data.

" + } + }, + "AnalyticsLongValue": { + "base": null, + "refs": { + "SessionSpecification$conversationDurationSeconds": "

The duration of the conversation in seconds. A conversation is defined as a unique combination of a sessionId and an originatingRequestId.

", + "SessionSpecification$numberOfTurns": "

The number of turns that the session took.

", + "UtteranceSpecification$audioVoiceDurationMillis": "

The duration in milliseconds of the audio associated with the utterance.

" + } + }, + "AnalyticsMetricStatistic": { + "base": null, + "refs": { + "AnalyticsIntentMetric$statistic": "

The summary statistic to calculate.

", + "AnalyticsIntentMetricResult$statistic": "

The statistic that you requested to calculate.

", + "AnalyticsIntentStageMetric$statistic": "

The summary statistic to calculate.

", + "AnalyticsIntentStageMetricResult$statistic": "

The summary statistic that you requested to calculate.

", + "AnalyticsSessionMetric$statistic": "

The summary statistic to calculate.

", + "AnalyticsSessionMetricResult$statistic": "

The summary statistic that you requested to calculate.

", + "AnalyticsUtteranceMetric$statistic": "

The summary statistic to calculate.

", + "AnalyticsUtteranceMetricResult$statistic": "

The summary statistic that you requested to calculate.

" + } + }, + "AnalyticsMetricValue": { + "base": null, + "refs": { + "AnalyticsIntentMetricResult$value": "

The value of the summary statistic for the metric that you requested.

", + "AnalyticsIntentStageMetricResult$value": "

The value of the summary statistic for the metric that you requested.

", + "AnalyticsSessionMetricResult$value": "

The value of the summary statistic for the metric that you requested.

", + "AnalyticsUtteranceMetricResult$value": "

The value of the summary statistic for the metric that you requested.

" + } + }, + "AnalyticsModality": { + "base": null, + "refs": { + "SessionSpecification$mode": "

The mode of the session. The possible values are as follows:

", + "UtteranceSpecification$mode": "

The mode of the session. The possible values are as follows:

" + } + }, + "AnalyticsNodeCount": { + "base": null, + "refs": { + "AnalyticsIntentNodeSummary$intentCount": "

The total number of sessions that follow the given path to the given intent.

" + } + }, + "AnalyticsNodeLevel": { + "base": null, + "refs": { + "AnalyticsIntentNodeSummary$intentLevel": "

The number of intents up to and including the requested path.

" + } + }, + "AnalyticsNodeType": { + "base": null, + "refs": { + "AnalyticsIntentNodeSummary$nodeType": "

Specifies whether the node is the end of a path (Exit) or not (Inner).

" + } + }, + "AnalyticsOriginatingRequestId": { + "base": null, + "refs": { + "SessionSpecification$originatingRequestId": "

The identifier of the first request in a session.

" + } + }, + "AnalyticsPath": { + "base": null, + "refs": { + "AnalyticsIntentNodeSummary$intentPath": "

The path.

", + "ListIntentPathsRequest$intentPath": "

The intent path for which you want to retrieve metrics. Use a forward slash to separate intents in the path. For example:

" + } + }, + "AnalyticsPathFilter": { + "base": "

Contains fields describing a condition by which to filter the paths. The expression may be understood as name operator values. For example:

The operators that each filter supports are listed below:

", + "refs": { + "AnalyticsPathFilters$member": null + } + }, + "AnalyticsPathFilters": { + "base": null, + "refs": { + "ListIntentPathsRequest$filters": "

A list of objects, each describes a condition by which you want to filter the results.

" + } + }, + "AnalyticsSessionField": { + "base": null, + "refs": { + "AnalyticsSessionGroupByKey$name": "

The category by which the session analytics were grouped.

", + "AnalyticsSessionGroupBySpecification$name": "

Specifies whether to group the session by their end state or their locale.

" + } + }, + "AnalyticsSessionFilter": { + "base": "

Contains fields describing a condition by which to filter the sessions. The expression may be understood as name operator values. For example:

The operators that each filter supports are listed below:

", + "refs": { + "AnalyticsSessionFilters$member": null + } + }, + "AnalyticsSessionFilterName": { + "base": null, + "refs": { + "AnalyticsSessionFilter$name": "

The category by which to filter the sessions. The descriptions for each option are as follows:

" + } + }, + "AnalyticsSessionFilters": { + "base": null, + "refs": { + "ListSessionAnalyticsDataRequest$filters": "

A list of objects, each of which describes a condition by which you want to filter the results.

", + "ListSessionMetricsRequest$filters": "

A list of objects, each of which describes a condition by which you want to filter the results.

" + } + }, + "AnalyticsSessionGroupByKey": { + "base": "

Contains the category by which the session analytics were grouped and a member of that category.

", + "refs": { + "AnalyticsSessionGroupByKeys$member": null + } + }, + "AnalyticsSessionGroupByKeys": { + "base": null, + "refs": { + "AnalyticsSessionResult$groupByKeys": "

A list of objects containing the criteria you requested for grouping results and the values of the bins.

" + } + }, + "AnalyticsSessionGroupByList": { + "base": null, + "refs": { + "ListSessionMetricsRequest$groupBy": "

A list of objects, each of which specifies how to group the results. You can group by the following criteria:

" + } + }, + "AnalyticsSessionGroupBySpecification": { + "base": "

Contains the category by which to group the sessions.

", + "refs": { + "AnalyticsSessionGroupByList$member": null + } + }, + "AnalyticsSessionId": { + "base": null, + "refs": { + "SessionSpecification$sessionId": "

The identifier of the session.

", + "UtteranceSpecification$sessionId": "

The identifier of the session that the utterance was made in.

" + } + }, + "AnalyticsSessionMetric": { + "base": "

Contains the metric and the summary statistic you want to calculate, and the order in which to sort the results, for the user sessions with the bot.

", + "refs": { + "AnalyticsSessionMetrics$member": null + } + }, + "AnalyticsSessionMetricName": { + "base": null, + "refs": { + "AnalyticsSessionMetric$name": "

The metric for which you want to get session summary statistics.

", + "AnalyticsSessionMetricResult$name": "

The metric that you requested.

" + } + }, + "AnalyticsSessionMetricResult": { + "base": "

An object containing the results for a session metric you requested.

", + "refs": { + "AnalyticsSessionMetricResults$member": null + } + }, + "AnalyticsSessionMetricResults": { + "base": null, + "refs": { + "AnalyticsSessionResult$metricsResults": "

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.

" + } + }, + "AnalyticsSessionMetrics": { + "base": null, + "refs": { + "ListSessionMetricsRequest$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 method by which to organize the results.

" + } + }, + "AnalyticsSessionResult": { + "base": "

An object containing the results for the session metrics you requested and the bin and/or group(s) they refer to, if applicable.

", + "refs": { + "AnalyticsSessionResults$member": null + } + }, + "AnalyticsSessionResults": { + "base": null, + "refs": { + "ListSessionMetricsResponse$results": "

The results for the session metrics.

" + } + }, + "AnalyticsSessionSortByName": { + "base": null, + "refs": { + "SessionDataSortBy$name": "

The measure by which to sort the session analytics data.

" + } + }, + "AnalyticsSortOrder": { + "base": null, + "refs": { + "AnalyticsBinBySpecification$order": "

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.

", + "AnalyticsIntentMetric$order": "

Specifies whether to sort the results in ascending or descending order.

", + "AnalyticsIntentStageMetric$order": "

Specifies whether to sort the results in ascending or descending order of the summary statistic (value in the response).

", + "AnalyticsSessionMetric$order": "

Specifies whether to sort the results in ascending or descending order.

", + "AnalyticsUtteranceMetric$order": "

Specifies whether to sort the results in ascending or descending order.

", + "SessionDataSortBy$order": "

Specifies whether to sort the results in ascending or descending order.

", + "UtteranceDataSortBy$order": "

Specifies whether to sort the results in ascending or descending order.

" + } + }, + "AnalyticsUtteranceAttribute": { + "base": "

An object that specifies the last used intent at the time of the utterance as an attribute to return.

", + "refs": { + "AnalyticsUtteranceAttributes$member": null + } + }, + "AnalyticsUtteranceAttributeName": { + "base": null, + "refs": { + "AnalyticsUtteranceAttribute$name": "

An attribute to return. The only available attribute is the intent that the bot mapped the utterance to.

" + } + }, + "AnalyticsUtteranceAttributeResult": { + "base": "

An object containing the intent that the bot mapped the utterance to.

", + "refs": { + "AnalyticsUtteranceAttributeResults$member": null + } + }, + "AnalyticsUtteranceAttributeResults": { + "base": null, + "refs": { + "AnalyticsUtteranceResult$attributeResults": "

A list of objects containing information about the last used intent at the time of an utterance.

" + } + }, + "AnalyticsUtteranceAttributes": { + "base": null, + "refs": { + "ListUtteranceMetricsRequest$attributes": "

A list containing attributes related to the utterance that you want the response to return. The following attributes are possible:

" + } + }, + "AnalyticsUtteranceField": { + "base": null, + "refs": { + "AnalyticsUtteranceGroupByKey$name": "

The category by which the utterance analytics were grouped.

", + "AnalyticsUtteranceGroupBySpecification$name": "

Specifies whether to group the utterances by their text or their state.

" + } + }, + "AnalyticsUtteranceFilter": { + "base": "

Contains fields describing a condition by which to filter the utterances. The expression may be understood as name operator values. For example:

The operators that each filter supports are listed below:

", + "refs": { + "AnalyticsUtteranceFilters$member": null + } + }, + "AnalyticsUtteranceFilterName": { + "base": null, + "refs": { + "AnalyticsUtteranceFilter$name": "

The category by which to filter the utterances. The descriptions for each option are as follows:

" + } + }, + "AnalyticsUtteranceFilters": { + "base": null, + "refs": { + "ListUtteranceAnalyticsDataRequest$filters": "

A list of objects, each of which describes a condition by which you want to filter the results.

", + "ListUtteranceMetricsRequest$filters": "

A list of objects, each of which describes a condition by which you want to filter the results.

" + } + }, + "AnalyticsUtteranceGroupByKey": { + "base": "

Contains the category by which the utterance analytics were grouped and the values for that category.

", + "refs": { + "AnalyticsUtteranceGroupByKeys$member": null + } + }, + "AnalyticsUtteranceGroupByKeys": { + "base": null, + "refs": { + "AnalyticsUtteranceResult$groupByKeys": "

A list of objects containing the criteria you requested for grouping results and the values of the bins.

" + } + }, + "AnalyticsUtteranceGroupByList": { + "base": null, + "refs": { + "ListUtteranceMetricsRequest$groupBy": "

A list of objects, each of which specifies how to group the results. You can group by the following criteria:

" + } + }, + "AnalyticsUtteranceGroupBySpecification": { + "base": "

Contains the category by which to group the utterances.

", + "refs": { + "AnalyticsUtteranceGroupByList$member": null + } + }, + "AnalyticsUtteranceMetric": { + "base": "

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.

", + "refs": { + "AnalyticsUtteranceMetrics$member": null + } + }, + "AnalyticsUtteranceMetricName": { + "base": null, + "refs": { + "AnalyticsUtteranceMetric$name": "

The metric for which you want to get utterance summary statistics.

", + "AnalyticsUtteranceMetricResult$name": "

The metric that you requested.

" + } + }, + "AnalyticsUtteranceMetricResult": { + "base": "

An object containing the results for the utterance metric you requested.

", + "refs": { + "AnalyticsUtteranceMetricResults$member": null + } + }, + "AnalyticsUtteranceMetricResults": { + "base": null, + "refs": { + "AnalyticsUtteranceResult$metricsResults": "

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.

" + } + }, + "AnalyticsUtteranceMetrics": { + "base": null, + "refs": { + "ListUtteranceMetricsRequest$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 method by which to organize the results.

" + } + }, + "AnalyticsUtteranceResult": { + "base": "

An object containing the results for the utterance metrics you requested and the bin and/or group(s) they refer to, if applicable.

", + "refs": { + "AnalyticsUtteranceResults$member": null + } + }, + "AnalyticsUtteranceResults": { + "base": null, + "refs": { + "ListUtteranceMetricsResponse$results": "

The results for the utterance metrics.

" + } + }, + "AnalyticsUtteranceSortByName": { + "base": null, + "refs": { + "UtteranceDataSortBy$name": "

The measure by which to sort the utterance analytics data.

" + } + }, "AssociatedTranscript": { "base": "

The object containing information that associates the recommended intent/slot type with a conversation.

", "refs": { @@ -357,9 +977,11 @@ "DescribeBotAliasResponse$botAliasId": "

The identifier of the bot alias.

", "ListAggregatedUtterancesRequest$botAliasId": "

The identifier of the bot alias associated with this request. If you specify the bot alias, you can't specify the bot version.

", "ListAggregatedUtterancesResponse$botAliasId": "

The identifier of the bot alias that contains the utterances. If you specified the bot version, the bot alias ID isn't returned.

", + "SessionSpecification$botAliasId": "

The identifier of the alias of the bot that the session was held with.

", "TestSetDiscrepancyReportBotAliasTarget$botAliasId": "

The unique identifier for the bot associated with the bot alias.

", "UpdateBotAliasRequest$botAliasId": "

The unique identifier of the bot alias.

", - "UpdateBotAliasResponse$botAliasId": "

The identifier of the updated bot alias.

" + "UpdateBotAliasResponse$botAliasId": "

The identifier of the updated bot alias.

", + "UtteranceSpecification$botAliasId": "

The identifier of the alias of the bot that the utterance was made to.

" } }, "BotAliasLocaleSettings": { @@ -412,6 +1034,13 @@ "TestExecutionTarget$botAliasTarget": "

Contains information about the bot alias used for the test execution.

" } }, + "BotChannelType": { + "base": null, + "refs": { + "SessionSpecification$channel": "

The channel that is integrated with the bot that the session was held with.

", + "UtteranceSpecification$channel": "

The channel that is integrated with the bot that the utterance was made to.

" + } + }, "BotExportSpecification": { "base": "

Provides the identity of a the bot that was exported.

", "refs": { @@ -989,6 +1618,12 @@ "OutputContext$turnsToLive": "

The number of conversation turns that the output context should remain active. The number of turns is counted from the first time that the context is sent to the user.

" } }, + "ConversationEndState": { + "base": null, + "refs": { + "SessionSpecification$conversationEndState": "

The final state of the conversation. A conversation is defined as a unique combination of a sessionId and an originatingRequestId.

" + } + }, "ConversationLevelIntentClassificationResultItem": { "base": "

The item listing the evaluation of intent level success or failure.

", "refs": { @@ -2138,12 +2773,21 @@ "ListExportsResponse$botId": "

The unique identifier assigned to the bot by Amazon Lex.

", "ListImportsRequest$botId": "

The unique identifier that Amazon Lex assigned to the bot.

", "ListImportsResponse$botId": "

The unique identifier assigned by Amazon Lex to the bot.

", + "ListIntentMetricsRequest$botId": "

The identifier for the bot for which you want to retrieve intent metrics.

", + "ListIntentMetricsResponse$botId": "

The identifier for the bot for which you retrieved intent metrics.

", + "ListIntentPathsRequest$botId": "

The identifier for the bot for which you want to retrieve intent path metrics.

", + "ListIntentStageMetricsRequest$botId": "

The identifier for the bot for which you want to retrieve intent stage metrics.

", + "ListIntentStageMetricsResponse$botId": "

The identifier for the bot for which you retrieved intent stage metrics.

", "ListIntentsRequest$botId": "

The unique identifier of the bot that contains the intent.

", "ListIntentsResponse$botId": "

The identifier of the bot that contains the intent.

", "ListRecommendedIntentsRequest$botId": "

The unique identifier of the bot associated with the recommended intents.

", "ListRecommendedIntentsRequest$botRecommendationId": "

The identifier of the bot recommendation that contains the recommended intents.

", "ListRecommendedIntentsResponse$botId": "

The unique identifier of the bot associated with the recommended intent.

", "ListRecommendedIntentsResponse$botRecommendationId": "

The identifier of the bot recommendation that contains the recommended intent.

", + "ListSessionAnalyticsDataRequest$botId": "

The identifier for the bot for which you want to retrieve session analytics.

", + "ListSessionAnalyticsDataResponse$botId": "

The unique identifier of the bot that the sessions belong to.

", + "ListSessionMetricsRequest$botId": "

The identifier for the bot for which you want to retrieve session metrics.

", + "ListSessionMetricsResponse$botId": "

The identifier for the bot for which you retrieved session metrics.

", "ListSlotTypesRequest$botId": "

The unique identifier of the bot that contains the slot types.

", "ListSlotTypesResponse$botId": "

The identifier of the bot that contains the slot types.

", "ListSlotsRequest$botId": "

The identifier of the bot that contains the slot.

", @@ -2152,6 +2796,10 @@ "ListSlotsResponse$intentId": "

The identifier of the intent that contains the slots.

", "ListTestExecutionResultItemsRequest$testExecutionId": "

The unique identifier of the test execution to list the result items.

", "ListTestSetRecordsRequest$testSetId": "

The identifier of the test set to list its test set records.

", + "ListUtteranceAnalyticsDataRequest$botId": "

The identifier for the bot for which you want to retrieve utterance analytics.

", + "ListUtteranceAnalyticsDataResponse$botId": "

The unique identifier of the bot that the utterances belong to.

", + "ListUtteranceMetricsRequest$botId": "

The identifier for the bot for which you want to retrieve utterance metrics.

", + "ListUtteranceMetricsResponse$botId": "

The identifier for the bot for which you retrieved utterance metrics.

", "ParentBotNetwork$botId": "

The identifier of the network of bots assigned by Amazon Lex.

", "RecommendedIntentSummary$intentId": "

The unique identifier of a recommended intent associated with the bot recommendation.

", "SearchAssociatedTranscriptsRequest$botId": "

The unique identifier of the bot associated with the transcripts that you are searching.

", @@ -2206,13 +2854,15 @@ "UpdateSlotTypeResponse$slotTypeId": "

The unique identifier of the updated slot type.

", "UpdateSlotTypeResponse$botId": "

The identifier of the bot that contains the slot type.

", "UpdateTestSetRequest$testSetId": "

The test set Id for which update test operation to be performed.

", - "UpdateTestSetResponse$testSetId": "

The test set Id for which update test operation to be performed.

" + "UpdateTestSetResponse$testSetId": "

The test set Id for which update test operation to be performed.

", + "UtteranceSpecification$utteranceRequestId": "

The identifier of the request associated with the utterance.

" } }, "ImageResponseCard": { "base": "

A card that is shown to the user by a messaging platform. You define the contents of the card, the card is displayed by the platform.

When you use a response card, the response from the user is constrained to the text associated with a button on the card.

", "refs": { - "Message$imageResponseCard": "

A message that defines a response card that the client application can show to the user.

" + "Message$imageResponseCard": "

A message that defines a response card that the client application can show to the user.

", + "UtteranceBotResponse$imageResponseCard": null } }, "ImportExportFileFormat": { @@ -2460,6 +3110,12 @@ "ListIntentsRequest$sortBy": "

Determines the sort order for the response from the ListIntents operation. You can choose to sort by the intent name or last updated date in either ascending or descending order.

" } }, + "IntentState": { + "base": null, + "refs": { + "UtteranceSpecification$intentState": "

The state of the intent that the utterance is associated to.

" + } + }, "IntentStatistics": { "base": "

The object that contains the statistical summary of recommended intents associated with the bot recommendation.

", "refs": { @@ -2483,6 +3139,18 @@ "refs": { } }, + "InvokedIntentSample": { + "base": "

An object containing the name of an intent that was invoked.

", + "refs": { + "InvokedIntentSamples$member": null + } + }, + "InvokedIntentSamples": { + "base": null, + "refs": { + "SessionSpecification$invokedIntentSamples": "

A list of objects containing the name of an intent that was invoked.

" + } + }, "ItemId": { "base": null, "refs": { @@ -2645,6 +3313,36 @@ "refs": { } }, + "ListIntentMetricsRequest": { + "base": null, + "refs": { + } + }, + "ListIntentMetricsResponse": { + "base": null, + "refs": { + } + }, + "ListIntentPathsRequest": { + "base": null, + "refs": { + } + }, + "ListIntentPathsResponse": { + "base": null, + "refs": { + } + }, + "ListIntentStageMetricsRequest": { + "base": null, + "refs": { + } + }, + "ListIntentStageMetricsResponse": { + "base": null, + "refs": { + } + }, "ListIntentsRequest": { "base": null, "refs": { @@ -2665,6 +3363,26 @@ "refs": { } }, + "ListSessionAnalyticsDataRequest": { + "base": null, + "refs": { + } + }, + "ListSessionAnalyticsDataResponse": { + "base": null, + "refs": { + } + }, + "ListSessionMetricsRequest": { + "base": null, + "refs": { + } + }, + "ListSessionMetricsResponse": { + "base": null, + "refs": { + } + }, "ListSlotTypesRequest": { "base": null, "refs": { @@ -2735,6 +3453,26 @@ "refs": { } }, + "ListUtteranceAnalyticsDataRequest": { + "base": null, + "refs": { + } + }, + "ListUtteranceAnalyticsDataResponse": { + "base": null, + "refs": { + } + }, + "ListUtteranceMetricsRequest": { + "base": null, + "refs": { + } + }, + "ListUtteranceMetricsResponse": { + "base": null, + "refs": { + } + }, "LocaleId": { "base": null, "refs": { @@ -2807,6 +3545,7 @@ "ListSlotsResponse$localeId": "

The language and locale of the slots in the list.

", "SearchAssociatedTranscriptsRequest$localeId": "

The identifier of the language and locale of the transcripts to search. The string must match one of the supported locales. For more information, see Supported languages

", "SearchAssociatedTranscriptsResponse$localeId": "

The identifier of the language and locale of the transcripts to search. The string must match one of the supported locales. For more information, see Supported languages

", + "SessionSpecification$localeId": "

The locale of the bot that the session was held with.

", "StartBotRecommendationRequest$localeId": "

The identifier of the language and locale of the bot recommendation to start. The string must match one of the supported locales. For more information, see Supported languages

", "StartBotRecommendationResponse$localeId": "

The identifier of the language and locale of the bot recommendation to start. The string must match one of the supported locales. For more information, see Supported languages

", "StopBotRecommendationRequest$localeId": "

The identifier of the language and locale of the bot recommendation to stop. The string must match one of the supported locales. For more information, see Supported languages

", @@ -2821,7 +3560,8 @@ "UpdateSlotRequest$localeId": "

The identifier of the language and locale that contains the slot. The string must match one of the supported locales. For more information, see Supported languages.

", "UpdateSlotResponse$localeId": "

The locale that contains the slot.

", "UpdateSlotTypeRequest$localeId": "

The identifier of the language and locale that contains the slot type. The string must match one of the supported locales. For more information, see Supported languages.

", - "UpdateSlotTypeResponse$localeId": "

The language and locale of the updated slot type.

" + "UpdateSlotTypeResponse$localeId": "

The language and locale of the updated slot type.

", + "UtteranceSpecification$localeId": "

The locale of the bot that the utterance was made to.

" } }, "LocaleName": { @@ -2852,14 +3592,20 @@ "ListCustomVocabularyItemsRequest$maxResults": "

The maximum number of items returned by the list operation.

", "ListExportsRequest$maxResults": "

The maximum number of exports to return in each page of results. If there are fewer results than the max page size, only the actual number of results are returned.

", "ListImportsRequest$maxResults": "

The maximum number of imports to return in each page of results. If there are fewer results than the max page size, only the actual number of results are returned.

", + "ListIntentMetricsRequest$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.

", + "ListIntentStageMetricsRequest$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.

", "ListIntentsRequest$maxResults": "

The maximum number of intents to return in each page of results. If there are fewer results than the max page size, only the actual number of results are returned.

", "ListRecommendedIntentsRequest$maxResults": "

The maximum number of bot recommendations to return in each page of results. If there are fewer results than the max page size, only the actual number of results are returned.

", + "ListSessionAnalyticsDataRequest$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.

", + "ListSessionMetricsRequest$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.

", "ListSlotTypesRequest$maxResults": "

The maximum number of slot types to return in each page of results. If there are fewer results than the max page size, only the actual number of results are returned.

", "ListSlotsRequest$maxResults": "

The maximum number of slots to return in each page of results. If there are fewer results than the max page size, only the actual number of results are returned.

", "ListTestExecutionResultItemsRequest$maxResults": "

The maximum number of test execution result items to return in each page. If there are fewer results than the max page size, only the actual number of results are returned.

", "ListTestExecutionsRequest$maxResults": "

The maximum number of test executions to return in each page. If there are fewer results than the max page size, only the actual number of results are returned.

", "ListTestSetRecordsRequest$maxResults": "

The maximum number of test set records to return in each page. If there are fewer records than the max page size, only the actual number of records are returned.

", "ListTestSetsRequest$maxResults": "

The maximum number of test sets to return in each page. If there are fewer results than the max page size, only the actual number of results are returned.

", + "ListUtteranceAnalyticsDataRequest$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.

", + "ListUtteranceMetricsRequest$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.

", "SearchAssociatedTranscriptsRequest$maxResults": "

The maximum number of bot recommendations to return in each page of results. If there are fewer results than the max page size, only the actual number of results are returned.

", "SearchAssociatedTranscriptsResponse$totalResults": "

The total number of transcripts returned by the search.

" } @@ -2934,6 +3680,8 @@ "base": null, "refs": { "AgentTurnResult$actualIntent": "

The actual intent for the agent turn in a test set execution.

", + "AnalyticsIntentNodeSummary$intentName": "

The name of the intent at the end of the requested path.

", + "AnalyticsUtteranceAttributeResult$lastUsedIntent": "

The intent that the bot mapped the utterance to.

", "BotAliasSummary$botAliasName": "

The name of the bot alias.

", "BotImportSpecification$botName": "

The name that Amazon Lex should use for the bot.

", "BotMember$botMemberName": "

The unique name of a bot that is a member of this network of bots.

", @@ -2973,6 +3721,7 @@ "IntentLevelSlotResolutionTestResultItem$intentName": "

The name of the intent that was recognized.

", "IntentOverride$name": "

The name of the intent. Only required when you're switching intents.

", "IntentSummary$intentName": "

The name of the intent.

", + "InvokedIntentSample$intentName": "

The name of an intent that was invoked.

", "OutputContext$name": "

The name of the output context.

", "RecommendedIntentSummary$intentName": "

The name of a recommended intent associated with the bot recommendation.

", "SlotHintsIntentMap$key": null, @@ -3003,7 +3752,9 @@ "UpdateTestSetRequest$testSetName": "

The new test set name.

", "UpdateTestSetResponse$testSetName": "

The test set name for the updated test set.

", "UserTurnIntentOutput$name": "

The name of the intent.

", - "UserTurnSlotOutputMap$key": null + "UserTurnSlotOutputMap$key": null, + "UtteranceSpecification$associatedIntentName": "

The name of the intent that the utterance is associated to.

", + "UtteranceSpecification$associatedSlotName": "

The name of the slot that the utterance is associated to.

" } }, "NewCustomVocabularyItem": { @@ -3044,10 +3795,18 @@ "ListExportsResponse$nextToken": "

A token that indicates whether there are more results to return in a response to the ListExports operation. If the nextToken field is present, you send the contents as the nextToken parameter of a ListExports operation request to get the next page of results.

", "ListImportsRequest$nextToken": "

If the response from the ListImports 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 ListImports request to return the next page of results. For a complete set of results, call the ListImports operation until the nextToken returned in the response is null.

", "ListImportsResponse$nextToken": "

A token that indicates whether there are more results to return in a response to the ListImports operation. If the nextToken field is present, you send the contents as the nextToken parameter of a ListImports operation request to get the next page of results.

", + "ListIntentMetricsRequest$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.

", + "ListIntentMetricsResponse$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.

", + "ListIntentStageMetricsRequest$nextToken": "

If the response from the ListIntentStageMetrics 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 ListIntentStageMetrics request to return the next page of results. For a complete set of results, call the ListIntentStageMetrics operation until the nextToken returned in the response is null.

", + "ListIntentStageMetricsResponse$nextToken": "

If the response from the ListIntentStageMetrics 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 ListIntentStageMetrics request to return the next page of results. For a complete set of results, call the ListIntentStageMetrics operation until the nextToken returned in the response is null.

", "ListIntentsRequest$nextToken": "

If the response from the ListIntents 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 ListIntents request to return the next page of results. For a complete set of results, call the ListIntents operation until the nextToken returned in the response is null.

", "ListIntentsResponse$nextToken": "

A token that indicates whether there are more results to return in a response to the ListIntents operation. If the nextToken field is present, you send the contents as the nextToken parameter of a ListIntents operation request to get the next page of results.

", "ListRecommendedIntentsRequest$nextToken": "

If the response from the ListRecommendedIntents operation contains more results than specified in the maxResults parameter, a token is returned in the response. Use that token in the nextToken parameter to return the next page of results.

", "ListRecommendedIntentsResponse$nextToken": "

A token that indicates whether there are more results to return in a response to the ListRecommendedIntents operation. If the nextToken field is present, you send the contents as the nextToken parameter of a ListRecommendedIntents operation request to get the next page of results.

", + "ListSessionAnalyticsDataRequest$nextToken": "

If the response from the ListSessionAnalyticsData 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 ListSessionAnalyticsData request to return the next page of results. For a complete set of results, call the ListSessionAnalyticsData operation until the nextToken returned in the response is null.

", + "ListSessionAnalyticsDataResponse$nextToken": "

If the response from the ListSessionAnalyticsData 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 ListSessionAnalyticsData request to return the next page of results. For a complete set of results, call the ListSessionAnalyticsData operation until the nextToken returned in the response is null.

", + "ListSessionMetricsRequest$nextToken": "

If the response from the ListSessionMetrics 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 ListSessionMetrics request to return the next page of results. For a complete set of results, call the ListSessionMetrics operation until the nextToken returned in the response is null.

", + "ListSessionMetricsResponse$nextToken": "

If the response from the ListSessionMetrics 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 ListSessionMetrics request to return the next page of results. For a complete set of results, call the ListSessionMetrics operation until the nextToken returned in the response is null.

", "ListSlotTypesRequest$nextToken": "

If the response from the ListSlotTypes operation contains more results than specified in the maxResults parameter, a token is returned in the response. Use that token in the nextToken parameter to return the next page of results.

", "ListSlotTypesResponse$nextToken": "

A token that indicates whether there are more results to return in a response to the ListSlotTypes operation. If the nextToken field is present, you send the contents as the nextToken parameter of a ListSlotTypes operation request to get the next page of results.

", "ListSlotsRequest$nextToken": "

If the response from the ListSlots operation contains more results than specified in the maxResults parameter, a token is returned in the response. Use that token in the nextToken parameter to return the next page of results.

", @@ -3059,7 +3818,11 @@ "ListTestSetRecordsRequest$nextToken": "

If the response from the ListTestSetRecords operation contains more results than specified in the maxResults parameter, a token is returned in the response. Use that token in the nextToken parameter to return the next page of results.

", "ListTestSetRecordsResponse$nextToken": "

A token that indicates whether there are more records to return in a response to the ListTestSetRecords operation. If the nextToken field is present, you send the contents as the nextToken parameter of a ListTestSetRecords operation request to get the next page of records.

", "ListTestSetsRequest$nextToken": "

If the response from the ListTestSets operation contains more results than specified in the maxResults parameter, a token is returned in the response. Use that token in the nextToken parameter to return the next page of results.

", - "ListTestSetsResponse$nextToken": "

A token that indicates whether there are more results to return in a response to the ListTestSets operation. If the nextToken field is present, you send the contents as the nextToken parameter of a ListTestSets operation request to get the next page of results.

" + "ListTestSetsResponse$nextToken": "

A token that indicates whether there are more results to return in a response to the ListTestSets operation. If the nextToken field is present, you send the contents as the nextToken parameter of a ListTestSets operation request to get the next page of results.

", + "ListUtteranceAnalyticsDataRequest$nextToken": "

If the response from the ListUtteranceAnalyticsData 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 ListUtteranceAnalyticsData request to return the next page of results. For a complete set of results, call the ListUtteranceAnalyticsData operation until the nextToken returned in the response is null.

", + "ListUtteranceAnalyticsDataResponse$nextToken": "

If the response from the ListUtteranceAnalyticsData 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 ListUtteranceAnalyticsData request to return the next page of results. For a complete set of results, call the ListUtteranceAnalyticsData operation until the nextToken returned in the response is null.

", + "ListUtteranceMetricsRequest$nextToken": "

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.

", + "ListUtteranceMetricsResponse$nextToken": "

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.

" } }, "NonEmptyString": { @@ -3082,7 +3845,9 @@ "DeleteBotVersionRequest$botVersion": "

The version of the bot to delete.

", "DeleteBotVersionResponse$botVersion": "

The version of the bot that is being deleted.

", "DescribeBotVersionRequest$botVersion": "

The version of the bot to return metadata for.

", - "DescribeBotVersionResponse$botVersion": "

The version of the bot that was described.

" + "DescribeBotVersionResponse$botVersion": "

The version of the bot that was described.

", + "SessionSpecification$botVersion": "

The version of the bot that the session was held with.

", + "UtteranceSpecification$botVersion": "

The version of the bot that the utterance was made to.

" } }, "ObfuscationSetting": { @@ -3562,12 +4327,30 @@ "refs": { } }, + "SessionDataSortBy": { + "base": "

An object specifying the measure and method by which to sort the session analytics data.

", + "refs": { + "ListSessionAnalyticsDataRequest$sortBy": "

An object specifying the measure and method by which to sort the session analytics data.

" + } + }, "SessionId": { "base": null, "refs": { "DeleteUtterancesRequest$sessionId": "

The unique identifier of the session with the user. The ID is returned in the response from the RecognizeText and RecognizeUtterance operations.

" } }, + "SessionSpecification": { + "base": "

An object containing information about a specific session.

", + "refs": { + "SessionSpecifications$member": null + } + }, + "SessionSpecifications": { + "base": null, + "refs": { + "ListSessionAnalyticsDataResponse$sessions": "

A list of objects, each of which contains information about a session with the bot.

" + } + }, "SessionTTL": { "base": null, "refs": { @@ -3968,7 +4751,14 @@ "refs": { "StringMap$value": null, "TestSetIntentDiscrepancyItem$errorMessage": "

The error message for a discrepancy for an intent between the test set and the bot.

", - "TestSetSlotDiscrepancyItem$errorMessage": "

The error message for a discrepancy for an intent between the test set and the bot.

" + "TestSetSlotDiscrepancyItem$errorMessage": "

The error message for a discrepancy for an intent between the test set and the bot.

", + "UtteranceBotResponse$content": "

The text of the response to the utterance from the bot.

", + "UtteranceSpecification$utterance": "

The text of the utterance.

", + "UtteranceSpecification$inputType": "

The input type of the utterance. The possible values are as follows:

", + "UtteranceSpecification$outputType": "

The output type of the utterance. The possible values are as follows:

", + "UtteranceSpecification$dialogActionType": "

The type of dialog action that the utterance is associated to. See the type field in DialogAction for more information.

", + "UtteranceSpecification$botResponseAudioVoiceId": "

The identifier for the audio of the bot response.

", + "UtteranceSpecification$slotsFilledInSession": "

The slots that have been filled in the session by the time of the utterance.

" } }, "StringMap": { @@ -4480,6 +5270,22 @@ "ListAggregatedUtterancesResponse$aggregationWindowStartTime": "

The date and time that the aggregation window begins. Only data collected after this time is returned in the results.

", "ListAggregatedUtterancesResponse$aggregationWindowEndTime": "

The date and time that the aggregation window ends. Only data collected between the start time and the end time are returned in the results.

", "ListAggregatedUtterancesResponse$aggregationLastRefreshedDateTime": "

The last date and time that the aggregated data was collected. The time period depends on the length of the aggregation window.

", + "ListIntentMetricsRequest$startDateTime": "

The timestamp that marks the beginning of the range of time for which you want to see intent metrics.

", + "ListIntentMetricsRequest$endDateTime": "

The date and time that marks the end of the range of time for which you want to see intent metrics.

", + "ListIntentPathsRequest$startDateTime": "

The date and time that marks the beginning of the range of time for which you want to see intent path metrics.

", + "ListIntentPathsRequest$endDateTime": "

The date and time that marks the end of the range of time for which you want to see intent path metrics.

", + "ListIntentStageMetricsRequest$startDateTime": "

The date and time that marks the beginning of the range of time for which you want to see intent stage metrics.

", + "ListIntentStageMetricsRequest$endDateTime": "

The date and time that marks the end of the range of time for which you want to see intent stage metrics.

", + "ListSessionAnalyticsDataRequest$startDateTime": "

The date and time that marks the beginning of the range of time for which you want to see session analytics.

", + "ListSessionAnalyticsDataRequest$endDateTime": "

The date and time that marks the end of the range of time for which you want to see session analytics.

", + "ListSessionMetricsRequest$startDateTime": "

The date and time that marks the beginning of the range of time for which you want to see session metrics.

", + "ListSessionMetricsRequest$endDateTime": "

The date and time that marks the end of the range of time for which you want to see session metrics.

", + "ListUtteranceAnalyticsDataRequest$startDateTime": "

The date and time that marks the beginning of the range of time for which you want to see utterance analytics.

", + "ListUtteranceAnalyticsDataRequest$endDateTime": "

The date and time that marks the end of the range of time for which you want to see utterance analytics.

", + "ListUtteranceMetricsRequest$startDateTime": "

The date and time that marks the beginning of the range of time for which you want to see utterance metrics.

", + "ListUtteranceMetricsRequest$endDateTime": "

The date and time that marks the end of the range of time for which you want to see utterance metrics.

", + "SessionSpecification$conversationStartTime": "

The date and time when the conversation began. A conversation is defined as a unique combination of a sessionId and an originatingRequestId.

", + "SessionSpecification$conversationEndTime": "

The date and time when the conversation ended. A conversation is defined as a unique combination of a sessionId and an originatingRequestId.

", "SlotSummary$lastUpdatedDateTime": "

The timestamp of the last date and time that the slot was updated.

", "SlotTypeSummary$lastUpdatedDateTime": "

A timestamp of the date and time that the slot type was last updated.

", "StartBotRecommendationResponse$creationDateTime": "

A timestamp of the date and time that the bot recommendation was created.

", @@ -4507,7 +5313,10 @@ "UpdateSlotTypeResponse$creationDateTime": "

The timestamp of the date and time that the slot type was created.

", "UpdateSlotTypeResponse$lastUpdatedDateTime": "

A timestamp of the date and time that the slot type was last updated.

", "UpdateTestSetResponse$creationDateTime": "

The creation date and time for the updated test set.

", - "UpdateTestSetResponse$lastUpdatedDateTime": "

The date and time of the last update for the updated test set.

" + "UpdateTestSetResponse$lastUpdatedDateTime": "

The date and time of the last update for the updated test set.

", + "UtteranceSpecification$conversationStartTime": "

The date and time when the conversation in which the utterance took place began. A conversation is defined as a unique combination of a sessionId and an originatingRequestId.

", + "UtteranceSpecification$conversationEndTime": "

The date and time when the conversation in which the utterance took place ended. A conversation is defined as a unique combination of a sessionId and an originatingRequestId.

", + "UtteranceSpecification$utteranceTimestamp": "

The date and time when the utterance took place.

" } }, "Transcript": { @@ -4738,6 +5547,30 @@ "UtteranceInputSpecification$audioInput": "

Contains information about the audio input for an utterance.

" } }, + "UtteranceBotResponse": { + "base": "

An object that contains a response to the utterance from the bot.

", + "refs": { + "UtteranceBotResponses$member": null + } + }, + "UtteranceBotResponses": { + "base": null, + "refs": { + "UtteranceSpecification$botResponses": "

A list of objects containing information about the bot response to the utterance.

" + } + }, + "UtteranceContentType": { + "base": null, + "refs": { + "UtteranceBotResponse$contentType": "

The type of the response. The following values are possible:

" + } + }, + "UtteranceDataSortBy": { + "base": "

An object specifying the measure and method by which to sort the utterance data.

", + "refs": { + "ListUtteranceAnalyticsDataRequest$sortBy": "

An object specifying the measure and method by which to sort the utterance analytics data.

" + } + }, "UtteranceInputSpecification": { "base": "

Contains information about input of an utterance.

", "refs": { @@ -4762,6 +5595,24 @@ "TestExecutionResultItems$utteranceLevelTestResults": "

Results related to utterances in the test set.

" } }, + "UtteranceSpecification": { + "base": "

An object containing information about a specific utterance.

", + "refs": { + "UtteranceSpecifications$member": null + } + }, + "UtteranceSpecifications": { + "base": null, + "refs": { + "ListUtteranceAnalyticsDataResponse$utterances": "

A list of objects, each of which contains information about an utterance in a user session with your bot.

" + } + }, + "UtteranceUnderstood": { + "base": null, + "refs": { + "UtteranceSpecification$utteranceUnderstood": "

Specifies whether the bot understood the utterance or not.

" + } + }, "ValidationException": { "base": "

One of the input parameters in your request isn't valid. Check the parameters and try your request again.

", "refs": { diff --git a/models/apis/models.lex.v2/2020-08-07/paginators-1.json b/models/apis/models.lex.v2/2020-08-07/paginators-1.json index 83a73642bd..086ef701af 100644 --- a/models/apis/models.lex.v2/2020-08-07/paginators-1.json +++ b/models/apis/models.lex.v2/2020-08-07/paginators-1.json @@ -55,6 +55,16 @@ "output_token": "nextToken", "limit_key": "maxResults" }, + "ListIntentMetrics": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults" + }, + "ListIntentStageMetrics": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults" + }, "ListIntents": { "input_token": "nextToken", "output_token": "nextToken", @@ -65,6 +75,16 @@ "output_token": "nextToken", "limit_key": "maxResults" }, + "ListSessionAnalyticsData": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults" + }, + "ListSessionMetrics": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults" + }, "ListSlotTypes": { "input_token": "nextToken", "output_token": "nextToken", @@ -94,6 +114,16 @@ "input_token": "nextToken", "output_token": "nextToken", "limit_key": "maxResults" + }, + "ListUtteranceAnalyticsData": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults" + }, + "ListUtteranceMetrics": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults" } } } diff --git a/models/apis/snowball/2016-06-30/api-2.json b/models/apis/snowball/2016-06-30/api-2.json index 18e687031c..d97ed91d01 100755 --- a/models/apis/snowball/2016-06-30/api-2.json +++ b/models/apis/snowball/2016-06-30/api-2.json @@ -287,6 +287,18 @@ {"shape":"InvalidNextTokenException"} ] }, + "ListPickupLocations":{ + "name":"ListPickupLocations", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListPickupLocationsRequest"}, + "output":{"shape":"ListPickupLocationsResult"}, + "errors":[ + {"shape":"InvalidResourceException"} + ] + }, "ListServiceVersions":{ "name":"ListServiceVersions", "http":{ @@ -376,7 +388,8 @@ "Country":{"shape":"String"}, "PostalCode":{"shape":"String"}, "PhoneNumber":{"shape":"String"}, - "IsRestricted":{"shape":"Boolean"} + "IsRestricted":{"shape":"Boolean"}, + "Type":{"shape":"AddressType"} } }, "AddressId":{ @@ -389,6 +402,13 @@ "type":"list", "member":{"shape":"Address"} }, + "AddressType":{ + "type":"string", + "enum":[ + "CUST_PICKUP", + "AWS_SHIP" + ] + }, "AmiId":{ "type":"string", "max":21, @@ -562,7 +582,9 @@ "TaxDocuments":{"shape":"TaxDocuments"}, "DeviceConfiguration":{"shape":"DeviceConfiguration"}, "RemoteManagement":{"shape":"RemoteManagement"}, - "LongTermPricingId":{"shape":"LongTermPricingId"} + "LongTermPricingId":{"shape":"LongTermPricingId"}, + "ImpactLevel":{"shape":"ImpactLevel"}, + "PickupDetails":{"shape":"PickupDetails"} } }, "CreateJobResult":{ @@ -573,7 +595,10 @@ }, "CreateLongTermPricingRequest":{ "type":"structure", - "required":["LongTermPricingType"], + "required":[ + "LongTermPricingType", + "SnowballType" + ], "members":{ "LongTermPricingType":{"shape":"LongTermPricingType"}, "IsLongTermPricingAutoRenew":{"shape":"JavaBoolean"}, @@ -695,6 +720,12 @@ "SnowconeDeviceConfiguration":{"shape":"SnowconeDeviceConfiguration"} } }, + "DevicePickupId":{ + "type":"string", + "max":40, + "min":40, + "pattern":"DPID[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}" + }, "DeviceServiceName":{ "type":"string", "enum":[ @@ -728,6 +759,13 @@ }, "exception":true }, + "Email":{ + "type":"string", + "max":320, + "min":3, + "pattern":"^(?=.{3,100}$).+@.+[.].+$", + "sensitive":true + }, "EventTriggerDefinition":{ "type":"structure", "members":{ @@ -801,6 +839,16 @@ "GSTIN":{"shape":"GSTIN"} } }, + "ImpactLevel":{ + "type":"string", + "enum":[ + "IL2", + "IL4", + "IL5", + "IL6", + "IL99" + ] + }, "InitialClusterSize":{ "type":"integer", "max":16, @@ -898,7 +946,10 @@ "DeviceConfiguration":{"shape":"DeviceConfiguration"}, "RemoteManagement":{"shape":"RemoteManagement"}, "LongTermPricingId":{"shape":"LongTermPricingId"}, - "OnDeviceServiceConfiguration":{"shape":"OnDeviceServiceConfiguration"} + "OnDeviceServiceConfiguration":{"shape":"OnDeviceServiceConfiguration"}, + "ImpactLevel":{"shape":"ImpactLevel"}, + "PickupDetails":{"shape":"PickupDetails"}, + "SnowballId":{"shape":"String"} } }, "JobMetadataList":{ @@ -1050,6 +1101,20 @@ "NextToken":{"shape":"String"} } }, + "ListPickupLocationsRequest":{ + "type":"structure", + "members":{ + "MaxResults":{"shape":"ListLimit"}, + "NextToken":{"shape":"String"} + } + }, + "ListPickupLocationsResult":{ + "type":"structure", + "members":{ + "Addresses":{"shape":"AddressList"}, + "NextToken":{"shape":"String"} + } + }, "ListServiceVersionsRequest":{ "type":"structure", "required":["ServiceName"], @@ -1132,7 +1197,8 @@ "members":{ "SnsTopicARN":{"shape":"SnsTopicARN"}, "JobStatesToNotify":{"shape":"JobStateList"}, - "NotifyAll":{"shape":"Boolean"} + "NotifyAll":{"shape":"Boolean"}, + "DevicePickupSnsTopicARN":{"shape":"SnsTopicARN"} } }, "OnDeviceServiceConfiguration":{ @@ -1144,11 +1210,31 @@ "S3OnDeviceService":{"shape":"S3OnDeviceServiceConfiguration"} } }, + "PhoneNumber":{ + "type":"string", + "max":30, + "min":7, + "pattern":"^\\s*(?:\\+?(\\d{1,3}))?[-. (]*(\\d{3})[-. )]*(\\d{3})[-. ]*(\\d{4})(?: *x(\\d+))?\\s*$", + "sensitive":true + }, + "PickupDetails":{ + "type":"structure", + "members":{ + "Name":{"shape":"String"}, + "PhoneNumber":{"shape":"PhoneNumber"}, + "Email":{"shape":"Email"}, + "IdentificationNumber":{"shape":"String"}, + "IdentificationExpirationDate":{"shape":"Timestamp"}, + "IdentificationIssuingOrg":{"shape":"String"}, + "DevicePickupId":{"shape":"DevicePickupId"} + } + }, "RemoteManagement":{ "type":"string", "enum":[ "INSTALLED_ONLY", - "INSTALLED_AUTOSTART" + "INSTALLED_AUTOSTART", + "NOT_INSTALLED" ] }, "ResourceARN":{ @@ -1267,7 +1353,8 @@ "T14", "T32", "NoPreference", - "T240" + "T240", + "T13" ] }, "SnowballType":{ @@ -1281,7 +1368,8 @@ "SNC1_HDD", "SNC1_SSD", "V3_5C", - "V3_5S" + "V3_5S", + "RACK_5U_C" ] }, "SnowconeDeviceConfiguration":{ @@ -1382,7 +1470,8 @@ "ShippingOption":{"shape":"ShippingOption"}, "Description":{"shape":"String"}, "SnowballCapacityPreference":{"shape":"SnowballCapacity"}, - "ForwardingAddressId":{"shape":"AddressId"} + "ForwardingAddressId":{"shape":"AddressId"}, + "PickupDetails":{"shape":"PickupDetails"} } }, "UpdateJobResult":{ diff --git a/models/apis/snowball/2016-06-30/docs-2.json b/models/apis/snowball/2016-06-30/docs-2.json index 137d1e0c29..19ec8d2543 100755 --- a/models/apis/snowball/2016-06-30/docs-2.json +++ b/models/apis/snowball/2016-06-30/docs-2.json @@ -6,7 +6,7 @@ "CancelJob": "

Cancels the specified job. You can only cancel a job before its JobState value changes to PreparingAppliance. Requesting the ListJobs or DescribeJob action returns a job's JobState as part of the response element data returned.

", "CreateAddress": "

Creates an address for a Snow device to be shipped to. In most regions, addresses are validated at the time of creation. The address you provide must be located within the serviceable area of your region. If the address is invalid or unsupported, then an exception is thrown.

", "CreateCluster": "

Creates an empty cluster. Each cluster supports five nodes. You use the CreateJob action separately to create the jobs for each of these nodes. The cluster does not ship until these five node jobs have been created.

", - "CreateJob": "

Creates a job to import or export data between Amazon S3 and your on-premises data center. Your Amazon Web Services account must have the right trust policies and permissions in place to create a job for a Snow device. If you're creating a job for a node in a cluster, you only need to provide the clusterId value; the other job attributes are inherited from the cluster.

Only the Snowball; Edge device type is supported when ordering clustered jobs.

The device capacity is optional.

Availability of device types differ by Amazon Web Services Region. For more information about Region availability, see Amazon Web Services Regional Services.

Snow Family devices and their capacities.

", + "CreateJob": "

Creates a job to import or export data between Amazon S3 and your on-premises data center. Your Amazon Web Services account must have the right trust policies and permissions in place to create a job for a Snow device. If you're creating a job for a node in a cluster, you only need to provide the clusterId value; the other job attributes are inherited from the cluster.

Only the Snowball; Edge device type is supported when ordering clustered jobs.

The device capacity is optional.

Availability of device types differ by Amazon Web Services Region. For more information about Region availability, see Amazon Web Services Regional Services.

Snow Family devices and their capacities.

", "CreateLongTermPricing": "

Creates a job with the long-term usage option for a device. The long-term usage is a 1-year or 3-year long-term pricing type for the device. You are billed upfront, and Amazon Web Services provides discounts for long-term pricing.

", "CreateReturnShippingLabel": "

Creates a shipping label that will be used to return the Snow device to Amazon Web Services.

", "DescribeAddress": "

Takes an AddressId and returns specific details about that address in the form of an Address object.

", @@ -20,9 +20,10 @@ "GetSoftwareUpdates": "

Returns an Amazon S3 presigned URL for an update file associated with a specified JobId.

", "ListClusterJobs": "

Returns an array of JobListEntry objects of the specified length. Each JobListEntry object is for a job in the specified cluster and contains a job's state, a job's ID, and other information.

", "ListClusters": "

Returns an array of ClusterListEntry objects of the specified length. Each ClusterListEntry object contains a cluster's state, a cluster's ID, and other important status information.

", - "ListCompatibleImages": "

This action returns a list of the different Amazon EC2 Amazon Machine Images (AMIs) that are owned by your Amazon Web Services accountthat would be supported for use on a Snow device. Currently, supported AMIs are based on the Amazon Linux-2, Ubuntu 20.04 LTS - Focal, or Ubuntu 22.04 LTS - Jammy images, available on the Amazon Web Services Marketplace. Ubuntu 16.04 LTS - Xenial (HVM) images are no longer supported in the Market, but still supported for use on devices through Amazon EC2 VM Import/Export and running locally in AMIs.

", + "ListCompatibleImages": "

This action returns a list of the different Amazon EC2-compatible Amazon Machine Images (AMIs) that are owned by your Amazon Web Services accountthat would be supported for use on a Snow device. Currently, supported AMIs are based on the Amazon Linux-2, Ubuntu 20.04 LTS - Focal, or Ubuntu 22.04 LTS - Jammy images, available on the Amazon Web Services Marketplace. Ubuntu 16.04 LTS - Xenial (HVM) images are no longer supported in the Market, but still supported for use on devices through Amazon EC2 VM Import/Export and running locally in AMIs.

", "ListJobs": "

Returns an array of JobListEntry objects of the specified length. Each JobListEntry object contains a job's state, a job's ID, and a value that indicates whether the job is a job part, in the case of export jobs. Calling this API action in one of the US regions will return jobs from the list of all jobs associated with this account in all US regions.

", "ListLongTermPricing": "

Lists all long-term pricing types.

", + "ListPickupLocations": "

A list of locations from which the customer can choose to pickup a device.

", "ListServiceVersions": "

Lists all supported versions for Snow on-device services. Returns an array of ServiceVersion object containing the supported versions for a particular service.

", "UpdateCluster": "

While a cluster's ClusterState value is in the AwaitingQuorum state, you can update some of the information associated with a cluster. Once the cluster changes to a different job state, usually 60 minutes after the cluster being created, this action is no longer available.

", "UpdateJob": "

While a job's JobState value is New, you can update some of the information associated with a job. Once the job changes to a different job state, usually within 60 minutes of the job being created, this action is no longer available.

", @@ -60,7 +61,14 @@ "AddressList": { "base": null, "refs": { - "DescribeAddressesResult$Addresses": "

The Snow device shipping addresses that were created for this account.

" + "DescribeAddressesResult$Addresses": "

The Snow device shipping addresses that were created for this account.

", + "ListPickupLocationsResult$Addresses": "

Information about the address of pickup locations.

" + } + }, + "AddressType": { + "base": null, + "refs": { + "Address$Type": "

Differentiates between delivery address and pickup address in the customer account. Provided at job creation.

" } }, "AmiId": { @@ -283,6 +291,12 @@ "JobMetadata$DeviceConfiguration": null } }, + "DevicePickupId": { + "base": null, + "refs": { + "PickupDetails$DevicePickupId": "

The unique ID for a device that will be picked up.

" + } + }, "DeviceServiceName": { "base": null, "refs": { @@ -296,7 +310,7 @@ } }, "Ec2AmiResource": { - "base": "

A JSON-formatted object that contains the IDs for an Amazon Machine Image (AMI), including the Amazon EC2 AMI ID and the Snow device AMI ID. Each AMI has these two IDs to simplify identifying the AMI in both the Amazon Web Services Cloud and on the device.

", + "base": "

A JSON-formatted object that contains the IDs for an Amazon Machine Image (AMI), including the Amazon EC2-compatible AMI ID and the Snow device AMI ID. Each AMI has these two IDs to simplify identifying the AMI in both the Amazon Web Services Cloud and on the device.

", "refs": { "Ec2AmiResourceList$member": null } @@ -312,6 +326,12 @@ "refs": { } }, + "Email": { + "base": null, + "refs": { + "PickupDetails$Email": "

The email address of the person picking up the device.

" + } + }, "EventTriggerDefinition": { "base": "

The container for the EventTriggerDefinition$EventResourceARN.

", "refs": { @@ -376,6 +396,13 @@ "TaxDocuments$IND": null } }, + "ImpactLevel": { + "base": null, + "refs": { + "CreateJobRequest$ImpactLevel": "

The highest impact level of data that will be stored or processed on the device, provided at job creation.

", + "JobMetadata$ImpactLevel": "

The highest impact level of data that will be stored or processed on the device, provided at job creation.

" + } + }, "InitialClusterSize": { "base": null, "refs": { @@ -450,7 +477,7 @@ "JobListEntryList": { "base": null, "refs": { - "CreateClusterResult$JobListEntries": "

List of jobs created for this cluster. For syntax, see ListJobsResult$JobListEntries in this guide.

", + "CreateClusterResult$JobListEntries": "

List of jobs created for this cluster. For syntax, see ListJobsResult$JobListEntries in this guide.

", "ListClusterJobsResult$JobListEntries": "

Each JobListEntry object contains a job's state, a job's ID, and a value that indicates whether the job is a job part, in the case of export jobs.

", "ListJobsResult$JobListEntries": "

Each JobListEntry object contains a job's state, a job's ID, and a value that indicates whether the job is a job part, in the case of export jobs.

" } @@ -590,6 +617,7 @@ "ListCompatibleImagesRequest$MaxResults": "

The maximum number of results for the list of compatible images. Currently, a Snowball Edge device can store 10 AMIs.

", "ListJobsRequest$MaxResults": "

The number of JobListEntry objects to return.

", "ListLongTermPricingRequest$MaxResults": "

The maximum number of ListLongTermPricing objects to return.

", + "ListPickupLocationsRequest$MaxResults": "

The maximum number of locations to list per page.

", "ListServiceVersionsRequest$MaxResults": "

The maximum number of ListServiceVersions objects to return.

" } }, @@ -603,6 +631,16 @@ "refs": { } }, + "ListPickupLocationsRequest": { + "base": null, + "refs": { + } + }, + "ListPickupLocationsResult": { + "base": null, + "refs": { + } + }, "ListServiceVersionsRequest": { "base": null, "refs": { @@ -698,11 +736,25 @@ "UpdateJobRequest$OnDeviceServiceConfiguration": "

Specifies the service or services on the Snow Family device that your transferred data will be exported from or imported into. Amazon Web Services Snow Family supports Amazon S3 and NFS (Network File System) and the Amazon Web Services Storage Gateway service Tape Gateway type.

" } }, + "PhoneNumber": { + "base": null, + "refs": { + "PickupDetails$PhoneNumber": "

The phone number of the person picking up the device.

" + } + }, + "PickupDetails": { + "base": "

Information identifying the person picking up the device.

", + "refs": { + "CreateJobRequest$PickupDetails": "

Information identifying the person picking up the device.

", + "JobMetadata$PickupDetails": "

Information identifying the person picking up the device.

", + "UpdateJobRequest$PickupDetails": null + } + }, "RemoteManagement": { "base": null, "refs": { "CreateClusterRequest$RemoteManagement": "

Allows you to securely operate and manage Snow devices in a cluster remotely from outside of your internal network. When set to INSTALLED_AUTOSTART, remote management will automatically be available when the device arrives at your location. Otherwise, you need to use the Snowball Client to manage the device.

", - "CreateJobRequest$RemoteManagement": "

Allows you to securely operate and manage Snowcone devices remotely from outside of your internal network. When set to INSTALLED_AUTOSTART, remote management will automatically be available when the device arrives at your location. Otherwise, you need to use the Snowball Client to manage the device.

", + "CreateJobRequest$RemoteManagement": "

Allows you to securely operate and manage Snowcone devices remotely from outside of your internal network. When set to INSTALLED_AUTOSTART, remote management will automatically be available when the device arrives at your location. Otherwise, you need to use the Snowball Edge client to manage the device. When set to NOT_INSTALLED, remote management will not be available on the device.

", "JobMetadata$RemoteManagement": "

Allows you to securely operate and manage Snowcone devices remotely from outside of your internal network. When set to INSTALLED_AUTOSTART, remote management will automatically be available when the device arrives at your location. Otherwise, you need to use the Snowball Client to manage the device.

" } }, @@ -849,7 +901,8 @@ "SnsTopicARN": { "base": null, "refs": { - "Notification$SnsTopicARN": "

The new SNS TopicArn that you want to associate with this job. You can create Amazon Resource Names (ARNs) for topics by using the CreateTopic Amazon SNS API action.

You can subscribe email addresses to an Amazon SNS topic through the Amazon Web Services Management Console, or by using the Subscribe Amazon Simple Notification Service (Amazon SNS) API action.

" + "Notification$SnsTopicARN": "

The new SNS TopicArn that you want to associate with this job. You can create Amazon Resource Names (ARNs) for topics by using the CreateTopic Amazon SNS API action.

You can subscribe email addresses to an Amazon SNS topic through the Amazon Web Services Management Console, or by using the Subscribe Amazon Simple Notification Service (Amazon SNS) API action.

", + "Notification$DevicePickupSnsTopicARN": "

Used to send SNS notifications for the person picking up the device (identified during job creation).

" } }, "StorageLimit": { @@ -918,6 +971,7 @@ "JobMetadata$JobId": "

The automatically generated ID for a job, for example JID123e4567-e89b-12d3-a456-426655440000.

", "JobMetadata$Description": "

The description of the job, provided at job creation.

", "JobMetadata$ClusterId": "

The 39-character ID for the cluster, for example CID123e4567-e89b-12d3-a456-426655440000.

", + "JobMetadata$SnowballId": "

Unique ID associated with a device.

", "KMSRequestFailedException$Message": null, "KeyRange$BeginMarker": "

The key that starts an optional key range for an export job. Ranges are inclusive and UTF-8 binary sorted.

", "KeyRange$EndMarker": "

The key that ends an optional key range for an export job. Ranges are inclusive and UTF-8 binary sorted.

", @@ -931,9 +985,14 @@ "ListJobsResult$NextToken": "

HTTP requests are stateless. If you use this automatically generated NextToken value in your next ListJobs call, your returned JobListEntry objects will start from this point in the array.

", "ListLongTermPricingRequest$NextToken": "

Because HTTP requests are stateless, this is the starting point for your next list of ListLongTermPricing to return.

", "ListLongTermPricingResult$NextToken": "

Because HTTP requests are stateless, this is the starting point for your next list of returned ListLongTermPricing list.

", + "ListPickupLocationsRequest$NextToken": "

HTTP requests are stateless. To identify what object comes \"next\" in the list of ListPickupLocationsRequest objects, you have the option of specifying NextToken as the starting point for your returned list.

", + "ListPickupLocationsResult$NextToken": "

HTTP requests are stateless. To identify what object comes \"next\" in the list of ListPickupLocationsResult objects, you have the option of specifying NextToken as the starting point for your returned list.

", "ListServiceVersionsRequest$NextToken": "

Because HTTP requests are stateless, this is the starting point for the next list of returned ListServiceVersionsRequest versions.

", "ListServiceVersionsResult$NextToken": "

Because HTTP requests are stateless, this is the starting point of the next list of returned ListServiceVersionsResult results.

", "LongTermPricingListEntry$LongTermPricingStatus": "

The status of the long-term pricing type.

", + "PickupDetails$Name": "

The name of the person picking up the device.

", + "PickupDetails$IdentificationNumber": "

The number on the credential identifying the person picking up the device.

", + "PickupDetails$IdentificationIssuingOrg": "

Organization that issued the credential identifying the person picking up the device.

", "ReturnShippingLabelAlreadyExistsException$Message": null, "ServiceVersion$Version": "

The version number of the requested service.

", "Shipment$Status": "

Status information for a shipment.

", @@ -979,7 +1038,8 @@ "JobListEntry$CreationDate": "

The creation date for this job.

", "JobMetadata$CreationDate": "

The creation date for this job.

", "LongTermPricingListEntry$LongTermPricingEndDate": "

The end date the long-term pricing contract.

", - "LongTermPricingListEntry$LongTermPricingStartDate": "

The start date of the long-term pricing contract.

" + "LongTermPricingListEntry$LongTermPricingStartDate": "

The start date of the long-term pricing contract.

", + "PickupDetails$IdentificationExpirationDate": "

Expiration date of the credential identifying the person picking up the device.

" } }, "TransferOption": { diff --git a/models/apis/snowball/2016-06-30/examples-1.json b/models/apis/snowball/2016-06-30/examples-1.json index 2b13f7b443..665f4b9af2 100755 --- a/models/apis/snowball/2016-06-30/examples-1.json +++ b/models/apis/snowball/2016-06-30/examples-1.json @@ -408,6 +408,32 @@ "title": "To get a list of jobs that you've created for AWS Snowball" } ], + "ListPickupLocations": [ + { + "input": { + }, + "output": { + "Addresses": [ + { + "AddressId": "ADID1234ab12-3eec-4eb3-9be6-9374c10eb51b", + "City": "Seattle", + "Company": "My Company", + "Country": "US", + "Name": "My Name", + "PhoneNumber": "425-555-5555", + "PostalCode": "98101", + "StateOrProvince": "WA", + "Street1": "123 Main Street" + } + ] + }, + "comments": { + }, + "description": "Returns a specified number of Address objects. Each Address is a pickup location address for Snow Family devices.", + "id": "to-get-a-list-of-locations-from-which-the-customer-can-choose-to-pickup-a-device-1482542167627", + "title": "To get a list of locations from which the customer can choose to pickup a device." + } + ], "UpdateCluster": [ { "input": { diff --git a/models/apis/snowball/2016-06-30/paginators-1.json b/models/apis/snowball/2016-06-30/paginators-1.json index 41fe5dfb46..bda558d7dd 100755 --- a/models/apis/snowball/2016-06-30/paginators-1.json +++ b/models/apis/snowball/2016-06-30/paginators-1.json @@ -35,6 +35,11 @@ "limit_key": "MaxResults", "output_token": "NextToken", "result_key": "LongTermPricingEntries" + }, + "ListPickupLocations": { + "input_token": "NextToken", + "limit_key": "MaxResults", + "output_token": "NextToken" } } } \ No newline at end of file diff --git a/models/apis/translate/2017-07-01/docs-2.json b/models/apis/translate/2017-07-01/docs-2.json index 8e03f76967..d35c127173 100644 --- a/models/apis/translate/2017-07-01/docs-2.json +++ b/models/apis/translate/2017-07-01/docs-2.json @@ -63,7 +63,7 @@ "ContentType": { "base": null, "refs": { - "Document$ContentType": "

Describes the format of the document. You can specify one of the following:

", + "Document$ContentType": "

Describes the format of the document. You can specify one of the following:

", "InputDataConfig$ContentType": "

Describes the format of the data that you submit to Amazon Translate as input. You can specify one of the following multipurpose internet mail extension (MIME) types:

If you structure your input data as HTML, ensure that you set this parameter to text/html. By doing so, you cut costs by limiting the translation to the contents of the html element in each file. Otherwise, if you set this parameter to text/plain, your costs will cover the translation of every character.

" } }, diff --git a/models/endpoints/endpoints.json b/models/endpoints/endpoints.json index 76a7fe3406..23db34ba40 100644 --- a/models/endpoints/endpoints.json +++ b/models/endpoints/endpoints.json @@ -10456,6 +10456,7 @@ "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, + "ca-central-1" : { }, "eu-central-1" : { }, "eu-north-1" : { }, "eu-west-1" : { }, @@ -10475,6 +10476,7 @@ "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, + "ca-central-1" : { }, "eu-central-1" : { }, "eu-north-1" : { }, "eu-west-1" : { }, @@ -20101,6 +20103,13 @@ }, "codepipeline" : { "endpoints" : { + "fips-us-gov-east-1" : { + "credentialScope" : { + "region" : "us-gov-east-1" + }, + "deprecated" : true, + "hostname" : "codepipeline-fips.us-gov-east-1.amazonaws.com" + }, "fips-us-gov-west-1" : { "credentialScope" : { "region" : "us-gov-west-1" @@ -20108,7 +20117,12 @@ "deprecated" : true, "hostname" : "codepipeline-fips.us-gov-west-1.amazonaws.com" }, - "us-gov-east-1" : { }, + "us-gov-east-1" : { + "variants" : [ { + "hostname" : "codepipeline-fips.us-gov-east-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, "us-gov-west-1" : { "variants" : [ { "hostname" : "codepipeline-fips.us-gov-west-1.amazonaws.com", diff --git a/service/codegurusecurity/api.go b/service/codegurusecurity/api.go index 62f2219aff..a72f30a218 100644 --- a/service/codegurusecurity/api.go +++ b/service/codegurusecurity/api.go @@ -902,7 +902,8 @@ func (c *CodeGuruSecurity) ListScansRequest(input *ListScansInput) (req *request // ListScans API operation for Amazon CodeGuru Security. // -// Returns a list of all the scans in an account. +// Returns a list of all the standard scans in an account. Does not return express +// scans. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1867,7 +1868,7 @@ type CreateScanInput struct { _ struct{} `type:"structure"` // The type of analysis you want CodeGuru Security to perform in the scan, either - // Security or All. The Secuirty type only generates findings related to security. + // Security or All. The Security type only generates findings related to security. // The All type generates both security findings and quality findings. Defaults // to Security type if missing. AnalysisType *string `locationName:"analysisType" type:"string" enum:"AnalysisType"` diff --git a/service/codegurusecurity/doc.go b/service/codegurusecurity/doc.go index 045438cc83..7d6114512f 100644 --- a/service/codegurusecurity/doc.go +++ b/service/codegurusecurity/doc.go @@ -3,9 +3,11 @@ // Package codegurusecurity provides the client and types for making API // requests to Amazon CodeGuru Security. // -// This section provides documentation for the Amazon CodeGuru Security (https://docs.aws.amazon.com/https:/docs.aws.amazon.com/codeguru/latest/security-ug/what-is-codeguru-security.html) -// API operations. CodeGuru Security is a service that uses program analysis -// and machine learning to detect security policy violations and vulnerabilities, +// Amazon CodeGuru Security is in preview release and is subject to change. +// +// This section provides documentation for the Amazon CodeGuru Security API +// operations. CodeGuru Security is a service that uses program analysis and +// machine learning to detect security policy violations and vulnerabilities, // and recommends ways to address these security risks. // // By proactively detecting and providing recommendations for addressing security diff --git a/service/connect/api.go b/service/connect/api.go index e41f3216e7..986671ccf0 100644 --- a/service/connect/api.go +++ b/service/connect/api.go @@ -36882,6 +36882,8 @@ type GetMetricDataV2Input struct { // // * User hierarchy groups // + // * Feature + // // At least one filter must be passed from queues, routing profiles, agents, // or user hierarchy groups. // @@ -36893,13 +36895,16 @@ type GetMetricDataV2Input struct { // * Filter keys: A maximum of 5 filter keys are supported in a single request. // Valid filter keys: QUEUE | ROUTING_PROFILE | AGENT | CHANNEL | AGENT_HIERARCHY_LEVEL_ONE // | AGENT_HIERARCHY_LEVEL_TWO | AGENT_HIERARCHY_LEVEL_THREE | AGENT_HIERARCHY_LEVEL_FOUR - // | AGENT_HIERARCHY_LEVEL_FIVE + // | AGENT_HIERARCHY_LEVEL_FIVE | FEATURE // // * Filter values: A maximum of 100 filter values are supported in a single // request. VOICE, CHAT, and TASK are valid filterValue for the CHANNEL filter // key. They do not count towards limitation of 100 filter values. For example, // a GetMetricDataV2 request can filter by 50 queues, 35 agents, and 15 routing // profiles for a total of 100 filter values, along with 3 channel filters. + // contact_lens_conversational_analytics is a valid filterValue for the FEATURE + // filter key. It is available only to contacts analyzed by Contact Lens + // conversational analytics. // // Filters is a required field Filters []*FilterV2 `min:"1" type:"list" required:"true"` @@ -36982,6 +36987,18 @@ type GetMetricDataV2Input struct { // Unit: Seconds // // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy, Feature + // + // Feature is a valid filter but not a valid grouping. + // + // AVG_AGENT_CONNECTING_TIME + // + // Unit: Seconds + // + // Valid metric filter key: INITIATION_METHOD. For now, this metric only supports + // the following as INITIATION_METHOD: INBOUND | OUTBOUND | CALLBACK | API + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent // Hierarchy // // AVG_AGENT_CONNECTING_TIME @@ -36994,20 +37011,59 @@ type GetMetricDataV2Input struct { // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent // Hierarchy // - // AVG_HANDLE_TIME + // AVG_CONTACT_DURATION + // + // Unit: Seconds + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy, Feature + // + // Feature is a valid filter but not a valid grouping. + // + // AVG_CONVERSATION_DURATION // // Unit: Seconds // // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent // Hierarchy // - // AVG_HOLD_TIME + // AVG_GREETING_TIME_AGENT + // + // This metric is available only for contacts analyzed by Contact Lens conversational + // analytics. // // Unit: Seconds // // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent // Hierarchy // + // AVG_HANDLE_TIME + // + // Unit: Seconds + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy, Feature + // + // Feature is a valid filter but not a valid grouping. + // + // AVG_HOLD_TIME + // + // Unit: Seconds + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy, Feature + // + // Feature is a valid filter but not a valid grouping. + // + // AVG_HOLDS + // + // Unit: Count + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy, Feature + // + // Feature is a valid filter but not a valid grouping. + // // AVG_INTERACTION_AND_HOLD_TIME // // Unit: Seconds @@ -37019,13 +37075,77 @@ type GetMetricDataV2Input struct { // // Unit: Seconds // - // Valid groupings and filters: Queue, Channel, Routing Profile + // Valid groupings and filters: Queue, Channel, Routing Profile, Feature + // + // Feature is a valid filter but not a valid grouping. + // + // AVG_INTERRUPTIONS_AGENT + // + // This metric is available only for contacts analyzed by Contact Lens conversational + // analytics. + // + // Unit: Count + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy + // + // AVG_INTERRUPTION_TIME_AGENT + // + // This metric is available only for contacts analyzed by Contact Lens conversational + // analytics. + // + // Unit: Seconds + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy + // + // AVG_NON_TALK_TIME + // + // This metric is available only for contacts analyzed by Contact Lens conversational + // analytics. + // + // Unit: Seconds + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy // // AVG_QUEUE_ANSWER_TIME // // Unit: Seconds // - // Valid groupings and filters: Queue, Channel, Routing Profile + // Valid groupings and filters: Queue, Channel, Routing Profile, Feature + // + // Feature is a valid filter but not a valid grouping. + // + // AVG_TALK_TIME + // + // This metric is available only for contacts analyzed by Contact Lens conversational + // analytics. + // + // Unit: Seconds + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy + // + // AVG_TALK_TIME_AGENT + // + // This metric is available only for contacts analyzed by Contact Lens conversational + // analytics. + // + // Unit: Seconds + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy + // + // AVG_TALK_TIME_CUSTOMER + // + // This metric is available only for contacts analyzed by Contact Lens conversational + // analytics. + // + // Unit: Seconds + // + // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent + // Hierarchy // // CONTACTS_ABANDONED // @@ -37040,7 +37160,9 @@ type GetMetricDataV2Input struct { // // Valid metric filter key: INITIATION_METHOD // - // Valid groupings and filters: Queue, Channel, Routing Profile + // Valid groupings and filters: Queue, Channel, Routing Profile, Feature + // + // Feature is a valid filter but not a valid grouping. // // CONTACTS_HANDLED // @@ -37049,7 +37171,9 @@ type GetMetricDataV2Input struct { // Valid metric filter key: INITIATION_METHOD, DISCONNECT_REASON // // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent - // Hierarchy + // Hierarchy, Feature + // + // Feature is a valid filter but not a valid grouping. // // CONTACTS_HOLD_ABANDONS // @@ -37070,7 +37194,9 @@ type GetMetricDataV2Input struct { // Unit: Count // // Valid groupings and filters: Queue, Channel, Routing Profile, Agent, Agent - // Hierarchy + // Hierarchy, Feature + // + // Feature is a valid filter but not a valid grouping. // // CONTACTS_TRANSFERRED_OUT_BY_AGENT // diff --git a/service/lexmodelsv2/api.go b/service/lexmodelsv2/api.go index f5eaec6f05..42b04bf7dd 100644 --- a/service/lexmodelsv2/api.go +++ b/service/lexmodelsv2/api.go @@ -6217,36 +6217,36 @@ func (c *LexModelsV2) ListImportsPagesWithContext(ctx aws.Context, input *ListIm return p.Err() } -const opListIntents = "ListIntents" +const opListIntentMetrics = "ListIntentMetrics" -// ListIntentsRequest generates a "aws/request.Request" representing the -// client's request for the ListIntents operation. The "output" return +// ListIntentMetricsRequest generates a "aws/request.Request" representing the +// client's request for the ListIntentMetrics operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListIntents for more information on using the ListIntents +// See ListIntentMetrics for more information on using the ListIntentMetrics // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the ListIntentsRequest method. -// req, resp := client.ListIntentsRequest(params) +// // Example sending a request using the ListIntentMetricsRequest method. +// req, resp := client.ListIntentMetricsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListIntents -func (c *LexModelsV2) ListIntentsRequest(input *ListIntentsInput) (req *request.Request, output *ListIntentsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListIntentMetrics +func (c *LexModelsV2) ListIntentMetricsRequest(input *ListIntentMetricsInput) (req *request.Request, output *ListIntentMetricsOutput) { op := &request.Operation{ - Name: opListIntents, + Name: opListIntentMetrics, HTTPMethod: "POST", - HTTPPath: "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/intents/", + HTTPPath: "/bots/{botId}/analytics/intentmetrics", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, @@ -6256,98 +6256,125 @@ func (c *LexModelsV2) ListIntentsRequest(input *ListIntentsInput) (req *request. } if input == nil { - input = &ListIntentsInput{} + input = &ListIntentMetricsInput{} } - output = &ListIntentsOutput{} + output = &ListIntentMetricsOutput{} req = c.newRequest(op, input, output) return } -// ListIntents API operation for Amazon Lex Model Building V2. +// ListIntentMetrics API operation for Amazon Lex Model Building V2. // -// Get a list of intents that meet the specified criteria. +// Retrieves summary metrics for the intents in your bot. The following fields +// are required: +// +// - metrics – A list of AnalyticsIntentMetric (https://docs.aws.amazon.com/lexv2/latest/APIReference/API_AnalyticsIntentMetric.html) +// objects. In each object, use the name field to specify the metric to calculate, +// the statistic field to specify whether to calculate the Sum, Average, +// or Max number, and the order field to specify whether to sort the results +// in Ascending or Descending order. +// +// - startDateTime and endDateTime – 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, the groupBy field to specify +// categories by which to group the results, and the binBy 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 the nextToken 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 both binBy and metrics. You can specify +// only one order in a given request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lex Model Building V2's -// API operation ListIntents for usage and error information. +// API operation ListIntentMetrics for usage and error information. // // Returned Error Types: // // - ThrottlingException // Your request rate is too high. Reduce the frequency of requests. // -// - ServiceQuotaExceededException -// You have reached a quota for your bot. -// // - ValidationException // One of the input parameters in your request isn't valid. Check the parameters // and try your request again. // +// - PreconditionFailedException +// Your request couldn't be completed because one or more request fields aren't +// valid. Check the fields in your request and try again. +// +// - ServiceQuotaExceededException +// You have reached a quota for your bot. +// // - InternalServerException // The service encountered an unexpected condition. Try your request again. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListIntents -func (c *LexModelsV2) ListIntents(input *ListIntentsInput) (*ListIntentsOutput, error) { - req, out := c.ListIntentsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListIntentMetrics +func (c *LexModelsV2) ListIntentMetrics(input *ListIntentMetricsInput) (*ListIntentMetricsOutput, error) { + req, out := c.ListIntentMetricsRequest(input) return out, req.Send() } -// ListIntentsWithContext is the same as ListIntents with the addition of +// ListIntentMetricsWithContext is the same as ListIntentMetrics with the addition of // the ability to pass a context and additional request options. // -// See ListIntents for details on how to use this API operation. +// See ListIntentMetrics for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LexModelsV2) ListIntentsWithContext(ctx aws.Context, input *ListIntentsInput, opts ...request.Option) (*ListIntentsOutput, error) { - req, out := c.ListIntentsRequest(input) +func (c *LexModelsV2) ListIntentMetricsWithContext(ctx aws.Context, input *ListIntentMetricsInput, opts ...request.Option) (*ListIntentMetricsOutput, error) { + req, out := c.ListIntentMetricsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListIntentsPages iterates over the pages of a ListIntents operation, +// ListIntentMetricsPages iterates over the pages of a ListIntentMetrics operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListIntents method for more information on how to use this operation. +// See ListIntentMetrics method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // -// // Example iterating over at most 3 pages of a ListIntents operation. +// // Example iterating over at most 3 pages of a ListIntentMetrics operation. // pageNum := 0 -// err := client.ListIntentsPages(params, -// func(page *lexmodelsv2.ListIntentsOutput, lastPage bool) bool { +// err := client.ListIntentMetricsPages(params, +// func(page *lexmodelsv2.ListIntentMetricsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *LexModelsV2) ListIntentsPages(input *ListIntentsInput, fn func(*ListIntentsOutput, bool) bool) error { - return c.ListIntentsPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *LexModelsV2) ListIntentMetricsPages(input *ListIntentMetricsInput, fn func(*ListIntentMetricsOutput, bool) bool) error { + return c.ListIntentMetricsPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListIntentsPagesWithContext same as ListIntentsPages except +// ListIntentMetricsPagesWithContext same as ListIntentMetricsPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LexModelsV2) ListIntentsPagesWithContext(ctx aws.Context, input *ListIntentsInput, fn func(*ListIntentsOutput, bool) bool, opts ...request.Option) error { +func (c *LexModelsV2) ListIntentMetricsPagesWithContext(ctx aws.Context, input *ListIntentMetricsInput, fn func(*ListIntentMetricsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListIntentsInput + var inCpy *ListIntentMetricsInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListIntentsRequest(inCpy) + req, _ := c.ListIntentMetricsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -6355,7 +6382,7 @@ func (c *LexModelsV2) ListIntentsPagesWithContext(ctx aws.Context, input *ListIn } for p.Next() { - if !fn(p.Page().(*ListIntentsOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListIntentMetricsOutput), !p.HasNextPage()) { break } } @@ -6363,187 +6390,141 @@ func (c *LexModelsV2) ListIntentsPagesWithContext(ctx aws.Context, input *ListIn return p.Err() } -const opListRecommendedIntents = "ListRecommendedIntents" +const opListIntentPaths = "ListIntentPaths" -// ListRecommendedIntentsRequest generates a "aws/request.Request" representing the -// client's request for the ListRecommendedIntents operation. The "output" return +// ListIntentPathsRequest generates a "aws/request.Request" representing the +// client's request for the ListIntentPaths operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListRecommendedIntents for more information on using the ListRecommendedIntents +// See ListIntentPaths for more information on using the ListIntentPaths // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the ListRecommendedIntentsRequest method. -// req, resp := client.ListRecommendedIntentsRequest(params) +// // Example sending a request using the ListIntentPathsRequest method. +// req, resp := client.ListIntentPathsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListRecommendedIntents -func (c *LexModelsV2) ListRecommendedIntentsRequest(input *ListRecommendedIntentsInput) (req *request.Request, output *ListRecommendedIntentsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListIntentPaths +func (c *LexModelsV2) ListIntentPathsRequest(input *ListIntentPathsInput) (req *request.Request, output *ListIntentPathsOutput) { op := &request.Operation{ - Name: opListRecommendedIntents, + Name: opListIntentPaths, HTTPMethod: "POST", - HTTPPath: "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/botrecommendations/{botRecommendationId}/intents", - Paginator: &request.Paginator{ - InputTokens: []string{"nextToken"}, - OutputTokens: []string{"nextToken"}, - LimitToken: "maxResults", - TruncationToken: "", - }, + HTTPPath: "/bots/{botId}/analytics/intentpaths", } if input == nil { - input = &ListRecommendedIntentsInput{} + input = &ListIntentPathsInput{} } - output = &ListRecommendedIntentsOutput{} + output = &ListIntentPathsOutput{} req = c.newRequest(op, input, output) return } -// ListRecommendedIntents API operation for Amazon Lex Model Building V2. +// ListIntentPaths API operation for Amazon Lex Model Building V2. // -// Gets a list of recommended intents provided by the bot recommendation that -// you can use in your bot. Intents in the response are ordered by relevance. +// Retrieves summary statistics for a path of intents that users take over sessions +// with your bot. The following fields are required: +// +// - startDateTime and endDateTime – Define a time range for which you +// want to retrieve results. +// +// - intentPath – Define an order of intents for which you want to retrieve +// metrics. Separate intents in the path with a forward slash. For example, +// populate the intentPath field with /BookCar/BookHotel to see details about +// how many times users invoked the BookCar and BookHotel intents in that +// order. +// +// Use the optional filters field to filter the results. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lex Model Building V2's -// API operation ListRecommendedIntents for usage and error information. +// API operation ListIntentPaths for usage and error information. // // Returned Error Types: // // - ThrottlingException // Your request rate is too high. Reduce the frequency of requests. // -// - ServiceQuotaExceededException -// You have reached a quota for your bot. -// // - ValidationException // One of the input parameters in your request isn't valid. Check the parameters // and try your request again. // +// - PreconditionFailedException +// Your request couldn't be completed because one or more request fields aren't +// valid. Check the fields in your request and try again. +// +// - ServiceQuotaExceededException +// You have reached a quota for your bot. +// // - InternalServerException // The service encountered an unexpected condition. Try your request again. // -// - ResourceNotFoundException -// You asked to describe a resource that doesn't exist. Check the resource that -// you are requesting and try again. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListRecommendedIntents -func (c *LexModelsV2) ListRecommendedIntents(input *ListRecommendedIntentsInput) (*ListRecommendedIntentsOutput, error) { - req, out := c.ListRecommendedIntentsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListIntentPaths +func (c *LexModelsV2) ListIntentPaths(input *ListIntentPathsInput) (*ListIntentPathsOutput, error) { + req, out := c.ListIntentPathsRequest(input) return out, req.Send() } -// ListRecommendedIntentsWithContext is the same as ListRecommendedIntents with the addition of +// ListIntentPathsWithContext is the same as ListIntentPaths with the addition of // the ability to pass a context and additional request options. // -// See ListRecommendedIntents for details on how to use this API operation. +// See ListIntentPaths for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LexModelsV2) ListRecommendedIntentsWithContext(ctx aws.Context, input *ListRecommendedIntentsInput, opts ...request.Option) (*ListRecommendedIntentsOutput, error) { - req, out := c.ListRecommendedIntentsRequest(input) +func (c *LexModelsV2) ListIntentPathsWithContext(ctx aws.Context, input *ListIntentPathsInput, opts ...request.Option) (*ListIntentPathsOutput, error) { + req, out := c.ListIntentPathsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListRecommendedIntentsPages iterates over the pages of a ListRecommendedIntents operation, -// calling the "fn" function with the response data for each page. To stop -// iterating, return false from the fn function. -// -// See ListRecommendedIntents method for more information on how to use this operation. -// -// Note: This operation can generate multiple requests to a service. -// -// // Example iterating over at most 3 pages of a ListRecommendedIntents operation. -// pageNum := 0 -// err := client.ListRecommendedIntentsPages(params, -// func(page *lexmodelsv2.ListRecommendedIntentsOutput, lastPage bool) bool { -// pageNum++ -// fmt.Println(page) -// return pageNum <= 3 -// }) -func (c *LexModelsV2) ListRecommendedIntentsPages(input *ListRecommendedIntentsInput, fn func(*ListRecommendedIntentsOutput, bool) bool) error { - return c.ListRecommendedIntentsPagesWithContext(aws.BackgroundContext(), input, fn) -} - -// ListRecommendedIntentsPagesWithContext same as ListRecommendedIntentsPages except -// it takes a Context and allows setting request options on the pages. -// -// The context must be non-nil and will be used for request cancellation. If -// the context is nil a panic will occur. In the future the SDK may create -// sub-contexts for http.Requests. See https://golang.org/pkg/context/ -// for more information on using Contexts. -func (c *LexModelsV2) ListRecommendedIntentsPagesWithContext(ctx aws.Context, input *ListRecommendedIntentsInput, fn func(*ListRecommendedIntentsOutput, bool) bool, opts ...request.Option) error { - p := request.Pagination{ - NewRequest: func() (*request.Request, error) { - var inCpy *ListRecommendedIntentsInput - if input != nil { - tmp := *input - inCpy = &tmp - } - req, _ := c.ListRecommendedIntentsRequest(inCpy) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return req, nil - }, - } - - for p.Next() { - if !fn(p.Page().(*ListRecommendedIntentsOutput), !p.HasNextPage()) { - break - } - } - - return p.Err() -} - -const opListSlotTypes = "ListSlotTypes" +const opListIntentStageMetrics = "ListIntentStageMetrics" -// ListSlotTypesRequest generates a "aws/request.Request" representing the -// client's request for the ListSlotTypes operation. The "output" return +// ListIntentStageMetricsRequest generates a "aws/request.Request" representing the +// client's request for the ListIntentStageMetrics operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListSlotTypes for more information on using the ListSlotTypes +// See ListIntentStageMetrics for more information on using the ListIntentStageMetrics // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the ListSlotTypesRequest method. -// req, resp := client.ListSlotTypesRequest(params) +// // Example sending a request using the ListIntentStageMetricsRequest method. +// req, resp := client.ListIntentStageMetricsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListSlotTypes -func (c *LexModelsV2) ListSlotTypesRequest(input *ListSlotTypesInput) (req *request.Request, output *ListSlotTypesOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListIntentStageMetrics +func (c *LexModelsV2) ListIntentStageMetricsRequest(input *ListIntentStageMetricsInput) (req *request.Request, output *ListIntentStageMetricsOutput) { op := &request.Operation{ - Name: opListSlotTypes, + Name: opListIntentStageMetrics, HTTPMethod: "POST", - HTTPPath: "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/slottypes/", + HTTPPath: "/bots/{botId}/analytics/intentstagemetrics", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, @@ -6553,98 +6534,125 @@ func (c *LexModelsV2) ListSlotTypesRequest(input *ListSlotTypesInput) (req *requ } if input == nil { - input = &ListSlotTypesInput{} + input = &ListIntentStageMetricsInput{} } - output = &ListSlotTypesOutput{} + output = &ListIntentStageMetricsOutput{} req = c.newRequest(op, input, output) return } -// ListSlotTypes API operation for Amazon Lex Model Building V2. +// ListIntentStageMetrics API operation for Amazon Lex Model Building V2. // -// Gets a list of slot types that match the specified criteria. +// Retrieves summary metrics for the intent stages in your bot. The following +// fields are required: +// +// - metrics – A list of AnalyticsIntentStageMetric (https://docs.aws.amazon.com/lexv2/latest/APIReference/API_AnalyticsIntentStageMetric.html) +// objects. In each object, use the name field to specify the metric to calculate, +// the statistic field to specify whether to calculate the Sum, Average, +// or Max number, and the order field to specify whether to sort the results +// in Ascending or Descending order. +// +// - startDateTime and endDateTime – 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, the groupBy field to specify +// categories by which to group the results, and the binBy 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 the nextToken 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 both binBy and metrics. You can only specify +// one order in a given request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lex Model Building V2's -// API operation ListSlotTypes for usage and error information. +// API operation ListIntentStageMetrics for usage and error information. // // Returned Error Types: // // - ThrottlingException // Your request rate is too high. Reduce the frequency of requests. // -// - ServiceQuotaExceededException -// You have reached a quota for your bot. -// // - ValidationException // One of the input parameters in your request isn't valid. Check the parameters // and try your request again. // +// - PreconditionFailedException +// Your request couldn't be completed because one or more request fields aren't +// valid. Check the fields in your request and try again. +// +// - ServiceQuotaExceededException +// You have reached a quota for your bot. +// // - InternalServerException // The service encountered an unexpected condition. Try your request again. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListSlotTypes -func (c *LexModelsV2) ListSlotTypes(input *ListSlotTypesInput) (*ListSlotTypesOutput, error) { - req, out := c.ListSlotTypesRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListIntentStageMetrics +func (c *LexModelsV2) ListIntentStageMetrics(input *ListIntentStageMetricsInput) (*ListIntentStageMetricsOutput, error) { + req, out := c.ListIntentStageMetricsRequest(input) return out, req.Send() } -// ListSlotTypesWithContext is the same as ListSlotTypes with the addition of +// ListIntentStageMetricsWithContext is the same as ListIntentStageMetrics with the addition of // the ability to pass a context and additional request options. // -// See ListSlotTypes for details on how to use this API operation. +// See ListIntentStageMetrics for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LexModelsV2) ListSlotTypesWithContext(ctx aws.Context, input *ListSlotTypesInput, opts ...request.Option) (*ListSlotTypesOutput, error) { - req, out := c.ListSlotTypesRequest(input) +func (c *LexModelsV2) ListIntentStageMetricsWithContext(ctx aws.Context, input *ListIntentStageMetricsInput, opts ...request.Option) (*ListIntentStageMetricsOutput, error) { + req, out := c.ListIntentStageMetricsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListSlotTypesPages iterates over the pages of a ListSlotTypes operation, +// ListIntentStageMetricsPages iterates over the pages of a ListIntentStageMetrics operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListSlotTypes method for more information on how to use this operation. +// See ListIntentStageMetrics method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // -// // Example iterating over at most 3 pages of a ListSlotTypes operation. +// // Example iterating over at most 3 pages of a ListIntentStageMetrics operation. // pageNum := 0 -// err := client.ListSlotTypesPages(params, -// func(page *lexmodelsv2.ListSlotTypesOutput, lastPage bool) bool { +// err := client.ListIntentStageMetricsPages(params, +// func(page *lexmodelsv2.ListIntentStageMetricsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *LexModelsV2) ListSlotTypesPages(input *ListSlotTypesInput, fn func(*ListSlotTypesOutput, bool) bool) error { - return c.ListSlotTypesPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *LexModelsV2) ListIntentStageMetricsPages(input *ListIntentStageMetricsInput, fn func(*ListIntentStageMetricsOutput, bool) bool) error { + return c.ListIntentStageMetricsPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListSlotTypesPagesWithContext same as ListSlotTypesPages except +// ListIntentStageMetricsPagesWithContext same as ListIntentStageMetricsPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LexModelsV2) ListSlotTypesPagesWithContext(ctx aws.Context, input *ListSlotTypesInput, fn func(*ListSlotTypesOutput, bool) bool, opts ...request.Option) error { +func (c *LexModelsV2) ListIntentStageMetricsPagesWithContext(ctx aws.Context, input *ListIntentStageMetricsInput, fn func(*ListIntentStageMetricsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListSlotTypesInput + var inCpy *ListIntentStageMetricsInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListSlotTypesRequest(inCpy) + req, _ := c.ListIntentStageMetricsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -6652,7 +6660,7 @@ func (c *LexModelsV2) ListSlotTypesPagesWithContext(ctx aws.Context, input *List } for p.Next() { - if !fn(p.Page().(*ListSlotTypesOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListIntentStageMetricsOutput), !p.HasNextPage()) { break } } @@ -6660,36 +6668,36 @@ func (c *LexModelsV2) ListSlotTypesPagesWithContext(ctx aws.Context, input *List return p.Err() } -const opListSlots = "ListSlots" +const opListIntents = "ListIntents" -// ListSlotsRequest generates a "aws/request.Request" representing the -// client's request for the ListSlots operation. The "output" return +// ListIntentsRequest generates a "aws/request.Request" representing the +// client's request for the ListIntents operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListSlots for more information on using the ListSlots +// See ListIntents for more information on using the ListIntents // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the ListSlotsRequest method. -// req, resp := client.ListSlotsRequest(params) +// // Example sending a request using the ListIntentsRequest method. +// req, resp := client.ListIntentsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListSlots -func (c *LexModelsV2) ListSlotsRequest(input *ListSlotsInput) (req *request.Request, output *ListSlotsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListIntents +func (c *LexModelsV2) ListIntentsRequest(input *ListIntentsInput) (req *request.Request, output *ListIntentsOutput) { op := &request.Operation{ - Name: opListSlots, + Name: opListIntents, HTTPMethod: "POST", - HTTPPath: "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/intents/{intentId}/slots/", + HTTPPath: "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/intents/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, @@ -6699,24 +6707,24 @@ func (c *LexModelsV2) ListSlotsRequest(input *ListSlotsInput) (req *request.Requ } if input == nil { - input = &ListSlotsInput{} + input = &ListIntentsInput{} } - output = &ListSlotsOutput{} + output = &ListIntentsOutput{} req = c.newRequest(op, input, output) return } -// ListSlots API operation for Amazon Lex Model Building V2. +// ListIntents API operation for Amazon Lex Model Building V2. // -// Gets a list of slots that match the specified criteria. +// Get a list of intents that meet the specified criteria. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lex Model Building V2's -// API operation ListSlots for usage and error information. +// API operation ListIntents for usage and error information. // // Returned Error Types: // @@ -6733,64 +6741,64 @@ func (c *LexModelsV2) ListSlotsRequest(input *ListSlotsInput) (req *request.Requ // - InternalServerException // The service encountered an unexpected condition. Try your request again. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListSlots -func (c *LexModelsV2) ListSlots(input *ListSlotsInput) (*ListSlotsOutput, error) { - req, out := c.ListSlotsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListIntents +func (c *LexModelsV2) ListIntents(input *ListIntentsInput) (*ListIntentsOutput, error) { + req, out := c.ListIntentsRequest(input) return out, req.Send() } -// ListSlotsWithContext is the same as ListSlots with the addition of +// ListIntentsWithContext is the same as ListIntents with the addition of // the ability to pass a context and additional request options. // -// See ListSlots for details on how to use this API operation. +// See ListIntents for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LexModelsV2) ListSlotsWithContext(ctx aws.Context, input *ListSlotsInput, opts ...request.Option) (*ListSlotsOutput, error) { - req, out := c.ListSlotsRequest(input) +func (c *LexModelsV2) ListIntentsWithContext(ctx aws.Context, input *ListIntentsInput, opts ...request.Option) (*ListIntentsOutput, error) { + req, out := c.ListIntentsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListSlotsPages iterates over the pages of a ListSlots operation, +// ListIntentsPages iterates over the pages of a ListIntents operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListSlots method for more information on how to use this operation. +// See ListIntents method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // -// // Example iterating over at most 3 pages of a ListSlots operation. +// // Example iterating over at most 3 pages of a ListIntents operation. // pageNum := 0 -// err := client.ListSlotsPages(params, -// func(page *lexmodelsv2.ListSlotsOutput, lastPage bool) bool { +// err := client.ListIntentsPages(params, +// func(page *lexmodelsv2.ListIntentsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *LexModelsV2) ListSlotsPages(input *ListSlotsInput, fn func(*ListSlotsOutput, bool) bool) error { - return c.ListSlotsPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *LexModelsV2) ListIntentsPages(input *ListIntentsInput, fn func(*ListIntentsOutput, bool) bool) error { + return c.ListIntentsPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListSlotsPagesWithContext same as ListSlotsPages except +// ListIntentsPagesWithContext same as ListIntentsPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LexModelsV2) ListSlotsPagesWithContext(ctx aws.Context, input *ListSlotsInput, fn func(*ListSlotsOutput, bool) bool, opts ...request.Option) error { +func (c *LexModelsV2) ListIntentsPagesWithContext(ctx aws.Context, input *ListIntentsInput, fn func(*ListIntentsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListSlotsInput + var inCpy *ListIntentsInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListSlotsRequest(inCpy) + req, _ := c.ListIntentsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -6798,7 +6806,7 @@ func (c *LexModelsV2) ListSlotsPagesWithContext(ctx aws.Context, input *ListSlot } for p.Next() { - if !fn(p.Page().(*ListSlotsOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListIntentsOutput), !p.HasNextPage()) { break } } @@ -6806,127 +6814,187 @@ func (c *LexModelsV2) ListSlotsPagesWithContext(ctx aws.Context, input *ListSlot return p.Err() } -const opListTagsForResource = "ListTagsForResource" +const opListRecommendedIntents = "ListRecommendedIntents" -// ListTagsForResourceRequest generates a "aws/request.Request" representing the -// client's request for the ListTagsForResource operation. The "output" return +// ListRecommendedIntentsRequest generates a "aws/request.Request" representing the +// client's request for the ListRecommendedIntents operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListTagsForResource for more information on using the ListTagsForResource +// See ListRecommendedIntents for more information on using the ListRecommendedIntents // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the ListTagsForResourceRequest method. -// req, resp := client.ListTagsForResourceRequest(params) +// // Example sending a request using the ListRecommendedIntentsRequest method. +// req, resp := client.ListRecommendedIntentsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListTagsForResource -func (c *LexModelsV2) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListRecommendedIntents +func (c *LexModelsV2) ListRecommendedIntentsRequest(input *ListRecommendedIntentsInput) (req *request.Request, output *ListRecommendedIntentsOutput) { op := &request.Operation{ - Name: opListTagsForResource, - HTTPMethod: "GET", - HTTPPath: "/tags/{resourceARN}", + Name: opListRecommendedIntents, + HTTPMethod: "POST", + HTTPPath: "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/botrecommendations/{botRecommendationId}/intents", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, } if input == nil { - input = &ListTagsForResourceInput{} + input = &ListRecommendedIntentsInput{} } - output = &ListTagsForResourceOutput{} + output = &ListRecommendedIntentsOutput{} req = c.newRequest(op, input, output) return } -// ListTagsForResource API operation for Amazon Lex Model Building V2. +// ListRecommendedIntents API operation for Amazon Lex Model Building V2. // -// Gets a list of tags associated with a resource. Only bots, bot aliases, and -// bot channels can have tags associated with them. +// Gets a list of recommended intents provided by the bot recommendation that +// you can use in your bot. Intents in the response are ordered by relevance. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lex Model Building V2's -// API operation ListTagsForResource for usage and error information. +// API operation ListRecommendedIntents for usage and error information. // // Returned Error Types: // -// - InternalServerException -// The service encountered an unexpected condition. Try your request again. -// // - ThrottlingException // Your request rate is too high. Reduce the frequency of requests. // -// - ResourceNotFoundException -// You asked to describe a resource that doesn't exist. Check the resource that -// you are requesting and try again. +// - ServiceQuotaExceededException +// You have reached a quota for your bot. // // - ValidationException // One of the input parameters in your request isn't valid. Check the parameters // and try your request again. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListTagsForResource -func (c *LexModelsV2) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { - req, out := c.ListTagsForResourceRequest(input) +// - InternalServerException +// The service encountered an unexpected condition. Try your request again. +// +// - ResourceNotFoundException +// You asked to describe a resource that doesn't exist. Check the resource that +// you are requesting and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListRecommendedIntents +func (c *LexModelsV2) ListRecommendedIntents(input *ListRecommendedIntentsInput) (*ListRecommendedIntentsOutput, error) { + req, out := c.ListRecommendedIntentsRequest(input) return out, req.Send() } -// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of +// ListRecommendedIntentsWithContext is the same as ListRecommendedIntents with the addition of // the ability to pass a context and additional request options. // -// See ListTagsForResource for details on how to use this API operation. +// See ListRecommendedIntents for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LexModelsV2) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) { - req, out := c.ListTagsForResourceRequest(input) +func (c *LexModelsV2) ListRecommendedIntentsWithContext(ctx aws.Context, input *ListRecommendedIntentsInput, opts ...request.Option) (*ListRecommendedIntentsOutput, error) { + req, out := c.ListRecommendedIntentsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opListTestExecutionResultItems = "ListTestExecutionResultItems" +// ListRecommendedIntentsPages iterates over the pages of a ListRecommendedIntents operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListRecommendedIntents method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListRecommendedIntents operation. +// pageNum := 0 +// err := client.ListRecommendedIntentsPages(params, +// func(page *lexmodelsv2.ListRecommendedIntentsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *LexModelsV2) ListRecommendedIntentsPages(input *ListRecommendedIntentsInput, fn func(*ListRecommendedIntentsOutput, bool) bool) error { + return c.ListRecommendedIntentsPagesWithContext(aws.BackgroundContext(), input, fn) +} -// ListTestExecutionResultItemsRequest generates a "aws/request.Request" representing the -// client's request for the ListTestExecutionResultItems operation. The "output" return +// ListRecommendedIntentsPagesWithContext same as ListRecommendedIntentsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LexModelsV2) ListRecommendedIntentsPagesWithContext(ctx aws.Context, input *ListRecommendedIntentsInput, fn func(*ListRecommendedIntentsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListRecommendedIntentsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListRecommendedIntentsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListRecommendedIntentsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListSessionAnalyticsData = "ListSessionAnalyticsData" + +// ListSessionAnalyticsDataRequest generates a "aws/request.Request" representing the +// client's request for the ListSessionAnalyticsData operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListTestExecutionResultItems for more information on using the ListTestExecutionResultItems +// See ListSessionAnalyticsData for more information on using the ListSessionAnalyticsData // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the ListTestExecutionResultItemsRequest method. -// req, resp := client.ListTestExecutionResultItemsRequest(params) +// // Example sending a request using the ListSessionAnalyticsDataRequest method. +// req, resp := client.ListSessionAnalyticsDataRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListTestExecutionResultItems -func (c *LexModelsV2) ListTestExecutionResultItemsRequest(input *ListTestExecutionResultItemsInput) (req *request.Request, output *ListTestExecutionResultItemsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListSessionAnalyticsData +func (c *LexModelsV2) ListSessionAnalyticsDataRequest(input *ListSessionAnalyticsDataInput) (req *request.Request, output *ListSessionAnalyticsDataOutput) { op := &request.Operation{ - Name: opListTestExecutionResultItems, + Name: opListSessionAnalyticsData, HTTPMethod: "POST", - HTTPPath: "/testexecutions/{testExecutionId}/results", + HTTPPath: "/bots/{botId}/analytics/sessions", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, @@ -6936,102 +7004,112 @@ func (c *LexModelsV2) ListTestExecutionResultItemsRequest(input *ListTestExecuti } if input == nil { - input = &ListTestExecutionResultItemsInput{} + input = &ListSessionAnalyticsDataInput{} } - output = &ListTestExecutionResultItemsOutput{} + output = &ListSessionAnalyticsDataOutput{} req = c.newRequest(op, input, output) return } -// ListTestExecutionResultItems API operation for Amazon Lex Model Building V2. +// ListSessionAnalyticsData API operation for Amazon Lex Model Building V2. // -// Gets a list of test execution result items. +// Retrieves a list of metadata for individual user sessions with your bot. +// The startDateTime and endDateTime fields are required. These fields 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 and the sortBy field to +// specify the values by which to sort the results. +// +// - Use the maxResults field to limit the number of results to return in +// a single response and the nextToken field to return the next batch of +// results if the response does not return the full set of results. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lex Model Building V2's -// API operation ListTestExecutionResultItems for usage and error information. +// API operation ListSessionAnalyticsData for usage and error information. // // Returned Error Types: // // - ThrottlingException // Your request rate is too high. Reduce the frequency of requests. // -// - ServiceQuotaExceededException -// You have reached a quota for your bot. -// // - ValidationException // One of the input parameters in your request isn't valid. Check the parameters // and try your request again. // -// - ResourceNotFoundException -// You asked to describe a resource that doesn't exist. Check the resource that -// you are requesting and try again. +// - PreconditionFailedException +// Your request couldn't be completed because one or more request fields aren't +// valid. Check the fields in your request and try again. +// +// - ServiceQuotaExceededException +// You have reached a quota for your bot. // // - InternalServerException // The service encountered an unexpected condition. Try your request again. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListTestExecutionResultItems -func (c *LexModelsV2) ListTestExecutionResultItems(input *ListTestExecutionResultItemsInput) (*ListTestExecutionResultItemsOutput, error) { - req, out := c.ListTestExecutionResultItemsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListSessionAnalyticsData +func (c *LexModelsV2) ListSessionAnalyticsData(input *ListSessionAnalyticsDataInput) (*ListSessionAnalyticsDataOutput, error) { + req, out := c.ListSessionAnalyticsDataRequest(input) return out, req.Send() } -// ListTestExecutionResultItemsWithContext is the same as ListTestExecutionResultItems with the addition of +// ListSessionAnalyticsDataWithContext is the same as ListSessionAnalyticsData with the addition of // the ability to pass a context and additional request options. // -// See ListTestExecutionResultItems for details on how to use this API operation. +// See ListSessionAnalyticsData for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LexModelsV2) ListTestExecutionResultItemsWithContext(ctx aws.Context, input *ListTestExecutionResultItemsInput, opts ...request.Option) (*ListTestExecutionResultItemsOutput, error) { - req, out := c.ListTestExecutionResultItemsRequest(input) +func (c *LexModelsV2) ListSessionAnalyticsDataWithContext(ctx aws.Context, input *ListSessionAnalyticsDataInput, opts ...request.Option) (*ListSessionAnalyticsDataOutput, error) { + req, out := c.ListSessionAnalyticsDataRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListTestExecutionResultItemsPages iterates over the pages of a ListTestExecutionResultItems operation, +// ListSessionAnalyticsDataPages iterates over the pages of a ListSessionAnalyticsData operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListTestExecutionResultItems method for more information on how to use this operation. +// See ListSessionAnalyticsData method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // -// // Example iterating over at most 3 pages of a ListTestExecutionResultItems operation. +// // Example iterating over at most 3 pages of a ListSessionAnalyticsData operation. // pageNum := 0 -// err := client.ListTestExecutionResultItemsPages(params, -// func(page *lexmodelsv2.ListTestExecutionResultItemsOutput, lastPage bool) bool { +// err := client.ListSessionAnalyticsDataPages(params, +// func(page *lexmodelsv2.ListSessionAnalyticsDataOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *LexModelsV2) ListTestExecutionResultItemsPages(input *ListTestExecutionResultItemsInput, fn func(*ListTestExecutionResultItemsOutput, bool) bool) error { - return c.ListTestExecutionResultItemsPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *LexModelsV2) ListSessionAnalyticsDataPages(input *ListSessionAnalyticsDataInput, fn func(*ListSessionAnalyticsDataOutput, bool) bool) error { + return c.ListSessionAnalyticsDataPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListTestExecutionResultItemsPagesWithContext same as ListTestExecutionResultItemsPages except +// ListSessionAnalyticsDataPagesWithContext same as ListSessionAnalyticsDataPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LexModelsV2) ListTestExecutionResultItemsPagesWithContext(ctx aws.Context, input *ListTestExecutionResultItemsInput, fn func(*ListTestExecutionResultItemsOutput, bool) bool, opts ...request.Option) error { +func (c *LexModelsV2) ListSessionAnalyticsDataPagesWithContext(ctx aws.Context, input *ListSessionAnalyticsDataInput, fn func(*ListSessionAnalyticsDataOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListTestExecutionResultItemsInput + var inCpy *ListSessionAnalyticsDataInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListTestExecutionResultItemsRequest(inCpy) + req, _ := c.ListSessionAnalyticsDataRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -7039,7 +7117,7 @@ func (c *LexModelsV2) ListTestExecutionResultItemsPagesWithContext(ctx aws.Conte } for p.Next() { - if !fn(p.Page().(*ListTestExecutionResultItemsOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListSessionAnalyticsDataOutput), !p.HasNextPage()) { break } } @@ -7047,36 +7125,36 @@ func (c *LexModelsV2) ListTestExecutionResultItemsPagesWithContext(ctx aws.Conte return p.Err() } -const opListTestExecutions = "ListTestExecutions" +const opListSessionMetrics = "ListSessionMetrics" -// ListTestExecutionsRequest generates a "aws/request.Request" representing the -// client's request for the ListTestExecutions operation. The "output" return +// ListSessionMetricsRequest generates a "aws/request.Request" representing the +// client's request for the ListSessionMetrics operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListTestExecutions for more information on using the ListTestExecutions +// See ListSessionMetrics for more information on using the ListSessionMetrics // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the ListTestExecutionsRequest method. -// req, resp := client.ListTestExecutionsRequest(params) +// // Example sending a request using the ListSessionMetricsRequest method. +// req, resp := client.ListSessionMetricsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListTestExecutions -func (c *LexModelsV2) ListTestExecutionsRequest(input *ListTestExecutionsInput) (req *request.Request, output *ListTestExecutionsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListSessionMetrics +func (c *LexModelsV2) ListSessionMetricsRequest(input *ListSessionMetricsInput) (req *request.Request, output *ListSessionMetricsOutput) { op := &request.Operation{ - Name: opListTestExecutions, + Name: opListSessionMetrics, HTTPMethod: "POST", - HTTPPath: "/testexecutions", + HTTPPath: "/bots/{botId}/analytics/sessionmetrics", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, @@ -7086,98 +7164,125 @@ func (c *LexModelsV2) ListTestExecutionsRequest(input *ListTestExecutionsInput) } if input == nil { - input = &ListTestExecutionsInput{} + input = &ListSessionMetricsInput{} } - output = &ListTestExecutionsOutput{} + output = &ListSessionMetricsOutput{} req = c.newRequest(op, input, output) return } -// ListTestExecutions API operation for Amazon Lex Model Building V2. +// ListSessionMetrics API operation for Amazon Lex Model Building V2. // -// The list of test set executions. +// Retrieves summary metrics for the user sessions with your bot. The following +// fields are required: +// +// - metrics – A list of AnalyticsSessionMetric (https://docs.aws.amazon.com/lexv2/latest/APIReference/API_AnalyticsSessionMetric.html) +// objects. In each object, use the name field to specify the metric to calculate, +// the statistic field to specify whether to calculate the Sum, Average, +// or Max number, and the order field to specify whether to sort the results +// in Ascending or Descending order. +// +// - startDateTime and endDateTime – 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, the groupBy field to specify +// categories by which to group the results, and the binBy 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 the nextToken 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 both binBy and metrics. Currently, you +// can specify it in either field, but not in both. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lex Model Building V2's -// API operation ListTestExecutions for usage and error information. +// API operation ListSessionMetrics for usage and error information. // // Returned Error Types: // // - ThrottlingException // Your request rate is too high. Reduce the frequency of requests. // -// - ServiceQuotaExceededException -// You have reached a quota for your bot. -// // - ValidationException // One of the input parameters in your request isn't valid. Check the parameters // and try your request again. // +// - PreconditionFailedException +// Your request couldn't be completed because one or more request fields aren't +// valid. Check the fields in your request and try again. +// +// - ServiceQuotaExceededException +// You have reached a quota for your bot. +// // - InternalServerException // The service encountered an unexpected condition. Try your request again. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListTestExecutions -func (c *LexModelsV2) ListTestExecutions(input *ListTestExecutionsInput) (*ListTestExecutionsOutput, error) { - req, out := c.ListTestExecutionsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListSessionMetrics +func (c *LexModelsV2) ListSessionMetrics(input *ListSessionMetricsInput) (*ListSessionMetricsOutput, error) { + req, out := c.ListSessionMetricsRequest(input) return out, req.Send() } -// ListTestExecutionsWithContext is the same as ListTestExecutions with the addition of +// ListSessionMetricsWithContext is the same as ListSessionMetrics with the addition of // the ability to pass a context and additional request options. // -// See ListTestExecutions for details on how to use this API operation. +// See ListSessionMetrics for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LexModelsV2) ListTestExecutionsWithContext(ctx aws.Context, input *ListTestExecutionsInput, opts ...request.Option) (*ListTestExecutionsOutput, error) { - req, out := c.ListTestExecutionsRequest(input) +func (c *LexModelsV2) ListSessionMetricsWithContext(ctx aws.Context, input *ListSessionMetricsInput, opts ...request.Option) (*ListSessionMetricsOutput, error) { + req, out := c.ListSessionMetricsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListTestExecutionsPages iterates over the pages of a ListTestExecutions operation, +// ListSessionMetricsPages iterates over the pages of a ListSessionMetrics operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListTestExecutions method for more information on how to use this operation. +// See ListSessionMetrics method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // -// // Example iterating over at most 3 pages of a ListTestExecutions operation. +// // Example iterating over at most 3 pages of a ListSessionMetrics operation. // pageNum := 0 -// err := client.ListTestExecutionsPages(params, -// func(page *lexmodelsv2.ListTestExecutionsOutput, lastPage bool) bool { +// err := client.ListSessionMetricsPages(params, +// func(page *lexmodelsv2.ListSessionMetricsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *LexModelsV2) ListTestExecutionsPages(input *ListTestExecutionsInput, fn func(*ListTestExecutionsOutput, bool) bool) error { - return c.ListTestExecutionsPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *LexModelsV2) ListSessionMetricsPages(input *ListSessionMetricsInput, fn func(*ListSessionMetricsOutput, bool) bool) error { + return c.ListSessionMetricsPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListTestExecutionsPagesWithContext same as ListTestExecutionsPages except +// ListSessionMetricsPagesWithContext same as ListSessionMetricsPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LexModelsV2) ListTestExecutionsPagesWithContext(ctx aws.Context, input *ListTestExecutionsInput, fn func(*ListTestExecutionsOutput, bool) bool, opts ...request.Option) error { +func (c *LexModelsV2) ListSessionMetricsPagesWithContext(ctx aws.Context, input *ListSessionMetricsInput, fn func(*ListSessionMetricsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListTestExecutionsInput + var inCpy *ListSessionMetricsInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListTestExecutionsRequest(inCpy) + req, _ := c.ListSessionMetricsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -7185,7 +7290,7 @@ func (c *LexModelsV2) ListTestExecutionsPagesWithContext(ctx aws.Context, input } for p.Next() { - if !fn(p.Page().(*ListTestExecutionsOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListSessionMetricsOutput), !p.HasNextPage()) { break } } @@ -7193,36 +7298,36 @@ func (c *LexModelsV2) ListTestExecutionsPagesWithContext(ctx aws.Context, input return p.Err() } -const opListTestSetRecords = "ListTestSetRecords" +const opListSlotTypes = "ListSlotTypes" -// ListTestSetRecordsRequest generates a "aws/request.Request" representing the -// client's request for the ListTestSetRecords operation. The "output" return +// ListSlotTypesRequest generates a "aws/request.Request" representing the +// client's request for the ListSlotTypes operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListTestSetRecords for more information on using the ListTestSetRecords +// See ListSlotTypes for more information on using the ListSlotTypes // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the ListTestSetRecordsRequest method. -// req, resp := client.ListTestSetRecordsRequest(params) +// // Example sending a request using the ListSlotTypesRequest method. +// req, resp := client.ListSlotTypesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListTestSetRecords -func (c *LexModelsV2) ListTestSetRecordsRequest(input *ListTestSetRecordsInput) (req *request.Request, output *ListTestSetRecordsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListSlotTypes +func (c *LexModelsV2) ListSlotTypesRequest(input *ListSlotTypesInput) (req *request.Request, output *ListSlotTypesOutput) { op := &request.Operation{ - Name: opListTestSetRecords, + Name: opListSlotTypes, HTTPMethod: "POST", - HTTPPath: "/testsets/{testSetId}/records", + HTTPPath: "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/slottypes/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, @@ -7232,24 +7337,24 @@ func (c *LexModelsV2) ListTestSetRecordsRequest(input *ListTestSetRecordsInput) } if input == nil { - input = &ListTestSetRecordsInput{} + input = &ListSlotTypesInput{} } - output = &ListTestSetRecordsOutput{} + output = &ListSlotTypesOutput{} req = c.newRequest(op, input, output) return } -// ListTestSetRecords API operation for Amazon Lex Model Building V2. +// ListSlotTypes API operation for Amazon Lex Model Building V2. // -// The list of test set records. +// Gets a list of slot types that match the specified criteria. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lex Model Building V2's -// API operation ListTestSetRecords for usage and error information. +// API operation ListSlotTypes for usage and error information. // // Returned Error Types: // @@ -7263,71 +7368,67 @@ func (c *LexModelsV2) ListTestSetRecordsRequest(input *ListTestSetRecordsInput) // One of the input parameters in your request isn't valid. Check the parameters // and try your request again. // -// - ResourceNotFoundException -// You asked to describe a resource that doesn't exist. Check the resource that -// you are requesting and try again. -// // - InternalServerException // The service encountered an unexpected condition. Try your request again. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListTestSetRecords -func (c *LexModelsV2) ListTestSetRecords(input *ListTestSetRecordsInput) (*ListTestSetRecordsOutput, error) { - req, out := c.ListTestSetRecordsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListSlotTypes +func (c *LexModelsV2) ListSlotTypes(input *ListSlotTypesInput) (*ListSlotTypesOutput, error) { + req, out := c.ListSlotTypesRequest(input) return out, req.Send() } -// ListTestSetRecordsWithContext is the same as ListTestSetRecords with the addition of +// ListSlotTypesWithContext is the same as ListSlotTypes with the addition of // the ability to pass a context and additional request options. // -// See ListTestSetRecords for details on how to use this API operation. +// See ListSlotTypes for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LexModelsV2) ListTestSetRecordsWithContext(ctx aws.Context, input *ListTestSetRecordsInput, opts ...request.Option) (*ListTestSetRecordsOutput, error) { - req, out := c.ListTestSetRecordsRequest(input) +func (c *LexModelsV2) ListSlotTypesWithContext(ctx aws.Context, input *ListSlotTypesInput, opts ...request.Option) (*ListSlotTypesOutput, error) { + req, out := c.ListSlotTypesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListTestSetRecordsPages iterates over the pages of a ListTestSetRecords operation, +// ListSlotTypesPages iterates over the pages of a ListSlotTypes operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListTestSetRecords method for more information on how to use this operation. +// See ListSlotTypes method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // -// // Example iterating over at most 3 pages of a ListTestSetRecords operation. +// // Example iterating over at most 3 pages of a ListSlotTypes operation. // pageNum := 0 -// err := client.ListTestSetRecordsPages(params, -// func(page *lexmodelsv2.ListTestSetRecordsOutput, lastPage bool) bool { +// err := client.ListSlotTypesPages(params, +// func(page *lexmodelsv2.ListSlotTypesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *LexModelsV2) ListTestSetRecordsPages(input *ListTestSetRecordsInput, fn func(*ListTestSetRecordsOutput, bool) bool) error { - return c.ListTestSetRecordsPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *LexModelsV2) ListSlotTypesPages(input *ListSlotTypesInput, fn func(*ListSlotTypesOutput, bool) bool) error { + return c.ListSlotTypesPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListTestSetRecordsPagesWithContext same as ListTestSetRecordsPages except +// ListSlotTypesPagesWithContext same as ListSlotTypesPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LexModelsV2) ListTestSetRecordsPagesWithContext(ctx aws.Context, input *ListTestSetRecordsInput, fn func(*ListTestSetRecordsOutput, bool) bool, opts ...request.Option) error { +func (c *LexModelsV2) ListSlotTypesPagesWithContext(ctx aws.Context, input *ListSlotTypesInput, fn func(*ListSlotTypesOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListTestSetRecordsInput + var inCpy *ListSlotTypesInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListTestSetRecordsRequest(inCpy) + req, _ := c.ListSlotTypesRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -7335,7 +7436,7 @@ func (c *LexModelsV2) ListTestSetRecordsPagesWithContext(ctx aws.Context, input } for p.Next() { - if !fn(p.Page().(*ListTestSetRecordsOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListSlotTypesOutput), !p.HasNextPage()) { break } } @@ -7343,36 +7444,36 @@ func (c *LexModelsV2) ListTestSetRecordsPagesWithContext(ctx aws.Context, input return p.Err() } -const opListTestSets = "ListTestSets" +const opListSlots = "ListSlots" -// ListTestSetsRequest generates a "aws/request.Request" representing the -// client's request for the ListTestSets operation. The "output" return +// ListSlotsRequest generates a "aws/request.Request" representing the +// client's request for the ListSlots operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListTestSets for more information on using the ListTestSets +// See ListSlots for more information on using the ListSlots // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the ListTestSetsRequest method. -// req, resp := client.ListTestSetsRequest(params) +// // Example sending a request using the ListSlotsRequest method. +// req, resp := client.ListSlotsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListTestSets -func (c *LexModelsV2) ListTestSetsRequest(input *ListTestSetsInput) (req *request.Request, output *ListTestSetsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListSlots +func (c *LexModelsV2) ListSlotsRequest(input *ListSlotsInput) (req *request.Request, output *ListSlotsOutput) { op := &request.Operation{ - Name: opListTestSets, + Name: opListSlots, HTTPMethod: "POST", - HTTPPath: "/testsets", + HTTPPath: "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/intents/{intentId}/slots/", Paginator: &request.Paginator{ InputTokens: []string{"nextToken"}, OutputTokens: []string{"nextToken"}, @@ -7382,24 +7483,24 @@ func (c *LexModelsV2) ListTestSetsRequest(input *ListTestSetsInput) (req *reques } if input == nil { - input = &ListTestSetsInput{} + input = &ListSlotsInput{} } - output = &ListTestSetsOutput{} + output = &ListSlotsOutput{} req = c.newRequest(op, input, output) return } -// ListTestSets API operation for Amazon Lex Model Building V2. +// ListSlots API operation for Amazon Lex Model Building V2. // -// # The list of the test sets +// Gets a list of slots that match the specified criteria. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lex Model Building V2's -// API operation ListTestSets for usage and error information. +// API operation ListSlots for usage and error information. // // Returned Error Types: // @@ -7416,64 +7517,64 @@ func (c *LexModelsV2) ListTestSetsRequest(input *ListTestSetsInput) (req *reques // - InternalServerException // The service encountered an unexpected condition. Try your request again. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListTestSets -func (c *LexModelsV2) ListTestSets(input *ListTestSetsInput) (*ListTestSetsOutput, error) { - req, out := c.ListTestSetsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListSlots +func (c *LexModelsV2) ListSlots(input *ListSlotsInput) (*ListSlotsOutput, error) { + req, out := c.ListSlotsRequest(input) return out, req.Send() } -// ListTestSetsWithContext is the same as ListTestSets with the addition of +// ListSlotsWithContext is the same as ListSlots with the addition of // the ability to pass a context and additional request options. // -// See ListTestSets for details on how to use this API operation. +// See ListSlots for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LexModelsV2) ListTestSetsWithContext(ctx aws.Context, input *ListTestSetsInput, opts ...request.Option) (*ListTestSetsOutput, error) { - req, out := c.ListTestSetsRequest(input) +func (c *LexModelsV2) ListSlotsWithContext(ctx aws.Context, input *ListSlotsInput, opts ...request.Option) (*ListSlotsOutput, error) { + req, out := c.ListSlotsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListTestSetsPages iterates over the pages of a ListTestSets operation, +// ListSlotsPages iterates over the pages of a ListSlots operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListTestSets method for more information on how to use this operation. +// See ListSlots method for more information on how to use this operation. // // Note: This operation can generate multiple requests to a service. // -// // Example iterating over at most 3 pages of a ListTestSets operation. +// // Example iterating over at most 3 pages of a ListSlots operation. // pageNum := 0 -// err := client.ListTestSetsPages(params, -// func(page *lexmodelsv2.ListTestSetsOutput, lastPage bool) bool { +// err := client.ListSlotsPages(params, +// func(page *lexmodelsv2.ListSlotsOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *LexModelsV2) ListTestSetsPages(input *ListTestSetsInput, fn func(*ListTestSetsOutput, bool) bool) error { - return c.ListTestSetsPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *LexModelsV2) ListSlotsPages(input *ListSlotsInput, fn func(*ListSlotsOutput, bool) bool) error { + return c.ListSlotsPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListTestSetsPagesWithContext same as ListTestSetsPages except +// ListSlotsPagesWithContext same as ListSlotsPages except // it takes a Context and allows setting request options on the pages. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LexModelsV2) ListTestSetsPagesWithContext(ctx aws.Context, input *ListTestSetsInput, fn func(*ListTestSetsOutput, bool) bool, opts ...request.Option) error { +func (c *LexModelsV2) ListSlotsPagesWithContext(ctx aws.Context, input *ListSlotsInput, fn func(*ListSlotsOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListTestSetsInput + var inCpy *ListSlotsInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListTestSetsRequest(inCpy) + req, _ := c.ListSlotsRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -7481,7 +7582,7 @@ func (c *LexModelsV2) ListTestSetsPagesWithContext(ctx aws.Context, input *ListT } for p.Next() { - if !fn(p.Page().(*ListTestSetsOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListSlotsOutput), !p.HasNextPage()) { break } } @@ -7489,151 +7590,154 @@ func (c *LexModelsV2) ListTestSetsPagesWithContext(ctx aws.Context, input *ListT return p.Err() } -const opSearchAssociatedTranscripts = "SearchAssociatedTranscripts" +const opListTagsForResource = "ListTagsForResource" -// SearchAssociatedTranscriptsRequest generates a "aws/request.Request" representing the -// client's request for the SearchAssociatedTranscripts operation. The "output" return +// ListTagsForResourceRequest generates a "aws/request.Request" representing the +// client's request for the ListTagsForResource operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See SearchAssociatedTranscripts for more information on using the SearchAssociatedTranscripts +// See ListTagsForResource for more information on using the ListTagsForResource // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the SearchAssociatedTranscriptsRequest method. -// req, resp := client.SearchAssociatedTranscriptsRequest(params) +// // Example sending a request using the ListTagsForResourceRequest method. +// req, resp := client.ListTagsForResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/SearchAssociatedTranscripts -func (c *LexModelsV2) SearchAssociatedTranscriptsRequest(input *SearchAssociatedTranscriptsInput) (req *request.Request, output *SearchAssociatedTranscriptsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListTagsForResource +func (c *LexModelsV2) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { op := &request.Operation{ - Name: opSearchAssociatedTranscripts, - HTTPMethod: "POST", - HTTPPath: "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/botrecommendations/{botRecommendationId}/associatedtranscripts", + Name: opListTagsForResource, + HTTPMethod: "GET", + HTTPPath: "/tags/{resourceARN}", } if input == nil { - input = &SearchAssociatedTranscriptsInput{} + input = &ListTagsForResourceInput{} } - output = &SearchAssociatedTranscriptsOutput{} + output = &ListTagsForResourceOutput{} req = c.newRequest(op, input, output) return } -// SearchAssociatedTranscripts API operation for Amazon Lex Model Building V2. +// ListTagsForResource API operation for Amazon Lex Model Building V2. // -// Search for associated transcripts that meet the specified criteria. +// Gets a list of tags associated with a resource. Only bots, bot aliases, and +// bot channels can have tags associated with them. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lex Model Building V2's -// API operation SearchAssociatedTranscripts for usage and error information. +// API operation ListTagsForResource for usage and error information. // // Returned Error Types: // +// - InternalServerException +// The service encountered an unexpected condition. Try your request again. +// // - ThrottlingException // Your request rate is too high. Reduce the frequency of requests. // -// - ServiceQuotaExceededException -// You have reached a quota for your bot. +// - ResourceNotFoundException +// You asked to describe a resource that doesn't exist. Check the resource that +// you are requesting and try again. // // - ValidationException // One of the input parameters in your request isn't valid. Check the parameters // and try your request again. // -// - InternalServerException -// The service encountered an unexpected condition. Try your request again. -// -// - ResourceNotFoundException -// You asked to describe a resource that doesn't exist. Check the resource that -// you are requesting and try again. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/SearchAssociatedTranscripts -func (c *LexModelsV2) SearchAssociatedTranscripts(input *SearchAssociatedTranscriptsInput) (*SearchAssociatedTranscriptsOutput, error) { - req, out := c.SearchAssociatedTranscriptsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListTagsForResource +func (c *LexModelsV2) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { + req, out := c.ListTagsForResourceRequest(input) return out, req.Send() } -// SearchAssociatedTranscriptsWithContext is the same as SearchAssociatedTranscripts with the addition of +// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of // the ability to pass a context and additional request options. // -// See SearchAssociatedTranscripts for details on how to use this API operation. +// See ListTagsForResource for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LexModelsV2) SearchAssociatedTranscriptsWithContext(ctx aws.Context, input *SearchAssociatedTranscriptsInput, opts ...request.Option) (*SearchAssociatedTranscriptsOutput, error) { - req, out := c.SearchAssociatedTranscriptsRequest(input) +func (c *LexModelsV2) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) { + req, out := c.ListTagsForResourceRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opStartBotRecommendation = "StartBotRecommendation" +const opListTestExecutionResultItems = "ListTestExecutionResultItems" -// StartBotRecommendationRequest generates a "aws/request.Request" representing the -// client's request for the StartBotRecommendation operation. The "output" return +// ListTestExecutionResultItemsRequest generates a "aws/request.Request" representing the +// client's request for the ListTestExecutionResultItems operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See StartBotRecommendation for more information on using the StartBotRecommendation +// See ListTestExecutionResultItems for more information on using the ListTestExecutionResultItems // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the StartBotRecommendationRequest method. -// req, resp := client.StartBotRecommendationRequest(params) +// // Example sending a request using the ListTestExecutionResultItemsRequest method. +// req, resp := client.ListTestExecutionResultItemsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/StartBotRecommendation -func (c *LexModelsV2) StartBotRecommendationRequest(input *StartBotRecommendationInput) (req *request.Request, output *StartBotRecommendationOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListTestExecutionResultItems +func (c *LexModelsV2) ListTestExecutionResultItemsRequest(input *ListTestExecutionResultItemsInput) (req *request.Request, output *ListTestExecutionResultItemsOutput) { op := &request.Operation{ - Name: opStartBotRecommendation, - HTTPMethod: "PUT", - HTTPPath: "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/botrecommendations/", + Name: opListTestExecutionResultItems, + HTTPMethod: "POST", + HTTPPath: "/testexecutions/{testExecutionId}/results", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, } if input == nil { - input = &StartBotRecommendationInput{} + input = &ListTestExecutionResultItemsInput{} } - output = &StartBotRecommendationOutput{} + output = &ListTestExecutionResultItemsOutput{} req = c.newRequest(op, input, output) return } -// StartBotRecommendation API operation for Amazon Lex Model Building V2. +// ListTestExecutionResultItems API operation for Amazon Lex Model Building V2. // -// Use this to provide your transcript data, and to start the bot recommendation -// process. +// Gets a list of test execution result items. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lex Model Building V2's -// API operation StartBotRecommendation for usage and error information. +// API operation ListTestExecutionResultItems for usage and error information. // // Returned Error Types: // @@ -7651,97 +7755,139 @@ func (c *LexModelsV2) StartBotRecommendationRequest(input *StartBotRecommendatio // You asked to describe a resource that doesn't exist. Check the resource that // you are requesting and try again. // -// - ConflictException -// The action that you tried to perform couldn't be completed because the resource -// is in a conflicting state. For example, deleting a bot that is in the CREATING -// state. Try your request again. -// -// - PreconditionFailedException -// Your request couldn't be completed because one or more request fields aren't -// valid. Check the fields in your request and try again. -// -// - ConflictException -// The action that you tried to perform couldn't be completed because the resource -// is in a conflicting state. For example, deleting a bot that is in the CREATING -// state. Try your request again. -// // - InternalServerException // The service encountered an unexpected condition. Try your request again. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/StartBotRecommendation -func (c *LexModelsV2) StartBotRecommendation(input *StartBotRecommendationInput) (*StartBotRecommendationOutput, error) { - req, out := c.StartBotRecommendationRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListTestExecutionResultItems +func (c *LexModelsV2) ListTestExecutionResultItems(input *ListTestExecutionResultItemsInput) (*ListTestExecutionResultItemsOutput, error) { + req, out := c.ListTestExecutionResultItemsRequest(input) return out, req.Send() } -// StartBotRecommendationWithContext is the same as StartBotRecommendation with the addition of +// ListTestExecutionResultItemsWithContext is the same as ListTestExecutionResultItems with the addition of // the ability to pass a context and additional request options. // -// See StartBotRecommendation for details on how to use this API operation. +// See ListTestExecutionResultItems for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LexModelsV2) StartBotRecommendationWithContext(ctx aws.Context, input *StartBotRecommendationInput, opts ...request.Option) (*StartBotRecommendationOutput, error) { - req, out := c.StartBotRecommendationRequest(input) +func (c *LexModelsV2) ListTestExecutionResultItemsWithContext(ctx aws.Context, input *ListTestExecutionResultItemsInput, opts ...request.Option) (*ListTestExecutionResultItemsOutput, error) { + req, out := c.ListTestExecutionResultItemsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opStartImport = "StartImport" +// ListTestExecutionResultItemsPages iterates over the pages of a ListTestExecutionResultItems operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListTestExecutionResultItems method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListTestExecutionResultItems operation. +// pageNum := 0 +// err := client.ListTestExecutionResultItemsPages(params, +// func(page *lexmodelsv2.ListTestExecutionResultItemsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *LexModelsV2) ListTestExecutionResultItemsPages(input *ListTestExecutionResultItemsInput, fn func(*ListTestExecutionResultItemsOutput, bool) bool) error { + return c.ListTestExecutionResultItemsPagesWithContext(aws.BackgroundContext(), input, fn) +} -// StartImportRequest generates a "aws/request.Request" representing the -// client's request for the StartImport operation. The "output" return +// ListTestExecutionResultItemsPagesWithContext same as ListTestExecutionResultItemsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LexModelsV2) ListTestExecutionResultItemsPagesWithContext(ctx aws.Context, input *ListTestExecutionResultItemsInput, fn func(*ListTestExecutionResultItemsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListTestExecutionResultItemsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListTestExecutionResultItemsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListTestExecutionResultItemsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListTestExecutions = "ListTestExecutions" + +// ListTestExecutionsRequest generates a "aws/request.Request" representing the +// client's request for the ListTestExecutions operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See StartImport for more information on using the StartImport +// See ListTestExecutions for more information on using the ListTestExecutions // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the StartImportRequest method. -// req, resp := client.StartImportRequest(params) +// // Example sending a request using the ListTestExecutionsRequest method. +// req, resp := client.ListTestExecutionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/StartImport -func (c *LexModelsV2) StartImportRequest(input *StartImportInput) (req *request.Request, output *StartImportOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListTestExecutions +func (c *LexModelsV2) ListTestExecutionsRequest(input *ListTestExecutionsInput) (req *request.Request, output *ListTestExecutionsOutput) { op := &request.Operation{ - Name: opStartImport, - HTTPMethod: "PUT", - HTTPPath: "/imports/", + Name: opListTestExecutions, + HTTPMethod: "POST", + HTTPPath: "/testexecutions", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, } if input == nil { - input = &StartImportInput{} + input = &ListTestExecutionsInput{} } - output = &StartImportOutput{} + output = &ListTestExecutionsOutput{} req = c.newRequest(op, input, output) return } -// StartImport API operation for Amazon Lex Model Building V2. +// ListTestExecutions API operation for Amazon Lex Model Building V2. // -// Starts importing a bot, bot locale, or custom vocabulary from a zip archive -// that you uploaded to an S3 bucket. +// The list of test set executions. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lex Model Building V2's -// API operation StartImport for usage and error information. +// API operation ListTestExecutions for usage and error information. // // Returned Error Types: // @@ -7755,91 +7901,139 @@ func (c *LexModelsV2) StartImportRequest(input *StartImportInput) (req *request. // One of the input parameters in your request isn't valid. Check the parameters // and try your request again. // -// - ResourceNotFoundException -// You asked to describe a resource that doesn't exist. Check the resource that -// you are requesting and try again. -// -// - ConflictException -// The action that you tried to perform couldn't be completed because the resource -// is in a conflicting state. For example, deleting a bot that is in the CREATING -// state. Try your request again. -// // - InternalServerException // The service encountered an unexpected condition. Try your request again. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/StartImport -func (c *LexModelsV2) StartImport(input *StartImportInput) (*StartImportOutput, error) { - req, out := c.StartImportRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListTestExecutions +func (c *LexModelsV2) ListTestExecutions(input *ListTestExecutionsInput) (*ListTestExecutionsOutput, error) { + req, out := c.ListTestExecutionsRequest(input) return out, req.Send() } -// StartImportWithContext is the same as StartImport with the addition of +// ListTestExecutionsWithContext is the same as ListTestExecutions with the addition of // the ability to pass a context and additional request options. // -// See StartImport for details on how to use this API operation. +// See ListTestExecutions for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LexModelsV2) StartImportWithContext(ctx aws.Context, input *StartImportInput, opts ...request.Option) (*StartImportOutput, error) { - req, out := c.StartImportRequest(input) +func (c *LexModelsV2) ListTestExecutionsWithContext(ctx aws.Context, input *ListTestExecutionsInput, opts ...request.Option) (*ListTestExecutionsOutput, error) { + req, out := c.ListTestExecutionsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opStartTestExecution = "StartTestExecution" +// ListTestExecutionsPages iterates over the pages of a ListTestExecutions operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListTestExecutions method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListTestExecutions operation. +// pageNum := 0 +// err := client.ListTestExecutionsPages(params, +// func(page *lexmodelsv2.ListTestExecutionsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *LexModelsV2) ListTestExecutionsPages(input *ListTestExecutionsInput, fn func(*ListTestExecutionsOutput, bool) bool) error { + return c.ListTestExecutionsPagesWithContext(aws.BackgroundContext(), input, fn) +} -// StartTestExecutionRequest generates a "aws/request.Request" representing the -// client's request for the StartTestExecution operation. The "output" return +// ListTestExecutionsPagesWithContext same as ListTestExecutionsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LexModelsV2) ListTestExecutionsPagesWithContext(ctx aws.Context, input *ListTestExecutionsInput, fn func(*ListTestExecutionsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListTestExecutionsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListTestExecutionsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListTestExecutionsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListTestSetRecords = "ListTestSetRecords" + +// ListTestSetRecordsRequest generates a "aws/request.Request" representing the +// client's request for the ListTestSetRecords operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See StartTestExecution for more information on using the StartTestExecution +// See ListTestSetRecords for more information on using the ListTestSetRecords // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the StartTestExecutionRequest method. -// req, resp := client.StartTestExecutionRequest(params) +// // Example sending a request using the ListTestSetRecordsRequest method. +// req, resp := client.ListTestSetRecordsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/StartTestExecution -func (c *LexModelsV2) StartTestExecutionRequest(input *StartTestExecutionInput) (req *request.Request, output *StartTestExecutionOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListTestSetRecords +func (c *LexModelsV2) ListTestSetRecordsRequest(input *ListTestSetRecordsInput) (req *request.Request, output *ListTestSetRecordsOutput) { op := &request.Operation{ - Name: opStartTestExecution, + Name: opListTestSetRecords, HTTPMethod: "POST", - HTTPPath: "/testsets/{testSetId}/testexecutions", + HTTPPath: "/testsets/{testSetId}/records", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, } if input == nil { - input = &StartTestExecutionInput{} + input = &ListTestSetRecordsInput{} } - output = &StartTestExecutionOutput{} + output = &ListTestSetRecordsOutput{} req = c.newRequest(op, input, output) return } -// StartTestExecution API operation for Amazon Lex Model Building V2. +// ListTestSetRecords API operation for Amazon Lex Model Building V2. // -// The action to start test set execution. +// The list of test set records. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lex Model Building V2's -// API operation StartTestExecution for usage and error information. +// API operation ListTestSetRecords for usage and error information. // // Returned Error Types: // @@ -7849,95 +8043,147 @@ func (c *LexModelsV2) StartTestExecutionRequest(input *StartTestExecutionInput) // - ServiceQuotaExceededException // You have reached a quota for your bot. // -// - ResourceNotFoundException -// You asked to describe a resource that doesn't exist. Check the resource that -// you are requesting and try again. -// // - ValidationException // One of the input parameters in your request isn't valid. Check the parameters // and try your request again. // -// - ConflictException -// The action that you tried to perform couldn't be completed because the resource -// is in a conflicting state. For example, deleting a bot that is in the CREATING -// state. Try your request again. +// - ResourceNotFoundException +// You asked to describe a resource that doesn't exist. Check the resource that +// you are requesting and try again. // // - InternalServerException // The service encountered an unexpected condition. Try your request again. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/StartTestExecution -func (c *LexModelsV2) StartTestExecution(input *StartTestExecutionInput) (*StartTestExecutionOutput, error) { - req, out := c.StartTestExecutionRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListTestSetRecords +func (c *LexModelsV2) ListTestSetRecords(input *ListTestSetRecordsInput) (*ListTestSetRecordsOutput, error) { + req, out := c.ListTestSetRecordsRequest(input) return out, req.Send() } -// StartTestExecutionWithContext is the same as StartTestExecution with the addition of +// ListTestSetRecordsWithContext is the same as ListTestSetRecords with the addition of // the ability to pass a context and additional request options. // -// See StartTestExecution for details on how to use this API operation. +// See ListTestSetRecords for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LexModelsV2) StartTestExecutionWithContext(ctx aws.Context, input *StartTestExecutionInput, opts ...request.Option) (*StartTestExecutionOutput, error) { - req, out := c.StartTestExecutionRequest(input) +func (c *LexModelsV2) ListTestSetRecordsWithContext(ctx aws.Context, input *ListTestSetRecordsInput, opts ...request.Option) (*ListTestSetRecordsOutput, error) { + req, out := c.ListTestSetRecordsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opStartTestSetGeneration = "StartTestSetGeneration" - -// StartTestSetGenerationRequest generates a "aws/request.Request" representing the -// client's request for the StartTestSetGeneration operation. The "output" return -// value will be populated with the request's response once the request completes -// successfully. -// -// Use "Send" method on the returned Request to send the API call to the service. -// the "output" return value is not valid until after Send returns without error. -// -// See StartTestSetGeneration for more information on using the StartTestSetGeneration -// API call, and error handling. -// -// This method is useful when you want to inject custom logic or configuration -// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// ListTestSetRecordsPages iterates over the pages of a ListTestSetRecords operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. // -// // Example sending a request using the StartTestSetGenerationRequest method. -// req, resp := client.StartTestSetGenerationRequest(params) +// See ListTestSetRecords method for more information on how to use this operation. // -// err := req.Send() -// if err == nil { // resp is now filled -// fmt.Println(resp) -// } +// Note: This operation can generate multiple requests to a service. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/StartTestSetGeneration -func (c *LexModelsV2) StartTestSetGenerationRequest(input *StartTestSetGenerationInput) (req *request.Request, output *StartTestSetGenerationOutput) { - op := &request.Operation{ - Name: opStartTestSetGeneration, - HTTPMethod: "PUT", - HTTPPath: "/testsetgenerations", - } +// // Example iterating over at most 3 pages of a ListTestSetRecords operation. +// pageNum := 0 +// err := client.ListTestSetRecordsPages(params, +// func(page *lexmodelsv2.ListTestSetRecordsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *LexModelsV2) ListTestSetRecordsPages(input *ListTestSetRecordsInput, fn func(*ListTestSetRecordsOutput, bool) bool) error { + return c.ListTestSetRecordsPagesWithContext(aws.BackgroundContext(), input, fn) +} - if input == nil { - input = &StartTestSetGenerationInput{} - } +// ListTestSetRecordsPagesWithContext same as ListTestSetRecordsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LexModelsV2) ListTestSetRecordsPagesWithContext(ctx aws.Context, input *ListTestSetRecordsInput, fn func(*ListTestSetRecordsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListTestSetRecordsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListTestSetRecordsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } - output = &StartTestSetGenerationOutput{} + for p.Next() { + if !fn(p.Page().(*ListTestSetRecordsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListTestSets = "ListTestSets" + +// ListTestSetsRequest generates a "aws/request.Request" representing the +// client's request for the ListTestSets operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListTestSets for more information on using the ListTestSets +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListTestSetsRequest method. +// req, resp := client.ListTestSetsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListTestSets +func (c *LexModelsV2) ListTestSetsRequest(input *ListTestSetsInput) (req *request.Request, output *ListTestSetsOutput) { + op := &request.Operation{ + Name: opListTestSets, + HTTPMethod: "POST", + HTTPPath: "/testsets", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListTestSetsInput{} + } + + output = &ListTestSetsOutput{} req = c.newRequest(op, input, output) return } -// StartTestSetGeneration API operation for Amazon Lex Model Building V2. +// ListTestSets API operation for Amazon Lex Model Building V2. // -// The action to start the generation of test set. +// # The list of the test sets // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lex Model Building V2's -// API operation StartTestSetGeneration for usage and error information. +// API operation ListTestSets for usage and error information. // // Returned Error Types: // @@ -7951,381 +8197,560 @@ func (c *LexModelsV2) StartTestSetGenerationRequest(input *StartTestSetGeneratio // One of the input parameters in your request isn't valid. Check the parameters // and try your request again. // -// - ConflictException -// The action that you tried to perform couldn't be completed because the resource -// is in a conflicting state. For example, deleting a bot that is in the CREATING -// state. Try your request again. -// -// - ResourceNotFoundException -// You asked to describe a resource that doesn't exist. Check the resource that -// you are requesting and try again. -// // - InternalServerException // The service encountered an unexpected condition. Try your request again. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/StartTestSetGeneration -func (c *LexModelsV2) StartTestSetGeneration(input *StartTestSetGenerationInput) (*StartTestSetGenerationOutput, error) { - req, out := c.StartTestSetGenerationRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListTestSets +func (c *LexModelsV2) ListTestSets(input *ListTestSetsInput) (*ListTestSetsOutput, error) { + req, out := c.ListTestSetsRequest(input) return out, req.Send() } -// StartTestSetGenerationWithContext is the same as StartTestSetGeneration with the addition of +// ListTestSetsWithContext is the same as ListTestSets with the addition of // the ability to pass a context and additional request options. // -// See StartTestSetGeneration for details on how to use this API operation. +// See ListTestSets for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LexModelsV2) StartTestSetGenerationWithContext(ctx aws.Context, input *StartTestSetGenerationInput, opts ...request.Option) (*StartTestSetGenerationOutput, error) { - req, out := c.StartTestSetGenerationRequest(input) +func (c *LexModelsV2) ListTestSetsWithContext(ctx aws.Context, input *ListTestSetsInput, opts ...request.Option) (*ListTestSetsOutput, error) { + req, out := c.ListTestSetsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opStopBotRecommendation = "StopBotRecommendation" +// ListTestSetsPages iterates over the pages of a ListTestSets operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListTestSets method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListTestSets operation. +// pageNum := 0 +// err := client.ListTestSetsPages(params, +// func(page *lexmodelsv2.ListTestSetsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *LexModelsV2) ListTestSetsPages(input *ListTestSetsInput, fn func(*ListTestSetsOutput, bool) bool) error { + return c.ListTestSetsPagesWithContext(aws.BackgroundContext(), input, fn) +} -// StopBotRecommendationRequest generates a "aws/request.Request" representing the -// client's request for the StopBotRecommendation operation. The "output" return +// ListTestSetsPagesWithContext same as ListTestSetsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LexModelsV2) ListTestSetsPagesWithContext(ctx aws.Context, input *ListTestSetsInput, fn func(*ListTestSetsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListTestSetsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListTestSetsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListTestSetsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListUtteranceAnalyticsData = "ListUtteranceAnalyticsData" + +// ListUtteranceAnalyticsDataRequest generates a "aws/request.Request" representing the +// client's request for the ListUtteranceAnalyticsData operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See StopBotRecommendation for more information on using the StopBotRecommendation +// See ListUtteranceAnalyticsData for more information on using the ListUtteranceAnalyticsData // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the StopBotRecommendationRequest method. -// req, resp := client.StopBotRecommendationRequest(params) +// // Example sending a request using the ListUtteranceAnalyticsDataRequest method. +// req, resp := client.ListUtteranceAnalyticsDataRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/StopBotRecommendation -func (c *LexModelsV2) StopBotRecommendationRequest(input *StopBotRecommendationInput) (req *request.Request, output *StopBotRecommendationOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListUtteranceAnalyticsData +func (c *LexModelsV2) ListUtteranceAnalyticsDataRequest(input *ListUtteranceAnalyticsDataInput) (req *request.Request, output *ListUtteranceAnalyticsDataOutput) { op := &request.Operation{ - Name: opStopBotRecommendation, - HTTPMethod: "PUT", - HTTPPath: "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/botrecommendations/{botRecommendationId}/stopbotrecommendation", + Name: opListUtteranceAnalyticsData, + HTTPMethod: "POST", + HTTPPath: "/bots/{botId}/analytics/utterances", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, } if input == nil { - input = &StopBotRecommendationInput{} + input = &ListUtteranceAnalyticsDataInput{} } - output = &StopBotRecommendationOutput{} + output = &ListUtteranceAnalyticsDataOutput{} req = c.newRequest(op, input, output) return } -// StopBotRecommendation API operation for Amazon Lex Model Building V2. +// ListUtteranceAnalyticsData API operation for Amazon Lex Model Building V2. // -// Stop an already running Bot Recommendation request. +// Retrieves a list of metadata for individual user utterances to your bot. +// The startDateTime and endDateTime fields are required. These fields 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 and the sortBy field to +// specify the values by which to sort the results. +// +// - Use the maxResults field to limit the number of results to return in +// a single response and the nextToken field to return the next batch of +// results if the response does not return the full set of results. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lex Model Building V2's -// API operation StopBotRecommendation for usage and error information. +// API operation ListUtteranceAnalyticsData for usage and error information. // // Returned Error Types: // // - ThrottlingException // Your request rate is too high. Reduce the frequency of requests. // -// - ServiceQuotaExceededException -// You have reached a quota for your bot. -// // - ValidationException // One of the input parameters in your request isn't valid. Check the parameters // and try your request again. // -// - ResourceNotFoundException -// You asked to describe a resource that doesn't exist. Check the resource that -// you are requesting and try again. -// -// - ConflictException -// The action that you tried to perform couldn't be completed because the resource -// is in a conflicting state. For example, deleting a bot that is in the CREATING -// state. Try your request again. -// // - PreconditionFailedException // Your request couldn't be completed because one or more request fields aren't // valid. Check the fields in your request and try again. // -// - ConflictException -// The action that you tried to perform couldn't be completed because the resource -// is in a conflicting state. For example, deleting a bot that is in the CREATING -// state. Try your request again. +// - ServiceQuotaExceededException +// You have reached a quota for your bot. // // - InternalServerException // The service encountered an unexpected condition. Try your request again. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/StopBotRecommendation -func (c *LexModelsV2) StopBotRecommendation(input *StopBotRecommendationInput) (*StopBotRecommendationOutput, error) { - req, out := c.StopBotRecommendationRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListUtteranceAnalyticsData +func (c *LexModelsV2) ListUtteranceAnalyticsData(input *ListUtteranceAnalyticsDataInput) (*ListUtteranceAnalyticsDataOutput, error) { + req, out := c.ListUtteranceAnalyticsDataRequest(input) return out, req.Send() } -// StopBotRecommendationWithContext is the same as StopBotRecommendation with the addition of +// ListUtteranceAnalyticsDataWithContext is the same as ListUtteranceAnalyticsData with the addition of // the ability to pass a context and additional request options. // -// See StopBotRecommendation for details on how to use this API operation. +// See ListUtteranceAnalyticsData for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LexModelsV2) StopBotRecommendationWithContext(ctx aws.Context, input *StopBotRecommendationInput, opts ...request.Option) (*StopBotRecommendationOutput, error) { - req, out := c.StopBotRecommendationRequest(input) +func (c *LexModelsV2) ListUtteranceAnalyticsDataWithContext(ctx aws.Context, input *ListUtteranceAnalyticsDataInput, opts ...request.Option) (*ListUtteranceAnalyticsDataOutput, error) { + req, out := c.ListUtteranceAnalyticsDataRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opTagResource = "TagResource" +// ListUtteranceAnalyticsDataPages iterates over the pages of a ListUtteranceAnalyticsData operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListUtteranceAnalyticsData method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListUtteranceAnalyticsData operation. +// pageNum := 0 +// err := client.ListUtteranceAnalyticsDataPages(params, +// func(page *lexmodelsv2.ListUtteranceAnalyticsDataOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *LexModelsV2) ListUtteranceAnalyticsDataPages(input *ListUtteranceAnalyticsDataInput, fn func(*ListUtteranceAnalyticsDataOutput, bool) bool) error { + return c.ListUtteranceAnalyticsDataPagesWithContext(aws.BackgroundContext(), input, fn) +} -// TagResourceRequest generates a "aws/request.Request" representing the -// client's request for the TagResource operation. The "output" return +// ListUtteranceAnalyticsDataPagesWithContext same as ListUtteranceAnalyticsDataPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LexModelsV2) ListUtteranceAnalyticsDataPagesWithContext(ctx aws.Context, input *ListUtteranceAnalyticsDataInput, fn func(*ListUtteranceAnalyticsDataOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListUtteranceAnalyticsDataInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListUtteranceAnalyticsDataRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListUtteranceAnalyticsDataOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListUtteranceMetrics = "ListUtteranceMetrics" + +// ListUtteranceMetricsRequest generates a "aws/request.Request" representing the +// client's request for the ListUtteranceMetrics operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See TagResource for more information on using the TagResource +// See ListUtteranceMetrics for more information on using the ListUtteranceMetrics // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the TagResourceRequest method. -// req, resp := client.TagResourceRequest(params) +// // Example sending a request using the ListUtteranceMetricsRequest method. +// req, resp := client.ListUtteranceMetricsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/TagResource -func (c *LexModelsV2) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListUtteranceMetrics +func (c *LexModelsV2) ListUtteranceMetricsRequest(input *ListUtteranceMetricsInput) (req *request.Request, output *ListUtteranceMetricsOutput) { op := &request.Operation{ - Name: opTagResource, + Name: opListUtteranceMetrics, HTTPMethod: "POST", - HTTPPath: "/tags/{resourceARN}", + HTTPPath: "/bots/{botId}/analytics/utterancemetrics", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, } if input == nil { - input = &TagResourceInput{} + input = &ListUtteranceMetricsInput{} } - output = &TagResourceOutput{} + output = &ListUtteranceMetricsOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// TagResource API operation for Amazon Lex Model Building V2. +// ListUtteranceMetrics API operation for Amazon Lex Model Building V2. // -// Adds the specified tags to the specified resource. If a tag key already exists, -// the existing value is replaced with the new value. +// Retrieves summary metrics for the utterances in your bot. The following fields +// are required: +// +// - metrics – A list of AnalyticsUtteranceMetric (https://docs.aws.amazon.com/lexv2/latest/APIReference/API_AnalyticsUtteranceMetric.html) +// objects. In each object, use the name field to specify the metric to calculate, +// the statistic field to specify whether to calculate the Sum, Average, +// or Max number, and the order field to specify whether to sort the results +// in Ascending or Descending order. +// +// - startDateTime and endDateTime – 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, the groupBy field to specify +// categories by which to group the results, and the binBy 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 the nextToken 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 both binBy and metrics. Currently, you +// can specify it in either field, but not in both. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lex Model Building V2's -// API operation TagResource for usage and error information. +// API operation ListUtteranceMetrics for usage and error information. // // Returned Error Types: // -// - InternalServerException -// The service encountered an unexpected condition. Try your request again. -// // - ThrottlingException // Your request rate is too high. Reduce the frequency of requests. // -// - ResourceNotFoundException -// You asked to describe a resource that doesn't exist. Check the resource that -// you are requesting and try again. -// // - ValidationException // One of the input parameters in your request isn't valid. Check the parameters // and try your request again. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/TagResource -func (c *LexModelsV2) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { - req, out := c.TagResourceRequest(input) +// - PreconditionFailedException +// Your request couldn't be completed because one or more request fields aren't +// valid. Check the fields in your request and try again. +// +// - ServiceQuotaExceededException +// You have reached a quota for your bot. +// +// - InternalServerException +// The service encountered an unexpected condition. Try your request again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/ListUtteranceMetrics +func (c *LexModelsV2) ListUtteranceMetrics(input *ListUtteranceMetricsInput) (*ListUtteranceMetricsOutput, error) { + req, out := c.ListUtteranceMetricsRequest(input) return out, req.Send() } -// TagResourceWithContext is the same as TagResource with the addition of +// ListUtteranceMetricsWithContext is the same as ListUtteranceMetrics with the addition of // the ability to pass a context and additional request options. // -// See TagResource for details on how to use this API operation. +// See ListUtteranceMetrics for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LexModelsV2) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { - req, out := c.TagResourceRequest(input) +func (c *LexModelsV2) ListUtteranceMetricsWithContext(ctx aws.Context, input *ListUtteranceMetricsInput, opts ...request.Option) (*ListUtteranceMetricsOutput, error) { + req, out := c.ListUtteranceMetricsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUntagResource = "UntagResource" +// ListUtteranceMetricsPages iterates over the pages of a ListUtteranceMetrics operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListUtteranceMetrics method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListUtteranceMetrics operation. +// pageNum := 0 +// err := client.ListUtteranceMetricsPages(params, +// func(page *lexmodelsv2.ListUtteranceMetricsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *LexModelsV2) ListUtteranceMetricsPages(input *ListUtteranceMetricsInput, fn func(*ListUtteranceMetricsOutput, bool) bool) error { + return c.ListUtteranceMetricsPagesWithContext(aws.BackgroundContext(), input, fn) +} -// UntagResourceRequest generates a "aws/request.Request" representing the -// client's request for the UntagResource operation. The "output" return +// ListUtteranceMetricsPagesWithContext same as ListUtteranceMetricsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LexModelsV2) ListUtteranceMetricsPagesWithContext(ctx aws.Context, input *ListUtteranceMetricsInput, fn func(*ListUtteranceMetricsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListUtteranceMetricsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListUtteranceMetricsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListUtteranceMetricsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opSearchAssociatedTranscripts = "SearchAssociatedTranscripts" + +// SearchAssociatedTranscriptsRequest generates a "aws/request.Request" representing the +// client's request for the SearchAssociatedTranscripts operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See UntagResource for more information on using the UntagResource +// See SearchAssociatedTranscripts for more information on using the SearchAssociatedTranscripts // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the UntagResourceRequest method. -// req, resp := client.UntagResourceRequest(params) +// // Example sending a request using the SearchAssociatedTranscriptsRequest method. +// req, resp := client.SearchAssociatedTranscriptsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UntagResource -func (c *LexModelsV2) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/SearchAssociatedTranscripts +func (c *LexModelsV2) SearchAssociatedTranscriptsRequest(input *SearchAssociatedTranscriptsInput) (req *request.Request, output *SearchAssociatedTranscriptsOutput) { op := &request.Operation{ - Name: opUntagResource, - HTTPMethod: "DELETE", - HTTPPath: "/tags/{resourceARN}", + Name: opSearchAssociatedTranscripts, + HTTPMethod: "POST", + HTTPPath: "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/botrecommendations/{botRecommendationId}/associatedtranscripts", } if input == nil { - input = &UntagResourceInput{} + input = &SearchAssociatedTranscriptsInput{} } - output = &UntagResourceOutput{} + output = &SearchAssociatedTranscriptsOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// UntagResource API operation for Amazon Lex Model Building V2. +// SearchAssociatedTranscripts API operation for Amazon Lex Model Building V2. // -// Removes tags from a bot, bot alias, or bot channel. +// Search for associated transcripts that meet the specified criteria. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lex Model Building V2's -// API operation UntagResource for usage and error information. +// API operation SearchAssociatedTranscripts for usage and error information. // // Returned Error Types: // -// - InternalServerException -// The service encountered an unexpected condition. Try your request again. -// // - ThrottlingException // Your request rate is too high. Reduce the frequency of requests. // -// - ResourceNotFoundException -// You asked to describe a resource that doesn't exist. Check the resource that -// you are requesting and try again. +// - ServiceQuotaExceededException +// You have reached a quota for your bot. // // - ValidationException // One of the input parameters in your request isn't valid. Check the parameters // and try your request again. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UntagResource -func (c *LexModelsV2) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { - req, out := c.UntagResourceRequest(input) +// - InternalServerException +// The service encountered an unexpected condition. Try your request again. +// +// - ResourceNotFoundException +// You asked to describe a resource that doesn't exist. Check the resource that +// you are requesting and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/SearchAssociatedTranscripts +func (c *LexModelsV2) SearchAssociatedTranscripts(input *SearchAssociatedTranscriptsInput) (*SearchAssociatedTranscriptsOutput, error) { + req, out := c.SearchAssociatedTranscriptsRequest(input) return out, req.Send() } -// UntagResourceWithContext is the same as UntagResource with the addition of +// SearchAssociatedTranscriptsWithContext is the same as SearchAssociatedTranscripts with the addition of // the ability to pass a context and additional request options. // -// See UntagResource for details on how to use this API operation. +// See SearchAssociatedTranscripts for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LexModelsV2) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { - req, out := c.UntagResourceRequest(input) +func (c *LexModelsV2) SearchAssociatedTranscriptsWithContext(ctx aws.Context, input *SearchAssociatedTranscriptsInput, opts ...request.Option) (*SearchAssociatedTranscriptsOutput, error) { + req, out := c.SearchAssociatedTranscriptsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateBot = "UpdateBot" +const opStartBotRecommendation = "StartBotRecommendation" -// UpdateBotRequest generates a "aws/request.Request" representing the -// client's request for the UpdateBot operation. The "output" return +// StartBotRecommendationRequest generates a "aws/request.Request" representing the +// client's request for the StartBotRecommendation operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See UpdateBot for more information on using the UpdateBot +// See StartBotRecommendation for more information on using the StartBotRecommendation // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the UpdateBotRequest method. -// req, resp := client.UpdateBotRequest(params) +// // Example sending a request using the StartBotRecommendationRequest method. +// req, resp := client.StartBotRecommendationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateBot -func (c *LexModelsV2) UpdateBotRequest(input *UpdateBotInput) (req *request.Request, output *UpdateBotOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/StartBotRecommendation +func (c *LexModelsV2) StartBotRecommendationRequest(input *StartBotRecommendationInput) (req *request.Request, output *StartBotRecommendationOutput) { op := &request.Operation{ - Name: opUpdateBot, + Name: opStartBotRecommendation, HTTPMethod: "PUT", - HTTPPath: "/bots/{botId}/", + HTTPPath: "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/botrecommendations/", } if input == nil { - input = &UpdateBotInput{} + input = &StartBotRecommendationInput{} } - output = &UpdateBotOutput{} + output = &StartBotRecommendationOutput{} req = c.newRequest(op, input, output) return } -// UpdateBot API operation for Amazon Lex Model Building V2. +// StartBotRecommendation API operation for Amazon Lex Model Building V2. // -// Updates the configuration of an existing bot. +// Use this to provide your transcript data, and to start the bot recommendation +// process. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lex Model Building V2's -// API operation UpdateBot for usage and error information. +// API operation StartBotRecommendation for usage and error information. // // Returned Error Types: // @@ -8339,6 +8764,15 @@ func (c *LexModelsV2) UpdateBotRequest(input *UpdateBotInput) (req *request.Requ // One of the input parameters in your request isn't valid. Check the parameters // and try your request again. // +// - ResourceNotFoundException +// You asked to describe a resource that doesn't exist. Check the resource that +// you are requesting and try again. +// +// - ConflictException +// The action that you tried to perform couldn't be completed because the resource +// is in a conflicting state. For example, deleting a bot that is in the CREATING +// state. Try your request again. +// // - PreconditionFailedException // Your request couldn't be completed because one or more request fields aren't // valid. Check the fields in your request and try again. @@ -8351,79 +8785,80 @@ func (c *LexModelsV2) UpdateBotRequest(input *UpdateBotInput) (req *request.Requ // - InternalServerException // The service encountered an unexpected condition. Try your request again. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateBot -func (c *LexModelsV2) UpdateBot(input *UpdateBotInput) (*UpdateBotOutput, error) { - req, out := c.UpdateBotRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/StartBotRecommendation +func (c *LexModelsV2) StartBotRecommendation(input *StartBotRecommendationInput) (*StartBotRecommendationOutput, error) { + req, out := c.StartBotRecommendationRequest(input) return out, req.Send() } -// UpdateBotWithContext is the same as UpdateBot with the addition of +// StartBotRecommendationWithContext is the same as StartBotRecommendation with the addition of // the ability to pass a context and additional request options. // -// See UpdateBot for details on how to use this API operation. +// See StartBotRecommendation for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LexModelsV2) UpdateBotWithContext(ctx aws.Context, input *UpdateBotInput, opts ...request.Option) (*UpdateBotOutput, error) { - req, out := c.UpdateBotRequest(input) +func (c *LexModelsV2) StartBotRecommendationWithContext(ctx aws.Context, input *StartBotRecommendationInput, opts ...request.Option) (*StartBotRecommendationOutput, error) { + req, out := c.StartBotRecommendationRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateBotAlias = "UpdateBotAlias" +const opStartImport = "StartImport" -// UpdateBotAliasRequest generates a "aws/request.Request" representing the -// client's request for the UpdateBotAlias operation. The "output" return +// StartImportRequest generates a "aws/request.Request" representing the +// client's request for the StartImport operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See UpdateBotAlias for more information on using the UpdateBotAlias +// See StartImport for more information on using the StartImport // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the UpdateBotAliasRequest method. -// req, resp := client.UpdateBotAliasRequest(params) +// // Example sending a request using the StartImportRequest method. +// req, resp := client.StartImportRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateBotAlias -func (c *LexModelsV2) UpdateBotAliasRequest(input *UpdateBotAliasInput) (req *request.Request, output *UpdateBotAliasOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/StartImport +func (c *LexModelsV2) StartImportRequest(input *StartImportInput) (req *request.Request, output *StartImportOutput) { op := &request.Operation{ - Name: opUpdateBotAlias, + Name: opStartImport, HTTPMethod: "PUT", - HTTPPath: "/bots/{botId}/botaliases/{botAliasId}/", + HTTPPath: "/imports/", } if input == nil { - input = &UpdateBotAliasInput{} + input = &StartImportInput{} } - output = &UpdateBotAliasOutput{} + output = &StartImportOutput{} req = c.newRequest(op, input, output) return } -// UpdateBotAlias API operation for Amazon Lex Model Building V2. +// StartImport API operation for Amazon Lex Model Building V2. // -// Updates the configuration of an existing bot alias. +// Starts importing a bot, bot locale, or custom vocabulary from a zip archive +// that you uploaded to an S3 bucket. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lex Model Building V2's -// API operation UpdateBotAlias for usage and error information. +// API operation StartImport for usage and error information. // // Returned Error Types: // @@ -8437,9 +8872,9 @@ func (c *LexModelsV2) UpdateBotAliasRequest(input *UpdateBotAliasInput) (req *re // One of the input parameters in your request isn't valid. Check the parameters // and try your request again. // -// - PreconditionFailedException -// Your request couldn't be completed because one or more request fields aren't -// valid. Check the fields in your request and try again. +// - ResourceNotFoundException +// You asked to describe a resource that doesn't exist. Check the resource that +// you are requesting and try again. // // - ConflictException // The action that you tried to perform couldn't be completed because the resource @@ -8449,79 +8884,79 @@ func (c *LexModelsV2) UpdateBotAliasRequest(input *UpdateBotAliasInput) (req *re // - InternalServerException // The service encountered an unexpected condition. Try your request again. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateBotAlias -func (c *LexModelsV2) UpdateBotAlias(input *UpdateBotAliasInput) (*UpdateBotAliasOutput, error) { - req, out := c.UpdateBotAliasRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/StartImport +func (c *LexModelsV2) StartImport(input *StartImportInput) (*StartImportOutput, error) { + req, out := c.StartImportRequest(input) return out, req.Send() } -// UpdateBotAliasWithContext is the same as UpdateBotAlias with the addition of +// StartImportWithContext is the same as StartImport with the addition of // the ability to pass a context and additional request options. // -// See UpdateBotAlias for details on how to use this API operation. +// See StartImport for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LexModelsV2) UpdateBotAliasWithContext(ctx aws.Context, input *UpdateBotAliasInput, opts ...request.Option) (*UpdateBotAliasOutput, error) { - req, out := c.UpdateBotAliasRequest(input) +func (c *LexModelsV2) StartImportWithContext(ctx aws.Context, input *StartImportInput, opts ...request.Option) (*StartImportOutput, error) { + req, out := c.StartImportRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateBotLocale = "UpdateBotLocale" +const opStartTestExecution = "StartTestExecution" -// UpdateBotLocaleRequest generates a "aws/request.Request" representing the -// client's request for the UpdateBotLocale operation. The "output" return +// StartTestExecutionRequest generates a "aws/request.Request" representing the +// client's request for the StartTestExecution operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See UpdateBotLocale for more information on using the UpdateBotLocale +// See StartTestExecution for more information on using the StartTestExecution // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the UpdateBotLocaleRequest method. -// req, resp := client.UpdateBotLocaleRequest(params) +// // Example sending a request using the StartTestExecutionRequest method. +// req, resp := client.StartTestExecutionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateBotLocale -func (c *LexModelsV2) UpdateBotLocaleRequest(input *UpdateBotLocaleInput) (req *request.Request, output *UpdateBotLocaleOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/StartTestExecution +func (c *LexModelsV2) StartTestExecutionRequest(input *StartTestExecutionInput) (req *request.Request, output *StartTestExecutionOutput) { op := &request.Operation{ - Name: opUpdateBotLocale, - HTTPMethod: "PUT", - HTTPPath: "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/", + Name: opStartTestExecution, + HTTPMethod: "POST", + HTTPPath: "/testsets/{testSetId}/testexecutions", } if input == nil { - input = &UpdateBotLocaleInput{} + input = &StartTestExecutionInput{} } - output = &UpdateBotLocaleOutput{} + output = &StartTestExecutionOutput{} req = c.newRequest(op, input, output) return } -// UpdateBotLocale API operation for Amazon Lex Model Building V2. +// StartTestExecution API operation for Amazon Lex Model Building V2. // -// Updates the settings that a bot has for a specific locale. +// The action to start test set execution. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lex Model Building V2's -// API operation UpdateBotLocale for usage and error information. +// API operation StartTestExecution for usage and error information. // // Returned Error Types: // @@ -8531,14 +8966,14 @@ func (c *LexModelsV2) UpdateBotLocaleRequest(input *UpdateBotLocaleInput) (req * // - ServiceQuotaExceededException // You have reached a quota for your bot. // +// - ResourceNotFoundException +// You asked to describe a resource that doesn't exist. Check the resource that +// you are requesting and try again. +// // - ValidationException // One of the input parameters in your request isn't valid. Check the parameters // and try your request again. // -// - PreconditionFailedException -// Your request couldn't be completed because one or more request fields aren't -// valid. Check the fields in your request and try again. -// // - ConflictException // The action that you tried to perform couldn't be completed because the resource // is in a conflicting state. For example, deleting a bot that is in the CREATING @@ -8547,79 +8982,79 @@ func (c *LexModelsV2) UpdateBotLocaleRequest(input *UpdateBotLocaleInput) (req * // - InternalServerException // The service encountered an unexpected condition. Try your request again. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateBotLocale -func (c *LexModelsV2) UpdateBotLocale(input *UpdateBotLocaleInput) (*UpdateBotLocaleOutput, error) { - req, out := c.UpdateBotLocaleRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/StartTestExecution +func (c *LexModelsV2) StartTestExecution(input *StartTestExecutionInput) (*StartTestExecutionOutput, error) { + req, out := c.StartTestExecutionRequest(input) return out, req.Send() } -// UpdateBotLocaleWithContext is the same as UpdateBotLocale with the addition of +// StartTestExecutionWithContext is the same as StartTestExecution with the addition of // the ability to pass a context and additional request options. // -// See UpdateBotLocale for details on how to use this API operation. +// See StartTestExecution for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LexModelsV2) UpdateBotLocaleWithContext(ctx aws.Context, input *UpdateBotLocaleInput, opts ...request.Option) (*UpdateBotLocaleOutput, error) { - req, out := c.UpdateBotLocaleRequest(input) +func (c *LexModelsV2) StartTestExecutionWithContext(ctx aws.Context, input *StartTestExecutionInput, opts ...request.Option) (*StartTestExecutionOutput, error) { + req, out := c.StartTestExecutionRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateBotRecommendation = "UpdateBotRecommendation" +const opStartTestSetGeneration = "StartTestSetGeneration" -// UpdateBotRecommendationRequest generates a "aws/request.Request" representing the -// client's request for the UpdateBotRecommendation operation. The "output" return +// StartTestSetGenerationRequest generates a "aws/request.Request" representing the +// client's request for the StartTestSetGeneration operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See UpdateBotRecommendation for more information on using the UpdateBotRecommendation +// See StartTestSetGeneration for more information on using the StartTestSetGeneration // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the UpdateBotRecommendationRequest method. -// req, resp := client.UpdateBotRecommendationRequest(params) +// // Example sending a request using the StartTestSetGenerationRequest method. +// req, resp := client.StartTestSetGenerationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateBotRecommendation -func (c *LexModelsV2) UpdateBotRecommendationRequest(input *UpdateBotRecommendationInput) (req *request.Request, output *UpdateBotRecommendationOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/StartTestSetGeneration +func (c *LexModelsV2) StartTestSetGenerationRequest(input *StartTestSetGenerationInput) (req *request.Request, output *StartTestSetGenerationOutput) { op := &request.Operation{ - Name: opUpdateBotRecommendation, + Name: opStartTestSetGeneration, HTTPMethod: "PUT", - HTTPPath: "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/botrecommendations/{botRecommendationId}/", + HTTPPath: "/testsetgenerations", } if input == nil { - input = &UpdateBotRecommendationInput{} + input = &StartTestSetGenerationInput{} } - output = &UpdateBotRecommendationOutput{} + output = &StartTestSetGenerationOutput{} req = c.newRequest(op, input, output) return } -// UpdateBotRecommendation API operation for Amazon Lex Model Building V2. +// StartTestSetGeneration API operation for Amazon Lex Model Building V2. // -// Updates an existing bot recommendation request. +// The action to start the generation of test set. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lex Model Building V2's -// API operation UpdateBotRecommendation for usage and error information. +// API operation StartTestSetGeneration for usage and error information. // // Returned Error Types: // @@ -8633,106 +9068,91 @@ func (c *LexModelsV2) UpdateBotRecommendationRequest(input *UpdateBotRecommendat // One of the input parameters in your request isn't valid. Check the parameters // and try your request again. // -// - ResourceNotFoundException -// You asked to describe a resource that doesn't exist. Check the resource that -// you are requesting and try again. -// // - ConflictException // The action that you tried to perform couldn't be completed because the resource // is in a conflicting state. For example, deleting a bot that is in the CREATING // state. Try your request again. // -// - PreconditionFailedException -// Your request couldn't be completed because one or more request fields aren't -// valid. Check the fields in your request and try again. -// -// - ConflictException -// The action that you tried to perform couldn't be completed because the resource -// is in a conflicting state. For example, deleting a bot that is in the CREATING -// state. Try your request again. +// - ResourceNotFoundException +// You asked to describe a resource that doesn't exist. Check the resource that +// you are requesting and try again. // // - InternalServerException // The service encountered an unexpected condition. Try your request again. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateBotRecommendation -func (c *LexModelsV2) UpdateBotRecommendation(input *UpdateBotRecommendationInput) (*UpdateBotRecommendationOutput, error) { - req, out := c.UpdateBotRecommendationRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/StartTestSetGeneration +func (c *LexModelsV2) StartTestSetGeneration(input *StartTestSetGenerationInput) (*StartTestSetGenerationOutput, error) { + req, out := c.StartTestSetGenerationRequest(input) return out, req.Send() } -// UpdateBotRecommendationWithContext is the same as UpdateBotRecommendation with the addition of +// StartTestSetGenerationWithContext is the same as StartTestSetGeneration with the addition of // the ability to pass a context and additional request options. // -// See UpdateBotRecommendation for details on how to use this API operation. +// See StartTestSetGeneration for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LexModelsV2) UpdateBotRecommendationWithContext(ctx aws.Context, input *UpdateBotRecommendationInput, opts ...request.Option) (*UpdateBotRecommendationOutput, error) { - req, out := c.UpdateBotRecommendationRequest(input) +func (c *LexModelsV2) StartTestSetGenerationWithContext(ctx aws.Context, input *StartTestSetGenerationInput, opts ...request.Option) (*StartTestSetGenerationOutput, error) { + req, out := c.StartTestSetGenerationRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateExport = "UpdateExport" +const opStopBotRecommendation = "StopBotRecommendation" -// UpdateExportRequest generates a "aws/request.Request" representing the -// client's request for the UpdateExport operation. The "output" return +// StopBotRecommendationRequest generates a "aws/request.Request" representing the +// client's request for the StopBotRecommendation operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See UpdateExport for more information on using the UpdateExport +// See StopBotRecommendation for more information on using the StopBotRecommendation // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the UpdateExportRequest method. -// req, resp := client.UpdateExportRequest(params) +// // Example sending a request using the StopBotRecommendationRequest method. +// req, resp := client.StopBotRecommendationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateExport -func (c *LexModelsV2) UpdateExportRequest(input *UpdateExportInput) (req *request.Request, output *UpdateExportOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/StopBotRecommendation +func (c *LexModelsV2) StopBotRecommendationRequest(input *StopBotRecommendationInput) (req *request.Request, output *StopBotRecommendationOutput) { op := &request.Operation{ - Name: opUpdateExport, + Name: opStopBotRecommendation, HTTPMethod: "PUT", - HTTPPath: "/exports/{exportId}/", + HTTPPath: "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/botrecommendations/{botRecommendationId}/stopbotrecommendation", } if input == nil { - input = &UpdateExportInput{} + input = &StopBotRecommendationInput{} } - output = &UpdateExportOutput{} + output = &StopBotRecommendationOutput{} req = c.newRequest(op, input, output) return } -// UpdateExport API operation for Amazon Lex Model Building V2. -// -// Updates the password used to protect an export zip archive. +// StopBotRecommendation API operation for Amazon Lex Model Building V2. // -// The password is not required. If you don't supply a password, Amazon Lex -// generates a zip file that is not protected by a password. This is the archive -// that is available at the pre-signed S3 URL provided by the DescribeExport -// (https://docs.aws.amazon.com/lexv2/latest/APIReference/API_DescribeExport.html) -// operation. +// Stop an already running Bot Recommendation request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lex Model Building V2's -// API operation UpdateExport for usage and error information. +// API operation StopBotRecommendation for usage and error information. // // Returned Error Types: // @@ -8755,278 +9175,372 @@ func (c *LexModelsV2) UpdateExportRequest(input *UpdateExportInput) (req *reques // is in a conflicting state. For example, deleting a bot that is in the CREATING // state. Try your request again. // +// - PreconditionFailedException +// Your request couldn't be completed because one or more request fields aren't +// valid. Check the fields in your request and try again. +// +// - ConflictException +// The action that you tried to perform couldn't be completed because the resource +// is in a conflicting state. For example, deleting a bot that is in the CREATING +// state. Try your request again. +// // - InternalServerException // The service encountered an unexpected condition. Try your request again. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateExport -func (c *LexModelsV2) UpdateExport(input *UpdateExportInput) (*UpdateExportOutput, error) { - req, out := c.UpdateExportRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/StopBotRecommendation +func (c *LexModelsV2) StopBotRecommendation(input *StopBotRecommendationInput) (*StopBotRecommendationOutput, error) { + req, out := c.StopBotRecommendationRequest(input) return out, req.Send() } -// UpdateExportWithContext is the same as UpdateExport with the addition of +// StopBotRecommendationWithContext is the same as StopBotRecommendation with the addition of // the ability to pass a context and additional request options. // -// See UpdateExport for details on how to use this API operation. +// See StopBotRecommendation for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LexModelsV2) UpdateExportWithContext(ctx aws.Context, input *UpdateExportInput, opts ...request.Option) (*UpdateExportOutput, error) { - req, out := c.UpdateExportRequest(input) +func (c *LexModelsV2) StopBotRecommendationWithContext(ctx aws.Context, input *StopBotRecommendationInput, opts ...request.Option) (*StopBotRecommendationOutput, error) { + req, out := c.StopBotRecommendationRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateIntent = "UpdateIntent" +const opTagResource = "TagResource" -// UpdateIntentRequest generates a "aws/request.Request" representing the -// client's request for the UpdateIntent operation. The "output" return +// TagResourceRequest generates a "aws/request.Request" representing the +// client's request for the TagResource operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See UpdateIntent for more information on using the UpdateIntent +// See TagResource for more information on using the TagResource // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the UpdateIntentRequest method. -// req, resp := client.UpdateIntentRequest(params) +// // Example sending a request using the TagResourceRequest method. +// req, resp := client.TagResourceRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateIntent -func (c *LexModelsV2) UpdateIntentRequest(input *UpdateIntentInput) (req *request.Request, output *UpdateIntentOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/TagResource +func (c *LexModelsV2) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { op := &request.Operation{ - Name: opUpdateIntent, - HTTPMethod: "PUT", - HTTPPath: "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/intents/{intentId}/", + Name: opTagResource, + HTTPMethod: "POST", + HTTPPath: "/tags/{resourceARN}", } if input == nil { - input = &UpdateIntentInput{} + input = &TagResourceInput{} } - output = &UpdateIntentOutput{} + output = &TagResourceOutput{} req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// UpdateIntent API operation for Amazon Lex Model Building V2. +// TagResource API operation for Amazon Lex Model Building V2. // -// Updates the settings for an intent. +// Adds the specified tags to the specified resource. If a tag key already exists, +// the existing value is replaced with the new value. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lex Model Building V2's -// API operation UpdateIntent for usage and error information. +// API operation TagResource for usage and error information. // // Returned Error Types: // +// - InternalServerException +// The service encountered an unexpected condition. Try your request again. +// // - ThrottlingException // Your request rate is too high. Reduce the frequency of requests. // -// - ServiceQuotaExceededException -// You have reached a quota for your bot. +// - ResourceNotFoundException +// You asked to describe a resource that doesn't exist. Check the resource that +// you are requesting and try again. // // - ValidationException // One of the input parameters in your request isn't valid. Check the parameters // and try your request again. // -// - PreconditionFailedException -// Your request couldn't be completed because one or more request fields aren't -// valid. Check the fields in your request and try again. +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/TagResource +func (c *LexModelsV2) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) + return out, req.Send() +} + +// TagResourceWithContext is the same as TagResource with the addition of +// the ability to pass a context and additional request options. // -// - ConflictException -// The action that you tried to perform couldn't be completed because the resource -// is in a conflicting state. For example, deleting a bot that is in the CREATING -// state. Try your request again. +// See TagResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LexModelsV2) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUntagResource = "UntagResource" + +// UntagResourceRequest generates a "aws/request.Request" representing the +// client's request for the UntagResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UntagResource for more information on using the UntagResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UntagResourceRequest method. +// req, resp := client.UntagResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UntagResource +func (c *LexModelsV2) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { + op := &request.Operation{ + Name: opUntagResource, + HTTPMethod: "DELETE", + HTTPPath: "/tags/{resourceARN}", + } + + if input == nil { + input = &UntagResourceInput{} + } + + output = &UntagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UntagResource API operation for Amazon Lex Model Building V2. +// +// Removes tags from a bot, bot alias, or bot channel. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Lex Model Building V2's +// API operation UntagResource for usage and error information. +// +// Returned Error Types: // // - InternalServerException // The service encountered an unexpected condition. Try your request again. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateIntent -func (c *LexModelsV2) UpdateIntent(input *UpdateIntentInput) (*UpdateIntentOutput, error) { - req, out := c.UpdateIntentRequest(input) +// - ThrottlingException +// Your request rate is too high. Reduce the frequency of requests. +// +// - ResourceNotFoundException +// You asked to describe a resource that doesn't exist. Check the resource that +// you are requesting and try again. +// +// - ValidationException +// One of the input parameters in your request isn't valid. Check the parameters +// and try your request again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UntagResource +func (c *LexModelsV2) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) return out, req.Send() } -// UpdateIntentWithContext is the same as UpdateIntent with the addition of +// UntagResourceWithContext is the same as UntagResource with the addition of // the ability to pass a context and additional request options. // -// See UpdateIntent for details on how to use this API operation. +// See UntagResource for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LexModelsV2) UpdateIntentWithContext(ctx aws.Context, input *UpdateIntentInput, opts ...request.Option) (*UpdateIntentOutput, error) { - req, out := c.UpdateIntentRequest(input) +func (c *LexModelsV2) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateResourcePolicy = "UpdateResourcePolicy" +const opUpdateBot = "UpdateBot" -// UpdateResourcePolicyRequest generates a "aws/request.Request" representing the -// client's request for the UpdateResourcePolicy operation. The "output" return +// UpdateBotRequest generates a "aws/request.Request" representing the +// client's request for the UpdateBot operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See UpdateResourcePolicy for more information on using the UpdateResourcePolicy +// See UpdateBot for more information on using the UpdateBot // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the UpdateResourcePolicyRequest method. -// req, resp := client.UpdateResourcePolicyRequest(params) +// // Example sending a request using the UpdateBotRequest method. +// req, resp := client.UpdateBotRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateResourcePolicy -func (c *LexModelsV2) UpdateResourcePolicyRequest(input *UpdateResourcePolicyInput) (req *request.Request, output *UpdateResourcePolicyOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateBot +func (c *LexModelsV2) UpdateBotRequest(input *UpdateBotInput) (req *request.Request, output *UpdateBotOutput) { op := &request.Operation{ - Name: opUpdateResourcePolicy, + Name: opUpdateBot, HTTPMethod: "PUT", - HTTPPath: "/policy/{resourceArn}/", + HTTPPath: "/bots/{botId}/", } if input == nil { - input = &UpdateResourcePolicyInput{} + input = &UpdateBotInput{} } - output = &UpdateResourcePolicyOutput{} + output = &UpdateBotOutput{} req = c.newRequest(op, input, output) return } -// UpdateResourcePolicy API operation for Amazon Lex Model Building V2. +// UpdateBot API operation for Amazon Lex Model Building V2. // -// Replaces the existing resource policy for a bot or bot alias with a new one. -// If the policy doesn't exist, Amazon Lex returns an exception. +// Updates the configuration of an existing bot. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lex Model Building V2's -// API operation UpdateResourcePolicy for usage and error information. +// API operation UpdateBot for usage and error information. // // Returned Error Types: // -// - ResourceNotFoundException -// You asked to describe a resource that doesn't exist. Check the resource that -// you are requesting and try again. +// - ThrottlingException +// Your request rate is too high. Reduce the frequency of requests. // // - ServiceQuotaExceededException // You have reached a quota for your bot. // +// - ValidationException +// One of the input parameters in your request isn't valid. Check the parameters +// and try your request again. +// // - PreconditionFailedException // Your request couldn't be completed because one or more request fields aren't // valid. Check the fields in your request and try again. // -// - ValidationException -// One of the input parameters in your request isn't valid. Check the parameters -// and try your request again. +// - ConflictException +// The action that you tried to perform couldn't be completed because the resource +// is in a conflicting state. For example, deleting a bot that is in the CREATING +// state. Try your request again. // // - InternalServerException // The service encountered an unexpected condition. Try your request again. // -// - ThrottlingException -// Your request rate is too high. Reduce the frequency of requests. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateResourcePolicy -func (c *LexModelsV2) UpdateResourcePolicy(input *UpdateResourcePolicyInput) (*UpdateResourcePolicyOutput, error) { - req, out := c.UpdateResourcePolicyRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateBot +func (c *LexModelsV2) UpdateBot(input *UpdateBotInput) (*UpdateBotOutput, error) { + req, out := c.UpdateBotRequest(input) return out, req.Send() } -// UpdateResourcePolicyWithContext is the same as UpdateResourcePolicy with the addition of +// UpdateBotWithContext is the same as UpdateBot with the addition of // the ability to pass a context and additional request options. // -// See UpdateResourcePolicy for details on how to use this API operation. +// See UpdateBot for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LexModelsV2) UpdateResourcePolicyWithContext(ctx aws.Context, input *UpdateResourcePolicyInput, opts ...request.Option) (*UpdateResourcePolicyOutput, error) { - req, out := c.UpdateResourcePolicyRequest(input) +func (c *LexModelsV2) UpdateBotWithContext(ctx aws.Context, input *UpdateBotInput, opts ...request.Option) (*UpdateBotOutput, error) { + req, out := c.UpdateBotRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateSlot = "UpdateSlot" +const opUpdateBotAlias = "UpdateBotAlias" -// UpdateSlotRequest generates a "aws/request.Request" representing the -// client's request for the UpdateSlot operation. The "output" return +// UpdateBotAliasRequest generates a "aws/request.Request" representing the +// client's request for the UpdateBotAlias operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See UpdateSlot for more information on using the UpdateSlot +// See UpdateBotAlias for more information on using the UpdateBotAlias // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the UpdateSlotRequest method. -// req, resp := client.UpdateSlotRequest(params) +// // Example sending a request using the UpdateBotAliasRequest method. +// req, resp := client.UpdateBotAliasRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateSlot -func (c *LexModelsV2) UpdateSlotRequest(input *UpdateSlotInput) (req *request.Request, output *UpdateSlotOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateBotAlias +func (c *LexModelsV2) UpdateBotAliasRequest(input *UpdateBotAliasInput) (req *request.Request, output *UpdateBotAliasOutput) { op := &request.Operation{ - Name: opUpdateSlot, + Name: opUpdateBotAlias, HTTPMethod: "PUT", - HTTPPath: "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/intents/{intentId}/slots/{slotId}/", + HTTPPath: "/bots/{botId}/botaliases/{botAliasId}/", } if input == nil { - input = &UpdateSlotInput{} + input = &UpdateBotAliasInput{} } - output = &UpdateSlotOutput{} + output = &UpdateBotAliasOutput{} req = c.newRequest(op, input, output) return } -// UpdateSlot API operation for Amazon Lex Model Building V2. +// UpdateBotAlias API operation for Amazon Lex Model Building V2. // -// Updates the settings for a slot. +// Updates the configuration of an existing bot alias. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lex Model Building V2's -// API operation UpdateSlot for usage and error information. +// API operation UpdateBotAlias for usage and error information. // // Returned Error Types: // @@ -9052,79 +9566,79 @@ func (c *LexModelsV2) UpdateSlotRequest(input *UpdateSlotInput) (req *request.Re // - InternalServerException // The service encountered an unexpected condition. Try your request again. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateSlot -func (c *LexModelsV2) UpdateSlot(input *UpdateSlotInput) (*UpdateSlotOutput, error) { - req, out := c.UpdateSlotRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateBotAlias +func (c *LexModelsV2) UpdateBotAlias(input *UpdateBotAliasInput) (*UpdateBotAliasOutput, error) { + req, out := c.UpdateBotAliasRequest(input) return out, req.Send() } -// UpdateSlotWithContext is the same as UpdateSlot with the addition of +// UpdateBotAliasWithContext is the same as UpdateBotAlias with the addition of // the ability to pass a context and additional request options. // -// See UpdateSlot for details on how to use this API operation. +// See UpdateBotAlias for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LexModelsV2) UpdateSlotWithContext(ctx aws.Context, input *UpdateSlotInput, opts ...request.Option) (*UpdateSlotOutput, error) { - req, out := c.UpdateSlotRequest(input) +func (c *LexModelsV2) UpdateBotAliasWithContext(ctx aws.Context, input *UpdateBotAliasInput, opts ...request.Option) (*UpdateBotAliasOutput, error) { + req, out := c.UpdateBotAliasRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateSlotType = "UpdateSlotType" +const opUpdateBotLocale = "UpdateBotLocale" -// UpdateSlotTypeRequest generates a "aws/request.Request" representing the -// client's request for the UpdateSlotType operation. The "output" return +// UpdateBotLocaleRequest generates a "aws/request.Request" representing the +// client's request for the UpdateBotLocale operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See UpdateSlotType for more information on using the UpdateSlotType +// See UpdateBotLocale for more information on using the UpdateBotLocale // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the UpdateSlotTypeRequest method. -// req, resp := client.UpdateSlotTypeRequest(params) +// // Example sending a request using the UpdateBotLocaleRequest method. +// req, resp := client.UpdateBotLocaleRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateSlotType -func (c *LexModelsV2) UpdateSlotTypeRequest(input *UpdateSlotTypeInput) (req *request.Request, output *UpdateSlotTypeOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateBotLocale +func (c *LexModelsV2) UpdateBotLocaleRequest(input *UpdateBotLocaleInput) (req *request.Request, output *UpdateBotLocaleOutput) { op := &request.Operation{ - Name: opUpdateSlotType, + Name: opUpdateBotLocale, HTTPMethod: "PUT", - HTTPPath: "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/slottypes/{slotTypeId}/", + HTTPPath: "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/", } if input == nil { - input = &UpdateSlotTypeInput{} + input = &UpdateBotLocaleInput{} } - output = &UpdateSlotTypeOutput{} + output = &UpdateBotLocaleOutput{} req = c.newRequest(op, input, output) return } -// UpdateSlotType API operation for Amazon Lex Model Building V2. +// UpdateBotLocale API operation for Amazon Lex Model Building V2. // -// Updates the configuration of an existing slot type. +// Updates the settings that a bot has for a specific locale. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lex Model Building V2's -// API operation UpdateSlotType for usage and error information. +// API operation UpdateBotLocale for usage and error information. // // Returned Error Types: // @@ -9150,79 +9664,79 @@ func (c *LexModelsV2) UpdateSlotTypeRequest(input *UpdateSlotTypeInput) (req *re // - InternalServerException // The service encountered an unexpected condition. Try your request again. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateSlotType -func (c *LexModelsV2) UpdateSlotType(input *UpdateSlotTypeInput) (*UpdateSlotTypeOutput, error) { - req, out := c.UpdateSlotTypeRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateBotLocale +func (c *LexModelsV2) UpdateBotLocale(input *UpdateBotLocaleInput) (*UpdateBotLocaleOutput, error) { + req, out := c.UpdateBotLocaleRequest(input) return out, req.Send() } -// UpdateSlotTypeWithContext is the same as UpdateSlotType with the addition of +// UpdateBotLocaleWithContext is the same as UpdateBotLocale with the addition of // the ability to pass a context and additional request options. // -// See UpdateSlotType for details on how to use this API operation. +// See UpdateBotLocale for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LexModelsV2) UpdateSlotTypeWithContext(ctx aws.Context, input *UpdateSlotTypeInput, opts ...request.Option) (*UpdateSlotTypeOutput, error) { - req, out := c.UpdateSlotTypeRequest(input) +func (c *LexModelsV2) UpdateBotLocaleWithContext(ctx aws.Context, input *UpdateBotLocaleInput, opts ...request.Option) (*UpdateBotLocaleOutput, error) { + req, out := c.UpdateBotLocaleRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateTestSet = "UpdateTestSet" +const opUpdateBotRecommendation = "UpdateBotRecommendation" -// UpdateTestSetRequest generates a "aws/request.Request" representing the -// client's request for the UpdateTestSet operation. The "output" return +// UpdateBotRecommendationRequest generates a "aws/request.Request" representing the +// client's request for the UpdateBotRecommendation operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See UpdateTestSet for more information on using the UpdateTestSet +// See UpdateBotRecommendation for more information on using the UpdateBotRecommendation // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the UpdateTestSetRequest method. -// req, resp := client.UpdateTestSetRequest(params) +// // Example sending a request using the UpdateBotRecommendationRequest method. +// req, resp := client.UpdateBotRecommendationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateTestSet -func (c *LexModelsV2) UpdateTestSetRequest(input *UpdateTestSetInput) (req *request.Request, output *UpdateTestSetOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateBotRecommendation +func (c *LexModelsV2) UpdateBotRecommendationRequest(input *UpdateBotRecommendationInput) (req *request.Request, output *UpdateBotRecommendationOutput) { op := &request.Operation{ - Name: opUpdateTestSet, + Name: opUpdateBotRecommendation, HTTPMethod: "PUT", - HTTPPath: "/testsets/{testSetId}", + HTTPPath: "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/botrecommendations/{botRecommendationId}/", } if input == nil { - input = &UpdateTestSetInput{} + input = &UpdateBotRecommendationInput{} } - output = &UpdateTestSetOutput{} + output = &UpdateBotRecommendationOutput{} req = c.newRequest(op, input, output) return } -// UpdateTestSet API operation for Amazon Lex Model Building V2. +// UpdateBotRecommendation API operation for Amazon Lex Model Building V2. // -// The action to update the test set. +// Updates an existing bot recommendation request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Lex Model Building V2's -// API operation UpdateTestSet for usage and error information. +// API operation UpdateBotRecommendation for usage and error information. // // Returned Error Types: // @@ -9236,6 +9750,15 @@ func (c *LexModelsV2) UpdateTestSetRequest(input *UpdateTestSetInput) (req *requ // One of the input parameters in your request isn't valid. Check the parameters // and try your request again. // +// - ResourceNotFoundException +// You asked to describe a resource that doesn't exist. Check the resource that +// you are requesting and try again. +// +// - ConflictException +// The action that you tried to perform couldn't be completed because the resource +// is in a conflicting state. For example, deleting a bot that is in the CREATING +// state. Try your request again. +// // - PreconditionFailedException // Your request couldn't be completed because one or more request fields aren't // valid. Check the fields in your request and try again. @@ -9248,36 +9771,2535 @@ func (c *LexModelsV2) UpdateTestSetRequest(input *UpdateTestSetInput) (req *requ // - InternalServerException // The service encountered an unexpected condition. Try your request again. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateTestSet -func (c *LexModelsV2) UpdateTestSet(input *UpdateTestSetInput) (*UpdateTestSetOutput, error) { - req, out := c.UpdateTestSetRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateBotRecommendation +func (c *LexModelsV2) UpdateBotRecommendation(input *UpdateBotRecommendationInput) (*UpdateBotRecommendationOutput, error) { + req, out := c.UpdateBotRecommendationRequest(input) return out, req.Send() } -// UpdateTestSetWithContext is the same as UpdateTestSet with the addition of -// the ability to pass a context and additional request options. +// UpdateBotRecommendationWithContext is the same as UpdateBotRecommendation with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateBotRecommendation for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LexModelsV2) UpdateBotRecommendationWithContext(ctx aws.Context, input *UpdateBotRecommendationInput, opts ...request.Option) (*UpdateBotRecommendationOutput, error) { + req, out := c.UpdateBotRecommendationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateExport = "UpdateExport" + +// UpdateExportRequest generates a "aws/request.Request" representing the +// client's request for the UpdateExport operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateExport for more information on using the UpdateExport +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UpdateExportRequest method. +// req, resp := client.UpdateExportRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateExport +func (c *LexModelsV2) UpdateExportRequest(input *UpdateExportInput) (req *request.Request, output *UpdateExportOutput) { + op := &request.Operation{ + Name: opUpdateExport, + HTTPMethod: "PUT", + HTTPPath: "/exports/{exportId}/", + } + + if input == nil { + input = &UpdateExportInput{} + } + + output = &UpdateExportOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateExport API operation for Amazon Lex Model Building V2. +// +// Updates the password used to protect an export zip archive. +// +// The password is not required. If you don't supply a password, Amazon Lex +// generates a zip file that is not protected by a password. This is the archive +// that is available at the pre-signed S3 URL provided by the DescribeExport +// (https://docs.aws.amazon.com/lexv2/latest/APIReference/API_DescribeExport.html) +// operation. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Lex Model Building V2's +// API operation UpdateExport for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Your request rate is too high. Reduce the frequency of requests. +// +// - ServiceQuotaExceededException +// You have reached a quota for your bot. +// +// - ValidationException +// One of the input parameters in your request isn't valid. Check the parameters +// and try your request again. +// +// - ResourceNotFoundException +// You asked to describe a resource that doesn't exist. Check the resource that +// you are requesting and try again. +// +// - ConflictException +// The action that you tried to perform couldn't be completed because the resource +// is in a conflicting state. For example, deleting a bot that is in the CREATING +// state. Try your request again. +// +// - InternalServerException +// The service encountered an unexpected condition. Try your request again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateExport +func (c *LexModelsV2) UpdateExport(input *UpdateExportInput) (*UpdateExportOutput, error) { + req, out := c.UpdateExportRequest(input) + return out, req.Send() +} + +// UpdateExportWithContext is the same as UpdateExport with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateExport for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LexModelsV2) UpdateExportWithContext(ctx aws.Context, input *UpdateExportInput, opts ...request.Option) (*UpdateExportOutput, error) { + req, out := c.UpdateExportRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateIntent = "UpdateIntent" + +// UpdateIntentRequest generates a "aws/request.Request" representing the +// client's request for the UpdateIntent operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateIntent for more information on using the UpdateIntent +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UpdateIntentRequest method. +// req, resp := client.UpdateIntentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateIntent +func (c *LexModelsV2) UpdateIntentRequest(input *UpdateIntentInput) (req *request.Request, output *UpdateIntentOutput) { + op := &request.Operation{ + Name: opUpdateIntent, + HTTPMethod: "PUT", + HTTPPath: "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/intents/{intentId}/", + } + + if input == nil { + input = &UpdateIntentInput{} + } + + output = &UpdateIntentOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateIntent API operation for Amazon Lex Model Building V2. +// +// Updates the settings for an intent. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Lex Model Building V2's +// API operation UpdateIntent for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Your request rate is too high. Reduce the frequency of requests. +// +// - ServiceQuotaExceededException +// You have reached a quota for your bot. +// +// - ValidationException +// One of the input parameters in your request isn't valid. Check the parameters +// and try your request again. +// +// - PreconditionFailedException +// Your request couldn't be completed because one or more request fields aren't +// valid. Check the fields in your request and try again. +// +// - ConflictException +// The action that you tried to perform couldn't be completed because the resource +// is in a conflicting state. For example, deleting a bot that is in the CREATING +// state. Try your request again. +// +// - InternalServerException +// The service encountered an unexpected condition. Try your request again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateIntent +func (c *LexModelsV2) UpdateIntent(input *UpdateIntentInput) (*UpdateIntentOutput, error) { + req, out := c.UpdateIntentRequest(input) + return out, req.Send() +} + +// UpdateIntentWithContext is the same as UpdateIntent with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateIntent for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LexModelsV2) UpdateIntentWithContext(ctx aws.Context, input *UpdateIntentInput, opts ...request.Option) (*UpdateIntentOutput, error) { + req, out := c.UpdateIntentRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateResourcePolicy = "UpdateResourcePolicy" + +// UpdateResourcePolicyRequest generates a "aws/request.Request" representing the +// client's request for the UpdateResourcePolicy operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateResourcePolicy for more information on using the UpdateResourcePolicy +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UpdateResourcePolicyRequest method. +// req, resp := client.UpdateResourcePolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateResourcePolicy +func (c *LexModelsV2) UpdateResourcePolicyRequest(input *UpdateResourcePolicyInput) (req *request.Request, output *UpdateResourcePolicyOutput) { + op := &request.Operation{ + Name: opUpdateResourcePolicy, + HTTPMethod: "PUT", + HTTPPath: "/policy/{resourceArn}/", + } + + if input == nil { + input = &UpdateResourcePolicyInput{} + } + + output = &UpdateResourcePolicyOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateResourcePolicy API operation for Amazon Lex Model Building V2. +// +// Replaces the existing resource policy for a bot or bot alias with a new one. +// If the policy doesn't exist, Amazon Lex returns an exception. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Lex Model Building V2's +// API operation UpdateResourcePolicy for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException +// You asked to describe a resource that doesn't exist. Check the resource that +// you are requesting and try again. +// +// - ServiceQuotaExceededException +// You have reached a quota for your bot. +// +// - PreconditionFailedException +// Your request couldn't be completed because one or more request fields aren't +// valid. Check the fields in your request and try again. +// +// - ValidationException +// One of the input parameters in your request isn't valid. Check the parameters +// and try your request again. +// +// - InternalServerException +// The service encountered an unexpected condition. Try your request again. +// +// - ThrottlingException +// Your request rate is too high. Reduce the frequency of requests. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateResourcePolicy +func (c *LexModelsV2) UpdateResourcePolicy(input *UpdateResourcePolicyInput) (*UpdateResourcePolicyOutput, error) { + req, out := c.UpdateResourcePolicyRequest(input) + return out, req.Send() +} + +// UpdateResourcePolicyWithContext is the same as UpdateResourcePolicy with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateResourcePolicy for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LexModelsV2) UpdateResourcePolicyWithContext(ctx aws.Context, input *UpdateResourcePolicyInput, opts ...request.Option) (*UpdateResourcePolicyOutput, error) { + req, out := c.UpdateResourcePolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateSlot = "UpdateSlot" + +// UpdateSlotRequest generates a "aws/request.Request" representing the +// client's request for the UpdateSlot operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateSlot for more information on using the UpdateSlot +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UpdateSlotRequest method. +// req, resp := client.UpdateSlotRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateSlot +func (c *LexModelsV2) UpdateSlotRequest(input *UpdateSlotInput) (req *request.Request, output *UpdateSlotOutput) { + op := &request.Operation{ + Name: opUpdateSlot, + HTTPMethod: "PUT", + HTTPPath: "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/intents/{intentId}/slots/{slotId}/", + } + + if input == nil { + input = &UpdateSlotInput{} + } + + output = &UpdateSlotOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateSlot API operation for Amazon Lex Model Building V2. +// +// Updates the settings for a slot. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Lex Model Building V2's +// API operation UpdateSlot for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Your request rate is too high. Reduce the frequency of requests. +// +// - ServiceQuotaExceededException +// You have reached a quota for your bot. +// +// - ValidationException +// One of the input parameters in your request isn't valid. Check the parameters +// and try your request again. +// +// - PreconditionFailedException +// Your request couldn't be completed because one or more request fields aren't +// valid. Check the fields in your request and try again. +// +// - ConflictException +// The action that you tried to perform couldn't be completed because the resource +// is in a conflicting state. For example, deleting a bot that is in the CREATING +// state. Try your request again. +// +// - InternalServerException +// The service encountered an unexpected condition. Try your request again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateSlot +func (c *LexModelsV2) UpdateSlot(input *UpdateSlotInput) (*UpdateSlotOutput, error) { + req, out := c.UpdateSlotRequest(input) + return out, req.Send() +} + +// UpdateSlotWithContext is the same as UpdateSlot with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateSlot for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LexModelsV2) UpdateSlotWithContext(ctx aws.Context, input *UpdateSlotInput, opts ...request.Option) (*UpdateSlotOutput, error) { + req, out := c.UpdateSlotRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateSlotType = "UpdateSlotType" + +// UpdateSlotTypeRequest generates a "aws/request.Request" representing the +// client's request for the UpdateSlotType operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateSlotType for more information on using the UpdateSlotType +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UpdateSlotTypeRequest method. +// req, resp := client.UpdateSlotTypeRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateSlotType +func (c *LexModelsV2) UpdateSlotTypeRequest(input *UpdateSlotTypeInput) (req *request.Request, output *UpdateSlotTypeOutput) { + op := &request.Operation{ + Name: opUpdateSlotType, + HTTPMethod: "PUT", + HTTPPath: "/bots/{botId}/botversions/{botVersion}/botlocales/{localeId}/slottypes/{slotTypeId}/", + } + + if input == nil { + input = &UpdateSlotTypeInput{} + } + + output = &UpdateSlotTypeOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateSlotType API operation for Amazon Lex Model Building V2. +// +// Updates the configuration of an existing slot type. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Lex Model Building V2's +// API operation UpdateSlotType for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Your request rate is too high. Reduce the frequency of requests. +// +// - ServiceQuotaExceededException +// You have reached a quota for your bot. +// +// - ValidationException +// One of the input parameters in your request isn't valid. Check the parameters +// and try your request again. +// +// - PreconditionFailedException +// Your request couldn't be completed because one or more request fields aren't +// valid. Check the fields in your request and try again. +// +// - ConflictException +// The action that you tried to perform couldn't be completed because the resource +// is in a conflicting state. For example, deleting a bot that is in the CREATING +// state. Try your request again. +// +// - InternalServerException +// The service encountered an unexpected condition. Try your request again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateSlotType +func (c *LexModelsV2) UpdateSlotType(input *UpdateSlotTypeInput) (*UpdateSlotTypeOutput, error) { + req, out := c.UpdateSlotTypeRequest(input) + return out, req.Send() +} + +// UpdateSlotTypeWithContext is the same as UpdateSlotType with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateSlotType for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LexModelsV2) UpdateSlotTypeWithContext(ctx aws.Context, input *UpdateSlotTypeInput, opts ...request.Option) (*UpdateSlotTypeOutput, error) { + req, out := c.UpdateSlotTypeRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateTestSet = "UpdateTestSet" + +// UpdateTestSetRequest generates a "aws/request.Request" representing the +// client's request for the UpdateTestSet operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateTestSet for more information on using the UpdateTestSet +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UpdateTestSetRequest method. +// req, resp := client.UpdateTestSetRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateTestSet +func (c *LexModelsV2) UpdateTestSetRequest(input *UpdateTestSetInput) (req *request.Request, output *UpdateTestSetOutput) { + op := &request.Operation{ + Name: opUpdateTestSet, + HTTPMethod: "PUT", + HTTPPath: "/testsets/{testSetId}", + } + + if input == nil { + input = &UpdateTestSetInput{} + } + + output = &UpdateTestSetOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateTestSet API operation for Amazon Lex Model Building V2. +// +// The action to update the test set. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Lex Model Building V2's +// API operation UpdateTestSet for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// Your request rate is too high. Reduce the frequency of requests. +// +// - ServiceQuotaExceededException +// You have reached a quota for your bot. +// +// - ValidationException +// One of the input parameters in your request isn't valid. Check the parameters +// and try your request again. +// +// - PreconditionFailedException +// Your request couldn't be completed because one or more request fields aren't +// valid. Check the fields in your request and try again. +// +// - ConflictException +// The action that you tried to perform couldn't be completed because the resource +// is in a conflicting state. For example, deleting a bot that is in the CREATING +// state. Try your request again. +// +// - InternalServerException +// The service encountered an unexpected condition. Try your request again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/models.lex.v2-2020-08-07/UpdateTestSet +func (c *LexModelsV2) UpdateTestSet(input *UpdateTestSetInput) (*UpdateTestSetOutput, error) { + req, out := c.UpdateTestSetRequest(input) + return out, req.Send() +} + +// UpdateTestSetWithContext is the same as UpdateTestSet with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateTestSet for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LexModelsV2) UpdateTestSetWithContext(ctx aws.Context, input *UpdateTestSetInput, opts ...request.Option) (*UpdateTestSetOutput, error) { + req, out := c.UpdateTestSetRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// The active context used in the test execution. +type ActiveContext struct { + _ struct{} `type:"structure"` + + // The name of active context. + // + // Name is a required field + Name *string `locationName:"name" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ActiveContext) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ActiveContext) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *ActiveContext) SetName(v string) *ActiveContext { + s.Name = &v + return s +} + +// Provides settings that enable advanced recognition settings for slot values. +type AdvancedRecognitionSetting struct { + _ struct{} `type:"structure"` + + // Enables using the slot values as a custom vocabulary for recognizing user + // utterances. + AudioRecognitionStrategy *string `locationName:"audioRecognitionStrategy" type:"string" enum:"AudioRecognitionStrategy"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AdvancedRecognitionSetting) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AdvancedRecognitionSetting) GoString() string { + return s.String() +} + +// SetAudioRecognitionStrategy sets the AudioRecognitionStrategy field's value. +func (s *AdvancedRecognitionSetting) SetAudioRecognitionStrategy(v string) *AdvancedRecognitionSetting { + s.AudioRecognitionStrategy = &v + return s +} + +// The information about the agent turn in a test set execution. +type AgentTurnResult struct { + _ struct{} `type:"structure"` + + // The actual agent prompt for the agent turn in a test set execution. + ActualAgentPrompt *string `locationName:"actualAgentPrompt" min:"1" type:"string"` + + // The actual elicited slot for the agent turn in a test set execution. + ActualElicitedSlot *string `locationName:"actualElicitedSlot" min:"1" type:"string"` + + // The actual intent for the agent turn in a test set execution. + ActualIntent *string `locationName:"actualIntent" min:"1" type:"string"` + + // Details about an error in an execution of a test set. + ErrorDetails *ExecutionErrorDetails `locationName:"errorDetails" type:"structure"` + + // The expected agent prompt for the agent turn in a test set execution. + // + // ExpectedAgentPrompt is a required field + ExpectedAgentPrompt *string `locationName:"expectedAgentPrompt" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AgentTurnResult) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AgentTurnResult) GoString() string { + return s.String() +} + +// SetActualAgentPrompt sets the ActualAgentPrompt field's value. +func (s *AgentTurnResult) SetActualAgentPrompt(v string) *AgentTurnResult { + s.ActualAgentPrompt = &v + return s +} + +// SetActualElicitedSlot sets the ActualElicitedSlot field's value. +func (s *AgentTurnResult) SetActualElicitedSlot(v string) *AgentTurnResult { + s.ActualElicitedSlot = &v + return s +} + +// SetActualIntent sets the ActualIntent field's value. +func (s *AgentTurnResult) SetActualIntent(v string) *AgentTurnResult { + s.ActualIntent = &v + return s +} + +// SetErrorDetails sets the ErrorDetails field's value. +func (s *AgentTurnResult) SetErrorDetails(v *ExecutionErrorDetails) *AgentTurnResult { + s.ErrorDetails = v + return s +} + +// SetExpectedAgentPrompt sets the ExpectedAgentPrompt field's value. +func (s *AgentTurnResult) SetExpectedAgentPrompt(v string) *AgentTurnResult { + s.ExpectedAgentPrompt = &v + return s +} + +// The specification of an agent turn. +type AgentTurnSpecification struct { + _ struct{} `type:"structure"` + + // The agent prompt for the agent turn in a test set. + // + // AgentPrompt is a required field + AgentPrompt *string `locationName:"agentPrompt" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AgentTurnSpecification) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AgentTurnSpecification) GoString() string { + return s.String() +} + +// SetAgentPrompt sets the AgentPrompt field's value. +func (s *AgentTurnSpecification) SetAgentPrompt(v string) *AgentTurnSpecification { + s.AgentPrompt = &v + return s +} + +// Filters responses returned by the ListAggregatedUtterances operation. +type AggregatedUtterancesFilter struct { + _ struct{} `type:"structure"` + + // The name of the field to filter the utterance list. + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true" enum:"AggregatedUtterancesFilterName"` + + // The operator to use for the filter. Specify EQ when the ListAggregatedUtterances + // operation should return only utterances that equal the specified value. Specify + // CO when the ListAggregatedUtterances operation should return utterances that + // contain the specified value. + // + // Operator is a required field + Operator *string `locationName:"operator" type:"string" required:"true" enum:"AggregatedUtterancesFilterOperator"` + + // The value to use for filtering the list of bots. + // + // Values is a required field + Values []*string `locationName:"values" min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AggregatedUtterancesFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AggregatedUtterancesFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AggregatedUtterancesFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AggregatedUtterancesFilter"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Operator == nil { + invalidParams.Add(request.NewErrParamRequired("Operator")) + } + if s.Values == nil { + invalidParams.Add(request.NewErrParamRequired("Values")) + } + if s.Values != nil && len(s.Values) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Values", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *AggregatedUtterancesFilter) SetName(v string) *AggregatedUtterancesFilter { + s.Name = &v + return s +} + +// SetOperator sets the Operator field's value. +func (s *AggregatedUtterancesFilter) SetOperator(v string) *AggregatedUtterancesFilter { + s.Operator = &v + return s +} + +// SetValues sets the Values field's value. +func (s *AggregatedUtterancesFilter) SetValues(v []*string) *AggregatedUtterancesFilter { + s.Values = v + return s +} + +// Specifies attributes for sorting a list of utterances. +type AggregatedUtterancesSortBy struct { + _ struct{} `type:"structure"` + + // The utterance attribute to sort by. + // + // Attribute is a required field + Attribute *string `locationName:"attribute" type:"string" required:"true" enum:"AggregatedUtterancesSortAttribute"` + + // Specifies whether to sort the aggregated utterances in ascending or descending + // order. + // + // Order is a required field + Order *string `locationName:"order" type:"string" required:"true" enum:"SortOrder"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AggregatedUtterancesSortBy) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AggregatedUtterancesSortBy) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AggregatedUtterancesSortBy) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AggregatedUtterancesSortBy"} + if s.Attribute == nil { + invalidParams.Add(request.NewErrParamRequired("Attribute")) + } + if s.Order == nil { + invalidParams.Add(request.NewErrParamRequired("Order")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAttribute sets the Attribute field's value. +func (s *AggregatedUtterancesSortBy) SetAttribute(v string) *AggregatedUtterancesSortBy { + s.Attribute = &v + return s +} + +// SetOrder sets the Order field's value. +func (s *AggregatedUtterancesSortBy) SetOrder(v string) *AggregatedUtterancesSortBy { + s.Order = &v + return s +} + +// Provides summary information for aggregated utterances. The ListAggregatedUtterances +// operations combines all instances of the same utterance into a single aggregated +// summary. +type AggregatedUtterancesSummary struct { + _ struct{} `type:"structure"` + + // Aggregated utterance data may contain utterances from versions of your bot + // that have since been deleted. When the aggregated contains this kind of data, + // this field is set to true. + ContainsDataFromDeletedResources *bool `locationName:"containsDataFromDeletedResources" type:"boolean"` + + // The number of times that the utterance was detected by Amazon Lex during + // the time period. When an utterance is detected, it activates an intent or + // a slot. + HitCount *int64 `locationName:"hitCount" type:"integer"` + + // The number of times that the utterance was missed by Amazon Lex An utterance + // is missed when it doesn't activate an intent or slot. + MissedCount *int64 `locationName:"missedCount" type:"integer"` + + // The text of the utterance. If the utterance was used with the RecognizeUtterance + // operation, the text is the transcription of the audio utterance. + Utterance *string `locationName:"utterance" type:"string"` + + // The date and time that the utterance was first recorded in the time window + // for aggregation. An utterance may have been sent to Amazon Lex before that + // time, but only utterances within the time window are counted. + UtteranceFirstRecordedInAggregationDuration *time.Time `locationName:"utteranceFirstRecordedInAggregationDuration" type:"timestamp"` + + // The last date and time that an utterance was recorded in the time window + // for aggregation. An utterance may be sent to Amazon Lex after that time, + // but only utterances within the time window are counted. + UtteranceLastRecordedInAggregationDuration *time.Time `locationName:"utteranceLastRecordedInAggregationDuration" type:"timestamp"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AggregatedUtterancesSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AggregatedUtterancesSummary) GoString() string { + return s.String() +} + +// SetContainsDataFromDeletedResources sets the ContainsDataFromDeletedResources field's value. +func (s *AggregatedUtterancesSummary) SetContainsDataFromDeletedResources(v bool) *AggregatedUtterancesSummary { + s.ContainsDataFromDeletedResources = &v + return s +} + +// SetHitCount sets the HitCount field's value. +func (s *AggregatedUtterancesSummary) SetHitCount(v int64) *AggregatedUtterancesSummary { + s.HitCount = &v + return s +} + +// SetMissedCount sets the MissedCount field's value. +func (s *AggregatedUtterancesSummary) SetMissedCount(v int64) *AggregatedUtterancesSummary { + s.MissedCount = &v + return s +} + +// SetUtterance sets the Utterance field's value. +func (s *AggregatedUtterancesSummary) SetUtterance(v string) *AggregatedUtterancesSummary { + s.Utterance = &v + return s +} + +// SetUtteranceFirstRecordedInAggregationDuration sets the UtteranceFirstRecordedInAggregationDuration field's value. +func (s *AggregatedUtterancesSummary) SetUtteranceFirstRecordedInAggregationDuration(v time.Time) *AggregatedUtterancesSummary { + s.UtteranceFirstRecordedInAggregationDuration = &v + return s +} + +// SetUtteranceLastRecordedInAggregationDuration sets the UtteranceLastRecordedInAggregationDuration field's value. +func (s *AggregatedUtterancesSummary) SetUtteranceLastRecordedInAggregationDuration(v time.Time) *AggregatedUtterancesSummary { + s.UtteranceLastRecordedInAggregationDuration = &v + return s +} + +// Specifies the allowed input types. +type AllowedInputTypes struct { + _ struct{} `type:"structure"` + + // Indicates whether audio input is allowed. + // + // AllowAudioInput is a required field + AllowAudioInput *bool `locationName:"allowAudioInput" type:"boolean" required:"true"` + + // Indicates whether DTMF input is allowed. + // + // AllowDTMFInput is a required field + AllowDTMFInput *bool `locationName:"allowDTMFInput" type:"boolean" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AllowedInputTypes) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AllowedInputTypes) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AllowedInputTypes) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AllowedInputTypes"} + if s.AllowAudioInput == nil { + invalidParams.Add(request.NewErrParamRequired("AllowAudioInput")) + } + if s.AllowDTMFInput == nil { + invalidParams.Add(request.NewErrParamRequired("AllowDTMFInput")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAllowAudioInput sets the AllowAudioInput field's value. +func (s *AllowedInputTypes) SetAllowAudioInput(v bool) *AllowedInputTypes { + s.AllowAudioInput = &v + return s +} + +// SetAllowDTMFInput sets the AllowDTMFInput field's value. +func (s *AllowedInputTypes) SetAllowDTMFInput(v bool) *AllowedInputTypes { + s.AllowDTMFInput = &v + return s +} + +// Contains the time metric, interval, and method by which to bin the analytics +// data. +type AnalyticsBinBySpecification struct { + _ struct{} `type:"structure"` + + // Specifies the interval of time by which to bin the analytics data. + // + // Interval is a required field + Interval *string `locationName:"interval" type:"string" required:"true" enum:"AnalyticsInterval"` + + // Specifies the time metric by which to bin the analytics data. + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true" enum:"AnalyticsBinByName"` + + // 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. + Order *string `locationName:"order" type:"string" enum:"AnalyticsSortOrder"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsBinBySpecification) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsBinBySpecification) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AnalyticsBinBySpecification) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AnalyticsBinBySpecification"} + if s.Interval == nil { + invalidParams.Add(request.NewErrParamRequired("Interval")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetInterval sets the Interval field's value. +func (s *AnalyticsBinBySpecification) SetInterval(v string) *AnalyticsBinBySpecification { + s.Interval = &v + return s +} + +// SetName sets the Name field's value. +func (s *AnalyticsBinBySpecification) SetName(v string) *AnalyticsBinBySpecification { + s.Name = &v + return s +} + +// SetOrder sets the Order field's value. +func (s *AnalyticsBinBySpecification) SetOrder(v string) *AnalyticsBinBySpecification { + s.Order = &v + return s +} + +// An object containing the criterion by which to bin the results and the value +// that defines that bin. +type AnalyticsBinKey struct { + _ struct{} `type:"structure"` + + // The criterion by which to bin the results. + Name *string `locationName:"name" type:"string" enum:"AnalyticsBinByName"` + + // The value of the criterion that defines the bin. + Value *int64 `locationName:"value" type:"long"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsBinKey) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsBinKey) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *AnalyticsBinKey) SetName(v string) *AnalyticsBinKey { + s.Name = &v + return s +} + +// SetValue sets the Value field's value. +func (s *AnalyticsBinKey) SetValue(v int64) *AnalyticsBinKey { + s.Value = &v + return s +} + +// Contains fields describing a condition by which to filter the intents. The +// expression may be understood as name operator values. For example: +// +// - IntentName CO Book – The intent name contains the string "Book." +// +// - BotVersion EQ 2 – The bot version is equal to two. +// +// The operators that each filter supports are listed below: +// +// - BotAlias – EQ. +// +// - BotVersion – EQ. +// +// - LocaleId – EQ. +// +// - Modality – EQ. +// +// - Channel – EQ. +// +// - SessionId – EQ. +// +// - OriginatingRequestId – EQ. +// +// - IntentName – EQ, CO. +// +// - IntentEndState – EQ, CO. +type AnalyticsIntentFilter struct { + _ struct{} `type:"structure"` + + // The category by which to filter the intents. 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. + // + // * IntentName – The name of the intent. + // + // * IntentEndState – The final state of the intent. + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true" enum:"AnalyticsIntentFilterName"` + + // The operation by which to filter the category. The following operations are + // possible: + // + // * CO – Contains + // + // * EQ – Equals + // + // * GT – Greater than + // + // * LT – 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. + // + // * IntentName – EQ, CO. + // + // * IntentEndState – EQ, CO. + // + // Operator is a required field + Operator *string `locationName:"operator" type:"string" required:"true" enum:"AnalyticsFilterOperator"` + + // 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 or CO. If you provide multiple values, you filter for results that equal/contain + // any of the values. For example, if the name, operator, and values fields + // are Modality, EQ, and [Speech, Text], the operation filters for results where + // the modality was either Speech or Text. + // + // Values is a required field + Values []*string `locationName:"values" min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsIntentFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsIntentFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AnalyticsIntentFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AnalyticsIntentFilter"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Operator == nil { + invalidParams.Add(request.NewErrParamRequired("Operator")) + } + if s.Values == nil { + invalidParams.Add(request.NewErrParamRequired("Values")) + } + if s.Values != nil && len(s.Values) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Values", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *AnalyticsIntentFilter) SetName(v string) *AnalyticsIntentFilter { + s.Name = &v + return s +} + +// SetOperator sets the Operator field's value. +func (s *AnalyticsIntentFilter) SetOperator(v string) *AnalyticsIntentFilter { + s.Operator = &v + return s +} + +// SetValues sets the Values field's value. +func (s *AnalyticsIntentFilter) SetValues(v []*string) *AnalyticsIntentFilter { + s.Values = v + return s +} + +// Contains the category by which the intent analytics were grouped and a member +// of that category. +type AnalyticsIntentGroupByKey struct { + _ struct{} `type:"structure"` + + // A category by which the intent analytics were grouped. + Name *string `locationName:"name" type:"string" enum:"AnalyticsIntentField"` + + // A member of the category by which the intent analytics were grouped. + Value *string `locationName:"value" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsIntentGroupByKey) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsIntentGroupByKey) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *AnalyticsIntentGroupByKey) SetName(v string) *AnalyticsIntentGroupByKey { + s.Name = &v + return s +} + +// SetValue sets the Value field's value. +func (s *AnalyticsIntentGroupByKey) SetValue(v string) *AnalyticsIntentGroupByKey { + s.Value = &v + return s +} + +// Contains the category by which to group the intents. +type AnalyticsIntentGroupBySpecification struct { + _ struct{} `type:"structure"` + + // Specifies whether to group the intent stages by their name or their end state. + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true" enum:"AnalyticsIntentField"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsIntentGroupBySpecification) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsIntentGroupBySpecification) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AnalyticsIntentGroupBySpecification) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AnalyticsIntentGroupBySpecification"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *AnalyticsIntentGroupBySpecification) SetName(v string) *AnalyticsIntentGroupBySpecification { + s.Name = &v + return s +} + +// Contains the metric and the summary statistic you want to calculate, and +// the order in which to sort the results, for the intents in the bot. +type AnalyticsIntentMetric struct { + _ struct{} `type:"structure"` + + // The metric for which you want to get intent summary statistics. + // + // * Count – The number of times the intent was invoked. + // + // * Success – The number of times the intent succeeded. + // + // * Failure – The number of times the intent failed. + // + // * Switched – The number of times there was a switch to a different intent. + // + // * Dropped – The number of times the user dropped the intent. + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true" enum:"AnalyticsIntentMetricName"` + + // Specifies whether to sort the results in ascending or descending order. + Order *string `locationName:"order" type:"string" enum:"AnalyticsSortOrder"` + + // The summary statistic to calculate. + // + // * Sum – The total count for the category you provide in name. + // + // * Average – The total count divided by the number of intents in the + // category you provide in name. + // + // * Max – The highest count in the category you provide in name. + // + // Statistic is a required field + Statistic *string `locationName:"statistic" type:"string" required:"true" enum:"AnalyticsMetricStatistic"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsIntentMetric) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsIntentMetric) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AnalyticsIntentMetric) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AnalyticsIntentMetric"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Statistic == nil { + invalidParams.Add(request.NewErrParamRequired("Statistic")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *AnalyticsIntentMetric) SetName(v string) *AnalyticsIntentMetric { + s.Name = &v + return s +} + +// SetOrder sets the Order field's value. +func (s *AnalyticsIntentMetric) SetOrder(v string) *AnalyticsIntentMetric { + s.Order = &v + return s +} + +// SetStatistic sets the Statistic field's value. +func (s *AnalyticsIntentMetric) SetStatistic(v string) *AnalyticsIntentMetric { + s.Statistic = &v + return s +} + +// An object containing the results for the intent metric you requested. +type AnalyticsIntentMetricResult struct { + _ struct{} `type:"structure"` + + // The metric that you requested. See Key definitions (https://docs.aws.amazon.com/lexv2/latest/dg/analytics-key-definitions.html) + // for more details about these metrics. + // + // * Count – The number of times the intent was invoked. + // + // * Success – The number of times the intent succeeded. + // + // * Failure – The number of times the intent failed. + // + // * Switched – The number of times there was a switch to a different intent. + // + // * Dropped – The number of times the user dropped the intent. + Name *string `locationName:"name" type:"string" enum:"AnalyticsIntentMetricName"` + + // The statistic that you requested to calculate. + // + // * Sum – The total count for the category you provide in name. + // + // * Average – The total count divided by the number of intents in the + // category you provide in name. + // + // * Max – The highest count in the category you provide in name. + Statistic *string `locationName:"statistic" type:"string" enum:"AnalyticsMetricStatistic"` + + // The value of the summary statistic for the metric that you requested. + Value *float64 `locationName:"value" type:"double"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsIntentMetricResult) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsIntentMetricResult) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *AnalyticsIntentMetricResult) SetName(v string) *AnalyticsIntentMetricResult { + s.Name = &v + return s +} + +// SetStatistic sets the Statistic field's value. +func (s *AnalyticsIntentMetricResult) SetStatistic(v string) *AnalyticsIntentMetricResult { + s.Statistic = &v + return s +} + +// SetValue sets the Value field's value. +func (s *AnalyticsIntentMetricResult) SetValue(v float64) *AnalyticsIntentMetricResult { + s.Value = &v + return s +} + +// An object containing information about the requested path. +type AnalyticsIntentNodeSummary struct { + _ struct{} `type:"structure"` + + // The total number of sessions that follow the given path to the given intent. + IntentCount *int64 `locationName:"intentCount" type:"integer"` + + // The number of intents up to and including the requested path. + IntentLevel *int64 `locationName:"intentLevel" type:"integer"` + + // The name of the intent at the end of the requested path. + IntentName *string `locationName:"intentName" min:"1" type:"string"` + + // The path. + IntentPath *string `locationName:"intentPath" min:"1" type:"string"` + + // Specifies whether the node is the end of a path (Exit) or not (Inner). + NodeType *string `locationName:"nodeType" type:"string" enum:"AnalyticsNodeType"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsIntentNodeSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsIntentNodeSummary) GoString() string { + return s.String() +} + +// SetIntentCount sets the IntentCount field's value. +func (s *AnalyticsIntentNodeSummary) SetIntentCount(v int64) *AnalyticsIntentNodeSummary { + s.IntentCount = &v + return s +} + +// SetIntentLevel sets the IntentLevel field's value. +func (s *AnalyticsIntentNodeSummary) SetIntentLevel(v int64) *AnalyticsIntentNodeSummary { + s.IntentLevel = &v + return s +} + +// SetIntentName sets the IntentName field's value. +func (s *AnalyticsIntentNodeSummary) SetIntentName(v string) *AnalyticsIntentNodeSummary { + s.IntentName = &v + return s +} + +// SetIntentPath sets the IntentPath field's value. +func (s *AnalyticsIntentNodeSummary) SetIntentPath(v string) *AnalyticsIntentNodeSummary { + s.IntentPath = &v + return s +} + +// SetNodeType sets the NodeType field's value. +func (s *AnalyticsIntentNodeSummary) SetNodeType(v string) *AnalyticsIntentNodeSummary { + s.NodeType = &v + return s +} + +// An object containing the results for the intent metrics you requested and +// the bin and/or group(s) they refer to, if applicable. +type AnalyticsIntentResult struct { + _ struct{} `type:"structure"` + + // A list of objects containing the criteria you requested for binning results + // and the values of the bins. + BinKeys []*AnalyticsBinKey `locationName:"binKeys" min:"1" type:"list"` + + // A list of objects containing the criteria you requested for grouping results + // and the values of the groups. + GroupByKeys []*AnalyticsIntentGroupByKey `locationName:"groupByKeys" type:"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. + MetricsResults []*AnalyticsIntentMetricResult `locationName:"metricsResults" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsIntentResult) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsIntentResult) GoString() string { + return s.String() +} + +// SetBinKeys sets the BinKeys field's value. +func (s *AnalyticsIntentResult) SetBinKeys(v []*AnalyticsBinKey) *AnalyticsIntentResult { + s.BinKeys = v + return s +} + +// SetGroupByKeys sets the GroupByKeys field's value. +func (s *AnalyticsIntentResult) SetGroupByKeys(v []*AnalyticsIntentGroupByKey) *AnalyticsIntentResult { + s.GroupByKeys = v + return s +} + +// SetMetricsResults sets the MetricsResults field's value. +func (s *AnalyticsIntentResult) SetMetricsResults(v []*AnalyticsIntentMetricResult) *AnalyticsIntentResult { + s.MetricsResults = v + return s +} + +// Contains fields describing a condition by which to filter the intent stages. +// The expression may be understood as name operator values. For example: +// +// - IntentName CO Book – The intent name contains the string "Book." +// +// - BotVersion EQ 2 – The bot version is equal to two. +// +// The operators that each filter supports are listed below: +// +// - BotAlias – EQ. +// +// - BotVersion – EQ. +// +// - LocaleId – EQ. +// +// - Modality – EQ. +// +// - Channel – EQ. +// +// - SessionId – EQ. +// +// - OriginatingRequestId – EQ. +// +// - IntentName – EQ, CO. +// +// - IntentStageName – EQ, CO. +type AnalyticsIntentStageFilter struct { + _ struct{} `type:"structure"` + + // The category by which to filter the intent stages. 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. + // + // * IntentName – The name of the intent. + // + // * IntentStageName – The stage in the intent. + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true" enum:"AnalyticsIntentStageFilterName"` + + // The operation by which to filter the category. The following operations are + // possible: + // + // * CO – Contains + // + // * EQ – Equals + // + // * GT – Greater than + // + // * LT – 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. + // + // * IntentName – EQ, CO. + // + // * IntentStageName – EQ, CO. + // + // Operator is a required field + Operator *string `locationName:"operator" type:"string" required:"true" enum:"AnalyticsFilterOperator"` + + // 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 or CO. If you provide multiple values, you filter for results that equal/contain + // any of the values. For example, if the name, operator, and values fields + // are Modality, EQ, and [Speech, Text], the operation filters for results where + // the modality was either Speech or Text. + // + // Values is a required field + Values []*string `locationName:"values" min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsIntentStageFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsIntentStageFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AnalyticsIntentStageFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AnalyticsIntentStageFilter"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Operator == nil { + invalidParams.Add(request.NewErrParamRequired("Operator")) + } + if s.Values == nil { + invalidParams.Add(request.NewErrParamRequired("Values")) + } + if s.Values != nil && len(s.Values) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Values", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *AnalyticsIntentStageFilter) SetName(v string) *AnalyticsIntentStageFilter { + s.Name = &v + return s +} + +// SetOperator sets the Operator field's value. +func (s *AnalyticsIntentStageFilter) SetOperator(v string) *AnalyticsIntentStageFilter { + s.Operator = &v + return s +} + +// SetValues sets the Values field's value. +func (s *AnalyticsIntentStageFilter) SetValues(v []*string) *AnalyticsIntentStageFilter { + s.Values = v + return s +} + +// Contains the category by which the intent stage analytics and the values +// for that category were grouped. +type AnalyticsIntentStageGroupByKey struct { + _ struct{} `type:"structure"` + + // A category by which the intent stage analytics were grouped. + Name *string `locationName:"name" type:"string" enum:"AnalyticsIntentStageField"` + + // A member of the category by which the intent stage analytics were grouped. + Value *string `locationName:"value" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsIntentStageGroupByKey) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsIntentStageGroupByKey) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *AnalyticsIntentStageGroupByKey) SetName(v string) *AnalyticsIntentStageGroupByKey { + s.Name = &v + return s +} + +// SetValue sets the Value field's value. +func (s *AnalyticsIntentStageGroupByKey) SetValue(v string) *AnalyticsIntentStageGroupByKey { + s.Value = &v + return s +} + +// Contains the category by which to group the intent stages. +type AnalyticsIntentStageGroupBySpecification struct { + _ struct{} `type:"structure"` + + // Specifies whether to group the intent stages by their name or the intent + // to which the session was switched. + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true" enum:"AnalyticsIntentStageField"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsIntentStageGroupBySpecification) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsIntentStageGroupBySpecification) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AnalyticsIntentStageGroupBySpecification) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AnalyticsIntentStageGroupBySpecification"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *AnalyticsIntentStageGroupBySpecification) SetName(v string) *AnalyticsIntentStageGroupBySpecification { + s.Name = &v + return s +} + +// Contains the metric and the summary statistic you want to calculate, and +// the order in which to sort the results, for the intent stages across the +// user sessions with the bot. +type AnalyticsIntentStageMetric struct { + _ struct{} `type:"structure"` + + // The metric for which you want to get intent stage summary statistics. See + // Key definitions (https://docs.aws.amazon.com/lexv2/latest/dg/analytics-key-definitions.html) + // for more details about these metrics. + // + // * Count – The number of times the intent stage occurred. + // + // * Success – The number of times the intent stage succeeded. + // + // * Failure – The number of times the intent stage failed. + // + // * Dropped – The number of times the user dropped the intent stage. + // + // * Retry – The number of times the bot tried to elicit a response from + // the user at this stage. + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true" enum:"AnalyticsIntentStageMetricName"` + + // Specifies whether to sort the results in ascending or descending order of + // the summary statistic (value in the response). + Order *string `locationName:"order" type:"string" enum:"AnalyticsSortOrder"` + + // The summary statistic to calculate. + // + // * Sum – The total count for the category you provide in name. + // + // * Average – The total count divided by the number of intent stages in + // the category you provide in name. + // + // * Max – The highest count in the category you provide in name. + // + // Statistic is a required field + Statistic *string `locationName:"statistic" type:"string" required:"true" enum:"AnalyticsMetricStatistic"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsIntentStageMetric) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsIntentStageMetric) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AnalyticsIntentStageMetric) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AnalyticsIntentStageMetric"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Statistic == nil { + invalidParams.Add(request.NewErrParamRequired("Statistic")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *AnalyticsIntentStageMetric) SetName(v string) *AnalyticsIntentStageMetric { + s.Name = &v + return s +} + +// SetOrder sets the Order field's value. +func (s *AnalyticsIntentStageMetric) SetOrder(v string) *AnalyticsIntentStageMetric { + s.Order = &v + return s +} + +// SetStatistic sets the Statistic field's value. +func (s *AnalyticsIntentStageMetric) SetStatistic(v string) *AnalyticsIntentStageMetric { + s.Statistic = &v + return s +} + +// An object containing the results for an intent stage metric you requested. +type AnalyticsIntentStageMetricResult struct { + _ struct{} `type:"structure"` + + // The metric that you requested. + // + // * Count – The number of times the intent stage occurred. + // + // * Success – The number of times the intent stage succeeded. + // + // * Failure – The number of times the intent stage failed. + // + // * Dropped – The number of times the user dropped the intent stage. + // + // * Retry – The number of times the bot tried to elicit a response from + // the user at this stage. + Name *string `locationName:"name" type:"string" enum:"AnalyticsIntentStageMetricName"` + + // The summary statistic that you requested to calculate. + // + // * Sum – The total count for the category you provide in name. + // + // * Average – The total count divided by the number of intent stages in + // the category you provide in name. + // + // * Max – The highest count in the category you provide in name. + Statistic *string `locationName:"statistic" type:"string" enum:"AnalyticsMetricStatistic"` + + // The value of the summary statistic for the metric that you requested. + Value *float64 `locationName:"value" type:"double"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsIntentStageMetricResult) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsIntentStageMetricResult) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *AnalyticsIntentStageMetricResult) SetName(v string) *AnalyticsIntentStageMetricResult { + s.Name = &v + return s +} + +// SetStatistic sets the Statistic field's value. +func (s *AnalyticsIntentStageMetricResult) SetStatistic(v string) *AnalyticsIntentStageMetricResult { + s.Statistic = &v + return s +} + +// SetValue sets the Value field's value. +func (s *AnalyticsIntentStageMetricResult) SetValue(v float64) *AnalyticsIntentStageMetricResult { + s.Value = &v + return s +} + +// An object containing the results for the intent stage metrics you requested +// and the bin and/or group they refer to, if applicable. +type AnalyticsIntentStageResult struct { + _ struct{} `type:"structure"` + + // A list of objects containing the criteria you requested for binning results + // and the values of the bins. + BinKeys []*AnalyticsBinKey `locationName:"binKeys" min:"1" type:"list"` + + // A list of objects containing the criteria you requested for grouping results + // and the values of the bins. + GroupByKeys []*AnalyticsIntentStageGroupByKey `locationName:"groupByKeys" type:"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. + MetricsResults []*AnalyticsIntentStageMetricResult `locationName:"metricsResults" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsIntentStageResult) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsIntentStageResult) GoString() string { + return s.String() +} + +// SetBinKeys sets the BinKeys field's value. +func (s *AnalyticsIntentStageResult) SetBinKeys(v []*AnalyticsBinKey) *AnalyticsIntentStageResult { + s.BinKeys = v + return s +} + +// SetGroupByKeys sets the GroupByKeys field's value. +func (s *AnalyticsIntentStageResult) SetGroupByKeys(v []*AnalyticsIntentStageGroupByKey) *AnalyticsIntentStageResult { + s.GroupByKeys = v + return s +} + +// SetMetricsResults sets the MetricsResults field's value. +func (s *AnalyticsIntentStageResult) SetMetricsResults(v []*AnalyticsIntentStageMetricResult) *AnalyticsIntentStageResult { + s.MetricsResults = v + return s +} + +// Contains fields describing a condition by which to filter the paths. The +// expression may be understood as name operator values. For example: +// +// - LocaleId EQ en – The locale is "en". +// +// - BotVersion EQ 2 – The bot version is equal to two. +// +// The operators that each filter supports are listed below: +// +// - BotAlias – EQ. +// +// - BotVersion – EQ. +// +// - LocaleId – EQ. +// +// - Modality – EQ. +// +// - Channel – EQ. +type AnalyticsPathFilter struct { + _ struct{} `type:"structure"` + + // The category by which to filter the intent paths. 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. + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true" enum:"AnalyticsCommonFilterName"` + + // The operation by which to filter the category. The following operations are + // possible: + // + // * CO – Contains + // + // * EQ – Equals + // + // * GT – Greater than + // + // * LT – Less than + // + // The operators that each filter supports are listed below: + // + // * BotAlias – EQ. + // + // * BotVersion – EQ. + // + // * LocaleId – EQ. + // + // * Modality – EQ. + // + // * Channel – EQ. + // + // Operator is a required field + Operator *string `locationName:"operator" type:"string" required:"true" enum:"AnalyticsFilterOperator"` + + // 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 or CO. If you provide multiple values, you filter for results that equal/contain + // any of the values. For example, if the name, operator, and values fields + // are Modality, EQ, and [Speech, Text], the operation filters for results where + // the modality was either Speech or Text. + // + // Values is a required field + Values []*string `locationName:"values" min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsPathFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsPathFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AnalyticsPathFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AnalyticsPathFilter"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Operator == nil { + invalidParams.Add(request.NewErrParamRequired("Operator")) + } + if s.Values == nil { + invalidParams.Add(request.NewErrParamRequired("Values")) + } + if s.Values != nil && len(s.Values) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Values", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *AnalyticsPathFilter) SetName(v string) *AnalyticsPathFilter { + s.Name = &v + return s +} + +// SetOperator sets the Operator field's value. +func (s *AnalyticsPathFilter) SetOperator(v string) *AnalyticsPathFilter { + s.Operator = &v + return s +} + +// SetValues sets the Values field's value. +func (s *AnalyticsPathFilter) SetValues(v []*string) *AnalyticsPathFilter { + s.Values = v + return s +} + +// Contains fields describing a condition by which to filter the sessions. The +// expression may be understood as name operator values. For example: +// +// - LocaleId EQ en – The locale is "en". +// +// - Duration GT 200 – The duration is greater than 200 seconds. +// +// The operators that each filter supports are listed below: +// +// - BotAlias – EQ. +// +// - BotVersion – EQ. +// +// - LocaleId – EQ. +// +// - Modality – EQ. +// +// - Channel – EQ. +// +// - Duration – EQ, GT, LT. +// +// - conversationEndState – EQ, CO. +// +// - SessionId – EQ. +// +// - OriginatingRequestId – EQ. +// +// - IntentPath – EQ. +type AnalyticsSessionFilter struct { + _ struct{} `type:"structure"` + + // The category by which to filter the sessions. 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. + // + // * Duration – The duration of the session. + // + // * conversationEndState – The final state of the session. + // + // * SessionId – The identifier of the session with the bot. + // + // * OriginatingRequestId – The identifier of the first request in a session. + // + // * IntentPath – The order of intents taken in a session. + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true" enum:"AnalyticsSessionFilterName"` + + // The operation by which to filter the category. The following operations are + // possible: + // + // * CO – Contains + // + // * EQ – Equals + // + // * GT – Greater than + // + // * LT – Less than + // + // The operators that each filter supports are listed below: + // + // * BotAlias – EQ. + // + // * BotVersion – EQ. + // + // * LocaleId – EQ. + // + // * Modality – EQ. + // + // * Channel – EQ. + // + // * Duration – EQ, GT, LT. + // + // * conversationEndState – EQ, CO. + // + // * SessionId – EQ. + // + // * OriginatingRequestId – EQ. + // + // * IntentPath – EQ. + // + // Operator is a required field + Operator *string `locationName:"operator" type:"string" required:"true" enum:"AnalyticsFilterOperator"` + + // 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 or CO. If you provide multiple values, you filter for results that equal/contain + // any of the values. For example, if the name, operator, and values fields + // are Modality, EQ, and [Speech, Text], the operation filters for results where + // the modality was either Speech or Text. + // + // Values is a required field + Values []*string `locationName:"values" min:"1" type:"list" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsSessionFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsSessionFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AnalyticsSessionFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AnalyticsSessionFilter"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Operator == nil { + invalidParams.Add(request.NewErrParamRequired("Operator")) + } + if s.Values == nil { + invalidParams.Add(request.NewErrParamRequired("Values")) + } + if s.Values != nil && len(s.Values) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Values", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *AnalyticsSessionFilter) SetName(v string) *AnalyticsSessionFilter { + s.Name = &v + return s +} + +// SetOperator sets the Operator field's value. +func (s *AnalyticsSessionFilter) SetOperator(v string) *AnalyticsSessionFilter { + s.Operator = &v + return s +} + +// SetValues sets the Values field's value. +func (s *AnalyticsSessionFilter) SetValues(v []*string) *AnalyticsSessionFilter { + s.Values = v + return s +} + +// Contains the category by which the session analytics were grouped and a member +// of that category. +type AnalyticsSessionGroupByKey struct { + _ struct{} `type:"structure"` + + // The category by which the session analytics were grouped. + Name *string `locationName:"name" type:"string" enum:"AnalyticsSessionField"` + + // A member of the category by which the session analytics were grouped. + Value *string `locationName:"value" type:"string"` +} + +// String returns the string representation. // -// See UpdateTestSet for details on how to use this API operation. +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsSessionGroupByKey) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. // -// The context must be non-nil and will be used for request cancellation. If -// the context is nil a panic will occur. In the future the SDK may create -// sub-contexts for http.Requests. See https://golang.org/pkg/context/ -// for more information on using Contexts. -func (c *LexModelsV2) UpdateTestSetWithContext(ctx aws.Context, input *UpdateTestSetInput, opts ...request.Option) (*UpdateTestSetOutput, error) { - req, out := c.UpdateTestSetRequest(input) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return out, req.Send() +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsSessionGroupByKey) GoString() string { + return s.String() } -// The active context used in the test execution. -type ActiveContext struct { +// SetName sets the Name field's value. +func (s *AnalyticsSessionGroupByKey) SetName(v string) *AnalyticsSessionGroupByKey { + s.Name = &v + return s +} + +// SetValue sets the Value field's value. +func (s *AnalyticsSessionGroupByKey) SetValue(v string) *AnalyticsSessionGroupByKey { + s.Value = &v + return s +} + +// Contains the category by which to group the sessions. +type AnalyticsSessionGroupBySpecification struct { _ struct{} `type:"structure"` - // The name of active context. + // Specifies whether to group the session by their end state or their locale. // // Name is a required field - Name *string `locationName:"name" min:"1" type:"string" required:"true"` + Name *string `locationName:"name" type:"string" required:"true" enum:"AnalyticsSessionField"` } // String returns the string representation. @@ -9285,7 +12307,7 @@ type ActiveContext struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ActiveContext) String() string { +func (s AnalyticsSessionGroupBySpecification) String() string { return awsutil.Prettify(s) } @@ -9294,23 +12316,68 @@ func (s ActiveContext) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ActiveContext) GoString() string { +func (s AnalyticsSessionGroupBySpecification) GoString() string { return s.String() } +// Validate inspects the fields of the type to determine if they are valid. +func (s *AnalyticsSessionGroupBySpecification) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AnalyticsSessionGroupBySpecification"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + // SetName sets the Name field's value. -func (s *ActiveContext) SetName(v string) *ActiveContext { +func (s *AnalyticsSessionGroupBySpecification) SetName(v string) *AnalyticsSessionGroupBySpecification { s.Name = &v return s } -// Provides settings that enable advanced recognition settings for slot values. -type AdvancedRecognitionSetting struct { +// Contains the metric and the summary statistic you want to calculate, and +// the order in which to sort the results, for the user sessions with the bot. +type AnalyticsSessionMetric struct { _ struct{} `type:"structure"` - // Enables using the slot values as a custom vocabulary for recognizing user - // utterances. - AudioRecognitionStrategy *string `locationName:"audioRecognitionStrategy" type:"string" enum:"AudioRecognitionStrategy"` + // The metric for which you want to get session summary statistics. + // + // * Count – The number of sessions. + // + // * Success – The number of sessions that succeeded. + // + // * Failure – The number of sessions that failed. + // + // * Dropped – The number of sessions that the user dropped. + // + // * Duration – The duration of sessions. + // + // * TurnsPerSession – The number of turns in the sessions. + // + // * Concurrency – The number of sessions occurring in the same period + // of time. + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true" enum:"AnalyticsSessionMetricName"` + + // Specifies whether to sort the results in ascending or descending order. + Order *string `locationName:"order" type:"string" enum:"AnalyticsSortOrder"` + + // The summary statistic to calculate. + // + // * Sum – The total count for the category you provide in name. + // + // * Average – The total count divided by the number of sessions in the + // category you provide in name. + // + // * Max – The highest count in the category you provide in name. + // + // Statistic is a required field + Statistic *string `locationName:"statistic" type:"string" required:"true" enum:"AnalyticsMetricStatistic"` } // String returns the string representation. @@ -9318,7 +12385,7 @@ type AdvancedRecognitionSetting struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AdvancedRecognitionSetting) String() string { +func (s AnalyticsSessionMetric) String() string { return awsutil.Prettify(s) } @@ -9327,36 +12394,78 @@ func (s AdvancedRecognitionSetting) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AdvancedRecognitionSetting) GoString() string { +func (s AnalyticsSessionMetric) GoString() string { return s.String() } -// SetAudioRecognitionStrategy sets the AudioRecognitionStrategy field's value. -func (s *AdvancedRecognitionSetting) SetAudioRecognitionStrategy(v string) *AdvancedRecognitionSetting { - s.AudioRecognitionStrategy = &v - return s +// Validate inspects the fields of the type to determine if they are valid. +func (s *AnalyticsSessionMetric) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AnalyticsSessionMetric"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Statistic == nil { + invalidParams.Add(request.NewErrParamRequired("Statistic")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// The information about the agent turn in a test set execution. -type AgentTurnResult struct { - _ struct{} `type:"structure"` +// SetName sets the Name field's value. +func (s *AnalyticsSessionMetric) SetName(v string) *AnalyticsSessionMetric { + s.Name = &v + return s +} - // The actual agent prompt for the agent turn in a test set execution. - ActualAgentPrompt *string `locationName:"actualAgentPrompt" min:"1" type:"string"` +// SetOrder sets the Order field's value. +func (s *AnalyticsSessionMetric) SetOrder(v string) *AnalyticsSessionMetric { + s.Order = &v + return s +} - // The actual elicited slot for the agent turn in a test set execution. - ActualElicitedSlot *string `locationName:"actualElicitedSlot" min:"1" type:"string"` +// SetStatistic sets the Statistic field's value. +func (s *AnalyticsSessionMetric) SetStatistic(v string) *AnalyticsSessionMetric { + s.Statistic = &v + return s +} - // The actual intent for the agent turn in a test set execution. - ActualIntent *string `locationName:"actualIntent" min:"1" type:"string"` +// An object containing the results for a session metric you requested. +type AnalyticsSessionMetricResult struct { + _ struct{} `type:"structure"` - // Details about an error in an execution of a test set. - ErrorDetails *ExecutionErrorDetails `locationName:"errorDetails" type:"structure"` + // The metric that you requested. + // + // * Count – The number of sessions. + // + // * Success – The number of sessions that succeeded. + // + // * Failure – The number of sessions that failed. + // + // * Dropped – The number of sessions that the user dropped. + // + // * Duration – The duration of sessions. + // + // * TurnPersession – The number of turns in the sessions. + // + // * Concurrency – The number of sessions occurring in the same period + // of time. + Name *string `locationName:"name" type:"string" enum:"AnalyticsSessionMetricName"` - // The expected agent prompt for the agent turn in a test set execution. + // The summary statistic that you requested to calculate. // - // ExpectedAgentPrompt is a required field - ExpectedAgentPrompt *string `locationName:"expectedAgentPrompt" min:"1" type:"string" required:"true"` + // * Sum – The total count for the category you provide in name. + // + // * Average – The total count divided by the number of sessions in the + // category you provide in name. + // + // * Max – The highest count in the category you provide in name. + Statistic *string `locationName:"statistic" type:"string" enum:"AnalyticsMetricStatistic"` + + // The value of the summary statistic for the metric that you requested. + Value *float64 `locationName:"value" type:"double"` } // String returns the string representation. @@ -9364,7 +12473,7 @@ type AgentTurnResult struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AgentTurnResult) String() string { +func (s AnalyticsSessionMetricResult) String() string { return awsutil.Prettify(s) } @@ -9373,48 +12482,93 @@ func (s AgentTurnResult) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AgentTurnResult) GoString() string { +func (s AnalyticsSessionMetricResult) GoString() string { return s.String() } -// SetActualAgentPrompt sets the ActualAgentPrompt field's value. -func (s *AgentTurnResult) SetActualAgentPrompt(v string) *AgentTurnResult { - s.ActualAgentPrompt = &v +// SetName sets the Name field's value. +func (s *AnalyticsSessionMetricResult) SetName(v string) *AnalyticsSessionMetricResult { + s.Name = &v return s } -// SetActualElicitedSlot sets the ActualElicitedSlot field's value. -func (s *AgentTurnResult) SetActualElicitedSlot(v string) *AgentTurnResult { - s.ActualElicitedSlot = &v +// SetStatistic sets the Statistic field's value. +func (s *AnalyticsSessionMetricResult) SetStatistic(v string) *AnalyticsSessionMetricResult { + s.Statistic = &v return s } -// SetActualIntent sets the ActualIntent field's value. -func (s *AgentTurnResult) SetActualIntent(v string) *AgentTurnResult { - s.ActualIntent = &v +// SetValue sets the Value field's value. +func (s *AnalyticsSessionMetricResult) SetValue(v float64) *AnalyticsSessionMetricResult { + s.Value = &v return s } -// SetErrorDetails sets the ErrorDetails field's value. -func (s *AgentTurnResult) SetErrorDetails(v *ExecutionErrorDetails) *AgentTurnResult { - s.ErrorDetails = v +// An object containing the results for the session metrics you requested and +// the bin and/or group(s) they refer to, if applicable. +type AnalyticsSessionResult struct { + _ struct{} `type:"structure"` + + // A list of objects containing the criteria you requested for binning results + // and the values of the bins. + BinKeys []*AnalyticsBinKey `locationName:"binKeys" min:"1" type:"list"` + + // A list of objects containing the criteria you requested for grouping results + // and the values of the bins. + GroupByKeys []*AnalyticsSessionGroupByKey `locationName:"groupByKeys" type:"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. + MetricsResults []*AnalyticsSessionMetricResult `locationName:"metricsResults" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsSessionResult) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsSessionResult) GoString() string { + return s.String() +} + +// SetBinKeys sets the BinKeys field's value. +func (s *AnalyticsSessionResult) SetBinKeys(v []*AnalyticsBinKey) *AnalyticsSessionResult { + s.BinKeys = v return s } -// SetExpectedAgentPrompt sets the ExpectedAgentPrompt field's value. -func (s *AgentTurnResult) SetExpectedAgentPrompt(v string) *AgentTurnResult { - s.ExpectedAgentPrompt = &v +// SetGroupByKeys sets the GroupByKeys field's value. +func (s *AnalyticsSessionResult) SetGroupByKeys(v []*AnalyticsSessionGroupByKey) *AnalyticsSessionResult { + s.GroupByKeys = v return s } -// The specification of an agent turn. -type AgentTurnSpecification struct { +// SetMetricsResults sets the MetricsResults field's value. +func (s *AnalyticsSessionResult) SetMetricsResults(v []*AnalyticsSessionMetricResult) *AnalyticsSessionResult { + s.MetricsResults = v + return s +} + +// An object that specifies the last used intent at the time of the utterance +// as an attribute to return. +type AnalyticsUtteranceAttribute struct { _ struct{} `type:"structure"` - // The agent prompt for the agent turn in a test set. + // An attribute to return. The only available attribute is the intent that the + // bot mapped the utterance to. // - // AgentPrompt is a required field - AgentPrompt *string `locationName:"agentPrompt" min:"1" type:"string" required:"true"` + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true" enum:"AnalyticsUtteranceAttributeName"` } // String returns the string representation. @@ -9422,7 +12576,7 @@ type AgentTurnSpecification struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AgentTurnSpecification) String() string { +func (s AnalyticsUtteranceAttribute) String() string { return awsutil.Prettify(s) } @@ -9431,34 +12585,156 @@ func (s AgentTurnSpecification) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AgentTurnSpecification) GoString() string { +func (s AnalyticsUtteranceAttribute) GoString() string { return s.String() } -// SetAgentPrompt sets the AgentPrompt field's value. -func (s *AgentTurnSpecification) SetAgentPrompt(v string) *AgentTurnSpecification { - s.AgentPrompt = &v +// Validate inspects the fields of the type to determine if they are valid. +func (s *AnalyticsUtteranceAttribute) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AnalyticsUtteranceAttribute"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *AnalyticsUtteranceAttribute) SetName(v string) *AnalyticsUtteranceAttribute { + s.Name = &v return s } -// Filters responses returned by the ListAggregatedUtterances operation. -type AggregatedUtterancesFilter struct { +// An object containing the intent that the bot mapped the utterance to. +type AnalyticsUtteranceAttributeResult struct { _ struct{} `type:"structure"` - // The name of the field to filter the utterance list. + // The intent that the bot mapped the utterance to. + LastUsedIntent *string `locationName:"lastUsedIntent" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsUtteranceAttributeResult) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsUtteranceAttributeResult) GoString() string { + return s.String() +} + +// SetLastUsedIntent sets the LastUsedIntent field's value. +func (s *AnalyticsUtteranceAttributeResult) SetLastUsedIntent(v string) *AnalyticsUtteranceAttributeResult { + s.LastUsedIntent = &v + return s +} + +// 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. +type AnalyticsUtteranceFilter struct { + _ struct{} `type:"structure"` + + // 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. // // Name is a required field - Name *string `locationName:"name" type:"string" required:"true" enum:"AggregatedUtterancesFilterName"` + Name *string `locationName:"name" type:"string" required:"true" enum:"AnalyticsUtteranceFilterName"` - // The operator to use for the filter. Specify EQ when the ListAggregatedUtterances - // operation should return only utterances that equal the specified value. Specify - // CO when the ListAggregatedUtterances operation should return utterances that - // contain the specified value. + // The operation by which to filter the category. The following operations are + // possible: + // + // * CO – Contains + // + // * EQ – Equals + // + // * GT – Greater than + // + // * LT – 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. // // Operator is a required field - Operator *string `locationName:"operator" type:"string" required:"true" enum:"AggregatedUtterancesFilterOperator"` + Operator *string `locationName:"operator" type:"string" required:"true" enum:"AnalyticsFilterOperator"` - // The value to use for filtering the list of bots. + // 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 or CO. If you provide multiple values, you filter for results that equal/contain + // any of the values. For example, if the name, operator, and values fields + // are Modality, EQ, and [Speech, Text], the operation filters for results where + // the modality was either Speech or Text. // // Values is a required field Values []*string `locationName:"values" min:"1" type:"list" required:"true"` @@ -9469,7 +12745,7 @@ type AggregatedUtterancesFilter struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AggregatedUtterancesFilter) String() string { +func (s AnalyticsUtteranceFilter) String() string { return awsutil.Prettify(s) } @@ -9478,13 +12754,13 @@ func (s AggregatedUtterancesFilter) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AggregatedUtterancesFilter) GoString() string { +func (s AnalyticsUtteranceFilter) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *AggregatedUtterancesFilter) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "AggregatedUtterancesFilter"} +func (s *AnalyticsUtteranceFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AnalyticsUtteranceFilter"} if s.Name == nil { invalidParams.Add(request.NewErrParamRequired("Name")) } @@ -9505,37 +12781,73 @@ func (s *AggregatedUtterancesFilter) Validate() error { } // SetName sets the Name field's value. -func (s *AggregatedUtterancesFilter) SetName(v string) *AggregatedUtterancesFilter { +func (s *AnalyticsUtteranceFilter) SetName(v string) *AnalyticsUtteranceFilter { s.Name = &v return s } // SetOperator sets the Operator field's value. -func (s *AggregatedUtterancesFilter) SetOperator(v string) *AggregatedUtterancesFilter { +func (s *AnalyticsUtteranceFilter) SetOperator(v string) *AnalyticsUtteranceFilter { s.Operator = &v return s } // SetValues sets the Values field's value. -func (s *AggregatedUtterancesFilter) SetValues(v []*string) *AggregatedUtterancesFilter { +func (s *AnalyticsUtteranceFilter) SetValues(v []*string) *AnalyticsUtteranceFilter { s.Values = v return s } -// Specifies attributes for sorting a list of utterances. -type AggregatedUtterancesSortBy struct { +// Contains the category by which the utterance analytics were grouped and the +// values for that category. +type AnalyticsUtteranceGroupByKey struct { _ struct{} `type:"structure"` - // The utterance attribute to sort by. - // - // Attribute is a required field - Attribute *string `locationName:"attribute" type:"string" required:"true" enum:"AggregatedUtterancesSortAttribute"` + // The category by which the utterance analytics were grouped. + Name *string `locationName:"name" type:"string" enum:"AnalyticsUtteranceField"` - // Specifies whether to sort the aggregated utterances in ascending or descending - // order. + // A member of the category by which the utterance analytics were grouped. + Value *string `locationName:"value" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsUtteranceGroupByKey) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsUtteranceGroupByKey) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *AnalyticsUtteranceGroupByKey) SetName(v string) *AnalyticsUtteranceGroupByKey { + s.Name = &v + return s +} + +// SetValue sets the Value field's value. +func (s *AnalyticsUtteranceGroupByKey) SetValue(v string) *AnalyticsUtteranceGroupByKey { + s.Value = &v + return s +} + +// Contains the category by which to group the utterances. +type AnalyticsUtteranceGroupBySpecification struct { + _ struct{} `type:"structure"` + + // Specifies whether to group the utterances by their text or their state. // - // Order is a required field - Order *string `locationName:"order" type:"string" required:"true" enum:"SortOrder"` + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true" enum:"AnalyticsUtteranceField"` } // String returns the string representation. @@ -9543,7 +12855,7 @@ type AggregatedUtterancesSortBy struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AggregatedUtterancesSortBy) String() string { +func (s AnalyticsUtteranceGroupBySpecification) String() string { return awsutil.Prettify(s) } @@ -9552,18 +12864,15 @@ func (s AggregatedUtterancesSortBy) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AggregatedUtterancesSortBy) GoString() string { +func (s AnalyticsUtteranceGroupBySpecification) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *AggregatedUtterancesSortBy) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "AggregatedUtterancesSortBy"} - if s.Attribute == nil { - invalidParams.Add(request.NewErrParamRequired("Attribute")) - } - if s.Order == nil { - invalidParams.Add(request.NewErrParamRequired("Order")) +func (s *AnalyticsUtteranceGroupBySpecification) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AnalyticsUtteranceGroupBySpecification"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) } if invalidParams.Len() > 0 { @@ -9572,51 +12881,45 @@ func (s *AggregatedUtterancesSortBy) Validate() error { return nil } -// SetAttribute sets the Attribute field's value. -func (s *AggregatedUtterancesSortBy) SetAttribute(v string) *AggregatedUtterancesSortBy { - s.Attribute = &v - return s -} - -// SetOrder sets the Order field's value. -func (s *AggregatedUtterancesSortBy) SetOrder(v string) *AggregatedUtterancesSortBy { - s.Order = &v +// SetName sets the Name field's value. +func (s *AnalyticsUtteranceGroupBySpecification) SetName(v string) *AnalyticsUtteranceGroupBySpecification { + s.Name = &v return s } -// Provides summary information for aggregated utterances. The ListAggregatedUtterances -// operations combines all instances of the same utterance into a single aggregated -// summary. -type AggregatedUtterancesSummary struct { +// 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. +type AnalyticsUtteranceMetric struct { _ struct{} `type:"structure"` - // Aggregated utterance data may contain utterances from versions of your bot - // that have since been deleted. When the aggregated contains this kind of data, - // this field is set to true. - ContainsDataFromDeletedResources *bool `locationName:"containsDataFromDeletedResources" type:"boolean"` - - // The number of times that the utterance was detected by Amazon Lex during - // the time period. When an utterance is detected, it activates an intent or - // a slot. - HitCount *int64 `locationName:"hitCount" type:"integer"` - - // The number of times that the utterance was missed by Amazon Lex An utterance - // is missed when it doesn't activate an intent or slot. - MissedCount *int64 `locationName:"missedCount" type:"integer"` - - // The text of the utterance. If the utterance was used with the RecognizeUtterance - // operation, the text is the transcription of the audio utterance. - Utterance *string `locationName:"utterance" type:"string"` + // 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. + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true" enum:"AnalyticsUtteranceMetricName"` - // The date and time that the utterance was first recorded in the time window - // for aggregation. An utterance may have been sent to Amazon Lex before that - // time, but only utterances within the time window are counted. - UtteranceFirstRecordedInAggregationDuration *time.Time `locationName:"utteranceFirstRecordedInAggregationDuration" type:"timestamp"` + // Specifies whether to sort the results in ascending or descending order. + Order *string `locationName:"order" type:"string" enum:"AnalyticsSortOrder"` - // The last date and time that an utterance was recorded in the time window - // for aggregation. An utterance may be sent to Amazon Lex after that time, - // but only utterances within the time window are counted. - UtteranceLastRecordedInAggregationDuration *time.Time `locationName:"utteranceLastRecordedInAggregationDuration" type:"timestamp"` + // The summary statistic to calculate. + // + // * Sum – The total count for the category you provide in name. + // + // * Average – The total count divided by the number of utterances in the + // category you provide in name. + // + // * Max – The highest count in the category you provide in name. + // + // Statistic is a required field + Statistic *string `locationName:"statistic" type:"string" required:"true" enum:"AnalyticsMetricStatistic"` } // String returns the string representation. @@ -9624,7 +12927,7 @@ type AggregatedUtterancesSummary struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AggregatedUtterancesSummary) String() string { +func (s AnalyticsUtteranceMetric) String() string { return awsutil.Prettify(s) } @@ -9633,59 +12936,130 @@ func (s AggregatedUtterancesSummary) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AggregatedUtterancesSummary) GoString() string { +func (s AnalyticsUtteranceMetric) GoString() string { return s.String() } -// SetContainsDataFromDeletedResources sets the ContainsDataFromDeletedResources field's value. -func (s *AggregatedUtterancesSummary) SetContainsDataFromDeletedResources(v bool) *AggregatedUtterancesSummary { - s.ContainsDataFromDeletedResources = &v +// Validate inspects the fields of the type to determine if they are valid. +func (s *AnalyticsUtteranceMetric) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AnalyticsUtteranceMetric"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Statistic == nil { + invalidParams.Add(request.NewErrParamRequired("Statistic")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *AnalyticsUtteranceMetric) SetName(v string) *AnalyticsUtteranceMetric { + s.Name = &v return s } -// SetHitCount sets the HitCount field's value. -func (s *AggregatedUtterancesSummary) SetHitCount(v int64) *AggregatedUtterancesSummary { - s.HitCount = &v +// SetOrder sets the Order field's value. +func (s *AnalyticsUtteranceMetric) SetOrder(v string) *AnalyticsUtteranceMetric { + s.Order = &v return s } -// SetMissedCount sets the MissedCount field's value. -func (s *AggregatedUtterancesSummary) SetMissedCount(v int64) *AggregatedUtterancesSummary { - s.MissedCount = &v +// SetStatistic sets the Statistic field's value. +func (s *AnalyticsUtteranceMetric) SetStatistic(v string) *AnalyticsUtteranceMetric { + s.Statistic = &v return s } -// SetUtterance sets the Utterance field's value. -func (s *AggregatedUtterancesSummary) SetUtterance(v string) *AggregatedUtterancesSummary { - s.Utterance = &v +// An object containing the results for the utterance metric you requested. +type AnalyticsUtteranceMetricResult struct { + _ struct{} `type:"structure"` + + // 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. + Name *string `locationName:"name" type:"string" enum:"AnalyticsUtteranceMetricName"` + + // The summary statistic that you requested to calculate. + // + // * Sum – The total count for the category you provide in name. + // + // * Average – The total count divided by the number of utterances in the + // category you provide in name. + // + // * Max – The highest count in the category you provide in name. + Statistic *string `locationName:"statistic" type:"string" enum:"AnalyticsMetricStatistic"` + + // The value of the summary statistic for the metric that you requested. + Value *float64 `locationName:"value" type:"double"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsUtteranceMetricResult) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s AnalyticsUtteranceMetricResult) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *AnalyticsUtteranceMetricResult) SetName(v string) *AnalyticsUtteranceMetricResult { + s.Name = &v return s } -// SetUtteranceFirstRecordedInAggregationDuration sets the UtteranceFirstRecordedInAggregationDuration field's value. -func (s *AggregatedUtterancesSummary) SetUtteranceFirstRecordedInAggregationDuration(v time.Time) *AggregatedUtterancesSummary { - s.UtteranceFirstRecordedInAggregationDuration = &v +// SetStatistic sets the Statistic field's value. +func (s *AnalyticsUtteranceMetricResult) SetStatistic(v string) *AnalyticsUtteranceMetricResult { + s.Statistic = &v return s } -// SetUtteranceLastRecordedInAggregationDuration sets the UtteranceLastRecordedInAggregationDuration field's value. -func (s *AggregatedUtterancesSummary) SetUtteranceLastRecordedInAggregationDuration(v time.Time) *AggregatedUtterancesSummary { - s.UtteranceLastRecordedInAggregationDuration = &v +// SetValue sets the Value field's value. +func (s *AnalyticsUtteranceMetricResult) SetValue(v float64) *AnalyticsUtteranceMetricResult { + s.Value = &v return s } -// Specifies the allowed input types. -type AllowedInputTypes struct { +// An object containing the results for the utterance metrics you requested +// and the bin and/or group(s) they refer to, if applicable. +type AnalyticsUtteranceResult struct { _ struct{} `type:"structure"` - // Indicates whether audio input is allowed. - // - // AllowAudioInput is a required field - AllowAudioInput *bool `locationName:"allowAudioInput" type:"boolean" required:"true"` + // A list of objects containing information about the last used intent at the + // time of an utterance. + AttributeResults []*AnalyticsUtteranceAttributeResult `locationName:"attributeResults" type:"list"` - // Indicates whether DTMF input is allowed. - // - // AllowDTMFInput is a required field - AllowDTMFInput *bool `locationName:"allowDTMFInput" type:"boolean" required:"true"` + // A list of objects containing the criteria you requested for binning results + // and the values of the bins. + BinKeys []*AnalyticsBinKey `locationName:"binKeys" min:"1" type:"list"` + + // A list of objects containing the criteria you requested for grouping results + // and the values of the bins. + GroupByKeys []*AnalyticsUtteranceGroupByKey `locationName:"groupByKeys" type:"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. + MetricsResults []*AnalyticsUtteranceMetricResult `locationName:"metricsResults" type:"list"` } // String returns the string representation. @@ -9693,7 +13067,7 @@ type AllowedInputTypes struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AllowedInputTypes) String() string { +func (s AnalyticsUtteranceResult) String() string { return awsutil.Prettify(s) } @@ -9702,35 +13076,31 @@ func (s AllowedInputTypes) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s AllowedInputTypes) GoString() string { +func (s AnalyticsUtteranceResult) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *AllowedInputTypes) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "AllowedInputTypes"} - if s.AllowAudioInput == nil { - invalidParams.Add(request.NewErrParamRequired("AllowAudioInput")) - } - if s.AllowDTMFInput == nil { - invalidParams.Add(request.NewErrParamRequired("AllowDTMFInput")) - } +// SetAttributeResults sets the AttributeResults field's value. +func (s *AnalyticsUtteranceResult) SetAttributeResults(v []*AnalyticsUtteranceAttributeResult) *AnalyticsUtteranceResult { + s.AttributeResults = v + return s +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetBinKeys sets the BinKeys field's value. +func (s *AnalyticsUtteranceResult) SetBinKeys(v []*AnalyticsBinKey) *AnalyticsUtteranceResult { + s.BinKeys = v + return s } -// SetAllowAudioInput sets the AllowAudioInput field's value. -func (s *AllowedInputTypes) SetAllowAudioInput(v bool) *AllowedInputTypes { - s.AllowAudioInput = &v +// SetGroupByKeys sets the GroupByKeys field's value. +func (s *AnalyticsUtteranceResult) SetGroupByKeys(v []*AnalyticsUtteranceGroupByKey) *AnalyticsUtteranceResult { + s.GroupByKeys = v return s } -// SetAllowDTMFInput sets the AllowDTMFInput field's value. -func (s *AllowedInputTypes) SetAllowDTMFInput(v bool) *AllowedInputTypes { - s.AllowDTMFInput = &v +// SetMetricsResults sets the MetricsResults field's value. +func (s *AnalyticsUtteranceResult) SetMetricsResults(v []*AnalyticsUtteranceMetricResult) *AnalyticsUtteranceResult { + s.MetricsResults = v return s } @@ -25077,6 +28447,38 @@ func (s *InternalServerException) RequestID() string { return s.RespMetadata.RequestID } +// An object containing the name of an intent that was invoked. +type InvokedIntentSample struct { + _ struct{} `type:"structure"` + + // The name of an intent that was invoked. + IntentName *string `locationName:"intentName" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvokedIntentSample) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s InvokedIntentSample) GoString() string { + return s.String() +} + +// SetIntentName sets the IntentName field's value. +func (s *InvokedIntentSample) SetIntentName(v string) *InvokedIntentSample { + s.IntentName = &v + return s +} + // Provides configuration information for the AMAZON.KendraSearchIntent intent. // When you use this intent, Amazon Lex searches the specified Amazon Kendra // index and returns documents from the index that match the user's utterance. @@ -27031,59 +30433,713 @@ func (s *ListExportsOutput) SetBotVersion(v string) *ListExportsOutput { return s } -// SetExportSummaries sets the ExportSummaries field's value. -func (s *ListExportsOutput) SetExportSummaries(v []*ExportSummary) *ListExportsOutput { - s.ExportSummaries = v - return s +// SetExportSummaries sets the ExportSummaries field's value. +func (s *ListExportsOutput) SetExportSummaries(v []*ExportSummary) *ListExportsOutput { + s.ExportSummaries = v + return s +} + +// SetLocaleId sets the LocaleId field's value. +func (s *ListExportsOutput) SetLocaleId(v string) *ListExportsOutput { + s.LocaleId = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListExportsOutput) SetNextToken(v string) *ListExportsOutput { + s.NextToken = &v + return s +} + +type ListImportsInput struct { + _ struct{} `type:"structure"` + + // The unique identifier that Amazon Lex assigned to the bot. + BotId *string `locationName:"botId" min:"10" type:"string"` + + // The version of the bot to list imports for. + BotVersion *string `locationName:"botVersion" min:"5" type:"string"` + + // Provides the specification of a filter used to limit the bots in the response + // to only those that match the filter specification. You can only specify one + // filter and one string to filter on. + Filters []*ImportFilter `locationName:"filters" min:"1" type:"list"` + + // Specifies the locale that should be present in the list. If you don't specify + // a resource type in the filters parameter, the list contains both bot locales + // and custom vocabularies. + LocaleId *string `locationName:"localeId" type:"string"` + + // The maximum number of imports to return in each page of results. If there + // are fewer results than the max page size, only the actual number of results + // are returned. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // If the response from the ListImports 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 ListImports request + // to return the next page of results. For a complete set of results, call the + // ListImports operation until the nextToken returned in the response is null. + NextToken *string `locationName:"nextToken" type:"string"` + + // Determines the field that the list of imports is sorted by. You can sort + // by the LastUpdatedDateTime field in ascending or descending order. + SortBy *ImportSortBy `locationName:"sortBy" type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListImportsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListImportsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListImportsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListImportsInput"} + if s.BotId != nil && len(*s.BotId) < 10 { + invalidParams.Add(request.NewErrParamMinLen("BotId", 10)) + } + if s.BotVersion != nil && len(*s.BotVersion) < 5 { + invalidParams.Add(request.NewErrParamMinLen("BotVersion", 5)) + } + if s.Filters != nil && len(s.Filters) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Filters", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.Filters != nil { + for i, v := range s.Filters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) + } + } + } + if s.SortBy != nil { + if err := s.SortBy.Validate(); err != nil { + invalidParams.AddNested("SortBy", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBotId sets the BotId field's value. +func (s *ListImportsInput) SetBotId(v string) *ListImportsInput { + s.BotId = &v + return s +} + +// SetBotVersion sets the BotVersion field's value. +func (s *ListImportsInput) SetBotVersion(v string) *ListImportsInput { + s.BotVersion = &v + return s +} + +// SetFilters sets the Filters field's value. +func (s *ListImportsInput) SetFilters(v []*ImportFilter) *ListImportsInput { + s.Filters = v + return s +} + +// SetLocaleId sets the LocaleId field's value. +func (s *ListImportsInput) SetLocaleId(v string) *ListImportsInput { + s.LocaleId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListImportsInput) SetMaxResults(v int64) *ListImportsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListImportsInput) SetNextToken(v string) *ListImportsInput { + s.NextToken = &v + return s +} + +// SetSortBy sets the SortBy field's value. +func (s *ListImportsInput) SetSortBy(v *ImportSortBy) *ListImportsInput { + s.SortBy = v + return s +} + +type ListImportsOutput struct { + _ struct{} `type:"structure"` + + // The unique identifier assigned by Amazon Lex to the bot. + BotId *string `locationName:"botId" min:"10" type:"string"` + + // The version of the bot that was imported. It will always be DRAFT. + BotVersion *string `locationName:"botVersion" min:"5" type:"string"` + + // Summary information for the imports that meet the filter criteria specified + // in the request. The length of the list is specified in the maxResults parameter. + // If there are more imports available, the nextToken field contains a token + // to get the next page of results. + ImportSummaries []*ImportSummary `locationName:"importSummaries" type:"list"` + + // The locale specified in the request. + LocaleId *string `locationName:"localeId" type:"string"` + + // A token that indicates whether there are more results to return in a response + // to the ListImports operation. If the nextToken field is present, you send + // the contents as the nextToken parameter of a ListImports operation request + // to get the next page of results. + NextToken *string `locationName:"nextToken" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListImportsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListImportsOutput) GoString() string { + return s.String() +} + +// SetBotId sets the BotId field's value. +func (s *ListImportsOutput) SetBotId(v string) *ListImportsOutput { + s.BotId = &v + return s +} + +// SetBotVersion sets the BotVersion field's value. +func (s *ListImportsOutput) SetBotVersion(v string) *ListImportsOutput { + s.BotVersion = &v + return s +} + +// SetImportSummaries sets the ImportSummaries field's value. +func (s *ListImportsOutput) SetImportSummaries(v []*ImportSummary) *ListImportsOutput { + s.ImportSummaries = v + return s +} + +// SetLocaleId sets the LocaleId field's value. +func (s *ListImportsOutput) SetLocaleId(v string) *ListImportsOutput { + s.LocaleId = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListImportsOutput) SetNextToken(v string) *ListImportsOutput { + s.NextToken = &v + return s +} + +type ListIntentMetricsInput struct { + _ struct{} `type:"structure"` + + // A list of objects, each of which contains specifications for organizing the + // results by time. + BinBy []*AnalyticsBinBySpecification `locationName:"binBy" min:"1" type:"list"` + + // The identifier for the bot for which you want to retrieve intent metrics. + // + // BotId is a required field + BotId *string `location:"uri" locationName:"botId" min:"10" type:"string" required:"true"` + + // The date and time that marks the end of the range of time for which you want + // to see intent metrics. + // + // EndDateTime is a required field + EndDateTime *time.Time `locationName:"endDateTime" type:"timestamp" required:"true"` + + // A list of objects, each of which describes a condition by which you want + // to filter the results. + Filters []*AnalyticsIntentFilter `locationName:"filters" min:"1" type:"list"` + + // 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 (https://docs.aws.amazon.com/analytics-key-definitions-intents) + // in the user guide. + GroupBy []*AnalyticsIntentGroupBySpecification `locationName:"groupBy" min:"1" type:"list"` + + // 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. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // 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. + // + // Metrics is a required field + Metrics []*AnalyticsIntentMetric `locationName:"metrics" min:"1" type:"list" required:"true"` + + // 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. + NextToken *string `locationName:"nextToken" type:"string"` + + // The timestamp that marks the beginning of the range of time for which you + // want to see intent metrics. + // + // StartDateTime is a required field + StartDateTime *time.Time `locationName:"startDateTime" type:"timestamp" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListIntentMetricsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListIntentMetricsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListIntentMetricsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListIntentMetricsInput"} + if s.BinBy != nil && len(s.BinBy) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BinBy", 1)) + } + if s.BotId == nil { + invalidParams.Add(request.NewErrParamRequired("BotId")) + } + if s.BotId != nil && len(*s.BotId) < 10 { + invalidParams.Add(request.NewErrParamMinLen("BotId", 10)) + } + if s.EndDateTime == nil { + invalidParams.Add(request.NewErrParamRequired("EndDateTime")) + } + if s.Filters != nil && len(s.Filters) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Filters", 1)) + } + if s.GroupBy != nil && len(s.GroupBy) < 1 { + invalidParams.Add(request.NewErrParamMinLen("GroupBy", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.Metrics == nil { + invalidParams.Add(request.NewErrParamRequired("Metrics")) + } + if s.Metrics != nil && len(s.Metrics) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Metrics", 1)) + } + if s.StartDateTime == nil { + invalidParams.Add(request.NewErrParamRequired("StartDateTime")) + } + if s.BinBy != nil { + for i, v := range s.BinBy { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "BinBy", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Filters != nil { + for i, v := range s.Filters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) + } + } + } + if s.GroupBy != nil { + for i, v := range s.GroupBy { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "GroupBy", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Metrics != nil { + for i, v := range s.Metrics { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Metrics", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBinBy sets the BinBy field's value. +func (s *ListIntentMetricsInput) SetBinBy(v []*AnalyticsBinBySpecification) *ListIntentMetricsInput { + s.BinBy = v + return s +} + +// SetBotId sets the BotId field's value. +func (s *ListIntentMetricsInput) SetBotId(v string) *ListIntentMetricsInput { + s.BotId = &v + return s +} + +// SetEndDateTime sets the EndDateTime field's value. +func (s *ListIntentMetricsInput) SetEndDateTime(v time.Time) *ListIntentMetricsInput { + s.EndDateTime = &v + return s +} + +// SetFilters sets the Filters field's value. +func (s *ListIntentMetricsInput) SetFilters(v []*AnalyticsIntentFilter) *ListIntentMetricsInput { + s.Filters = v + return s +} + +// SetGroupBy sets the GroupBy field's value. +func (s *ListIntentMetricsInput) SetGroupBy(v []*AnalyticsIntentGroupBySpecification) *ListIntentMetricsInput { + s.GroupBy = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListIntentMetricsInput) SetMaxResults(v int64) *ListIntentMetricsInput { + s.MaxResults = &v + return s +} + +// SetMetrics sets the Metrics field's value. +func (s *ListIntentMetricsInput) SetMetrics(v []*AnalyticsIntentMetric) *ListIntentMetricsInput { + s.Metrics = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListIntentMetricsInput) SetNextToken(v string) *ListIntentMetricsInput { + s.NextToken = &v + return s +} + +// SetStartDateTime sets the StartDateTime field's value. +func (s *ListIntentMetricsInput) SetStartDateTime(v time.Time) *ListIntentMetricsInput { + s.StartDateTime = &v + return s +} + +type ListIntentMetricsOutput struct { + _ struct{} `type:"structure"` + + // The identifier for the bot for which you retrieved intent metrics. + BotId *string `locationName:"botId" min:"10" type:"string"` + + // 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. + NextToken *string `locationName:"nextToken" type:"string"` + + // The results for the intent metrics. + Results []*AnalyticsIntentResult `locationName:"results" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListIntentMetricsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListIntentMetricsOutput) GoString() string { + return s.String() +} + +// SetBotId sets the BotId field's value. +func (s *ListIntentMetricsOutput) SetBotId(v string) *ListIntentMetricsOutput { + s.BotId = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListIntentMetricsOutput) SetNextToken(v string) *ListIntentMetricsOutput { + s.NextToken = &v + return s +} + +// SetResults sets the Results field's value. +func (s *ListIntentMetricsOutput) SetResults(v []*AnalyticsIntentResult) *ListIntentMetricsOutput { + s.Results = v + return s +} + +type ListIntentPathsInput struct { + _ struct{} `type:"structure"` + + // The identifier for the bot for which you want to retrieve intent path metrics. + // + // BotId is a required field + BotId *string `location:"uri" locationName:"botId" min:"10" type:"string" required:"true"` + + // The date and time that marks the end of the range of time for which you want + // to see intent path metrics. + // + // EndDateTime is a required field + EndDateTime *time.Time `locationName:"endDateTime" type:"timestamp" required:"true"` + + // A list of objects, each describes a condition by which you want to filter + // the results. + Filters []*AnalyticsPathFilter `locationName:"filters" min:"1" type:"list"` + + // The intent path for which you want to retrieve metrics. Use a forward slash + // to separate intents in the path. For example: + // + // * /BookCar + // + // * /BookCar/BookHotel + // + // * /BookHotel/BookCar + // + // IntentPath is a required field + IntentPath *string `locationName:"intentPath" min:"1" type:"string" required:"true"` + + // The date and time that marks the beginning of the range of time for which + // you want to see intent path metrics. + // + // StartDateTime is a required field + StartDateTime *time.Time `locationName:"startDateTime" type:"timestamp" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListIntentPathsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListIntentPathsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListIntentPathsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListIntentPathsInput"} + if s.BotId == nil { + invalidParams.Add(request.NewErrParamRequired("BotId")) + } + if s.BotId != nil && len(*s.BotId) < 10 { + invalidParams.Add(request.NewErrParamMinLen("BotId", 10)) + } + if s.EndDateTime == nil { + invalidParams.Add(request.NewErrParamRequired("EndDateTime")) + } + if s.Filters != nil && len(s.Filters) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Filters", 1)) + } + if s.IntentPath == nil { + invalidParams.Add(request.NewErrParamRequired("IntentPath")) + } + if s.IntentPath != nil && len(*s.IntentPath) < 1 { + invalidParams.Add(request.NewErrParamMinLen("IntentPath", 1)) + } + if s.StartDateTime == nil { + invalidParams.Add(request.NewErrParamRequired("StartDateTime")) + } + if s.Filters != nil { + for i, v := range s.Filters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBotId sets the BotId field's value. +func (s *ListIntentPathsInput) SetBotId(v string) *ListIntentPathsInput { + s.BotId = &v + return s +} + +// SetEndDateTime sets the EndDateTime field's value. +func (s *ListIntentPathsInput) SetEndDateTime(v time.Time) *ListIntentPathsInput { + s.EndDateTime = &v + return s +} + +// SetFilters sets the Filters field's value. +func (s *ListIntentPathsInput) SetFilters(v []*AnalyticsPathFilter) *ListIntentPathsInput { + s.Filters = v + return s +} + +// SetIntentPath sets the IntentPath field's value. +func (s *ListIntentPathsInput) SetIntentPath(v string) *ListIntentPathsInput { + s.IntentPath = &v + return s +} + +// SetStartDateTime sets the StartDateTime field's value. +func (s *ListIntentPathsInput) SetStartDateTime(v time.Time) *ListIntentPathsInput { + s.StartDateTime = &v + return s +} + +type ListIntentPathsOutput struct { + _ struct{} `type:"structure"` + + // A list of objects, each of which contains information about a node in the + // intent path for which you requested metrics. + NodeSummaries []*AnalyticsIntentNodeSummary `locationName:"nodeSummaries" min:"1" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListIntentPathsOutput) String() string { + return awsutil.Prettify(s) } -// SetLocaleId sets the LocaleId field's value. -func (s *ListExportsOutput) SetLocaleId(v string) *ListExportsOutput { - s.LocaleId = &v - return s +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListIntentPathsOutput) GoString() string { + return s.String() } -// SetNextToken sets the NextToken field's value. -func (s *ListExportsOutput) SetNextToken(v string) *ListExportsOutput { - s.NextToken = &v +// SetNodeSummaries sets the NodeSummaries field's value. +func (s *ListIntentPathsOutput) SetNodeSummaries(v []*AnalyticsIntentNodeSummary) *ListIntentPathsOutput { + s.NodeSummaries = v return s } -type ListImportsInput struct { +type ListIntentStageMetricsInput struct { _ struct{} `type:"structure"` - // The unique identifier that Amazon Lex assigned to the bot. - BotId *string `locationName:"botId" min:"10" type:"string"` + // A list of objects, each of which contains specifications for organizing the + // results by time. + BinBy []*AnalyticsBinBySpecification `locationName:"binBy" min:"1" type:"list"` - // The version of the bot to list imports for. - BotVersion *string `locationName:"botVersion" min:"5" type:"string"` + // The identifier for the bot for which you want to retrieve intent stage metrics. + // + // BotId is a required field + BotId *string `location:"uri" locationName:"botId" min:"10" type:"string" required:"true"` - // Provides the specification of a filter used to limit the bots in the response - // to only those that match the filter specification. You can only specify one - // filter and one string to filter on. - Filters []*ImportFilter `locationName:"filters" min:"1" type:"list"` + // The date and time that marks the end of the range of time for which you want + // to see intent stage metrics. + // + // EndDateTime is a required field + EndDateTime *time.Time `locationName:"endDateTime" type:"timestamp" required:"true"` - // Specifies the locale that should be present in the list. If you don't specify - // a resource type in the filters parameter, the list contains both bot locales - // and custom vocabularies. - LocaleId *string `locationName:"localeId" type:"string"` + // A list of objects, each of which describes a condition by which you want + // to filter the results. + Filters []*AnalyticsIntentStageFilter `locationName:"filters" min:"1" type:"list"` - // The maximum number of imports to return in each page of results. If there - // are fewer results than the max page size, only the actual number of results + // A list of objects, each of which specifies how to group the results. You + // can group by the following criteria: + // + // * IntentStageName – The name of the intent stage. + // + // * SwitchedToIntent – The intent to which the conversation was switched + // (if any). + GroupBy []*AnalyticsIntentStageGroupBySpecification `locationName:"groupBy" min:"1" type:"list"` + + // 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. MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` - // If the response from the ListImports operation contains more results than - // specified in the maxResults parameter, a token is returned in the response. + // 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. // - // Use the returned token in the nextToken parameter of a ListImports request - // to return the next page of results. For a complete set of results, call the - // ListImports operation until the nextToken returned in the response is null. + // Metrics is a required field + Metrics []*AnalyticsIntentStageMetric `locationName:"metrics" min:"1" type:"list" required:"true"` + + // If the response from the ListIntentStageMetrics 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 ListIntentStageMetrics + // request to return the next page of results. For a complete set of results, + // call the ListIntentStageMetrics operation until the nextToken returned in + // the response is null. NextToken *string `locationName:"nextToken" type:"string"` - // Determines the field that the list of imports is sorted by. You can sort - // by the LastUpdatedDateTime field in ascending or descending order. - SortBy *ImportSortBy `locationName:"sortBy" type:"structure"` + // The date and time that marks the beginning of the range of time for which + // you want to see intent stage metrics. + // + // StartDateTime is a required field + StartDateTime *time.Time `locationName:"startDateTime" type:"timestamp" required:"true"` } // String returns the string representation. @@ -27091,7 +31147,7 @@ type ListImportsInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListImportsInput) String() string { +func (s ListIntentStageMetricsInput) String() string { return awsutil.Prettify(s) } @@ -27100,25 +31156,53 @@ func (s ListImportsInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListImportsInput) GoString() string { +func (s ListIntentStageMetricsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListImportsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListImportsInput"} +func (s *ListIntentStageMetricsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListIntentStageMetricsInput"} + if s.BinBy != nil && len(s.BinBy) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BinBy", 1)) + } + if s.BotId == nil { + invalidParams.Add(request.NewErrParamRequired("BotId")) + } if s.BotId != nil && len(*s.BotId) < 10 { invalidParams.Add(request.NewErrParamMinLen("BotId", 10)) } - if s.BotVersion != nil && len(*s.BotVersion) < 5 { - invalidParams.Add(request.NewErrParamMinLen("BotVersion", 5)) + if s.EndDateTime == nil { + invalidParams.Add(request.NewErrParamRequired("EndDateTime")) } if s.Filters != nil && len(s.Filters) < 1 { invalidParams.Add(request.NewErrParamMinLen("Filters", 1)) } + if s.GroupBy != nil && len(s.GroupBy) < 1 { + invalidParams.Add(request.NewErrParamMinLen("GroupBy", 1)) + } if s.MaxResults != nil && *s.MaxResults < 1 { invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } + if s.Metrics == nil { + invalidParams.Add(request.NewErrParamRequired("Metrics")) + } + if s.Metrics != nil && len(s.Metrics) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Metrics", 1)) + } + if s.StartDateTime == nil { + invalidParams.Add(request.NewErrParamRequired("StartDateTime")) + } + if s.BinBy != nil { + for i, v := range s.BinBy { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "BinBy", i), err.(request.ErrInvalidParams)) + } + } + } if s.Filters != nil { for i, v := range s.Filters { if v == nil { @@ -27129,9 +31213,24 @@ func (s *ListImportsInput) Validate() error { } } } - if s.SortBy != nil { - if err := s.SortBy.Validate(); err != nil { - invalidParams.AddNested("SortBy", err.(request.ErrInvalidParams)) + if s.GroupBy != nil { + for i, v := range s.GroupBy { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "GroupBy", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Metrics != nil { + for i, v := range s.Metrics { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Metrics", i), err.(request.ErrInvalidParams)) + } } } @@ -27141,71 +31240,77 @@ func (s *ListImportsInput) Validate() error { return nil } +// SetBinBy sets the BinBy field's value. +func (s *ListIntentStageMetricsInput) SetBinBy(v []*AnalyticsBinBySpecification) *ListIntentStageMetricsInput { + s.BinBy = v + return s +} + // SetBotId sets the BotId field's value. -func (s *ListImportsInput) SetBotId(v string) *ListImportsInput { +func (s *ListIntentStageMetricsInput) SetBotId(v string) *ListIntentStageMetricsInput { s.BotId = &v return s } -// SetBotVersion sets the BotVersion field's value. -func (s *ListImportsInput) SetBotVersion(v string) *ListImportsInput { - s.BotVersion = &v +// SetEndDateTime sets the EndDateTime field's value. +func (s *ListIntentStageMetricsInput) SetEndDateTime(v time.Time) *ListIntentStageMetricsInput { + s.EndDateTime = &v return s } // SetFilters sets the Filters field's value. -func (s *ListImportsInput) SetFilters(v []*ImportFilter) *ListImportsInput { +func (s *ListIntentStageMetricsInput) SetFilters(v []*AnalyticsIntentStageFilter) *ListIntentStageMetricsInput { s.Filters = v return s } -// SetLocaleId sets the LocaleId field's value. -func (s *ListImportsInput) SetLocaleId(v string) *ListImportsInput { - s.LocaleId = &v +// SetGroupBy sets the GroupBy field's value. +func (s *ListIntentStageMetricsInput) SetGroupBy(v []*AnalyticsIntentStageGroupBySpecification) *ListIntentStageMetricsInput { + s.GroupBy = v return s } // SetMaxResults sets the MaxResults field's value. -func (s *ListImportsInput) SetMaxResults(v int64) *ListImportsInput { +func (s *ListIntentStageMetricsInput) SetMaxResults(v int64) *ListIntentStageMetricsInput { s.MaxResults = &v return s } +// SetMetrics sets the Metrics field's value. +func (s *ListIntentStageMetricsInput) SetMetrics(v []*AnalyticsIntentStageMetric) *ListIntentStageMetricsInput { + s.Metrics = v + return s +} + // SetNextToken sets the NextToken field's value. -func (s *ListImportsInput) SetNextToken(v string) *ListImportsInput { +func (s *ListIntentStageMetricsInput) SetNextToken(v string) *ListIntentStageMetricsInput { s.NextToken = &v return s } -// SetSortBy sets the SortBy field's value. -func (s *ListImportsInput) SetSortBy(v *ImportSortBy) *ListImportsInput { - s.SortBy = v +// SetStartDateTime sets the StartDateTime field's value. +func (s *ListIntentStageMetricsInput) SetStartDateTime(v time.Time) *ListIntentStageMetricsInput { + s.StartDateTime = &v return s } -type ListImportsOutput struct { +type ListIntentStageMetricsOutput struct { _ struct{} `type:"structure"` - // The unique identifier assigned by Amazon Lex to the bot. + // The identifier for the bot for which you retrieved intent stage metrics. BotId *string `locationName:"botId" min:"10" type:"string"` - // The version of the bot that was imported. It will always be DRAFT. - BotVersion *string `locationName:"botVersion" min:"5" type:"string"` - - // Summary information for the imports that meet the filter criteria specified - // in the request. The length of the list is specified in the maxResults parameter. - // If there are more imports available, the nextToken field contains a token - // to get the next page of results. - ImportSummaries []*ImportSummary `locationName:"importSummaries" type:"list"` - - // The locale specified in the request. - LocaleId *string `locationName:"localeId" type:"string"` - - // A token that indicates whether there are more results to return in a response - // to the ListImports operation. If the nextToken field is present, you send - // the contents as the nextToken parameter of a ListImports operation request - // to get the next page of results. + // If the response from the ListIntentStageMetrics 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 ListIntentStageMetrics + // request to return the next page of results. For a complete set of results, + // call the ListIntentStageMetrics operation until the nextToken returned in + // the response is null. NextToken *string `locationName:"nextToken" type:"string"` + + // The results for the intent stage metrics. + Results []*AnalyticsIntentStageResult `locationName:"results" type:"list"` } // String returns the string representation. @@ -27213,7 +31318,7 @@ type ListImportsOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListImportsOutput) String() string { +func (s ListIntentStageMetricsOutput) String() string { return awsutil.Prettify(s) } @@ -27222,37 +31327,25 @@ func (s ListImportsOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListImportsOutput) GoString() string { +func (s ListIntentStageMetricsOutput) GoString() string { return s.String() } // SetBotId sets the BotId field's value. -func (s *ListImportsOutput) SetBotId(v string) *ListImportsOutput { +func (s *ListIntentStageMetricsOutput) SetBotId(v string) *ListIntentStageMetricsOutput { s.BotId = &v return s } -// SetBotVersion sets the BotVersion field's value. -func (s *ListImportsOutput) SetBotVersion(v string) *ListImportsOutput { - s.BotVersion = &v - return s -} - -// SetImportSummaries sets the ImportSummaries field's value. -func (s *ListImportsOutput) SetImportSummaries(v []*ImportSummary) *ListImportsOutput { - s.ImportSummaries = v - return s -} - -// SetLocaleId sets the LocaleId field's value. -func (s *ListImportsOutput) SetLocaleId(v string) *ListImportsOutput { - s.LocaleId = &v +// SetNextToken sets the NextToken field's value. +func (s *ListIntentStageMetricsOutput) SetNextToken(v string) *ListIntentStageMetricsOutput { + s.NextToken = &v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListImportsOutput) SetNextToken(v string) *ListImportsOutput { - s.NextToken = &v +// SetResults sets the Results field's value. +func (s *ListIntentStageMetricsOutput) SetResults(v []*AnalyticsIntentStageResult) *ListIntentStageMetricsOutput { + s.Results = v return s } @@ -27691,6 +31784,477 @@ func (s *ListRecommendedIntentsOutput) SetSummaryList(v []*RecommendedIntentSumm return s } +type ListSessionAnalyticsDataInput struct { + _ struct{} `type:"structure"` + + // The identifier for the bot for which you want to retrieve session analytics. + // + // BotId is a required field + BotId *string `location:"uri" locationName:"botId" min:"10" type:"string" required:"true"` + + // The date and time that marks the end of the range of time for which you want + // to see session analytics. + // + // EndDateTime is a required field + EndDateTime *time.Time `locationName:"endDateTime" type:"timestamp" required:"true"` + + // A list of objects, each of which describes a condition by which you want + // to filter the results. + Filters []*AnalyticsSessionFilter `locationName:"filters" min:"1" type:"list"` + + // 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. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // If the response from the ListSessionAnalyticsData 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 ListSessionAnalyticsData + // request to return the next page of results. For a complete set of results, + // call the ListSessionAnalyticsData operation until the nextToken returned + // in the response is null. + NextToken *string `locationName:"nextToken" type:"string"` + + // An object specifying the measure and method by which to sort the session + // analytics data. + SortBy *SessionDataSortBy `locationName:"sortBy" type:"structure"` + + // The date and time that marks the beginning of the range of time for which + // you want to see session analytics. + // + // StartDateTime is a required field + StartDateTime *time.Time `locationName:"startDateTime" type:"timestamp" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSessionAnalyticsDataInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSessionAnalyticsDataInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListSessionAnalyticsDataInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListSessionAnalyticsDataInput"} + if s.BotId == nil { + invalidParams.Add(request.NewErrParamRequired("BotId")) + } + if s.BotId != nil && len(*s.BotId) < 10 { + invalidParams.Add(request.NewErrParamMinLen("BotId", 10)) + } + if s.EndDateTime == nil { + invalidParams.Add(request.NewErrParamRequired("EndDateTime")) + } + if s.Filters != nil && len(s.Filters) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Filters", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.StartDateTime == nil { + invalidParams.Add(request.NewErrParamRequired("StartDateTime")) + } + if s.Filters != nil { + for i, v := range s.Filters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) + } + } + } + if s.SortBy != nil { + if err := s.SortBy.Validate(); err != nil { + invalidParams.AddNested("SortBy", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBotId sets the BotId field's value. +func (s *ListSessionAnalyticsDataInput) SetBotId(v string) *ListSessionAnalyticsDataInput { + s.BotId = &v + return s +} + +// SetEndDateTime sets the EndDateTime field's value. +func (s *ListSessionAnalyticsDataInput) SetEndDateTime(v time.Time) *ListSessionAnalyticsDataInput { + s.EndDateTime = &v + return s +} + +// SetFilters sets the Filters field's value. +func (s *ListSessionAnalyticsDataInput) SetFilters(v []*AnalyticsSessionFilter) *ListSessionAnalyticsDataInput { + s.Filters = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListSessionAnalyticsDataInput) SetMaxResults(v int64) *ListSessionAnalyticsDataInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListSessionAnalyticsDataInput) SetNextToken(v string) *ListSessionAnalyticsDataInput { + s.NextToken = &v + return s +} + +// SetSortBy sets the SortBy field's value. +func (s *ListSessionAnalyticsDataInput) SetSortBy(v *SessionDataSortBy) *ListSessionAnalyticsDataInput { + s.SortBy = v + return s +} + +// SetStartDateTime sets the StartDateTime field's value. +func (s *ListSessionAnalyticsDataInput) SetStartDateTime(v time.Time) *ListSessionAnalyticsDataInput { + s.StartDateTime = &v + return s +} + +type ListSessionAnalyticsDataOutput struct { + _ struct{} `type:"structure"` + + // The unique identifier of the bot that the sessions belong to. + BotId *string `locationName:"botId" min:"10" type:"string"` + + // If the response from the ListSessionAnalyticsData 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 ListSessionAnalyticsData + // request to return the next page of results. For a complete set of results, + // call the ListSessionAnalyticsData operation until the nextToken returned + // in the response is null. + NextToken *string `locationName:"nextToken" type:"string"` + + // A list of objects, each of which contains information about a session with + // the bot. + Sessions []*SessionSpecification `locationName:"sessions" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSessionAnalyticsDataOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSessionAnalyticsDataOutput) GoString() string { + return s.String() +} + +// SetBotId sets the BotId field's value. +func (s *ListSessionAnalyticsDataOutput) SetBotId(v string) *ListSessionAnalyticsDataOutput { + s.BotId = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListSessionAnalyticsDataOutput) SetNextToken(v string) *ListSessionAnalyticsDataOutput { + s.NextToken = &v + return s +} + +// SetSessions sets the Sessions field's value. +func (s *ListSessionAnalyticsDataOutput) SetSessions(v []*SessionSpecification) *ListSessionAnalyticsDataOutput { + s.Sessions = v + return s +} + +type ListSessionMetricsInput struct { + _ struct{} `type:"structure"` + + // A list of objects, each of which contains specifications for organizing the + // results by time. + BinBy []*AnalyticsBinBySpecification `locationName:"binBy" min:"1" type:"list"` + + // The identifier for the bot for which you want to retrieve session metrics. + // + // BotId is a required field + BotId *string `location:"uri" locationName:"botId" min:"10" type:"string" required:"true"` + + // The date and time that marks the end of the range of time for which you want + // to see session metrics. + // + // EndDateTime is a required field + EndDateTime *time.Time `locationName:"endDateTime" type:"timestamp" required:"true"` + + // A list of objects, each of which describes a condition by which you want + // to filter the results. + Filters []*AnalyticsSessionFilter `locationName:"filters" min:"1" type:"list"` + + // A list of objects, each of which specifies how to group the results. You + // can group by the following criteria: + // + // * ConversationEndState – The final state of the conversation. The possible + // end states are detailed in Key definitions (https://docs.aws.amazon.com/analytics-key-definitions-conversations) + // in the user guide. + // + // * LocaleId – The unique identifier of the bot locale. + GroupBy []*AnalyticsSessionGroupBySpecification `locationName:"groupBy" min:"1" type:"list"` + + // 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. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // 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. + // + // Metrics is a required field + Metrics []*AnalyticsSessionMetric `locationName:"metrics" min:"1" type:"list" required:"true"` + + // If the response from the ListSessionMetrics 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 ListSessionMetrics + // request to return the next page of results. For a complete set of results, + // call the ListSessionMetrics operation until the nextToken returned in the + // response is null. + NextToken *string `locationName:"nextToken" type:"string"` + + // The date and time that marks the beginning of the range of time for which + // you want to see session metrics. + // + // StartDateTime is a required field + StartDateTime *time.Time `locationName:"startDateTime" type:"timestamp" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSessionMetricsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSessionMetricsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListSessionMetricsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListSessionMetricsInput"} + if s.BinBy != nil && len(s.BinBy) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BinBy", 1)) + } + if s.BotId == nil { + invalidParams.Add(request.NewErrParamRequired("BotId")) + } + if s.BotId != nil && len(*s.BotId) < 10 { + invalidParams.Add(request.NewErrParamMinLen("BotId", 10)) + } + if s.EndDateTime == nil { + invalidParams.Add(request.NewErrParamRequired("EndDateTime")) + } + if s.Filters != nil && len(s.Filters) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Filters", 1)) + } + if s.GroupBy != nil && len(s.GroupBy) < 1 { + invalidParams.Add(request.NewErrParamMinLen("GroupBy", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.Metrics == nil { + invalidParams.Add(request.NewErrParamRequired("Metrics")) + } + if s.Metrics != nil && len(s.Metrics) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Metrics", 1)) + } + if s.StartDateTime == nil { + invalidParams.Add(request.NewErrParamRequired("StartDateTime")) + } + if s.BinBy != nil { + for i, v := range s.BinBy { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "BinBy", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Filters != nil { + for i, v := range s.Filters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) + } + } + } + if s.GroupBy != nil { + for i, v := range s.GroupBy { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "GroupBy", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Metrics != nil { + for i, v := range s.Metrics { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Metrics", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBinBy sets the BinBy field's value. +func (s *ListSessionMetricsInput) SetBinBy(v []*AnalyticsBinBySpecification) *ListSessionMetricsInput { + s.BinBy = v + return s +} + +// SetBotId sets the BotId field's value. +func (s *ListSessionMetricsInput) SetBotId(v string) *ListSessionMetricsInput { + s.BotId = &v + return s +} + +// SetEndDateTime sets the EndDateTime field's value. +func (s *ListSessionMetricsInput) SetEndDateTime(v time.Time) *ListSessionMetricsInput { + s.EndDateTime = &v + return s +} + +// SetFilters sets the Filters field's value. +func (s *ListSessionMetricsInput) SetFilters(v []*AnalyticsSessionFilter) *ListSessionMetricsInput { + s.Filters = v + return s +} + +// SetGroupBy sets the GroupBy field's value. +func (s *ListSessionMetricsInput) SetGroupBy(v []*AnalyticsSessionGroupBySpecification) *ListSessionMetricsInput { + s.GroupBy = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListSessionMetricsInput) SetMaxResults(v int64) *ListSessionMetricsInput { + s.MaxResults = &v + return s +} + +// SetMetrics sets the Metrics field's value. +func (s *ListSessionMetricsInput) SetMetrics(v []*AnalyticsSessionMetric) *ListSessionMetricsInput { + s.Metrics = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListSessionMetricsInput) SetNextToken(v string) *ListSessionMetricsInput { + s.NextToken = &v + return s +} + +// SetStartDateTime sets the StartDateTime field's value. +func (s *ListSessionMetricsInput) SetStartDateTime(v time.Time) *ListSessionMetricsInput { + s.StartDateTime = &v + return s +} + +type ListSessionMetricsOutput struct { + _ struct{} `type:"structure"` + + // The identifier for the bot for which you retrieved session metrics. + BotId *string `locationName:"botId" min:"10" type:"string"` + + // If the response from the ListSessionMetrics 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 ListSessionMetrics + // request to return the next page of results. For a complete set of results, + // call the ListSessionMetrics operation until the nextToken returned in the + // response is null. + NextToken *string `locationName:"nextToken" type:"string"` + + // The results for the session metrics. + Results []*AnalyticsSessionResult `locationName:"results" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSessionMetricsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListSessionMetricsOutput) GoString() string { + return s.String() +} + +// SetBotId sets the BotId field's value. +func (s *ListSessionMetricsOutput) SetBotId(v string) *ListSessionMetricsOutput { + s.BotId = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListSessionMetricsOutput) SetNextToken(v string) *ListSessionMetricsOutput { + s.NextToken = &v + return s +} + +// SetResults sets the Results field's value. +func (s *ListSessionMetricsOutput) SetResults(v []*AnalyticsSessionResult) *ListSessionMetricsOutput { + s.Results = v + return s +} + type ListSlotTypesInput struct { _ struct{} `type:"structure"` @@ -28724,6 +33288,502 @@ func (s *ListTestSetsOutput) SetTestSets(v []*TestSetSummary) *ListTestSetsOutpu return s } +type ListUtteranceAnalyticsDataInput struct { + _ struct{} `type:"structure"` + + // The identifier for the bot for which you want to retrieve utterance analytics. + // + // BotId is a required field + BotId *string `location:"uri" locationName:"botId" min:"10" type:"string" required:"true"` + + // The date and time that marks the end of the range of time for which you want + // to see utterance analytics. + // + // EndDateTime is a required field + EndDateTime *time.Time `locationName:"endDateTime" type:"timestamp" required:"true"` + + // A list of objects, each of which describes a condition by which you want + // to filter the results. + Filters []*AnalyticsUtteranceFilter `locationName:"filters" min:"1" type:"list"` + + // 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. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // If the response from the ListUtteranceAnalyticsData 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 ListUtteranceAnalyticsData + // request to return the next page of results. For a complete set of results, + // call the ListUtteranceAnalyticsData operation until the nextToken returned + // in the response is null. + NextToken *string `locationName:"nextToken" type:"string"` + + // An object specifying the measure and method by which to sort the utterance + // analytics data. + SortBy *UtteranceDataSortBy `locationName:"sortBy" type:"structure"` + + // The date and time that marks the beginning of the range of time for which + // you want to see utterance analytics. + // + // StartDateTime is a required field + StartDateTime *time.Time `locationName:"startDateTime" type:"timestamp" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListUtteranceAnalyticsDataInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListUtteranceAnalyticsDataInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListUtteranceAnalyticsDataInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListUtteranceAnalyticsDataInput"} + if s.BotId == nil { + invalidParams.Add(request.NewErrParamRequired("BotId")) + } + if s.BotId != nil && len(*s.BotId) < 10 { + invalidParams.Add(request.NewErrParamMinLen("BotId", 10)) + } + if s.EndDateTime == nil { + invalidParams.Add(request.NewErrParamRequired("EndDateTime")) + } + if s.Filters != nil && len(s.Filters) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Filters", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.StartDateTime == nil { + invalidParams.Add(request.NewErrParamRequired("StartDateTime")) + } + if s.Filters != nil { + for i, v := range s.Filters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) + } + } + } + if s.SortBy != nil { + if err := s.SortBy.Validate(); err != nil { + invalidParams.AddNested("SortBy", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBotId sets the BotId field's value. +func (s *ListUtteranceAnalyticsDataInput) SetBotId(v string) *ListUtteranceAnalyticsDataInput { + s.BotId = &v + return s +} + +// SetEndDateTime sets the EndDateTime field's value. +func (s *ListUtteranceAnalyticsDataInput) SetEndDateTime(v time.Time) *ListUtteranceAnalyticsDataInput { + s.EndDateTime = &v + return s +} + +// SetFilters sets the Filters field's value. +func (s *ListUtteranceAnalyticsDataInput) SetFilters(v []*AnalyticsUtteranceFilter) *ListUtteranceAnalyticsDataInput { + s.Filters = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListUtteranceAnalyticsDataInput) SetMaxResults(v int64) *ListUtteranceAnalyticsDataInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListUtteranceAnalyticsDataInput) SetNextToken(v string) *ListUtteranceAnalyticsDataInput { + s.NextToken = &v + return s +} + +// SetSortBy sets the SortBy field's value. +func (s *ListUtteranceAnalyticsDataInput) SetSortBy(v *UtteranceDataSortBy) *ListUtteranceAnalyticsDataInput { + s.SortBy = v + return s +} + +// SetStartDateTime sets the StartDateTime field's value. +func (s *ListUtteranceAnalyticsDataInput) SetStartDateTime(v time.Time) *ListUtteranceAnalyticsDataInput { + s.StartDateTime = &v + return s +} + +type ListUtteranceAnalyticsDataOutput struct { + _ struct{} `type:"structure"` + + // The unique identifier of the bot that the utterances belong to. + BotId *string `locationName:"botId" min:"10" type:"string"` + + // If the response from the ListUtteranceAnalyticsData 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 ListUtteranceAnalyticsData + // request to return the next page of results. For a complete set of results, + // call the ListUtteranceAnalyticsData operation until the nextToken returned + // in the response is null. + NextToken *string `locationName:"nextToken" type:"string"` + + // A list of objects, each of which contains information about an utterance + // in a user session with your bot. + Utterances []*UtteranceSpecification `locationName:"utterances" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListUtteranceAnalyticsDataOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListUtteranceAnalyticsDataOutput) GoString() string { + return s.String() +} + +// SetBotId sets the BotId field's value. +func (s *ListUtteranceAnalyticsDataOutput) SetBotId(v string) *ListUtteranceAnalyticsDataOutput { + s.BotId = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListUtteranceAnalyticsDataOutput) SetNextToken(v string) *ListUtteranceAnalyticsDataOutput { + s.NextToken = &v + return s +} + +// SetUtterances sets the Utterances field's value. +func (s *ListUtteranceAnalyticsDataOutput) SetUtterances(v []*UtteranceSpecification) *ListUtteranceAnalyticsDataOutput { + s.Utterances = v + return s +} + +type ListUtteranceMetricsInput struct { + _ struct{} `type:"structure"` + + // 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. + Attributes []*AnalyticsUtteranceAttribute `locationName:"attributes" min:"1" type:"list"` + + // A list of objects, each of which contains specifications for organizing the + // results by time. + BinBy []*AnalyticsBinBySpecification `locationName:"binBy" min:"1" type:"list"` + + // The identifier for the bot for which you want to retrieve utterance metrics. + // + // BotId is a required field + BotId *string `location:"uri" locationName:"botId" min:"10" type:"string" required:"true"` + + // The date and time that marks the end of the range of time for which you want + // to see utterance metrics. + // + // EndDateTime is a required field + EndDateTime *time.Time `locationName:"endDateTime" type:"timestamp" required:"true"` + + // A list of objects, each of which describes a condition by which you want + // to filter the results. + Filters []*AnalyticsUtteranceFilter `locationName:"filters" min:"1" type:"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 (https://docs.aws.amazon.com/analytics-key-definitions-utterances) + // in the user guide. + GroupBy []*AnalyticsUtteranceGroupBySpecification `locationName:"groupBy" min:"1" type:"list"` + + // 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. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // 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. + // + // Metrics is a required field + Metrics []*AnalyticsUtteranceMetric `locationName:"metrics" min:"1" type:"list" required:"true"` + + // 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. + NextToken *string `locationName:"nextToken" type:"string"` + + // The date and time that marks the beginning of the range of time for which + // you want to see utterance metrics. + // + // StartDateTime is a required field + StartDateTime *time.Time `locationName:"startDateTime" type:"timestamp" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListUtteranceMetricsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListUtteranceMetricsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListUtteranceMetricsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListUtteranceMetricsInput"} + if s.Attributes != nil && len(s.Attributes) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Attributes", 1)) + } + if s.BinBy != nil && len(s.BinBy) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BinBy", 1)) + } + if s.BotId == nil { + invalidParams.Add(request.NewErrParamRequired("BotId")) + } + if s.BotId != nil && len(*s.BotId) < 10 { + invalidParams.Add(request.NewErrParamMinLen("BotId", 10)) + } + if s.EndDateTime == nil { + invalidParams.Add(request.NewErrParamRequired("EndDateTime")) + } + if s.Filters != nil && len(s.Filters) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Filters", 1)) + } + if s.GroupBy != nil && len(s.GroupBy) < 1 { + invalidParams.Add(request.NewErrParamMinLen("GroupBy", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.Metrics == nil { + invalidParams.Add(request.NewErrParamRequired("Metrics")) + } + if s.Metrics != nil && len(s.Metrics) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Metrics", 1)) + } + if s.StartDateTime == nil { + invalidParams.Add(request.NewErrParamRequired("StartDateTime")) + } + if s.Attributes != nil { + for i, v := range s.Attributes { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Attributes", i), err.(request.ErrInvalidParams)) + } + } + } + if s.BinBy != nil { + for i, v := range s.BinBy { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "BinBy", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Filters != nil { + for i, v := range s.Filters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) + } + } + } + if s.GroupBy != nil { + for i, v := range s.GroupBy { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "GroupBy", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Metrics != nil { + for i, v := range s.Metrics { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Metrics", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAttributes sets the Attributes field's value. +func (s *ListUtteranceMetricsInput) SetAttributes(v []*AnalyticsUtteranceAttribute) *ListUtteranceMetricsInput { + s.Attributes = v + return s +} + +// SetBinBy sets the BinBy field's value. +func (s *ListUtteranceMetricsInput) SetBinBy(v []*AnalyticsBinBySpecification) *ListUtteranceMetricsInput { + s.BinBy = v + return s +} + +// SetBotId sets the BotId field's value. +func (s *ListUtteranceMetricsInput) SetBotId(v string) *ListUtteranceMetricsInput { + s.BotId = &v + return s +} + +// SetEndDateTime sets the EndDateTime field's value. +func (s *ListUtteranceMetricsInput) SetEndDateTime(v time.Time) *ListUtteranceMetricsInput { + s.EndDateTime = &v + return s +} + +// SetFilters sets the Filters field's value. +func (s *ListUtteranceMetricsInput) SetFilters(v []*AnalyticsUtteranceFilter) *ListUtteranceMetricsInput { + s.Filters = v + return s +} + +// SetGroupBy sets the GroupBy field's value. +func (s *ListUtteranceMetricsInput) SetGroupBy(v []*AnalyticsUtteranceGroupBySpecification) *ListUtteranceMetricsInput { + s.GroupBy = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListUtteranceMetricsInput) SetMaxResults(v int64) *ListUtteranceMetricsInput { + s.MaxResults = &v + return s +} + +// SetMetrics sets the Metrics field's value. +func (s *ListUtteranceMetricsInput) SetMetrics(v []*AnalyticsUtteranceMetric) *ListUtteranceMetricsInput { + s.Metrics = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListUtteranceMetricsInput) SetNextToken(v string) *ListUtteranceMetricsInput { + s.NextToken = &v + return s +} + +// SetStartDateTime sets the StartDateTime field's value. +func (s *ListUtteranceMetricsInput) SetStartDateTime(v time.Time) *ListUtteranceMetricsInput { + s.StartDateTime = &v + return s +} + +type ListUtteranceMetricsOutput struct { + _ struct{} `type:"structure"` + + // The identifier for the bot for which you retrieved utterance metrics. + BotId *string `locationName:"botId" min:"10" type:"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. + NextToken *string `locationName:"nextToken" type:"string"` + + // The results for the utterance metrics. + Results []*AnalyticsUtteranceResult `locationName:"results" type:"list"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListUtteranceMetricsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListUtteranceMetricsOutput) GoString() string { + return s.String() +} + +// SetBotId sets the BotId field's value. +func (s *ListUtteranceMetricsOutput) SetBotId(v string) *ListUtteranceMetricsOutput { + s.BotId = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListUtteranceMetricsOutput) SetNextToken(v string) *ListUtteranceMetricsOutput { + s.NextToken = &v + return s +} + +// SetResults sets the Results field's value. +func (s *ListUtteranceMetricsOutput) SetResults(v []*AnalyticsUtteranceResult) *ListUtteranceMetricsOutput { + s.Results = v + return s +} + // The object that provides message text and its type. type Message struct { _ struct{} `type:"structure"` @@ -31166,6 +36226,229 @@ func (s *ServiceQuotaExceededException) RequestID() string { return s.RespMetadata.RequestID } +// An object specifying the measure and method by which to sort the session +// analytics data. +type SessionDataSortBy struct { + _ struct{} `type:"structure"` + + // The measure by which to sort the session analytics data. + // + // * conversationStartTime – The date and time when the conversation began. + // A conversation is defined as a unique combination of a sessionId and an + // originatingRequestId. + // + // * numberOfTurns – The number of turns that the session took. + // + // * conversationDurationSeconds – The duration of the conversation in + // seconds. + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true" enum:"AnalyticsSessionSortByName"` + + // Specifies whether to sort the results in ascending or descending order. + // + // Order is a required field + Order *string `locationName:"order" type:"string" required:"true" enum:"AnalyticsSortOrder"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SessionDataSortBy) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SessionDataSortBy) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SessionDataSortBy) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SessionDataSortBy"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Order == nil { + invalidParams.Add(request.NewErrParamRequired("Order")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *SessionDataSortBy) SetName(v string) *SessionDataSortBy { + s.Name = &v + return s +} + +// SetOrder sets the Order field's value. +func (s *SessionDataSortBy) SetOrder(v string) *SessionDataSortBy { + s.Order = &v + return s +} + +// An object containing information about a specific session. +type SessionSpecification struct { + _ struct{} `type:"structure"` + + // The identifier of the alias of the bot that the session was held with. + BotAliasId *string `locationName:"botAliasId" min:"10" type:"string"` + + // The version of the bot that the session was held with. + BotVersion *string `locationName:"botVersion" min:"1" type:"string"` + + // The channel that is integrated with the bot that the session was held with. + Channel *string `locationName:"channel" type:"string" enum:"BotChannelType"` + + // The duration of the conversation in seconds. A conversation is defined as + // a unique combination of a sessionId and an originatingRequestId. + ConversationDurationSeconds *int64 `locationName:"conversationDurationSeconds" type:"long"` + + // The final state of the conversation. A conversation is defined as a unique + // combination of a sessionId and an originatingRequestId. + ConversationEndState *string `locationName:"conversationEndState" type:"string" enum:"ConversationEndState"` + + // The date and time when the conversation ended. A conversation is defined + // as a unique combination of a sessionId and an originatingRequestId. + ConversationEndTime *time.Time `locationName:"conversationEndTime" type:"timestamp"` + + // The date and time when the conversation began. A conversation is defined + // as a unique combination of a sessionId and an originatingRequestId. + ConversationStartTime *time.Time `locationName:"conversationStartTime" type:"timestamp"` + + // A list of objects containing the name of an intent that was invoked. + InvokedIntentSamples []*InvokedIntentSample `locationName:"invokedIntentSamples" type:"list"` + + // The locale of the bot that the session was held with. + LocaleId *string `locationName:"localeId" type:"string"` + + // The mode of the session. The possible values are as follows: + // + // * Speech – The session was spoken. + // + // * Text – The session was written. + // + // * DTMF – The session used a touch-tone keypad (Dual Tone Multi-Frequency). + // + // * MultiMode – The session used multiple modes. + Mode *string `locationName:"mode" type:"string" enum:"AnalyticsModality"` + + // The number of turns that the session took. + NumberOfTurns *int64 `locationName:"numberOfTurns" type:"long"` + + // The identifier of the first request in a session. + OriginatingRequestId *string `locationName:"originatingRequestId" type:"string"` + + // The identifier of the session. + SessionId *string `locationName:"sessionId" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SessionSpecification) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s SessionSpecification) GoString() string { + return s.String() +} + +// SetBotAliasId sets the BotAliasId field's value. +func (s *SessionSpecification) SetBotAliasId(v string) *SessionSpecification { + s.BotAliasId = &v + return s +} + +// SetBotVersion sets the BotVersion field's value. +func (s *SessionSpecification) SetBotVersion(v string) *SessionSpecification { + s.BotVersion = &v + return s +} + +// SetChannel sets the Channel field's value. +func (s *SessionSpecification) SetChannel(v string) *SessionSpecification { + s.Channel = &v + return s +} + +// SetConversationDurationSeconds sets the ConversationDurationSeconds field's value. +func (s *SessionSpecification) SetConversationDurationSeconds(v int64) *SessionSpecification { + s.ConversationDurationSeconds = &v + return s +} + +// SetConversationEndState sets the ConversationEndState field's value. +func (s *SessionSpecification) SetConversationEndState(v string) *SessionSpecification { + s.ConversationEndState = &v + return s +} + +// SetConversationEndTime sets the ConversationEndTime field's value. +func (s *SessionSpecification) SetConversationEndTime(v time.Time) *SessionSpecification { + s.ConversationEndTime = &v + return s +} + +// SetConversationStartTime sets the ConversationStartTime field's value. +func (s *SessionSpecification) SetConversationStartTime(v time.Time) *SessionSpecification { + s.ConversationStartTime = &v + return s +} + +// SetInvokedIntentSamples sets the InvokedIntentSamples field's value. +func (s *SessionSpecification) SetInvokedIntentSamples(v []*InvokedIntentSample) *SessionSpecification { + s.InvokedIntentSamples = v + return s +} + +// SetLocaleId sets the LocaleId field's value. +func (s *SessionSpecification) SetLocaleId(v string) *SessionSpecification { + s.LocaleId = &v + return s +} + +// SetMode sets the Mode field's value. +func (s *SessionSpecification) SetMode(v string) *SessionSpecification { + s.Mode = &v + return s +} + +// SetNumberOfTurns sets the NumberOfTurns field's value. +func (s *SessionSpecification) SetNumberOfTurns(v int64) *SessionSpecification { + s.NumberOfTurns = &v + return s +} + +// SetOriginatingRequestId sets the OriginatingRequestId field's value. +func (s *SessionSpecification) SetOriginatingRequestId(v string) *SessionSpecification { + s.OriginatingRequestId = &v + return s +} + +// SetSessionId sets the SessionId field's value. +func (s *SessionSpecification) SetSessionId(v string) *SessionSpecification { + s.SessionId = &v + return s +} + // Settings used when Amazon Lex successfully captures a slot value from a user. type SlotCaptureSetting struct { _ struct{} `type:"structure"` @@ -38999,6 +44282,138 @@ func (s *UtteranceAudioInputSpecification) SetAudioFileS3Location(v string) *Utt return s } +// An object that contains a response to the utterance from the bot. +type UtteranceBotResponse struct { + _ struct{} `type:"structure"` + + // The text of the response to the utterance from the bot. + Content *string `locationName:"content" type:"string"` + + // The type of the response. The following values are possible: + // + // * PlainText – A plain text string. + // + // * CustomPayload – A response string that you can customize to include + // data or metadata for your application. + // + // * SSML – A string that includes Speech Synthesis Markup Language to + // customize the audio response. + // + // * ImageResponseCard – An image with buttons that the customer can select. + // See ImageResponseCard (https://docs.aws.amazon.com/lexv2/latest/APIReference/API_runtime_ImageResponseCard.html) + // for more information. + ContentType *string `locationName:"contentType" type:"string" enum:"UtteranceContentType"` + + // A card that is shown to the user by a messaging platform. You define the + // contents of the card, the card is displayed by the platform. + // + // When you use a response card, the response from the user is constrained to + // the text associated with a button on the card. + ImageResponseCard *ImageResponseCard `locationName:"imageResponseCard" type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UtteranceBotResponse) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UtteranceBotResponse) GoString() string { + return s.String() +} + +// SetContent sets the Content field's value. +func (s *UtteranceBotResponse) SetContent(v string) *UtteranceBotResponse { + s.Content = &v + return s +} + +// SetContentType sets the ContentType field's value. +func (s *UtteranceBotResponse) SetContentType(v string) *UtteranceBotResponse { + s.ContentType = &v + return s +} + +// SetImageResponseCard sets the ImageResponseCard field's value. +func (s *UtteranceBotResponse) SetImageResponseCard(v *ImageResponseCard) *UtteranceBotResponse { + s.ImageResponseCard = v + return s +} + +// An object specifying the measure and method by which to sort the utterance +// data. +type UtteranceDataSortBy struct { + _ struct{} `type:"structure"` + + // The measure by which to sort the utterance analytics data. + // + // * Count – The number of utterances. + // + // * UtteranceTimeStamp – The date and time of the utterance. + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true" enum:"AnalyticsUtteranceSortByName"` + + // Specifies whether to sort the results in ascending or descending order. + // + // Order is a required field + Order *string `locationName:"order" type:"string" required:"true" enum:"AnalyticsSortOrder"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UtteranceDataSortBy) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UtteranceDataSortBy) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UtteranceDataSortBy) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UtteranceDataSortBy"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Order == nil { + invalidParams.Add(request.NewErrParamRequired("Order")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *UtteranceDataSortBy) SetName(v string) *UtteranceDataSortBy { + s.Name = &v + return s +} + +// SetOrder sets the Order field's value. +func (s *UtteranceDataSortBy) SetOrder(v string) *UtteranceDataSortBy { + s.Order = &v + return s +} + // Contains information about input of an utterance. type UtteranceInputSpecification struct { _ struct{} `type:"structure"` @@ -39131,6 +44546,260 @@ func (s *UtteranceLevelTestResults) SetItems(v []*UtteranceLevelTestResultItem) return s } +// An object containing information about a specific utterance. +type UtteranceSpecification struct { + _ struct{} `type:"structure"` + + // The name of the intent that the utterance is associated to. + AssociatedIntentName *string `locationName:"associatedIntentName" min:"1" type:"string"` + + // The name of the slot that the utterance is associated to. + AssociatedSlotName *string `locationName:"associatedSlotName" min:"1" type:"string"` + + // The duration in milliseconds of the audio associated with the utterance. + AudioVoiceDurationMillis *int64 `locationName:"audioVoiceDurationMillis" type:"long"` + + // The identifier of the alias of the bot that the utterance was made to. + BotAliasId *string `locationName:"botAliasId" min:"10" type:"string"` + + // The identifier for the audio of the bot response. + BotResponseAudioVoiceId *string `locationName:"botResponseAudioVoiceId" type:"string"` + + // A list of objects containing information about the bot response to the utterance. + BotResponses []*UtteranceBotResponse `locationName:"botResponses" type:"list"` + + // The version of the bot that the utterance was made to. + BotVersion *string `locationName:"botVersion" min:"1" type:"string"` + + // The channel that is integrated with the bot that the utterance was made to. + Channel *string `locationName:"channel" type:"string" enum:"BotChannelType"` + + // The date and time when the conversation in which the utterance took place + // ended. A conversation is defined as a unique combination of a sessionId and + // an originatingRequestId. + ConversationEndTime *time.Time `locationName:"conversationEndTime" type:"timestamp"` + + // The date and time when the conversation in which the utterance took place + // began. A conversation is defined as a unique combination of a sessionId and + // an originatingRequestId. + ConversationStartTime *time.Time `locationName:"conversationStartTime" type:"timestamp"` + + // The type of dialog action that the utterance is associated to. See the type + // field in DialogAction (https://docs.aws.amazon.com/lexv2/latest/APIReference/API_runtime_DialogAction.html) + // for more information. + DialogActionType *string `locationName:"dialogActionType" type:"string"` + + // The input type of the utterance. The possible values are as follows: + // + // * PCM format: audio data must be in little-endian byte order. audio/l16; + // rate=16000; channels=1 audio/x-l16; sample-rate=16000; channel-count=1 + // audio/lpcm; sample-rate=8000; sample-size-bits=16; channel-count=1; is-big-endian=false + // + // * Opus format audio/x-cbr-opus-with-preamble;preamble-size=0;bit-rate=256000;frame-size-milliseconds=4 + // + // * Text format text/plain; charset=utf-8 + InputType *string `locationName:"inputType" type:"string"` + + // The state of the intent that the utterance is associated to. + IntentState *string `locationName:"intentState" type:"string" enum:"IntentState"` + + // The locale of the bot that the utterance was made to. + LocaleId *string `locationName:"localeId" type:"string"` + + // The mode of the session. The possible values are as follows: + // + // * Speech – The session consisted of spoken dialogue. + // + // * Text – The session consisted of written dialogue. + // + // * DTMF – The session consisted of touch-tone keypad (Dual Tone Multi-Frequency) + // key presses. + // + // * MultiMode – The session consisted of multiple modes. + Mode *string `locationName:"mode" type:"string" enum:"AnalyticsModality"` + + // The output type of the utterance. The possible values are as follows: + // + // * audio/mpeg + // + // * audio/ogg + // + // * audio/pcm (16 KHz) + // + // * audio/ (defaults to mpeg) + // + // * text/plain; charset=utf-8 + OutputType *string `locationName:"outputType" type:"string"` + + // The identifier of the session that the utterance was made in. + SessionId *string `locationName:"sessionId" type:"string"` + + // The slots that have been filled in the session by the time of the utterance. + SlotsFilledInSession *string `locationName:"slotsFilledInSession" type:"string"` + + // The text of the utterance. + Utterance *string `locationName:"utterance" type:"string"` + + // The identifier of the request associated with the utterance. + UtteranceRequestId *string `locationName:"utteranceRequestId" min:"10" type:"string"` + + // The date and time when the utterance took place. + UtteranceTimestamp *time.Time `locationName:"utteranceTimestamp" type:"timestamp"` + + // Specifies whether the bot understood the utterance or not. + UtteranceUnderstood *bool `locationName:"utteranceUnderstood" type:"boolean"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UtteranceSpecification) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UtteranceSpecification) GoString() string { + return s.String() +} + +// SetAssociatedIntentName sets the AssociatedIntentName field's value. +func (s *UtteranceSpecification) SetAssociatedIntentName(v string) *UtteranceSpecification { + s.AssociatedIntentName = &v + return s +} + +// SetAssociatedSlotName sets the AssociatedSlotName field's value. +func (s *UtteranceSpecification) SetAssociatedSlotName(v string) *UtteranceSpecification { + s.AssociatedSlotName = &v + return s +} + +// SetAudioVoiceDurationMillis sets the AudioVoiceDurationMillis field's value. +func (s *UtteranceSpecification) SetAudioVoiceDurationMillis(v int64) *UtteranceSpecification { + s.AudioVoiceDurationMillis = &v + return s +} + +// SetBotAliasId sets the BotAliasId field's value. +func (s *UtteranceSpecification) SetBotAliasId(v string) *UtteranceSpecification { + s.BotAliasId = &v + return s +} + +// SetBotResponseAudioVoiceId sets the BotResponseAudioVoiceId field's value. +func (s *UtteranceSpecification) SetBotResponseAudioVoiceId(v string) *UtteranceSpecification { + s.BotResponseAudioVoiceId = &v + return s +} + +// SetBotResponses sets the BotResponses field's value. +func (s *UtteranceSpecification) SetBotResponses(v []*UtteranceBotResponse) *UtteranceSpecification { + s.BotResponses = v + return s +} + +// SetBotVersion sets the BotVersion field's value. +func (s *UtteranceSpecification) SetBotVersion(v string) *UtteranceSpecification { + s.BotVersion = &v + return s +} + +// SetChannel sets the Channel field's value. +func (s *UtteranceSpecification) SetChannel(v string) *UtteranceSpecification { + s.Channel = &v + return s +} + +// SetConversationEndTime sets the ConversationEndTime field's value. +func (s *UtteranceSpecification) SetConversationEndTime(v time.Time) *UtteranceSpecification { + s.ConversationEndTime = &v + return s +} + +// SetConversationStartTime sets the ConversationStartTime field's value. +func (s *UtteranceSpecification) SetConversationStartTime(v time.Time) *UtteranceSpecification { + s.ConversationStartTime = &v + return s +} + +// SetDialogActionType sets the DialogActionType field's value. +func (s *UtteranceSpecification) SetDialogActionType(v string) *UtteranceSpecification { + s.DialogActionType = &v + return s +} + +// SetInputType sets the InputType field's value. +func (s *UtteranceSpecification) SetInputType(v string) *UtteranceSpecification { + s.InputType = &v + return s +} + +// SetIntentState sets the IntentState field's value. +func (s *UtteranceSpecification) SetIntentState(v string) *UtteranceSpecification { + s.IntentState = &v + return s +} + +// SetLocaleId sets the LocaleId field's value. +func (s *UtteranceSpecification) SetLocaleId(v string) *UtteranceSpecification { + s.LocaleId = &v + return s +} + +// SetMode sets the Mode field's value. +func (s *UtteranceSpecification) SetMode(v string) *UtteranceSpecification { + s.Mode = &v + return s +} + +// SetOutputType sets the OutputType field's value. +func (s *UtteranceSpecification) SetOutputType(v string) *UtteranceSpecification { + s.OutputType = &v + return s +} + +// SetSessionId sets the SessionId field's value. +func (s *UtteranceSpecification) SetSessionId(v string) *UtteranceSpecification { + s.SessionId = &v + return s +} + +// SetSlotsFilledInSession sets the SlotsFilledInSession field's value. +func (s *UtteranceSpecification) SetSlotsFilledInSession(v string) *UtteranceSpecification { + s.SlotsFilledInSession = &v + return s +} + +// SetUtterance sets the Utterance field's value. +func (s *UtteranceSpecification) SetUtterance(v string) *UtteranceSpecification { + s.Utterance = &v + return s +} + +// SetUtteranceRequestId sets the UtteranceRequestId field's value. +func (s *UtteranceSpecification) SetUtteranceRequestId(v string) *UtteranceSpecification { + s.UtteranceRequestId = &v + return s +} + +// SetUtteranceTimestamp sets the UtteranceTimestamp field's value. +func (s *UtteranceSpecification) SetUtteranceTimestamp(v time.Time) *UtteranceSpecification { + s.UtteranceTimestamp = &v + return s +} + +// SetUtteranceUnderstood sets the UtteranceUnderstood field's value. +func (s *UtteranceSpecification) SetUtteranceUnderstood(v bool) *UtteranceSpecification { + s.UtteranceUnderstood = &v + return s +} + // One of the input parameters in your request isn't valid. Check the parameters // and try your request again. type ValidationException struct { @@ -39401,6 +45070,570 @@ func AggregatedUtterancesSortAttribute_Values() []string { } } +const ( + // AnalyticsBinByNameConversationStartTime is a AnalyticsBinByName enum value + AnalyticsBinByNameConversationStartTime = "ConversationStartTime" + + // AnalyticsBinByNameUtteranceTimestamp is a AnalyticsBinByName enum value + AnalyticsBinByNameUtteranceTimestamp = "UtteranceTimestamp" +) + +// AnalyticsBinByName_Values returns all elements of the AnalyticsBinByName enum +func AnalyticsBinByName_Values() []string { + return []string{ + AnalyticsBinByNameConversationStartTime, + AnalyticsBinByNameUtteranceTimestamp, + } +} + +const ( + // AnalyticsCommonFilterNameBotAliasId is a AnalyticsCommonFilterName enum value + AnalyticsCommonFilterNameBotAliasId = "BotAliasId" + + // AnalyticsCommonFilterNameBotVersion is a AnalyticsCommonFilterName enum value + AnalyticsCommonFilterNameBotVersion = "BotVersion" + + // AnalyticsCommonFilterNameLocaleId is a AnalyticsCommonFilterName enum value + AnalyticsCommonFilterNameLocaleId = "LocaleId" + + // AnalyticsCommonFilterNameModality is a AnalyticsCommonFilterName enum value + AnalyticsCommonFilterNameModality = "Modality" + + // AnalyticsCommonFilterNameChannel is a AnalyticsCommonFilterName enum value + AnalyticsCommonFilterNameChannel = "Channel" +) + +// AnalyticsCommonFilterName_Values returns all elements of the AnalyticsCommonFilterName enum +func AnalyticsCommonFilterName_Values() []string { + return []string{ + AnalyticsCommonFilterNameBotAliasId, + AnalyticsCommonFilterNameBotVersion, + AnalyticsCommonFilterNameLocaleId, + AnalyticsCommonFilterNameModality, + AnalyticsCommonFilterNameChannel, + } +} + +const ( + // AnalyticsFilterOperatorEq is a AnalyticsFilterOperator enum value + AnalyticsFilterOperatorEq = "EQ" + + // AnalyticsFilterOperatorGt is a AnalyticsFilterOperator enum value + AnalyticsFilterOperatorGt = "GT" + + // AnalyticsFilterOperatorLt is a AnalyticsFilterOperator enum value + AnalyticsFilterOperatorLt = "LT" +) + +// AnalyticsFilterOperator_Values returns all elements of the AnalyticsFilterOperator enum +func AnalyticsFilterOperator_Values() []string { + return []string{ + AnalyticsFilterOperatorEq, + AnalyticsFilterOperatorGt, + AnalyticsFilterOperatorLt, + } +} + +const ( + // AnalyticsIntentFieldIntentName is a AnalyticsIntentField enum value + AnalyticsIntentFieldIntentName = "IntentName" + + // AnalyticsIntentFieldIntentEndState is a AnalyticsIntentField enum value + AnalyticsIntentFieldIntentEndState = "IntentEndState" + + // AnalyticsIntentFieldIntentLevel is a AnalyticsIntentField enum value + AnalyticsIntentFieldIntentLevel = "IntentLevel" +) + +// AnalyticsIntentField_Values returns all elements of the AnalyticsIntentField enum +func AnalyticsIntentField_Values() []string { + return []string{ + AnalyticsIntentFieldIntentName, + AnalyticsIntentFieldIntentEndState, + AnalyticsIntentFieldIntentLevel, + } +} + +const ( + // AnalyticsIntentFilterNameBotAliasId is a AnalyticsIntentFilterName enum value + AnalyticsIntentFilterNameBotAliasId = "BotAliasId" + + // AnalyticsIntentFilterNameBotVersion is a AnalyticsIntentFilterName enum value + AnalyticsIntentFilterNameBotVersion = "BotVersion" + + // AnalyticsIntentFilterNameLocaleId is a AnalyticsIntentFilterName enum value + AnalyticsIntentFilterNameLocaleId = "LocaleId" + + // AnalyticsIntentFilterNameModality is a AnalyticsIntentFilterName enum value + AnalyticsIntentFilterNameModality = "Modality" + + // AnalyticsIntentFilterNameChannel is a AnalyticsIntentFilterName enum value + AnalyticsIntentFilterNameChannel = "Channel" + + // AnalyticsIntentFilterNameSessionId is a AnalyticsIntentFilterName enum value + AnalyticsIntentFilterNameSessionId = "SessionId" + + // AnalyticsIntentFilterNameOriginatingRequestId is a AnalyticsIntentFilterName enum value + AnalyticsIntentFilterNameOriginatingRequestId = "OriginatingRequestId" + + // AnalyticsIntentFilterNameIntentName is a AnalyticsIntentFilterName enum value + AnalyticsIntentFilterNameIntentName = "IntentName" + + // AnalyticsIntentFilterNameIntentEndState is a AnalyticsIntentFilterName enum value + AnalyticsIntentFilterNameIntentEndState = "IntentEndState" +) + +// AnalyticsIntentFilterName_Values returns all elements of the AnalyticsIntentFilterName enum +func AnalyticsIntentFilterName_Values() []string { + return []string{ + AnalyticsIntentFilterNameBotAliasId, + AnalyticsIntentFilterNameBotVersion, + AnalyticsIntentFilterNameLocaleId, + AnalyticsIntentFilterNameModality, + AnalyticsIntentFilterNameChannel, + AnalyticsIntentFilterNameSessionId, + AnalyticsIntentFilterNameOriginatingRequestId, + AnalyticsIntentFilterNameIntentName, + AnalyticsIntentFilterNameIntentEndState, + } +} + +const ( + // AnalyticsIntentMetricNameCount is a AnalyticsIntentMetricName enum value + AnalyticsIntentMetricNameCount = "Count" + + // AnalyticsIntentMetricNameSuccess is a AnalyticsIntentMetricName enum value + AnalyticsIntentMetricNameSuccess = "Success" + + // AnalyticsIntentMetricNameFailure is a AnalyticsIntentMetricName enum value + AnalyticsIntentMetricNameFailure = "Failure" + + // AnalyticsIntentMetricNameSwitched is a AnalyticsIntentMetricName enum value + AnalyticsIntentMetricNameSwitched = "Switched" + + // AnalyticsIntentMetricNameDropped is a AnalyticsIntentMetricName enum value + AnalyticsIntentMetricNameDropped = "Dropped" +) + +// AnalyticsIntentMetricName_Values returns all elements of the AnalyticsIntentMetricName enum +func AnalyticsIntentMetricName_Values() []string { + return []string{ + AnalyticsIntentMetricNameCount, + AnalyticsIntentMetricNameSuccess, + AnalyticsIntentMetricNameFailure, + AnalyticsIntentMetricNameSwitched, + AnalyticsIntentMetricNameDropped, + } +} + +const ( + // AnalyticsIntentStageFieldIntentStageName is a AnalyticsIntentStageField enum value + AnalyticsIntentStageFieldIntentStageName = "IntentStageName" + + // AnalyticsIntentStageFieldSwitchedToIntent is a AnalyticsIntentStageField enum value + AnalyticsIntentStageFieldSwitchedToIntent = "SwitchedToIntent" +) + +// AnalyticsIntentStageField_Values returns all elements of the AnalyticsIntentStageField enum +func AnalyticsIntentStageField_Values() []string { + return []string{ + AnalyticsIntentStageFieldIntentStageName, + AnalyticsIntentStageFieldSwitchedToIntent, + } +} + +const ( + // AnalyticsIntentStageFilterNameBotAliasId is a AnalyticsIntentStageFilterName enum value + AnalyticsIntentStageFilterNameBotAliasId = "BotAliasId" + + // AnalyticsIntentStageFilterNameBotVersion is a AnalyticsIntentStageFilterName enum value + AnalyticsIntentStageFilterNameBotVersion = "BotVersion" + + // AnalyticsIntentStageFilterNameLocaleId is a AnalyticsIntentStageFilterName enum value + AnalyticsIntentStageFilterNameLocaleId = "LocaleId" + + // AnalyticsIntentStageFilterNameModality is a AnalyticsIntentStageFilterName enum value + AnalyticsIntentStageFilterNameModality = "Modality" + + // AnalyticsIntentStageFilterNameChannel is a AnalyticsIntentStageFilterName enum value + AnalyticsIntentStageFilterNameChannel = "Channel" + + // AnalyticsIntentStageFilterNameSessionId is a AnalyticsIntentStageFilterName enum value + AnalyticsIntentStageFilterNameSessionId = "SessionId" + + // AnalyticsIntentStageFilterNameOriginatingRequestId is a AnalyticsIntentStageFilterName enum value + AnalyticsIntentStageFilterNameOriginatingRequestId = "OriginatingRequestId" + + // AnalyticsIntentStageFilterNameIntentName is a AnalyticsIntentStageFilterName enum value + AnalyticsIntentStageFilterNameIntentName = "IntentName" + + // AnalyticsIntentStageFilterNameIntentStageName is a AnalyticsIntentStageFilterName enum value + AnalyticsIntentStageFilterNameIntentStageName = "IntentStageName" +) + +// AnalyticsIntentStageFilterName_Values returns all elements of the AnalyticsIntentStageFilterName enum +func AnalyticsIntentStageFilterName_Values() []string { + return []string{ + AnalyticsIntentStageFilterNameBotAliasId, + AnalyticsIntentStageFilterNameBotVersion, + AnalyticsIntentStageFilterNameLocaleId, + AnalyticsIntentStageFilterNameModality, + AnalyticsIntentStageFilterNameChannel, + AnalyticsIntentStageFilterNameSessionId, + AnalyticsIntentStageFilterNameOriginatingRequestId, + AnalyticsIntentStageFilterNameIntentName, + AnalyticsIntentStageFilterNameIntentStageName, + } +} + +const ( + // AnalyticsIntentStageMetricNameCount is a AnalyticsIntentStageMetricName enum value + AnalyticsIntentStageMetricNameCount = "Count" + + // AnalyticsIntentStageMetricNameSuccess is a AnalyticsIntentStageMetricName enum value + AnalyticsIntentStageMetricNameSuccess = "Success" + + // AnalyticsIntentStageMetricNameFailed is a AnalyticsIntentStageMetricName enum value + AnalyticsIntentStageMetricNameFailed = "Failed" + + // AnalyticsIntentStageMetricNameDropped is a AnalyticsIntentStageMetricName enum value + AnalyticsIntentStageMetricNameDropped = "Dropped" + + // AnalyticsIntentStageMetricNameRetry is a AnalyticsIntentStageMetricName enum value + AnalyticsIntentStageMetricNameRetry = "Retry" +) + +// AnalyticsIntentStageMetricName_Values returns all elements of the AnalyticsIntentStageMetricName enum +func AnalyticsIntentStageMetricName_Values() []string { + return []string{ + AnalyticsIntentStageMetricNameCount, + AnalyticsIntentStageMetricNameSuccess, + AnalyticsIntentStageMetricNameFailed, + AnalyticsIntentStageMetricNameDropped, + AnalyticsIntentStageMetricNameRetry, + } +} + +const ( + // AnalyticsIntervalOneHour is a AnalyticsInterval enum value + AnalyticsIntervalOneHour = "OneHour" + + // AnalyticsIntervalOneDay is a AnalyticsInterval enum value + AnalyticsIntervalOneDay = "OneDay" +) + +// AnalyticsInterval_Values returns all elements of the AnalyticsInterval enum +func AnalyticsInterval_Values() []string { + return []string{ + AnalyticsIntervalOneHour, + AnalyticsIntervalOneDay, + } +} + +const ( + // AnalyticsMetricStatisticSum is a AnalyticsMetricStatistic enum value + AnalyticsMetricStatisticSum = "Sum" + + // AnalyticsMetricStatisticAvg is a AnalyticsMetricStatistic enum value + AnalyticsMetricStatisticAvg = "Avg" + + // AnalyticsMetricStatisticMax is a AnalyticsMetricStatistic enum value + AnalyticsMetricStatisticMax = "Max" +) + +// AnalyticsMetricStatistic_Values returns all elements of the AnalyticsMetricStatistic enum +func AnalyticsMetricStatistic_Values() []string { + return []string{ + AnalyticsMetricStatisticSum, + AnalyticsMetricStatisticAvg, + AnalyticsMetricStatisticMax, + } +} + +const ( + // AnalyticsModalitySpeech is a AnalyticsModality enum value + AnalyticsModalitySpeech = "Speech" + + // AnalyticsModalityText is a AnalyticsModality enum value + AnalyticsModalityText = "Text" + + // AnalyticsModalityDtmf is a AnalyticsModality enum value + AnalyticsModalityDtmf = "DTMF" + + // AnalyticsModalityMultiMode is a AnalyticsModality enum value + AnalyticsModalityMultiMode = "MultiMode" +) + +// AnalyticsModality_Values returns all elements of the AnalyticsModality enum +func AnalyticsModality_Values() []string { + return []string{ + AnalyticsModalitySpeech, + AnalyticsModalityText, + AnalyticsModalityDtmf, + AnalyticsModalityMultiMode, + } +} + +const ( + // AnalyticsNodeTypeInner is a AnalyticsNodeType enum value + AnalyticsNodeTypeInner = "Inner" + + // AnalyticsNodeTypeExit is a AnalyticsNodeType enum value + AnalyticsNodeTypeExit = "Exit" +) + +// AnalyticsNodeType_Values returns all elements of the AnalyticsNodeType enum +func AnalyticsNodeType_Values() []string { + return []string{ + AnalyticsNodeTypeInner, + AnalyticsNodeTypeExit, + } +} + +const ( + // AnalyticsSessionFieldConversationEndState is a AnalyticsSessionField enum value + AnalyticsSessionFieldConversationEndState = "ConversationEndState" + + // AnalyticsSessionFieldLocaleId is a AnalyticsSessionField enum value + AnalyticsSessionFieldLocaleId = "LocaleId" +) + +// AnalyticsSessionField_Values returns all elements of the AnalyticsSessionField enum +func AnalyticsSessionField_Values() []string { + return []string{ + AnalyticsSessionFieldConversationEndState, + AnalyticsSessionFieldLocaleId, + } +} + +const ( + // AnalyticsSessionFilterNameBotAliasId is a AnalyticsSessionFilterName enum value + AnalyticsSessionFilterNameBotAliasId = "BotAliasId" + + // AnalyticsSessionFilterNameBotVersion is a AnalyticsSessionFilterName enum value + AnalyticsSessionFilterNameBotVersion = "BotVersion" + + // AnalyticsSessionFilterNameLocaleId is a AnalyticsSessionFilterName enum value + AnalyticsSessionFilterNameLocaleId = "LocaleId" + + // AnalyticsSessionFilterNameModality is a AnalyticsSessionFilterName enum value + AnalyticsSessionFilterNameModality = "Modality" + + // AnalyticsSessionFilterNameChannel is a AnalyticsSessionFilterName enum value + AnalyticsSessionFilterNameChannel = "Channel" + + // AnalyticsSessionFilterNameDuration is a AnalyticsSessionFilterName enum value + AnalyticsSessionFilterNameDuration = "Duration" + + // AnalyticsSessionFilterNameConversationEndState is a AnalyticsSessionFilterName enum value + AnalyticsSessionFilterNameConversationEndState = "ConversationEndState" + + // AnalyticsSessionFilterNameSessionId is a AnalyticsSessionFilterName enum value + AnalyticsSessionFilterNameSessionId = "SessionId" + + // AnalyticsSessionFilterNameOriginatingRequestId is a AnalyticsSessionFilterName enum value + AnalyticsSessionFilterNameOriginatingRequestId = "OriginatingRequestId" + + // AnalyticsSessionFilterNameIntentPath is a AnalyticsSessionFilterName enum value + AnalyticsSessionFilterNameIntentPath = "IntentPath" +) + +// AnalyticsSessionFilterName_Values returns all elements of the AnalyticsSessionFilterName enum +func AnalyticsSessionFilterName_Values() []string { + return []string{ + AnalyticsSessionFilterNameBotAliasId, + AnalyticsSessionFilterNameBotVersion, + AnalyticsSessionFilterNameLocaleId, + AnalyticsSessionFilterNameModality, + AnalyticsSessionFilterNameChannel, + AnalyticsSessionFilterNameDuration, + AnalyticsSessionFilterNameConversationEndState, + AnalyticsSessionFilterNameSessionId, + AnalyticsSessionFilterNameOriginatingRequestId, + AnalyticsSessionFilterNameIntentPath, + } +} + +const ( + // AnalyticsSessionMetricNameCount is a AnalyticsSessionMetricName enum value + AnalyticsSessionMetricNameCount = "Count" + + // AnalyticsSessionMetricNameSuccess is a AnalyticsSessionMetricName enum value + AnalyticsSessionMetricNameSuccess = "Success" + + // AnalyticsSessionMetricNameFailure is a AnalyticsSessionMetricName enum value + AnalyticsSessionMetricNameFailure = "Failure" + + // AnalyticsSessionMetricNameDropped is a AnalyticsSessionMetricName enum value + AnalyticsSessionMetricNameDropped = "Dropped" + + // AnalyticsSessionMetricNameDuration is a AnalyticsSessionMetricName enum value + AnalyticsSessionMetricNameDuration = "Duration" + + // AnalyticsSessionMetricNameTurnsPerConversation is a AnalyticsSessionMetricName enum value + AnalyticsSessionMetricNameTurnsPerConversation = "TurnsPerConversation" + + // AnalyticsSessionMetricNameConcurrency is a AnalyticsSessionMetricName enum value + AnalyticsSessionMetricNameConcurrency = "Concurrency" +) + +// AnalyticsSessionMetricName_Values returns all elements of the AnalyticsSessionMetricName enum +func AnalyticsSessionMetricName_Values() []string { + return []string{ + AnalyticsSessionMetricNameCount, + AnalyticsSessionMetricNameSuccess, + AnalyticsSessionMetricNameFailure, + AnalyticsSessionMetricNameDropped, + AnalyticsSessionMetricNameDuration, + AnalyticsSessionMetricNameTurnsPerConversation, + AnalyticsSessionMetricNameConcurrency, + } +} + +const ( + // AnalyticsSessionSortByNameConversationStartTime is a AnalyticsSessionSortByName enum value + AnalyticsSessionSortByNameConversationStartTime = "ConversationStartTime" + + // AnalyticsSessionSortByNameNumberOfTurns is a AnalyticsSessionSortByName enum value + AnalyticsSessionSortByNameNumberOfTurns = "NumberOfTurns" + + // AnalyticsSessionSortByNameDuration is a AnalyticsSessionSortByName enum value + AnalyticsSessionSortByNameDuration = "Duration" +) + +// AnalyticsSessionSortByName_Values returns all elements of the AnalyticsSessionSortByName enum +func AnalyticsSessionSortByName_Values() []string { + return []string{ + AnalyticsSessionSortByNameConversationStartTime, + AnalyticsSessionSortByNameNumberOfTurns, + AnalyticsSessionSortByNameDuration, + } +} + +const ( + // AnalyticsSortOrderAscending is a AnalyticsSortOrder enum value + AnalyticsSortOrderAscending = "Ascending" + + // AnalyticsSortOrderDescending is a AnalyticsSortOrder enum value + AnalyticsSortOrderDescending = "Descending" +) + +// AnalyticsSortOrder_Values returns all elements of the AnalyticsSortOrder enum +func AnalyticsSortOrder_Values() []string { + return []string{ + AnalyticsSortOrderAscending, + AnalyticsSortOrderDescending, + } +} + +const ( + // AnalyticsUtteranceAttributeNameLastUsedIntent is a AnalyticsUtteranceAttributeName enum value + AnalyticsUtteranceAttributeNameLastUsedIntent = "LastUsedIntent" +) + +// AnalyticsUtteranceAttributeName_Values returns all elements of the AnalyticsUtteranceAttributeName enum +func AnalyticsUtteranceAttributeName_Values() []string { + return []string{ + AnalyticsUtteranceAttributeNameLastUsedIntent, + } +} + +const ( + // AnalyticsUtteranceFieldUtteranceText is a AnalyticsUtteranceField enum value + AnalyticsUtteranceFieldUtteranceText = "UtteranceText" + + // AnalyticsUtteranceFieldUtteranceState is a AnalyticsUtteranceField enum value + AnalyticsUtteranceFieldUtteranceState = "UtteranceState" +) + +// AnalyticsUtteranceField_Values returns all elements of the AnalyticsUtteranceField enum +func AnalyticsUtteranceField_Values() []string { + return []string{ + AnalyticsUtteranceFieldUtteranceText, + AnalyticsUtteranceFieldUtteranceState, + } +} + +const ( + // AnalyticsUtteranceFilterNameBotAliasId is a AnalyticsUtteranceFilterName enum value + AnalyticsUtteranceFilterNameBotAliasId = "BotAliasId" + + // AnalyticsUtteranceFilterNameBotVersion is a AnalyticsUtteranceFilterName enum value + AnalyticsUtteranceFilterNameBotVersion = "BotVersion" + + // AnalyticsUtteranceFilterNameLocaleId is a AnalyticsUtteranceFilterName enum value + AnalyticsUtteranceFilterNameLocaleId = "LocaleId" + + // AnalyticsUtteranceFilterNameModality is a AnalyticsUtteranceFilterName enum value + AnalyticsUtteranceFilterNameModality = "Modality" + + // AnalyticsUtteranceFilterNameChannel is a AnalyticsUtteranceFilterName enum value + AnalyticsUtteranceFilterNameChannel = "Channel" + + // AnalyticsUtteranceFilterNameSessionId is a AnalyticsUtteranceFilterName enum value + AnalyticsUtteranceFilterNameSessionId = "SessionId" + + // AnalyticsUtteranceFilterNameOriginatingRequestId is a AnalyticsUtteranceFilterName enum value + AnalyticsUtteranceFilterNameOriginatingRequestId = "OriginatingRequestId" + + // AnalyticsUtteranceFilterNameUtteranceState is a AnalyticsUtteranceFilterName enum value + AnalyticsUtteranceFilterNameUtteranceState = "UtteranceState" + + // AnalyticsUtteranceFilterNameUtteranceText is a AnalyticsUtteranceFilterName enum value + AnalyticsUtteranceFilterNameUtteranceText = "UtteranceText" +) + +// AnalyticsUtteranceFilterName_Values returns all elements of the AnalyticsUtteranceFilterName enum +func AnalyticsUtteranceFilterName_Values() []string { + return []string{ + AnalyticsUtteranceFilterNameBotAliasId, + AnalyticsUtteranceFilterNameBotVersion, + AnalyticsUtteranceFilterNameLocaleId, + AnalyticsUtteranceFilterNameModality, + AnalyticsUtteranceFilterNameChannel, + AnalyticsUtteranceFilterNameSessionId, + AnalyticsUtteranceFilterNameOriginatingRequestId, + AnalyticsUtteranceFilterNameUtteranceState, + AnalyticsUtteranceFilterNameUtteranceText, + } +} + +const ( + // AnalyticsUtteranceMetricNameCount is a AnalyticsUtteranceMetricName enum value + AnalyticsUtteranceMetricNameCount = "Count" + + // AnalyticsUtteranceMetricNameMissed is a AnalyticsUtteranceMetricName enum value + AnalyticsUtteranceMetricNameMissed = "Missed" + + // AnalyticsUtteranceMetricNameDetected is a AnalyticsUtteranceMetricName enum value + AnalyticsUtteranceMetricNameDetected = "Detected" + + // AnalyticsUtteranceMetricNameUtteranceTimestamp is a AnalyticsUtteranceMetricName enum value + AnalyticsUtteranceMetricNameUtteranceTimestamp = "UtteranceTimestamp" +) + +// AnalyticsUtteranceMetricName_Values returns all elements of the AnalyticsUtteranceMetricName enum +func AnalyticsUtteranceMetricName_Values() []string { + return []string{ + AnalyticsUtteranceMetricNameCount, + AnalyticsUtteranceMetricNameMissed, + AnalyticsUtteranceMetricNameDetected, + AnalyticsUtteranceMetricNameUtteranceTimestamp, + } +} + +const ( + // AnalyticsUtteranceSortByNameUtteranceTimestamp is a AnalyticsUtteranceSortByName enum value + AnalyticsUtteranceSortByNameUtteranceTimestamp = "UtteranceTimestamp" +) + +// AnalyticsUtteranceSortByName_Values returns all elements of the AnalyticsUtteranceSortByName enum +func AnalyticsUtteranceSortByName_Values() []string { + return []string{ + AnalyticsUtteranceSortByNameUtteranceTimestamp, + } +} + const ( // AssociatedTranscriptFilterNameIntentId is a AssociatedTranscriptFilterName enum value AssociatedTranscriptFilterNameIntentId = "IntentId" @@ -39453,6 +45686,26 @@ func BotAliasStatus_Values() []string { } } +const ( + // BotChannelTypeFacebook is a BotChannelType enum value + BotChannelTypeFacebook = "Facebook" + + // BotChannelTypeSlack is a BotChannelType enum value + BotChannelTypeSlack = "Slack" + + // BotChannelTypeTwilioSms is a BotChannelType enum value + BotChannelTypeTwilioSms = "TwilioSms" +) + +// BotChannelType_Values returns all elements of the BotChannelType enum +func BotChannelType_Values() []string { + return []string{ + BotChannelTypeFacebook, + BotChannelTypeSlack, + BotChannelTypeTwilioSms, + } +} + const ( // BotFilterNameBotName is a BotFilterName enum value BotFilterNameBotName = "BotName" @@ -39721,6 +45974,26 @@ func BuiltInSlotTypeSortAttribute_Values() []string { } } +const ( + // ConversationEndStateSuccess is a ConversationEndState enum value + ConversationEndStateSuccess = "Success" + + // ConversationEndStateFailure is a ConversationEndState enum value + ConversationEndStateFailure = "Failure" + + // ConversationEndStateDropped is a ConversationEndState enum value + ConversationEndStateDropped = "Dropped" +) + +// ConversationEndState_Values returns all elements of the ConversationEndState enum +func ConversationEndState_Values() []string { + return []string{ + ConversationEndStateSuccess, + ConversationEndStateFailure, + ConversationEndStateDropped, + } +} + const ( // ConversationLogsInputModeFilterSpeech is a ConversationLogsInputModeFilter enum value ConversationLogsInputModeFilterSpeech = "Speech" @@ -40065,6 +46338,38 @@ func IntentSortAttribute_Values() []string { } } +const ( + // IntentStateFailed is a IntentState enum value + IntentStateFailed = "Failed" + + // IntentStateFulfilled is a IntentState enum value + IntentStateFulfilled = "Fulfilled" + + // IntentStateInProgress is a IntentState enum value + IntentStateInProgress = "InProgress" + + // IntentStateReadyForFulfillment is a IntentState enum value + IntentStateReadyForFulfillment = "ReadyForFulfillment" + + // IntentStateWaiting is a IntentState enum value + IntentStateWaiting = "Waiting" + + // IntentStateFulfillmentInProgress is a IntentState enum value + IntentStateFulfillmentInProgress = "FulfillmentInProgress" +) + +// IntentState_Values returns all elements of the IntentState enum +func IntentState_Values() []string { + return []string{ + IntentStateFailed, + IntentStateFulfilled, + IntentStateInProgress, + IntentStateReadyForFulfillment, + IntentStateWaiting, + IntentStateFulfillmentInProgress, + } +} + const ( // MergeStrategyOverwrite is a MergeStrategy enum value MergeStrategyOverwrite = "Overwrite" @@ -40618,6 +46923,30 @@ func TranscriptFormat_Values() []string { } } +const ( + // UtteranceContentTypePlainText is a UtteranceContentType enum value + UtteranceContentTypePlainText = "PlainText" + + // UtteranceContentTypeCustomPayload is a UtteranceContentType enum value + UtteranceContentTypeCustomPayload = "CustomPayload" + + // UtteranceContentTypeSsml is a UtteranceContentType enum value + UtteranceContentTypeSsml = "SSML" + + // UtteranceContentTypeImageResponseCard is a UtteranceContentType enum value + UtteranceContentTypeImageResponseCard = "ImageResponseCard" +) + +// UtteranceContentType_Values returns all elements of the UtteranceContentType enum +func UtteranceContentType_Values() []string { + return []string{ + UtteranceContentTypePlainText, + UtteranceContentTypeCustomPayload, + UtteranceContentTypeSsml, + UtteranceContentTypeImageResponseCard, + } +} + const ( // VoiceEngineStandard is a VoiceEngine enum value VoiceEngineStandard = "standard" diff --git a/service/lexmodelsv2/lexmodelsv2iface/interface.go b/service/lexmodelsv2/lexmodelsv2iface/interface.go index 612a7e047d..18afed3efe 100644 --- a/service/lexmodelsv2/lexmodelsv2iface/interface.go +++ b/service/lexmodelsv2/lexmodelsv2iface/interface.go @@ -325,6 +325,24 @@ type LexModelsV2API interface { ListImportsPages(*lexmodelsv2.ListImportsInput, func(*lexmodelsv2.ListImportsOutput, bool) bool) error ListImportsPagesWithContext(aws.Context, *lexmodelsv2.ListImportsInput, func(*lexmodelsv2.ListImportsOutput, bool) bool, ...request.Option) error + ListIntentMetrics(*lexmodelsv2.ListIntentMetricsInput) (*lexmodelsv2.ListIntentMetricsOutput, error) + ListIntentMetricsWithContext(aws.Context, *lexmodelsv2.ListIntentMetricsInput, ...request.Option) (*lexmodelsv2.ListIntentMetricsOutput, error) + ListIntentMetricsRequest(*lexmodelsv2.ListIntentMetricsInput) (*request.Request, *lexmodelsv2.ListIntentMetricsOutput) + + ListIntentMetricsPages(*lexmodelsv2.ListIntentMetricsInput, func(*lexmodelsv2.ListIntentMetricsOutput, bool) bool) error + ListIntentMetricsPagesWithContext(aws.Context, *lexmodelsv2.ListIntentMetricsInput, func(*lexmodelsv2.ListIntentMetricsOutput, bool) bool, ...request.Option) error + + ListIntentPaths(*lexmodelsv2.ListIntentPathsInput) (*lexmodelsv2.ListIntentPathsOutput, error) + ListIntentPathsWithContext(aws.Context, *lexmodelsv2.ListIntentPathsInput, ...request.Option) (*lexmodelsv2.ListIntentPathsOutput, error) + ListIntentPathsRequest(*lexmodelsv2.ListIntentPathsInput) (*request.Request, *lexmodelsv2.ListIntentPathsOutput) + + ListIntentStageMetrics(*lexmodelsv2.ListIntentStageMetricsInput) (*lexmodelsv2.ListIntentStageMetricsOutput, error) + ListIntentStageMetricsWithContext(aws.Context, *lexmodelsv2.ListIntentStageMetricsInput, ...request.Option) (*lexmodelsv2.ListIntentStageMetricsOutput, error) + ListIntentStageMetricsRequest(*lexmodelsv2.ListIntentStageMetricsInput) (*request.Request, *lexmodelsv2.ListIntentStageMetricsOutput) + + ListIntentStageMetricsPages(*lexmodelsv2.ListIntentStageMetricsInput, func(*lexmodelsv2.ListIntentStageMetricsOutput, bool) bool) error + ListIntentStageMetricsPagesWithContext(aws.Context, *lexmodelsv2.ListIntentStageMetricsInput, func(*lexmodelsv2.ListIntentStageMetricsOutput, bool) bool, ...request.Option) error + ListIntents(*lexmodelsv2.ListIntentsInput) (*lexmodelsv2.ListIntentsOutput, error) ListIntentsWithContext(aws.Context, *lexmodelsv2.ListIntentsInput, ...request.Option) (*lexmodelsv2.ListIntentsOutput, error) ListIntentsRequest(*lexmodelsv2.ListIntentsInput) (*request.Request, *lexmodelsv2.ListIntentsOutput) @@ -339,6 +357,20 @@ type LexModelsV2API interface { ListRecommendedIntentsPages(*lexmodelsv2.ListRecommendedIntentsInput, func(*lexmodelsv2.ListRecommendedIntentsOutput, bool) bool) error ListRecommendedIntentsPagesWithContext(aws.Context, *lexmodelsv2.ListRecommendedIntentsInput, func(*lexmodelsv2.ListRecommendedIntentsOutput, bool) bool, ...request.Option) error + ListSessionAnalyticsData(*lexmodelsv2.ListSessionAnalyticsDataInput) (*lexmodelsv2.ListSessionAnalyticsDataOutput, error) + ListSessionAnalyticsDataWithContext(aws.Context, *lexmodelsv2.ListSessionAnalyticsDataInput, ...request.Option) (*lexmodelsv2.ListSessionAnalyticsDataOutput, error) + ListSessionAnalyticsDataRequest(*lexmodelsv2.ListSessionAnalyticsDataInput) (*request.Request, *lexmodelsv2.ListSessionAnalyticsDataOutput) + + ListSessionAnalyticsDataPages(*lexmodelsv2.ListSessionAnalyticsDataInput, func(*lexmodelsv2.ListSessionAnalyticsDataOutput, bool) bool) error + ListSessionAnalyticsDataPagesWithContext(aws.Context, *lexmodelsv2.ListSessionAnalyticsDataInput, func(*lexmodelsv2.ListSessionAnalyticsDataOutput, bool) bool, ...request.Option) error + + ListSessionMetrics(*lexmodelsv2.ListSessionMetricsInput) (*lexmodelsv2.ListSessionMetricsOutput, error) + ListSessionMetricsWithContext(aws.Context, *lexmodelsv2.ListSessionMetricsInput, ...request.Option) (*lexmodelsv2.ListSessionMetricsOutput, error) + ListSessionMetricsRequest(*lexmodelsv2.ListSessionMetricsInput) (*request.Request, *lexmodelsv2.ListSessionMetricsOutput) + + ListSessionMetricsPages(*lexmodelsv2.ListSessionMetricsInput, func(*lexmodelsv2.ListSessionMetricsOutput, bool) bool) error + ListSessionMetricsPagesWithContext(aws.Context, *lexmodelsv2.ListSessionMetricsInput, func(*lexmodelsv2.ListSessionMetricsOutput, bool) bool, ...request.Option) error + ListSlotTypes(*lexmodelsv2.ListSlotTypesInput) (*lexmodelsv2.ListSlotTypesOutput, error) ListSlotTypesWithContext(aws.Context, *lexmodelsv2.ListSlotTypesInput, ...request.Option) (*lexmodelsv2.ListSlotTypesOutput, error) ListSlotTypesRequest(*lexmodelsv2.ListSlotTypesInput) (*request.Request, *lexmodelsv2.ListSlotTypesOutput) @@ -385,6 +417,20 @@ type LexModelsV2API interface { ListTestSetsPages(*lexmodelsv2.ListTestSetsInput, func(*lexmodelsv2.ListTestSetsOutput, bool) bool) error ListTestSetsPagesWithContext(aws.Context, *lexmodelsv2.ListTestSetsInput, func(*lexmodelsv2.ListTestSetsOutput, bool) bool, ...request.Option) error + ListUtteranceAnalyticsData(*lexmodelsv2.ListUtteranceAnalyticsDataInput) (*lexmodelsv2.ListUtteranceAnalyticsDataOutput, error) + ListUtteranceAnalyticsDataWithContext(aws.Context, *lexmodelsv2.ListUtteranceAnalyticsDataInput, ...request.Option) (*lexmodelsv2.ListUtteranceAnalyticsDataOutput, error) + ListUtteranceAnalyticsDataRequest(*lexmodelsv2.ListUtteranceAnalyticsDataInput) (*request.Request, *lexmodelsv2.ListUtteranceAnalyticsDataOutput) + + ListUtteranceAnalyticsDataPages(*lexmodelsv2.ListUtteranceAnalyticsDataInput, func(*lexmodelsv2.ListUtteranceAnalyticsDataOutput, bool) bool) error + ListUtteranceAnalyticsDataPagesWithContext(aws.Context, *lexmodelsv2.ListUtteranceAnalyticsDataInput, func(*lexmodelsv2.ListUtteranceAnalyticsDataOutput, bool) bool, ...request.Option) error + + ListUtteranceMetrics(*lexmodelsv2.ListUtteranceMetricsInput) (*lexmodelsv2.ListUtteranceMetricsOutput, error) + ListUtteranceMetricsWithContext(aws.Context, *lexmodelsv2.ListUtteranceMetricsInput, ...request.Option) (*lexmodelsv2.ListUtteranceMetricsOutput, error) + ListUtteranceMetricsRequest(*lexmodelsv2.ListUtteranceMetricsInput) (*request.Request, *lexmodelsv2.ListUtteranceMetricsOutput) + + ListUtteranceMetricsPages(*lexmodelsv2.ListUtteranceMetricsInput, func(*lexmodelsv2.ListUtteranceMetricsOutput, bool) bool) error + ListUtteranceMetricsPagesWithContext(aws.Context, *lexmodelsv2.ListUtteranceMetricsInput, func(*lexmodelsv2.ListUtteranceMetricsOutput, bool) bool, ...request.Option) error + SearchAssociatedTranscripts(*lexmodelsv2.SearchAssociatedTranscriptsInput) (*lexmodelsv2.SearchAssociatedTranscriptsOutput, error) SearchAssociatedTranscriptsWithContext(aws.Context, *lexmodelsv2.SearchAssociatedTranscriptsInput, ...request.Option) (*lexmodelsv2.SearchAssociatedTranscriptsOutput, error) SearchAssociatedTranscriptsRequest(*lexmodelsv2.SearchAssociatedTranscriptsInput) (*request.Request, *lexmodelsv2.SearchAssociatedTranscriptsOutput) diff --git a/service/m2/api.go b/service/m2/api.go index 845b6b5536..a82e71e87a 100644 --- a/service/m2/api.go +++ b/service/m2/api.go @@ -68,23 +68,23 @@ func (c *M2) CancelBatchJobExecutionRequest(input *CancelBatchJobExecutionInput) // // Returned Error Types: // -// - ValidationException -// One or more parameters provided in the request is not valid. -// -// - ConflictException -// The parameters provided in the request conflict with existing resources. +// - ResourceNotFoundException +// The specified resource was not found. // -// - InternalServerException -// An unexpected error occurred during the processing of the request. +// - ThrottlingException +// The number of requests made exceeds the limit. // // - AccessDeniedException // The account or role doesn't have the right permissions to make the request. // -// - ThrottlingException -// The number of requests made exceeds the limit. +// - ConflictException +// The parameters provided in the request conflict with existing resources. // -// - ResourceNotFoundException -// The specified resource was not found. +// - ValidationException +// One or more parameters provided in the request is not valid. +// +// - InternalServerException +// An unexpected error occurred during the processing of the request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/m2-2021-04-28/CancelBatchJobExecution func (c *M2) CancelBatchJobExecution(input *CancelBatchJobExecutionInput) (*CancelBatchJobExecutionOutput, error) { @@ -163,25 +163,25 @@ func (c *M2) CreateApplicationRequest(input *CreateApplicationInput) (req *reque // // Returned Error Types: // -// - ValidationException -// One or more parameters provided in the request is not valid. -// // - ServiceQuotaExceededException // One or more quotas for Amazon Web Services Mainframe Modernization exceeds // the limit. // +// - ThrottlingException +// The number of requests made exceeds the limit. +// +// - AccessDeniedException +// The account or role doesn't have the right permissions to make the request. +// // - ConflictException // The parameters provided in the request conflict with existing resources. // +// - ValidationException +// One or more parameters provided in the request is not valid. +// // - InternalServerException // An unexpected error occurred during the processing of the request. // -// - AccessDeniedException -// The account or role doesn't have the right permissions to make the request. -// -// - ThrottlingException -// The number of requests made exceeds the limit. -// // See also, https://docs.aws.amazon.com/goto/WebAPI/m2-2021-04-28/CreateApplication func (c *M2) CreateApplication(input *CreateApplicationInput) (*CreateApplicationOutput, error) { req, out := c.CreateApplicationRequest(input) @@ -258,27 +258,27 @@ func (c *M2) CreateDataSetImportTaskRequest(input *CreateDataSetImportTaskInput) // // Returned Error Types: // -// - ValidationException -// One or more parameters provided in the request is not valid. +// - ResourceNotFoundException +// The specified resource was not found. // // - ServiceQuotaExceededException // One or more quotas for Amazon Web Services Mainframe Modernization exceeds // the limit. // -// - ConflictException -// The parameters provided in the request conflict with existing resources. -// -// - InternalServerException -// An unexpected error occurred during the processing of the request. +// - ThrottlingException +// The number of requests made exceeds the limit. // // - AccessDeniedException // The account or role doesn't have the right permissions to make the request. // -// - ThrottlingException -// The number of requests made exceeds the limit. +// - ConflictException +// The parameters provided in the request conflict with existing resources. // -// - ResourceNotFoundException -// The specified resource was not found. +// - ValidationException +// One or more parameters provided in the request is not valid. +// +// - InternalServerException +// An unexpected error occurred during the processing of the request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/m2-2021-04-28/CreateDataSetImportTask func (c *M2) CreateDataSetImportTask(input *CreateDataSetImportTaskInput) (*CreateDataSetImportTaskOutput, error) { @@ -356,27 +356,27 @@ func (c *M2) CreateDeploymentRequest(input *CreateDeploymentInput) (req *request // // Returned Error Types: // -// - ValidationException -// One or more parameters provided in the request is not valid. +// - ResourceNotFoundException +// The specified resource was not found. // // - ServiceQuotaExceededException // One or more quotas for Amazon Web Services Mainframe Modernization exceeds // the limit. // -// - ConflictException -// The parameters provided in the request conflict with existing resources. -// -// - InternalServerException -// An unexpected error occurred during the processing of the request. +// - ThrottlingException +// The number of requests made exceeds the limit. // // - AccessDeniedException // The account or role doesn't have the right permissions to make the request. // -// - ThrottlingException -// The number of requests made exceeds the limit. +// - ConflictException +// The parameters provided in the request conflict with existing resources. // -// - ResourceNotFoundException -// The specified resource was not found. +// - ValidationException +// One or more parameters provided in the request is not valid. +// +// - InternalServerException +// An unexpected error occurred during the processing of the request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/m2-2021-04-28/CreateDeployment func (c *M2) CreateDeployment(input *CreateDeploymentInput) (*CreateDeploymentOutput, error) { @@ -454,25 +454,25 @@ func (c *M2) CreateEnvironmentRequest(input *CreateEnvironmentInput) (req *reque // // Returned Error Types: // -// - ValidationException -// One or more parameters provided in the request is not valid. -// // - ServiceQuotaExceededException // One or more quotas for Amazon Web Services Mainframe Modernization exceeds // the limit. // +// - ThrottlingException +// The number of requests made exceeds the limit. +// +// - AccessDeniedException +// The account or role doesn't have the right permissions to make the request. +// // - ConflictException // The parameters provided in the request conflict with existing resources. // +// - ValidationException +// One or more parameters provided in the request is not valid. +// // - InternalServerException // An unexpected error occurred during the processing of the request. // -// - AccessDeniedException -// The account or role doesn't have the right permissions to make the request. -// -// - ThrottlingException -// The number of requests made exceeds the limit. -// // See also, https://docs.aws.amazon.com/goto/WebAPI/m2-2021-04-28/CreateEnvironment func (c *M2) CreateEnvironment(input *CreateEnvironmentInput) (*CreateEnvironmentOutput, error) { req, out := c.CreateEnvironmentRequest(input) @@ -550,21 +550,21 @@ func (c *M2) DeleteApplicationRequest(input *DeleteApplicationInput) (req *reque // // Returned Error Types: // -// - ValidationException -// One or more parameters provided in the request is not valid. +// - ThrottlingException +// The number of requests made exceeds the limit. +// +// - AccessDeniedException +// The account or role doesn't have the right permissions to make the request. // // - ConflictException // The parameters provided in the request conflict with existing resources. // +// - ValidationException +// One or more parameters provided in the request is not valid. +// // - InternalServerException // An unexpected error occurred during the processing of the request. // -// - AccessDeniedException -// The account or role doesn't have the right permissions to make the request. -// -// - ThrottlingException -// The number of requests made exceeds the limit. -// // See also, https://docs.aws.amazon.com/goto/WebAPI/m2-2021-04-28/DeleteApplication func (c *M2) DeleteApplication(input *DeleteApplicationInput) (*DeleteApplicationOutput, error) { req, out := c.DeleteApplicationRequest(input) @@ -646,23 +646,23 @@ func (c *M2) DeleteApplicationFromEnvironmentRequest(input *DeleteApplicationFro // // Returned Error Types: // -// - ValidationException -// One or more parameters provided in the request is not valid. -// -// - ConflictException -// The parameters provided in the request conflict with existing resources. +// - ResourceNotFoundException +// The specified resource was not found. // -// - InternalServerException -// An unexpected error occurred during the processing of the request. +// - ThrottlingException +// The number of requests made exceeds the limit. // // - AccessDeniedException // The account or role doesn't have the right permissions to make the request. // -// - ThrottlingException -// The number of requests made exceeds the limit. +// - ConflictException +// The parameters provided in the request conflict with existing resources. // -// - ResourceNotFoundException -// The specified resource was not found. +// - ValidationException +// One or more parameters provided in the request is not valid. +// +// - InternalServerException +// An unexpected error occurred during the processing of the request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/m2-2021-04-28/DeleteApplicationFromEnvironment func (c *M2) DeleteApplicationFromEnvironment(input *DeleteApplicationFromEnvironmentInput) (*DeleteApplicationFromEnvironmentOutput, error) { @@ -743,21 +743,21 @@ func (c *M2) DeleteEnvironmentRequest(input *DeleteEnvironmentInput) (req *reque // // Returned Error Types: // -// - ValidationException -// One or more parameters provided in the request is not valid. +// - ThrottlingException +// The number of requests made exceeds the limit. +// +// - AccessDeniedException +// The account or role doesn't have the right permissions to make the request. // // - ConflictException // The parameters provided in the request conflict with existing resources. // +// - ValidationException +// One or more parameters provided in the request is not valid. +// // - InternalServerException // An unexpected error occurred during the processing of the request. // -// - AccessDeniedException -// The account or role doesn't have the right permissions to make the request. -// -// - ThrottlingException -// The number of requests made exceeds the limit. -// // See also, https://docs.aws.amazon.com/goto/WebAPI/m2-2021-04-28/DeleteEnvironment func (c *M2) DeleteEnvironment(input *DeleteEnvironmentInput) (*DeleteEnvironmentOutput, error) { req, out := c.DeleteEnvironmentRequest(input) @@ -834,20 +834,20 @@ func (c *M2) GetApplicationRequest(input *GetApplicationInput) (req *request.Req // // Returned Error Types: // -// - ValidationException -// One or more parameters provided in the request is not valid. +// - ResourceNotFoundException +// The specified resource was not found. // -// - InternalServerException -// An unexpected error occurred during the processing of the request. +// - ThrottlingException +// The number of requests made exceeds the limit. // // - AccessDeniedException // The account or role doesn't have the right permissions to make the request. // -// - ThrottlingException -// The number of requests made exceeds the limit. +// - ValidationException +// One or more parameters provided in the request is not valid. // -// - ResourceNotFoundException -// The specified resource was not found. +// - InternalServerException +// An unexpected error occurred during the processing of the request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/m2-2021-04-28/GetApplication func (c *M2) GetApplication(input *GetApplicationInput) (*GetApplicationOutput, error) { @@ -925,20 +925,20 @@ func (c *M2) GetApplicationVersionRequest(input *GetApplicationVersionInput) (re // // Returned Error Types: // -// - ValidationException -// One or more parameters provided in the request is not valid. +// - ResourceNotFoundException +// The specified resource was not found. // -// - InternalServerException -// An unexpected error occurred during the processing of the request. +// - ThrottlingException +// The number of requests made exceeds the limit. // // - AccessDeniedException // The account or role doesn't have the right permissions to make the request. // -// - ThrottlingException -// The number of requests made exceeds the limit. +// - ValidationException +// One or more parameters provided in the request is not valid. // -// - ResourceNotFoundException -// The specified resource was not found. +// - InternalServerException +// An unexpected error occurred during the processing of the request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/m2-2021-04-28/GetApplicationVersion func (c *M2) GetApplicationVersion(input *GetApplicationVersionInput) (*GetApplicationVersionOutput, error) { @@ -1016,20 +1016,20 @@ func (c *M2) GetBatchJobExecutionRequest(input *GetBatchJobExecutionInput) (req // // Returned Error Types: // -// - ValidationException -// One or more parameters provided in the request is not valid. +// - ResourceNotFoundException +// The specified resource was not found. // -// - InternalServerException -// An unexpected error occurred during the processing of the request. +// - ThrottlingException +// The number of requests made exceeds the limit. // // - AccessDeniedException // The account or role doesn't have the right permissions to make the request. // -// - ThrottlingException -// The number of requests made exceeds the limit. +// - ValidationException +// One or more parameters provided in the request is not valid. // -// - ResourceNotFoundException -// The specified resource was not found. +// - InternalServerException +// An unexpected error occurred during the processing of the request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/m2-2021-04-28/GetBatchJobExecution func (c *M2) GetBatchJobExecution(input *GetBatchJobExecutionInput) (*GetBatchJobExecutionOutput, error) { @@ -1107,20 +1107,20 @@ func (c *M2) GetDataSetDetailsRequest(input *GetDataSetDetailsInput) (req *reque // // Returned Error Types: // -// - ValidationException -// One or more parameters provided in the request is not valid. +// - ResourceNotFoundException +// The specified resource was not found. // -// - InternalServerException -// An unexpected error occurred during the processing of the request. +// - ThrottlingException +// The number of requests made exceeds the limit. // // - AccessDeniedException // The account or role doesn't have the right permissions to make the request. // -// - ThrottlingException -// The number of requests made exceeds the limit. +// - ValidationException +// One or more parameters provided in the request is not valid. // -// - ResourceNotFoundException -// The specified resource was not found. +// - InternalServerException +// An unexpected error occurred during the processing of the request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/m2-2021-04-28/GetDataSetDetails func (c *M2) GetDataSetDetails(input *GetDataSetDetailsInput) (*GetDataSetDetailsOutput, error) { @@ -1199,20 +1199,20 @@ func (c *M2) GetDataSetImportTaskRequest(input *GetDataSetImportTaskInput) (req // // Returned Error Types: // -// - ValidationException -// One or more parameters provided in the request is not valid. +// - ResourceNotFoundException +// The specified resource was not found. // -// - InternalServerException -// An unexpected error occurred during the processing of the request. +// - ThrottlingException +// The number of requests made exceeds the limit. // // - AccessDeniedException // The account or role doesn't have the right permissions to make the request. // -// - ThrottlingException -// The number of requests made exceeds the limit. +// - ValidationException +// One or more parameters provided in the request is not valid. // -// - ResourceNotFoundException -// The specified resource was not found. +// - InternalServerException +// An unexpected error occurred during the processing of the request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/m2-2021-04-28/GetDataSetImportTask func (c *M2) GetDataSetImportTask(input *GetDataSetImportTaskInput) (*GetDataSetImportTaskOutput, error) { @@ -1290,20 +1290,20 @@ func (c *M2) GetDeploymentRequest(input *GetDeploymentInput) (req *request.Reque // // Returned Error Types: // -// - ValidationException -// One or more parameters provided in the request is not valid. +// - ResourceNotFoundException +// The specified resource was not found. // -// - InternalServerException -// An unexpected error occurred during the processing of the request. +// - ThrottlingException +// The number of requests made exceeds the limit. // // - AccessDeniedException // The account or role doesn't have the right permissions to make the request. // -// - ThrottlingException -// The number of requests made exceeds the limit. +// - ValidationException +// One or more parameters provided in the request is not valid. // -// - ResourceNotFoundException -// The specified resource was not found. +// - InternalServerException +// An unexpected error occurred during the processing of the request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/m2-2021-04-28/GetDeployment func (c *M2) GetDeployment(input *GetDeploymentInput) (*GetDeploymentOutput, error) { @@ -1381,20 +1381,20 @@ func (c *M2) GetEnvironmentRequest(input *GetEnvironmentInput) (req *request.Req // // Returned Error Types: // -// - ValidationException -// One or more parameters provided in the request is not valid. +// - ResourceNotFoundException +// The specified resource was not found. // -// - InternalServerException -// An unexpected error occurred during the processing of the request. +// - ThrottlingException +// The number of requests made exceeds the limit. // // - AccessDeniedException // The account or role doesn't have the right permissions to make the request. // -// - ThrottlingException -// The number of requests made exceeds the limit. +// - ValidationException +// One or more parameters provided in the request is not valid. // -// - ResourceNotFoundException -// The specified resource was not found. +// - InternalServerException +// An unexpected error occurred during the processing of the request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/m2-2021-04-28/GetEnvironment func (c *M2) GetEnvironment(input *GetEnvironmentInput) (*GetEnvironmentOutput, error) { @@ -1418,6 +1418,91 @@ func (c *M2) GetEnvironmentWithContext(ctx aws.Context, input *GetEnvironmentInp return out, req.Send() } +const opGetSignedBluinsightsUrl = "GetSignedBluinsightsUrl" + +// GetSignedBluinsightsUrlRequest generates a "aws/request.Request" representing the +// client's request for the GetSignedBluinsightsUrl operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetSignedBluinsightsUrl for more information on using the GetSignedBluinsightsUrl +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the GetSignedBluinsightsUrlRequest method. +// req, resp := client.GetSignedBluinsightsUrlRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/m2-2021-04-28/GetSignedBluinsightsUrl +func (c *M2) GetSignedBluinsightsUrlRequest(input *GetSignedBluinsightsUrlInput) (req *request.Request, output *GetSignedBluinsightsUrlOutput) { + op := &request.Operation{ + Name: opGetSignedBluinsightsUrl, + HTTPMethod: "GET", + HTTPPath: "/signed-bi-url", + } + + if input == nil { + input = &GetSignedBluinsightsUrlInput{} + } + + output = &GetSignedBluinsightsUrlOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetSignedBluinsightsUrl API operation for AWSMainframeModernization. +// +// Gets a single sign-on URL that can be used to connect to AWS Blu Insights. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWSMainframeModernization's +// API operation GetSignedBluinsightsUrl for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The number of requests made exceeds the limit. +// +// - AccessDeniedException +// The account or role doesn't have the right permissions to make the request. +// +// - InternalServerException +// An unexpected error occurred during the processing of the request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/m2-2021-04-28/GetSignedBluinsightsUrl +func (c *M2) GetSignedBluinsightsUrl(input *GetSignedBluinsightsUrlInput) (*GetSignedBluinsightsUrlOutput, error) { + req, out := c.GetSignedBluinsightsUrlRequest(input) + return out, req.Send() +} + +// GetSignedBluinsightsUrlWithContext is the same as GetSignedBluinsightsUrl with the addition of +// the ability to pass a context and additional request options. +// +// See GetSignedBluinsightsUrl for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *M2) GetSignedBluinsightsUrlWithContext(ctx aws.Context, input *GetSignedBluinsightsUrlInput, opts ...request.Option) (*GetSignedBluinsightsUrlOutput, error) { + req, out := c.GetSignedBluinsightsUrlRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opListApplicationVersions = "ListApplicationVersions" // ListApplicationVersionsRequest generates a "aws/request.Request" representing the @@ -1478,20 +1563,20 @@ func (c *M2) ListApplicationVersionsRequest(input *ListApplicationVersionsInput) // // Returned Error Types: // -// - ValidationException -// One or more parameters provided in the request is not valid. +// - ResourceNotFoundException +// The specified resource was not found. // -// - InternalServerException -// An unexpected error occurred during the processing of the request. +// - ThrottlingException +// The number of requests made exceeds the limit. // // - AccessDeniedException // The account or role doesn't have the right permissions to make the request. // -// - ThrottlingException -// The number of requests made exceeds the limit. +// - ValidationException +// One or more parameters provided in the request is not valid. // -// - ResourceNotFoundException -// The specified resource was not found. +// - InternalServerException +// An unexpected error occurred during the processing of the request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/m2-2021-04-28/ListApplicationVersions func (c *M2) ListApplicationVersions(input *ListApplicationVersionsInput) (*ListApplicationVersionsOutput, error) { @@ -1628,18 +1713,18 @@ func (c *M2) ListApplicationsRequest(input *ListApplicationsInput) (req *request // // Returned Error Types: // +// - ThrottlingException +// The number of requests made exceeds the limit. +// +// - AccessDeniedException +// The account or role doesn't have the right permissions to make the request. +// // - ValidationException // One or more parameters provided in the request is not valid. // // - InternalServerException // An unexpected error occurred during the processing of the request. // -// - AccessDeniedException -// The account or role doesn't have the right permissions to make the request. -// -// - ThrottlingException -// The number of requests made exceeds the limit. -// // See also, https://docs.aws.amazon.com/goto/WebAPI/m2-2021-04-28/ListApplications func (c *M2) ListApplications(input *ListApplicationsInput) (*ListApplicationsOutput, error) { req, out := c.ListApplicationsRequest(input) @@ -1775,20 +1860,20 @@ func (c *M2) ListBatchJobDefinitionsRequest(input *ListBatchJobDefinitionsInput) // // Returned Error Types: // -// - ValidationException -// One or more parameters provided in the request is not valid. +// - ResourceNotFoundException +// The specified resource was not found. // -// - InternalServerException -// An unexpected error occurred during the processing of the request. +// - ThrottlingException +// The number of requests made exceeds the limit. // // - AccessDeniedException // The account or role doesn't have the right permissions to make the request. // -// - ThrottlingException -// The number of requests made exceeds the limit. +// - ValidationException +// One or more parameters provided in the request is not valid. // -// - ResourceNotFoundException -// The specified resource was not found. +// - InternalServerException +// An unexpected error occurred during the processing of the request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/m2-2021-04-28/ListBatchJobDefinitions func (c *M2) ListBatchJobDefinitions(input *ListBatchJobDefinitionsInput) (*ListBatchJobDefinitionsOutput, error) { @@ -1924,20 +2009,20 @@ func (c *M2) ListBatchJobExecutionsRequest(input *ListBatchJobExecutionsInput) ( // // Returned Error Types: // -// - ValidationException -// One or more parameters provided in the request is not valid. +// - ResourceNotFoundException +// The specified resource was not found. // -// - InternalServerException -// An unexpected error occurred during the processing of the request. +// - ThrottlingException +// The number of requests made exceeds the limit. // // - AccessDeniedException // The account or role doesn't have the right permissions to make the request. // -// - ThrottlingException -// The number of requests made exceeds the limit. +// - ValidationException +// One or more parameters provided in the request is not valid. // -// - ResourceNotFoundException -// The specified resource was not found. +// - InternalServerException +// An unexpected error occurred during the processing of the request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/m2-2021-04-28/ListBatchJobExecutions func (c *M2) ListBatchJobExecutions(input *ListBatchJobExecutionsInput) (*ListBatchJobExecutionsOutput, error) { @@ -2072,20 +2157,20 @@ func (c *M2) ListDataSetImportHistoryRequest(input *ListDataSetImportHistoryInpu // // Returned Error Types: // -// - ValidationException -// One or more parameters provided in the request is not valid. +// - ResourceNotFoundException +// The specified resource was not found. // -// - InternalServerException -// An unexpected error occurred during the processing of the request. +// - ThrottlingException +// The number of requests made exceeds the limit. // // - AccessDeniedException // The account or role doesn't have the right permissions to make the request. // -// - ThrottlingException -// The number of requests made exceeds the limit. +// - ValidationException +// One or more parameters provided in the request is not valid. // -// - ResourceNotFoundException -// The specified resource was not found. +// - InternalServerException +// An unexpected error occurred during the processing of the request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/m2-2021-04-28/ListDataSetImportHistory func (c *M2) ListDataSetImportHistory(input *ListDataSetImportHistoryInput) (*ListDataSetImportHistoryOutput, error) { @@ -2224,20 +2309,20 @@ func (c *M2) ListDataSetsRequest(input *ListDataSetsInput) (req *request.Request // // Returned Error Types: // -// - ValidationException -// One or more parameters provided in the request is not valid. +// - ResourceNotFoundException +// The specified resource was not found. // -// - InternalServerException -// An unexpected error occurred during the processing of the request. +// - ThrottlingException +// The number of requests made exceeds the limit. // // - AccessDeniedException // The account or role doesn't have the right permissions to make the request. // -// - ThrottlingException -// The number of requests made exceeds the limit. +// - ValidationException +// One or more parameters provided in the request is not valid. // -// - ResourceNotFoundException -// The specified resource was not found. +// - InternalServerException +// An unexpected error occurred during the processing of the request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/m2-2021-04-28/ListDataSets func (c *M2) ListDataSets(input *ListDataSetsInput) (*ListDataSetsOutput, error) { @@ -2374,20 +2459,20 @@ func (c *M2) ListDeploymentsRequest(input *ListDeploymentsInput) (req *request.R // // Returned Error Types: // -// - ValidationException -// One or more parameters provided in the request is not valid. +// - ResourceNotFoundException +// The specified resource was not found. // -// - InternalServerException -// An unexpected error occurred during the processing of the request. +// - ThrottlingException +// The number of requests made exceeds the limit. // // - AccessDeniedException // The account or role doesn't have the right permissions to make the request. // -// - ThrottlingException -// The number of requests made exceeds the limit. +// - ValidationException +// One or more parameters provided in the request is not valid. // -// - ResourceNotFoundException -// The specified resource was not found. +// - InternalServerException +// An unexpected error occurred during the processing of the request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/m2-2021-04-28/ListDeployments func (c *M2) ListDeployments(input *ListDeploymentsInput) (*ListDeploymentsOutput, error) { @@ -2522,18 +2607,18 @@ func (c *M2) ListEngineVersionsRequest(input *ListEngineVersionsInput) (req *req // // Returned Error Types: // +// - ThrottlingException +// The number of requests made exceeds the limit. +// +// - AccessDeniedException +// The account or role doesn't have the right permissions to make the request. +// // - ValidationException // One or more parameters provided in the request is not valid. // // - InternalServerException // An unexpected error occurred during the processing of the request. // -// - AccessDeniedException -// The account or role doesn't have the right permissions to make the request. -// -// - ThrottlingException -// The number of requests made exceeds the limit. -// // See also, https://docs.aws.amazon.com/goto/WebAPI/m2-2021-04-28/ListEngineVersions func (c *M2) ListEngineVersions(input *ListEngineVersionsInput) (*ListEngineVersionsOutput, error) { req, out := c.ListEngineVersionsRequest(input) @@ -2667,18 +2752,18 @@ func (c *M2) ListEnvironmentsRequest(input *ListEnvironmentsInput) (req *request // // Returned Error Types: // +// - ThrottlingException +// The number of requests made exceeds the limit. +// +// - AccessDeniedException +// The account or role doesn't have the right permissions to make the request. +// // - ValidationException // One or more parameters provided in the request is not valid. // // - InternalServerException // An unexpected error occurred during the processing of the request. // -// - AccessDeniedException -// The account or role doesn't have the right permissions to make the request. -// -// - ThrottlingException -// The number of requests made exceeds the limit. -// // See also, https://docs.aws.amazon.com/goto/WebAPI/m2-2021-04-28/ListEnvironments func (c *M2) ListEnvironments(input *ListEnvironmentsInput) (*ListEnvironmentsOutput, error) { req, out := c.ListEnvironmentsRequest(input) @@ -2806,20 +2891,20 @@ func (c *M2) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *r // // Returned Error Types: // -// - ValidationException -// One or more parameters provided in the request is not valid. +// - ResourceNotFoundException +// The specified resource was not found. // -// - InternalServerException -// An unexpected error occurred during the processing of the request. +// - ThrottlingException +// The number of requests made exceeds the limit. // // - AccessDeniedException // The account or role doesn't have the right permissions to make the request. // -// - ThrottlingException -// The number of requests made exceeds the limit. +// - ValidationException +// One or more parameters provided in the request is not valid. // -// - ResourceNotFoundException -// The specified resource was not found. +// - InternalServerException +// An unexpected error occurred during the processing of the request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/m2-2021-04-28/ListTagsForResource func (c *M2) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { @@ -2898,23 +2983,23 @@ func (c *M2) StartApplicationRequest(input *StartApplicationInput) (req *request // // Returned Error Types: // -// - ValidationException -// One or more parameters provided in the request is not valid. -// -// - ConflictException -// The parameters provided in the request conflict with existing resources. +// - ResourceNotFoundException +// The specified resource was not found. // -// - InternalServerException -// An unexpected error occurred during the processing of the request. +// - ThrottlingException +// The number of requests made exceeds the limit. // // - AccessDeniedException // The account or role doesn't have the right permissions to make the request. // -// - ThrottlingException -// The number of requests made exceeds the limit. +// - ConflictException +// The parameters provided in the request conflict with existing resources. // -// - ResourceNotFoundException -// The specified resource was not found. +// - ValidationException +// One or more parameters provided in the request is not valid. +// +// - InternalServerException +// An unexpected error occurred during the processing of the request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/m2-2021-04-28/StartApplication func (c *M2) StartApplication(input *StartApplicationInput) (*StartApplicationOutput, error) { @@ -2994,23 +3079,23 @@ func (c *M2) StartBatchJobRequest(input *StartBatchJobInput) (req *request.Reque // // Returned Error Types: // -// - ValidationException -// One or more parameters provided in the request is not valid. -// -// - ConflictException -// The parameters provided in the request conflict with existing resources. +// - ResourceNotFoundException +// The specified resource was not found. // -// - InternalServerException -// An unexpected error occurred during the processing of the request. +// - ThrottlingException +// The number of requests made exceeds the limit. // // - AccessDeniedException // The account or role doesn't have the right permissions to make the request. // -// - ThrottlingException -// The number of requests made exceeds the limit. +// - ConflictException +// The parameters provided in the request conflict with existing resources. // -// - ResourceNotFoundException -// The specified resource was not found. +// - ValidationException +// One or more parameters provided in the request is not valid. +// +// - InternalServerException +// An unexpected error occurred during the processing of the request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/m2-2021-04-28/StartBatchJob func (c *M2) StartBatchJob(input *StartBatchJobInput) (*StartBatchJobOutput, error) { @@ -3089,23 +3174,23 @@ func (c *M2) StopApplicationRequest(input *StopApplicationInput) (req *request.R // // Returned Error Types: // -// - ValidationException -// One or more parameters provided in the request is not valid. -// -// - ConflictException -// The parameters provided in the request conflict with existing resources. +// - ResourceNotFoundException +// The specified resource was not found. // -// - InternalServerException -// An unexpected error occurred during the processing of the request. +// - ThrottlingException +// The number of requests made exceeds the limit. // // - AccessDeniedException // The account or role doesn't have the right permissions to make the request. // -// - ThrottlingException -// The number of requests made exceeds the limit. +// - ConflictException +// The parameters provided in the request conflict with existing resources. // -// - ResourceNotFoundException -// The specified resource was not found. +// - ValidationException +// One or more parameters provided in the request is not valid. +// +// - InternalServerException +// An unexpected error occurred during the processing of the request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/m2-2021-04-28/StopApplication func (c *M2) StopApplication(input *StopApplicationInput) (*StopApplicationOutput, error) { @@ -3184,24 +3269,24 @@ func (c *M2) TagResourceRequest(input *TagResourceInput) (req *request.Request, // // Returned Error Types: // -// - ValidationException -// One or more parameters provided in the request is not valid. +// - ResourceNotFoundException +// The specified resource was not found. // // - ServiceQuotaExceededException // One or more quotas for Amazon Web Services Mainframe Modernization exceeds // the limit. // -// - InternalServerException -// An unexpected error occurred during the processing of the request. +// - ThrottlingException +// The number of requests made exceeds the limit. // // - AccessDeniedException // The account or role doesn't have the right permissions to make the request. // -// - ThrottlingException -// The number of requests made exceeds the limit. +// - ValidationException +// One or more parameters provided in the request is not valid. // -// - ResourceNotFoundException -// The specified resource was not found. +// - InternalServerException +// An unexpected error occurred during the processing of the request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/m2-2021-04-28/TagResource func (c *M2) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { @@ -3280,20 +3365,20 @@ func (c *M2) UntagResourceRequest(input *UntagResourceInput) (req *request.Reque // // Returned Error Types: // -// - ValidationException -// One or more parameters provided in the request is not valid. +// - ResourceNotFoundException +// The specified resource was not found. // -// - InternalServerException -// An unexpected error occurred during the processing of the request. +// - ThrottlingException +// The number of requests made exceeds the limit. // // - AccessDeniedException // The account or role doesn't have the right permissions to make the request. // -// - ThrottlingException -// The number of requests made exceeds the limit. +// - ValidationException +// One or more parameters provided in the request is not valid. // -// - ResourceNotFoundException -// The specified resource was not found. +// - InternalServerException +// An unexpected error occurred during the processing of the request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/m2-2021-04-28/UntagResource func (c *M2) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { @@ -3371,23 +3456,23 @@ func (c *M2) UpdateApplicationRequest(input *UpdateApplicationInput) (req *reque // // Returned Error Types: // -// - ValidationException -// One or more parameters provided in the request is not valid. -// -// - ConflictException -// The parameters provided in the request conflict with existing resources. +// - ResourceNotFoundException +// The specified resource was not found. // -// - InternalServerException -// An unexpected error occurred during the processing of the request. +// - ThrottlingException +// The number of requests made exceeds the limit. // // - AccessDeniedException // The account or role doesn't have the right permissions to make the request. // -// - ThrottlingException -// The number of requests made exceeds the limit. +// - ConflictException +// The parameters provided in the request conflict with existing resources. // -// - ResourceNotFoundException -// The specified resource was not found. +// - ValidationException +// One or more parameters provided in the request is not valid. +// +// - InternalServerException +// An unexpected error occurred during the processing of the request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/m2-2021-04-28/UpdateApplication func (c *M2) UpdateApplication(input *UpdateApplicationInput) (*UpdateApplicationOutput, error) { @@ -3465,27 +3550,27 @@ func (c *M2) UpdateEnvironmentRequest(input *UpdateEnvironmentInput) (req *reque // // Returned Error Types: // -// - ValidationException -// One or more parameters provided in the request is not valid. +// - ResourceNotFoundException +// The specified resource was not found. // // - ServiceQuotaExceededException // One or more quotas for Amazon Web Services Mainframe Modernization exceeds // the limit. // -// - ConflictException -// The parameters provided in the request conflict with existing resources. -// -// - InternalServerException -// An unexpected error occurred during the processing of the request. +// - ThrottlingException +// The number of requests made exceeds the limit. // // - AccessDeniedException // The account or role doesn't have the right permissions to make the request. // -// - ThrottlingException -// The number of requests made exceeds the limit. +// - ConflictException +// The parameters provided in the request conflict with existing resources. // -// - ResourceNotFoundException -// The specified resource was not found. +// - ValidationException +// One or more parameters provided in the request is not valid. +// +// - InternalServerException +// An unexpected error occurred during the processing of the request. // // See also, https://docs.aws.amazon.com/goto/WebAPI/m2-2021-04-28/UpdateEnvironment func (c *M2) UpdateEnvironment(input *UpdateEnvironmentInput) (*UpdateEnvironmentOutput, error) { @@ -4296,7 +4381,9 @@ type CreateApplicationInput struct { // Name is a required field Name *string `locationName:"name" type:"string" required:"true"` - // The Amazon Resource Name (ARN) of the role associated with the application. + // The Amazon Resource Name (ARN) that identifies a role that the application + // uses to access Amazon Web Services resources that are not part of the application + // or are in a different Amazon Web Services account. RoleArn *string `locationName:"roleArn" type:"string"` // A list of tags to apply to the application. @@ -7597,7 +7684,7 @@ type GetEnvironmentOutput struct { // The number of instances included in the runtime environment. A standalone // runtime environment has a maxiumum of one instance. Currently, a high availability // runtime environment has a maximum of two instances. - ActualCapacity *int64 `locationName:"actualCapacity" min:"1" type:"integer"` + ActualCapacity *int64 `locationName:"actualCapacity" type:"integer"` // The timestamp when the runtime environment was created. // @@ -7838,14 +7925,70 @@ func (s *GetEnvironmentOutput) SetVpcId(v string) *GetEnvironmentOutput { return s } +type GetSignedBluinsightsUrlInput struct { + _ struct{} `type:"structure" nopayload:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSignedBluinsightsUrlInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSignedBluinsightsUrlInput) GoString() string { + return s.String() +} + +type GetSignedBluinsightsUrlOutput struct { + _ struct{} `type:"structure"` + + // Single sign-on AWS Blu Insights URL. + // + // SignedBiUrl is a required field + SignedBiUrl *string `locationName:"signedBiUrl" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSignedBluinsightsUrlOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s GetSignedBluinsightsUrlOutput) GoString() string { + return s.String() +} + +// SetSignedBiUrl sets the SignedBiUrl field's value. +func (s *GetSignedBluinsightsUrlOutput) SetSignedBiUrl(v string) *GetSignedBluinsightsUrlOutput { + s.SignedBiUrl = &v + return s +} + // Defines the details of a high availability configuration. type HighAvailabilityConfig struct { _ struct{} `type:"structure"` - // The number of instances in a high availability configuration. + // The number of instances in a high availability configuration. The minimum + // possible value is 1 and the maximum is 100. // // DesiredCapacity is a required field - DesiredCapacity *int64 `locationName:"desiredCapacity" min:"1" type:"integer" required:"true"` + DesiredCapacity *int64 `locationName:"desiredCapacity" type:"integer" required:"true"` } // String returns the string representation. @@ -7872,9 +8015,6 @@ func (s *HighAvailabilityConfig) Validate() error { if s.DesiredCapacity == nil { invalidParams.Add(request.NewErrParamRequired("DesiredCapacity")) } - if s.DesiredCapacity != nil && *s.DesiredCapacity < 1 { - invalidParams.Add(request.NewErrParamMinValue("DesiredCapacity", 1)) - } if invalidParams.Len() > 0 { return invalidParams @@ -10557,8 +10697,9 @@ type UpdateEnvironmentInput struct { // it will fail if applyDuringMaintenanceWindow is set to true. ApplyDuringMaintenanceWindow *bool `locationName:"applyDuringMaintenanceWindow" type:"boolean"` - // The desired capacity for the runtime environment to update. - DesiredCapacity *int64 `locationName:"desiredCapacity" min:"1" type:"integer"` + // The desired capacity for the runtime environment to update. The minimum possible + // value is 0 and the maximum is 100. + DesiredCapacity *int64 `locationName:"desiredCapacity" type:"integer"` // The version of the runtime engine for the runtime environment. EngineVersion *string `locationName:"engineVersion" type:"string"` @@ -10597,9 +10738,6 @@ func (s UpdateEnvironmentInput) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *UpdateEnvironmentInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "UpdateEnvironmentInput"} - if s.DesiredCapacity != nil && *s.DesiredCapacity < 1 { - invalidParams.Add(request.NewErrParamMinValue("DesiredCapacity", 1)) - } if s.EnvironmentId == nil { invalidParams.Add(request.NewErrParamRequired("EnvironmentId")) } @@ -11196,14 +11334,14 @@ const ( // EnvironmentLifecycleAvailable is a EnvironmentLifecycle enum value EnvironmentLifecycleAvailable = "Available" + // EnvironmentLifecycleUpdating is a EnvironmentLifecycle enum value + EnvironmentLifecycleUpdating = "Updating" + // EnvironmentLifecycleDeleting is a EnvironmentLifecycle enum value EnvironmentLifecycleDeleting = "Deleting" // EnvironmentLifecycleFailed is a EnvironmentLifecycle enum value EnvironmentLifecycleFailed = "Failed" - - // EnvironmentLifecycleUpdating is a EnvironmentLifecycle enum value - EnvironmentLifecycleUpdating = "Updating" ) // EnvironmentLifecycle_Values returns all elements of the EnvironmentLifecycle enum @@ -11211,9 +11349,9 @@ func EnvironmentLifecycle_Values() []string { return []string{ EnvironmentLifecycleCreating, EnvironmentLifecycleAvailable, + EnvironmentLifecycleUpdating, EnvironmentLifecycleDeleting, EnvironmentLifecycleFailed, - EnvironmentLifecycleUpdating, } } diff --git a/service/m2/m2iface/interface.go b/service/m2/m2iface/interface.go index 0444efb6a5..40a61afff5 100644 --- a/service/m2/m2iface/interface.go +++ b/service/m2/m2iface/interface.go @@ -120,6 +120,10 @@ type M2API interface { GetEnvironmentWithContext(aws.Context, *m2.GetEnvironmentInput, ...request.Option) (*m2.GetEnvironmentOutput, error) GetEnvironmentRequest(*m2.GetEnvironmentInput) (*request.Request, *m2.GetEnvironmentOutput) + GetSignedBluinsightsUrl(*m2.GetSignedBluinsightsUrlInput) (*m2.GetSignedBluinsightsUrlOutput, error) + GetSignedBluinsightsUrlWithContext(aws.Context, *m2.GetSignedBluinsightsUrlInput, ...request.Option) (*m2.GetSignedBluinsightsUrlOutput, error) + GetSignedBluinsightsUrlRequest(*m2.GetSignedBluinsightsUrlInput) (*request.Request, *m2.GetSignedBluinsightsUrlOutput) + ListApplicationVersions(*m2.ListApplicationVersionsInput) (*m2.ListApplicationVersionsOutput, error) ListApplicationVersionsWithContext(aws.Context, *m2.ListApplicationVersionsInput, ...request.Option) (*m2.ListApplicationVersionsOutput, error) ListApplicationVersionsRequest(*m2.ListApplicationVersionsInput) (*request.Request, *m2.ListApplicationVersionsOutput) diff --git a/service/snowball/api.go b/service/snowball/api.go index 137842984b..607f0f44b4 100644 --- a/service/snowball/api.go +++ b/service/snowball/api.go @@ -452,7 +452,7 @@ func (c *Snowball) CreateJobRequest(input *CreateJobInput) (req *request.Request // Optimized without GPU // // - Device type: EDGE Capacity: T100 Description: Snowball Edge Storage -// Optimized with EC2 Compute +// Optimized with EC2 Compute This device is replaced with T98. // // - Device type: STANDARD Capacity: T50 Description: Original Snowball device // This device is only available in the Ningxia, Beijing, and Singapore Amazon @@ -462,8 +462,7 @@ func (c *Snowball) CreateJobRequest(input *CreateJobInput) (req *request.Request // This device is only available in the Ningxia, Beijing, and Singapore Amazon // Web Services Region. // -// - Device type: V3_5C Capacity: T32 Description: Snowball Edge Compute -// Optimized without GPU +// - Snow Family device type: RACK_5U_C Capacity: T13 Description: Snowblade. // // - Device type: V3_5S Capacity: T240 Description: Snowball Edge Storage // Optimized 210TB @@ -1870,13 +1869,14 @@ func (c *Snowball) ListCompatibleImagesRequest(input *ListCompatibleImagesInput) // ListCompatibleImages API operation for Amazon Import/Export Snowball. // -// This action returns a list of the different Amazon EC2 Amazon Machine Images -// (AMIs) that are owned by your Amazon Web Services accountthat would be supported -// for use on a Snow device. Currently, supported AMIs are based on the Amazon -// Linux-2, Ubuntu 20.04 LTS - Focal, or Ubuntu 22.04 LTS - Jammy images, available -// on the Amazon Web Services Marketplace. Ubuntu 16.04 LTS - Xenial (HVM) images -// are no longer supported in the Market, but still supported for use on devices -// through Amazon EC2 VM Import/Export and running locally in AMIs. +// This action returns a list of the different Amazon EC2-compatible Amazon +// Machine Images (AMIs) that are owned by your Amazon Web Services accountthat +// would be supported for use on a Snow device. Currently, supported AMIs are +// based on the Amazon Linux-2, Ubuntu 20.04 LTS - Focal, or Ubuntu 22.04 LTS +// - Jammy images, available on the Amazon Web Services Marketplace. Ubuntu +// 16.04 LTS - Xenial (HVM) images are no longer supported in the Market, but +// still supported for use on devices through Amazon EC2 VM Import/Export and +// running locally in AMIs. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2249,6 +2249,142 @@ func (c *Snowball) ListLongTermPricingPagesWithContext(ctx aws.Context, input *L return p.Err() } +const opListPickupLocations = "ListPickupLocations" + +// ListPickupLocationsRequest generates a "aws/request.Request" representing the +// client's request for the ListPickupLocations operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListPickupLocations for more information on using the ListPickupLocations +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListPickupLocationsRequest method. +// req, resp := client.ListPickupLocationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/ListPickupLocations +func (c *Snowball) ListPickupLocationsRequest(input *ListPickupLocationsInput) (req *request.Request, output *ListPickupLocationsOutput) { + op := &request.Operation{ + Name: opListPickupLocations, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListPickupLocationsInput{} + } + + output = &ListPickupLocationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListPickupLocations API operation for Amazon Import/Export Snowball. +// +// A list of locations from which the customer can choose to pickup a device. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Import/Export Snowball's +// API operation ListPickupLocations for usage and error information. +// +// Returned Error Types: +// - InvalidResourceException +// The specified resource can't be found. Check the information you provided +// in your last request, and try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/snowball-2016-06-30/ListPickupLocations +func (c *Snowball) ListPickupLocations(input *ListPickupLocationsInput) (*ListPickupLocationsOutput, error) { + req, out := c.ListPickupLocationsRequest(input) + return out, req.Send() +} + +// ListPickupLocationsWithContext is the same as ListPickupLocations with the addition of +// the ability to pass a context and additional request options. +// +// See ListPickupLocations for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Snowball) ListPickupLocationsWithContext(ctx aws.Context, input *ListPickupLocationsInput, opts ...request.Option) (*ListPickupLocationsOutput, error) { + req, out := c.ListPickupLocationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListPickupLocationsPages iterates over the pages of a ListPickupLocations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListPickupLocations method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListPickupLocations operation. +// pageNum := 0 +// err := client.ListPickupLocationsPages(params, +// func(page *snowball.ListPickupLocationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Snowball) ListPickupLocationsPages(input *ListPickupLocationsInput, fn func(*ListPickupLocationsOutput, bool) bool) error { + return c.ListPickupLocationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListPickupLocationsPagesWithContext same as ListPickupLocationsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *Snowball) ListPickupLocationsPagesWithContext(ctx aws.Context, input *ListPickupLocationsInput, fn func(*ListPickupLocationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListPickupLocationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListPickupLocationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListPickupLocationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListServiceVersions = "ListServiceVersions" // ListServiceVersionsRequest generates a "aws/request.Request" representing the @@ -2762,6 +2898,10 @@ type Address struct { // The third line in a street address that a Snow device is to be delivered // to. Street3 *string `min:"1" type:"string"` + + // Differentiates between delivery address and pickup address in the customer + // account. Provided at job creation. + Type *string `type:"string" enum:"AddressType"` } // String returns the string representation. @@ -2915,6 +3055,12 @@ func (s *Address) SetStreet3(v string) *Address { return s } +// SetType sets the Type field's value. +func (s *Address) SetType(v string) *Address { + s.Type = &v + return s +} + type CancelClusterInput struct { _ struct{} `type:"structure"` @@ -3869,7 +4015,7 @@ type CreateClusterOutput struct { ClusterId *string `min:"39" type:"string"` // List of jobs created for this cluster. For syntax, see ListJobsResult$JobListEntries - // (https://docs.aws.amazon.com/snowball/latest/api-reference/API_ListJobs.html#API_ListJobs_ResponseSyntax) + // (http://amazonaws.com/snowball/latest/api-reference/API_ListJobs.html#API_ListJobs_ResponseSyntax) // in this guide. JobListEntries []*JobListEntry `type:"list"` } @@ -3930,6 +4076,10 @@ type CreateJobInput struct { // Regions. ForwardingAddressId *string `min:"40" type:"string"` + // The highest impact level of data that will be stored or processed on the + // device, provided at job creation. + ImpactLevel *string `type:"string" enum:"ImpactLevel"` + // Defines the type of job that you're creating. JobType *string `type:"string" enum:"JobType"` @@ -3951,10 +4101,15 @@ type CreateJobInput struct { // Storage Gateway service Tape Gateway type. OnDeviceServiceConfiguration *OnDeviceServiceConfiguration `type:"structure"` + // Information identifying the person picking up the device. + PickupDetails *PickupDetails `type:"structure"` + // Allows you to securely operate and manage Snowcone devices remotely from // outside of your internal network. When set to INSTALLED_AUTOSTART, remote // management will automatically be available when the device arrives at your - // location. Otherwise, you need to use the Snowball Client to manage the device. + // location. Otherwise, you need to use the Snowball Edge client to manage the + // device. When set to NOT_INSTALLED, remote management will not be available + // on the device. RemoteManagement *string `type:"string" enum:"RemoteManagement"` // Defines the Amazon S3 buckets associated with this job. @@ -4061,6 +4216,11 @@ func (s *CreateJobInput) Validate() error { invalidParams.AddNested("OnDeviceServiceConfiguration", err.(request.ErrInvalidParams)) } } + if s.PickupDetails != nil { + if err := s.PickupDetails.Validate(); err != nil { + invalidParams.AddNested("PickupDetails", err.(request.ErrInvalidParams)) + } + } if s.Resources != nil { if err := s.Resources.Validate(); err != nil { invalidParams.AddNested("Resources", err.(request.ErrInvalidParams)) @@ -4108,6 +4268,12 @@ func (s *CreateJobInput) SetForwardingAddressId(v string) *CreateJobInput { return s } +// SetImpactLevel sets the ImpactLevel field's value. +func (s *CreateJobInput) SetImpactLevel(v string) *CreateJobInput { + s.ImpactLevel = &v + return s +} + // SetJobType sets the JobType field's value. func (s *CreateJobInput) SetJobType(v string) *CreateJobInput { s.JobType = &v @@ -4138,6 +4304,12 @@ func (s *CreateJobInput) SetOnDeviceServiceConfiguration(v *OnDeviceServiceConfi return s } +// SetPickupDetails sets the PickupDetails field's value. +func (s *CreateJobInput) SetPickupDetails(v *PickupDetails) *CreateJobInput { + s.PickupDetails = v + return s +} + // SetRemoteManagement sets the RemoteManagement field's value. func (s *CreateJobInput) SetRemoteManagement(v string) *CreateJobInput { s.RemoteManagement = &v @@ -4225,7 +4397,9 @@ type CreateLongTermPricingInput struct { LongTermPricingType *string `type:"string" required:"true" enum:"LongTermPricingType"` // The type of Snow Family devices to use for the long-term pricing job. - SnowballType *string `type:"string" enum:"Type"` + // + // SnowballType is a required field + SnowballType *string `type:"string" required:"true" enum:"Type"` } // String returns the string representation. @@ -4252,6 +4426,9 @@ func (s *CreateLongTermPricingInput) Validate() error { if s.LongTermPricingType == nil { invalidParams.Add(request.NewErrParamRequired("LongTermPricingType")) } + if s.SnowballType == nil { + invalidParams.Add(request.NewErrParamRequired("SnowballType")) + } if invalidParams.Len() > 0 { return invalidParams @@ -5063,9 +5240,9 @@ func (s *EKSOnDeviceServiceConfiguration) SetKubernetesVersion(v string) *EKSOnD } // A JSON-formatted object that contains the IDs for an Amazon Machine Image -// (AMI), including the Amazon EC2 AMI ID and the Snow device AMI ID. Each AMI -// has these two IDs to simplify identifying the AMI in both the Amazon Web -// Services Cloud and on the device. +// (AMI), including the Amazon EC2-compatible AMI ID and the Snow device AMI +// ID. Each AMI has these two IDs to simplify identifying the AMI in both the +// Amazon Web Services Cloud and on the device. type Ec2AmiResource struct { _ struct{} `type:"structure"` @@ -6103,6 +6280,10 @@ type JobMetadata struct { // to its primary address. This field is not supported in most regions. ForwardingAddressId *string `min:"40" type:"string"` + // The highest impact level of data that will be stored or processed on the + // device, provided at job creation. + ImpactLevel *string `type:"string" enum:"ImpactLevel"` + // The automatically generated ID for a job, for example JID123e4567-e89b-12d3-a456-426655440000. JobId *string `min:"1" type:"string"` @@ -6136,6 +6317,9 @@ type JobMetadata struct { // Web Services Snow Family device. OnDeviceServiceConfiguration *OnDeviceServiceConfiguration `type:"structure"` + // Information identifying the person picking up the device. + PickupDetails *PickupDetails `type:"structure"` + // Allows you to securely operate and manage Snowcone devices remotely from // outside of your internal network. When set to INSTALLED_AUTOSTART, remote // management will automatically be available when the device arrives at your @@ -6164,6 +6348,9 @@ type JobMetadata struct { // (Snow Family Devices and Capacity) in the Snowcone User Guide. SnowballCapacityPreference *string `type:"string" enum:"Capacity"` + // Unique ID associated with a device. + SnowballId *string `min:"1" type:"string"` + // The type of device used with this job. SnowballType *string `type:"string" enum:"Type"` @@ -6232,6 +6419,12 @@ func (s *JobMetadata) SetForwardingAddressId(v string) *JobMetadata { return s } +// SetImpactLevel sets the ImpactLevel field's value. +func (s *JobMetadata) SetImpactLevel(v string) *JobMetadata { + s.ImpactLevel = &v + return s +} + // SetJobId sets the JobId field's value. func (s *JobMetadata) SetJobId(v string) *JobMetadata { s.JobId = &v @@ -6280,6 +6473,12 @@ func (s *JobMetadata) SetOnDeviceServiceConfiguration(v *OnDeviceServiceConfigur return s } +// SetPickupDetails sets the PickupDetails field's value. +func (s *JobMetadata) SetPickupDetails(v *PickupDetails) *JobMetadata { + s.PickupDetails = v + return s +} + // SetRemoteManagement sets the RemoteManagement field's value. func (s *JobMetadata) SetRemoteManagement(v string) *JobMetadata { s.RemoteManagement = &v @@ -6310,6 +6509,12 @@ func (s *JobMetadata) SetSnowballCapacityPreference(v string) *JobMetadata { return s } +// SetSnowballId sets the SnowballId field's value. +func (s *JobMetadata) SetSnowballId(v string) *JobMetadata { + s.SnowballId = &v + return s +} + // SetSnowballType sets the SnowballType field's value. func (s *JobMetadata) SetSnowballType(v string) *JobMetadata { s.SnowballType = &v @@ -7079,6 +7284,103 @@ func (s *ListLongTermPricingOutput) SetNextToken(v string) *ListLongTermPricingO return s } +type ListPickupLocationsInput struct { + _ struct{} `type:"structure"` + + // The maximum number of locations to list per page. + MaxResults *int64 `type:"integer"` + + // HTTP requests are stateless. To identify what object comes "next" in the + // list of ListPickupLocationsRequest objects, you have the option of specifying + // NextToken as the starting point for your returned list. + NextToken *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListPickupLocationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListPickupLocationsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListPickupLocationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListPickupLocationsInput"} + if s.NextToken != nil && len(*s.NextToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("NextToken", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListPickupLocationsInput) SetMaxResults(v int64) *ListPickupLocationsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListPickupLocationsInput) SetNextToken(v string) *ListPickupLocationsInput { + s.NextToken = &v + return s +} + +type ListPickupLocationsOutput struct { + _ struct{} `type:"structure"` + + // Information about the address of pickup locations. + Addresses []*Address `type:"list"` + + // HTTP requests are stateless. To identify what object comes "next" in the + // list of ListPickupLocationsResult objects, you have the option of specifying + // NextToken as the starting point for your returned list. + NextToken *string `min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListPickupLocationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListPickupLocationsOutput) GoString() string { + return s.String() +} + +// SetAddresses sets the Addresses field's value. +func (s *ListPickupLocationsOutput) SetAddresses(v []*Address) *ListPickupLocationsOutput { + s.Addresses = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListPickupLocationsOutput) SetNextToken(v string) *ListPickupLocationsOutput { + s.NextToken = &v + return s +} + type ListServiceVersionsInput struct { _ struct{} `type:"structure"` @@ -7402,6 +7704,10 @@ func (s *NFSOnDeviceServiceConfiguration) SetStorageUnit(v string) *NFSOnDeviceS type Notification struct { _ struct{} `type:"structure"` + // Used to send SNS notifications for the person picking up the device (identified + // during job creation). + DevicePickupSnsTopicARN *string `type:"string"` + // The list of job states that will trigger a notification for this job. JobStatesToNotify []*string `type:"list" enum:"JobState"` @@ -7436,6 +7742,12 @@ func (s Notification) GoString() string { return s.String() } +// SetDevicePickupSnsTopicARN sets the DevicePickupSnsTopicARN field's value. +func (s *Notification) SetDevicePickupSnsTopicARN(v string) *Notification { + s.DevicePickupSnsTopicARN = &v + return s +} + // SetJobStatesToNotify sets the JobStatesToNotify field's value. func (s *Notification) SetJobStatesToNotify(v []*string) *Notification { s.JobStatesToNotify = v @@ -7535,6 +7847,129 @@ func (s *OnDeviceServiceConfiguration) SetTGWOnDeviceService(v *TGWOnDeviceServi return s } +// Information identifying the person picking up the device. +type PickupDetails struct { + _ struct{} `type:"structure"` + + // The unique ID for a device that will be picked up. + DevicePickupId *string `min:"40" type:"string"` + + // The email address of the person picking up the device. + // + // Email is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by PickupDetails's + // String and GoString methods. + Email *string `min:"3" type:"string" sensitive:"true"` + + // Expiration date of the credential identifying the person picking up the device. + IdentificationExpirationDate *time.Time `type:"timestamp"` + + // Organization that issued the credential identifying the person picking up + // the device. + IdentificationIssuingOrg *string `min:"1" type:"string"` + + // The number on the credential identifying the person picking up the device. + IdentificationNumber *string `min:"1" type:"string"` + + // The name of the person picking up the device. + Name *string `min:"1" type:"string"` + + // The phone number of the person picking up the device. + // + // PhoneNumber is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by PickupDetails's + // String and GoString methods. + PhoneNumber *string `min:"7" type:"string" sensitive:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PickupDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PickupDetails) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PickupDetails) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PickupDetails"} + if s.DevicePickupId != nil && len(*s.DevicePickupId) < 40 { + invalidParams.Add(request.NewErrParamMinLen("DevicePickupId", 40)) + } + if s.Email != nil && len(*s.Email) < 3 { + invalidParams.Add(request.NewErrParamMinLen("Email", 3)) + } + if s.IdentificationIssuingOrg != nil && len(*s.IdentificationIssuingOrg) < 1 { + invalidParams.Add(request.NewErrParamMinLen("IdentificationIssuingOrg", 1)) + } + if s.IdentificationNumber != nil && len(*s.IdentificationNumber) < 1 { + invalidParams.Add(request.NewErrParamMinLen("IdentificationNumber", 1)) + } + if s.Name != nil && len(*s.Name) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Name", 1)) + } + if s.PhoneNumber != nil && len(*s.PhoneNumber) < 7 { + invalidParams.Add(request.NewErrParamMinLen("PhoneNumber", 7)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDevicePickupId sets the DevicePickupId field's value. +func (s *PickupDetails) SetDevicePickupId(v string) *PickupDetails { + s.DevicePickupId = &v + return s +} + +// SetEmail sets the Email field's value. +func (s *PickupDetails) SetEmail(v string) *PickupDetails { + s.Email = &v + return s +} + +// SetIdentificationExpirationDate sets the IdentificationExpirationDate field's value. +func (s *PickupDetails) SetIdentificationExpirationDate(v time.Time) *PickupDetails { + s.IdentificationExpirationDate = &v + return s +} + +// SetIdentificationIssuingOrg sets the IdentificationIssuingOrg field's value. +func (s *PickupDetails) SetIdentificationIssuingOrg(v string) *PickupDetails { + s.IdentificationIssuingOrg = &v + return s +} + +// SetIdentificationNumber sets the IdentificationNumber field's value. +func (s *PickupDetails) SetIdentificationNumber(v string) *PickupDetails { + s.IdentificationNumber = &v + return s +} + +// SetName sets the Name field's value. +func (s *PickupDetails) SetName(v string) *PickupDetails { + s.Name = &v + return s +} + +// SetPhoneNumber sets the PhoneNumber field's value. +func (s *PickupDetails) SetPhoneNumber(v string) *PickupDetails { + s.PhoneNumber = &v + return s +} + // You get this exception if you call CreateReturnShippingLabel and a valid // return shipping label already exists. In this case, use DescribeReturnShippingLabel // to get the URL. @@ -8349,6 +8784,9 @@ type UpdateJobInput struct { // Storage Gateway service Tape Gateway type. OnDeviceServiceConfiguration *OnDeviceServiceConfiguration `type:"structure"` + // Information identifying the person picking up the device. + PickupDetails *PickupDetails `type:"structure"` + // The updated JobResource object, or the updated JobResource object. Resources *JobResource `type:"structure"` @@ -8410,6 +8848,11 @@ func (s *UpdateJobInput) Validate() error { invalidParams.AddNested("OnDeviceServiceConfiguration", err.(request.ErrInvalidParams)) } } + if s.PickupDetails != nil { + if err := s.PickupDetails.Validate(); err != nil { + invalidParams.AddNested("PickupDetails", err.(request.ErrInvalidParams)) + } + } if s.Resources != nil { if err := s.Resources.Validate(); err != nil { invalidParams.AddNested("Resources", err.(request.ErrInvalidParams)) @@ -8458,6 +8901,12 @@ func (s *UpdateJobInput) SetOnDeviceServiceConfiguration(v *OnDeviceServiceConfi return s } +// SetPickupDetails sets the PickupDetails field's value. +func (s *UpdateJobInput) SetPickupDetails(v *PickupDetails) *UpdateJobInput { + s.PickupDetails = v + return s +} + // SetResources sets the Resources field's value. func (s *UpdateJobInput) SetResources(v *JobResource) *UpdateJobInput { s.Resources = v @@ -8721,6 +9170,22 @@ func (s *WirelessConnection) SetIsWifiEnabled(v bool) *WirelessConnection { return s } +const ( + // AddressTypeCustPickup is a AddressType enum value + AddressTypeCustPickup = "CUST_PICKUP" + + // AddressTypeAwsShip is a AddressType enum value + AddressTypeAwsShip = "AWS_SHIP" +) + +// AddressType_Values returns all elements of the AddressType enum +func AddressType_Values() []string { + return []string{ + AddressTypeCustPickup, + AddressTypeAwsShip, + } +} + const ( // CapacityT50 is a Capacity enum value CapacityT50 = "T50" @@ -8751,6 +9216,9 @@ const ( // CapacityT240 is a Capacity enum value CapacityT240 = "T240" + + // CapacityT13 is a Capacity enum value + CapacityT13 = "T13" ) // Capacity_Values returns all elements of the Capacity enum @@ -8766,6 +9234,7 @@ func Capacity_Values() []string { CapacityT32, CapacityNoPreference, CapacityT240, + CapacityT13, } } @@ -8813,6 +9282,34 @@ func DeviceServiceName_Values() []string { } } +const ( + // ImpactLevelIl2 is a ImpactLevel enum value + ImpactLevelIl2 = "IL2" + + // ImpactLevelIl4 is a ImpactLevel enum value + ImpactLevelIl4 = "IL4" + + // ImpactLevelIl5 is a ImpactLevel enum value + ImpactLevelIl5 = "IL5" + + // ImpactLevelIl6 is a ImpactLevel enum value + ImpactLevelIl6 = "IL6" + + // ImpactLevelIl99 is a ImpactLevel enum value + ImpactLevelIl99 = "IL99" +) + +// ImpactLevel_Values returns all elements of the ImpactLevel enum +func ImpactLevel_Values() []string { + return []string{ + ImpactLevelIl2, + ImpactLevelIl4, + ImpactLevelIl5, + ImpactLevelIl6, + ImpactLevelIl99, + } +} + const ( // JobStateNew is a JobState enum value JobStateNew = "New" @@ -8919,6 +9416,9 @@ const ( // RemoteManagementInstalledAutostart is a RemoteManagement enum value RemoteManagementInstalledAutostart = "INSTALLED_AUTOSTART" + + // RemoteManagementNotInstalled is a RemoteManagement enum value + RemoteManagementNotInstalled = "NOT_INSTALLED" ) // RemoteManagement_Values returns all elements of the RemoteManagement enum @@ -8926,6 +9426,7 @@ func RemoteManagement_Values() []string { return []string{ RemoteManagementInstalledOnly, RemoteManagementInstalledAutostart, + RemoteManagementNotInstalled, } } @@ -9068,6 +9569,9 @@ const ( // TypeV35s is a Type enum value TypeV35s = "V3_5S" + + // TypeRack5uC is a Type enum value + TypeRack5uC = "RACK_5U_C" ) // Type_Values returns all elements of the Type enum @@ -9082,5 +9586,6 @@ func Type_Values() []string { TypeSnc1Ssd, TypeV35c, TypeV35s, + TypeRack5uC, } } diff --git a/service/snowball/examples_test.go b/service/snowball/examples_test.go index 5780ebe3f5..01bea59929 100644 --- a/service/snowball/examples_test.go +++ b/service/snowball/examples_test.go @@ -562,6 +562,33 @@ func ExampleSnowball_ListJobs_shared00() { fmt.Println(result) } +// To get a list of locations from which the customer can choose to pickup a device. +// Returns a specified number of Address objects. Each Address is a pickup location +// address for Snow Family devices. +func ExampleSnowball_ListPickupLocations_shared00() { + svc := snowball.New(session.New()) + input := &snowball.ListPickupLocationsInput{} + + result, err := svc.ListPickupLocations(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case snowball.ErrCodeInvalidResourceException: + fmt.Println(snowball.ErrCodeInvalidResourceException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + // To update a cluster // This action allows you to update certain parameters for a cluster. Once the cluster // changes to a different state, usually within 60 minutes of it being created, this diff --git a/service/snowball/snowballiface/interface.go b/service/snowball/snowballiface/interface.go index 339e7ce49b..1dc94d7cd4 100644 --- a/service/snowball/snowballiface/interface.go +++ b/service/snowball/snowballiface/interface.go @@ -162,6 +162,13 @@ type SnowballAPI interface { ListLongTermPricingPages(*snowball.ListLongTermPricingInput, func(*snowball.ListLongTermPricingOutput, bool) bool) error ListLongTermPricingPagesWithContext(aws.Context, *snowball.ListLongTermPricingInput, func(*snowball.ListLongTermPricingOutput, bool) bool, ...request.Option) error + ListPickupLocations(*snowball.ListPickupLocationsInput) (*snowball.ListPickupLocationsOutput, error) + ListPickupLocationsWithContext(aws.Context, *snowball.ListPickupLocationsInput, ...request.Option) (*snowball.ListPickupLocationsOutput, error) + ListPickupLocationsRequest(*snowball.ListPickupLocationsInput) (*request.Request, *snowball.ListPickupLocationsOutput) + + ListPickupLocationsPages(*snowball.ListPickupLocationsInput, func(*snowball.ListPickupLocationsOutput, bool) bool) error + ListPickupLocationsPagesWithContext(aws.Context, *snowball.ListPickupLocationsInput, func(*snowball.ListPickupLocationsOutput, bool) bool, ...request.Option) error + ListServiceVersions(*snowball.ListServiceVersionsInput) (*snowball.ListServiceVersionsOutput, error) ListServiceVersionsWithContext(aws.Context, *snowball.ListServiceVersionsInput, ...request.Option) (*snowball.ListServiceVersionsOutput, error) ListServiceVersionsRequest(*snowball.ListServiceVersionsInput) (*request.Request, *snowball.ListServiceVersionsOutput) diff --git a/service/translate/api.go b/service/translate/api.go index 88ed4ba698..4494ea12e9 100644 --- a/service/translate/api.go +++ b/service/translate/api.go @@ -2779,6 +2779,9 @@ type Document struct { // * text/plain - The input data consists of unformatted text. Amazon Translate // translates every character in the content. // + // * application/vnd.openxmlformats-officedocument.wordprocessingml.document + // - The input data consists of a Word document (.docx). + // // ContentType is a required field ContentType *string `type:"string" required:"true"` }