From 15a9f7cd12494f8700c892d995ed2689c20aead1 Mon Sep 17 00:00:00 2001 From: AWS SDK for Ruby Date: Thu, 7 Jul 2022 18:05:44 +0000 Subject: [PATCH] Updated API models and rebuilt service gems. --- apis/chime-sdk-meetings/2021-07-15/api-2.json | 21 +- .../chime-sdk-meetings/2021-07-15/docs-2.json | 32 +- apis/dms/2016-01-01/api-2.json | 25 + apis/dms/2016-01-01/docs-2.json | 17 +- apis/iot/2015-05-28/api-2.json | 11 +- apis/iot/2015-05-28/docs-2.json | 20 +- apis/iotwireless/2020-11-22/api-2.json | 341 +++++++++++- apis/iotwireless/2020-11-22/docs-2.json | 241 ++++++++- apis/iotwireless/2020-11-22/paginators-1.json | 5 + apis/sagemaker/2017-07-24/api-2.json | 43 +- apis/sagemaker/2017-07-24/docs-2.json | 27 + gems/aws-sdk-chimesdkmeetings/CHANGELOG.md | 5 + gems/aws-sdk-chimesdkmeetings/VERSION | 2 +- .../lib/aws-sdk-chimesdkmeetings.rb | 2 +- .../lib/aws-sdk-chimesdkmeetings/client.rb | 96 +++- .../aws-sdk-chimesdkmeetings/client_api.rb | 7 + .../lib/aws-sdk-chimesdkmeetings/types.rb | 122 ++++- .../CHANGELOG.md | 5 + gems/aws-sdk-databasemigrationservice/VERSION | 2 +- .../lib/aws-sdk-databasemigrationservice.rb | 2 +- .../client.rb | 51 +- .../client_api.rb | 18 + .../aws-sdk-databasemigrationservice/types.rb | 36 ++ gems/aws-sdk-iot/CHANGELOG.md | 5 + gems/aws-sdk-iot/VERSION | 2 +- gems/aws-sdk-iot/lib/aws-sdk-iot.rb | 2 +- gems/aws-sdk-iot/lib/aws-sdk-iot/client.rb | 60 ++- .../aws-sdk-iot/lib/aws-sdk-iot/client_api.rb | 4 +- gems/aws-sdk-iot/lib/aws-sdk-iot/types.rb | 96 +++- gems/aws-sdk-iotwireless/CHANGELOG.md | 5 + gems/aws-sdk-iotwireless/VERSION | 2 +- .../lib/aws-sdk-iotwireless.rb | 2 +- .../lib/aws-sdk-iotwireless/client.rb | 229 +++++++- .../lib/aws-sdk-iotwireless/client_api.rb | 184 +++++++ .../lib/aws-sdk-iotwireless/types.rb | 501 +++++++++++++++++- gems/aws-sdk-sagemaker/CHANGELOG.md | 5 + gems/aws-sdk-sagemaker/VERSION | 2 +- .../lib/aws-sdk-sagemaker.rb | 2 +- .../lib/aws-sdk-sagemaker/client.rb | 86 ++- .../lib/aws-sdk-sagemaker/client_api.rb | 19 +- .../lib/aws-sdk-sagemaker/types.rb | 164 +++++- 41 files changed, 2327 insertions(+), 174 deletions(-) diff --git a/apis/chime-sdk-meetings/2021-07-15/api-2.json b/apis/chime-sdk-meetings/2021-07-15/api-2.json index b362fbca192..627c621c087 100644 --- a/apis/chime-sdk-meetings/2021-07-15/api-2.json +++ b/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/apis/chime-sdk-meetings/2021-07-15/docs-2.json b/apis/chime-sdk-meetings/2021-07-15/docs-2.json index 48d419775cd..9e37f862389 100644 --- a/apis/chime-sdk-meetings/2021-07-15/docs-2.json +++ b/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/apis/dms/2016-01-01/api-2.json b/apis/dms/2016-01-01/api-2.json index ae079329def..6d03b968ddf 100644 --- a/apis/dms/2016-01-01/api-2.json +++ b/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/apis/dms/2016-01-01/docs-2.json b/apis/dms/2016-01-01/docs-2.json index 3844c5d4a18..428db295af6 100644 --- a/apis/dms/2016-01-01/docs-2.json +++ b/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/apis/iot/2015-05-28/api-2.json b/apis/iot/2015-05-28/api-2.json index ab61f19b311..799e02cd492 100644 --- a/apis/iot/2015-05-28/api-2.json +++ b/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/apis/iot/2015-05-28/docs-2.json b/apis/iot/2015-05-28/docs-2.json index cb67f89cf25..11f9a8ec7dc 100644 --- a/apis/iot/2015-05-28/docs-2.json +++ b/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/apis/iotwireless/2020-11-22/api-2.json b/apis/iotwireless/2020-11-22/api-2.json index db6c93169e6..5556b69563c 100644 --- a/apis/iotwireless/2020-11-22/api-2.json +++ b/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/apis/iotwireless/2020-11-22/docs-2.json b/apis/iotwireless/2020-11-22/docs-2.json index ff9a03da7a4..dec8363dd90 100644 --- a/apis/iotwireless/2020-11-22/docs-2.json +++ b/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/apis/iotwireless/2020-11-22/paginators-1.json b/apis/iotwireless/2020-11-22/paginators-1.json index 6d71883f05f..47b8e668eaa 100644 --- a/apis/iotwireless/2020-11-22/paginators-1.json +++ b/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/apis/sagemaker/2017-07-24/api-2.json b/apis/sagemaker/2017-07-24/api-2.json index 9058ad6fde4..1700eb4f8ab 100644 --- a/apis/sagemaker/2017-07-24/api-2.json +++ b/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/apis/sagemaker/2017-07-24/docs-2.json b/apis/sagemaker/2017-07-24/docs-2.json index 451c224c962..3813961311f 100644 --- a/apis/sagemaker/2017-07-24/docs-2.json +++ b/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/gems/aws-sdk-chimesdkmeetings/CHANGELOG.md b/gems/aws-sdk-chimesdkmeetings/CHANGELOG.md index 1cb6bcc14c8..dcd2e3489bb 100644 --- a/gems/aws-sdk-chimesdkmeetings/CHANGELOG.md +++ b/gems/aws-sdk-chimesdkmeetings/CHANGELOG.md @@ -1,6 +1,11 @@ Unreleased Changes ------------------ +1.13.0 (2022-07-07) +------------------ + +* Feature - Adds support for AppKeys and TenantIds in Amazon Chime SDK WebRTC sessions + 1.12.0 (2022-06-09) ------------------ diff --git a/gems/aws-sdk-chimesdkmeetings/VERSION b/gems/aws-sdk-chimesdkmeetings/VERSION index 0eed1a29efd..feaae22bac7 100644 --- a/gems/aws-sdk-chimesdkmeetings/VERSION +++ b/gems/aws-sdk-chimesdkmeetings/VERSION @@ -1 +1 @@ -1.12.0 +1.13.0 diff --git a/gems/aws-sdk-chimesdkmeetings/lib/aws-sdk-chimesdkmeetings.rb b/gems/aws-sdk-chimesdkmeetings/lib/aws-sdk-chimesdkmeetings.rb index 005a992aa88..9fe5ab835dd 100644 --- a/gems/aws-sdk-chimesdkmeetings/lib/aws-sdk-chimesdkmeetings.rb +++ b/gems/aws-sdk-chimesdkmeetings/lib/aws-sdk-chimesdkmeetings.rb @@ -48,6 +48,6 @@ # @!group service module Aws::ChimeSDKMeetings - GEM_VERSION = '1.12.0' + GEM_VERSION = '1.13.0' end diff --git a/gems/aws-sdk-chimesdkmeetings/lib/aws-sdk-chimesdkmeetings/client.rb b/gems/aws-sdk-chimesdkmeetings/lib/aws-sdk-chimesdkmeetings/client.rb index 58436b835c1..88015185a89 100644 --- a/gems/aws-sdk-chimesdkmeetings/lib/aws-sdk-chimesdkmeetings/client.rb +++ b/gems/aws-sdk-chimesdkmeetings/lib/aws-sdk-chimesdkmeetings/client.rb @@ -413,6 +413,32 @@ def batch_create_attendee(params = {}, options = {}) # 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. + # # @option params [required, String] :meeting_id # The ID of the meeting associated with the update request. # @@ -471,6 +497,32 @@ def batch_update_attendee_capabilities_except(params = {}, options = {}) # 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. + # # @return [Types::CreateAttendeeResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::CreateAttendeeResponse#attendee #attendee} => Types::Attendee @@ -553,6 +605,10 @@ def create_attendee(params = {}, options = {}) # When specified, replicates the media from the primary meeting to the # new meeting. # + # @option params [Array] :tenant_ids + # A consistent and opaque identifier, created and maintained by the + # builder to represent a segment of their users. + # # @return [Types::CreateMeetingResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::CreateMeetingResponse#meeting #meeting} => Types::Meeting @@ -575,6 +631,7 @@ def create_attendee(params = {}, options = {}) # }, # }, # primary_meeting_id: "PrimaryMeetingId", + # tenant_ids: ["TenantId"], # }) # # @example Response structure @@ -593,6 +650,8 @@ def create_attendee(params = {}, options = {}) # resp.meeting.media_placement.event_ingestion_url #=> String # resp.meeting.meeting_features.audio.echo_reduction #=> String, one of "AVAILABLE", "UNAVAILABLE" # resp.meeting.primary_meeting_id #=> String + # resp.meeting.tenant_ids #=> Array + # resp.meeting.tenant_ids[0] #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/chime-sdk-meetings-2021-07-15/CreateMeeting AWS API Documentation # @@ -654,6 +713,10 @@ def create_meeting(params = {}, options = {}) # When specified, replicates the media from the primary meeting to the # new meeting. # + # @option params [Array] :tenant_ids + # A consistent and opaque identifier, created and maintained by the + # builder to represent a segment of their users. + # # @return [Types::CreateMeetingWithAttendeesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::CreateMeetingWithAttendeesResponse#meeting #meeting} => Types::Meeting @@ -688,6 +751,7 @@ def create_meeting(params = {}, options = {}) # }, # ], # primary_meeting_id: "PrimaryMeetingId", + # tenant_ids: ["TenantId"], # }) # # @example Response structure @@ -706,6 +770,8 @@ def create_meeting(params = {}, options = {}) # resp.meeting.media_placement.event_ingestion_url #=> String # resp.meeting.meeting_features.audio.echo_reduction #=> String, one of "AVAILABLE", "UNAVAILABLE" # resp.meeting.primary_meeting_id #=> String + # resp.meeting.tenant_ids #=> Array + # resp.meeting.tenant_ids[0] #=> String # resp.attendees #=> Array # resp.attendees[0].external_user_id #=> String # resp.attendees[0].attendee_id #=> String @@ -871,6 +937,8 @@ def get_attendee(params = {}, options = {}) # resp.meeting.media_placement.event_ingestion_url #=> String # resp.meeting.meeting_features.audio.echo_reduction #=> String, one of "AVAILABLE", "UNAVAILABLE" # resp.meeting.primary_meeting_id #=> String + # resp.meeting.tenant_ids #=> Array + # resp.meeting.tenant_ids[0] #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/chime-sdk-meetings-2021-07-15/GetMeeting AWS API Documentation # @@ -1010,6 +1078,32 @@ def stop_meeting_transcription(params = {}, options = {}) # 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. + # # @option params [required, String] :meeting_id # The ID of the meeting associated with the update request. # @@ -1066,7 +1160,7 @@ def build_request(operation_name, params = {}) params: params, config: config) context[:gem_name] = 'aws-sdk-chimesdkmeetings' - context[:gem_version] = '1.12.0' + context[:gem_version] = '1.13.0' Seahorse::Client::Request.new(handlers, context) end diff --git a/gems/aws-sdk-chimesdkmeetings/lib/aws-sdk-chimesdkmeetings/client_api.rb b/gems/aws-sdk-chimesdkmeetings/lib/aws-sdk-chimesdkmeetings/client_api.rb index 5c93e76e461..46159e1e1f3 100644 --- a/gems/aws-sdk-chimesdkmeetings/lib/aws-sdk-chimesdkmeetings/client_api.rb +++ b/gems/aws-sdk-chimesdkmeetings/lib/aws-sdk-chimesdkmeetings/client_api.rb @@ -70,6 +70,8 @@ module ClientApi StartMeetingTranscriptionRequest = Shapes::StructureShape.new(name: 'StartMeetingTranscriptionRequest') StopMeetingTranscriptionRequest = Shapes::StructureShape.new(name: 'StopMeetingTranscriptionRequest') String = Shapes::StringShape.new(name: 'String') + TenantId = Shapes::StringShape.new(name: 'TenantId') + TenantIdList = Shapes::ListShape.new(name: 'TenantIdList') ThrottlingException = Shapes::StructureShape.new(name: 'ThrottlingException') TranscribeContentIdentificationType = Shapes::StringShape.new(name: 'TranscribeContentIdentificationType') TranscribeContentRedactionType = Shapes::StringShape.new(name: 'TranscribeContentRedactionType') @@ -163,6 +165,7 @@ module ClientApi CreateMeetingRequest.add_member(:notifications_configuration, Shapes::ShapeRef.new(shape: NotificationsConfiguration, location_name: "NotificationsConfiguration")) CreateMeetingRequest.add_member(:meeting_features, Shapes::ShapeRef.new(shape: MeetingFeaturesConfiguration, location_name: "MeetingFeatures")) CreateMeetingRequest.add_member(:primary_meeting_id, Shapes::ShapeRef.new(shape: PrimaryMeetingId, location_name: "PrimaryMeetingId")) + CreateMeetingRequest.add_member(:tenant_ids, Shapes::ShapeRef.new(shape: TenantIdList, location_name: "TenantIds")) CreateMeetingRequest.struct_class = Types::CreateMeetingRequest CreateMeetingResponse.add_member(:meeting, Shapes::ShapeRef.new(shape: Meeting, location_name: "Meeting")) @@ -176,6 +179,7 @@ module ClientApi CreateMeetingWithAttendeesRequest.add_member(:notifications_configuration, Shapes::ShapeRef.new(shape: NotificationsConfiguration, location_name: "NotificationsConfiguration")) CreateMeetingWithAttendeesRequest.add_member(:attendees, Shapes::ShapeRef.new(shape: CreateMeetingWithAttendeesRequestItemList, required: true, location_name: "Attendees")) CreateMeetingWithAttendeesRequest.add_member(:primary_meeting_id, Shapes::ShapeRef.new(shape: PrimaryMeetingId, location_name: "PrimaryMeetingId")) + CreateMeetingWithAttendeesRequest.add_member(:tenant_ids, Shapes::ShapeRef.new(shape: TenantIdList, location_name: "TenantIds")) CreateMeetingWithAttendeesRequest.struct_class = Types::CreateMeetingWithAttendeesRequest CreateMeetingWithAttendeesRequestItemList.member = Shapes::ShapeRef.new(shape: CreateAttendeeRequestItem) @@ -265,6 +269,7 @@ module ClientApi Meeting.add_member(:media_placement, Shapes::ShapeRef.new(shape: MediaPlacement, location_name: "MediaPlacement")) Meeting.add_member(:meeting_features, Shapes::ShapeRef.new(shape: MeetingFeaturesConfiguration, location_name: "MeetingFeatures")) Meeting.add_member(:primary_meeting_id, Shapes::ShapeRef.new(shape: PrimaryMeetingId, location_name: "PrimaryMeetingId")) + Meeting.add_member(:tenant_ids, Shapes::ShapeRef.new(shape: TenantIdList, location_name: "TenantIds")) Meeting.struct_class = Types::Meeting MeetingFeaturesConfiguration.add_member(:audio, Shapes::ShapeRef.new(shape: AudioFeatures, location_name: "Audio")) @@ -298,6 +303,8 @@ module ClientApi StopMeetingTranscriptionRequest.add_member(:meeting_id, Shapes::ShapeRef.new(shape: GuidString, required: true, location: "uri", location_name: "MeetingId")) StopMeetingTranscriptionRequest.struct_class = Types::StopMeetingTranscriptionRequest + TenantIdList.member = Shapes::ShapeRef.new(shape: TenantId) + ThrottlingException.add_member(:code, Shapes::ShapeRef.new(shape: String, location_name: "Code")) ThrottlingException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "Message")) ThrottlingException.add_member(:request_id, Shapes::ShapeRef.new(shape: String, location_name: "RequestId")) diff --git a/gems/aws-sdk-chimesdkmeetings/lib/aws-sdk-chimesdkmeetings/types.rb b/gems/aws-sdk-chimesdkmeetings/lib/aws-sdk-chimesdkmeetings/types.rb index 6492a826929..582bd9c7750 100644 --- a/gems/aws-sdk-chimesdkmeetings/lib/aws-sdk-chimesdkmeetings/types.rb +++ b/gems/aws-sdk-chimesdkmeetings/lib/aws-sdk-chimesdkmeetings/types.rb @@ -34,7 +34,33 @@ module Types # @return [String] # # @!attribute [rw] capabilities - # 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. # @return [Types::AttendeeCapabilities] # # @see http://docs.aws.amazon.com/goto/WebAPI/chime-sdk-meetings-2021-07-15/Attendee AWS API Documentation @@ -48,8 +74,33 @@ class Attendee < Struct.new( include Aws::Structure end - # 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. # # @note When making an API call, you may pass AttendeeCapabilities # data as a hash: @@ -318,6 +369,32 @@ class CreateAttendeeError < Struct.new( # 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. # @return [Types::AttendeeCapabilities] # # @see http://docs.aws.amazon.com/goto/WebAPI/chime-sdk-meetings-2021-07-15/CreateAttendeeRequest AWS API Documentation @@ -394,6 +471,7 @@ class CreateAttendeeResponse < Struct.new( # }, # }, # primary_meeting_id: "PrimaryMeetingId", + # tenant_ids: ["TenantId"], # } # # @!attribute [rw] client_request_token @@ -440,6 +518,11 @@ class CreateAttendeeResponse < Struct.new( # new meeting. # @return [String] # + # @!attribute [rw] tenant_ids + # A consistent and opaque identifier, created and maintained by the + # builder to represent a segment of their users. + # @return [Array] + # # @see http://docs.aws.amazon.com/goto/WebAPI/chime-sdk-meetings-2021-07-15/CreateMeetingRequest AWS API Documentation # class CreateMeetingRequest < Struct.new( @@ -449,7 +532,8 @@ class CreateMeetingRequest < Struct.new( :external_meeting_id, :notifications_configuration, :meeting_features, - :primary_meeting_id) + :primary_meeting_id, + :tenant_ids) SENSITIVE = [:client_request_token, :meeting_host_id, :external_meeting_id] include Aws::Structure end @@ -496,6 +580,7 @@ class CreateMeetingResponse < Struct.new( # }, # ], # primary_meeting_id: "PrimaryMeetingId", + # tenant_ids: ["TenantId"], # } # # @!attribute [rw] client_request_token @@ -546,6 +631,11 @@ class CreateMeetingResponse < Struct.new( # new meeting. # @return [String] # + # @!attribute [rw] tenant_ids + # A consistent and opaque identifier, created and maintained by the + # builder to represent a segment of their users. + # @return [Array] + # # @see http://docs.aws.amazon.com/goto/WebAPI/chime-sdk-meetings-2021-07-15/CreateMeetingWithAttendeesRequest AWS API Documentation # class CreateMeetingWithAttendeesRequest < Struct.new( @@ -556,7 +646,8 @@ class CreateMeetingWithAttendeesRequest < Struct.new( :meeting_features, :notifications_configuration, :attendees, - :primary_meeting_id) + :primary_meeting_id, + :tenant_ids) SENSITIVE = [:client_request_token, :meeting_host_id, :external_meeting_id] include Aws::Structure end @@ -1056,6 +1147,10 @@ class MediaPlacement < Struct.new( # this meeting. # @return [String] # + # @!attribute [rw] tenant_ids + # Array of strings. + # @return [Array] + # # @see http://docs.aws.amazon.com/goto/WebAPI/chime-sdk-meetings-2021-07-15/Meeting AWS API Documentation # class Meeting < Struct.new( @@ -1065,7 +1160,8 @@ class Meeting < Struct.new( :media_region, :media_placement, :meeting_features, - :primary_meeting_id) + :primary_meeting_id, + :tenant_ids) SENSITIVE = [:meeting_host_id, :external_meeting_id] include Aws::Structure end @@ -1153,7 +1249,7 @@ class NotificationsConfiguration < Struct.new( include Aws::Structure end - # The service is currently unavailable. + # The service encountered an unexpected error. # # @!attribute [rw] code # @return [String] @@ -1273,7 +1369,7 @@ class StopMeetingTranscriptionRequest < Struct.new( include Aws::Structure end - # The number of requests exceeds the limit. + # The number of customer requests exceeds the request rate limit. # # @!attribute [rw] code # @return [String] @@ -1430,15 +1526,7 @@ class UpdateAttendeeCapabilitiesRequest < Struct.new( end # @!attribute [rw] attendee - # 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. # @return [Types::Attendee] # # @see http://docs.aws.amazon.com/goto/WebAPI/chime-sdk-meetings-2021-07-15/UpdateAttendeeCapabilitiesResponse AWS API Documentation diff --git a/gems/aws-sdk-databasemigrationservice/CHANGELOG.md b/gems/aws-sdk-databasemigrationservice/CHANGELOG.md index ed45c3ed056..34b11f65199 100644 --- a/gems/aws-sdk-databasemigrationservice/CHANGELOG.md +++ b/gems/aws-sdk-databasemigrationservice/CHANGELOG.md @@ -1,6 +1,11 @@ Unreleased Changes ------------------ +1.70.0 (2022-07-07) +------------------ + +* Feature - New api to migrate event subscriptions to event bridge rules + 1.69.0 (2022-07-01) ------------------ diff --git a/gems/aws-sdk-databasemigrationservice/VERSION b/gems/aws-sdk-databasemigrationservice/VERSION index 49349856550..832e9afb6c1 100644 --- a/gems/aws-sdk-databasemigrationservice/VERSION +++ b/gems/aws-sdk-databasemigrationservice/VERSION @@ -1 +1 @@ -1.69.0 +1.70.0 diff --git a/gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice.rb b/gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice.rb index df8701e5b08..c35539af521 100644 --- a/gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice.rb +++ b/gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice.rb @@ -49,6 +49,6 @@ # @!group service module Aws::DatabaseMigrationService - GEM_VERSION = '1.69.0' + GEM_VERSION = '1.70.0' end diff --git a/gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb b/gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb index 2467229b0b9..6a7f14ce871 100644 --- a/gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb +++ b/gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client.rb @@ -7839,6 +7839,55 @@ def test_connection(params = {}, options = {}) req.send_request(options) end + # 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][1] in the *Amazon Web Services + # Database Migration Service User Guide*. + # + # + # + # [1]: https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Events.html#CHAP_Events-migrate-to-eventbridge + # + # @option params [Boolean] :force_move + # 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. + # + # @return [Types::UpdateSubscriptionsToEventBridgeResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: + # + # * {Types::UpdateSubscriptionsToEventBridgeResponse#result #result} => String + # + # @example Request syntax with placeholder values + # + # resp = client.update_subscriptions_to_event_bridge({ + # force_move: false, + # }) + # + # @example Response structure + # + # resp.result #=> String + # + # @see http://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/UpdateSubscriptionsToEventBridge AWS API Documentation + # + # @overload update_subscriptions_to_event_bridge(params = {}) + # @param [Hash] params ({}) + def update_subscriptions_to_event_bridge(params = {}, options = {}) + req = build_request(:update_subscriptions_to_event_bridge, params) + req.send_request(options) + end + # @!endgroup # @param params ({}) @@ -7852,7 +7901,7 @@ def build_request(operation_name, params = {}) params: params, config: config) context[:gem_name] = 'aws-sdk-databasemigrationservice' - context[:gem_version] = '1.69.0' + context[:gem_version] = '1.70.0' Seahorse::Client::Request.new(handlers, context) end diff --git a/gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client_api.rb b/gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client_api.rb index 40f21cff929..1d149493377 100644 --- a/gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client_api.rb +++ b/gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/client_api.rb @@ -310,6 +310,8 @@ module ClientApi TargetDbType = Shapes::StringShape.new(name: 'TargetDbType') TestConnectionMessage = Shapes::StructureShape.new(name: 'TestConnectionMessage') TestConnectionResponse = Shapes::StructureShape.new(name: 'TestConnectionResponse') + UpdateSubscriptionsToEventBridgeMessage = Shapes::StructureShape.new(name: 'UpdateSubscriptionsToEventBridgeMessage') + UpdateSubscriptionsToEventBridgeResponse = Shapes::StructureShape.new(name: 'UpdateSubscriptionsToEventBridgeResponse') UpgradeDependencyFailureFault = Shapes::StructureShape.new(name: 'UpgradeDependencyFailureFault') VersionStatus = Shapes::StringShape.new(name: 'VersionStatus') VpcSecurityGroupIdList = Shapes::ListShape.new(name: 'VpcSecurityGroupIdList') @@ -1777,6 +1779,12 @@ module ClientApi TestConnectionResponse.add_member(:connection, Shapes::ShapeRef.new(shape: Connection, location_name: "Connection")) TestConnectionResponse.struct_class = Types::TestConnectionResponse + UpdateSubscriptionsToEventBridgeMessage.add_member(:force_move, Shapes::ShapeRef.new(shape: BooleanOptional, location_name: "ForceMove")) + UpdateSubscriptionsToEventBridgeMessage.struct_class = Types::UpdateSubscriptionsToEventBridgeMessage + + UpdateSubscriptionsToEventBridgeResponse.add_member(:result, Shapes::ShapeRef.new(shape: String, location_name: "Result")) + UpdateSubscriptionsToEventBridgeResponse.struct_class = Types::UpdateSubscriptionsToEventBridgeResponse + UpgradeDependencyFailureFault.add_member(:message, Shapes::ShapeRef.new(shape: ExceptionMessage, location_name: "message")) UpgradeDependencyFailureFault.struct_class = Types::UpgradeDependencyFailureFault @@ -2634,6 +2642,16 @@ module ClientApi o.errors << Shapes::ShapeRef.new(shape: ResourceQuotaExceededFault) o.errors << Shapes::ShapeRef.new(shape: AccessDeniedFault) end) + + api.add_operation(:update_subscriptions_to_event_bridge, Seahorse::Model::Operation.new.tap do |o| + o.name = "UpdateSubscriptionsToEventBridge" + o.http_method = "POST" + o.http_request_uri = "/" + o.input = Shapes::ShapeRef.new(shape: UpdateSubscriptionsToEventBridgeMessage) + o.output = Shapes::ShapeRef.new(shape: UpdateSubscriptionsToEventBridgeResponse) + o.errors << Shapes::ShapeRef.new(shape: AccessDeniedFault) + o.errors << Shapes::ShapeRef.new(shape: InvalidResourceStateFault) + end) end end diff --git a/gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/types.rb b/gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/types.rb index 6f660d55537..903c360be17 100644 --- a/gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/types.rb +++ b/gems/aws-sdk-databasemigrationservice/lib/aws-sdk-databasemigrationservice/types.rb @@ -11142,6 +11142,42 @@ class TestConnectionResponse < Struct.new( include Aws::Structure end + # @note When making an API call, you may pass UpdateSubscriptionsToEventBridgeMessage + # data as a hash: + # + # { + # force_move: false, + # } + # + # @!attribute [rw] force_move + # 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. + # @return [Boolean] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/UpdateSubscriptionsToEventBridgeMessage AWS API Documentation + # + class UpdateSubscriptionsToEventBridgeMessage < Struct.new( + :force_move) + SENSITIVE = [] + include Aws::Structure + end + + # @!attribute [rw] result + # A string that indicates how many event subscriptions were migrated + # and how many remain to be migrated. + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/dms-2016-01-01/UpdateSubscriptionsToEventBridgeResponse AWS API Documentation + # + class UpdateSubscriptionsToEventBridgeResponse < Struct.new( + :result) + SENSITIVE = [] + include Aws::Structure + end + # An upgrade dependency is preventing the database migration. # # @!attribute [rw] message diff --git a/gems/aws-sdk-iot/CHANGELOG.md b/gems/aws-sdk-iot/CHANGELOG.md index 4e33c9dcc18..78f77ff5914 100644 --- a/gems/aws-sdk-iot/CHANGELOG.md +++ b/gems/aws-sdk-iot/CHANGELOG.md @@ -1,6 +1,11 @@ Unreleased Changes ------------------ +1.92.0 (2022-07-07) +------------------ + +* Feature - 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. + 1.91.0 (2022-06-27) ------------------ diff --git a/gems/aws-sdk-iot/VERSION b/gems/aws-sdk-iot/VERSION index 6979a6c0661..7f229af9647 100644 --- a/gems/aws-sdk-iot/VERSION +++ b/gems/aws-sdk-iot/VERSION @@ -1 +1 @@ -1.91.0 +1.92.0 diff --git a/gems/aws-sdk-iot/lib/aws-sdk-iot.rb b/gems/aws-sdk-iot/lib/aws-sdk-iot.rb index 052eaabaaac..60c738c431b 100644 --- a/gems/aws-sdk-iot/lib/aws-sdk-iot.rb +++ b/gems/aws-sdk-iot/lib/aws-sdk-iot.rb @@ -48,6 +48,6 @@ # @!group service module Aws::IoT - GEM_VERSION = '1.91.0' + GEM_VERSION = '1.92.0' end diff --git a/gems/aws-sdk-iot/lib/aws-sdk-iot/client.rb b/gems/aws-sdk-iot/lib/aws-sdk-iot/client.rb index a70a9e27d77..3f327e3bd08 100644 --- a/gems/aws-sdk-iot/lib/aws-sdk-iot/client.rb +++ b/gems/aws-sdk-iot/lib/aws-sdk-iot/client.rb @@ -4997,6 +4997,7 @@ def describe_billing_group(params = {}, options = {}) # resp.certificate_description.generation_id #=> String # resp.certificate_description.validity.not_before #=> Time # resp.certificate_description.validity.not_after #=> Time + # resp.certificate_description.certificate_mode #=> String, one of "DEFAULT", "SNI_ONLY" # resp.registration_config.template_body #=> String # resp.registration_config.role_arn #=> String # @@ -10636,14 +10637,10 @@ def put_verification_state_on_violation(params = {}, options = {}) req.send_request(options) end - # 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][1] action. # @@ -10654,8 +10651,11 @@ def put_verification_state_on_violation(params = {}, options = {}) # @option params [required, String] :ca_certificate # The CA certificate. # - # @option params [required, String] :verification_certificate - # The private key verification certificate. + # @option params [String] :verification_certificate + # 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. # # @option params [Boolean] :set_as_active # A boolean value that specifies if the CA certificate is set to active. @@ -10683,6 +10683,21 @@ def put_verification_state_on_violation(params = {}, options = {}) # # # + # @option params [String] :certificate_mode + # 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][1]. + # + # + # + # [1]: https://docs.aws.amazon.com/iot/latest/apireference/API_CertificateDescription.html#iot-Type-CertificateDescription-certificateMode + # # @return [Types::RegisterCACertificateResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::RegisterCACertificateResponse#certificate_arn #certificate_arn} => String @@ -10692,7 +10707,7 @@ def put_verification_state_on_violation(params = {}, options = {}) # # resp = client.register_ca_certificate({ # ca_certificate: "CertificatePem", # required - # verification_certificate: "CertificatePem", # required + # verification_certificate: "CertificatePem", # set_as_active: false, # allow_auto_registration: false, # registration_config: { @@ -10705,6 +10720,7 @@ def put_verification_state_on_violation(params = {}, options = {}) # value: "TagValue", # }, # ], + # certificate_mode: "DEFAULT", # accepts DEFAULT, SNI_ONLY # }) # # @example Response structure @@ -10719,16 +10735,17 @@ def register_ca_certificate(params = {}, options = {}) req.send_request(options) end - # 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][1] 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][1] action. + # Requires permission to access the [RegisterCertificate][2] action. # # # - # [1]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions + # [1]: https://docs.aws.amazon.com/iot/latest/apireference/API_CertificateDescription.html#iot-Type-CertificateDescription-certificateMode + # [2]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions # # @option params [required, String] :certificate_pem # The certificate data, in PEM format. @@ -11397,7 +11414,12 @@ def replace_topic_rule(params = {}, options = {}) # The search index name. # # @option params [required, String] :query_string - # The search query string. + # The search query string. For more information about the search query + # syntax, see [Query syntax][1]. + # + # + # + # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/query-syntax.html # # @option params [String] :next_token # The token used to get the next set of results, or `null` if there are @@ -13694,7 +13716,7 @@ def build_request(operation_name, params = {}) params: params, config: config) context[:gem_name] = 'aws-sdk-iot' - context[:gem_version] = '1.91.0' + context[:gem_version] = '1.92.0' Seahorse::Client::Request.new(handlers, context) end diff --git a/gems/aws-sdk-iot/lib/aws-sdk-iot/client_api.rb b/gems/aws-sdk-iot/lib/aws-sdk-iot/client_api.rb index a0a0f2bd4ba..e4069390c29 100644 --- a/gems/aws-sdk-iot/lib/aws-sdk-iot/client_api.rb +++ b/gems/aws-sdk-iot/lib/aws-sdk-iot/client_api.rb @@ -1641,6 +1641,7 @@ module ClientApi CACertificateDescription.add_member(:customer_version, Shapes::ShapeRef.new(shape: CustomerVersion, location_name: "customerVersion")) CACertificateDescription.add_member(:generation_id, Shapes::ShapeRef.new(shape: GenerationId, location_name: "generationId")) CACertificateDescription.add_member(:validity, Shapes::ShapeRef.new(shape: CertificateValidity, location_name: "validity")) + CACertificateDescription.add_member(:certificate_mode, Shapes::ShapeRef.new(shape: CertificateMode, location_name: "certificateMode")) CACertificateDescription.struct_class = Types::CACertificateDescription CACertificates.member = Shapes::ShapeRef.new(shape: CACertificate) @@ -3926,11 +3927,12 @@ module ClientApi ReasonForNonComplianceCodes.member = Shapes::ShapeRef.new(shape: ReasonForNonComplianceCode) RegisterCACertificateRequest.add_member(:ca_certificate, Shapes::ShapeRef.new(shape: CertificatePem, required: true, location_name: "caCertificate")) - RegisterCACertificateRequest.add_member(:verification_certificate, Shapes::ShapeRef.new(shape: CertificatePem, required: true, location_name: "verificationCertificate")) + RegisterCACertificateRequest.add_member(:verification_certificate, Shapes::ShapeRef.new(shape: CertificatePem, location_name: "verificationCertificate")) RegisterCACertificateRequest.add_member(:set_as_active, Shapes::ShapeRef.new(shape: SetAsActive, location: "querystring", location_name: "setAsActive")) RegisterCACertificateRequest.add_member(:allow_auto_registration, Shapes::ShapeRef.new(shape: AllowAutoRegistration, location: "querystring", location_name: "allowAutoRegistration")) RegisterCACertificateRequest.add_member(:registration_config, Shapes::ShapeRef.new(shape: RegistrationConfig, location_name: "registrationConfig")) RegisterCACertificateRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tags")) + RegisterCACertificateRequest.add_member(:certificate_mode, Shapes::ShapeRef.new(shape: CertificateMode, location_name: "certificateMode")) RegisterCACertificateRequest.struct_class = Types::RegisterCACertificateRequest RegisterCACertificateResponse.add_member(:certificate_arn, Shapes::ShapeRef.new(shape: CertificateArn, location_name: "certificateArn")) diff --git a/gems/aws-sdk-iot/lib/aws-sdk-iot/types.rb b/gems/aws-sdk-iot/lib/aws-sdk-iot/types.rb index e25429035f5..b07e0ebc48b 100644 --- a/gems/aws-sdk-iot/lib/aws-sdk-iot/types.rb +++ b/gems/aws-sdk-iot/lib/aws-sdk-iot/types.rb @@ -2067,6 +2067,18 @@ class CACertificate < Struct.new( # When the CA certificate is valid. # @return [Types::CertificateValidity] # + # @!attribute [rw] certificate_mode + # 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][1]. + # + # + # + # [1]: https://docs.aws.amazon.com/iot/latest/apireference/API_CertificateDescription.html#iot-Type-CertificateDescription-certificateMode + # @return [String] + # class CACertificateDescription < Struct.new( :certificate_arn, :certificate_id, @@ -2078,7 +2090,8 @@ class CACertificateDescription < Struct.new( :last_modified_date, :customer_version, :generation_id, - :validity) + :validity, + :certificate_mode) SENSITIVE = [] include Aws::Structure end @@ -2305,6 +2318,19 @@ class CancelJobResponse < Struct.new( # # @!attribute [rw] certificate_mode # 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. # @return [String] # # @!attribute [rw] creation_date @@ -2394,6 +2420,26 @@ class CertificateConflictException < Struct.new( # # @!attribute [rw] certificate_mode # 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][1]. + # + # + # + # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/transport-security.html # @return [String] # class CertificateDescription < Struct.new( @@ -10238,6 +10284,9 @@ class IotSiteWiseAction < Struct.new( # @return [Hash] # # @!attribute [rw] is_concurrent + # 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. # @return [Boolean] # class Job < Struct.new( @@ -10599,6 +10648,9 @@ class JobProcessDetails < Struct.new( # @return [Time] # # @!attribute [rw] is_concurrent + # 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. # @return [Boolean] # class JobSummary < Struct.new( @@ -14633,6 +14685,14 @@ class PolicyVersionIdentifier < Struct.new( # 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][1] in the *Amazon Web + # Services IoT Core developer guide*. + # + # + # + # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/cross-service-confused-deputy-prevention.html # @return [String] # # @!attribute [rw] expires_in_sec @@ -14912,7 +14972,7 @@ class RateIncreaseCriteria < Struct.new( # # { # ca_certificate: "CertificatePem", # required - # verification_certificate: "CertificatePem", # required + # verification_certificate: "CertificatePem", # set_as_active: false, # allow_auto_registration: false, # registration_config: { @@ -14925,6 +14985,7 @@ class RateIncreaseCriteria < Struct.new( # value: "TagValue", # }, # ], + # certificate_mode: "DEFAULT", # accepts DEFAULT, SNI_ONLY # } # # @!attribute [rw] ca_certificate @@ -14932,7 +14993,10 @@ class RateIncreaseCriteria < Struct.new( # @return [String] # # @!attribute [rw] verification_certificate - # The private key verification certificate. + # 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. # @return [String] # # @!attribute [rw] set_as_active @@ -14966,13 +15030,30 @@ class RateIncreaseCriteria < Struct.new( # # @return [Array] # + # @!attribute [rw] certificate_mode + # 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][1]. + # + # + # + # [1]: https://docs.aws.amazon.com/iot/latest/apireference/API_CertificateDescription.html#iot-Type-CertificateDescription-certificateMode + # @return [String] + # class RegisterCACertificateRequest < Struct.new( :ca_certificate, :verification_certificate, :set_as_active, :allow_auto_registration, :registration_config, - :tags) + :tags, + :certificate_mode) SENSITIVE = [] include Aws::Structure end @@ -16099,7 +16180,12 @@ class ScheduledAuditMetadata < Struct.new( # @return [String] # # @!attribute [rw] query_string - # The search query string. + # The search query string. For more information about the search query + # syntax, see [Query syntax][1]. + # + # + # + # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/query-syntax.html # @return [String] # # @!attribute [rw] next_token diff --git a/gems/aws-sdk-iotwireless/CHANGELOG.md b/gems/aws-sdk-iotwireless/CHANGELOG.md index ce185e3e586..e8703baf649 100644 --- a/gems/aws-sdk-iotwireless/CHANGELOG.md +++ b/gems/aws-sdk-iotwireless/CHANGELOG.md @@ -1,6 +1,11 @@ Unreleased Changes ------------------ +1.24.0 (2022-07-07) +------------------ + +* Feature - Adds 5 APIs: PutPositionConfiguration, GetPositionConfiguration, ListPositionConfigurations, UpdatePosition, GetPosition for the new Positioning Service feature which enables customers to configure solvers to calculate position of LoRaWAN devices, or specify position of LoRaWAN devices & gateways. + 1.23.0 (2022-04-27) ------------------ diff --git a/gems/aws-sdk-iotwireless/VERSION b/gems/aws-sdk-iotwireless/VERSION index a6c2798a482..53cc1a6f929 100644 --- a/gems/aws-sdk-iotwireless/VERSION +++ b/gems/aws-sdk-iotwireless/VERSION @@ -1 +1 @@ -1.23.0 +1.24.0 diff --git a/gems/aws-sdk-iotwireless/lib/aws-sdk-iotwireless.rb b/gems/aws-sdk-iotwireless/lib/aws-sdk-iotwireless.rb index 3b2c3cd24d8..a72f3437c53 100644 --- a/gems/aws-sdk-iotwireless/lib/aws-sdk-iotwireless.rb +++ b/gems/aws-sdk-iotwireless/lib/aws-sdk-iotwireless.rb @@ -48,6 +48,6 @@ # @!group service module Aws::IoTWireless - GEM_VERSION = '1.23.0' + GEM_VERSION = '1.24.0' end diff --git a/gems/aws-sdk-iotwireless/lib/aws-sdk-iotwireless/client.rb b/gems/aws-sdk-iotwireless/lib/aws-sdk-iotwireless/client.rb index 7f791d8e248..cfa66002951 100644 --- a/gems/aws-sdk-iotwireless/lib/aws-sdk-iotwireless/client.rb +++ b/gems/aws-sdk-iotwireless/lib/aws-sdk-iotwireless/client.rb @@ -1041,6 +1041,11 @@ def create_service_profile(params = {}, options = {}) # fuota: 1, # multicast: 1, # clock_sync: 1, + # positioning: { + # clock_sync: 1, + # stream: 1, + # gnss: 1, + # }, # }, # }, # tags: [ @@ -1713,7 +1718,7 @@ def get_device_profile(params = {}, options = {}) req.send_request(options) end - # Get the event configuration by resource types. + # Get the event configuration based on resource types. # # @return [Types::GetEventConfigurationByResourceTypesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # @@ -1956,6 +1961,85 @@ def get_partner_account(params = {}, options = {}) req.send_request(options) end + # Get the position information for a given resource. + # + # @option params [required, String] :resource_identifier + # Resource identifier used to retrieve the position information. + # + # @option params [required, String] :resource_type + # Resource type of the resource for which position information is + # retrieved. + # + # @return [Types::GetPositionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: + # + # * {Types::GetPositionResponse#position #position} => Array<Float> + # * {Types::GetPositionResponse#accuracy #accuracy} => Types::Accuracy + # * {Types::GetPositionResponse#solver_type #solver_type} => String + # * {Types::GetPositionResponse#solver_provider #solver_provider} => String + # * {Types::GetPositionResponse#solver_version #solver_version} => String + # * {Types::GetPositionResponse#timestamp #timestamp} => String + # + # @example Request syntax with placeholder values + # + # resp = client.get_position({ + # resource_identifier: "PositionResourceIdentifier", # required + # resource_type: "WirelessDevice", # required, accepts WirelessDevice, WirelessGateway + # }) + # + # @example Response structure + # + # resp.position #=> Array + # resp.position[0] #=> Float + # resp.accuracy.horizontal_accuracy #=> Float + # resp.accuracy.vertical_accuracy #=> Float + # resp.solver_type #=> String, one of "GNSS" + # resp.solver_provider #=> String, one of "Semtech" + # resp.solver_version #=> String + # resp.timestamp #=> String + # + # @overload get_position(params = {}) + # @param [Hash] params ({}) + def get_position(params = {}, options = {}) + req = build_request(:get_position, params) + req.send_request(options) + end + + # Get position configuration for a given resource. + # + # @option params [required, String] :resource_identifier + # Resource identifier used in a position configuration. + # + # @option params [required, String] :resource_type + # Resource type of the resource for which position configuration is + # retrieved. + # + # @return [Types::GetPositionConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: + # + # * {Types::GetPositionConfigurationResponse#solvers #solvers} => Types::PositionSolverDetails + # * {Types::GetPositionConfigurationResponse#destination #destination} => String + # + # @example Request syntax with placeholder values + # + # resp = client.get_position_configuration({ + # resource_identifier: "PositionResourceIdentifier", # required + # resource_type: "WirelessDevice", # required, accepts WirelessDevice, WirelessGateway + # }) + # + # @example Response structure + # + # resp.solvers.semtech_gnss.provider #=> String, one of "Semtech" + # resp.solvers.semtech_gnss.type #=> String, one of "GNSS" + # resp.solvers.semtech_gnss.status #=> String, one of "Enabled", "Disabled" + # resp.solvers.semtech_gnss.fec #=> String, one of "ROSE", "NONE" + # resp.destination #=> String + # + # @overload get_position_configuration(params = {}) + # @param [Hash] params ({}) + def get_position_configuration(params = {}, options = {}) + req = build_request(:get_position_configuration, params) + req.send_request(options) + end + # Get the event configuration for a particular resource identifier. # # @option params [required, String] :identifier @@ -1967,7 +2051,7 @@ def get_partner_account(params = {}, options = {}) # # @option params [String] :partner_type # Partner type of the resource if the identifier type is - # PartnerAccountId. + # `PartnerAccountId`. # # @return [Types::GetResourceEventConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # @@ -2181,6 +2265,9 @@ def get_service_profile(params = {}, options = {}) # resp.lo_ra_wan.f_ports.fuota #=> Integer # resp.lo_ra_wan.f_ports.multicast #=> Integer # resp.lo_ra_wan.f_ports.clock_sync #=> Integer + # resp.lo_ra_wan.f_ports.positioning.clock_sync #=> Integer + # resp.lo_ra_wan.f_ports.positioning.stream #=> Integer + # resp.lo_ra_wan.f_ports.positioning.gnss #=> Integer # resp.sidewalk.amazon_id #=> String # resp.sidewalk.sidewalk_id #=> String # resp.sidewalk.sidewalk_manufacturing_sn #=> String @@ -2776,6 +2863,54 @@ def list_partner_accounts(params = {}, options = {}) req.send_request(options) end + # List position configurations for a given resource, such as positioning + # solvers. + # + # @option params [String] :resource_type + # Resource type for which position configurations are listed. + # + # @option params [Integer] :max_results + # The maximum number of results to return in this operation. + # + # @option params [String] :next_token + # To retrieve the next set of results, the `nextToken` value from a + # previous response; otherwise **null** to receive the first set of + # results. + # + # @return [Types::ListPositionConfigurationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: + # + # * {Types::ListPositionConfigurationsResponse#position_configuration_list #position_configuration_list} => Array<Types::PositionConfigurationItem> + # * {Types::ListPositionConfigurationsResponse#next_token #next_token} => String + # + # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}. + # + # @example Request syntax with placeholder values + # + # resp = client.list_position_configurations({ + # resource_type: "WirelessDevice", # accepts WirelessDevice, WirelessGateway + # max_results: 1, + # next_token: "NextToken", + # }) + # + # @example Response structure + # + # resp.position_configuration_list #=> Array + # resp.position_configuration_list[0].resource_identifier #=> String + # resp.position_configuration_list[0].resource_type #=> String, one of "WirelessDevice", "WirelessGateway" + # resp.position_configuration_list[0].solvers.semtech_gnss.provider #=> String, one of "Semtech" + # resp.position_configuration_list[0].solvers.semtech_gnss.type #=> String, one of "GNSS" + # resp.position_configuration_list[0].solvers.semtech_gnss.status #=> String, one of "Enabled", "Disabled" + # resp.position_configuration_list[0].solvers.semtech_gnss.fec #=> String, one of "ROSE", "NONE" + # resp.position_configuration_list[0].destination #=> String + # resp.next_token #=> String + # + # @overload list_position_configurations(params = {}) + # @param [Hash] params ({}) + def list_position_configurations(params = {}, options = {}) + req = build_request(:list_position_configurations, params) + req.send_request(options) + end + # List queued messages in the downlink queue. # # @option params [required, String] :id @@ -3069,6 +3204,47 @@ def list_wireless_gateways(params = {}, options = {}) req.send_request(options) end + # Put position configuration for a given resource. + # + # @option params [required, String] :resource_identifier + # Resource identifier used to update the position configuration. + # + # @option params [required, String] :resource_type + # Resource type of the resource for which you want to update the + # position configuration. + # + # @option params [Types::PositionSolverConfigurations] :solvers + # The positioning solvers used to update the position configuration of + # the resource. + # + # @option params [String] :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. + # + # @return [Struct] Returns an empty {Seahorse::Client::Response response}. + # + # @example Request syntax with placeholder values + # + # resp = client.put_position_configuration({ + # resource_identifier: "PositionResourceIdentifier", # required + # resource_type: "WirelessDevice", # required, accepts WirelessDevice, WirelessGateway + # solvers: { + # semtech_gnss: { + # status: "Enabled", # required, accepts Enabled, Disabled + # fec: "ROSE", # required, accepts ROSE, NONE + # }, + # }, + # destination: "DestinationName", + # }) + # + # @overload put_position_configuration(params = {}) + # @param [Hash] params ({}) + def put_position_configuration(params = {}, options = {}) + req = build_request(:put_position_configuration, params) + req.send_request(options) + end + # 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. @@ -3474,7 +3650,7 @@ def update_destination(params = {}, options = {}) req.send_request(options) end - # Update the event configuration by resource types. + # Update the event configuration based on resource types. # # @option params [Types::DeviceRegistrationStateResourceTypeEventConfiguration] :device_registration_state # Device registration state resource type event configuration object for @@ -3744,6 +3920,34 @@ def update_partner_account(params = {}, options = {}) req.send_request(options) end + # Update the position information of a resource. + # + # @option params [required, String] :resource_identifier + # Resource identifier of the resource for which position is updated. + # + # @option params [required, String] :resource_type + # Resource type of the resource for which position is updated. + # + # @option params [required, Array] :position + # The position information of the resource. + # + # @return [Struct] Returns an empty {Seahorse::Client::Response response}. + # + # @example Request syntax with placeholder values + # + # resp = client.update_position({ + # resource_identifier: "PositionResourceIdentifier", # required + # resource_type: "WirelessDevice", # required, accepts WirelessDevice, WirelessGateway + # position: [1.0], # required + # }) + # + # @overload update_position(params = {}) + # @param [Hash] params ({}) + def update_position(params = {}, options = {}) + req = build_request(:update_position, params) + req.send_request(options) + end + # Update the event configuration for a particular resource identifier. # # @option params [required, String] :identifier @@ -3755,19 +3959,19 @@ def update_partner_account(params = {}, options = {}) # # @option params [String] :partner_type # Partner type of the resource if the identifier type is - # PartnerAccountId + # `PartnerAccountId` # # @option params [Types::DeviceRegistrationStateEventConfiguration] :device_registration_state - # Event configuration for the device registration state event + # Event configuration for the device registration state event. # # @option params [Types::ProximityEventConfiguration] :proximity - # Event configuration for the Proximity event + # Event configuration for the proximity event. # # @option params [Types::JoinEventConfiguration] :join - # Event configuration for the join event + # Event configuration for the join event. # # @option params [Types::ConnectionStatusEventConfiguration] :connection_status - # Event configuration for the connection status event + # Event configuration for the connection status event. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # @@ -3845,6 +4049,13 @@ def update_resource_event_configuration(params = {}, options = {}) # abp_v1_0_x: { # f_cnt_start: 1, # }, + # f_ports: { + # positioning: { + # clock_sync: 1, + # stream: 1, + # gnss: 1, + # }, + # }, # }, # }) # @@ -3907,7 +4118,7 @@ def build_request(operation_name, params = {}) params: params, config: config) context[:gem_name] = 'aws-sdk-iotwireless' - context[:gem_version] = '1.23.0' + context[:gem_version] = '1.24.0' Seahorse::Client::Request.new(handlers, context) end diff --git a/gems/aws-sdk-iotwireless/lib/aws-sdk-iotwireless/client_api.rb b/gems/aws-sdk-iotwireless/lib/aws-sdk-iotwireless/client_api.rb index 97095ffdc4c..52c88f4ad1d 100644 --- a/gems/aws-sdk-iotwireless/lib/aws-sdk-iotwireless/client_api.rb +++ b/gems/aws-sdk-iotwireless/lib/aws-sdk-iotwireless/client_api.rb @@ -17,6 +17,7 @@ module ClientApi AbpV1_1 = Shapes::StructureShape.new(name: 'AbpV1_1') AccessDeniedException = Shapes::StructureShape.new(name: 'AccessDeniedException') AccountLinked = Shapes::BooleanShape.new(name: 'AccountLinked') + Accuracy = Shapes::StructureShape.new(name: 'Accuracy') AddGwMetadata = Shapes::BooleanShape.new(name: 'AddGwMetadata') AmazonId = Shapes::StringShape.new(name: 'AmazonId') AmazonResourceName = Shapes::StringShape.new(name: 'AmazonResourceName') @@ -184,6 +185,10 @@ module ClientApi GetNetworkAnalyzerConfigurationResponse = Shapes::StructureShape.new(name: 'GetNetworkAnalyzerConfigurationResponse') GetPartnerAccountRequest = Shapes::StructureShape.new(name: 'GetPartnerAccountRequest') GetPartnerAccountResponse = Shapes::StructureShape.new(name: 'GetPartnerAccountResponse') + GetPositionConfigurationRequest = Shapes::StructureShape.new(name: 'GetPositionConfigurationRequest') + GetPositionConfigurationResponse = Shapes::StructureShape.new(name: 'GetPositionConfigurationResponse') + GetPositionRequest = Shapes::StructureShape.new(name: 'GetPositionRequest') + GetPositionResponse = Shapes::StructureShape.new(name: 'GetPositionResponse') GetResourceEventConfigurationRequest = Shapes::StructureShape.new(name: 'GetResourceEventConfigurationRequest') GetResourceEventConfigurationResponse = Shapes::StructureShape.new(name: 'GetResourceEventConfigurationResponse') GetResourceLogLevelRequest = Shapes::StructureShape.new(name: 'GetResourceLogLevelRequest') @@ -208,6 +213,7 @@ module ClientApi GetWirelessGatewayTaskDefinitionResponse = Shapes::StructureShape.new(name: 'GetWirelessGatewayTaskDefinitionResponse') GetWirelessGatewayTaskRequest = Shapes::StructureShape.new(name: 'GetWirelessGatewayTaskRequest') GetWirelessGatewayTaskResponse = Shapes::StructureShape.new(name: 'GetWirelessGatewayTaskResponse') + HorizontalAccuracy = Shapes::FloatShape.new(name: 'HorizontalAccuracy') HrAllowed = Shapes::BooleanShape.new(name: 'HrAllowed') ISODateTimeString = Shapes::StringShape.new(name: 'ISODateTimeString') Identifier = Shapes::StringShape.new(name: 'Identifier') @@ -236,6 +242,8 @@ module ClientApi ListNetworkAnalyzerConfigurationsResponse = Shapes::StructureShape.new(name: 'ListNetworkAnalyzerConfigurationsResponse') ListPartnerAccountsRequest = Shapes::StructureShape.new(name: 'ListPartnerAccountsRequest') ListPartnerAccountsResponse = Shapes::StructureShape.new(name: 'ListPartnerAccountsResponse') + ListPositionConfigurationsRequest = Shapes::StructureShape.new(name: 'ListPositionConfigurationsRequest') + ListPositionConfigurationsResponse = Shapes::StructureShape.new(name: 'ListPositionConfigurationsResponse') ListQueuedMessagesRequest = Shapes::StructureShape.new(name: 'ListQueuedMessagesRequest') ListQueuedMessagesResponse = Shapes::StructureShape.new(name: 'ListQueuedMessagesResponse') ListServiceProfilesRequest = Shapes::StructureShape.new(name: 'ListServiceProfilesRequest') @@ -319,10 +327,26 @@ module ClientApi PingSlotDr = Shapes::IntegerShape.new(name: 'PingSlotDr') PingSlotFreq = Shapes::IntegerShape.new(name: 'PingSlotFreq') PingSlotPeriod = Shapes::IntegerShape.new(name: 'PingSlotPeriod') + PositionConfigurationFec = Shapes::StringShape.new(name: 'PositionConfigurationFec') + PositionConfigurationItem = Shapes::StructureShape.new(name: 'PositionConfigurationItem') + PositionConfigurationList = Shapes::ListShape.new(name: 'PositionConfigurationList') + PositionConfigurationStatus = Shapes::StringShape.new(name: 'PositionConfigurationStatus') + PositionCoordinate = Shapes::ListShape.new(name: 'PositionCoordinate') + PositionCoordinateValue = Shapes::FloatShape.new(name: 'PositionCoordinateValue') + PositionResourceIdentifier = Shapes::StringShape.new(name: 'PositionResourceIdentifier') + PositionResourceType = Shapes::StringShape.new(name: 'PositionResourceType') + PositionSolverConfigurations = Shapes::StructureShape.new(name: 'PositionSolverConfigurations') + PositionSolverDetails = Shapes::StructureShape.new(name: 'PositionSolverDetails') + PositionSolverProvider = Shapes::StringShape.new(name: 'PositionSolverProvider') + PositionSolverType = Shapes::StringShape.new(name: 'PositionSolverType') + PositionSolverVersion = Shapes::StringShape.new(name: 'PositionSolverVersion') + Positioning = Shapes::StructureShape.new(name: 'Positioning') PrAllowed = Shapes::BooleanShape.new(name: 'PrAllowed') PresetFreq = Shapes::IntegerShape.new(name: 'PresetFreq') ProximityEventConfiguration = Shapes::StructureShape.new(name: 'ProximityEventConfiguration') ProximityResourceTypeEventConfiguration = Shapes::StructureShape.new(name: 'ProximityResourceTypeEventConfiguration') + PutPositionConfigurationRequest = Shapes::StructureShape.new(name: 'PutPositionConfigurationRequest') + PutPositionConfigurationResponse = Shapes::StructureShape.new(name: 'PutPositionConfigurationResponse') PutResourceLogLevelRequest = Shapes::StructureShape.new(name: 'PutResourceLogLevelRequest') PutResourceLogLevelResponse = Shapes::StructureShape.new(name: 'PutResourceLogLevelResponse') QueryString = Shapes::StringShape.new(name: 'QueryString') @@ -346,6 +370,8 @@ module ClientApi RxDrOffset1 = Shapes::IntegerShape.new(name: 'RxDrOffset1') RxFreq2 = Shapes::IntegerShape.new(name: 'RxFreq2') SNwkSIntKey = Shapes::StringShape.new(name: 'SNwkSIntKey') + SemtechGnssConfiguration = Shapes::StructureShape.new(name: 'SemtechGnssConfiguration') + SemtechGnssDetail = Shapes::StructureShape.new(name: 'SemtechGnssDetail') SendDataToMulticastGroupRequest = Shapes::StructureShape.new(name: 'SendDataToMulticastGroupRequest') SendDataToMulticastGroupResponse = Shapes::StructureShape.new(name: 'SendDataToMulticastGroupResponse') SendDataToWirelessDeviceRequest = Shapes::StructureShape.new(name: 'SendDataToWirelessDeviceRequest') @@ -418,6 +444,7 @@ module ClientApi UpdateDestinationResponse = Shapes::StructureShape.new(name: 'UpdateDestinationResponse') UpdateEventConfigurationByResourceTypesRequest = Shapes::StructureShape.new(name: 'UpdateEventConfigurationByResourceTypesRequest') UpdateEventConfigurationByResourceTypesResponse = Shapes::StructureShape.new(name: 'UpdateEventConfigurationByResourceTypesResponse') + UpdateFPorts = Shapes::StructureShape.new(name: 'UpdateFPorts') UpdateFuotaTaskRequest = Shapes::StructureShape.new(name: 'UpdateFuotaTaskRequest') UpdateFuotaTaskResponse = Shapes::StructureShape.new(name: 'UpdateFuotaTaskResponse') UpdateLogLevelsByResourceTypesRequest = Shapes::StructureShape.new(name: 'UpdateLogLevelsByResourceTypesRequest') @@ -428,6 +455,8 @@ module ClientApi UpdateNetworkAnalyzerConfigurationResponse = Shapes::StructureShape.new(name: 'UpdateNetworkAnalyzerConfigurationResponse') UpdatePartnerAccountRequest = Shapes::StructureShape.new(name: 'UpdatePartnerAccountRequest') UpdatePartnerAccountResponse = Shapes::StructureShape.new(name: 'UpdatePartnerAccountResponse') + UpdatePositionRequest = Shapes::StructureShape.new(name: 'UpdatePositionRequest') + UpdatePositionResponse = Shapes::StructureShape.new(name: 'UpdatePositionResponse') UpdateResourceEventConfigurationRequest = Shapes::StructureShape.new(name: 'UpdateResourceEventConfigurationRequest') UpdateResourceEventConfigurationResponse = Shapes::StructureShape.new(name: 'UpdateResourceEventConfigurationResponse') UpdateSignature = Shapes::StringShape.new(name: 'UpdateSignature') @@ -438,6 +467,7 @@ module ClientApi UpdateWirelessGatewayTaskCreate = Shapes::StructureShape.new(name: 'UpdateWirelessGatewayTaskCreate') UpdateWirelessGatewayTaskEntry = Shapes::StructureShape.new(name: 'UpdateWirelessGatewayTaskEntry') ValidationException = Shapes::StructureShape.new(name: 'ValidationException') + VerticalAccuracy = Shapes::FloatShape.new(name: 'VerticalAccuracy') WirelessDeviceArn = Shapes::StringShape.new(name: 'WirelessDeviceArn') WirelessDeviceEvent = Shapes::StringShape.new(name: 'WirelessDeviceEvent') WirelessDeviceEventLogOption = Shapes::StructureShape.new(name: 'WirelessDeviceEventLogOption') @@ -487,6 +517,10 @@ module ClientApi AccessDeniedException.add_member(:message, Shapes::ShapeRef.new(shape: Message, location_name: "Message")) AccessDeniedException.struct_class = Types::AccessDeniedException + Accuracy.add_member(:horizontal_accuracy, Shapes::ShapeRef.new(shape: HorizontalAccuracy, location_name: "HorizontalAccuracy")) + Accuracy.add_member(:vertical_accuracy, Shapes::ShapeRef.new(shape: VerticalAccuracy, location_name: "VerticalAccuracy")) + Accuracy.struct_class = Types::Accuracy + AssociateAwsAccountWithPartnerAccountRequest.add_member(:sidewalk, Shapes::ShapeRef.new(shape: SidewalkAccountInfo, required: true, location_name: "Sidewalk")) AssociateAwsAccountWithPartnerAccountRequest.add_member(:client_request_token, Shapes::ShapeRef.new(shape: ClientRequestToken, location_name: "ClientRequestToken", metadata: {"idempotencyToken"=>true})) AssociateAwsAccountWithPartnerAccountRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags")) @@ -814,6 +848,7 @@ module ClientApi FPorts.add_member(:fuota, Shapes::ShapeRef.new(shape: FPort, location_name: "Fuota")) FPorts.add_member(:multicast, Shapes::ShapeRef.new(shape: FPort, location_name: "Multicast")) FPorts.add_member(:clock_sync, Shapes::ShapeRef.new(shape: FPort, location_name: "ClockSync")) + FPorts.add_member(:positioning, Shapes::ShapeRef.new(shape: Positioning, location_name: "Positioning")) FPorts.struct_class = Types::FPorts FactoryPresetFreqsList.member = Shapes::ShapeRef.new(shape: PresetFreq) @@ -911,6 +946,26 @@ module ClientApi GetPartnerAccountResponse.add_member(:account_linked, Shapes::ShapeRef.new(shape: AccountLinked, location_name: "AccountLinked")) GetPartnerAccountResponse.struct_class = Types::GetPartnerAccountResponse + GetPositionConfigurationRequest.add_member(:resource_identifier, Shapes::ShapeRef.new(shape: PositionResourceIdentifier, required: true, location: "uri", location_name: "ResourceIdentifier")) + GetPositionConfigurationRequest.add_member(:resource_type, Shapes::ShapeRef.new(shape: PositionResourceType, required: true, location: "querystring", location_name: "resourceType")) + GetPositionConfigurationRequest.struct_class = Types::GetPositionConfigurationRequest + + GetPositionConfigurationResponse.add_member(:solvers, Shapes::ShapeRef.new(shape: PositionSolverDetails, location_name: "Solvers")) + GetPositionConfigurationResponse.add_member(:destination, Shapes::ShapeRef.new(shape: DestinationName, location_name: "Destination")) + GetPositionConfigurationResponse.struct_class = Types::GetPositionConfigurationResponse + + GetPositionRequest.add_member(:resource_identifier, Shapes::ShapeRef.new(shape: PositionResourceIdentifier, required: true, location: "uri", location_name: "ResourceIdentifier")) + GetPositionRequest.add_member(:resource_type, Shapes::ShapeRef.new(shape: PositionResourceType, required: true, location: "querystring", location_name: "resourceType")) + GetPositionRequest.struct_class = Types::GetPositionRequest + + GetPositionResponse.add_member(:position, Shapes::ShapeRef.new(shape: PositionCoordinate, location_name: "Position")) + GetPositionResponse.add_member(:accuracy, Shapes::ShapeRef.new(shape: Accuracy, location_name: "Accuracy")) + GetPositionResponse.add_member(:solver_type, Shapes::ShapeRef.new(shape: PositionSolverType, location_name: "SolverType")) + GetPositionResponse.add_member(:solver_provider, Shapes::ShapeRef.new(shape: PositionSolverProvider, location_name: "SolverProvider")) + GetPositionResponse.add_member(:solver_version, Shapes::ShapeRef.new(shape: PositionSolverVersion, location_name: "SolverVersion")) + GetPositionResponse.add_member(:timestamp, Shapes::ShapeRef.new(shape: ISODateTimeString, location_name: "Timestamp")) + GetPositionResponse.struct_class = Types::GetPositionResponse + GetResourceEventConfigurationRequest.add_member(:identifier, Shapes::ShapeRef.new(shape: Identifier, required: true, location: "uri", location_name: "Identifier")) GetResourceEventConfigurationRequest.add_member(:identifier_type, Shapes::ShapeRef.new(shape: IdentifierType, required: true, location: "querystring", location_name: "identifierType")) GetResourceEventConfigurationRequest.add_member(:partner_type, Shapes::ShapeRef.new(shape: EventNotificationPartnerType, location: "querystring", location_name: "partnerType")) @@ -1104,6 +1159,15 @@ module ClientApi ListPartnerAccountsResponse.add_member(:sidewalk, Shapes::ShapeRef.new(shape: SidewalkAccountList, location_name: "Sidewalk")) ListPartnerAccountsResponse.struct_class = Types::ListPartnerAccountsResponse + ListPositionConfigurationsRequest.add_member(:resource_type, Shapes::ShapeRef.new(shape: PositionResourceType, location: "querystring", location_name: "resourceType")) + ListPositionConfigurationsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location: "querystring", location_name: "maxResults")) + ListPositionConfigurationsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "nextToken")) + ListPositionConfigurationsRequest.struct_class = Types::ListPositionConfigurationsRequest + + ListPositionConfigurationsResponse.add_member(:position_configuration_list, Shapes::ShapeRef.new(shape: PositionConfigurationList, location_name: "PositionConfigurationList")) + ListPositionConfigurationsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken")) + ListPositionConfigurationsResponse.struct_class = Types::ListPositionConfigurationsResponse + ListQueuedMessagesRequest.add_member(:id, Shapes::ShapeRef.new(shape: WirelessDeviceId, required: true, location: "uri", location_name: "Id")) ListQueuedMessagesRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "nextToken")) ListQueuedMessagesRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location: "querystring", location_name: "maxResults")) @@ -1295,6 +1359,7 @@ module ClientApi LoRaWANUpdateDevice.add_member(:service_profile_id, Shapes::ShapeRef.new(shape: ServiceProfileId, location_name: "ServiceProfileId")) LoRaWANUpdateDevice.add_member(:abp_v1_1, Shapes::ShapeRef.new(shape: UpdateAbpV1_1, location_name: "AbpV1_1")) LoRaWANUpdateDevice.add_member(:abp_v1_0_x, Shapes::ShapeRef.new(shape: UpdateAbpV1_0_x, location_name: "AbpV1_0_x")) + LoRaWANUpdateDevice.add_member(:f_ports, Shapes::ShapeRef.new(shape: UpdateFPorts, location_name: "FPorts")) LoRaWANUpdateDevice.struct_class = Types::LoRaWANUpdateDevice LoRaWANUpdateGatewayTaskCreate.add_member(:update_signature, Shapes::ShapeRef.new(shape: UpdateSignature, location_name: "UpdateSignature")) @@ -1340,6 +1405,27 @@ module ClientApi OtaaV1_1.add_member(:join_eui, Shapes::ShapeRef.new(shape: JoinEui, location_name: "JoinEui")) OtaaV1_1.struct_class = Types::OtaaV1_1 + PositionConfigurationItem.add_member(:resource_identifier, Shapes::ShapeRef.new(shape: PositionResourceIdentifier, location_name: "ResourceIdentifier")) + PositionConfigurationItem.add_member(:resource_type, Shapes::ShapeRef.new(shape: PositionResourceType, location_name: "ResourceType")) + PositionConfigurationItem.add_member(:solvers, Shapes::ShapeRef.new(shape: PositionSolverDetails, location_name: "Solvers")) + PositionConfigurationItem.add_member(:destination, Shapes::ShapeRef.new(shape: DestinationName, location_name: "Destination")) + PositionConfigurationItem.struct_class = Types::PositionConfigurationItem + + PositionConfigurationList.member = Shapes::ShapeRef.new(shape: PositionConfigurationItem) + + PositionCoordinate.member = Shapes::ShapeRef.new(shape: PositionCoordinateValue) + + PositionSolverConfigurations.add_member(:semtech_gnss, Shapes::ShapeRef.new(shape: SemtechGnssConfiguration, location_name: "SemtechGnss")) + PositionSolverConfigurations.struct_class = Types::PositionSolverConfigurations + + PositionSolverDetails.add_member(:semtech_gnss, Shapes::ShapeRef.new(shape: SemtechGnssDetail, location_name: "SemtechGnss")) + PositionSolverDetails.struct_class = Types::PositionSolverDetails + + Positioning.add_member(:clock_sync, Shapes::ShapeRef.new(shape: FPort, location_name: "ClockSync")) + Positioning.add_member(:stream, Shapes::ShapeRef.new(shape: FPort, location_name: "Stream")) + Positioning.add_member(:gnss, Shapes::ShapeRef.new(shape: FPort, location_name: "Gnss")) + Positioning.struct_class = Types::Positioning + ProximityEventConfiguration.add_member(:sidewalk, Shapes::ShapeRef.new(shape: SidewalkEventNotificationConfigurations, location_name: "Sidewalk")) ProximityEventConfiguration.add_member(:wireless_device_id_event_topic, Shapes::ShapeRef.new(shape: EventNotificationTopicStatus, location_name: "WirelessDeviceIdEventTopic")) ProximityEventConfiguration.struct_class = Types::ProximityEventConfiguration @@ -1347,6 +1433,14 @@ module ClientApi ProximityResourceTypeEventConfiguration.add_member(:sidewalk, Shapes::ShapeRef.new(shape: SidewalkResourceTypeEventConfiguration, location_name: "Sidewalk")) ProximityResourceTypeEventConfiguration.struct_class = Types::ProximityResourceTypeEventConfiguration + PutPositionConfigurationRequest.add_member(:resource_identifier, Shapes::ShapeRef.new(shape: PositionResourceIdentifier, required: true, location: "uri", location_name: "ResourceIdentifier")) + PutPositionConfigurationRequest.add_member(:resource_type, Shapes::ShapeRef.new(shape: PositionResourceType, required: true, location: "querystring", location_name: "resourceType")) + PutPositionConfigurationRequest.add_member(:solvers, Shapes::ShapeRef.new(shape: PositionSolverConfigurations, location_name: "Solvers")) + PutPositionConfigurationRequest.add_member(:destination, Shapes::ShapeRef.new(shape: DestinationName, location_name: "Destination")) + PutPositionConfigurationRequest.struct_class = Types::PutPositionConfigurationRequest + + PutPositionConfigurationResponse.struct_class = Types::PutPositionConfigurationResponse + PutResourceLogLevelRequest.add_member(:resource_identifier, Shapes::ShapeRef.new(shape: ResourceIdentifier, required: true, location: "uri", location_name: "ResourceIdentifier")) PutResourceLogLevelRequest.add_member(:resource_type, Shapes::ShapeRef.new(shape: ResourceType, required: true, location: "querystring", location_name: "resourceType")) PutResourceLogLevelRequest.add_member(:log_level, Shapes::ShapeRef.new(shape: LogLevel, required: true, location_name: "LogLevel")) @@ -1369,6 +1463,16 @@ module ClientApi ResourceNotFoundException.add_member(:resource_type, Shapes::ShapeRef.new(shape: ResourceType, location_name: "ResourceType")) ResourceNotFoundException.struct_class = Types::ResourceNotFoundException + SemtechGnssConfiguration.add_member(:status, Shapes::ShapeRef.new(shape: PositionConfigurationStatus, required: true, location_name: "Status")) + SemtechGnssConfiguration.add_member(:fec, Shapes::ShapeRef.new(shape: PositionConfigurationFec, required: true, location_name: "Fec")) + SemtechGnssConfiguration.struct_class = Types::SemtechGnssConfiguration + + SemtechGnssDetail.add_member(:provider, Shapes::ShapeRef.new(shape: PositionSolverProvider, location_name: "Provider")) + SemtechGnssDetail.add_member(:type, Shapes::ShapeRef.new(shape: PositionSolverType, location_name: "Type")) + SemtechGnssDetail.add_member(:status, Shapes::ShapeRef.new(shape: PositionConfigurationStatus, location_name: "Status")) + SemtechGnssDetail.add_member(:fec, Shapes::ShapeRef.new(shape: PositionConfigurationFec, location_name: "Fec")) + SemtechGnssDetail.struct_class = Types::SemtechGnssDetail + SendDataToMulticastGroupRequest.add_member(:id, Shapes::ShapeRef.new(shape: MulticastGroupId, required: true, location: "uri", location_name: "Id")) SendDataToMulticastGroupRequest.add_member(:payload_data, Shapes::ShapeRef.new(shape: PayloadData, required: true, location_name: "PayloadData")) SendDataToMulticastGroupRequest.add_member(:wireless_metadata, Shapes::ShapeRef.new(shape: MulticastWirelessMetadata, required: true, location_name: "WirelessMetadata")) @@ -1533,6 +1637,9 @@ module ClientApi UpdateEventConfigurationByResourceTypesResponse.struct_class = Types::UpdateEventConfigurationByResourceTypesResponse + UpdateFPorts.add_member(:positioning, Shapes::ShapeRef.new(shape: Positioning, location_name: "Positioning")) + UpdateFPorts.struct_class = Types::UpdateFPorts + UpdateFuotaTaskRequest.add_member(:id, Shapes::ShapeRef.new(shape: FuotaTaskId, required: true, location: "uri", location_name: "Id")) UpdateFuotaTaskRequest.add_member(:name, Shapes::ShapeRef.new(shape: FuotaTaskName, location_name: "Name")) UpdateFuotaTaskRequest.add_member(:description, Shapes::ShapeRef.new(shape: Description, location_name: "Description")) @@ -1576,6 +1683,13 @@ module ClientApi UpdatePartnerAccountResponse.struct_class = Types::UpdatePartnerAccountResponse + UpdatePositionRequest.add_member(:resource_identifier, Shapes::ShapeRef.new(shape: PositionResourceIdentifier, required: true, location: "uri", location_name: "ResourceIdentifier")) + UpdatePositionRequest.add_member(:resource_type, Shapes::ShapeRef.new(shape: PositionResourceType, required: true, location: "querystring", location_name: "resourceType")) + UpdatePositionRequest.add_member(:position, Shapes::ShapeRef.new(shape: PositionCoordinate, required: true, location_name: "Position")) + UpdatePositionRequest.struct_class = Types::UpdatePositionRequest + + UpdatePositionResponse.struct_class = Types::UpdatePositionResponse + UpdateResourceEventConfigurationRequest.add_member(:identifier, Shapes::ShapeRef.new(shape: Identifier, required: true, location: "uri", location_name: "Identifier")) UpdateResourceEventConfigurationRequest.add_member(:identifier_type, Shapes::ShapeRef.new(shape: IdentifierType, required: true, location: "querystring", location_name: "identifierType")) UpdateResourceEventConfigurationRequest.add_member(:partner_type, Shapes::ShapeRef.new(shape: EventNotificationPartnerType, location: "querystring", location_name: "partnerType")) @@ -2300,6 +2414,32 @@ module ClientApi o.errors << Shapes::ShapeRef.new(shape: ThrottlingException) end) + api.add_operation(:get_position, Seahorse::Model::Operation.new.tap do |o| + o.name = "GetPosition" + o.http_method = "GET" + o.http_request_uri = "/positions/{ResourceIdentifier}" + o.input = Shapes::ShapeRef.new(shape: GetPositionRequest) + o.output = Shapes::ShapeRef.new(shape: GetPositionResponse) + o.errors << Shapes::ShapeRef.new(shape: ValidationException) + o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException) + o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException) + o.errors << Shapes::ShapeRef.new(shape: ThrottlingException) + o.errors << Shapes::ShapeRef.new(shape: InternalServerException) + end) + + api.add_operation(:get_position_configuration, Seahorse::Model::Operation.new.tap do |o| + o.name = "GetPositionConfiguration" + o.http_method = "GET" + o.http_request_uri = "/position-configurations/{ResourceIdentifier}" + o.input = Shapes::ShapeRef.new(shape: GetPositionConfigurationRequest) + o.output = Shapes::ShapeRef.new(shape: GetPositionConfigurationResponse) + o.errors << Shapes::ShapeRef.new(shape: ValidationException) + o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException) + o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException) + o.errors << Shapes::ShapeRef.new(shape: ThrottlingException) + o.errors << Shapes::ShapeRef.new(shape: InternalServerException) + end) + api.add_operation(:get_resource_event_configuration, Seahorse::Model::Operation.new.tap do |o| o.name = "GetResourceEventConfiguration" o.http_method = "GET" @@ -2588,6 +2728,24 @@ module ClientApi o.errors << Shapes::ShapeRef.new(shape: ThrottlingException) end) + api.add_operation(:list_position_configurations, Seahorse::Model::Operation.new.tap do |o| + o.name = "ListPositionConfigurations" + o.http_method = "GET" + o.http_request_uri = "/position-configurations" + o.input = Shapes::ShapeRef.new(shape: ListPositionConfigurationsRequest) + o.output = Shapes::ShapeRef.new(shape: ListPositionConfigurationsResponse) + o.errors << Shapes::ShapeRef.new(shape: ValidationException) + o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException) + o.errors << Shapes::ShapeRef.new(shape: ThrottlingException) + o.errors << Shapes::ShapeRef.new(shape: InternalServerException) + o[:pager] = Aws::Pager.new( + limit_key: "max_results", + tokens: { + "next_token" => "next_token" + } + ) + end) + api.add_operation(:list_queued_messages, Seahorse::Model::Operation.new.tap do |o| o.name = "ListQueuedMessages" o.http_method = "GET" @@ -2686,6 +2844,19 @@ module ClientApi ) end) + api.add_operation(:put_position_configuration, Seahorse::Model::Operation.new.tap do |o| + o.name = "PutPositionConfiguration" + o.http_method = "PUT" + o.http_request_uri = "/position-configurations/{ResourceIdentifier}" + o.input = Shapes::ShapeRef.new(shape: PutPositionConfigurationRequest) + o.output = Shapes::ShapeRef.new(shape: PutPositionConfigurationResponse) + o.errors << Shapes::ShapeRef.new(shape: ValidationException) + o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException) + o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException) + o.errors << Shapes::ShapeRef.new(shape: ThrottlingException) + o.errors << Shapes::ShapeRef.new(shape: InternalServerException) + end) + api.add_operation(:put_resource_log_level, Seahorse::Model::Operation.new.tap do |o| o.name = "PutResourceLogLevel" o.http_method = "PUT" @@ -2936,6 +3107,19 @@ module ClientApi o.errors << Shapes::ShapeRef.new(shape: ThrottlingException) end) + api.add_operation(:update_position, Seahorse::Model::Operation.new.tap do |o| + o.name = "UpdatePosition" + o.http_method = "PATCH" + o.http_request_uri = "/positions/{ResourceIdentifier}" + o.input = Shapes::ShapeRef.new(shape: UpdatePositionRequest) + o.output = Shapes::ShapeRef.new(shape: UpdatePositionResponse) + o.errors << Shapes::ShapeRef.new(shape: ValidationException) + o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException) + o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException) + o.errors << Shapes::ShapeRef.new(shape: ThrottlingException) + o.errors << Shapes::ShapeRef.new(shape: InternalServerException) + end) + api.add_operation(:update_resource_event_configuration, Seahorse::Model::Operation.new.tap do |o| o.name = "UpdateResourceEventConfiguration" o.http_method = "PATCH" diff --git a/gems/aws-sdk-iotwireless/lib/aws-sdk-iotwireless/types.rb b/gems/aws-sdk-iotwireless/lib/aws-sdk-iotwireless/types.rb index de3460f979e..a7887670c93 100644 --- a/gems/aws-sdk-iotwireless/lib/aws-sdk-iotwireless/types.rb +++ b/gems/aws-sdk-iotwireless/lib/aws-sdk-iotwireless/types.rb @@ -91,6 +91,27 @@ class AccessDeniedException < Struct.new( include Aws::Structure end + # 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. + # + # @!attribute [rw] horizontal_accuracy + # The horizontal accuracy of the estimated position in meters. + # @return [Float] + # + # @!attribute [rw] vertical_accuracy + # The vertical accuracy of the estimated position in meters. + # @return [Float] + # + class Accuracy < Struct.new( + :horizontal_accuracy, + :vertical_accuracy) + SENSITIVE = [] + include Aws::Structure + end + # @note When making an API call, you may pass AssociateAwsAccountWithPartnerAccountRequest # data as a hash: # @@ -385,8 +406,8 @@ class ConflictException < Struct.new( # @return [Types::LoRaWANConnectionStatusEventNotificationConfigurations] # # @!attribute [rw] wireless_gateway_id_event_topic - # 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. # @return [String] # class ConnectionStatusEventConfiguration < Struct.new( @@ -933,6 +954,11 @@ class CreateServiceProfileResponse < Struct.new( # fuota: 1, # multicast: 1, # clock_sync: 1, + # positioning: { + # clock_sync: 1, + # stream: 1, + # gnss: 1, + # }, # }, # }, # tags: [ @@ -1800,6 +1826,11 @@ class EventNotificationItemConfigurations < Struct.new( # fuota: 1, # multicast: 1, # clock_sync: 1, + # positioning: { + # clock_sync: 1, + # stream: 1, + # gnss: 1, + # }, # } # # @!attribute [rw] fuota @@ -1814,10 +1845,16 @@ class EventNotificationItemConfigurations < Struct.new( # The Fport value. # @return [Integer] # + # @!attribute [rw] positioning + # FPort values for the GNSS, stream, and ClockSync functions of the + # positioning information. + # @return [Types::Positioning] + # class FPorts < Struct.new( :fuota, :multicast, - :clock_sync) + :clock_sync, + :positioning) SENSITIVE = [] include Aws::Structure end @@ -1944,19 +1981,19 @@ class GetEventConfigurationByResourceTypesRequest < Aws::EmptyStructure; end # @!attribute [rw] device_registration_state # Resource type event configuration for the device registration state - # event + # event. # @return [Types::DeviceRegistrationStateResourceTypeEventConfiguration] # # @!attribute [rw] proximity - # Resource type event configuration for the proximity event + # Resource type event configuration for the proximity event. # @return [Types::ProximityResourceTypeEventConfiguration] # # @!attribute [rw] join - # Resource type event configuration for the join event + # Resource type event configuration for the join event. # @return [Types::JoinResourceTypeEventConfiguration] # # @!attribute [rw] connection_status - # Resource type event configuration for the connection status event + # Resource type event configuration for the connection status event. # @return [Types::ConnectionStatusResourceTypeEventConfiguration] # class GetEventConfigurationByResourceTypesResponse < Struct.new( @@ -2240,6 +2277,110 @@ class GetPartnerAccountResponse < Struct.new( include Aws::Structure end + # @note When making an API call, you may pass GetPositionConfigurationRequest + # data as a hash: + # + # { + # resource_identifier: "PositionResourceIdentifier", # required + # resource_type: "WirelessDevice", # required, accepts WirelessDevice, WirelessGateway + # } + # + # @!attribute [rw] resource_identifier + # Resource identifier used in a position configuration. + # @return [String] + # + # @!attribute [rw] resource_type + # Resource type of the resource for which position configuration is + # retrieved. + # @return [String] + # + class GetPositionConfigurationRequest < Struct.new( + :resource_identifier, + :resource_type) + SENSITIVE = [] + include Aws::Structure + end + + # @!attribute [rw] solvers + # The wrapper for the solver configuration details object. + # @return [Types::PositionSolverDetails] + # + # @!attribute [rw] 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. + # @return [String] + # + class GetPositionConfigurationResponse < Struct.new( + :solvers, + :destination) + SENSITIVE = [] + include Aws::Structure + end + + # @note When making an API call, you may pass GetPositionRequest + # data as a hash: + # + # { + # resource_identifier: "PositionResourceIdentifier", # required + # resource_type: "WirelessDevice", # required, accepts WirelessDevice, WirelessGateway + # } + # + # @!attribute [rw] resource_identifier + # Resource identifier used to retrieve the position information. + # @return [String] + # + # @!attribute [rw] resource_type + # Resource type of the resource for which position information is + # retrieved. + # @return [String] + # + class GetPositionRequest < Struct.new( + :resource_identifier, + :resource_type) + SENSITIVE = [] + include Aws::Structure + end + + # @!attribute [rw] position + # The position information of the resource. + # @return [Array] + # + # @!attribute [rw] 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. + # @return [Types::Accuracy] + # + # @!attribute [rw] solver_type + # The type of solver used to identify the position of the resource. + # @return [String] + # + # @!attribute [rw] solver_provider + # The vendor of the positioning solver. + # @return [String] + # + # @!attribute [rw] solver_version + # The version of the positioning solver. + # @return [String] + # + # @!attribute [rw] timestamp + # The timestamp at which the device's position was determined. + # @return [String] + # + class GetPositionResponse < Struct.new( + :position, + :accuracy, + :solver_type, + :solver_provider, + :solver_version, + :timestamp) + SENSITIVE = [] + include Aws::Structure + end + # @note When making an API call, you may pass GetResourceEventConfigurationRequest # data as a hash: # @@ -2260,7 +2401,7 @@ class GetPartnerAccountResponse < Struct.new( # # @!attribute [rw] partner_type # Partner type of the resource if the identifier type is - # PartnerAccountId. + # `PartnerAccountId`. # @return [String] # class GetResourceEventConfigurationRequest < Struct.new( @@ -2272,11 +2413,11 @@ class GetResourceEventConfigurationRequest < Struct.new( end # @!attribute [rw] device_registration_state - # Event configuration for the device registration state event + # Event configuration for the device registration state event. # @return [Types::DeviceRegistrationStateEventConfiguration] # # @!attribute [rw] proximity - # Event configuration for the Proximity event + # Event configuration for the proximity event. # @return [Types::ProximityEventConfiguration] # # @!attribute [rw] join @@ -3196,6 +3337,53 @@ class ListPartnerAccountsResponse < Struct.new( include Aws::Structure end + # @note When making an API call, you may pass ListPositionConfigurationsRequest + # data as a hash: + # + # { + # resource_type: "WirelessDevice", # accepts WirelessDevice, WirelessGateway + # max_results: 1, + # next_token: "NextToken", + # } + # + # @!attribute [rw] resource_type + # Resource type for which position configurations are listed. + # @return [String] + # + # @!attribute [rw] max_results + # The maximum number of results to return in this operation. + # @return [Integer] + # + # @!attribute [rw] next_token + # To retrieve the next set of results, the `nextToken` value from a + # previous response; otherwise **null** to receive the first set of + # results. + # @return [String] + # + class ListPositionConfigurationsRequest < Struct.new( + :resource_type, + :max_results, + :next_token) + SENSITIVE = [] + include Aws::Structure + end + + # @!attribute [rw] position_configuration_list + # A list of position configurations. + # @return [Array] + # + # @!attribute [rw] next_token + # The token to use to get the next set of results, or **null** if + # there are no additional results. + # @return [String] + # + class ListPositionConfigurationsResponse < Struct.new( + :position_configuration_list, + :next_token) + SENSITIVE = [] + include Aws::Structure + end + # @note When making an API call, you may pass ListQueuedMessagesRequest # data as a hash: # @@ -3501,7 +3689,7 @@ class ListWirelessGatewaysResponse < Struct.new( # } # # @!attribute [rw] gateway_eui_event_topic - # Enum to denote whether the gateway eui connection status event topic + # Enum to denote whether the gateway EUI connection status event topic # is enabled or disabled. # @return [String] # @@ -3573,6 +3761,11 @@ class LoRaWANConnectionStatusResourceTypeEventConfiguration < Struct.new( # fuota: 1, # multicast: 1, # clock_sync: 1, + # positioning: { + # clock_sync: 1, + # stream: 1, + # gnss: 1, + # }, # }, # } # @@ -4050,7 +4243,7 @@ class LoRaWANGetServiceProfileInfo < Struct.new( # } # # @!attribute [rw] dev_eui_event_topic - # Enum to denote whether the dev eui join event topic is enabled or + # Enum to denote whether the Dev EUI join event topic is enabled or # disabled. # @return [String] # @@ -4273,6 +4466,13 @@ class LoRaWANStartFuotaTask < Struct.new( # abp_v1_0_x: { # f_cnt_start: 1, # }, + # f_ports: { + # positioning: { + # clock_sync: 1, + # stream: 1, + # gnss: 1, + # }, + # }, # } # # @!attribute [rw] device_profile_id @@ -4291,11 +4491,16 @@ class LoRaWANStartFuotaTask < Struct.new( # ABP device object for update APIs for v1.0.x # @return [Types::UpdateAbpV1_0_x] # + # @!attribute [rw] f_ports + # FPorts object for the positioning information of the device. + # @return [Types::UpdateFPorts] + # class LoRaWANUpdateDevice < Struct.new( :device_profile_id, :service_profile_id, :abp_v1_1, - :abp_v1_0_x) + :abp_v1_0_x, + :f_ports) SENSITIVE = [] include Aws::Structure end @@ -4496,6 +4701,101 @@ class OtaaV1_1 < Struct.new( include Aws::Structure end + # The wrapper for a position configuration. + # + # @!attribute [rw] resource_identifier + # Resource identifier for the position configuration. + # @return [String] + # + # @!attribute [rw] resource_type + # Resource type of the resource for the position configuration. + # @return [String] + # + # @!attribute [rw] solvers + # The details of the positioning solver object used to compute the + # location. + # @return [Types::PositionSolverDetails] + # + # @!attribute [rw] 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. + # @return [String] + # + class PositionConfigurationItem < Struct.new( + :resource_identifier, + :resource_type, + :solvers, + :destination) + SENSITIVE = [] + include Aws::Structure + end + + # The wrapper for position solver configurations. + # + # @note When making an API call, you may pass PositionSolverConfigurations + # data as a hash: + # + # { + # semtech_gnss: { + # status: "Enabled", # required, accepts Enabled, Disabled + # fec: "ROSE", # required, accepts ROSE, NONE + # }, + # } + # + # @!attribute [rw] semtech_gnss + # The Semtech GNSS solver configuration object. + # @return [Types::SemtechGnssConfiguration] + # + class PositionSolverConfigurations < Struct.new( + :semtech_gnss) + SENSITIVE = [] + include Aws::Structure + end + + # The wrapper for position solver details. + # + # @!attribute [rw] semtech_gnss + # The Semtech GNSS solver object details. + # @return [Types::SemtechGnssDetail] + # + class PositionSolverDetails < Struct.new( + :semtech_gnss) + SENSITIVE = [] + include Aws::Structure + end + + # The FPorts for the position information. + # + # @note When making an API call, you may pass Positioning + # data as a hash: + # + # { + # clock_sync: 1, + # stream: 1, + # gnss: 1, + # } + # + # @!attribute [rw] clock_sync + # The Fport value. + # @return [Integer] + # + # @!attribute [rw] stream + # The Fport value. + # @return [Integer] + # + # @!attribute [rw] gnss + # The Fport value. + # @return [Integer] + # + class Positioning < Struct.new( + :clock_sync, + :stream, + :gnss) + SENSITIVE = [] + include Aws::Structure + end + # Proximity event configuration object for enabling and disabling # relevant topics. # @@ -4549,6 +4849,52 @@ class ProximityResourceTypeEventConfiguration < Struct.new( include Aws::Structure end + # @note When making an API call, you may pass PutPositionConfigurationRequest + # data as a hash: + # + # { + # resource_identifier: "PositionResourceIdentifier", # required + # resource_type: "WirelessDevice", # required, accepts WirelessDevice, WirelessGateway + # solvers: { + # semtech_gnss: { + # status: "Enabled", # required, accepts Enabled, Disabled + # fec: "ROSE", # required, accepts ROSE, NONE + # }, + # }, + # destination: "DestinationName", + # } + # + # @!attribute [rw] resource_identifier + # Resource identifier used to update the position configuration. + # @return [String] + # + # @!attribute [rw] resource_type + # Resource type of the resource for which you want to update the + # position configuration. + # @return [String] + # + # @!attribute [rw] solvers + # The positioning solvers used to update the position configuration of + # the resource. + # @return [Types::PositionSolverConfigurations] + # + # @!attribute [rw] 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. + # @return [String] + # + class PutPositionConfigurationRequest < Struct.new( + :resource_identifier, + :resource_type, + :solvers, + :destination) + SENSITIVE = [] + include Aws::Structure + end + + class PutPositionConfigurationResponse < Aws::EmptyStructure; end + # @note When making an API call, you may pass PutResourceLogLevelRequest # data as a hash: # @@ -4640,6 +4986,58 @@ class ResourceNotFoundException < Struct.new( include Aws::Structure end + # Information about the Semtech GNSS solver configuration. + # + # @note When making an API call, you may pass SemtechGnssConfiguration + # data as a hash: + # + # { + # status: "Enabled", # required, accepts Enabled, Disabled + # fec: "ROSE", # required, accepts ROSE, NONE + # } + # + # @!attribute [rw] status + # The status indicating whether the solver is enabled. + # @return [String] + # + # @!attribute [rw] fec + # Whether forward error correction is enabled. + # @return [String] + # + class SemtechGnssConfiguration < Struct.new( + :status, + :fec) + SENSITIVE = [] + include Aws::Structure + end + + # Details of the Semtech GNSS solver object. + # + # @!attribute [rw] provider + # The vendor of the solver object. + # @return [String] + # + # @!attribute [rw] type + # The type of positioning solver used. + # @return [String] + # + # @!attribute [rw] status + # The status indicating whether the solver is enabled. + # @return [String] + # + # @!attribute [rw] fec + # Whether forward error correction is enabled. + # @return [String] + # + class SemtechGnssDetail < Struct.new( + :provider, + :type, + :status, + :fec) + SENSITIVE = [] + include Aws::Structure + end + # @note When making an API call, you may pass SendDataToMulticastGroupRequest # data as a hash: # @@ -4923,8 +5321,8 @@ class SidewalkDeviceMetadata < Struct.new( include Aws::Structure end - # SidewalkEventNotificationConfigurations object Event configuration - # object for Sidewalk related event topics. + # `SidewalkEventNotificationConfigurations` object, which is the event + # configuration object for Sidewalk-related event topics. # # @note When making an API call, you may pass SidewalkEventNotificationConfigurations # data as a hash: @@ -5291,7 +5689,7 @@ class TooManyTagsException < Struct.new( # } # # @!attribute [rw] wireless_device_frame_info - # FrameInfo of your wireless device resources for the trace content. + # `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. # @return [String] @@ -5472,6 +5870,29 @@ class UpdateEventConfigurationByResourceTypesRequest < Struct.new( class UpdateEventConfigurationByResourceTypesResponse < Aws::EmptyStructure; end + # Object for updating the FPorts information. + # + # @note When making an API call, you may pass UpdateFPorts + # data as a hash: + # + # { + # positioning: { + # clock_sync: 1, + # stream: 1, + # gnss: 1, + # }, + # } + # + # @!attribute [rw] positioning + # Positioning FPorts for the ClockSync, Stream, and GNSS functions. + # @return [Types::Positioning] + # + class UpdateFPorts < Struct.new( + :positioning) + SENSITIVE = [] + include Aws::Structure + end + # @note When making an API call, you may pass UpdateFuotaTaskRequest # data as a hash: # @@ -5719,6 +6140,37 @@ class UpdatePartnerAccountRequest < Struct.new( class UpdatePartnerAccountResponse < Aws::EmptyStructure; end + # @note When making an API call, you may pass UpdatePositionRequest + # data as a hash: + # + # { + # resource_identifier: "PositionResourceIdentifier", # required + # resource_type: "WirelessDevice", # required, accepts WirelessDevice, WirelessGateway + # position: [1.0], # required + # } + # + # @!attribute [rw] resource_identifier + # Resource identifier of the resource for which position is updated. + # @return [String] + # + # @!attribute [rw] resource_type + # Resource type of the resource for which position is updated. + # @return [String] + # + # @!attribute [rw] position + # The position information of the resource. + # @return [Array] + # + class UpdatePositionRequest < Struct.new( + :resource_identifier, + :resource_type, + :position) + SENSITIVE = [] + include Aws::Structure + end + + class UpdatePositionResponse < Aws::EmptyStructure; end + # @note When making an API call, you may pass UpdateResourceEventConfigurationRequest # data as a hash: # @@ -5763,23 +6215,23 @@ class UpdatePartnerAccountResponse < Aws::EmptyStructure; end # # @!attribute [rw] partner_type # Partner type of the resource if the identifier type is - # PartnerAccountId + # `PartnerAccountId` # @return [String] # # @!attribute [rw] device_registration_state - # Event configuration for the device registration state event + # Event configuration for the device registration state event. # @return [Types::DeviceRegistrationStateEventConfiguration] # # @!attribute [rw] proximity - # Event configuration for the Proximity event + # Event configuration for the proximity event. # @return [Types::ProximityEventConfiguration] # # @!attribute [rw] join - # Event configuration for the join event + # Event configuration for the join event. # @return [Types::JoinEventConfiguration] # # @!attribute [rw] connection_status - # Event configuration for the connection status event + # Event configuration for the connection status event. # @return [Types::ConnectionStatusEventConfiguration] # class UpdateResourceEventConfigurationRequest < Struct.new( @@ -5813,6 +6265,13 @@ class UpdateResourceEventConfigurationResponse < Aws::EmptyStructure; end # abp_v1_0_x: { # f_cnt_start: 1, # }, + # f_ports: { + # positioning: { + # clock_sync: 1, + # stream: 1, + # gnss: 1, + # }, + # }, # }, # } # diff --git a/gems/aws-sdk-sagemaker/CHANGELOG.md b/gems/aws-sdk-sagemaker/CHANGELOG.md index f7620d3e9f8..7861242238b 100644 --- a/gems/aws-sdk-sagemaker/CHANGELOG.md +++ b/gems/aws-sdk-sagemaker/CHANGELOG.md @@ -1,6 +1,11 @@ Unreleased Changes ------------------ +1.130.0 (2022-07-07) +------------------ + +* Feature - 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 + 1.129.0 (2022-06-29) ------------------ diff --git a/gems/aws-sdk-sagemaker/VERSION b/gems/aws-sdk-sagemaker/VERSION index 365ef018e15..e4861cbfb71 100644 --- a/gems/aws-sdk-sagemaker/VERSION +++ b/gems/aws-sdk-sagemaker/VERSION @@ -1 +1 @@ -1.129.0 +1.130.0 diff --git a/gems/aws-sdk-sagemaker/lib/aws-sdk-sagemaker.rb b/gems/aws-sdk-sagemaker/lib/aws-sdk-sagemaker.rb index a5489700f0e..a41da5b47ab 100644 --- a/gems/aws-sdk-sagemaker/lib/aws-sdk-sagemaker.rb +++ b/gems/aws-sdk-sagemaker/lib/aws-sdk-sagemaker.rb @@ -49,6 +49,6 @@ # @!group service module Aws::SageMaker - GEM_VERSION = '1.129.0' + GEM_VERSION = '1.130.0' end diff --git a/gems/aws-sdk-sagemaker/lib/aws-sdk-sagemaker/client.rb b/gems/aws-sdk-sagemaker/lib/aws-sdk-sagemaker/client.rb index cf414e5d551..356851ecbc2 100644 --- a/gems/aws-sdk-sagemaker/lib/aws-sdk-sagemaker/client.rb +++ b/gems/aws-sdk-sagemaker/lib/aws-sdk-sagemaker/client.rb @@ -845,6 +845,7 @@ def create_action(params = {}, options = {}) # s3_uri: "S3Uri", # required # s3_data_distribution_type: "FullyReplicated", # accepts FullyReplicated, ShardedByS3Key # attribute_names: ["AttributeName"], + # instance_group_names: ["InstanceGroupName"], # }, # file_system_data_source: { # file_system_id: "FileSystemId", # required @@ -867,10 +868,17 @@ def create_action(params = {}, options = {}) # s3_output_path: "S3Uri", # required # }, # resource_config: { # required - # instance_type: "ml.m4.xlarge", # required, accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge - # instance_count: 1, # required + # instance_type: "ml.m4.xlarge", # accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge + # instance_count: 1, # volume_size_in_gb: 1, # required # volume_kms_key_id: "KmsKeyId", + # instance_groups: [ + # { + # instance_type: "ml.m4.xlarge", # required, accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge + # instance_count: 1, # required + # instance_group_name: "InstanceGroupName", # required + # }, + # ], # }, # stopping_condition: { # required # max_runtime_in_seconds: 1, @@ -2983,6 +2991,7 @@ def create_human_task_ui(params = {}, options = {}) # s3_uri: "S3Uri", # required # s3_data_distribution_type: "FullyReplicated", # accepts FullyReplicated, ShardedByS3Key # attribute_names: ["AttributeName"], + # instance_group_names: ["InstanceGroupName"], # }, # file_system_data_source: { # file_system_id: "FileSystemId", # required @@ -3009,10 +3018,17 @@ def create_human_task_ui(params = {}, options = {}) # s3_output_path: "S3Uri", # required # }, # resource_config: { # required - # instance_type: "ml.m4.xlarge", # required, accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge - # instance_count: 1, # required + # instance_type: "ml.m4.xlarge", # accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge + # instance_count: 1, # volume_size_in_gb: 1, # required # volume_kms_key_id: "KmsKeyId", + # instance_groups: [ + # { + # instance_type: "ml.m4.xlarge", # required, accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge + # instance_count: 1, # required + # instance_group_name: "InstanceGroupName", # required + # }, + # ], # }, # stopping_condition: { # required # max_runtime_in_seconds: 1, @@ -3084,6 +3100,7 @@ def create_human_task_ui(params = {}, options = {}) # s3_uri: "S3Uri", # required # s3_data_distribution_type: "FullyReplicated", # accepts FullyReplicated, ShardedByS3Key # attribute_names: ["AttributeName"], + # instance_group_names: ["InstanceGroupName"], # }, # file_system_data_source: { # file_system_id: "FileSystemId", # required @@ -3110,10 +3127,17 @@ def create_human_task_ui(params = {}, options = {}) # s3_output_path: "S3Uri", # required # }, # resource_config: { # required - # instance_type: "ml.m4.xlarge", # required, accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge - # instance_count: 1, # required + # instance_type: "ml.m4.xlarge", # accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge + # instance_count: 1, # volume_size_in_gb: 1, # required # volume_kms_key_id: "KmsKeyId", + # instance_groups: [ + # { + # instance_type: "ml.m4.xlarge", # required, accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge + # instance_count: 1, # required + # instance_group_name: "InstanceGroupName", # required + # }, + # ], # }, # stopping_condition: { # required # max_runtime_in_seconds: 1, @@ -5923,6 +5947,7 @@ def create_studio_lifecycle_config(params = {}, options = {}) # s3_uri: "S3Uri", # required # s3_data_distribution_type: "FullyReplicated", # accepts FullyReplicated, ShardedByS3Key # attribute_names: ["AttributeName"], + # instance_group_names: ["InstanceGroupName"], # }, # file_system_data_source: { # file_system_id: "FileSystemId", # required @@ -5945,10 +5970,17 @@ def create_studio_lifecycle_config(params = {}, options = {}) # s3_output_path: "S3Uri", # required # }, # resource_config: { # required - # instance_type: "ml.m4.xlarge", # required, accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge - # instance_count: 1, # required + # instance_type: "ml.m4.xlarge", # accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge + # instance_count: 1, # volume_size_in_gb: 1, # required # volume_kms_key_id: "KmsKeyId", + # instance_groups: [ + # { + # instance_type: "ml.m4.xlarge", # required, accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge + # instance_count: 1, # required + # instance_group_name: "InstanceGroupName", # required + # }, + # ], # }, # vpc_config: { # security_group_ids: ["SecurityGroupId"], # required @@ -8044,6 +8076,8 @@ def describe_action(params = {}, options = {}) # resp.validation_specification.validation_profiles[0].training_job_definition.input_data_config[0].data_source.s3_data_source.s3_data_distribution_type #=> String, one of "FullyReplicated", "ShardedByS3Key" # resp.validation_specification.validation_profiles[0].training_job_definition.input_data_config[0].data_source.s3_data_source.attribute_names #=> Array # resp.validation_specification.validation_profiles[0].training_job_definition.input_data_config[0].data_source.s3_data_source.attribute_names[0] #=> String + # resp.validation_specification.validation_profiles[0].training_job_definition.input_data_config[0].data_source.s3_data_source.instance_group_names #=> Array + # resp.validation_specification.validation_profiles[0].training_job_definition.input_data_config[0].data_source.s3_data_source.instance_group_names[0] #=> String # resp.validation_specification.validation_profiles[0].training_job_definition.input_data_config[0].data_source.file_system_data_source.file_system_id #=> String # resp.validation_specification.validation_profiles[0].training_job_definition.input_data_config[0].data_source.file_system_data_source.file_system_access_mode #=> String, one of "rw", "ro" # resp.validation_specification.validation_profiles[0].training_job_definition.input_data_config[0].data_source.file_system_data_source.file_system_type #=> String, one of "EFS", "FSxLustre" @@ -8059,6 +8093,10 @@ def describe_action(params = {}, options = {}) # resp.validation_specification.validation_profiles[0].training_job_definition.resource_config.instance_count #=> Integer # resp.validation_specification.validation_profiles[0].training_job_definition.resource_config.volume_size_in_gb #=> Integer # resp.validation_specification.validation_profiles[0].training_job_definition.resource_config.volume_kms_key_id #=> String + # resp.validation_specification.validation_profiles[0].training_job_definition.resource_config.instance_groups #=> Array + # resp.validation_specification.validation_profiles[0].training_job_definition.resource_config.instance_groups[0].instance_type #=> String, one of "ml.m4.xlarge", "ml.m4.2xlarge", "ml.m4.4xlarge", "ml.m4.10xlarge", "ml.m4.16xlarge", "ml.g4dn.xlarge", "ml.g4dn.2xlarge", "ml.g4dn.4xlarge", "ml.g4dn.8xlarge", "ml.g4dn.12xlarge", "ml.g4dn.16xlarge", "ml.m5.large", "ml.m5.xlarge", "ml.m5.2xlarge", "ml.m5.4xlarge", "ml.m5.12xlarge", "ml.m5.24xlarge", "ml.c4.xlarge", "ml.c4.2xlarge", "ml.c4.4xlarge", "ml.c4.8xlarge", "ml.p2.xlarge", "ml.p2.8xlarge", "ml.p2.16xlarge", "ml.p3.2xlarge", "ml.p3.8xlarge", "ml.p3.16xlarge", "ml.p3dn.24xlarge", "ml.p4d.24xlarge", "ml.c5.xlarge", "ml.c5.2xlarge", "ml.c5.4xlarge", "ml.c5.9xlarge", "ml.c5.18xlarge", "ml.c5n.xlarge", "ml.c5n.2xlarge", "ml.c5n.4xlarge", "ml.c5n.9xlarge", "ml.c5n.18xlarge", "ml.g5.xlarge", "ml.g5.2xlarge", "ml.g5.4xlarge", "ml.g5.8xlarge", "ml.g5.16xlarge", "ml.g5.12xlarge", "ml.g5.24xlarge", "ml.g5.48xlarge" + # resp.validation_specification.validation_profiles[0].training_job_definition.resource_config.instance_groups[0].instance_count #=> Integer + # resp.validation_specification.validation_profiles[0].training_job_definition.resource_config.instance_groups[0].instance_group_name #=> String # resp.validation_specification.validation_profiles[0].training_job_definition.stopping_condition.max_runtime_in_seconds #=> Integer # resp.validation_specification.validation_profiles[0].training_job_definition.stopping_condition.max_wait_time_in_seconds #=> Integer # resp.validation_specification.validation_profiles[0].transform_job_definition.max_concurrent_transforms #=> Integer @@ -9439,6 +9477,8 @@ def describe_human_task_ui(params = {}, options = {}) # resp.training_job_definition.input_data_config[0].data_source.s3_data_source.s3_data_distribution_type #=> String, one of "FullyReplicated", "ShardedByS3Key" # resp.training_job_definition.input_data_config[0].data_source.s3_data_source.attribute_names #=> Array # resp.training_job_definition.input_data_config[0].data_source.s3_data_source.attribute_names[0] #=> String + # resp.training_job_definition.input_data_config[0].data_source.s3_data_source.instance_group_names #=> Array + # resp.training_job_definition.input_data_config[0].data_source.s3_data_source.instance_group_names[0] #=> String # resp.training_job_definition.input_data_config[0].data_source.file_system_data_source.file_system_id #=> String # resp.training_job_definition.input_data_config[0].data_source.file_system_data_source.file_system_access_mode #=> String, one of "rw", "ro" # resp.training_job_definition.input_data_config[0].data_source.file_system_data_source.file_system_type #=> String, one of "EFS", "FSxLustre" @@ -9458,6 +9498,10 @@ def describe_human_task_ui(params = {}, options = {}) # resp.training_job_definition.resource_config.instance_count #=> Integer # resp.training_job_definition.resource_config.volume_size_in_gb #=> Integer # resp.training_job_definition.resource_config.volume_kms_key_id #=> String + # resp.training_job_definition.resource_config.instance_groups #=> Array + # resp.training_job_definition.resource_config.instance_groups[0].instance_type #=> String, one of "ml.m4.xlarge", "ml.m4.2xlarge", "ml.m4.4xlarge", "ml.m4.10xlarge", "ml.m4.16xlarge", "ml.g4dn.xlarge", "ml.g4dn.2xlarge", "ml.g4dn.4xlarge", "ml.g4dn.8xlarge", "ml.g4dn.12xlarge", "ml.g4dn.16xlarge", "ml.m5.large", "ml.m5.xlarge", "ml.m5.2xlarge", "ml.m5.4xlarge", "ml.m5.12xlarge", "ml.m5.24xlarge", "ml.c4.xlarge", "ml.c4.2xlarge", "ml.c4.4xlarge", "ml.c4.8xlarge", "ml.p2.xlarge", "ml.p2.8xlarge", "ml.p2.16xlarge", "ml.p3.2xlarge", "ml.p3.8xlarge", "ml.p3.16xlarge", "ml.p3dn.24xlarge", "ml.p4d.24xlarge", "ml.c5.xlarge", "ml.c5.2xlarge", "ml.c5.4xlarge", "ml.c5.9xlarge", "ml.c5.18xlarge", "ml.c5n.xlarge", "ml.c5n.2xlarge", "ml.c5n.4xlarge", "ml.c5n.9xlarge", "ml.c5n.18xlarge", "ml.g5.xlarge", "ml.g5.2xlarge", "ml.g5.4xlarge", "ml.g5.8xlarge", "ml.g5.16xlarge", "ml.g5.12xlarge", "ml.g5.24xlarge", "ml.g5.48xlarge" + # resp.training_job_definition.resource_config.instance_groups[0].instance_count #=> Integer + # resp.training_job_definition.resource_config.instance_groups[0].instance_group_name #=> String # resp.training_job_definition.stopping_condition.max_runtime_in_seconds #=> Integer # resp.training_job_definition.stopping_condition.max_wait_time_in_seconds #=> Integer # resp.training_job_definition.enable_network_isolation #=> Boolean @@ -9500,6 +9544,8 @@ def describe_human_task_ui(params = {}, options = {}) # resp.training_job_definitions[0].input_data_config[0].data_source.s3_data_source.s3_data_distribution_type #=> String, one of "FullyReplicated", "ShardedByS3Key" # resp.training_job_definitions[0].input_data_config[0].data_source.s3_data_source.attribute_names #=> Array # resp.training_job_definitions[0].input_data_config[0].data_source.s3_data_source.attribute_names[0] #=> String + # resp.training_job_definitions[0].input_data_config[0].data_source.s3_data_source.instance_group_names #=> Array + # resp.training_job_definitions[0].input_data_config[0].data_source.s3_data_source.instance_group_names[0] #=> String # resp.training_job_definitions[0].input_data_config[0].data_source.file_system_data_source.file_system_id #=> String # resp.training_job_definitions[0].input_data_config[0].data_source.file_system_data_source.file_system_access_mode #=> String, one of "rw", "ro" # resp.training_job_definitions[0].input_data_config[0].data_source.file_system_data_source.file_system_type #=> String, one of "EFS", "FSxLustre" @@ -9519,6 +9565,10 @@ def describe_human_task_ui(params = {}, options = {}) # resp.training_job_definitions[0].resource_config.instance_count #=> Integer # resp.training_job_definitions[0].resource_config.volume_size_in_gb #=> Integer # resp.training_job_definitions[0].resource_config.volume_kms_key_id #=> String + # resp.training_job_definitions[0].resource_config.instance_groups #=> Array + # resp.training_job_definitions[0].resource_config.instance_groups[0].instance_type #=> String, one of "ml.m4.xlarge", "ml.m4.2xlarge", "ml.m4.4xlarge", "ml.m4.10xlarge", "ml.m4.16xlarge", "ml.g4dn.xlarge", "ml.g4dn.2xlarge", "ml.g4dn.4xlarge", "ml.g4dn.8xlarge", "ml.g4dn.12xlarge", "ml.g4dn.16xlarge", "ml.m5.large", "ml.m5.xlarge", "ml.m5.2xlarge", "ml.m5.4xlarge", "ml.m5.12xlarge", "ml.m5.24xlarge", "ml.c4.xlarge", "ml.c4.2xlarge", "ml.c4.4xlarge", "ml.c4.8xlarge", "ml.p2.xlarge", "ml.p2.8xlarge", "ml.p2.16xlarge", "ml.p3.2xlarge", "ml.p3.8xlarge", "ml.p3.16xlarge", "ml.p3dn.24xlarge", "ml.p4d.24xlarge", "ml.c5.xlarge", "ml.c5.2xlarge", "ml.c5.4xlarge", "ml.c5.9xlarge", "ml.c5.18xlarge", "ml.c5n.xlarge", "ml.c5n.2xlarge", "ml.c5n.4xlarge", "ml.c5n.9xlarge", "ml.c5n.18xlarge", "ml.g5.xlarge", "ml.g5.2xlarge", "ml.g5.4xlarge", "ml.g5.8xlarge", "ml.g5.16xlarge", "ml.g5.12xlarge", "ml.g5.24xlarge", "ml.g5.48xlarge" + # resp.training_job_definitions[0].resource_config.instance_groups[0].instance_count #=> Integer + # resp.training_job_definitions[0].resource_config.instance_groups[0].instance_group_name #=> String # resp.training_job_definitions[0].stopping_condition.max_runtime_in_seconds #=> Integer # resp.training_job_definitions[0].stopping_condition.max_wait_time_in_seconds #=> Integer # resp.training_job_definitions[0].enable_network_isolation #=> Boolean @@ -11182,6 +11232,8 @@ def describe_subscribed_workteam(params = {}, options = {}) # resp.input_data_config[0].data_source.s3_data_source.s3_data_distribution_type #=> String, one of "FullyReplicated", "ShardedByS3Key" # resp.input_data_config[0].data_source.s3_data_source.attribute_names #=> Array # resp.input_data_config[0].data_source.s3_data_source.attribute_names[0] #=> String + # resp.input_data_config[0].data_source.s3_data_source.instance_group_names #=> Array + # resp.input_data_config[0].data_source.s3_data_source.instance_group_names[0] #=> String # resp.input_data_config[0].data_source.file_system_data_source.file_system_id #=> String # resp.input_data_config[0].data_source.file_system_data_source.file_system_access_mode #=> String, one of "rw", "ro" # resp.input_data_config[0].data_source.file_system_data_source.file_system_type #=> String, one of "EFS", "FSxLustre" @@ -11197,6 +11249,10 @@ def describe_subscribed_workteam(params = {}, options = {}) # resp.resource_config.instance_count #=> Integer # resp.resource_config.volume_size_in_gb #=> Integer # resp.resource_config.volume_kms_key_id #=> String + # resp.resource_config.instance_groups #=> Array + # resp.resource_config.instance_groups[0].instance_type #=> String, one of "ml.m4.xlarge", "ml.m4.2xlarge", "ml.m4.4xlarge", "ml.m4.10xlarge", "ml.m4.16xlarge", "ml.g4dn.xlarge", "ml.g4dn.2xlarge", "ml.g4dn.4xlarge", "ml.g4dn.8xlarge", "ml.g4dn.12xlarge", "ml.g4dn.16xlarge", "ml.m5.large", "ml.m5.xlarge", "ml.m5.2xlarge", "ml.m5.4xlarge", "ml.m5.12xlarge", "ml.m5.24xlarge", "ml.c4.xlarge", "ml.c4.2xlarge", "ml.c4.4xlarge", "ml.c4.8xlarge", "ml.p2.xlarge", "ml.p2.8xlarge", "ml.p2.16xlarge", "ml.p3.2xlarge", "ml.p3.8xlarge", "ml.p3.16xlarge", "ml.p3dn.24xlarge", "ml.p4d.24xlarge", "ml.c5.xlarge", "ml.c5.2xlarge", "ml.c5.4xlarge", "ml.c5.9xlarge", "ml.c5.18xlarge", "ml.c5n.xlarge", "ml.c5n.2xlarge", "ml.c5n.4xlarge", "ml.c5n.9xlarge", "ml.c5n.18xlarge", "ml.g5.xlarge", "ml.g5.2xlarge", "ml.g5.4xlarge", "ml.g5.8xlarge", "ml.g5.16xlarge", "ml.g5.12xlarge", "ml.g5.24xlarge", "ml.g5.48xlarge" + # resp.resource_config.instance_groups[0].instance_count #=> Integer + # resp.resource_config.instance_groups[0].instance_group_name #=> String # resp.vpc_config.security_group_ids #=> Array # resp.vpc_config.security_group_ids[0] #=> String # resp.vpc_config.subnets #=> Array @@ -16662,6 +16718,8 @@ def retry_pipeline_execution(params = {}, options = {}) # resp.results[0].training_job.input_data_config[0].data_source.s3_data_source.s3_data_distribution_type #=> String, one of "FullyReplicated", "ShardedByS3Key" # resp.results[0].training_job.input_data_config[0].data_source.s3_data_source.attribute_names #=> Array # resp.results[0].training_job.input_data_config[0].data_source.s3_data_source.attribute_names[0] #=> String + # resp.results[0].training_job.input_data_config[0].data_source.s3_data_source.instance_group_names #=> Array + # resp.results[0].training_job.input_data_config[0].data_source.s3_data_source.instance_group_names[0] #=> String # resp.results[0].training_job.input_data_config[0].data_source.file_system_data_source.file_system_id #=> String # resp.results[0].training_job.input_data_config[0].data_source.file_system_data_source.file_system_access_mode #=> String, one of "rw", "ro" # resp.results[0].training_job.input_data_config[0].data_source.file_system_data_source.file_system_type #=> String, one of "EFS", "FSxLustre" @@ -16677,6 +16735,10 @@ def retry_pipeline_execution(params = {}, options = {}) # resp.results[0].training_job.resource_config.instance_count #=> Integer # resp.results[0].training_job.resource_config.volume_size_in_gb #=> Integer # resp.results[0].training_job.resource_config.volume_kms_key_id #=> String + # resp.results[0].training_job.resource_config.instance_groups #=> Array + # resp.results[0].training_job.resource_config.instance_groups[0].instance_type #=> String, one of "ml.m4.xlarge", "ml.m4.2xlarge", "ml.m4.4xlarge", "ml.m4.10xlarge", "ml.m4.16xlarge", "ml.g4dn.xlarge", "ml.g4dn.2xlarge", "ml.g4dn.4xlarge", "ml.g4dn.8xlarge", "ml.g4dn.12xlarge", "ml.g4dn.16xlarge", "ml.m5.large", "ml.m5.xlarge", "ml.m5.2xlarge", "ml.m5.4xlarge", "ml.m5.12xlarge", "ml.m5.24xlarge", "ml.c4.xlarge", "ml.c4.2xlarge", "ml.c4.4xlarge", "ml.c4.8xlarge", "ml.p2.xlarge", "ml.p2.8xlarge", "ml.p2.16xlarge", "ml.p3.2xlarge", "ml.p3.8xlarge", "ml.p3.16xlarge", "ml.p3dn.24xlarge", "ml.p4d.24xlarge", "ml.c5.xlarge", "ml.c5.2xlarge", "ml.c5.4xlarge", "ml.c5.9xlarge", "ml.c5.18xlarge", "ml.c5n.xlarge", "ml.c5n.2xlarge", "ml.c5n.4xlarge", "ml.c5n.9xlarge", "ml.c5n.18xlarge", "ml.g5.xlarge", "ml.g5.2xlarge", "ml.g5.4xlarge", "ml.g5.8xlarge", "ml.g5.16xlarge", "ml.g5.12xlarge", "ml.g5.24xlarge", "ml.g5.48xlarge" + # resp.results[0].training_job.resource_config.instance_groups[0].instance_count #=> Integer + # resp.results[0].training_job.resource_config.instance_groups[0].instance_group_name #=> String # resp.results[0].training_job.vpc_config.security_group_ids #=> Array # resp.results[0].training_job.vpc_config.security_group_ids[0] #=> String # resp.results[0].training_job.vpc_config.subnets #=> Array @@ -16851,6 +16913,8 @@ def retry_pipeline_execution(params = {}, options = {}) # resp.results[0].trial_component.source_detail.training_job.input_data_config[0].data_source.s3_data_source.s3_data_distribution_type #=> String, one of "FullyReplicated", "ShardedByS3Key" # resp.results[0].trial_component.source_detail.training_job.input_data_config[0].data_source.s3_data_source.attribute_names #=> Array # resp.results[0].trial_component.source_detail.training_job.input_data_config[0].data_source.s3_data_source.attribute_names[0] #=> String + # resp.results[0].trial_component.source_detail.training_job.input_data_config[0].data_source.s3_data_source.instance_group_names #=> Array + # resp.results[0].trial_component.source_detail.training_job.input_data_config[0].data_source.s3_data_source.instance_group_names[0] #=> String # resp.results[0].trial_component.source_detail.training_job.input_data_config[0].data_source.file_system_data_source.file_system_id #=> String # resp.results[0].trial_component.source_detail.training_job.input_data_config[0].data_source.file_system_data_source.file_system_access_mode #=> String, one of "rw", "ro" # resp.results[0].trial_component.source_detail.training_job.input_data_config[0].data_source.file_system_data_source.file_system_type #=> String, one of "EFS", "FSxLustre" @@ -16866,6 +16930,10 @@ def retry_pipeline_execution(params = {}, options = {}) # resp.results[0].trial_component.source_detail.training_job.resource_config.instance_count #=> Integer # resp.results[0].trial_component.source_detail.training_job.resource_config.volume_size_in_gb #=> Integer # resp.results[0].trial_component.source_detail.training_job.resource_config.volume_kms_key_id #=> String + # resp.results[0].trial_component.source_detail.training_job.resource_config.instance_groups #=> Array + # resp.results[0].trial_component.source_detail.training_job.resource_config.instance_groups[0].instance_type #=> String, one of "ml.m4.xlarge", "ml.m4.2xlarge", "ml.m4.4xlarge", "ml.m4.10xlarge", "ml.m4.16xlarge", "ml.g4dn.xlarge", "ml.g4dn.2xlarge", "ml.g4dn.4xlarge", "ml.g4dn.8xlarge", "ml.g4dn.12xlarge", "ml.g4dn.16xlarge", "ml.m5.large", "ml.m5.xlarge", "ml.m5.2xlarge", "ml.m5.4xlarge", "ml.m5.12xlarge", "ml.m5.24xlarge", "ml.c4.xlarge", "ml.c4.2xlarge", "ml.c4.4xlarge", "ml.c4.8xlarge", "ml.p2.xlarge", "ml.p2.8xlarge", "ml.p2.16xlarge", "ml.p3.2xlarge", "ml.p3.8xlarge", "ml.p3.16xlarge", "ml.p3dn.24xlarge", "ml.p4d.24xlarge", "ml.c5.xlarge", "ml.c5.2xlarge", "ml.c5.4xlarge", "ml.c5.9xlarge", "ml.c5.18xlarge", "ml.c5n.xlarge", "ml.c5n.2xlarge", "ml.c5n.4xlarge", "ml.c5n.9xlarge", "ml.c5n.18xlarge", "ml.g5.xlarge", "ml.g5.2xlarge", "ml.g5.4xlarge", "ml.g5.8xlarge", "ml.g5.16xlarge", "ml.g5.12xlarge", "ml.g5.24xlarge", "ml.g5.48xlarge" + # resp.results[0].trial_component.source_detail.training_job.resource_config.instance_groups[0].instance_count #=> Integer + # resp.results[0].trial_component.source_detail.training_job.resource_config.instance_groups[0].instance_group_name #=> String # resp.results[0].trial_component.source_detail.training_job.vpc_config.security_group_ids #=> Array # resp.results[0].trial_component.source_detail.training_job.vpc_config.security_group_ids[0] #=> String # resp.results[0].trial_component.source_detail.training_job.vpc_config.subnets #=> Array @@ -19778,7 +19846,7 @@ def build_request(operation_name, params = {}) params: params, config: config) context[:gem_name] = 'aws-sdk-sagemaker' - context[:gem_version] = '1.129.0' + context[:gem_version] = '1.130.0' Seahorse::Client::Request.new(handlers, context) end diff --git a/gems/aws-sdk-sagemaker/lib/aws-sdk-sagemaker/client_api.rb b/gems/aws-sdk-sagemaker/lib/aws-sdk-sagemaker/client_api.rb index a571a39d9bc..acb55fdcbd9 100644 --- a/gems/aws-sdk-sagemaker/lib/aws-sdk-sagemaker/client_api.rb +++ b/gems/aws-sdk-sagemaker/lib/aws-sdk-sagemaker/client_api.rb @@ -770,6 +770,10 @@ module ClientApi InputDataConfig = Shapes::ListShape.new(name: 'InputDataConfig') InputMode = Shapes::StringShape.new(name: 'InputMode') InputModes = Shapes::ListShape.new(name: 'InputModes') + InstanceGroup = Shapes::StructureShape.new(name: 'InstanceGroup') + InstanceGroupName = Shapes::StringShape.new(name: 'InstanceGroupName') + InstanceGroupNames = Shapes::ListShape.new(name: 'InstanceGroupNames') + InstanceGroups = Shapes::ListShape.new(name: 'InstanceGroups') InstanceMetadataServiceConfiguration = Shapes::StructureShape.new(name: 'InstanceMetadataServiceConfiguration') InstanceType = Shapes::StringShape.new(name: 'InstanceType') Integer = Shapes::IntegerShape.new(name: 'Integer') @@ -4458,6 +4462,15 @@ module ClientApi InputModes.member = Shapes::ShapeRef.new(shape: TrainingInputMode) + InstanceGroup.add_member(:instance_type, Shapes::ShapeRef.new(shape: TrainingInstanceType, required: true, location_name: "InstanceType")) + InstanceGroup.add_member(:instance_count, Shapes::ShapeRef.new(shape: TrainingInstanceCount, required: true, location_name: "InstanceCount")) + InstanceGroup.add_member(:instance_group_name, Shapes::ShapeRef.new(shape: InstanceGroupName, required: true, location_name: "InstanceGroupName")) + InstanceGroup.struct_class = Types::InstanceGroup + + InstanceGroupNames.member = Shapes::ShapeRef.new(shape: InstanceGroupName) + + InstanceGroups.member = Shapes::ShapeRef.new(shape: InstanceGroup) + InstanceMetadataServiceConfiguration.add_member(:minimum_instance_metadata_service_version, Shapes::ShapeRef.new(shape: MinimumInstanceMetadataServiceVersion, required: true, location_name: "MinimumInstanceMetadataServiceVersion")) InstanceMetadataServiceConfiguration.struct_class = Types::InstanceMetadataServiceConfiguration @@ -6377,10 +6390,11 @@ module ClientApi ResolvedAttributes.add_member(:completion_criteria, Shapes::ShapeRef.new(shape: AutoMLJobCompletionCriteria, location_name: "CompletionCriteria")) ResolvedAttributes.struct_class = Types::ResolvedAttributes - ResourceConfig.add_member(:instance_type, Shapes::ShapeRef.new(shape: TrainingInstanceType, required: true, location_name: "InstanceType")) - ResourceConfig.add_member(:instance_count, Shapes::ShapeRef.new(shape: TrainingInstanceCount, required: true, location_name: "InstanceCount")) + ResourceConfig.add_member(:instance_type, Shapes::ShapeRef.new(shape: TrainingInstanceType, location_name: "InstanceType")) + ResourceConfig.add_member(:instance_count, Shapes::ShapeRef.new(shape: TrainingInstanceCount, location_name: "InstanceCount")) ResourceConfig.add_member(:volume_size_in_gb, Shapes::ShapeRef.new(shape: VolumeSizeInGB, required: true, location_name: "VolumeSizeInGB")) ResourceConfig.add_member(:volume_kms_key_id, Shapes::ShapeRef.new(shape: KmsKeyId, location_name: "VolumeKmsKeyId")) + ResourceConfig.add_member(:instance_groups, Shapes::ShapeRef.new(shape: InstanceGroups, location_name: "InstanceGroups")) ResourceConfig.struct_class = Types::ResourceConfig ResourceInUse.add_member(:message, Shapes::ShapeRef.new(shape: FailureReason, location_name: "Message")) @@ -6425,6 +6439,7 @@ module ClientApi S3DataSource.add_member(:s3_uri, Shapes::ShapeRef.new(shape: S3Uri, required: true, location_name: "S3Uri")) S3DataSource.add_member(:s3_data_distribution_type, Shapes::ShapeRef.new(shape: S3DataDistribution, location_name: "S3DataDistributionType")) S3DataSource.add_member(:attribute_names, Shapes::ShapeRef.new(shape: AttributeNames, location_name: "AttributeNames")) + S3DataSource.add_member(:instance_group_names, Shapes::ShapeRef.new(shape: InstanceGroupNames, location_name: "InstanceGroupNames")) S3DataSource.struct_class = Types::S3DataSource S3StorageConfig.add_member(:s3_uri, Shapes::ShapeRef.new(shape: S3Uri, required: true, location_name: "S3Uri")) diff --git a/gems/aws-sdk-sagemaker/lib/aws-sdk-sagemaker/types.rb b/gems/aws-sdk-sagemaker/lib/aws-sdk-sagemaker/types.rb index e359b3b6b01..2899b24843d 100644 --- a/gems/aws-sdk-sagemaker/lib/aws-sdk-sagemaker/types.rb +++ b/gems/aws-sdk-sagemaker/lib/aws-sdk-sagemaker/types.rb @@ -588,6 +588,7 @@ class AlgorithmSummary < Struct.new( # s3_uri: "S3Uri", # required # s3_data_distribution_type: "FullyReplicated", # accepts FullyReplicated, ShardedByS3Key # attribute_names: ["AttributeName"], + # instance_group_names: ["InstanceGroupName"], # }, # file_system_data_source: { # file_system_id: "FileSystemId", # required @@ -610,10 +611,17 @@ class AlgorithmSummary < Struct.new( # s3_output_path: "S3Uri", # required # }, # resource_config: { # required - # instance_type: "ml.m4.xlarge", # required, accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge - # instance_count: 1, # required + # instance_type: "ml.m4.xlarge", # accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge + # instance_count: 1, # volume_size_in_gb: 1, # required # volume_kms_key_id: "KmsKeyId", + # instance_groups: [ + # { + # instance_type: "ml.m4.xlarge", # required, accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge + # instance_count: 1, # required + # instance_group_name: "InstanceGroupName", # required + # }, + # ], # }, # stopping_condition: { # required # max_runtime_in_seconds: 1, @@ -702,6 +710,7 @@ class AlgorithmValidationProfile < Struct.new( # s3_uri: "S3Uri", # required # s3_data_distribution_type: "FullyReplicated", # accepts FullyReplicated, ShardedByS3Key # attribute_names: ["AttributeName"], + # instance_group_names: ["InstanceGroupName"], # }, # file_system_data_source: { # file_system_id: "FileSystemId", # required @@ -724,10 +733,17 @@ class AlgorithmValidationProfile < Struct.new( # s3_output_path: "S3Uri", # required # }, # resource_config: { # required - # instance_type: "ml.m4.xlarge", # required, accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge - # instance_count: 1, # required + # instance_type: "ml.m4.xlarge", # accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge + # instance_count: 1, # volume_size_in_gb: 1, # required # volume_kms_key_id: "KmsKeyId", + # instance_groups: [ + # { + # instance_type: "ml.m4.xlarge", # required, accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge + # instance_count: 1, # required + # instance_group_name: "InstanceGroupName", # required + # }, + # ], # }, # stopping_condition: { # required # max_runtime_in_seconds: 1, @@ -3114,6 +3130,7 @@ class CategoricalParameterRangeSpecification < Struct.new( # s3_uri: "S3Uri", # required # s3_data_distribution_type: "FullyReplicated", # accepts FullyReplicated, ShardedByS3Key # attribute_names: ["AttributeName"], + # instance_group_names: ["InstanceGroupName"], # }, # file_system_data_source: { # file_system_id: "FileSystemId", # required @@ -4122,6 +4139,7 @@ class CreateActionResponse < Struct.new( # s3_uri: "S3Uri", # required # s3_data_distribution_type: "FullyReplicated", # accepts FullyReplicated, ShardedByS3Key # attribute_names: ["AttributeName"], + # instance_group_names: ["InstanceGroupName"], # }, # file_system_data_source: { # file_system_id: "FileSystemId", # required @@ -4144,10 +4162,17 @@ class CreateActionResponse < Struct.new( # s3_output_path: "S3Uri", # required # }, # resource_config: { # required - # instance_type: "ml.m4.xlarge", # required, accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge - # instance_count: 1, # required + # instance_type: "ml.m4.xlarge", # accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge + # instance_count: 1, # volume_size_in_gb: 1, # required # volume_kms_key_id: "KmsKeyId", + # instance_groups: [ + # { + # instance_type: "ml.m4.xlarge", # required, accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge + # instance_count: 1, # required + # instance_group_name: "InstanceGroupName", # required + # }, + # ], # }, # stopping_condition: { # required # max_runtime_in_seconds: 1, @@ -6204,6 +6229,7 @@ class CreateHumanTaskUiResponse < Struct.new( # s3_uri: "S3Uri", # required # s3_data_distribution_type: "FullyReplicated", # accepts FullyReplicated, ShardedByS3Key # attribute_names: ["AttributeName"], + # instance_group_names: ["InstanceGroupName"], # }, # file_system_data_source: { # file_system_id: "FileSystemId", # required @@ -6230,10 +6256,17 @@ class CreateHumanTaskUiResponse < Struct.new( # s3_output_path: "S3Uri", # required # }, # resource_config: { # required - # instance_type: "ml.m4.xlarge", # required, accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge - # instance_count: 1, # required + # instance_type: "ml.m4.xlarge", # accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge + # instance_count: 1, # volume_size_in_gb: 1, # required # volume_kms_key_id: "KmsKeyId", + # instance_groups: [ + # { + # instance_type: "ml.m4.xlarge", # required, accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge + # instance_count: 1, # required + # instance_group_name: "InstanceGroupName", # required + # }, + # ], # }, # stopping_condition: { # required # max_runtime_in_seconds: 1, @@ -6305,6 +6338,7 @@ class CreateHumanTaskUiResponse < Struct.new( # s3_uri: "S3Uri", # required # s3_data_distribution_type: "FullyReplicated", # accepts FullyReplicated, ShardedByS3Key # attribute_names: ["AttributeName"], + # instance_group_names: ["InstanceGroupName"], # }, # file_system_data_source: { # file_system_id: "FileSystemId", # required @@ -6331,10 +6365,17 @@ class CreateHumanTaskUiResponse < Struct.new( # s3_output_path: "S3Uri", # required # }, # resource_config: { # required - # instance_type: "ml.m4.xlarge", # required, accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge - # instance_count: 1, # required + # instance_type: "ml.m4.xlarge", # accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge + # instance_count: 1, # volume_size_in_gb: 1, # required # volume_kms_key_id: "KmsKeyId", + # instance_groups: [ + # { + # instance_type: "ml.m4.xlarge", # required, accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge + # instance_count: 1, # required + # instance_group_name: "InstanceGroupName", # required + # }, + # ], # }, # stopping_condition: { # required # max_runtime_in_seconds: 1, @@ -9042,6 +9083,7 @@ class CreateStudioLifecycleConfigResponse < Struct.new( # s3_uri: "S3Uri", # required # s3_data_distribution_type: "FullyReplicated", # accepts FullyReplicated, ShardedByS3Key # attribute_names: ["AttributeName"], + # instance_group_names: ["InstanceGroupName"], # }, # file_system_data_source: { # file_system_id: "FileSystemId", # required @@ -9064,10 +9106,17 @@ class CreateStudioLifecycleConfigResponse < Struct.new( # s3_output_path: "S3Uri", # required # }, # resource_config: { # required - # instance_type: "ml.m4.xlarge", # required, accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge - # instance_count: 1, # required + # instance_type: "ml.m4.xlarge", # accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge + # instance_count: 1, # volume_size_in_gb: 1, # required # volume_kms_key_id: "KmsKeyId", + # instance_groups: [ + # { + # instance_type: "ml.m4.xlarge", # required, accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge + # instance_count: 1, # required + # instance_group_name: "InstanceGroupName", # required + # }, + # ], # }, # vpc_config: { # security_group_ids: ["SecurityGroupId"], # required @@ -10602,6 +10651,7 @@ class DataQualityJobInput < Struct.new( # s3_uri: "S3Uri", # required # s3_data_distribution_type: "FullyReplicated", # accepts FullyReplicated, ShardedByS3Key # attribute_names: ["AttributeName"], + # instance_group_names: ["InstanceGroupName"], # }, # file_system_data_source: { # file_system_id: "FileSystemId", # required @@ -20734,6 +20784,7 @@ class HyperParameterSpecification < Struct.new( # s3_uri: "S3Uri", # required # s3_data_distribution_type: "FullyReplicated", # accepts FullyReplicated, ShardedByS3Key # attribute_names: ["AttributeName"], + # instance_group_names: ["InstanceGroupName"], # }, # file_system_data_source: { # file_system_id: "FileSystemId", # required @@ -20760,10 +20811,17 @@ class HyperParameterSpecification < Struct.new( # s3_output_path: "S3Uri", # required # }, # resource_config: { # required - # instance_type: "ml.m4.xlarge", # required, accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge - # instance_count: 1, # required + # instance_type: "ml.m4.xlarge", # accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge + # instance_count: 1, # volume_size_in_gb: 1, # required # volume_kms_key_id: "KmsKeyId", + # instance_groups: [ + # { + # instance_type: "ml.m4.xlarge", # required, accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge + # instance_count: 1, # required + # instance_group_name: "InstanceGroupName", # required + # }, + # ], # }, # stopping_condition: { # required # max_runtime_in_seconds: 1, @@ -21871,6 +21929,45 @@ class InputConfig < Struct.new( include Aws::Structure end + # Defines an instance group for heterogeneous cluster training. When + # requesting a training job using the [CreateTrainingJob][1] API, you + # can configure up to 5 different ML training instance groups. + # + # + # + # [1]: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTrainingJob.html + # + # @note When making an API call, you may pass InstanceGroup + # data as a hash: + # + # { + # instance_type: "ml.m4.xlarge", # required, accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge + # instance_count: 1, # required + # instance_group_name: "InstanceGroupName", # required + # } + # + # @!attribute [rw] instance_type + # Specifies the instance type of the instance group. + # @return [String] + # + # @!attribute [rw] instance_count + # Specifies the number of instances of the instance group. + # @return [Integer] + # + # @!attribute [rw] instance_group_name + # Specifies the name of the instance group. + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/InstanceGroup AWS API Documentation + # + class InstanceGroup < Struct.new( + :instance_type, + :instance_count, + :instance_group_name) + SENSITIVE = [] + include Aws::Structure + end + # Information on the IMDS configuration of the notebook instance # # @note When making an API call, you may pass InstanceMetadataServiceConfiguration @@ -34753,10 +34850,17 @@ class ResolvedAttributes < Struct.new( # data as a hash: # # { - # instance_type: "ml.m4.xlarge", # required, accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge - # instance_count: 1, # required + # instance_type: "ml.m4.xlarge", # accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge + # instance_count: 1, # volume_size_in_gb: 1, # required # volume_kms_key_id: "KmsKeyId", + # instance_groups: [ + # { + # instance_type: "ml.m4.xlarge", # required, accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge + # instance_count: 1, # required + # instance_group_name: "InstanceGroupName", # required + # }, + # ], # } # # @!attribute [rw] instance_type @@ -34836,13 +34940,18 @@ class ResolvedAttributes < Struct.new( # [2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ssd-instance-store.html # @return [String] # + # @!attribute [rw] instance_groups + # The configuration of a heterogeneous cluster in JSON format. + # @return [Array] + # # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ResourceConfig AWS API Documentation # class ResourceConfig < Struct.new( :instance_type, :instance_count, :volume_size_in_gb, - :volume_kms_key_id) + :volume_kms_key_id, + :instance_groups) SENSITIVE = [] include Aws::Structure end @@ -35078,6 +35187,7 @@ class RetryStrategy < Struct.new( # s3_uri: "S3Uri", # required # s3_data_distribution_type: "FullyReplicated", # accepts FullyReplicated, ShardedByS3Key # attribute_names: ["AttributeName"], + # instance_group_names: ["InstanceGroupName"], # } # # @!attribute [rw] s3_data_type @@ -35174,13 +35284,19 @@ class RetryStrategy < Struct.new( # specified augmented manifest file. # @return [Array] # + # @!attribute [rw] instance_group_names + # A list of names of instance groups that get data from the S3 data + # source. + # @return [Array] + # # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/S3DataSource AWS API Documentation # class S3DataSource < Struct.new( :s3_data_type, :s3_uri, :s3_data_distribution_type, - :attribute_names) + :attribute_names, + :instance_group_names) SENSITIVE = [] include Aws::Structure end @@ -37253,6 +37369,7 @@ class TrainingJob < Struct.new( # s3_uri: "S3Uri", # required # s3_data_distribution_type: "FullyReplicated", # accepts FullyReplicated, ShardedByS3Key # attribute_names: ["AttributeName"], + # instance_group_names: ["InstanceGroupName"], # }, # file_system_data_source: { # file_system_id: "FileSystemId", # required @@ -37275,10 +37392,17 @@ class TrainingJob < Struct.new( # s3_output_path: "S3Uri", # required # }, # resource_config: { # required - # instance_type: "ml.m4.xlarge", # required, accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge - # instance_count: 1, # required + # instance_type: "ml.m4.xlarge", # accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge + # instance_count: 1, # volume_size_in_gb: 1, # required # volume_kms_key_id: "KmsKeyId", + # instance_groups: [ + # { + # instance_type: "ml.m4.xlarge", # required, accepts ml.m4.xlarge, ml.m4.2xlarge, ml.m4.4xlarge, ml.m4.10xlarge, ml.m4.16xlarge, ml.g4dn.xlarge, ml.g4dn.2xlarge, ml.g4dn.4xlarge, ml.g4dn.8xlarge, ml.g4dn.12xlarge, ml.g4dn.16xlarge, ml.m5.large, ml.m5.xlarge, ml.m5.2xlarge, ml.m5.4xlarge, ml.m5.12xlarge, ml.m5.24xlarge, ml.c4.xlarge, ml.c4.2xlarge, ml.c4.4xlarge, ml.c4.8xlarge, ml.p2.xlarge, ml.p2.8xlarge, ml.p2.16xlarge, ml.p3.2xlarge, ml.p3.8xlarge, ml.p3.16xlarge, ml.p3dn.24xlarge, ml.p4d.24xlarge, ml.c5.xlarge, ml.c5.2xlarge, ml.c5.4xlarge, ml.c5.9xlarge, ml.c5.18xlarge, ml.c5n.xlarge, ml.c5n.2xlarge, ml.c5n.4xlarge, ml.c5n.9xlarge, ml.c5n.18xlarge, ml.g5.xlarge, ml.g5.2xlarge, ml.g5.4xlarge, ml.g5.8xlarge, ml.g5.16xlarge, ml.g5.12xlarge, ml.g5.24xlarge, ml.g5.48xlarge + # instance_count: 1, # required + # instance_group_name: "InstanceGroupName", # required + # }, + # ], # }, # stopping_condition: { # required # max_runtime_in_seconds: 1,