From 7616ae0c53c9471c76ae084ed07a118f9d7ddbf0 Mon Sep 17 00:00:00 2001 From: aws-sdk-go-automation <43143561+aws-sdk-go-automation@users.noreply.github.com> Date: Thu, 7 Jul 2022 11:24:07 -0700 Subject: [PATCH] Release v1.44.50 (2022-07-07) (#4472) Release v1.44.50 (2022-07-07) === ### Service Client Updates * `service/chime-sdk-meetings`: Updates service API and documentation * `service/dms`: Updates service API and documentation * New api to migrate event subscriptions to event bridge rules * `service/iot`: Updates service API and documentation * This release adds support to register a CA certificate without having to provide a verification certificate. This also allows multiple AWS accounts to register the same CA in the same region. * `service/iotwireless`: Updates service API, documentation, and paginators * `service/sagemaker`: Updates service API and documentation * Heterogeneous clusters: the ability to launch training jobs with multiple instance types. This enables running component of the training job on the instance type that is most suitable for it. e.g. doing data processing and augmentation on CPU instances and neural network training on GPU instances --- CHANGELOG.md | 13 + aws/version.go | 2 +- .../chime-sdk-meetings/2021-07-15/api-2.json | 21 +- .../chime-sdk-meetings/2021-07-15/docs-2.json | 32 +- models/apis/dms/2016-01-01/api-2.json | 25 + models/apis/dms/2016-01-01/docs-2.json | 17 +- models/apis/iot/2015-05-28/api-2.json | 11 +- models/apis/iot/2015-05-28/docs-2.json | 20 +- models/apis/iotwireless/2020-11-22/api-2.json | 341 ++- .../apis/iotwireless/2020-11-22/docs-2.json | 241 ++- .../iotwireless/2020-11-22/paginators-1.json | 5 + models/apis/sagemaker/2017-07-24/api-2.json | 43 +- models/apis/sagemaker/2017-07-24/docs-2.json | 27 + service/chimesdkmeetings/api.go | 201 +- service/chimesdkmeetings/errors.go | 4 +- service/databasemigrationservice/api.go | 162 ++ .../interface.go | 4 + service/iot/api.go | 98 +- service/iotwireless/api.go | 1851 +++++++++++++++-- .../iotwireless/iotwirelessiface/interface.go | 23 + service/sagemaker/api.go | 125 +- 21 files changed, 3008 insertions(+), 258 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 074126d058..3a233d35f4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,16 @@ +Release v1.44.50 (2022-07-07) +=== + +### Service Client Updates +* `service/chime-sdk-meetings`: Updates service API and documentation +* `service/dms`: Updates service API and documentation + * New api to migrate event subscriptions to event bridge rules +* `service/iot`: Updates service API and documentation + * This release adds support to register a CA certificate without having to provide a verification certificate. This also allows multiple AWS accounts to register the same CA in the same region. +* `service/iotwireless`: Updates service API, documentation, and paginators +* `service/sagemaker`: Updates service API and documentation + * Heterogeneous clusters: the ability to launch training jobs with multiple instance types. This enables running component of the training job on the instance type that is most suitable for it. e.g. doing data processing and augmentation on CPU instances and neural network training on GPU instances + Release v1.44.49 (2022-07-06) === diff --git a/aws/version.go b/aws/version.go index afc5ddab8e..1605c9faa0 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.49" +const SDKVersion = "1.44.50" diff --git a/models/apis/chime-sdk-meetings/2021-07-15/api-2.json b/models/apis/chime-sdk-meetings/2021-07-15/api-2.json index b362fbca19..627c621c08 100644 --- a/models/apis/chime-sdk-meetings/2021-07-15/api-2.json +++ b/models/apis/chime-sdk-meetings/2021-07-15/api-2.json @@ -437,7 +437,8 @@ "ExternalMeetingId":{"shape":"ExternalMeetingId"}, "NotificationsConfiguration":{"shape":"NotificationsConfiguration"}, "MeetingFeatures":{"shape":"MeetingFeaturesConfiguration"}, - "PrimaryMeetingId":{"shape":"PrimaryMeetingId"} + "PrimaryMeetingId":{"shape":"PrimaryMeetingId"}, + "TenantIds":{"shape":"TenantIdList"} } }, "CreateMeetingResponse":{ @@ -465,7 +466,8 @@ "MeetingFeatures":{"shape":"MeetingFeaturesConfiguration"}, "NotificationsConfiguration":{"shape":"NotificationsConfiguration"}, "Attendees":{"shape":"CreateMeetingWithAttendeesRequestItemList"}, - "PrimaryMeetingId":{"shape":"PrimaryMeetingId"} + "PrimaryMeetingId":{"shape":"PrimaryMeetingId"}, + "TenantIds":{"shape":"TenantIdList"} } }, "CreateMeetingWithAttendeesRequestItemList":{ @@ -695,7 +697,8 @@ "MediaRegion":{"shape":"MediaRegion"}, "MediaPlacement":{"shape":"MediaPlacement"}, "MeetingFeatures":{"shape":"MeetingFeaturesConfiguration"}, - "PrimaryMeetingId":{"shape":"PrimaryMeetingId"} + "PrimaryMeetingId":{"shape":"PrimaryMeetingId"}, + "TenantIds":{"shape":"TenantIdList"} } }, "MeetingFeatureStatus":{ @@ -797,6 +800,18 @@ "type":"string", "max":4096 }, + "TenantId":{ + "type":"string", + "max":256, + "min":2, + "pattern":"^(?!.*?(.)\\1{3})[-_!@#$a-zA-Z0-9]*$" + }, + "TenantIdList":{ + "type":"list", + "member":{"shape":"TenantId"}, + "max":5, + "min":1 + }, "ThrottlingException":{ "type":"structure", "members":{ diff --git a/models/apis/chime-sdk-meetings/2021-07-15/docs-2.json b/models/apis/chime-sdk-meetings/2021-07-15/docs-2.json index 48d419775c..9e37f86238 100644 --- a/models/apis/chime-sdk-meetings/2021-07-15/docs-2.json +++ b/models/apis/chime-sdk-meetings/2021-07-15/docs-2.json @@ -3,7 +3,7 @@ "service": "

The Amazon Chime SDK meetings APIs in this section allow software developers to create Amazon Chime SDK meetings, set the AWS Regions for meetings, create and manage users, and send and receive meeting notifications. For more information about the meeting APIs, see Amazon Chime SDK meetings.

", "operations": { "BatchCreateAttendee": "

Creates up to 100 attendees for an active Amazon Chime SDK meeting. For more information about the Amazon Chime SDK, see Using the Amazon Chime SDK in the Amazon Chime Developer Guide.

", - "BatchUpdateAttendeeCapabilitiesExcept": "

Updates AttendeeCapabilities except the capabilities listed in an ExcludedAttendeeIds table.

", + "BatchUpdateAttendeeCapabilitiesExcept": "

Updates AttendeeCapabilities except the capabilities listed in an ExcludedAttendeeIds table.

You use the capabilities with a set of values that control what the capabilities can do, such as SendReceive data. For more information about those values, see .

When using capabilities, be aware of these corner cases:

", "CreateAttendee": "

Creates a new attendee for an active Amazon Chime SDK meeting. For more information about the Amazon Chime SDK, see Using the Amazon Chime SDK in the Amazon Chime Developer Guide.

", "CreateMeeting": "

Creates a new Amazon Chime SDK meeting in the specified media Region with no initial attendees. For more information about specifying media Regions, see Amazon Chime SDK Media Regions in the Amazon Chime Developer Guide. For more information about the Amazon Chime SDK, see Using the Amazon Chime SDK in the Amazon Chime Developer Guide.

", "CreateMeetingWithAttendees": "

Creates a new Amazon Chime SDK meeting in the specified media Region, with attendees. For more information about specifying media Regions, see Amazon Chime SDK Media Regions in the Amazon Chime Developer Guide. For more information about the Amazon Chime SDK, see Using the Amazon Chime SDK in the Amazon Chime Developer Guide.

", @@ -14,7 +14,7 @@ "ListAttendees": "

Lists the attendees for the specified Amazon Chime SDK meeting. For more information about the Amazon Chime SDK, see Using the Amazon Chime SDK in the Amazon Chime Developer Guide.

", "StartMeetingTranscription": "

Starts transcription for the specified meetingId.

", "StopMeetingTranscription": "

Stops transcription for the specified meetingId.

", - "UpdateAttendeeCapabilities": "

The capabilties that you want to update.

" + "UpdateAttendeeCapabilities": "

The capabilties that you want to update.

You use the capabilities with a set of values that control what the capabilities can do, such as SendReceive data. For more information about those values, see .

When using capabilities, be aware of these corner cases:

" }, "shapes": { "Arn": { @@ -31,15 +31,15 @@ "AttendeeList$member": null, "CreateAttendeeResponse$Attendee": "

The attendee information, including attendee ID and join token.

", "GetAttendeeResponse$Attendee": "

The Amazon Chime SDK attendee information.

", - "UpdateAttendeeCapabilitiesResponse$Attendee": null + "UpdateAttendeeCapabilitiesResponse$Attendee": "

The updated attendee data.

" } }, "AttendeeCapabilities": { - "base": "

The media capabilities of an attendee, including audio, video and content.

", + "base": "

The media capabilities of an attendee: audio, video, or content.

You use the capabilities with a set of values that control what the capabilities can do, such as SendReceive data. For more information about those values, see .

When using capabilities, be aware of these corner cases:

", "refs": { - "Attendee$Capabilities": "

The capabilities (audio, video, or content) assigned to an attendee.

", + "Attendee$Capabilities": "

The capabilities assigned to an attendee: audio, video, or content.

You use the capabilities with a set of values that control what the capabilities can do, such as SendReceive data. For more information about those values, see .

When using capabilities, be aware of these corner cases:

", "BatchUpdateAttendeeCapabilitiesExceptRequest$Capabilities": "

The capabilities (audio, video, or content) that you want to update.

", - "CreateAttendeeRequest$Capabilities": "

The capabilities (audio, video, or content) that you want to grant an attendee. If you don't specify capabilities, all users have send and receive capabilities on all media channels by default.

", + "CreateAttendeeRequest$Capabilities": "

The capabilities (audio, video, or content) that you want to grant an attendee. If you don't specify capabilities, all users have send and receive capabilities on all media channels by default.

You use the capabilities with a set of values that control what the capabilities can do, such as SendReceive data. For more information about those values, see .

When using capabilities, be aware of these corner cases:

", "CreateAttendeeRequestItem$Capabilities": "

A list of one or more capabilities.

", "UpdateAttendeeCapabilitiesRequest$Capabilities": "

The capabilties that you want to update.

" } @@ -358,7 +358,7 @@ } }, "ServiceFailureException": { - "base": "

The service is currently unavailable.

", + "base": "

The service encountered an unexpected error.

", "refs": { } }, @@ -427,8 +427,22 @@ "UnprocessableEntityException$RequestId": "

The request id associated with the call responsible for the exception.

" } }, + "TenantId": { + "base": null, + "refs": { + "TenantIdList$member": null + } + }, + "TenantIdList": { + "base": null, + "refs": { + "CreateMeetingRequest$TenantIds": "

A consistent and opaque identifier, created and maintained by the builder to represent a segment of their users.

", + "CreateMeetingWithAttendeesRequest$TenantIds": "

A consistent and opaque identifier, created and maintained by the builder to represent a segment of their users.

", + "Meeting$TenantIds": "

Array of strings.

" + } + }, "ThrottlingException": { - "base": "

The number of requests exceeds the limit.

", + "base": "

The number of customer requests exceeds the request rate limit.

", "refs": { } }, @@ -478,7 +492,7 @@ "TranscribeMedicalRegion": { "base": null, "refs": { - "EngineTranscribeMedicalSettings$Region": "

The AWS Region passed to Amazon Transcribe Medical. If you don't specify a Region, Amazon Chime uses the meeting's Region.

" + "EngineTranscribeMedicalSettings$Region": "

The AWS Region passed to Amazon Transcribe Medical. If you don't specify a Region, Amazon Chime uses the meeting's Region.

" } }, "TranscribeMedicalSpecialty": { diff --git a/models/apis/dms/2016-01-01/api-2.json b/models/apis/dms/2016-01-01/api-2.json index ae079329de..6d03b968dd 100644 --- a/models/apis/dms/2016-01-01/api-2.json +++ b/models/apis/dms/2016-01-01/api-2.json @@ -874,6 +874,19 @@ {"shape":"ResourceQuotaExceededFault"}, {"shape":"AccessDeniedFault"} ] + }, + "UpdateSubscriptionsToEventBridge":{ + "name":"UpdateSubscriptionsToEventBridge", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"UpdateSubscriptionsToEventBridgeMessage"}, + "output":{"shape":"UpdateSubscriptionsToEventBridgeResponse"}, + "errors":[ + {"shape":"AccessDeniedFault"}, + {"shape":"InvalidResourceStateFault"} + ] } }, "shapes":{ @@ -3448,6 +3461,18 @@ "Connection":{"shape":"Connection"} } }, + "UpdateSubscriptionsToEventBridgeMessage":{ + "type":"structure", + "members":{ + "ForceMove":{"shape":"BooleanOptional"} + } + }, + "UpdateSubscriptionsToEventBridgeResponse":{ + "type":"structure", + "members":{ + "Result":{"shape":"String"} + } + }, "UpgradeDependencyFailureFault":{ "type":"structure", "members":{ diff --git a/models/apis/dms/2016-01-01/docs-2.json b/models/apis/dms/2016-01-01/docs-2.json index 3844c5d4a1..428db295af 100644 --- a/models/apis/dms/2016-01-01/docs-2.json +++ b/models/apis/dms/2016-01-01/docs-2.json @@ -65,7 +65,8 @@ "StartReplicationTaskAssessment": "

Starts the replication task assessment for unsupported data types in the source database.

You can only use this operation for a task if the following conditions are true:

If either of these conditions are not met, an InvalidResourceStateFault error will result.

For information about DMS task assessments, see Creating a task assessment report in the Database Migration Service User Guide.

", "StartReplicationTaskAssessmentRun": "

Starts a new premigration assessment run for one or more individual assessments of a migration task.

The assessments that you can specify depend on the source and target database engine and the migration type defined for the given task. To run this operation, your migration task must already be created. After you run this operation, you can review the status of each individual assessment. You can also run the migration task manually after the assessment run and its individual assessments complete.

", "StopReplicationTask": "

Stops the replication task.

", - "TestConnection": "

Tests the connection between the replication instance and the endpoint.

" + "TestConnection": "

Tests the connection between the replication instance and the endpoint.

", + "UpdateSubscriptionsToEventBridge": "

Migrates 10 active and enabled Amazon SNS subscriptions at a time and converts them to corresponding Amazon EventBridge rules. By default, this operation migrates subscriptions only when all your replication instance versions are 3.4.6 or higher. If any replication instances are from versions earlier than 3.4.6, the operation raises an error and tells you to upgrade these instances to version 3.4.6 or higher. To enable migration regardless of version, set the Force option to true. However, if you don't upgrade instances earlier than version 3.4.6, some types of events might not be available when you use Amazon EventBridge.

To call this operation, make sure that you have certain permissions added to your user account. For more information, see Migrating event subscriptions to Amazon EventBridge in the Amazon Web Services Database Migration Service User Guide.

" }, "shapes": { "AccessDeniedFault": { @@ -230,7 +231,8 @@ "S3Settings$AddColumnName": "

An optional parameter that, when set to true or y, you can use to add column name information to the .csv output file.

The default value is false. Valid values are true, false, y, and n.

", "S3Settings$Rfc4180": "

For an S3 source, when this value is set to true or y, each leading double quotation mark has to be followed by an ending double quotation mark. This formatting complies with RFC 4180. When this value is set to false or n, string literals are copied to the target as is. In this case, a delimiter (row or column) signals the end of the field. Thus, you can't use a delimiter as part of the string, because it signals the end of the value.

For an S3 target, an optional parameter used to set behavior to comply with RFC 4180 for data migrated to Amazon S3 using .csv file format only. When this value is set to true or y using Amazon S3 as a target, if the data has quotation marks or newline characters in it, DMS encloses the entire column with an additional pair of double quotation marks (\"). Every quotation mark within the data is repeated twice.

The default value is true. Valid values include true, false, y, and n.

", "S3Settings$AddTrailingPaddingCharacter": "

Use the S3 target endpoint setting AddTrailingPaddingCharacter to add padding on string data. The default value is false.

", - "TableStatistics$FullLoadReloaded": "

A value that indicates if the table was reloaded (true) or loaded as part of a new full load operation (false).

" + "TableStatistics$FullLoadReloaded": "

A value that indicates if the table was reloaded (true) or loaded as part of a new full load operation (false).

", + "UpdateSubscriptionsToEventBridgeMessage$ForceMove": "

When set to true, this operation migrates DMS subscriptions for Amazon SNS notifications no matter what your replication instance version is. If not set or set to false, this operation runs only when all your replication instances are from DMS version 3.4.6 or higher.

" } }, "CancelReplicationTaskAssessmentRunMessage": { @@ -2401,6 +2403,7 @@ "Tag$ResourceArn": "

The Amazon Resource Name (ARN) string that uniquely identifies the resource for which the tag is created.

", "TestConnectionMessage$ReplicationInstanceArn": "

The Amazon Resource Name (ARN) of the replication instance.

", "TestConnectionMessage$EndpointArn": "

The Amazon Resource Name (ARN) string that uniquely identifies the endpoint.

", + "UpdateSubscriptionsToEventBridgeResponse$Result": "

A string that indicates how many event subscriptions were migrated and how many remain to be migrated.

", "VpcSecurityGroupIdList$member": null, "VpcSecurityGroupMembership$VpcSecurityGroupId": "

The VPC security group ID.

", "VpcSecurityGroupMembership$Status": "

The status of the VPC security group.

" @@ -2550,6 +2553,16 @@ "refs": { } }, + "UpdateSubscriptionsToEventBridgeMessage": { + "base": "

", + "refs": { + } + }, + "UpdateSubscriptionsToEventBridgeResponse": { + "base": "

", + "refs": { + } + }, "UpgradeDependencyFailureFault": { "base": "

An upgrade dependency is preventing the database migration.

", "refs": { diff --git a/models/apis/iot/2015-05-28/api-2.json b/models/apis/iot/2015-05-28/api-2.json index ab61f19b31..799e02cd49 100644 --- a/models/apis/iot/2015-05-28/api-2.json +++ b/models/apis/iot/2015-05-28/api-2.json @@ -4810,7 +4810,8 @@ "lastModifiedDate":{"shape":"DateType"}, "customerVersion":{"shape":"CustomerVersion"}, "generationId":{"shape":"GenerationId"}, - "validity":{"shape":"CertificateValidity"} + "validity":{"shape":"CertificateValidity"}, + "certificateMode":{"shape":"CertificateMode"} } }, "CACertificateStatus":{ @@ -11275,10 +11276,7 @@ "Regex":{"type":"string"}, "RegisterCACertificateRequest":{ "type":"structure", - "required":[ - "caCertificate", - "verificationCertificate" - ], + "required":["caCertificate"], "members":{ "caCertificate":{"shape":"CertificatePem"}, "verificationCertificate":{"shape":"CertificatePem"}, @@ -11293,7 +11291,8 @@ "locationName":"allowAutoRegistration" }, "registrationConfig":{"shape":"RegistrationConfig"}, - "tags":{"shape":"TagList"} + "tags":{"shape":"TagList"}, + "certificateMode":{"shape":"CertificateMode"} } }, "RegisterCACertificateResponse":{ diff --git a/models/apis/iot/2015-05-28/docs-2.json b/models/apis/iot/2015-05-28/docs-2.json index cb67f89cf2..11f9a8ec7d 100644 --- a/models/apis/iot/2015-05-28/docs-2.json +++ b/models/apis/iot/2015-05-28/docs-2.json @@ -190,8 +190,8 @@ "ListV2LoggingLevels": "

Lists logging levels.

Requires permission to access the ListV2LoggingLevels action.

", "ListViolationEvents": "

Lists the Device Defender security profile violations discovered during the given time period. You can use filters to limit the results to those alerts issued for a particular security profile, behavior, or thing (device).

Requires permission to access the ListViolationEvents action.

", "PutVerificationStateOnViolation": "

Set a verification state and provide a description of that verification state on a violation (detect alarm).

", - "RegisterCACertificate": "

Registers a CA certificate with IoT. This CA certificate can then be used to sign device certificates, which can be then registered with IoT. You can register up to 10 CA certificates per Amazon Web Services account that have the same subject field. This enables you to have up to 10 certificate authorities sign your device certificates. If you have more than one CA certificate registered, make sure you pass the CA certificate when you register your device certificates with the RegisterCertificate action.

Requires permission to access the RegisterCACertificate action.

", - "RegisterCertificate": "

Registers a device certificate with IoT. If you have more than one CA certificate that has the same subject field, you must specify the CA certificate that was used to sign the device certificate being registered.

Requires permission to access the RegisterCertificate action.

", + "RegisterCACertificate": "

Registers a CA certificate with Amazon Web Services IoT Core. There is no limit to the number of CA certificates you can register in your Amazon Web Services account. You can register up to 10 CA certificates with the same CA subject field per Amazon Web Services account.

Requires permission to access the RegisterCACertificate action.

", + "RegisterCertificate": "

Registers a device certificate with IoT in the same certificate mode as the signing CA. If you have more than one CA certificate that has the same subject field, you must specify the CA certificate that was used to sign the device certificate being registered.

Requires permission to access the RegisterCertificate action.

", "RegisterCertificateWithoutCA": "

Register a certificate that does not have a certificate authority (CA). For supported certificates, consult Certificate signing algorithms supported by IoT.

", "RegisterThing": "

Provisions a thing in the device registry. RegisterThing calls other IoT control plane APIs. These calls might exceed your account level IoT Throttling Limits and cause throttle errors. Please contact Amazon Web Services Customer Support to raise your throttling limits if necessary.

Requires permission to access the RegisterThing action.

", "RejectCertificateTransfer": "

Rejects a pending certificate transfer. After IoT rejects a certificate transfer, the certificate status changes from PENDING_TRANSFER to INACTIVE.

To check for pending certificate transfers, call ListCertificates to enumerate your certificates.

This operation can only be called by the transfer destination. After it is called, the certificate will be returned to the source's account in the INACTIVE state.

Requires permission to access the RejectCertificateTransfer action.

", @@ -1314,8 +1314,8 @@ "BooleanWrapperObject": { "base": null, "refs": { - "Job$isConcurrent": null, - "JobSummary$isConcurrent": null + "Job$isConcurrent": "

Indicates whether a job is concurrent. Will be true when a job is rolling out new job executions or canceling previously created executions, otherwise false.

", + "JobSummary$isConcurrent": "

Indicates whether a job is concurrent. Will be true when a job is rolling out new job executions or canceling previously created executions, otherwise false.

" } }, "Bucket": { @@ -1521,8 +1521,10 @@ "CertificateMode": { "base": null, "refs": { - "Certificate$certificateMode": "

The mode of the certificate.

", - "CertificateDescription$certificateMode": "

The mode of the certificate.

" + "CACertificateDescription$certificateMode": "

The mode of the CA.

All the device certificates that are registered using this CA will be registered in the same mode as the CA. For more information about certificate mode for device certificates, see certificate mode.

", + "Certificate$certificateMode": "

The mode of the certificate.

DEFAULT: A certificate in DEFAULT mode is either generated by Amazon Web Services IoT Core or registered with an issuer certificate authority (CA) in DEFAULT mode. Devices with certificates in DEFAULT mode aren't required to send the Server Name Indication (SNI) extension when connecting to Amazon Web Services IoT Core. However, to use features such as custom domains and VPC endpoints, we recommend that you use the SNI extension when connecting to Amazon Web Services IoT Core.

SNI_ONLY: A certificate in SNI_ONLY mode is registered without an issuer CA. Devices with certificates in SNI_ONLY mode must send the SNI extension when connecting to Amazon Web Services IoT Core.

", + "CertificateDescription$certificateMode": "

The mode of the certificate.

DEFAULT: A certificate in DEFAULT mode is either generated by Amazon Web Services IoT Core or registered with an issuer certificate authority (CA) in DEFAULT mode. Devices with certificates in DEFAULT mode aren't required to send the Server Name Indication (SNI) extension when connecting to Amazon Web Services IoT Core. However, to use features such as custom domains and VPC endpoints, we recommend that you use the SNI extension when connecting to Amazon Web Services IoT Core.

SNI_ONLY: A certificate in SNI_ONLY mode is registered without an issuer CA. Devices with certificates in SNI_ONLY mode must send the SNI extension when connecting to Amazon Web Services IoT Core.

For more information about the value for SNI extension, see Transport security in IoT.

", + "RegisterCACertificateRequest$certificateMode": "

Describes the certificate mode in which the Certificate Authority (CA) will be registered. If the verificationCertificate field is not provided, set certificateMode to be SNI_ONLY. If the verificationCertificate field is provided, set certificateMode to be DEFAULT. When certificateMode is not provided, it defaults to DEFAULT. All the device certificates that are registered using this CA will be registered in the same certificate mode as the CA. For more information about certificate mode for device certificates, see certificate mode.

" } }, "CertificateName": { @@ -1546,7 +1548,7 @@ "CreateKeysAndCertificateResponse$certificatePem": "

The certificate data, in PEM format.

", "CreateProvisioningClaimResponse$certificatePem": "

The provisioning claim certificate.

", "RegisterCACertificateRequest$caCertificate": "

The CA certificate.

", - "RegisterCACertificateRequest$verificationCertificate": "

The private key verification certificate.

", + "RegisterCACertificateRequest$verificationCertificate": "

The private key verification certificate. If certificateMode is SNI_ONLY, the verificationCertificate field must be empty. If certificateMode is DEFAULT or not provided, the verificationCertificate field must not be empty.

", "RegisterCertificateRequest$certificatePem": "

The certificate data, in PEM format.

", "RegisterCertificateRequest$caCertificatePem": "

The CA certificate used to sign the device certificate being registered.

", "RegisterCertificateWithoutCARequest$certificatePem": "

The certificate data, in PEM format.

", @@ -6069,7 +6071,7 @@ "GetCardinalityRequest$queryString": "

The search query string.

", "GetPercentilesRequest$queryString": "

The search query string.

", "GetStatisticsRequest$queryString": "

The query used to search. You can specify \"*\" for the query string to get the count of all indexed things in your Amazon Web Services account.

", - "SearchIndexRequest$queryString": "

The search query string.

", + "SearchIndexRequest$queryString": "

The search query string. For more information about the search query syntax, see Query syntax.

", "UpdateDynamicThingGroupRequest$queryString": "

The dynamic thing group search query string to update.

", "UpdateFleetMetricRequest$queryString": "

The search query string.

" } @@ -6507,7 +6509,7 @@ "DescribeThingRegistrationTaskResponse$roleArn": "

The role ARN that grants access to the input file bucket.

", "EnableIoTLoggingParams$roleArnForLogging": "

The Amazon Resource Name (ARN) of the IAM role used for logging.

", "MitigationAction$roleArn": "

The IAM role ARN used to apply this mitigation action.

", - "PresignedUrlConfig$roleArn": "

The ARN of an IAM role that grants grants permission to download files from the S3 bucket where the job data/updates are stored. The role must also grant permission for IoT to download the files.

", + "PresignedUrlConfig$roleArn": "

The ARN of an IAM role that grants grants permission to download files from the S3 bucket where the job data/updates are stored. The role must also grant permission for IoT to download the files.

For information about addressing the confused deputy problem, see cross-service confused deputy prevention in the Amazon Web Services IoT Core developer guide.

", "RegistrationConfig$roleArn": "

The ARN of the role.

", "ResourceIdentifier$iamRoleArn": "

The ARN of the IAM role that has overly permissive actions.

", "RoleAliasDescription$roleArn": "

The role ARN.

", diff --git a/models/apis/iotwireless/2020-11-22/api-2.json b/models/apis/iotwireless/2020-11-22/api-2.json index db6c93169e..5556b69563 100644 --- a/models/apis/iotwireless/2020-11-22/api-2.json +++ b/models/apis/iotwireless/2020-11-22/api-2.json @@ -786,6 +786,39 @@ {"shape":"ThrottlingException"} ] }, + "GetPosition":{ + "name":"GetPosition", + "http":{ + "method":"GET", + "requestUri":"/positions/{ResourceIdentifier}" + }, + "input":{"shape":"GetPositionRequest"}, + "output":{"shape":"GetPositionResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServerException"} + ] + }, + "GetPositionConfiguration":{ + "name":"GetPositionConfiguration", + "http":{ + "method":"GET", + "requestUri":"/position-configurations/{ResourceIdentifier}", + "responseCode":200 + }, + "input":{"shape":"GetPositionConfigurationRequest"}, + "output":{"shape":"GetPositionConfigurationResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServerException"} + ] + }, "GetResourceEventConfiguration":{ "name":"GetResourceEventConfiguration", "http":{ @@ -1101,6 +1134,22 @@ {"shape":"ThrottlingException"} ] }, + "ListPositionConfigurations":{ + "name":"ListPositionConfigurations", + "http":{ + "method":"GET", + "requestUri":"/position-configurations", + "responseCode":200 + }, + "input":{"shape":"ListPositionConfigurationsRequest"}, + "output":{"shape":"ListPositionConfigurationsResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServerException"} + ] + }, "ListQueuedMessages":{ "name":"ListQueuedMessages", "http":{ @@ -1193,6 +1242,23 @@ {"shape":"AccessDeniedException"} ] }, + "PutPositionConfiguration":{ + "name":"PutPositionConfiguration", + "http":{ + "method":"PUT", + "requestUri":"/position-configurations/{ResourceIdentifier}", + "responseCode":200 + }, + "input":{"shape":"PutPositionConfigurationRequest"}, + "output":{"shape":"PutPositionConfigurationResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServerException"} + ] + }, "PutResourceLogLevel":{ "name":"PutResourceLogLevel", "http":{ @@ -1519,6 +1585,23 @@ {"shape":"ThrottlingException"} ] }, + "UpdatePosition":{ + "name":"UpdatePosition", + "http":{ + "method":"PATCH", + "requestUri":"/positions/{ResourceIdentifier}", + "responseCode":204 + }, + "input":{"shape":"UpdatePositionRequest"}, + "output":{"shape":"UpdatePositionResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"InternalServerException"} + ] + }, "UpdateResourceEventConfiguration":{ "name":"UpdateResourceEventConfiguration", "http":{ @@ -1598,6 +1681,13 @@ "exception":true }, "AccountLinked":{"type":"boolean"}, + "Accuracy":{ + "type":"structure", + "members":{ + "HorizontalAccuracy":{"shape":"HorizontalAccuracy"}, + "VerticalAccuracy":{"shape":"VerticalAccuracy"} + } + }, "AddGwMetadata":{"type":"boolean"}, "AmazonId":{ "type":"string", @@ -2656,7 +2746,8 @@ "members":{ "Fuota":{"shape":"FPort"}, "Multicast":{"shape":"FPort"}, - "ClockSync":{"shape":"FPort"} + "ClockSync":{"shape":"FPort"}, + "Positioning":{"shape":"Positioning"} } }, "FactoryPresetFreqsList":{ @@ -2922,6 +3013,62 @@ "AccountLinked":{"shape":"AccountLinked"} } }, + "GetPositionConfigurationRequest":{ + "type":"structure", + "required":[ + "ResourceIdentifier", + "ResourceType" + ], + "members":{ + "ResourceIdentifier":{ + "shape":"PositionResourceIdentifier", + "location":"uri", + "locationName":"ResourceIdentifier" + }, + "ResourceType":{ + "shape":"PositionResourceType", + "location":"querystring", + "locationName":"resourceType" + } + } + }, + "GetPositionConfigurationResponse":{ + "type":"structure", + "members":{ + "Solvers":{"shape":"PositionSolverDetails"}, + "Destination":{"shape":"DestinationName"} + } + }, + "GetPositionRequest":{ + "type":"structure", + "required":[ + "ResourceIdentifier", + "ResourceType" + ], + "members":{ + "ResourceIdentifier":{ + "shape":"PositionResourceIdentifier", + "location":"uri", + "locationName":"ResourceIdentifier" + }, + "ResourceType":{ + "shape":"PositionResourceType", + "location":"querystring", + "locationName":"resourceType" + } + } + }, + "GetPositionResponse":{ + "type":"structure", + "members":{ + "Position":{"shape":"PositionCoordinate"}, + "Accuracy":{"shape":"Accuracy"}, + "SolverType":{"shape":"PositionSolverType"}, + "SolverProvider":{"shape":"PositionSolverProvider"}, + "SolverVersion":{"shape":"PositionSolverVersion"}, + "Timestamp":{"shape":"ISODateTimeString"} + } + }, "GetResourceEventConfigurationRequest":{ "type":"structure", "required":[ @@ -3198,6 +3345,10 @@ "Status":{"shape":"WirelessGatewayTaskStatus"} } }, + "HorizontalAccuracy":{ + "type":"float", + "min":0 + }, "HrAllowed":{"type":"boolean"}, "ISODateTimeString":{ "type":"string", @@ -3448,6 +3599,33 @@ "Sidewalk":{"shape":"SidewalkAccountList"} } }, + "ListPositionConfigurationsRequest":{ + "type":"structure", + "members":{ + "ResourceType":{ + "shape":"PositionResourceType", + "location":"querystring", + "locationName":"resourceType" + }, + "MaxResults":{ + "shape":"MaxResults", + "location":"querystring", + "locationName":"maxResults" + }, + "NextToken":{ + "shape":"NextToken", + "location":"querystring", + "locationName":"nextToken" + } + } + }, + "ListPositionConfigurationsResponse":{ + "type":"structure", + "members":{ + "PositionConfigurationList":{"shape":"PositionConfigurationList"}, + "NextToken":{"shape":"NextToken"} + } + }, "ListQueuedMessagesRequest":{ "type":"structure", "required":["Id"], @@ -3827,7 +4005,8 @@ "DeviceProfileId":{"shape":"DeviceProfileId"}, "ServiceProfileId":{"shape":"ServiceProfileId"}, "AbpV1_1":{"shape":"UpdateAbpV1_1"}, - "AbpV1_0_x":{"shape":"UpdateAbpV1_0_x"} + "AbpV1_0_x":{"shape":"UpdateAbpV1_0_x"}, + "FPorts":{"shape":"UpdateFPorts"} } }, "LoRaWANUpdateGatewayTaskCreate":{ @@ -4054,6 +4233,82 @@ "max":4096, "min":128 }, + "PositionConfigurationFec":{ + "type":"string", + "enum":[ + "ROSE", + "NONE" + ] + }, + "PositionConfigurationItem":{ + "type":"structure", + "members":{ + "ResourceIdentifier":{"shape":"PositionResourceIdentifier"}, + "ResourceType":{"shape":"PositionResourceType"}, + "Solvers":{"shape":"PositionSolverDetails"}, + "Destination":{"shape":"DestinationName"} + } + }, + "PositionConfigurationList":{ + "type":"list", + "member":{"shape":"PositionConfigurationItem"} + }, + "PositionConfigurationStatus":{ + "type":"string", + "enum":[ + "Enabled", + "Disabled" + ] + }, + "PositionCoordinate":{ + "type":"list", + "member":{"shape":"PositionCoordinateValue"} + }, + "PositionCoordinateValue":{"type":"float"}, + "PositionResourceIdentifier":{ + "type":"string", + "pattern":"[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}" + }, + "PositionResourceType":{ + "type":"string", + "enum":[ + "WirelessDevice", + "WirelessGateway" + ] + }, + "PositionSolverConfigurations":{ + "type":"structure", + "members":{ + "SemtechGnss":{"shape":"SemtechGnssConfiguration"} + } + }, + "PositionSolverDetails":{ + "type":"structure", + "members":{ + "SemtechGnss":{"shape":"SemtechGnssDetail"} + } + }, + "PositionSolverProvider":{ + "type":"string", + "enum":["Semtech"] + }, + "PositionSolverType":{ + "type":"string", + "enum":["GNSS"] + }, + "PositionSolverVersion":{ + "type":"string", + "max":50, + "min":0 + }, + "Positioning":{ + "type":"structure", + "members":{ + "ClockSync":{"shape":"FPort"}, + "Stream":{"shape":"FPort"}, + "Gnss":{"shape":"FPort"} + } + }, "PrAllowed":{"type":"boolean"}, "PresetFreq":{ "type":"integer", @@ -4073,6 +4328,32 @@ "Sidewalk":{"shape":"SidewalkResourceTypeEventConfiguration"} } }, + "PutPositionConfigurationRequest":{ + "type":"structure", + "required":[ + "ResourceIdentifier", + "ResourceType" + ], + "members":{ + "ResourceIdentifier":{ + "shape":"PositionResourceIdentifier", + "location":"uri", + "locationName":"ResourceIdentifier" + }, + "ResourceType":{ + "shape":"PositionResourceType", + "location":"querystring", + "locationName":"resourceType" + }, + "Solvers":{"shape":"PositionSolverConfigurations"}, + "Destination":{"shape":"DestinationName"} + } + }, + "PutPositionConfigurationResponse":{ + "type":"structure", + "members":{ + } + }, "PutResourceLogLevelRequest":{ "type":"structure", "required":[ @@ -4197,6 +4478,26 @@ "type":"string", "pattern":"[a-fA-F0-9]{32}" }, + "SemtechGnssConfiguration":{ + "type":"structure", + "required":[ + "Status", + "Fec" + ], + "members":{ + "Status":{"shape":"PositionConfigurationStatus"}, + "Fec":{"shape":"PositionConfigurationFec"} + } + }, + "SemtechGnssDetail":{ + "type":"structure", + "members":{ + "Provider":{"shape":"PositionSolverProvider"}, + "Type":{"shape":"PositionSolverType"}, + "Status":{"shape":"PositionConfigurationStatus"}, + "Fec":{"shape":"PositionConfigurationFec"} + } + }, "SendDataToMulticastGroupRequest":{ "type":"structure", "required":[ @@ -4682,6 +4983,12 @@ "members":{ } }, + "UpdateFPorts":{ + "type":"structure", + "members":{ + "Positioning":{"shape":"Positioning"} + } + }, "UpdateFuotaTaskRequest":{ "type":"structure", "required":["Id"], @@ -4783,6 +5090,32 @@ "members":{ } }, + "UpdatePositionRequest":{ + "type":"structure", + "required":[ + "ResourceIdentifier", + "ResourceType", + "Position" + ], + "members":{ + "ResourceIdentifier":{ + "shape":"PositionResourceIdentifier", + "location":"uri", + "locationName":"ResourceIdentifier" + }, + "ResourceType":{ + "shape":"PositionResourceType", + "location":"querystring", + "locationName":"resourceType" + }, + "Position":{"shape":"PositionCoordinate"} + } + }, + "UpdatePositionResponse":{ + "type":"structure", + "members":{ + } + }, "UpdateResourceEventConfigurationRequest":{ "type":"structure", "required":[ @@ -4885,6 +5218,10 @@ "error":{"httpStatusCode":400}, "exception":true }, + "VerticalAccuracy":{ + "type":"float", + "min":0 + }, "WirelessDeviceArn":{"type":"string"}, "WirelessDeviceEvent":{ "type":"string", diff --git a/models/apis/iotwireless/2020-11-22/docs-2.json b/models/apis/iotwireless/2020-11-22/docs-2.json index ff9a03da7a..dec8363dd9 100644 --- a/models/apis/iotwireless/2020-11-22/docs-2.json +++ b/models/apis/iotwireless/2020-11-22/docs-2.json @@ -40,13 +40,15 @@ "DisassociateWirelessGatewayFromThing": "

Disassociates a wireless gateway from its currently associated thing.

", "GetDestination": "

Gets information about a destination.

", "GetDeviceProfile": "

Gets information about a device profile.

", - "GetEventConfigurationByResourceTypes": "

Get the event configuration by resource types.

", + "GetEventConfigurationByResourceTypes": "

Get the event configuration based on resource types.

", "GetFuotaTask": "

Gets information about a FUOTA task.

", "GetLogLevelsByResourceTypes": "

Returns current default log levels or log levels by resource types. Based on resource types, log levels can be for wireless device log options or wireless gateway log options.

", "GetMulticastGroup": "

Gets information about a multicast group.

", "GetMulticastGroupSession": "

Gets information about a multicast group session.

", "GetNetworkAnalyzerConfiguration": "

Get network analyzer configuration.

", "GetPartnerAccount": "

Gets information about a partner account. If PartnerAccountId and PartnerType are null, returns all partner accounts.

", + "GetPosition": "

Get the position information for a given resource.

", + "GetPositionConfiguration": "

Get position configuration for a given resource.

", "GetResourceEventConfiguration": "

Get the event configuration for a particular resource identifier.

", "GetResourceLogLevel": "

Fetches the log-level override, if any, for a given resource-ID and resource-type. It can be used for a wireless device or a wireless gateway.

", "GetServiceEndpoint": "

Gets the account-specific endpoint for Configuration and Update Server (CUPS) protocol or LoRaWAN Network Server (LNS) connections.

", @@ -67,12 +69,14 @@ "ListMulticastGroupsByFuotaTask": "

List all multicast groups associated with a fuota task.

", "ListNetworkAnalyzerConfigurations": "

Lists the network analyzer configurations.

", "ListPartnerAccounts": "

Lists the partner accounts associated with your AWS account.

", + "ListPositionConfigurations": "

List position configurations for a given resource, such as positioning solvers.

", "ListQueuedMessages": "

List queued messages in the downlink queue.

", "ListServiceProfiles": "

Lists the service profiles registered to your AWS account.

", "ListTagsForResource": "

Lists the tags (metadata) you have assigned to the resource.

", "ListWirelessDevices": "

Lists the wireless devices registered to your AWS account.

", "ListWirelessGatewayTaskDefinitions": "

List the wireless gateway tasks definitions registered to your AWS account.

", "ListWirelessGateways": "

Lists the wireless gateways registered to your AWS account.

", + "PutPositionConfiguration": "

Put position configuration for a given resource.

", "PutResourceLogLevel": "

Sets the log-level override for a resource-ID and resource-type. This option can be specified for a wireless gateway or a wireless device. A limit of 200 log level override can be set per account.

", "ResetAllResourceLogLevels": "

Removes the log-level overrides for all resources; both wireless devices and wireless gateways.

", "ResetResourceLogLevel": "

Removes the log-level override, if any, for a specific resource-ID and resource-type. It can be used for a wireless device or a wireless gateway.

", @@ -86,12 +90,13 @@ "TestWirelessDevice": "

Simulates a provisioned device by sending an uplink data payload of Hello.

", "UntagResource": "

Removes one or more tags from a resource.

", "UpdateDestination": "

Updates properties of a destination.

", - "UpdateEventConfigurationByResourceTypes": "

Update the event configuration by resource types.

", + "UpdateEventConfigurationByResourceTypes": "

Update the event configuration based on resource types.

", "UpdateFuotaTask": "

Updates properties of a FUOTA task.

", "UpdateLogLevelsByResourceTypes": "

Set default log level, or log levels by resource types. This can be for wireless device log options or wireless gateways log options and is used to control the log messages that'll be displayed in CloudWatch.

", "UpdateMulticastGroup": "

Updates properties of a multicast group session.

", "UpdateNetworkAnalyzerConfiguration": "

Update network analyzer configuration.

", "UpdatePartnerAccount": "

Updates properties of a partner account.

", + "UpdatePosition": "

Update the position information of a resource.

", "UpdateResourceEventConfiguration": "

Update the event configuration for a particular resource identifier.

", "UpdateWirelessDevice": "

Updates properties of a wireless device.

", "UpdateWirelessGateway": "

Updates properties of a wireless gateway.

" @@ -120,6 +125,12 @@ "GetPartnerAccountResponse$AccountLinked": "

Whether the partner account is linked to the AWS account.

" } }, + "Accuracy": { + "base": "

The accuracy of the estimated position in meters. An empty value indicates that no position data is available. A value of ‘0.0’ value indicates that position data is available. This data corresponds to the position information that you specified instead of the position computed by solver.

", + "refs": { + "GetPositionResponse$Accuracy": "

The accuracy of the estimated position in meters. An empty value indicates that no position data is available. A value of ‘0.0’ value indicates that position data is available. This data corresponds to the position information that you specified instead of the position computed by solver.

" + } + }, "AddGwMetadata": { "base": null, "refs": { @@ -332,13 +343,13 @@ "refs": { "EventNotificationItemConfigurations$ConnectionStatus": "

Connection status event configuration for an event configuration item.

", "GetResourceEventConfigurationResponse$ConnectionStatus": "

Event configuration for the connection status event.

", - "UpdateResourceEventConfigurationRequest$ConnectionStatus": "

Event configuration for the connection status event

" + "UpdateResourceEventConfigurationRequest$ConnectionStatus": "

Event configuration for the connection status event.

" } }, "ConnectionStatusResourceTypeEventConfiguration": { "base": "

Connection status resource type event configuration object for enabling or disabling topic.

", "refs": { - "GetEventConfigurationByResourceTypesResponse$ConnectionStatus": "

Resource type event configuration for the connection status event

", + "GetEventConfigurationByResourceTypesResponse$ConnectionStatus": "

Resource type event configuration for the connection status event.

", "UpdateEventConfigurationByResourceTypesRequest$ConnectionStatus": "

Connection status resource type event configuration object for enabling and disabling wireless gateway topic.

" } }, @@ -614,8 +625,11 @@ "Destinations$Name": "

The name of the resource.

", "GetDestinationRequest$Name": "

The name of the resource to get.

", "GetDestinationResponse$Name": "

The name of the resource.

", + "GetPositionConfigurationResponse$Destination": "

The position data destination that describes the AWS IoT rule that processes the device's position data for use by AWS IoT Core for LoRaWAN.

", "GetWirelessDeviceResponse$DestinationName": "

The name of the destination to which the device is assigned.

", "ListWirelessDevicesRequest$DestinationName": "

A filter to list only the wireless devices that use this destination.

", + "PositionConfigurationItem$Destination": "

The position data destination that describes the AWS IoT rule that processes the device's position data for use by AWS IoT Core for LoRaWAN.

", + "PutPositionConfigurationRequest$Destination": "

The position data destination that describes the AWS IoT rule that processes the device's position data for use by AWS IoT Core for LoRaWAN.

", "UpdateDestinationRequest$Name": "

The new name of the resource.

", "UpdateWirelessDeviceRequest$DestinationName": "

The name of the new destination for the device.

", "WirelessDeviceStatistics$DestinationName": "

The name of the destination to which the device is assigned.

" @@ -700,14 +714,14 @@ "base": "

Device registration state event configuration object for enabling and disabling relevant topics.

", "refs": { "EventNotificationItemConfigurations$DeviceRegistrationState": "

Device registration state event configuration for an event configuration item.

", - "GetResourceEventConfigurationResponse$DeviceRegistrationState": "

Event configuration for the device registration state event

", - "UpdateResourceEventConfigurationRequest$DeviceRegistrationState": "

Event configuration for the device registration state event

" + "GetResourceEventConfigurationResponse$DeviceRegistrationState": "

Event configuration for the device registration state event.

", + "UpdateResourceEventConfigurationRequest$DeviceRegistrationState": "

Event configuration for the device registration state event.

" } }, "DeviceRegistrationStateResourceTypeEventConfiguration": { "base": "

Device registration state resource type event configuration object for enabling or disabling topic.

", "refs": { - "GetEventConfigurationByResourceTypesResponse$DeviceRegistrationState": "

Resource type event configuration for the device registration state event

", + "GetEventConfigurationByResourceTypesResponse$DeviceRegistrationState": "

Resource type event configuration for the device registration state event.

", "UpdateEventConfigurationByResourceTypesRequest$DeviceRegistrationState": "

Device registration state resource type event configuration object for enabling and disabling wireless gateway topic.

" } }, @@ -889,8 +903,8 @@ "base": null, "refs": { "EventConfigurationItem$PartnerType": "

Partner type of the resource if the identifier type is PartnerAccountId.

", - "GetResourceEventConfigurationRequest$PartnerType": "

Partner type of the resource if the identifier type is PartnerAccountId.

", - "UpdateResourceEventConfigurationRequest$PartnerType": "

Partner type of the resource if the identifier type is PartnerAccountId

" + "GetResourceEventConfigurationRequest$PartnerType": "

Partner type of the resource if the identifier type is PartnerAccountId.

", + "UpdateResourceEventConfigurationRequest$PartnerType": "

Partner type of the resource if the identifier type is PartnerAccountId

" } }, "EventNotificationResourceType": { @@ -902,12 +916,12 @@ "EventNotificationTopicStatus": { "base": null, "refs": { - "ConnectionStatusEventConfiguration$WirelessGatewayIdEventTopic": "

Enum to denote whether the wireless gateway id connection status event topic is enabled or disabled .

", + "ConnectionStatusEventConfiguration$WirelessGatewayIdEventTopic": "

Enum to denote whether the wireless gateway ID connection status event topic is enabled or disabled.

", "DeviceRegistrationStateEventConfiguration$WirelessDeviceIdEventTopic": "

Enum to denote whether the wireless device id device registration state event topic is enabled or disabled.

", "JoinEventConfiguration$WirelessDeviceIdEventTopic": "

Enum to denote whether the wireless device id join event topic is enabled or disabled.

", - "LoRaWANConnectionStatusEventNotificationConfigurations$GatewayEuiEventTopic": "

Enum to denote whether the gateway eui connection status event topic is enabled or disabled.

", + "LoRaWANConnectionStatusEventNotificationConfigurations$GatewayEuiEventTopic": "

Enum to denote whether the gateway EUI connection status event topic is enabled or disabled.

", "LoRaWANConnectionStatusResourceTypeEventConfiguration$WirelessGatewayEventTopic": "

Enum to denote whether the wireless gateway connection status event topic is enabled or disabled.

", - "LoRaWANJoinEventNotificationConfigurations$DevEuiEventTopic": "

Enum to denote whether the dev eui join event topic is enabled or disabled.

", + "LoRaWANJoinEventNotificationConfigurations$DevEuiEventTopic": "

Enum to denote whether the Dev EUI join event topic is enabled or disabled.

", "LoRaWANJoinResourceTypeEventConfiguration$WirelessDeviceEventTopic": "

Enum to denote whether the wireless device join event topic is enabled or disabled.

", "ProximityEventConfiguration$WirelessDeviceIdEventTopic": "

Enum to denote whether the wireless device id proximity event topic is enabled or disabled.

", "SidewalkEventNotificationConfigurations$AmazonIdEventTopic": "

Enum to denote whether amazon id event topic is enabled or disabled.

", @@ -954,7 +968,10 @@ "FPorts$Multicast": null, "FPorts$ClockSync": null, "LoRaWANMulticastMetadata$FPort": null, - "LoRaWANSendDataToDevice$FPort": null + "LoRaWANSendDataToDevice$FPort": null, + "Positioning$ClockSync": null, + "Positioning$Stream": null, + "Positioning$Gnss": null } }, "FPorts": { @@ -1153,6 +1170,26 @@ "refs": { } }, + "GetPositionConfigurationRequest": { + "base": null, + "refs": { + } + }, + "GetPositionConfigurationResponse": { + "base": null, + "refs": { + } + }, + "GetPositionRequest": { + "base": null, + "refs": { + } + }, + "GetPositionResponse": { + "base": null, + "refs": { + } + }, "GetResourceEventConfigurationRequest": { "base": null, "refs": { @@ -1273,6 +1310,12 @@ "refs": { } }, + "HorizontalAccuracy": { + "base": null, + "refs": { + "Accuracy$HorizontalAccuracy": "

The horizontal accuracy of the estimated position in meters.

" + } + }, "HrAllowed": { "base": null, "refs": { @@ -1283,6 +1326,7 @@ "base": null, "refs": { "DownlinkQueueMessage$ReceivedAt": "

The time at which Iot Wireless received the downlink message.

", + "GetPositionResponse$Timestamp": "

The timestamp at which the device's position was determined.

", "GetWirelessDeviceStatisticsResponse$LastUplinkReceivedAt": "

The date and time when the most recent uplink was received.

", "GetWirelessGatewayStatisticsResponse$LastUplinkReceivedAt": "

The date and time when the most recent uplink was received.

", "GetWirelessGatewayTaskResponse$LastUplinkReceivedAt": "

The date and time when the most recent uplink was received.

", @@ -1358,13 +1402,13 @@ "refs": { "EventNotificationItemConfigurations$Join": "

Join event configuration for an event configuration item.

", "GetResourceEventConfigurationResponse$Join": "

Event configuration for the join event.

", - "UpdateResourceEventConfigurationRequest$Join": "

Event configuration for the join event

" + "UpdateResourceEventConfigurationRequest$Join": "

Event configuration for the join event.

" } }, "JoinResourceTypeEventConfiguration": { "base": "

Join resource type event configuration object for enabling or disabling topic.

", "refs": { - "GetEventConfigurationByResourceTypesResponse$Join": "

Resource type event configuration for the join event

", + "GetEventConfigurationByResourceTypesResponse$Join": "

Resource type event configuration for the join event.

", "UpdateEventConfigurationByResourceTypesRequest$Join": "

Join resource type event configuration object for enabling and disabling wireless device topic.

" } }, @@ -1448,6 +1492,16 @@ "refs": { } }, + "ListPositionConfigurationsRequest": { + "base": null, + "refs": { + } + }, + "ListPositionConfigurationsResponse": { + "base": null, + "refs": { + } + }, "ListQueuedMessagesRequest": { "base": null, "refs": { @@ -1719,6 +1773,7 @@ "ListMulticastGroupsRequest$MaxResults": null, "ListNetworkAnalyzerConfigurationsRequest$MaxResults": null, "ListPartnerAccountsRequest$MaxResults": "

The maximum number of results to return in this operation.

", + "ListPositionConfigurationsRequest$MaxResults": null, "ListQueuedMessagesRequest$MaxResults": "

The maximum number of results to return in this operation.

", "ListServiceProfilesRequest$MaxResults": "

The maximum number of results to return in this operation.

", "ListWirelessDevicesRequest$MaxResults": "

The maximum number of results to return in this operation.

", @@ -1922,6 +1977,8 @@ "ListNetworkAnalyzerConfigurationsResponse$NextToken": "

The token to use to get the next set of results, or null if there are no additional results.

", "ListPartnerAccountsRequest$NextToken": "

To retrieve the next set of results, the nextToken value from a previous response; otherwise null to receive the first set of results.

", "ListPartnerAccountsResponse$NextToken": "

The token to use to get the next set of results, or null if there are no additional results.

", + "ListPositionConfigurationsRequest$NextToken": "

To retrieve the next set of results, the nextToken value from a previous response; otherwise null to receive the first set of results.

", + "ListPositionConfigurationsResponse$NextToken": "

The token to use to get the next set of results, or null if there are no additional results.

", "ListQueuedMessagesRequest$NextToken": "

To retrieve the next set of results, the nextToken value from a previous response; otherwise null to receive the first set of results.

", "ListQueuedMessagesResponse$NextToken": "

To retrieve the next set of results, the nextToken value from a previous response; otherwise null to receive the first set of results.

", "ListServiceProfilesRequest$NextToken": "

To retrieve the next set of results, the nextToken value from a previous response; otherwise null to receive the first set of results.

", @@ -2036,6 +2093,106 @@ "LoRaWANDeviceProfile$PingSlotPeriod": "

The PingSlotPeriod value.

" } }, + "PositionConfigurationFec": { + "base": null, + "refs": { + "SemtechGnssConfiguration$Fec": "

Whether forward error correction is enabled.

", + "SemtechGnssDetail$Fec": "

Whether forward error correction is enabled.

" + } + }, + "PositionConfigurationItem": { + "base": "

The wrapper for a position configuration.

", + "refs": { + "PositionConfigurationList$member": null + } + }, + "PositionConfigurationList": { + "base": null, + "refs": { + "ListPositionConfigurationsResponse$PositionConfigurationList": "

A list of position configurations.

" + } + }, + "PositionConfigurationStatus": { + "base": null, + "refs": { + "SemtechGnssConfiguration$Status": "

The status indicating whether the solver is enabled.

", + "SemtechGnssDetail$Status": "

The status indicating whether the solver is enabled.

" + } + }, + "PositionCoordinate": { + "base": null, + "refs": { + "GetPositionResponse$Position": "

The position information of the resource.

", + "UpdatePositionRequest$Position": "

The position information of the resource.

" + } + }, + "PositionCoordinateValue": { + "base": null, + "refs": { + "PositionCoordinate$member": null + } + }, + "PositionResourceIdentifier": { + "base": null, + "refs": { + "GetPositionConfigurationRequest$ResourceIdentifier": "

Resource identifier used in a position configuration.

", + "GetPositionRequest$ResourceIdentifier": "

Resource identifier used to retrieve the position information.

", + "PositionConfigurationItem$ResourceIdentifier": "

Resource identifier for the position configuration.

", + "PutPositionConfigurationRequest$ResourceIdentifier": "

Resource identifier used to update the position configuration.

", + "UpdatePositionRequest$ResourceIdentifier": "

Resource identifier of the resource for which position is updated.

" + } + }, + "PositionResourceType": { + "base": null, + "refs": { + "GetPositionConfigurationRequest$ResourceType": "

Resource type of the resource for which position configuration is retrieved.

", + "GetPositionRequest$ResourceType": "

Resource type of the resource for which position information is retrieved.

", + "ListPositionConfigurationsRequest$ResourceType": "

Resource type for which position configurations are listed.

", + "PositionConfigurationItem$ResourceType": "

Resource type of the resource for the position configuration.

", + "PutPositionConfigurationRequest$ResourceType": "

Resource type of the resource for which you want to update the position configuration.

", + "UpdatePositionRequest$ResourceType": "

Resource type of the resource for which position is updated.

" + } + }, + "PositionSolverConfigurations": { + "base": "

The wrapper for position solver configurations.

", + "refs": { + "PutPositionConfigurationRequest$Solvers": "

The positioning solvers used to update the position configuration of the resource.

" + } + }, + "PositionSolverDetails": { + "base": "

The wrapper for position solver details.

", + "refs": { + "GetPositionConfigurationResponse$Solvers": "

The wrapper for the solver configuration details object.

", + "PositionConfigurationItem$Solvers": "

The details of the positioning solver object used to compute the location.

" + } + }, + "PositionSolverProvider": { + "base": null, + "refs": { + "GetPositionResponse$SolverProvider": "

The vendor of the positioning solver.

", + "SemtechGnssDetail$Provider": "

The vendor of the solver object.

" + } + }, + "PositionSolverType": { + "base": null, + "refs": { + "GetPositionResponse$SolverType": "

The type of solver used to identify the position of the resource.

", + "SemtechGnssDetail$Type": "

The type of positioning solver used.

" + } + }, + "PositionSolverVersion": { + "base": null, + "refs": { + "GetPositionResponse$SolverVersion": "

The version of the positioning solver.

" + } + }, + "Positioning": { + "base": "

The FPorts for the position information.

", + "refs": { + "FPorts$Positioning": "

FPort values for the GNSS, stream, and ClockSync functions of the positioning information.

", + "UpdateFPorts$Positioning": "

Positioning FPorts for the ClockSync, Stream, and GNSS functions.

" + } + }, "PrAllowed": { "base": null, "refs": { @@ -2052,17 +2209,27 @@ "base": "

Proximity event configuration object for enabling and disabling relevant topics.

", "refs": { "EventNotificationItemConfigurations$Proximity": "

Proximity event configuration for an event configuration item.

", - "GetResourceEventConfigurationResponse$Proximity": "

Event configuration for the Proximity event

", - "UpdateResourceEventConfigurationRequest$Proximity": "

Event configuration for the Proximity event

" + "GetResourceEventConfigurationResponse$Proximity": "

Event configuration for the proximity event.

", + "UpdateResourceEventConfigurationRequest$Proximity": "

Event configuration for the proximity event.

" } }, "ProximityResourceTypeEventConfiguration": { "base": "

Proximity resource type event configuration object for enabling or disabling topic.

", "refs": { - "GetEventConfigurationByResourceTypesResponse$Proximity": "

Resource type event configuration for the proximity event

", + "GetEventConfigurationByResourceTypesResponse$Proximity": "

Resource type event configuration for the proximity event.

", "UpdateEventConfigurationByResourceTypesRequest$Proximity": "

Proximity resource type event configuration object for enabling and disabling wireless gateway topic.

" } }, + "PutPositionConfigurationRequest": { + "base": null, + "refs": { + } + }, + "PutPositionConfigurationResponse": { + "base": null, + "refs": { + } + }, "PutResourceLogLevelRequest": { "base": null, "refs": { @@ -2207,6 +2374,18 @@ "SessionKeysAbpV1_1$SNwkSIntKey": "

The SNwkSIntKey value.

" } }, + "SemtechGnssConfiguration": { + "base": "

Information about the Semtech GNSS solver configuration.

", + "refs": { + "PositionSolverConfigurations$SemtechGnss": "

The Semtech GNSS solver configuration object.

" + } + }, + "SemtechGnssDetail": { + "base": "

Details of the Semtech GNSS solver object.

", + "refs": { + "PositionSolverDetails$SemtechGnss": "

The Semtech GNSS solver object details.

" + } + }, "SendDataToMulticastGroupRequest": { "base": null, "refs": { @@ -2331,7 +2510,7 @@ } }, "SidewalkEventNotificationConfigurations": { - "base": "

SidewalkEventNotificationConfigurations object Event configuration object for Sidewalk related event topics.

", + "base": "

SidewalkEventNotificationConfigurations object, which is the event configuration object for Sidewalk-related event topics.

", "refs": { "DeviceRegistrationStateEventConfiguration$Sidewalk": "

Device registration state event configuration object for enabling or disabling Sidewalk related event topics.

", "ProximityEventConfiguration$Sidewalk": "

Proximity event configuration object for enabling or disabling Sidewalk related event topics.

" @@ -2657,6 +2836,12 @@ "refs": { } }, + "UpdateFPorts": { + "base": "

Object for updating the FPorts information.

", + "refs": { + "LoRaWANUpdateDevice$FPorts": "

FPorts object for the positioning information of the device.

" + } + }, "UpdateFuotaTaskRequest": { "base": null, "refs": { @@ -2707,6 +2892,16 @@ "refs": { } }, + "UpdatePositionRequest": { + "base": null, + "refs": { + } + }, + "UpdatePositionResponse": { + "base": null, + "refs": { + } + }, "UpdateResourceEventConfigurationRequest": { "base": null, "refs": { @@ -2761,6 +2956,12 @@ "refs": { } }, + "VerticalAccuracy": { + "base": null, + "refs": { + "Accuracy$VerticalAccuracy": "

The vertical accuracy of the estimated position in meters.

" + } + }, "WirelessDeviceArn": { "base": null, "refs": { @@ -2788,7 +2989,7 @@ } }, "WirelessDeviceFrameInfo": { - "base": "

FrameInfo of your wireless device resources for the trace content. Use FrameInfo to debug the communication between your LoRaWAN end devices and the network server.

", + "base": "

FrameInfo of your wireless device resources for the trace content. Use FrameInfo to debug the communication between your LoRaWAN end devices and the network server.

", "refs": { "TraceContent$WirelessDeviceFrameInfo": null } diff --git a/models/apis/iotwireless/2020-11-22/paginators-1.json b/models/apis/iotwireless/2020-11-22/paginators-1.json index 6d71883f05..47b8e668ea 100644 --- a/models/apis/iotwireless/2020-11-22/paginators-1.json +++ b/models/apis/iotwireless/2020-11-22/paginators-1.json @@ -30,6 +30,11 @@ "output_token": "NextToken", "limit_key": "MaxResults" }, + "ListPositionConfigurations": { + "input_token": "NextToken", + "output_token": "NextToken", + "limit_key": "MaxResults" + }, "ListQueuedMessages": { "input_token": "NextToken", "output_token": "NextToken", diff --git a/models/apis/sagemaker/2017-07-24/api-2.json b/models/apis/sagemaker/2017-07-24/api-2.json index 9058ad6fde..1700eb4f8a 100644 --- a/models/apis/sagemaker/2017-07-24/api-2.json +++ b/models/apis/sagemaker/2017-07-24/api-2.json @@ -9731,6 +9731,35 @@ "member":{"shape":"TrainingInputMode"}, "min":1 }, + "InstanceGroup":{ + "type":"structure", + "required":[ + "InstanceType", + "InstanceCount", + "InstanceGroupName" + ], + "members":{ + "InstanceType":{"shape":"TrainingInstanceType"}, + "InstanceCount":{"shape":"TrainingInstanceCount"}, + "InstanceGroupName":{"shape":"InstanceGroupName"} + } + }, + "InstanceGroupName":{ + "type":"string", + "max":64, + "min":1, + "pattern":".+" + }, + "InstanceGroupNames":{ + "type":"list", + "member":{"shape":"InstanceGroupName"}, + "max":5 + }, + "InstanceGroups":{ + "type":"list", + "member":{"shape":"InstanceGroup"}, + "max":5 + }, "InstanceMetadataServiceConfiguration":{ "type":"structure", "required":["MinimumInstanceMetadataServiceVersion"], @@ -14395,16 +14424,13 @@ }, "ResourceConfig":{ "type":"structure", - "required":[ - "InstanceType", - "InstanceCount", - "VolumeSizeInGB" - ], + "required":["VolumeSizeInGB"], "members":{ "InstanceType":{"shape":"TrainingInstanceType"}, "InstanceCount":{"shape":"TrainingInstanceCount"}, "VolumeSizeInGB":{"shape":"VolumeSizeInGB"}, - "VolumeKmsKeyId":{"shape":"KmsKeyId"} + "VolumeKmsKeyId":{"shape":"KmsKeyId"}, + "InstanceGroups":{"shape":"InstanceGroups"} } }, "ResourceId":{ @@ -14584,7 +14610,8 @@ "S3DataType":{"shape":"S3DataType"}, "S3Uri":{"shape":"S3Uri"}, "S3DataDistributionType":{"shape":"S3DataDistribution"}, - "AttributeNames":{"shape":"AttributeNames"} + "AttributeNames":{"shape":"AttributeNames"}, + "InstanceGroupNames":{"shape":"InstanceGroupNames"} } }, "S3DataType":{ @@ -15571,7 +15598,7 @@ }, "TrainingInstanceCount":{ "type":"integer", - "min":1 + "min":0 }, "TrainingInstanceType":{ "type":"string", diff --git a/models/apis/sagemaker/2017-07-24/docs-2.json b/models/apis/sagemaker/2017-07-24/docs-2.json index 451c224c96..3813961311 100644 --- a/models/apis/sagemaker/2017-07-24/docs-2.json +++ b/models/apis/sagemaker/2017-07-24/docs-2.json @@ -5323,6 +5323,31 @@ "ChannelSpecification$SupportedInputModes": "

The allowed input mode, either FILE or PIPE.

In FILE mode, Amazon SageMaker copies the data from the input source onto the local Amazon Elastic Block Store (Amazon EBS) volumes before starting your training algorithm. This is the most commonly used input mode.

In PIPE mode, Amazon SageMaker streams input data from the source directly to your algorithm without using the EBS volume.

" } }, + "InstanceGroup": { + "base": "

Defines an instance group for heterogeneous cluster training. When requesting a training job using the CreateTrainingJob API, you can configure up to 5 different ML training instance groups.

", + "refs": { + "InstanceGroups$member": null + } + }, + "InstanceGroupName": { + "base": null, + "refs": { + "InstanceGroup$InstanceGroupName": "

Specifies the name of the instance group.

", + "InstanceGroupNames$member": null + } + }, + "InstanceGroupNames": { + "base": null, + "refs": { + "S3DataSource$InstanceGroupNames": "

A list of names of instance groups that get data from the S3 data source.

" + } + }, + "InstanceGroups": { + "base": null, + "refs": { + "ResourceConfig$InstanceGroups": "

The configuration of a heterogeneous cluster in JSON format.

" + } + }, "InstanceMetadataServiceConfiguration": { "base": "

Information on the IMDS configuration of the notebook instance

", "refs": { @@ -11013,12 +11038,14 @@ "TrainingInstanceCount": { "base": null, "refs": { + "InstanceGroup$InstanceCount": "

Specifies the number of instances of the instance group.

", "ResourceConfig$InstanceCount": "

The number of ML compute instances to use. For distributed training, provide a value greater than 1.

" } }, "TrainingInstanceType": { "base": null, "refs": { + "InstanceGroup$InstanceType": "

Specifies the instance type of the instance group.

", "ResourceConfig$InstanceType": "

The ML compute instance type.

", "TrainingInstanceTypes$member": null } diff --git a/service/chimesdkmeetings/api.go b/service/chimesdkmeetings/api.go index a75e22a704..45606cf189 100644 --- a/service/chimesdkmeetings/api.go +++ b/service/chimesdkmeetings/api.go @@ -91,10 +91,10 @@ func (c *ChimeSDKMeetings) BatchCreateAttendeeRequest(input *BatchCreateAttendee // The service is currently unavailable. // // * ServiceFailureException -// The service is currently unavailable. +// The service encountered an unexpected error. // // * ThrottlingException -// The number of requests exceeds the limit. +// The number of customer requests exceeds the request rate limit. // // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-meetings-2021-07-15/BatchCreateAttendee func (c *ChimeSDKMeetings) BatchCreateAttendee(input *BatchCreateAttendeeInput) (*BatchCreateAttendeeOutput, error) { @@ -166,6 +166,27 @@ func (c *ChimeSDKMeetings) BatchUpdateAttendeeCapabilitiesExceptRequest(input *B // Updates AttendeeCapabilities except the capabilities listed in an ExcludedAttendeeIds // table. // +// You use the capabilities with a set of values that control what the capabilities +// can do, such as SendReceive data. For more information about those values, +// see . +// +// When using capabilities, be aware of these corner cases: +// +// * You can't set content capabilities to SendReceive or Receive unless +// you also set video capabilities to SendReceive or Receive. If you don't +// set the video capability to receive, the response will contain an HTTP +// 400 Bad Request status code. However, you can set your video capability +// to receive and you set your content capability to not receive. +// +// * When you change an audio capability from None or Receive to Send or +// SendReceive , and if the attendee left their microphone unmuted, audio +// will flow from the attendee to the other meeting participants. +// +// * When you change a video or content capability from None or Receive to +// Send or SendReceive , and if the attendee turned on their video or content +// streams, remote attendess can receive those streams, but only after media +// renegotiation between the client and the Amazon Chime back-end server. +// // 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. @@ -293,10 +314,10 @@ func (c *ChimeSDKMeetings) CreateAttendeeRequest(input *CreateAttendeeInput) (re // The service is currently unavailable. // // * ServiceFailureException -// The service is currently unavailable. +// The service encountered an unexpected error. // // * ThrottlingException -// The number of requests exceeds the limit. +// The number of customer requests exceeds the request rate limit. // // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-meetings-2021-07-15/CreateAttendee func (c *ChimeSDKMeetings) CreateAttendee(input *CreateAttendeeInput) (*CreateAttendeeOutput, error) { @@ -389,10 +410,10 @@ func (c *ChimeSDKMeetings) CreateMeetingRequest(input *CreateMeetingInput) (req // The user isn't authorized to request a resource. // // * ThrottlingException -// The number of requests exceeds the limit. +// The number of customer requests exceeds the request rate limit. // // * ServiceFailureException -// The service is currently unavailable. +// The service encountered an unexpected error. // // * ServiceUnavailableException // The service is currently unavailable. @@ -491,10 +512,10 @@ func (c *ChimeSDKMeetings) CreateMeetingWithAttendeesRequest(input *CreateMeetin // The user isn't authorized to request a resource. // // * ThrottlingException -// The number of requests exceeds the limit. +// The number of customer requests exceeds the request rate limit. // // * ServiceFailureException -// The service is currently unavailable. +// The service encountered an unexpected error. // // * ServiceUnavailableException // The service is currently unavailable. @@ -599,10 +620,10 @@ func (c *ChimeSDKMeetings) DeleteAttendeeRequest(input *DeleteAttendeeInput) (re // The service is currently unavailable. // // * ServiceFailureException -// The service is currently unavailable. +// The service encountered an unexpected error. // // * ThrottlingException -// The number of requests exceeds the limit. +// The number of customer requests exceeds the request rate limit. // // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-meetings-2021-07-15/DeleteAttendee func (c *ChimeSDKMeetings) DeleteAttendee(input *DeleteAttendeeInput) (*DeleteAttendeeOutput, error) { @@ -701,10 +722,10 @@ func (c *ChimeSDKMeetings) DeleteMeetingRequest(input *DeleteMeetingInput) (req // The service is currently unavailable. // // * ServiceFailureException -// The service is currently unavailable. +// The service encountered an unexpected error. // // * ThrottlingException -// The number of requests exceeds the limit. +// The number of customer requests exceeds the request rate limit. // // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-meetings-2021-07-15/DeleteMeeting func (c *ChimeSDKMeetings) DeleteMeeting(input *DeleteMeetingInput) (*DeleteMeetingOutput, error) { @@ -801,10 +822,10 @@ func (c *ChimeSDKMeetings) GetAttendeeRequest(input *GetAttendeeInput) (req *req // The service is currently unavailable. // // * ServiceFailureException -// The service is currently unavailable. +// The service encountered an unexpected error. // // * ThrottlingException -// The number of requests exceeds the limit. +// The number of customer requests exceeds the request rate limit. // // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-meetings-2021-07-15/GetAttendee func (c *ChimeSDKMeetings) GetAttendee(input *GetAttendeeInput) (*GetAttendeeOutput, error) { @@ -901,10 +922,10 @@ func (c *ChimeSDKMeetings) GetMeetingRequest(input *GetMeetingInput) (req *reque // The service is currently unavailable. // // * ServiceFailureException -// The service is currently unavailable. +// The service encountered an unexpected error. // // * ThrottlingException -// The number of requests exceeds the limit. +// The number of customer requests exceeds the request rate limit. // // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-meetings-2021-07-15/GetMeeting func (c *ChimeSDKMeetings) GetMeeting(input *GetMeetingInput) (*GetMeetingOutput, error) { @@ -1006,10 +1027,10 @@ func (c *ChimeSDKMeetings) ListAttendeesRequest(input *ListAttendeesInput) (req // The service is currently unavailable. // // * ServiceFailureException -// The service is currently unavailable. +// The service encountered an unexpected error. // // * ThrottlingException -// The number of requests exceeds the limit. +// The number of customer requests exceeds the request rate limit. // // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-meetings-2021-07-15/ListAttendees func (c *ChimeSDKMeetings) ListAttendees(input *ListAttendeesInput) (*ListAttendeesOutput, error) { @@ -1160,13 +1181,13 @@ func (c *ChimeSDKMeetings) StartMeetingTranscriptionRequest(input *StartMeetingT // errors. // // * ThrottlingException -// The number of requests exceeds the limit. +// The number of customer requests exceeds the request rate limit. // // * ServiceUnavailableException // The service is currently unavailable. // // * ServiceFailureException -// The service is currently unavailable. +// The service encountered an unexpected error. // // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-meetings-2021-07-15/StartMeetingTranscription func (c *ChimeSDKMeetings) StartMeetingTranscription(input *StartMeetingTranscriptionInput) (*StartMeetingTranscriptionOutput, error) { @@ -1262,13 +1283,13 @@ func (c *ChimeSDKMeetings) StopMeetingTranscriptionRequest(input *StopMeetingTra // errors. // // * ThrottlingException -// The number of requests exceeds the limit. +// The number of customer requests exceeds the request rate limit. // // * ServiceUnavailableException // The service is currently unavailable. // // * ServiceFailureException -// The service is currently unavailable. +// The service encountered an unexpected error. // // See also, https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-meetings-2021-07-15/StopMeetingTranscription func (c *ChimeSDKMeetings) StopMeetingTranscription(input *StopMeetingTranscriptionInput) (*StopMeetingTranscriptionOutput, error) { @@ -1338,6 +1359,27 @@ func (c *ChimeSDKMeetings) UpdateAttendeeCapabilitiesRequest(input *UpdateAttend // // The capabilties that you want to update. // +// You use the capabilities with a set of values that control what the capabilities +// can do, such as SendReceive data. For more information about those values, +// see . +// +// When using capabilities, be aware of these corner cases: +// +// * You can't set content capabilities to SendReceive or Receive unless +// you also set video capabilities to SendReceive or Receive. If you don't +// set the video capability to receive, the response will contain an HTTP +// 400 Bad Request status code. However, you can set your video capability +// to receive and you set your content capability to not receive. +// +// * When you change an audio capability from None or Receive to Send or +// SendReceive , and if the attendee left their microphone unmuted, audio +// will flow from the attendee to the other meeting participants. +// +// * When you change a video or content capability from None or Receive to +// Send or SendReceive , and if the attendee turned on their video or content +// streams, remote attendess can receive those streams, but only after media +// renegotiation between the client and the Amazon Chime back-end server. +// // 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. @@ -1400,7 +1442,28 @@ type Attendee struct { // The Amazon Chime SDK attendee ID. AttendeeId *string `type:"string"` - // The capabilities (audio, video, or content) assigned to an attendee. + // The capabilities assigned to an attendee: audio, video, or content. + // + // You use the capabilities with a set of values that control what the capabilities + // can do, such as SendReceive data. For more information about those values, + // see . + // + // When using capabilities, be aware of these corner cases: + // + // * You can't set content capabilities to SendReceive or Receive unless + // you also set video capabilities to SendReceive or Receive. If you don't + // set the video capability to receive, the response will contain an HTTP + // 400 Bad Request status code. However, you can set your video capability + // to receive and you set your content capability to not receive. + // + // * When you change an audio capability from None or Receive to Send or + // SendReceive , and if the attendee left their microphone unmuted, audio + // will flow from the attendee to the other meeting participants. + // + // * When you change a video or content capability from None or Receive to + // Send or SendReceive , and if the attendee turned on their video or content + // streams, remote attendess can receive those streams, but only after media + // renegotiation between the client and the Amazon Chime back-end server. Capabilities *AttendeeCapabilities `type:"structure"` // The Amazon Chime SDK external user ID. An idempotency token. Links the attendee @@ -1461,7 +1524,28 @@ func (s *Attendee) SetJoinToken(v string) *Attendee { return s } -// The media capabilities of an attendee, including audio, video and content. +// The media capabilities of an attendee: audio, video, or content. +// +// You use the capabilities with a set of values that control what the capabilities +// can do, such as SendReceive data. For more information about those values, +// see . +// +// When using capabilities, be aware of these corner cases: +// +// * You can't set content capabilities to SendReceive or Receive unless +// you also set video capabilities to SendReceive or Receive. If you don't +// set the video capability to receive, the response will contain an HTTP +// 400 Bad Request status code. However, you can set your video capability +// to receive and you set your content capability to not receive. +// +// * When you change an audio capability from None or Receive to Send or +// SendReceive , and if the attendee left their microphone unmuted, audio +// will flow from the attendee to the other meeting participants. +// +// * When you change a video or content capability from None or Receive to +// Send or SendReceive , and if the attendee turned on their video or content +// streams, remote attendess can receive those streams, but only after media +// renegotiation between the client and the Amazon Chime back-end server. type AttendeeCapabilities struct { _ struct{} `type:"structure"` @@ -2050,6 +2134,27 @@ type CreateAttendeeInput struct { // The capabilities (audio, video, or content) that you want to grant an attendee. // If you don't specify capabilities, all users have send and receive capabilities // on all media channels by default. + // + // You use the capabilities with a set of values that control what the capabilities + // can do, such as SendReceive data. For more information about those values, + // see . + // + // When using capabilities, be aware of these corner cases: + // + // * You can't set content capabilities to SendReceive or Receive unless + // you also set video capabilities to SendReceive or Receive. If you don't + // set the video capability to receive, the response will contain an HTTP + // 400 Bad Request status code. However, you can set your video capability + // to receive and you set your content capability to not receive. + // + // * When you change an audio capability from None or Receive to Send or + // SendReceive , and if the attendee left their microphone unmuted, audio + // will flow from the attendee to the other meeting participants. + // + // * When you change a video or content capability from None or Receive to + // Send or SendReceive , and if the attendee turned on their video or content + // streams, remote attendess can receive those streams, but only after media + // renegotiation between the client and the Amazon Chime back-end server. Capabilities *AttendeeCapabilities `type:"structure"` // The Amazon Chime SDK external user ID. An idempotency token. Links the attendee @@ -2281,6 +2386,10 @@ type CreateMeetingInput struct { // When specified, replicates the media from the primary meeting to the new // meeting. PrimaryMeetingId *string `min:"2" type:"string"` + + // A consistent and opaque identifier, created and maintained by the builder + // to represent a segment of their users. + TenantIds []*string `min:"1" type:"list"` } // String returns the string representation. @@ -2325,6 +2434,9 @@ func (s *CreateMeetingInput) Validate() error { if s.PrimaryMeetingId != nil && len(*s.PrimaryMeetingId) < 2 { invalidParams.Add(request.NewErrParamMinLen("PrimaryMeetingId", 2)) } + if s.TenantIds != nil && len(s.TenantIds) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TenantIds", 1)) + } if s.NotificationsConfiguration != nil { if err := s.NotificationsConfiguration.Validate(); err != nil { invalidParams.AddNested("NotificationsConfiguration", err.(request.ErrInvalidParams)) @@ -2379,6 +2491,12 @@ func (s *CreateMeetingInput) SetPrimaryMeetingId(v string) *CreateMeetingInput { return s } +// SetTenantIds sets the TenantIds field's value. +func (s *CreateMeetingInput) SetTenantIds(v []*string) *CreateMeetingInput { + s.TenantIds = v + return s +} + type CreateMeetingOutput struct { _ struct{} `type:"structure"` @@ -2464,6 +2582,10 @@ type CreateMeetingWithAttendeesInput struct { // When specified, replicates the media from the primary meeting to the new // meeting. PrimaryMeetingId *string `min:"2" type:"string"` + + // A consistent and opaque identifier, created and maintained by the builder + // to represent a segment of their users. + TenantIds []*string `min:"1" type:"list"` } // String returns the string representation. @@ -2514,6 +2636,9 @@ func (s *CreateMeetingWithAttendeesInput) Validate() error { if s.PrimaryMeetingId != nil && len(*s.PrimaryMeetingId) < 2 { invalidParams.Add(request.NewErrParamMinLen("PrimaryMeetingId", 2)) } + if s.TenantIds != nil && len(s.TenantIds) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TenantIds", 1)) + } if s.Attendees != nil { for i, v := range s.Attendees { if v == nil { @@ -2584,6 +2709,12 @@ func (s *CreateMeetingWithAttendeesInput) SetPrimaryMeetingId(v string) *CreateM return s } +// SetTenantIds sets the TenantIds field's value. +func (s *CreateMeetingWithAttendeesInput) SetTenantIds(v []*string) *CreateMeetingWithAttendeesInput { + s.TenantIds = v + return s +} + type CreateMeetingWithAttendeesOutput struct { _ struct{} `type:"structure"` @@ -3642,6 +3773,9 @@ type Meeting struct { // When specified, replicates the media from the primary meeting to this meeting. PrimaryMeetingId *string `min:"2" type:"string"` + + // Array of strings. + TenantIds []*string `min:"1" type:"list"` } // String returns the string representation. @@ -3704,6 +3838,12 @@ func (s *Meeting) SetPrimaryMeetingId(v string) *Meeting { return s } +// SetTenantIds sets the TenantIds field's value. +func (s *Meeting) SetTenantIds(v []*string) *Meeting { + s.TenantIds = v + return s +} + // The configuration settings of the features available to a meeting.> type MeetingFeaturesConfiguration struct { _ struct{} `type:"structure"` @@ -3887,7 +4027,7 @@ func (s *NotificationsConfiguration) SetSqsQueueArn(v string) *NotificationsConf return s } -// The service is currently unavailable. +// The service encountered an unexpected error. type ServiceFailureException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -4189,7 +4329,7 @@ func (s StopMeetingTranscriptionOutput) GoString() string { return s.String() } -// The number of requests exceeds the limit. +// The number of customer requests exceeds the request rate limit. type ThrottlingException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -4546,14 +4686,7 @@ func (s *UpdateAttendeeCapabilitiesInput) SetMeetingId(v string) *UpdateAttendee type UpdateAttendeeCapabilitiesOutput struct { _ struct{} `type:"structure"` - // An Amazon Chime SDK meeting attendee. Includes a unique AttendeeId and JoinToken. - // The JoinToken allows a client to authenticate and join as the specified attendee. - // The JoinToken expires when the meeting ends, or when DeleteAttendee is called. - // After that, the attendee is unable to join the meeting. - // - // We recommend securely transferring each JoinToken from your server application - // to the client so that no other client has access to the token except for - // the one authorized to represent the attendee. + // The updated attendee data. Attendee *Attendee `type:"structure"` } diff --git a/service/chimesdkmeetings/errors.go b/service/chimesdkmeetings/errors.go index 05b979a169..cac3dcb859 100644 --- a/service/chimesdkmeetings/errors.go +++ b/service/chimesdkmeetings/errors.go @@ -41,7 +41,7 @@ const ( // ErrCodeServiceFailureException for service response error code // "ServiceFailureException". // - // The service is currently unavailable. + // The service encountered an unexpected error. ErrCodeServiceFailureException = "ServiceFailureException" // ErrCodeServiceUnavailableException for service response error code @@ -53,7 +53,7 @@ const ( // ErrCodeThrottlingException for service response error code // "ThrottlingException". // - // The number of requests exceeds the limit. + // The number of customer requests exceeds the request rate limit. ErrCodeThrottlingException = "ThrottlingException" // ErrCodeUnauthorizedException for service response error code diff --git a/service/databasemigrationservice/api.go b/service/databasemigrationservice/api.go index 1af15a559f..ce8dae7bbb 100644 --- a/service/databasemigrationservice/api.go +++ b/service/databasemigrationservice/api.go @@ -7001,6 +7001,102 @@ func (c *DatabaseMigrationService) TestConnectionWithContext(ctx aws.Context, in return out, req.Send() } +const opUpdateSubscriptionsToEventBridge = "UpdateSubscriptionsToEventBridge" + +// UpdateSubscriptionsToEventBridgeRequest generates a "aws/request.Request" representing the +// client's request for the UpdateSubscriptionsToEventBridge 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 UpdateSubscriptionsToEventBridge for more information on using the UpdateSubscriptionsToEventBridge +// 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 UpdateSubscriptionsToEventBridgeRequest method. +// req, resp := client.UpdateSubscriptionsToEventBridgeRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/UpdateSubscriptionsToEventBridge +func (c *DatabaseMigrationService) UpdateSubscriptionsToEventBridgeRequest(input *UpdateSubscriptionsToEventBridgeInput) (req *request.Request, output *UpdateSubscriptionsToEventBridgeOutput) { + op := &request.Operation{ + Name: opUpdateSubscriptionsToEventBridge, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateSubscriptionsToEventBridgeInput{} + } + + output = &UpdateSubscriptionsToEventBridgeOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateSubscriptionsToEventBridge API operation for AWS Database Migration Service. +// +// Migrates 10 active and enabled Amazon SNS subscriptions at a time and converts +// them to corresponding Amazon EventBridge rules. By default, this operation +// migrates subscriptions only when all your replication instance versions are +// 3.4.6 or higher. If any replication instances are from versions earlier than +// 3.4.6, the operation raises an error and tells you to upgrade these instances +// to version 3.4.6 or higher. To enable migration regardless of version, set +// the Force option to true. However, if you don't upgrade instances earlier +// than version 3.4.6, some types of events might not be available when you +// use Amazon EventBridge. +// +// To call this operation, make sure that you have certain permissions added +// to your user account. For more information, see Migrating event subscriptions +// to Amazon EventBridge (https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Events.html#CHAP_Events-migrate-to-eventbridge) +// in the Amazon Web Services Database Migration Service User Guide. +// +// 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 AWS Database Migration Service's +// API operation UpdateSubscriptionsToEventBridge for usage and error information. +// +// Returned Error Types: +// * AccessDeniedFault +// DMS was denied access to the endpoint. Check that the role is correctly configured. +// +// * InvalidResourceStateFault +// The resource is in a state that prevents it from being used for database +// migration. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/UpdateSubscriptionsToEventBridge +func (c *DatabaseMigrationService) UpdateSubscriptionsToEventBridge(input *UpdateSubscriptionsToEventBridgeInput) (*UpdateSubscriptionsToEventBridgeOutput, error) { + req, out := c.UpdateSubscriptionsToEventBridgeRequest(input) + return out, req.Send() +} + +// UpdateSubscriptionsToEventBridgeWithContext is the same as UpdateSubscriptionsToEventBridge with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateSubscriptionsToEventBridge 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 *DatabaseMigrationService) UpdateSubscriptionsToEventBridgeWithContext(ctx aws.Context, input *UpdateSubscriptionsToEventBridgeInput, opts ...request.Option) (*UpdateSubscriptionsToEventBridgeOutput, error) { + req, out := c.UpdateSubscriptionsToEventBridgeRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + // DMS was denied access to the endpoint. Check that the role is correctly configured. type AccessDeniedFault struct { _ struct{} `type:"structure"` @@ -24623,6 +24719,72 @@ func (s *TestConnectionOutput) SetConnection(v *Connection) *TestConnectionOutpu return s } +type UpdateSubscriptionsToEventBridgeInput struct { + _ struct{} `type:"structure"` + + // When set to true, this operation migrates DMS subscriptions for Amazon SNS + // notifications no matter what your replication instance version is. If not + // set or set to false, this operation runs only when all your replication instances + // are from DMS version 3.4.6 or higher. + ForceMove *bool `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 UpdateSubscriptionsToEventBridgeInput) 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 UpdateSubscriptionsToEventBridgeInput) GoString() string { + return s.String() +} + +// SetForceMove sets the ForceMove field's value. +func (s *UpdateSubscriptionsToEventBridgeInput) SetForceMove(v bool) *UpdateSubscriptionsToEventBridgeInput { + s.ForceMove = &v + return s +} + +type UpdateSubscriptionsToEventBridgeOutput struct { + _ struct{} `type:"structure"` + + // A string that indicates how many event subscriptions were migrated and how + // many remain to be migrated. + Result *string `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 UpdateSubscriptionsToEventBridgeOutput) 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 UpdateSubscriptionsToEventBridgeOutput) GoString() string { + return s.String() +} + +// SetResult sets the Result field's value. +func (s *UpdateSubscriptionsToEventBridgeOutput) SetResult(v string) *UpdateSubscriptionsToEventBridgeOutput { + s.Result = &v + return s +} + // An upgrade dependency is preventing the database migration. type UpgradeDependencyFailureFault struct { _ struct{} `type:"structure"` diff --git a/service/databasemigrationservice/databasemigrationserviceiface/interface.go b/service/databasemigrationservice/databasemigrationserviceiface/interface.go index 46eba68826..d55fb2aeeb 100644 --- a/service/databasemigrationservice/databasemigrationserviceiface/interface.go +++ b/service/databasemigrationservice/databasemigrationserviceiface/interface.go @@ -388,6 +388,10 @@ type DatabaseMigrationServiceAPI interface { TestConnectionWithContext(aws.Context, *databasemigrationservice.TestConnectionInput, ...request.Option) (*databasemigrationservice.TestConnectionOutput, error) TestConnectionRequest(*databasemigrationservice.TestConnectionInput) (*request.Request, *databasemigrationservice.TestConnectionOutput) + UpdateSubscriptionsToEventBridge(*databasemigrationservice.UpdateSubscriptionsToEventBridgeInput) (*databasemigrationservice.UpdateSubscriptionsToEventBridgeOutput, error) + UpdateSubscriptionsToEventBridgeWithContext(aws.Context, *databasemigrationservice.UpdateSubscriptionsToEventBridgeInput, ...request.Option) (*databasemigrationservice.UpdateSubscriptionsToEventBridgeOutput, error) + UpdateSubscriptionsToEventBridgeRequest(*databasemigrationservice.UpdateSubscriptionsToEventBridgeInput) (*request.Request, *databasemigrationservice.UpdateSubscriptionsToEventBridgeOutput) + WaitUntilEndpointDeleted(*databasemigrationservice.DescribeEndpointsInput) error WaitUntilEndpointDeletedWithContext(aws.Context, *databasemigrationservice.DescribeEndpointsInput, ...request.WaiterOption) error diff --git a/service/iot/api.go b/service/iot/api.go index f0b4b6db51..5676aa71a2 100644 --- a/service/iot/api.go +++ b/service/iot/api.go @@ -20722,13 +20722,10 @@ func (c *IoT) RegisterCACertificateRequest(input *RegisterCACertificateInput) (r // RegisterCACertificate API operation for AWS IoT. // -// Registers a CA certificate with IoT. This CA certificate can then be used -// to sign device certificates, which can be then registered with IoT. You can -// register up to 10 CA certificates per Amazon Web Services account that have -// the same subject field. This enables you to have up to 10 certificate authorities -// sign your device certificates. If you have more than one CA certificate registered, -// make sure you pass the CA certificate when you register your device certificates -// with the RegisterCertificate action. +// Registers a CA certificate with Amazon Web Services IoT Core. There is no +// limit to the number of CA certificates you can register in your Amazon Web +// Services account. You can register up to 10 CA certificates with the same +// CA subject field per Amazon Web Services account. // // Requires permission to access the RegisterCACertificate (https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions) // action. @@ -20831,9 +20828,10 @@ func (c *IoT) RegisterCertificateRequest(input *RegisterCertificateInput) (req * // RegisterCertificate API operation for AWS IoT. // -// Registers a device certificate with IoT. If you have more than one CA certificate -// that has the same subject field, you must specify the CA certificate that -// was used to sign the device certificate being registered. +// Registers a device certificate with IoT in the same certificate mode (https://docs.aws.amazon.com/iot/latest/apireference/API_CertificateDescription.html#iot-Type-CertificateDescription-certificateMode) +// as the signing CA. If you have more than one CA certificate that has the +// same subject field, you must specify the CA certificate that was used to +// sign the device certificate being registered. // // Requires permission to access the RegisterCertificate (https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions) // action. @@ -29162,6 +29160,13 @@ type CACertificateDescription struct { // The CA certificate ID. CertificateId *string `locationName:"certificateId" min:"64" type:"string"` + // The mode of the CA. + // + // All the device certificates that are registered using this CA will be registered + // in the same mode as the CA. For more information about certificate mode for + // device certificates, see certificate mode (https://docs.aws.amazon.com/iot/latest/apireference/API_CertificateDescription.html#iot-Type-CertificateDescription-certificateMode). + CertificateMode *string `locationName:"certificateMode" type:"string" enum:"CertificateMode"` + // The CA certificate data, in PEM format. CertificatePem *string `locationName:"certificatePem" min:"1" type:"string"` @@ -29223,6 +29228,12 @@ func (s *CACertificateDescription) SetCertificateId(v string) *CACertificateDesc return s } +// SetCertificateMode sets the CertificateMode field's value. +func (s *CACertificateDescription) SetCertificateMode(v string) *CACertificateDescription { + s.CertificateMode = &v + return s +} + // SetCertificatePem sets the CertificatePem field's value. func (s *CACertificateDescription) SetCertificatePem(v string) *CACertificateDescription { s.CertificatePem = &v @@ -29833,6 +29844,18 @@ type Certificate struct { CertificateId *string `locationName:"certificateId" min:"64" type:"string"` // The mode of the certificate. + // + // DEFAULT: A certificate in DEFAULT mode is either generated by Amazon Web + // Services IoT Core or registered with an issuer certificate authority (CA) + // in DEFAULT mode. Devices with certificates in DEFAULT mode aren't required + // to send the Server Name Indication (SNI) extension when connecting to Amazon + // Web Services IoT Core. However, to use features such as custom domains and + // VPC endpoints, we recommend that you use the SNI extension when connecting + // to Amazon Web Services IoT Core. + // + // SNI_ONLY: A certificate in SNI_ONLY mode is registered without an issuer + // CA. Devices with certificates in SNI_ONLY mode must send the SNI extension + // when connecting to Amazon Web Services IoT Core. CertificateMode *string `locationName:"certificateMode" type:"string" enum:"CertificateMode"` // The date and time the certificate was created. @@ -29973,6 +29996,21 @@ type CertificateDescription struct { CertificateId *string `locationName:"certificateId" min:"64" type:"string"` // The mode of the certificate. + // + // DEFAULT: A certificate in DEFAULT mode is either generated by Amazon Web + // Services IoT Core or registered with an issuer certificate authority (CA) + // in DEFAULT mode. Devices with certificates in DEFAULT mode aren't required + // to send the Server Name Indication (SNI) extension when connecting to Amazon + // Web Services IoT Core. However, to use features such as custom domains and + // VPC endpoints, we recommend that you use the SNI extension when connecting + // to Amazon Web Services IoT Core. + // + // SNI_ONLY: A certificate in SNI_ONLY mode is registered without an issuer + // CA. Devices with certificates in SNI_ONLY mode must send the SNI extension + // when connecting to Amazon Web Services IoT Core. + // + // For more information about the value for SNI extension, see Transport security + // in IoT (https://docs.aws.amazon.com/iot/latest/developerguide/transport-security.html). CertificateMode *string `locationName:"certificateMode" type:"string" enum:"CertificateMode"` // The certificate data, in PEM format. @@ -46879,6 +46917,9 @@ type Job struct { // to true. ForceCanceled *bool `locationName:"forceCanceled" type:"boolean"` + // Indicates whether a job is concurrent. Will be true when a job is rolling + // out new job executions or canceling previously created executions, otherwise + // false. IsConcurrent *bool `locationName:"isConcurrent" type:"boolean"` // An ARN identifying the job with format "arn:aws:iot:region:account:job/jobId". @@ -47662,6 +47703,9 @@ type JobSummary struct { // The time, in seconds since the epoch, when the job was created. CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + // Indicates whether a job is concurrent. Will be true when a job is rolling + // out new job executions or canceling previously created executions, otherwise + // false. IsConcurrent *bool `locationName:"isConcurrent" type:"boolean"` // The job ARN. @@ -56443,6 +56487,10 @@ type PresignedUrlConfig struct { // The ARN of an IAM role that grants grants permission to download files from // the S3 bucket where the job data/updates are stored. The role must also grant // permission for IoT to download the files. + // + // For information about addressing the confused deputy problem, see cross-service + // confused deputy prevention (https://docs.aws.amazon.com/iot/latest/developerguide/cross-service-confused-deputy-prevention.html) + // in the Amazon Web Services IoT Core developer guide. RoleArn *string `locationName:"roleArn" min:"20" type:"string"` } @@ -57052,6 +57100,16 @@ type RegisterCACertificateInput struct { // CaCertificate is a required field CaCertificate *string `locationName:"caCertificate" min:"1" type:"string" required:"true"` + // Describes the certificate mode in which the Certificate Authority (CA) will + // be registered. If the verificationCertificate field is not provided, set + // certificateMode to be SNI_ONLY. If the verificationCertificate field is provided, + // set certificateMode to be DEFAULT. When certificateMode is not provided, + // it defaults to DEFAULT. All the device certificates that are registered using + // this CA will be registered in the same certificate mode as the CA. For more + // information about certificate mode for device certificates, see certificate + // mode (https://docs.aws.amazon.com/iot/latest/apireference/API_CertificateDescription.html#iot-Type-CertificateDescription-certificateMode). + CertificateMode *string `locationName:"certificateMode" type:"string" enum:"CertificateMode"` + // Information about the registration configuration. RegistrationConfig *RegistrationConfig `locationName:"registrationConfig" type:"structure"` @@ -57069,10 +57127,10 @@ type RegisterCACertificateInput struct { // For the cli-input-json file use format: "tags": "key1=value1&key2=value2..." Tags []*Tag `locationName:"tags" type:"list"` - // The private key verification certificate. - // - // VerificationCertificate is a required field - VerificationCertificate *string `locationName:"verificationCertificate" min:"1" type:"string" required:"true"` + // The private key verification certificate. If certificateMode is SNI_ONLY, + // the verificationCertificate field must be empty. If certificateMode is DEFAULT + // or not provided, the verificationCertificate field must not be empty. + VerificationCertificate *string `locationName:"verificationCertificate" min:"1" type:"string"` } // String returns the string representation. @@ -57102,9 +57160,6 @@ func (s *RegisterCACertificateInput) Validate() error { if s.CaCertificate != nil && len(*s.CaCertificate) < 1 { invalidParams.Add(request.NewErrParamMinLen("CaCertificate", 1)) } - if s.VerificationCertificate == nil { - invalidParams.Add(request.NewErrParamRequired("VerificationCertificate")) - } if s.VerificationCertificate != nil && len(*s.VerificationCertificate) < 1 { invalidParams.Add(request.NewErrParamMinLen("VerificationCertificate", 1)) } @@ -57142,6 +57197,12 @@ func (s *RegisterCACertificateInput) SetCaCertificate(v string) *RegisterCACerti return s } +// SetCertificateMode sets the CertificateMode field's value. +func (s *RegisterCACertificateInput) SetCertificateMode(v string) *RegisterCACertificateInput { + s.CertificateMode = &v + return s +} + // SetRegistrationConfig sets the RegistrationConfig field's value. func (s *RegisterCACertificateInput) SetRegistrationConfig(v *RegistrationConfig) *RegisterCACertificateInput { s.RegistrationConfig = v @@ -59014,7 +59075,8 @@ type SearchIndexInput struct { // results. NextToken *string `locationName:"nextToken" type:"string"` - // The search query string. + // The search query string. For more information about the search query syntax, + // see Query syntax (https://docs.aws.amazon.com/iot/latest/developerguide/query-syntax.html). // // QueryString is a required field QueryString *string `locationName:"queryString" min:"1" type:"string" required:"true"` diff --git a/service/iotwireless/api.go b/service/iotwireless/api.go index 629d5880f2..a2458bf4e4 100644 --- a/service/iotwireless/api.go +++ b/service/iotwireless/api.go @@ -3608,7 +3608,7 @@ func (c *IoTWireless) GetEventConfigurationByResourceTypesRequest(input *GetEven // GetEventConfigurationByResourceTypes API operation for AWS IoT Wireless. // -// Get the event configuration by resource types. +// Get the event configuration based on resource types. // // 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 @@ -4195,6 +4195,188 @@ func (c *IoTWireless) GetPartnerAccountWithContext(ctx aws.Context, input *GetPa return out, req.Send() } +const opGetPosition = "GetPosition" + +// GetPositionRequest generates a "aws/request.Request" representing the +// client's request for the GetPosition 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 GetPosition for more information on using the GetPosition +// 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 GetPositionRequest method. +// req, resp := client.GetPositionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/GetPosition +func (c *IoTWireless) GetPositionRequest(input *GetPositionInput) (req *request.Request, output *GetPositionOutput) { + op := &request.Operation{ + Name: opGetPosition, + HTTPMethod: "GET", + HTTPPath: "/positions/{ResourceIdentifier}", + } + + if input == nil { + input = &GetPositionInput{} + } + + output = &GetPositionOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetPosition API operation for AWS IoT Wireless. +// +// Get the position information for a given resource. +// +// 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 AWS IoT Wireless's +// API operation GetPosition for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input did not meet the specified constraints. +// +// * AccessDeniedException +// User does not have permission to perform this action. +// +// * ResourceNotFoundException +// Resource does not exist. +// +// * ThrottlingException +// The request was denied because it exceeded the allowed API request rate. +// +// * InternalServerException +// An unexpected error occurred while processing a request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/GetPosition +func (c *IoTWireless) GetPosition(input *GetPositionInput) (*GetPositionOutput, error) { + req, out := c.GetPositionRequest(input) + return out, req.Send() +} + +// GetPositionWithContext is the same as GetPosition with the addition of +// the ability to pass a context and additional request options. +// +// See GetPosition 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 *IoTWireless) GetPositionWithContext(ctx aws.Context, input *GetPositionInput, opts ...request.Option) (*GetPositionOutput, error) { + req, out := c.GetPositionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetPositionConfiguration = "GetPositionConfiguration" + +// GetPositionConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the GetPositionConfiguration 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 GetPositionConfiguration for more information on using the GetPositionConfiguration +// 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 GetPositionConfigurationRequest method. +// req, resp := client.GetPositionConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/GetPositionConfiguration +func (c *IoTWireless) GetPositionConfigurationRequest(input *GetPositionConfigurationInput) (req *request.Request, output *GetPositionConfigurationOutput) { + op := &request.Operation{ + Name: opGetPositionConfiguration, + HTTPMethod: "GET", + HTTPPath: "/position-configurations/{ResourceIdentifier}", + } + + if input == nil { + input = &GetPositionConfigurationInput{} + } + + output = &GetPositionConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetPositionConfiguration API operation for AWS IoT Wireless. +// +// Get position configuration for a given resource. +// +// 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 AWS IoT Wireless's +// API operation GetPositionConfiguration for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input did not meet the specified constraints. +// +// * AccessDeniedException +// User does not have permission to perform this action. +// +// * ResourceNotFoundException +// Resource does not exist. +// +// * ThrottlingException +// The request was denied because it exceeded the allowed API request rate. +// +// * InternalServerException +// An unexpected error occurred while processing a request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/GetPositionConfiguration +func (c *IoTWireless) GetPositionConfiguration(input *GetPositionConfigurationInput) (*GetPositionConfigurationOutput, error) { + req, out := c.GetPositionConfigurationRequest(input) + return out, req.Send() +} + +// GetPositionConfigurationWithContext is the same as GetPositionConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See GetPositionConfiguration 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 *IoTWireless) GetPositionConfigurationWithContext(ctx aws.Context, input *GetPositionConfigurationInput, opts ...request.Option) (*GetPositionConfigurationOutput, error) { + req, out := c.GetPositionConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetResourceEventConfiguration = "GetResourceEventConfiguration" // GetResourceEventConfigurationRequest generates a "aws/request.Request" representing the @@ -6342,6 +6524,152 @@ func (c *IoTWireless) ListPartnerAccountsWithContext(ctx aws.Context, input *Lis return out, req.Send() } +const opListPositionConfigurations = "ListPositionConfigurations" + +// ListPositionConfigurationsRequest generates a "aws/request.Request" representing the +// client's request for the ListPositionConfigurations 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 ListPositionConfigurations for more information on using the ListPositionConfigurations +// 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 ListPositionConfigurationsRequest method. +// req, resp := client.ListPositionConfigurationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/ListPositionConfigurations +func (c *IoTWireless) ListPositionConfigurationsRequest(input *ListPositionConfigurationsInput) (req *request.Request, output *ListPositionConfigurationsOutput) { + op := &request.Operation{ + Name: opListPositionConfigurations, + HTTPMethod: "GET", + HTTPPath: "/position-configurations", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListPositionConfigurationsInput{} + } + + output = &ListPositionConfigurationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListPositionConfigurations API operation for AWS IoT Wireless. +// +// List position configurations for a given resource, such as positioning solvers. +// +// 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 AWS IoT Wireless's +// API operation ListPositionConfigurations for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input did not meet the specified constraints. +// +// * AccessDeniedException +// User does not have permission to perform this action. +// +// * ThrottlingException +// The request was denied because it exceeded the allowed API request rate. +// +// * InternalServerException +// An unexpected error occurred while processing a request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/ListPositionConfigurations +func (c *IoTWireless) ListPositionConfigurations(input *ListPositionConfigurationsInput) (*ListPositionConfigurationsOutput, error) { + req, out := c.ListPositionConfigurationsRequest(input) + return out, req.Send() +} + +// ListPositionConfigurationsWithContext is the same as ListPositionConfigurations with the addition of +// the ability to pass a context and additional request options. +// +// See ListPositionConfigurations 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 *IoTWireless) ListPositionConfigurationsWithContext(ctx aws.Context, input *ListPositionConfigurationsInput, opts ...request.Option) (*ListPositionConfigurationsOutput, error) { + req, out := c.ListPositionConfigurationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListPositionConfigurationsPages iterates over the pages of a ListPositionConfigurations operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListPositionConfigurations 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 ListPositionConfigurations operation. +// pageNum := 0 +// err := client.ListPositionConfigurationsPages(params, +// func(page *iotwireless.ListPositionConfigurationsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *IoTWireless) ListPositionConfigurationsPages(input *ListPositionConfigurationsInput, fn func(*ListPositionConfigurationsOutput, bool) bool) error { + return c.ListPositionConfigurationsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListPositionConfigurationsPagesWithContext same as ListPositionConfigurationsPages 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 *IoTWireless) ListPositionConfigurationsPagesWithContext(ctx aws.Context, input *ListPositionConfigurationsInput, fn func(*ListPositionConfigurationsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListPositionConfigurationsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListPositionConfigurationsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListPositionConfigurationsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListQueuedMessages = "ListQueuedMessages" // ListQueuedMessagesRequest generates a "aws/request.Request" representing the @@ -7108,25 +7436,117 @@ func (c *IoTWireless) ListWirelessGatewaysPagesWithContext(ctx aws.Context, inpu return p.Err() } -const opPutResourceLogLevel = "PutResourceLogLevel" +const opPutPositionConfiguration = "PutPositionConfiguration" -// PutResourceLogLevelRequest generates a "aws/request.Request" representing the -// client's request for the PutResourceLogLevel operation. The "output" return +// PutPositionConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the PutPositionConfiguration 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 PutResourceLogLevel for more information on using the PutResourceLogLevel +// See PutPositionConfiguration for more information on using the PutPositionConfiguration // 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 PutResourceLogLevelRequest method. -// req, resp := client.PutResourceLogLevelRequest(params) +// // Example sending a request using the PutPositionConfigurationRequest method. +// req, resp := client.PutPositionConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/PutPositionConfiguration +func (c *IoTWireless) PutPositionConfigurationRequest(input *PutPositionConfigurationInput) (req *request.Request, output *PutPositionConfigurationOutput) { + op := &request.Operation{ + Name: opPutPositionConfiguration, + HTTPMethod: "PUT", + HTTPPath: "/position-configurations/{ResourceIdentifier}", + } + + if input == nil { + input = &PutPositionConfigurationInput{} + } + + output = &PutPositionConfigurationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// PutPositionConfiguration API operation for AWS IoT Wireless. +// +// Put position configuration for a given resource. +// +// 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 AWS IoT Wireless's +// API operation PutPositionConfiguration for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input did not meet the specified constraints. +// +// * AccessDeniedException +// User does not have permission to perform this action. +// +// * ResourceNotFoundException +// Resource does not exist. +// +// * ThrottlingException +// The request was denied because it exceeded the allowed API request rate. +// +// * InternalServerException +// An unexpected error occurred while processing a request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/PutPositionConfiguration +func (c *IoTWireless) PutPositionConfiguration(input *PutPositionConfigurationInput) (*PutPositionConfigurationOutput, error) { + req, out := c.PutPositionConfigurationRequest(input) + return out, req.Send() +} + +// PutPositionConfigurationWithContext is the same as PutPositionConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See PutPositionConfiguration 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 *IoTWireless) PutPositionConfigurationWithContext(ctx aws.Context, input *PutPositionConfigurationInput, opts ...request.Option) (*PutPositionConfigurationOutput, error) { + req, out := c.PutPositionConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opPutResourceLogLevel = "PutResourceLogLevel" + +// PutResourceLogLevelRequest generates a "aws/request.Request" representing the +// client's request for the PutResourceLogLevel 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 PutResourceLogLevel for more information on using the PutResourceLogLevel +// 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 PutResourceLogLevelRequest method. +// req, resp := client.PutResourceLogLevelRequest(params) // // err := req.Send() // if err == nil { // resp is now filled @@ -8358,7 +8778,7 @@ func (c *IoTWireless) UpdateEventConfigurationByResourceTypesRequest(input *Upda // UpdateEventConfigurationByResourceTypes API operation for AWS IoT Wireless. // -// Update the event configuration by resource types. +// Update the event configuration based on resource types. // // 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 @@ -8870,6 +9290,98 @@ func (c *IoTWireless) UpdatePartnerAccountWithContext(ctx aws.Context, input *Up return out, req.Send() } +const opUpdatePosition = "UpdatePosition" + +// UpdatePositionRequest generates a "aws/request.Request" representing the +// client's request for the UpdatePosition 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 UpdatePosition for more information on using the UpdatePosition +// 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 UpdatePositionRequest method. +// req, resp := client.UpdatePositionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/UpdatePosition +func (c *IoTWireless) UpdatePositionRequest(input *UpdatePositionInput) (req *request.Request, output *UpdatePositionOutput) { + op := &request.Operation{ + Name: opUpdatePosition, + HTTPMethod: "PATCH", + HTTPPath: "/positions/{ResourceIdentifier}", + } + + if input == nil { + input = &UpdatePositionInput{} + } + + output = &UpdatePositionOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpdatePosition API operation for AWS IoT Wireless. +// +// Update the position information of a resource. +// +// 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 AWS IoT Wireless's +// API operation UpdatePosition for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The input did not meet the specified constraints. +// +// * AccessDeniedException +// User does not have permission to perform this action. +// +// * ResourceNotFoundException +// Resource does not exist. +// +// * ThrottlingException +// The request was denied because it exceeded the allowed API request rate. +// +// * InternalServerException +// An unexpected error occurred while processing a request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/UpdatePosition +func (c *IoTWireless) UpdatePosition(input *UpdatePositionInput) (*UpdatePositionOutput, error) { + req, out := c.UpdatePositionRequest(input) + return out, req.Send() +} + +// UpdatePositionWithContext is the same as UpdatePosition with the addition of +// the ability to pass a context and additional request options. +// +// See UpdatePosition 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 *IoTWireless) UpdatePositionWithContext(ctx aws.Context, input *UpdatePositionInput, opts ...request.Option) (*UpdatePositionOutput, error) { + req, out := c.UpdatePositionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateResourceEventConfiguration = "UpdateResourceEventConfiguration" // UpdateResourceEventConfigurationRequest generates a "aws/request.Request" representing the @@ -9313,6 +9825,50 @@ func (s *AccessDeniedException) RequestID() string { return s.RespMetadata.RequestID } +// The accuracy of the estimated position in meters. An empty value indicates +// that no position data is available. A value of ‘0.0’ value indicates +// that position data is available. This data corresponds to the position information +// that you specified instead of the position computed by solver. +type Accuracy struct { + _ struct{} `type:"structure"` + + // The horizontal accuracy of the estimated position in meters. + HorizontalAccuracy *float64 `type:"float"` + + // The vertical accuracy of the estimated position in meters. + VerticalAccuracy *float64 `type:"float"` +} + +// 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 Accuracy) 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 Accuracy) GoString() string { + return s.String() +} + +// SetHorizontalAccuracy sets the HorizontalAccuracy field's value. +func (s *Accuracy) SetHorizontalAccuracy(v float64) *Accuracy { + s.HorizontalAccuracy = &v + return s +} + +// SetVerticalAccuracy sets the VerticalAccuracy field's value. +func (s *Accuracy) SetVerticalAccuracy(v float64) *Accuracy { + s.VerticalAccuracy = &v + return s +} + type AssociateAwsAccountWithPartnerAccountInput struct { _ struct{} `type:"structure"` @@ -10155,8 +10711,8 @@ type ConnectionStatusEventConfiguration struct { // related event topics. LoRaWAN *LoRaWANConnectionStatusEventNotificationConfigurations `type:"structure"` - // Enum to denote whether the wireless gateway id connection status event topic - // is enabled or disabled . + // Enum to denote whether the wireless gateway ID connection status event topic + // is enabled or disabled. WirelessGatewayIdEventTopic *string `type:"string" enum:"EventNotificationTopicStatus"` } @@ -13447,6 +14003,10 @@ type FPorts struct { // The Fport value. Multicast *int64 `min:"1" type:"integer"` + + // FPort values for the GNSS, stream, and ClockSync functions of the positioning + // information. + Positioning *Positioning `type:"structure"` } // String returns the string representation. @@ -13479,6 +14039,11 @@ func (s *FPorts) Validate() error { if s.Multicast != nil && *s.Multicast < 1 { invalidParams.Add(request.NewErrParamMinValue("Multicast", 1)) } + if s.Positioning != nil { + if err := s.Positioning.Validate(); err != nil { + invalidParams.AddNested("Positioning", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -13504,6 +14069,12 @@ func (s *FPorts) SetMulticast(v int64) *FPorts { return s } +// SetPositioning sets the Positioning field's value. +func (s *FPorts) SetPositioning(v *Positioning) *FPorts { + s.Positioning = v + return s +} + // A FUOTA task. type FuotaTask struct { _ struct{} `type:"structure"` @@ -13811,16 +14382,16 @@ func (s GetEventConfigurationByResourceTypesInput) GoString() string { type GetEventConfigurationByResourceTypesOutput struct { _ struct{} `type:"structure"` - // Resource type event configuration for the connection status event + // Resource type event configuration for the connection status event. ConnectionStatus *ConnectionStatusResourceTypeEventConfiguration `type:"structure"` - // Resource type event configuration for the device registration state event + // Resource type event configuration for the device registration state event. DeviceRegistrationState *DeviceRegistrationStateResourceTypeEventConfiguration `type:"structure"` - // Resource type event configuration for the join event + // Resource type event configuration for the join event. Join *JoinResourceTypeEventConfiguration `type:"structure"` - // Resource type event configuration for the proximity event + // Resource type event configuration for the proximity event. Proximity *ProximityResourceTypeEventConfiguration `type:"structure"` } @@ -14537,21 +15108,18 @@ func (s *GetPartnerAccountOutput) SetSidewalk(v *SidewalkAccountInfoWithFingerpr return s } -type GetResourceEventConfigurationInput struct { +type GetPositionConfigurationInput struct { _ struct{} `type:"structure" nopayload:"true"` - // Resource identifier to opt in for event messaging. + // Resource identifier used in a position configuration. // - // Identifier is a required field - Identifier *string `location:"uri" locationName:"Identifier" type:"string" required:"true"` + // ResourceIdentifier is a required field + ResourceIdentifier *string `location:"uri" locationName:"ResourceIdentifier" type:"string" required:"true"` - // Identifier type of the particular resource identifier for event configuration. + // Resource type of the resource for which position configuration is retrieved. // - // IdentifierType is a required field - IdentifierType *string `location:"querystring" locationName:"identifierType" type:"string" required:"true" enum:"IdentifierType"` - - // Partner type of the resource if the identifier type is PartnerAccountId. - PartnerType *string `location:"querystring" locationName:"partnerType" type:"string" enum:"EventNotificationPartnerType"` + // ResourceType is a required field + ResourceType *string `location:"querystring" locationName:"resourceType" type:"string" required:"true" enum:"PositionResourceType"` } // String returns the string representation. @@ -14559,7 +15127,7 @@ type GetResourceEventConfigurationInput 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 GetResourceEventConfigurationInput) String() string { +func (s GetPositionConfigurationInput) String() string { return awsutil.Prettify(s) } @@ -14568,21 +15136,21 @@ func (s GetResourceEventConfigurationInput) 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 GetResourceEventConfigurationInput) GoString() string { +func (s GetPositionConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *GetResourceEventConfigurationInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetResourceEventConfigurationInput"} - if s.Identifier == nil { - invalidParams.Add(request.NewErrParamRequired("Identifier")) +func (s *GetPositionConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetPositionConfigurationInput"} + if s.ResourceIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceIdentifier")) } - if s.Identifier != nil && len(*s.Identifier) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + if s.ResourceIdentifier != nil && len(*s.ResourceIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceIdentifier", 1)) } - if s.IdentifierType == nil { - invalidParams.Add(request.NewErrParamRequired("IdentifierType")) + if s.ResourceType == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceType")) } if invalidParams.Len() > 0 { @@ -14591,38 +15159,27 @@ func (s *GetResourceEventConfigurationInput) Validate() error { return nil } -// SetIdentifier sets the Identifier field's value. -func (s *GetResourceEventConfigurationInput) SetIdentifier(v string) *GetResourceEventConfigurationInput { - s.Identifier = &v - return s -} - -// SetIdentifierType sets the IdentifierType field's value. -func (s *GetResourceEventConfigurationInput) SetIdentifierType(v string) *GetResourceEventConfigurationInput { - s.IdentifierType = &v +// SetResourceIdentifier sets the ResourceIdentifier field's value. +func (s *GetPositionConfigurationInput) SetResourceIdentifier(v string) *GetPositionConfigurationInput { + s.ResourceIdentifier = &v return s } -// SetPartnerType sets the PartnerType field's value. -func (s *GetResourceEventConfigurationInput) SetPartnerType(v string) *GetResourceEventConfigurationInput { - s.PartnerType = &v +// SetResourceType sets the ResourceType field's value. +func (s *GetPositionConfigurationInput) SetResourceType(v string) *GetPositionConfigurationInput { + s.ResourceType = &v return s } -type GetResourceEventConfigurationOutput struct { +type GetPositionConfigurationOutput struct { _ struct{} `type:"structure"` - // Event configuration for the connection status event. - ConnectionStatus *ConnectionStatusEventConfiguration `type:"structure"` - - // Event configuration for the device registration state event - DeviceRegistrationState *DeviceRegistrationStateEventConfiguration `type:"structure"` - - // Event configuration for the join event. - Join *JoinEventConfiguration `type:"structure"` + // The position data destination that describes the AWS IoT rule that processes + // the device's position data for use by AWS IoT Core for LoRaWAN. + Destination *string `type:"string"` - // Event configuration for the Proximity event - Proximity *ProximityEventConfiguration `type:"structure"` + // The wrapper for the solver configuration details object. + Solvers *PositionSolverDetails `type:"structure"` } // String returns the string representation. @@ -14630,7 +15187,7 @@ type GetResourceEventConfigurationOutput 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 GetResourceEventConfigurationOutput) String() string { +func (s GetPositionConfigurationOutput) String() string { return awsutil.Prettify(s) } @@ -14639,35 +15196,295 @@ func (s GetResourceEventConfigurationOutput) 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 GetResourceEventConfigurationOutput) GoString() string { +func (s GetPositionConfigurationOutput) GoString() string { return s.String() } -// SetConnectionStatus sets the ConnectionStatus field's value. -func (s *GetResourceEventConfigurationOutput) SetConnectionStatus(v *ConnectionStatusEventConfiguration) *GetResourceEventConfigurationOutput { - s.ConnectionStatus = v - return s -} - -// SetDeviceRegistrationState sets the DeviceRegistrationState field's value. -func (s *GetResourceEventConfigurationOutput) SetDeviceRegistrationState(v *DeviceRegistrationStateEventConfiguration) *GetResourceEventConfigurationOutput { - s.DeviceRegistrationState = v - return s -} - -// SetJoin sets the Join field's value. -func (s *GetResourceEventConfigurationOutput) SetJoin(v *JoinEventConfiguration) *GetResourceEventConfigurationOutput { - s.Join = v +// SetDestination sets the Destination field's value. +func (s *GetPositionConfigurationOutput) SetDestination(v string) *GetPositionConfigurationOutput { + s.Destination = &v return s } -// SetProximity sets the Proximity field's value. -func (s *GetResourceEventConfigurationOutput) SetProximity(v *ProximityEventConfiguration) *GetResourceEventConfigurationOutput { - s.Proximity = v +// SetSolvers sets the Solvers field's value. +func (s *GetPositionConfigurationOutput) SetSolvers(v *PositionSolverDetails) *GetPositionConfigurationOutput { + s.Solvers = v return s } -type GetResourceLogLevelInput struct { +type GetPositionInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Resource identifier used to retrieve the position information. + // + // ResourceIdentifier is a required field + ResourceIdentifier *string `location:"uri" locationName:"ResourceIdentifier" type:"string" required:"true"` + + // Resource type of the resource for which position information is retrieved. + // + // ResourceType is a required field + ResourceType *string `location:"querystring" locationName:"resourceType" type:"string" required:"true" enum:"PositionResourceType"` +} + +// 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 GetPositionInput) 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 GetPositionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetPositionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetPositionInput"} + if s.ResourceIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceIdentifier")) + } + if s.ResourceIdentifier != nil && len(*s.ResourceIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceIdentifier", 1)) + } + if s.ResourceType == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceIdentifier sets the ResourceIdentifier field's value. +func (s *GetPositionInput) SetResourceIdentifier(v string) *GetPositionInput { + s.ResourceIdentifier = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *GetPositionInput) SetResourceType(v string) *GetPositionInput { + s.ResourceType = &v + return s +} + +type GetPositionOutput struct { + _ struct{} `type:"structure"` + + // The accuracy of the estimated position in meters. An empty value indicates + // that no position data is available. A value of ‘0.0’ value indicates + // that position data is available. This data corresponds to the position information + // that you specified instead of the position computed by solver. + Accuracy *Accuracy `type:"structure"` + + // The position information of the resource. + Position []*float64 `type:"list"` + + // The vendor of the positioning solver. + SolverProvider *string `type:"string" enum:"PositionSolverProvider"` + + // The type of solver used to identify the position of the resource. + SolverType *string `type:"string" enum:"PositionSolverType"` + + // The version of the positioning solver. + SolverVersion *string `type:"string"` + + // The timestamp at which the device's position was determined. + Timestamp *string `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 GetPositionOutput) 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 GetPositionOutput) GoString() string { + return s.String() +} + +// SetAccuracy sets the Accuracy field's value. +func (s *GetPositionOutput) SetAccuracy(v *Accuracy) *GetPositionOutput { + s.Accuracy = v + return s +} + +// SetPosition sets the Position field's value. +func (s *GetPositionOutput) SetPosition(v []*float64) *GetPositionOutput { + s.Position = v + return s +} + +// SetSolverProvider sets the SolverProvider field's value. +func (s *GetPositionOutput) SetSolverProvider(v string) *GetPositionOutput { + s.SolverProvider = &v + return s +} + +// SetSolverType sets the SolverType field's value. +func (s *GetPositionOutput) SetSolverType(v string) *GetPositionOutput { + s.SolverType = &v + return s +} + +// SetSolverVersion sets the SolverVersion field's value. +func (s *GetPositionOutput) SetSolverVersion(v string) *GetPositionOutput { + s.SolverVersion = &v + return s +} + +// SetTimestamp sets the Timestamp field's value. +func (s *GetPositionOutput) SetTimestamp(v string) *GetPositionOutput { + s.Timestamp = &v + return s +} + +type GetResourceEventConfigurationInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // Resource identifier to opt in for event messaging. + // + // Identifier is a required field + Identifier *string `location:"uri" locationName:"Identifier" type:"string" required:"true"` + + // Identifier type of the particular resource identifier for event configuration. + // + // IdentifierType is a required field + IdentifierType *string `location:"querystring" locationName:"identifierType" type:"string" required:"true" enum:"IdentifierType"` + + // Partner type of the resource if the identifier type is PartnerAccountId. + PartnerType *string `location:"querystring" locationName:"partnerType" type:"string" enum:"EventNotificationPartnerType"` +} + +// 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 GetResourceEventConfigurationInput) 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 GetResourceEventConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetResourceEventConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetResourceEventConfigurationInput"} + if s.Identifier == nil { + invalidParams.Add(request.NewErrParamRequired("Identifier")) + } + if s.Identifier != nil && len(*s.Identifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Identifier", 1)) + } + if s.IdentifierType == nil { + invalidParams.Add(request.NewErrParamRequired("IdentifierType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIdentifier sets the Identifier field's value. +func (s *GetResourceEventConfigurationInput) SetIdentifier(v string) *GetResourceEventConfigurationInput { + s.Identifier = &v + return s +} + +// SetIdentifierType sets the IdentifierType field's value. +func (s *GetResourceEventConfigurationInput) SetIdentifierType(v string) *GetResourceEventConfigurationInput { + s.IdentifierType = &v + return s +} + +// SetPartnerType sets the PartnerType field's value. +func (s *GetResourceEventConfigurationInput) SetPartnerType(v string) *GetResourceEventConfigurationInput { + s.PartnerType = &v + return s +} + +type GetResourceEventConfigurationOutput struct { + _ struct{} `type:"structure"` + + // Event configuration for the connection status event. + ConnectionStatus *ConnectionStatusEventConfiguration `type:"structure"` + + // Event configuration for the device registration state event. + DeviceRegistrationState *DeviceRegistrationStateEventConfiguration `type:"structure"` + + // Event configuration for the join event. + Join *JoinEventConfiguration `type:"structure"` + + // Event configuration for the proximity event. + Proximity *ProximityEventConfiguration `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 GetResourceEventConfigurationOutput) 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 GetResourceEventConfigurationOutput) GoString() string { + return s.String() +} + +// SetConnectionStatus sets the ConnectionStatus field's value. +func (s *GetResourceEventConfigurationOutput) SetConnectionStatus(v *ConnectionStatusEventConfiguration) *GetResourceEventConfigurationOutput { + s.ConnectionStatus = v + return s +} + +// SetDeviceRegistrationState sets the DeviceRegistrationState field's value. +func (s *GetResourceEventConfigurationOutput) SetDeviceRegistrationState(v *DeviceRegistrationStateEventConfiguration) *GetResourceEventConfigurationOutput { + s.DeviceRegistrationState = v + return s +} + +// SetJoin sets the Join field's value. +func (s *GetResourceEventConfigurationOutput) SetJoin(v *JoinEventConfiguration) *GetResourceEventConfigurationOutput { + s.Join = v + return s +} + +// SetProximity sets the Proximity field's value. +func (s *GetResourceEventConfigurationOutput) SetProximity(v *ProximityEventConfiguration) *GetResourceEventConfigurationOutput { + s.Proximity = v + return s +} + +type GetResourceLogLevelInput struct { _ struct{} `type:"structure" nopayload:"true"` // The identifier of the resource. For a Wireless Device, it is the wireless @@ -16725,15 +17542,9 @@ func (s *ListPartnerAccountsOutput) SetSidewalk(v []*SidewalkAccountInfoWithFing return s } -type ListQueuedMessagesInput struct { +type ListPositionConfigurationsInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The ID of a given wireless device which the downlink message packets are - // being sent. - // - // Id is a required field - Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` - // The maximum number of results to return in this operation. MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"` @@ -16741,8 +17552,8 @@ type ListQueuedMessagesInput struct { // response; otherwise null to receive the first set of results. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` - // The wireless device type, whic can be either Sidewalk or LoRaWAN. - WirelessDeviceType *string `location:"querystring" locationName:"WirelessDeviceType" type:"string" enum:"WirelessDeviceType"` + // Resource type for which position configurations are listed. + ResourceType *string `location:"querystring" locationName:"resourceType" type:"string" enum:"PositionResourceType"` } // String returns the string representation. @@ -16750,7 +17561,7 @@ type ListQueuedMessagesInput 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 ListQueuedMessagesInput) String() string { +func (s ListPositionConfigurationsInput) String() string { return awsutil.Prettify(s) } @@ -16759,24 +17570,121 @@ func (s ListQueuedMessagesInput) 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 ListQueuedMessagesInput) GoString() string { +func (s ListPositionConfigurationsInput) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *ListQueuedMessagesInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListQueuedMessagesInput"} - if s.Id == nil { - invalidParams.Add(request.NewErrParamRequired("Id")) - } - if s.Id != nil && len(*s.Id) < 1 { - invalidParams.Add(request.NewErrParamMinLen("Id", 1)) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetMaxResults sets the MaxResults field's value. +func (s *ListPositionConfigurationsInput) SetMaxResults(v int64) *ListPositionConfigurationsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListPositionConfigurationsInput) SetNextToken(v string) *ListPositionConfigurationsInput { + s.NextToken = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *ListPositionConfigurationsInput) SetResourceType(v string) *ListPositionConfigurationsInput { + s.ResourceType = &v + return s +} + +type ListPositionConfigurationsOutput struct { + _ struct{} `type:"structure"` + + // The token to use to get the next set of results, or null if there are no + // additional results. + NextToken *string `type:"string"` + + // A list of position configurations. + PositionConfigurationList []*PositionConfigurationItem `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 ListPositionConfigurationsOutput) 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 ListPositionConfigurationsOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListPositionConfigurationsOutput) SetNextToken(v string) *ListPositionConfigurationsOutput { + s.NextToken = &v + return s +} + +// SetPositionConfigurationList sets the PositionConfigurationList field's value. +func (s *ListPositionConfigurationsOutput) SetPositionConfigurationList(v []*PositionConfigurationItem) *ListPositionConfigurationsOutput { + s.PositionConfigurationList = v + return s +} + +type ListQueuedMessagesInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of a given wireless device which the downlink message packets are + // being sent. + // + // Id is a required field + Id *string `location:"uri" locationName:"Id" type:"string" required:"true"` + + // The maximum number of results to return in this operation. + MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"` + + // To retrieve the next set of results, the nextToken value from a previous + // response; otherwise null to receive the first set of results. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` + + // The wireless device type, whic can be either Sidewalk or LoRaWAN. + WirelessDeviceType *string `location:"querystring" locationName:"WirelessDeviceType" type:"string" enum:"WirelessDeviceType"` +} + +// 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 ListQueuedMessagesInput) 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 ListQueuedMessagesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListQueuedMessagesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListQueuedMessagesInput"} + if s.Id == nil { + invalidParams.Add(request.NewErrParamRequired("Id")) + } + if s.Id != nil && len(*s.Id) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Id", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } // SetId sets the Id field's value. @@ -17322,7 +18230,7 @@ func (s *ListWirelessGatewaysOutput) SetWirelessGatewayList(v []*WirelessGateway type LoRaWANConnectionStatusEventNotificationConfigurations struct { _ struct{} `type:"structure"` - // Enum to denote whether the gateway eui connection status event topic is enabled + // Enum to denote whether the gateway EUI connection status event topic is enabled // or disabled. GatewayEuiEventTopic *string `type:"string" enum:"EventNotificationTopicStatus"` } @@ -18276,7 +19184,7 @@ func (s *LoRaWANGetServiceProfileInfo) SetUlRatePolicy(v string) *LoRaWANGetServ type LoRaWANJoinEventNotificationConfigurations struct { _ struct{} `type:"structure"` - // Enum to denote whether the dev eui join event topic is enabled or disabled. + // Enum to denote whether the Dev EUI join event topic is enabled or disabled. DevEuiEventTopic *string `type:"string" enum:"EventNotificationTopicStatus"` } @@ -18713,6 +19621,9 @@ type LoRaWANUpdateDevice struct { // The ID of the device profile for the wireless device. DeviceProfileId *string `type:"string"` + // FPorts object for the positioning information of the device. + FPorts *UpdateFPorts `type:"structure"` + // The ID of the service profile. ServiceProfileId *string `type:"string"` } @@ -18735,6 +19646,21 @@ func (s LoRaWANUpdateDevice) GoString() string { return s.String() } +// Validate inspects the fields of the type to determine if they are valid. +func (s *LoRaWANUpdateDevice) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "LoRaWANUpdateDevice"} + if s.FPorts != nil { + if err := s.FPorts.Validate(); err != nil { + invalidParams.AddNested("FPorts", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + // SetAbpV1_0_x sets the AbpV1_0_x field's value. func (s *LoRaWANUpdateDevice) SetAbpV1_0_x(v *UpdateAbpV10X) *LoRaWANUpdateDevice { s.AbpV1_0_x = v @@ -18753,6 +19679,12 @@ func (s *LoRaWANUpdateDevice) SetDeviceProfileId(v string) *LoRaWANUpdateDevice return s } +// SetFPorts sets the FPorts field's value. +func (s *LoRaWANUpdateDevice) SetFPorts(v *UpdateFPorts) *LoRaWANUpdateDevice { + s.FPorts = v + return s +} + // SetServiceProfileId sets the ServiceProfileId field's value. func (s *LoRaWANUpdateDevice) SetServiceProfileId(v string) *LoRaWANUpdateDevice { s.ServiceProfileId = &v @@ -19155,6 +20087,214 @@ func (s *OtaaV11) SetNwkKey(v string) *OtaaV11 { return s } +// The wrapper for a position configuration. +type PositionConfigurationItem struct { + _ struct{} `type:"structure"` + + // The position data destination that describes the AWS IoT rule that processes + // the device's position data for use by AWS IoT Core for LoRaWAN. + Destination *string `type:"string"` + + // Resource identifier for the position configuration. + ResourceIdentifier *string `type:"string"` + + // Resource type of the resource for the position configuration. + ResourceType *string `type:"string" enum:"PositionResourceType"` + + // The details of the positioning solver object used to compute the location. + Solvers *PositionSolverDetails `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 PositionConfigurationItem) 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 PositionConfigurationItem) GoString() string { + return s.String() +} + +// SetDestination sets the Destination field's value. +func (s *PositionConfigurationItem) SetDestination(v string) *PositionConfigurationItem { + s.Destination = &v + return s +} + +// SetResourceIdentifier sets the ResourceIdentifier field's value. +func (s *PositionConfigurationItem) SetResourceIdentifier(v string) *PositionConfigurationItem { + s.ResourceIdentifier = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *PositionConfigurationItem) SetResourceType(v string) *PositionConfigurationItem { + s.ResourceType = &v + return s +} + +// SetSolvers sets the Solvers field's value. +func (s *PositionConfigurationItem) SetSolvers(v *PositionSolverDetails) *PositionConfigurationItem { + s.Solvers = v + return s +} + +// The wrapper for position solver configurations. +type PositionSolverConfigurations struct { + _ struct{} `type:"structure"` + + // The Semtech GNSS solver configuration object. + SemtechGnss *SemtechGnssConfiguration `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 PositionSolverConfigurations) 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 PositionSolverConfigurations) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PositionSolverConfigurations) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PositionSolverConfigurations"} + if s.SemtechGnss != nil { + if err := s.SemtechGnss.Validate(); err != nil { + invalidParams.AddNested("SemtechGnss", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetSemtechGnss sets the SemtechGnss field's value. +func (s *PositionSolverConfigurations) SetSemtechGnss(v *SemtechGnssConfiguration) *PositionSolverConfigurations { + s.SemtechGnss = v + return s +} + +// The wrapper for position solver details. +type PositionSolverDetails struct { + _ struct{} `type:"structure"` + + // The Semtech GNSS solver object details. + SemtechGnss *SemtechGnssDetail `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 PositionSolverDetails) 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 PositionSolverDetails) GoString() string { + return s.String() +} + +// SetSemtechGnss sets the SemtechGnss field's value. +func (s *PositionSolverDetails) SetSemtechGnss(v *SemtechGnssDetail) *PositionSolverDetails { + s.SemtechGnss = v + return s +} + +// The FPorts for the position information. +type Positioning struct { + _ struct{} `type:"structure"` + + // The Fport value. + ClockSync *int64 `min:"1" type:"integer"` + + // The Fport value. + Gnss *int64 `min:"1" type:"integer"` + + // The Fport value. + Stream *int64 `min:"1" type:"integer"` +} + +// 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 Positioning) 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 Positioning) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Positioning) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Positioning"} + if s.ClockSync != nil && *s.ClockSync < 1 { + invalidParams.Add(request.NewErrParamMinValue("ClockSync", 1)) + } + if s.Gnss != nil && *s.Gnss < 1 { + invalidParams.Add(request.NewErrParamMinValue("Gnss", 1)) + } + if s.Stream != nil && *s.Stream < 1 { + invalidParams.Add(request.NewErrParamMinValue("Stream", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClockSync sets the ClockSync field's value. +func (s *Positioning) SetClockSync(v int64) *Positioning { + s.ClockSync = &v + return s +} + +// SetGnss sets the Gnss field's value. +func (s *Positioning) SetGnss(v int64) *Positioning { + s.Gnss = &v + return s +} + +// SetStream sets the Stream field's value. +func (s *Positioning) SetStream(v int64) *Positioning { + s.Stream = &v + return s +} + // Proximity event configuration object for enabling and disabling relevant // topics. type ProximityEventConfiguration struct { @@ -19193,20 +20333,136 @@ func (s *ProximityEventConfiguration) SetSidewalk(v *SidewalkEventNotificationCo return s } -// SetWirelessDeviceIdEventTopic sets the WirelessDeviceIdEventTopic field's value. -func (s *ProximityEventConfiguration) SetWirelessDeviceIdEventTopic(v string) *ProximityEventConfiguration { - s.WirelessDeviceIdEventTopic = &v +// SetWirelessDeviceIdEventTopic sets the WirelessDeviceIdEventTopic field's value. +func (s *ProximityEventConfiguration) SetWirelessDeviceIdEventTopic(v string) *ProximityEventConfiguration { + s.WirelessDeviceIdEventTopic = &v + return s +} + +// Proximity resource type event configuration object for enabling or disabling +// topic. +type ProximityResourceTypeEventConfiguration struct { + _ struct{} `type:"structure"` + + // Proximity resource type event configuration object for enabling and disabling + // wireless device topic. + Sidewalk *SidewalkResourceTypeEventConfiguration `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 ProximityResourceTypeEventConfiguration) 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 ProximityResourceTypeEventConfiguration) GoString() string { + return s.String() +} + +// SetSidewalk sets the Sidewalk field's value. +func (s *ProximityResourceTypeEventConfiguration) SetSidewalk(v *SidewalkResourceTypeEventConfiguration) *ProximityResourceTypeEventConfiguration { + s.Sidewalk = v + return s +} + +type PutPositionConfigurationInput struct { + _ struct{} `type:"structure"` + + // The position data destination that describes the AWS IoT rule that processes + // the device's position data for use by AWS IoT Core for LoRaWAN. + Destination *string `type:"string"` + + // Resource identifier used to update the position configuration. + // + // ResourceIdentifier is a required field + ResourceIdentifier *string `location:"uri" locationName:"ResourceIdentifier" type:"string" required:"true"` + + // Resource type of the resource for which you want to update the position configuration. + // + // ResourceType is a required field + ResourceType *string `location:"querystring" locationName:"resourceType" type:"string" required:"true" enum:"PositionResourceType"` + + // The positioning solvers used to update the position configuration of the + // resource. + Solvers *PositionSolverConfigurations `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 PutPositionConfigurationInput) 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 PutPositionConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutPositionConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutPositionConfigurationInput"} + if s.ResourceIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceIdentifier")) + } + if s.ResourceIdentifier != nil && len(*s.ResourceIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceIdentifier", 1)) + } + if s.ResourceType == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceType")) + } + if s.Solvers != nil { + if err := s.Solvers.Validate(); err != nil { + invalidParams.AddNested("Solvers", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDestination sets the Destination field's value. +func (s *PutPositionConfigurationInput) SetDestination(v string) *PutPositionConfigurationInput { + s.Destination = &v + return s +} + +// SetResourceIdentifier sets the ResourceIdentifier field's value. +func (s *PutPositionConfigurationInput) SetResourceIdentifier(v string) *PutPositionConfigurationInput { + s.ResourceIdentifier = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *PutPositionConfigurationInput) SetResourceType(v string) *PutPositionConfigurationInput { + s.ResourceType = &v + return s +} + +// SetSolvers sets the Solvers field's value. +func (s *PutPositionConfigurationInput) SetSolvers(v *PositionSolverConfigurations) *PutPositionConfigurationInput { + s.Solvers = v return s } -// Proximity resource type event configuration object for enabling or disabling -// topic. -type ProximityResourceTypeEventConfiguration struct { +type PutPositionConfigurationOutput struct { _ struct{} `type:"structure"` - - // Proximity resource type event configuration object for enabling and disabling - // wireless device topic. - Sidewalk *SidewalkResourceTypeEventConfiguration `type:"structure"` } // String returns the string representation. @@ -19214,7 +20470,7 @@ type ProximityResourceTypeEventConfiguration 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 ProximityResourceTypeEventConfiguration) String() string { +func (s PutPositionConfigurationOutput) String() string { return awsutil.Prettify(s) } @@ -19223,16 +20479,10 @@ func (s ProximityResourceTypeEventConfiguration) 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 ProximityResourceTypeEventConfiguration) GoString() string { +func (s PutPositionConfigurationOutput) GoString() string { return s.String() } -// SetSidewalk sets the Sidewalk field's value. -func (s *ProximityResourceTypeEventConfiguration) SetSidewalk(v *SidewalkResourceTypeEventConfiguration) *ProximityResourceTypeEventConfiguration { - s.Sidewalk = v - return s -} - type PutResourceLogLevelInput struct { _ struct{} `type:"structure"` @@ -19535,6 +20785,126 @@ func (s *ResourceNotFoundException) RequestID() string { return s.RespMetadata.RequestID } +// Information about the Semtech GNSS solver configuration. +type SemtechGnssConfiguration struct { + _ struct{} `type:"structure"` + + // Whether forward error correction is enabled. + // + // Fec is a required field + Fec *string `type:"string" required:"true" enum:"PositionConfigurationFec"` + + // The status indicating whether the solver is enabled. + // + // Status is a required field + Status *string `type:"string" required:"true" enum:"PositionConfigurationStatus"` +} + +// 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 SemtechGnssConfiguration) 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 SemtechGnssConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SemtechGnssConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SemtechGnssConfiguration"} + if s.Fec == nil { + invalidParams.Add(request.NewErrParamRequired("Fec")) + } + if s.Status == nil { + invalidParams.Add(request.NewErrParamRequired("Status")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFec sets the Fec field's value. +func (s *SemtechGnssConfiguration) SetFec(v string) *SemtechGnssConfiguration { + s.Fec = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *SemtechGnssConfiguration) SetStatus(v string) *SemtechGnssConfiguration { + s.Status = &v + return s +} + +// Details of the Semtech GNSS solver object. +type SemtechGnssDetail struct { + _ struct{} `type:"structure"` + + // Whether forward error correction is enabled. + Fec *string `type:"string" enum:"PositionConfigurationFec"` + + // The vendor of the solver object. + Provider *string `type:"string" enum:"PositionSolverProvider"` + + // The status indicating whether the solver is enabled. + Status *string `type:"string" enum:"PositionConfigurationStatus"` + + // The type of positioning solver used. + Type *string `type:"string" enum:"PositionSolverType"` +} + +// 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 SemtechGnssDetail) 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 SemtechGnssDetail) GoString() string { + return s.String() +} + +// SetFec sets the Fec field's value. +func (s *SemtechGnssDetail) SetFec(v string) *SemtechGnssDetail { + s.Fec = &v + return s +} + +// SetProvider sets the Provider field's value. +func (s *SemtechGnssDetail) SetProvider(v string) *SemtechGnssDetail { + s.Provider = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *SemtechGnssDetail) SetStatus(v string) *SemtechGnssDetail { + s.Status = &v + return s +} + +// SetType sets the Type field's value. +func (s *SemtechGnssDetail) SetType(v string) *SemtechGnssDetail { + s.Type = &v + return s +} + type SendDataToMulticastGroupInput struct { _ struct{} `type:"structure"` @@ -20151,8 +21521,8 @@ func (s *SidewalkDeviceMetadata) SetRssi(v int64) *SidewalkDeviceMetadata { return s } -// SidewalkEventNotificationConfigurations object Event configuration object -// for Sidewalk related event topics. +// SidewalkEventNotificationConfigurations object, which is the event configuration +// object for Sidewalk-related event topics. type SidewalkEventNotificationConfigurations struct { _ struct{} `type:"structure"` @@ -21498,6 +22868,53 @@ func (s UpdateEventConfigurationByResourceTypesOutput) GoString() string { return s.String() } +// Object for updating the FPorts information. +type UpdateFPorts struct { + _ struct{} `type:"structure"` + + // Positioning FPorts for the ClockSync, Stream, and GNSS functions. + Positioning *Positioning `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 UpdateFPorts) 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 UpdateFPorts) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateFPorts) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateFPorts"} + if s.Positioning != nil { + if err := s.Positioning.Validate(); err != nil { + invalidParams.AddNested("Positioning", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetPositioning sets the Positioning field's value. +func (s *UpdateFPorts) SetPositioning(v *Positioning) *UpdateFPorts { + s.Positioning = v + return s +} + type UpdateFuotaTaskInput struct { _ struct{} `type:"structure"` @@ -22055,13 +23472,112 @@ func (s UpdatePartnerAccountOutput) GoString() string { return s.String() } +type UpdatePositionInput struct { + _ struct{} `type:"structure"` + + // The position information of the resource. + // + // Position is a required field + Position []*float64 `type:"list" required:"true"` + + // Resource identifier of the resource for which position is updated. + // + // ResourceIdentifier is a required field + ResourceIdentifier *string `location:"uri" locationName:"ResourceIdentifier" type:"string" required:"true"` + + // Resource type of the resource for which position is updated. + // + // ResourceType is a required field + ResourceType *string `location:"querystring" locationName:"resourceType" type:"string" required:"true" enum:"PositionResourceType"` +} + +// 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 UpdatePositionInput) 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 UpdatePositionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdatePositionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdatePositionInput"} + if s.Position == nil { + invalidParams.Add(request.NewErrParamRequired("Position")) + } + if s.ResourceIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceIdentifier")) + } + if s.ResourceIdentifier != nil && len(*s.ResourceIdentifier) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceIdentifier", 1)) + } + if s.ResourceType == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetPosition sets the Position field's value. +func (s *UpdatePositionInput) SetPosition(v []*float64) *UpdatePositionInput { + s.Position = v + return s +} + +// SetResourceIdentifier sets the ResourceIdentifier field's value. +func (s *UpdatePositionInput) SetResourceIdentifier(v string) *UpdatePositionInput { + s.ResourceIdentifier = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *UpdatePositionInput) SetResourceType(v string) *UpdatePositionInput { + s.ResourceType = &v + return s +} + +type UpdatePositionOutput struct { + _ struct{} `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 UpdatePositionOutput) 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 UpdatePositionOutput) GoString() string { + return s.String() +} + type UpdateResourceEventConfigurationInput struct { _ struct{} `type:"structure"` - // Event configuration for the connection status event + // Event configuration for the connection status event. ConnectionStatus *ConnectionStatusEventConfiguration `type:"structure"` - // Event configuration for the device registration state event + // Event configuration for the device registration state event. DeviceRegistrationState *DeviceRegistrationStateEventConfiguration `type:"structure"` // Resource identifier to opt in for event messaging. @@ -22074,13 +23590,13 @@ type UpdateResourceEventConfigurationInput struct { // IdentifierType is a required field IdentifierType *string `location:"querystring" locationName:"identifierType" type:"string" required:"true" enum:"IdentifierType"` - // Event configuration for the join event + // Event configuration for the join event. Join *JoinEventConfiguration `type:"structure"` // Partner type of the resource if the identifier type is PartnerAccountId PartnerType *string `location:"querystring" locationName:"partnerType" type:"string" enum:"EventNotificationPartnerType"` - // Event configuration for the Proximity event + // Event configuration for the proximity event. Proximity *ProximityEventConfiguration `type:"structure"` } @@ -22233,6 +23749,11 @@ func (s *UpdateWirelessDeviceInput) Validate() error { if s.Id != nil && len(*s.Id) < 1 { invalidParams.Add(request.NewErrParamMinLen("Id", 1)) } + if s.LoRaWAN != nil { + if err := s.LoRaWAN.Validate(); err != nil { + invalidParams.AddNested("LoRaWAN", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -23483,6 +25004,78 @@ func PartnerType_Values() []string { } } +const ( + // PositionConfigurationFecRose is a PositionConfigurationFec enum value + PositionConfigurationFecRose = "ROSE" + + // PositionConfigurationFecNone is a PositionConfigurationFec enum value + PositionConfigurationFecNone = "NONE" +) + +// PositionConfigurationFec_Values returns all elements of the PositionConfigurationFec enum +func PositionConfigurationFec_Values() []string { + return []string{ + PositionConfigurationFecRose, + PositionConfigurationFecNone, + } +} + +const ( + // PositionConfigurationStatusEnabled is a PositionConfigurationStatus enum value + PositionConfigurationStatusEnabled = "Enabled" + + // PositionConfigurationStatusDisabled is a PositionConfigurationStatus enum value + PositionConfigurationStatusDisabled = "Disabled" +) + +// PositionConfigurationStatus_Values returns all elements of the PositionConfigurationStatus enum +func PositionConfigurationStatus_Values() []string { + return []string{ + PositionConfigurationStatusEnabled, + PositionConfigurationStatusDisabled, + } +} + +const ( + // PositionResourceTypeWirelessDevice is a PositionResourceType enum value + PositionResourceTypeWirelessDevice = "WirelessDevice" + + // PositionResourceTypeWirelessGateway is a PositionResourceType enum value + PositionResourceTypeWirelessGateway = "WirelessGateway" +) + +// PositionResourceType_Values returns all elements of the PositionResourceType enum +func PositionResourceType_Values() []string { + return []string{ + PositionResourceTypeWirelessDevice, + PositionResourceTypeWirelessGateway, + } +} + +const ( + // PositionSolverProviderSemtech is a PositionSolverProvider enum value + PositionSolverProviderSemtech = "Semtech" +) + +// PositionSolverProvider_Values returns all elements of the PositionSolverProvider enum +func PositionSolverProvider_Values() []string { + return []string{ + PositionSolverProviderSemtech, + } +} + +const ( + // PositionSolverTypeGnss is a PositionSolverType enum value + PositionSolverTypeGnss = "GNSS" +) + +// PositionSolverType_Values returns all elements of the PositionSolverType enum +func PositionSolverType_Values() []string { + return []string{ + PositionSolverTypeGnss, + } +} + // The certificate chain algorithm provided by sidewalk. const ( // SigningAlgEd25519 is a SigningAlg enum value diff --git a/service/iotwireless/iotwirelessiface/interface.go b/service/iotwireless/iotwirelessiface/interface.go index 20d8e1e919..d72408669f 100644 --- a/service/iotwireless/iotwirelessiface/interface.go +++ b/service/iotwireless/iotwirelessiface/interface.go @@ -240,6 +240,14 @@ type IoTWirelessAPI interface { GetPartnerAccountWithContext(aws.Context, *iotwireless.GetPartnerAccountInput, ...request.Option) (*iotwireless.GetPartnerAccountOutput, error) GetPartnerAccountRequest(*iotwireless.GetPartnerAccountInput) (*request.Request, *iotwireless.GetPartnerAccountOutput) + GetPosition(*iotwireless.GetPositionInput) (*iotwireless.GetPositionOutput, error) + GetPositionWithContext(aws.Context, *iotwireless.GetPositionInput, ...request.Option) (*iotwireless.GetPositionOutput, error) + GetPositionRequest(*iotwireless.GetPositionInput) (*request.Request, *iotwireless.GetPositionOutput) + + GetPositionConfiguration(*iotwireless.GetPositionConfigurationInput) (*iotwireless.GetPositionConfigurationOutput, error) + GetPositionConfigurationWithContext(aws.Context, *iotwireless.GetPositionConfigurationInput, ...request.Option) (*iotwireless.GetPositionConfigurationOutput, error) + GetPositionConfigurationRequest(*iotwireless.GetPositionConfigurationInput) (*request.Request, *iotwireless.GetPositionConfigurationOutput) + GetResourceEventConfiguration(*iotwireless.GetResourceEventConfigurationInput) (*iotwireless.GetResourceEventConfigurationOutput, error) GetResourceEventConfigurationWithContext(aws.Context, *iotwireless.GetResourceEventConfigurationInput, ...request.Option) (*iotwireless.GetResourceEventConfigurationOutput, error) GetResourceEventConfigurationRequest(*iotwireless.GetResourceEventConfigurationInput) (*request.Request, *iotwireless.GetResourceEventConfigurationOutput) @@ -338,6 +346,13 @@ type IoTWirelessAPI interface { ListPartnerAccountsWithContext(aws.Context, *iotwireless.ListPartnerAccountsInput, ...request.Option) (*iotwireless.ListPartnerAccountsOutput, error) ListPartnerAccountsRequest(*iotwireless.ListPartnerAccountsInput) (*request.Request, *iotwireless.ListPartnerAccountsOutput) + ListPositionConfigurations(*iotwireless.ListPositionConfigurationsInput) (*iotwireless.ListPositionConfigurationsOutput, error) + ListPositionConfigurationsWithContext(aws.Context, *iotwireless.ListPositionConfigurationsInput, ...request.Option) (*iotwireless.ListPositionConfigurationsOutput, error) + ListPositionConfigurationsRequest(*iotwireless.ListPositionConfigurationsInput) (*request.Request, *iotwireless.ListPositionConfigurationsOutput) + + ListPositionConfigurationsPages(*iotwireless.ListPositionConfigurationsInput, func(*iotwireless.ListPositionConfigurationsOutput, bool) bool) error + ListPositionConfigurationsPagesWithContext(aws.Context, *iotwireless.ListPositionConfigurationsInput, func(*iotwireless.ListPositionConfigurationsOutput, bool) bool, ...request.Option) error + ListQueuedMessages(*iotwireless.ListQueuedMessagesInput) (*iotwireless.ListQueuedMessagesOutput, error) ListQueuedMessagesWithContext(aws.Context, *iotwireless.ListQueuedMessagesInput, ...request.Option) (*iotwireless.ListQueuedMessagesOutput, error) ListQueuedMessagesRequest(*iotwireless.ListQueuedMessagesInput) (*request.Request, *iotwireless.ListQueuedMessagesOutput) @@ -374,6 +389,10 @@ type IoTWirelessAPI interface { ListWirelessGatewaysPages(*iotwireless.ListWirelessGatewaysInput, func(*iotwireless.ListWirelessGatewaysOutput, bool) bool) error ListWirelessGatewaysPagesWithContext(aws.Context, *iotwireless.ListWirelessGatewaysInput, func(*iotwireless.ListWirelessGatewaysOutput, bool) bool, ...request.Option) error + PutPositionConfiguration(*iotwireless.PutPositionConfigurationInput) (*iotwireless.PutPositionConfigurationOutput, error) + PutPositionConfigurationWithContext(aws.Context, *iotwireless.PutPositionConfigurationInput, ...request.Option) (*iotwireless.PutPositionConfigurationOutput, error) + PutPositionConfigurationRequest(*iotwireless.PutPositionConfigurationInput) (*request.Request, *iotwireless.PutPositionConfigurationOutput) + PutResourceLogLevel(*iotwireless.PutResourceLogLevelInput) (*iotwireless.PutResourceLogLevelOutput, error) PutResourceLogLevelWithContext(aws.Context, *iotwireless.PutResourceLogLevelInput, ...request.Option) (*iotwireless.PutResourceLogLevelOutput, error) PutResourceLogLevelRequest(*iotwireless.PutResourceLogLevelInput) (*request.Request, *iotwireless.PutResourceLogLevelOutput) @@ -450,6 +469,10 @@ type IoTWirelessAPI interface { UpdatePartnerAccountWithContext(aws.Context, *iotwireless.UpdatePartnerAccountInput, ...request.Option) (*iotwireless.UpdatePartnerAccountOutput, error) UpdatePartnerAccountRequest(*iotwireless.UpdatePartnerAccountInput) (*request.Request, *iotwireless.UpdatePartnerAccountOutput) + UpdatePosition(*iotwireless.UpdatePositionInput) (*iotwireless.UpdatePositionOutput, error) + UpdatePositionWithContext(aws.Context, *iotwireless.UpdatePositionInput, ...request.Option) (*iotwireless.UpdatePositionOutput, error) + UpdatePositionRequest(*iotwireless.UpdatePositionInput) (*request.Request, *iotwireless.UpdatePositionOutput) + UpdateResourceEventConfiguration(*iotwireless.UpdateResourceEventConfigurationInput) (*iotwireless.UpdateResourceEventConfigurationOutput, error) UpdateResourceEventConfigurationWithContext(aws.Context, *iotwireless.UpdateResourceEventConfigurationInput, ...request.Option) (*iotwireless.UpdateResourceEventConfigurationOutput, error) UpdateResourceEventConfigurationRequest(*iotwireless.UpdateResourceEventConfigurationInput) (*request.Request, *iotwireless.UpdateResourceEventConfigurationOutput) diff --git a/service/sagemaker/api.go b/service/sagemaker/api.go index da83da94f6..1996d359b9 100644 --- a/service/sagemaker/api.go +++ b/service/sagemaker/api.go @@ -61319,6 +61319,86 @@ func (s *InputConfig) SetS3Uri(v string) *InputConfig { return s } +// Defines an instance group for heterogeneous cluster training. When requesting +// a training job using the CreateTrainingJob (https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTrainingJob.html) +// API, you can configure up to 5 different ML training instance groups. +type InstanceGroup struct { + _ struct{} `type:"structure"` + + // Specifies the number of instances of the instance group. + // + // InstanceCount is a required field + InstanceCount *int64 `type:"integer" required:"true"` + + // Specifies the name of the instance group. + // + // InstanceGroupName is a required field + InstanceGroupName *string `min:"1" type:"string" required:"true"` + + // Specifies the instance type of the instance group. + // + // InstanceType is a required field + InstanceType *string `type:"string" required:"true" enum:"TrainingInstanceType"` +} + +// 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 InstanceGroup) 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 InstanceGroup) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *InstanceGroup) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "InstanceGroup"} + if s.InstanceCount == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceCount")) + } + if s.InstanceGroupName == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceGroupName")) + } + if s.InstanceGroupName != nil && len(*s.InstanceGroupName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("InstanceGroupName", 1)) + } + if s.InstanceType == nil { + invalidParams.Add(request.NewErrParamRequired("InstanceType")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetInstanceCount sets the InstanceCount field's value. +func (s *InstanceGroup) SetInstanceCount(v int64) *InstanceGroup { + s.InstanceCount = &v + return s +} + +// SetInstanceGroupName sets the InstanceGroupName field's value. +func (s *InstanceGroup) SetInstanceGroupName(v string) *InstanceGroup { + s.InstanceGroupName = &v + return s +} + +// SetInstanceType sets the InstanceType field's value. +func (s *InstanceGroup) SetInstanceType(v string) *InstanceGroup { + s.InstanceType = &v + return s +} + // Information on the IMDS configuration of the notebook instance type InstanceMetadataServiceConfiguration struct { _ struct{} `type:"structure"` @@ -83304,14 +83384,13 @@ type ResourceConfig struct { // The number of ML compute instances to use. For distributed training, provide // a value greater than 1. - // - // InstanceCount is a required field - InstanceCount *int64 `min:"1" type:"integer" required:"true"` + InstanceCount *int64 `type:"integer"` + + // The configuration of a heterogeneous cluster in JSON format. + InstanceGroups []*InstanceGroup `type:"list"` // The ML compute instance type. - // - // InstanceType is a required field - InstanceType *string `type:"string" required:"true" enum:"TrainingInstanceType"` + InstanceType *string `type:"string" enum:"TrainingInstanceType"` // The Amazon Web Services KMS key that SageMaker uses to encrypt data on the // storage volume attached to the ML compute instance(s) that run the training @@ -83380,21 +83459,22 @@ func (s ResourceConfig) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *ResourceConfig) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ResourceConfig"} - if s.InstanceCount == nil { - invalidParams.Add(request.NewErrParamRequired("InstanceCount")) - } - if s.InstanceCount != nil && *s.InstanceCount < 1 { - invalidParams.Add(request.NewErrParamMinValue("InstanceCount", 1)) - } - if s.InstanceType == nil { - invalidParams.Add(request.NewErrParamRequired("InstanceType")) - } if s.VolumeSizeInGB == nil { invalidParams.Add(request.NewErrParamRequired("VolumeSizeInGB")) } if s.VolumeSizeInGB != nil && *s.VolumeSizeInGB < 1 { invalidParams.Add(request.NewErrParamMinValue("VolumeSizeInGB", 1)) } + if s.InstanceGroups != nil { + for i, v := range s.InstanceGroups { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InstanceGroups", i), err.(request.ErrInvalidParams)) + } + } + } if invalidParams.Len() > 0 { return invalidParams @@ -83408,6 +83488,12 @@ func (s *ResourceConfig) SetInstanceCount(v int64) *ResourceConfig { return s } +// SetInstanceGroups sets the InstanceGroups field's value. +func (s *ResourceConfig) SetInstanceGroups(v []*InstanceGroup) *ResourceConfig { + s.InstanceGroups = v + return s +} + // SetInstanceType sets the InstanceType field's value. func (s *ResourceConfig) SetInstanceType(v string) *ResourceConfig { s.InstanceType = &v @@ -83958,6 +84044,9 @@ type S3DataSource struct { // augmented manifest file. AttributeNames []*string `type:"list"` + // A list of names of instance groups that get data from the S3 data source. + InstanceGroupNames []*string `type:"list"` + // If you want SageMaker to replicate the entire dataset on each ML compute // instance that is launched for model training, specify FullyReplicated. // @@ -84057,6 +84146,12 @@ func (s *S3DataSource) SetAttributeNames(v []*string) *S3DataSource { return s } +// SetInstanceGroupNames sets the InstanceGroupNames field's value. +func (s *S3DataSource) SetInstanceGroupNames(v []*string) *S3DataSource { + s.InstanceGroupNames = v + return s +} + // SetS3DataDistributionType sets the S3DataDistributionType field's value. func (s *S3DataSource) SetS3DataDistributionType(v string) *S3DataSource { s.S3DataDistributionType = &v