diff --git a/CHANGELOG.md b/CHANGELOG.md index 488d6d8cdcf..2362e379745 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,13 @@ +Release v1.36.1 (2020-12-03) +=== + +### Service Client Updates +* `service/amplifybackend`: Updates service documentation +* `service/batch`: Updates service API and documentation + * This release adds support for customer to run Batch Jobs on ECS Fargate, the serverless compute engine built for containers on AWS. Customer can also propagate Job and Job Definition Tags to ECS Task. +* `service/compute-optimizer`: Updates service API and documentation +* `service/license-manager`: Updates service API and documentation + Release v1.36.0 (2020-12-02) === diff --git a/aws/endpoints/defaults.go b/aws/endpoints/defaults.go index fc8c1f92921..7f3ed4f5d61 100644 --- a/aws/endpoints/defaults.go +++ b/aws/endpoints/defaults.go @@ -2843,6 +2843,18 @@ var awsPartition = partition{ "eu-west-1": endpoint{}, "eu-west-2": endpoint{}, "eu-west-3": endpoint{}, + "fips-af-south-1": endpoint{ + Hostname: "fms-fips.af-south-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "af-south-1", + }, + }, + "fips-ap-east-1": endpoint{ + Hostname: "fms-fips.ap-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-east-1", + }, + }, "fips-ap-northeast-1": endpoint{ Hostname: "fms-fips.ap-northeast-1.amazonaws.com", CredentialScope: credentialScope{ @@ -2885,6 +2897,12 @@ var awsPartition = partition{ Region: "eu-central-1", }, }, + "fips-eu-south-1": endpoint{ + Hostname: "fms-fips.eu-south-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "eu-south-1", + }, + }, "fips-eu-west-1": endpoint{ Hostname: "fms-fips.eu-west-1.amazonaws.com", CredentialScope: credentialScope{ @@ -2903,6 +2921,12 @@ var awsPartition = partition{ Region: "eu-west-3", }, }, + "fips-me-south-1": endpoint{ + Hostname: "fms-fips.me-south-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "me-south-1", + }, + }, "fips-sa-east-1": endpoint{ Hostname: "fms-fips.sa-east-1.amazonaws.com", CredentialScope: credentialScope{ diff --git a/aws/version.go b/aws/version.go index c0e056ea83a..a62cbd9da1c 100644 --- a/aws/version.go +++ b/aws/version.go @@ -5,4 +5,4 @@ package aws const SDKName = "aws-sdk-go" // SDKVersion is the version of this SDK -const SDKVersion = "1.36.0" +const SDKVersion = "1.36.1" diff --git a/models/apis/amplifybackend/2020-08-11/docs-2.json b/models/apis/amplifybackend/2020-08-11/docs-2.json index 51538f640e7..e113af5345d 100644 --- a/models/apis/amplifybackend/2020-08-11/docs-2.json +++ b/models/apis/amplifybackend/2020-08-11/docs-2.json @@ -7,24 +7,24 @@ "CreateBackendAPI" : "

Creates a new backend API resource.

", "CreateBackendAuth" : "

Creates a new backend authentication resource.

", "CreateBackendConfig" : "

Creates a config object for a backend.

", - "CreateToken" : "

Generates a one time challenge code to authenticate a user into your Amplify Admin UI.

", - "DeleteBackend" : "

Removes an existing environment from your Ampify project.

", + "CreateToken" : "

Generates a one-time challenge code to authenticate a user into your Amplify Admin UI.

", + "DeleteBackend" : "

Removes an existing environment from your Amplify project.

", "DeleteBackendAPI" : "

Deletes an existing backend API resource.

", "DeleteBackendAuth" : "

Deletes an existing backend authentication resource.

", "DeleteToken" : "

Deletes the challenge token based on the given appId and sessionId.

", "GenerateBackendAPIModels" : "

Generates a model schema for an existing backend API resource.

", - "GetBackend" : "

Provides project level details for your Amplify UI project.

", - "GetBackendAPI" : "

Gets the details for a backend api.

", + "GetBackend" : "

Provides project-level details for your Amplify UI project.

", + "GetBackendAPI" : "

Gets the details for a backend API.

", "GetBackendAPIModels" : "

Generates a model schema for existing backend API resource.

", - "GetBackendAuth" : "

Gets a backend auth details.

", + "GetBackendAuth" : "

Gets backend auth details.

", "GetBackendJob" : "

Returns information about a specific job.

", "GetToken" : "

Gets the challenge token based on the given appId and sessionId.

", "ListBackendJobs" : "

Lists the jobs for the backend of an Amplify app.

", "RemoveAllBackends" : "

Removes all backend environments from your Amplify project.

", - "RemoveBackendConfig" : "

Removes the AWS resources required to access the Amplify Admin UI.

", + "RemoveBackendConfig" : "

Removes the AWS resources that are required to access the Amplify Admin UI.

", "UpdateBackendAPI" : "

Updates an existing backend API resource.

", "UpdateBackendAuth" : "

Updates an existing backend authentication resource.

", - "UpdateBackendConfig" : "

Updates the AWS resources required to access the Amplify Admin UI.

", + "UpdateBackendConfig" : "

Updates the AWS resources that are required to access the Amplify Admin UI.

", "UpdateBackendJob" : "

Updates a specific job.

" }, "shapes" : { @@ -44,7 +44,7 @@ "BackendAPIAuthType" : { "base" : "

Describes the auth types for your configured data models.

", "refs" : { - "BackendAPIResourceConfig$DefaultAuthType" : "

The default authentication type for interacting with the configured data models in your amplify project.

", + "BackendAPIResourceConfig$DefaultAuthType" : "

The default authentication type for interacting with the configured data models in your Amplify project.

", "ListOfBackendAPIAuthType$member" : null } }, @@ -57,9 +57,9 @@ "refs" : { } }, "BackendAPIConflictResolution" : { - "base" : "

Describes the conflict resolution configuration for your data model configured in your Amplify project.

", + "base" : "

Describes the conflict resolution configuration for the data model configured in your Amplify project.

", "refs" : { - "BackendAPIResourceConfig$ConflictResolution" : "

The conflict resoultion strategy for your data stored in the data models.

" + "BackendAPIResourceConfig$ConflictResolution" : "

The conflict resolution strategy for your data stored in the data models.

" } }, "BackendAPIReqObj" : { @@ -67,7 +67,7 @@ "refs" : { } }, "BackendAPIResourceConfig" : { - "base" : "

The resource config for the data model,configured as a part of the Amplify project.

", + "base" : "

The resource configuration for the data model, configured as a part of the Amplify project.

", "refs" : { "BackendAPIReqObj$ResourceConfig" : "

Defines the resource configuration for the data model in your Amplify project.

", "CreateBackendAPIReqObj$ResourceConfig" : "

The resource configuration for this request.

", @@ -83,7 +83,7 @@ "refs" : { } }, "BackendAuthSocialProviderConfig" : { - "base" : "

Describes third party social federation configurations for allowing your app users to sign in using OAuth.

", + "base" : "

Describes third-party social federation configurations for allowing your app users to sign in using OAuth.

", "refs" : { "SocialProviderSettings$Facebook" : null, "SocialProviderSettings$Google" : null, @@ -121,21 +121,21 @@ "refs" : { } }, "CreateBackendAuthForgotPasswordConfig" : { - "base" : "

Describes the forgot password policy for authenticating into the Amlify app.

", + "base" : "

Describes the forgot password policy for authenticating into the Amplify app.

", "refs" : { "CreateBackendAuthUserPoolConfig$ForgotPassword" : "

Describes the forgotten password policy for your Amazon Cognito user pool, configured as a part of your Amplify project.

" } }, "CreateBackendAuthIdentityPoolConfig" : { - "base" : "

Describes authorization configurations for the auth resources, configures as a part of your Amplify project.

", + "base" : "

Describes authorization configurations for the auth resources, configured as a part of your Amplify project.

", "refs" : { - "CreateBackendAuthResourceConfig$IdentityPoolConfigs" : "

Describes the authorization configuration for the Amazon Cognito identity pool, provisioned as a part of your auth resource in the Amplify project.

" + "CreateBackendAuthResourceConfig$IdentityPoolConfigs" : "

Describes the authorization configuration for the Amazon Cognito identity pool, provisioned as a part of the auth resource in your Amplify project.

" } }, "CreateBackendAuthMFAConfig" : { - "base" : "

Describes whether multi-factor authentication policies should be applied for your Amazon Cognito user pool configured as a part of your Amplify project.

", + "base" : "

Describes whether to apply multi-factor authentication (MFA) policies for your Amazon Cognito user pool that's configured as a part of your Amplify project.

", "refs" : { - "CreateBackendAuthUserPoolConfig$Mfa" : "

Describes whether multi-factor authentication policies should be applied for your Amazon Cognito user pool configured as a part of your Amplify project.

" + "CreateBackendAuthUserPoolConfig$Mfa" : "

Describes whether to apply multi-factor authentication (MFA) policies for your Amazon Cognito user pool that's configured as a part of your Amplify project.

" } }, "CreateBackendAuthOAuthConfig" : { @@ -145,7 +145,7 @@ } }, "CreateBackendAuthPasswordPolicyConfig" : { - "base" : "

The password policy configuration for the backend to your Amplify project.

", + "base" : "

The password policy configuration for the backend of your Amplify project.

", "refs" : { "CreateBackendAuthUserPoolConfig$PasswordPolicy" : "

Describes the password policy for your Amazon Cognito user pool, configured as a part of your Amplify project.

" } @@ -164,7 +164,7 @@ "CreateBackendAuthUserPoolConfig" : { "base" : "

Describes the Amazon Cognito user pool configuration for the auth resource to be configured for your Amplify project.

", "refs" : { - "CreateBackendAuthResourceConfig$UserPoolConfigs" : "

Describes authentication configuration for the Amazon Cognito user pool, provisioned as a part of your auth resource in the Amplify project.

" + "CreateBackendAuthResourceConfig$UserPoolConfigs" : "

Describes the authentication configuration for the Amazon Cognito user pool, provisioned as a part of the auth resource in your Amplify project.

" } }, "CreateBackendConfigReqObj" : { @@ -198,8 +198,8 @@ "DeliveryMethod" : { "base" : null, "refs" : { - "CreateBackendAuthForgotPasswordConfig$DeliveryMethod" : "

Describes which mode to use (either SMS or email) to deliver messages to app users that want to recover their password.

", - "UpdateBackendAuthForgotPasswordConfig$DeliveryMethod" : "

Describes which mode to use (either SMS or email) to deliver messages to app users that want to recover their password.

" + "CreateBackendAuthForgotPasswordConfig$DeliveryMethod" : "

Describes which method to use (either SMS or email) to deliver messages to app users that want to recover their password.

", + "UpdateBackendAuthForgotPasswordConfig$DeliveryMethod" : "

Describes which method to use (either SMS or email) to deliver messages to app users that want to recover their password.

" } }, "EmailSettings" : { @@ -246,7 +246,7 @@ "refs" : { } }, "LimitExceededException" : { - "base" : "

An error that is returned when a limit of a specific type has been exceeded.

", + "base" : "

An error that is returned when a limit of a specific type is exceeded.

", "refs" : { } }, "ListBackendJobReqObj" : { @@ -260,14 +260,14 @@ "LoginAuthConfigReqObj" : { "base" : "

The request object for this operation.

", "refs" : { - "BackendConfigRespObj$LoginAuthConfig" : "

Describes the Amazon Cognito configurations for the Admin UI auth resource to login with.

", + "BackendConfigRespObj$LoginAuthConfig" : "

Describes the Amazon Cognito configurations for the Admin UI auth resource to log in with.

", "UpdateBackendConfigReqObj$LoginAuthConfig" : "

Describes the Amazon Cognito configuration for Admin UI access.

" } }, "MFAMode" : { "base" : null, "refs" : { - "CreateBackendAuthMFAConfig$MFAMode" : "

Describes whether MFA should be [ON, OFF, OPTIONAL] for authentication in your Amplify project.

", + "CreateBackendAuthMFAConfig$MFAMode" : "

Describes whether MFA should be [ON, OFF, or OPTIONAL] for authentication in your Amplify project.

", "UpdateBackendAuthMFAConfig$MFAMode" : "

The MFA mode for the backend of your Amplify project.

" } }, @@ -284,7 +284,7 @@ "OAuthGrantType" : { "base" : null, "refs" : { - "CreateBackendAuthOAuthConfig$OAuthGrantType" : "

The OAuth grant type which you use to allow app users to authenticate from your Amplify app.

", + "CreateBackendAuthOAuthConfig$OAuthGrantType" : "

The OAuth grant type that you use to allow app users to authenticate from your Amplify app.

", "UpdateBackendAuthOAuthConfig$OAuthGrantType" : "

The OAuth grant type to allow app users to authenticate from your Amplify app.

" } }, @@ -313,7 +313,7 @@ "ResourceConfig" : { "base" : null, "refs" : { - "CreateBackendReqObj$ResourceConfig" : "

The resource configuration for the create backend request.

" + "CreateBackendReqObj$ResourceConfig" : "

The resource configuration for the backend creation request.

" } }, "Service" : { @@ -333,7 +333,7 @@ "SignInMethod" : { "base" : null, "refs" : { - "CreateBackendAuthUserPoolConfig$SignInMethod" : "

Describes the sign-in methods that your Amplify app users to login using the Amazon Cognito user pool, configured as a part of your Amplify project.

" + "CreateBackendAuthUserPoolConfig$SignInMethod" : "

Describes the sign-in methods that your Amplify app users to log in using the Amazon Cognito user pool that's configured as a part of your Amplify project.

" } }, "SmsSettings" : { @@ -346,8 +346,8 @@ "SocialProviderSettings" : { "base" : null, "refs" : { - "CreateBackendAuthOAuthConfig$SocialProviderSettings" : "

The settings for using the social providers for access to your Amplify app.

", - "UpdateBackendAuthOAuthConfig$SocialProviderSettings" : "

Describes third party social federation configurations for allowing your users to sign in with OAuth.

" + "CreateBackendAuthOAuthConfig$SocialProviderSettings" : "

The settings for using social identity providers for access to your Amplify app.

", + "UpdateBackendAuthOAuthConfig$SocialProviderSettings" : "

Describes third-party social federation configurations for allowing your users to sign in with OAuth.

" } }, "Status" : { @@ -357,11 +357,11 @@ } }, "TooManyRequestsException" : { - "base" : "

An error that is returned when a limit of a specific type has been exceeded.

", + "base" : "

An error that is returned when a limit of a specific type is exceeded.

", "refs" : { } }, "UpdateBackendAuthForgotPasswordConfig" : { - "base" : "

Describes the forgot password policy for authenticating into the Amlify app.

", + "base" : "

Describes the forgot password policy for authenticating into the Amplify app.

", "refs" : { "UpdateBackendAuthUserPoolConfig$ForgotPassword" : "

Describes the forgot password policy for your Amazon Cognito user pool, configured as a part of your Amplify project.

" } @@ -369,13 +369,13 @@ "UpdateBackendAuthIdentityPoolConfig" : { "base" : "

Describes the authorization configuration for the Amazon Cognito identity pool, provisioned as a part of your auth resource in the Amplify project.

", "refs" : { - "UpdateBackendAuthResourceConfig$IdentityPoolConfigs" : "

Describes the authorization configuration for the Amazon Cognito identity pool, provisioned as a part of your auth resource in the Amplify project.

" + "UpdateBackendAuthResourceConfig$IdentityPoolConfigs" : "

Describes the authorization configuration for the Amazon Cognito identity pool, provisioned as a part of the auth resource in your Amplify project.

" } }, "UpdateBackendAuthMFAConfig" : { "base" : "

Updates the multi-factor authentication (MFA) configuration for the backend of your Amplify project.

", "refs" : { - "UpdateBackendAuthUserPoolConfig$Mfa" : "

Describes whether multi-factor authentication policies should be applied for your Amazon Cognito user pool configured as a part of your Amplify project.

" + "UpdateBackendAuthUserPoolConfig$Mfa" : "

Describes whether to apply multi-factor authentication (MFA) policies for your Amazon Cognito user pool that's configured as a part of your Amplify project.

" } }, "UpdateBackendAuthOAuthConfig" : { @@ -385,7 +385,7 @@ } }, "UpdateBackendAuthPasswordPolicyConfig" : { - "base" : "

Describes the password policy for your Amazon Cognito user pool configured as a part of your Amplify project.

", + "base" : "

Describes the password policy for your Amazon Cognito user pool that's configured as a part of your Amplify project.

", "refs" : { "UpdateBackendAuthUserPoolConfig$PasswordPolicy" : "

Describes the password policy for your Amazon Cognito user pool, configured as a part of your Amplify project.

" } @@ -401,9 +401,9 @@ } }, "UpdateBackendAuthUserPoolConfig" : { - "base" : "

Describes the Amazon Cognito user pool configuration for the authorization resource to be configured for your Amplify project on an update.

", + "base" : "

Describes the Amazon Cognito user pool configuration to configure the authorization resource for your Amplify project on an update.

", "refs" : { - "UpdateBackendAuthResourceConfig$UserPoolConfigs" : "

Describes the authentication configuration for the Amazon Cognito userpool, provisioned as a part of your auth resource in the Amplify project.

" + "UpdateBackendAuthResourceConfig$UserPoolConfigs" : "

Describes the authentication configuration for the Amazon Cognito user pool, provisioned as a part of the auth resource in your Amplify project.

" } }, "UpdateBackendConfigReqObj" : { @@ -440,27 +440,27 @@ "CreateBackendAuthIdentityPoolConfig$UnauthenticatedLogin" : "

Set to true or false based on whether you want to enable guest authorization to your Amplify app.

", "DeleteTokenRespObj$IsSuccess" : "

Indicates whether the request succeeded or failed.

", "RemoveAllBackendsReqObj$CleanAmplifyApp" : "

Cleans up the Amplify Console app if this value is set to true.

", - "UpdateBackendAuthIdentityPoolConfig$UnauthenticatedLogin" : "

A boolean value which can be set to allow or disallow guest level authorization into your Amplify app.

" + "UpdateBackendAuthIdentityPoolConfig$UnauthenticatedLogin" : "

A Boolean value that you can set to allow or disallow guest-level authorization into your Amplify app.

" } }, "__double" : { "base" : null, "refs" : { - "BackendAPIAppSyncAuthSettings$ExpirationTime" : "

The api key expiration time for API_KEY, if it was used as an authentication mechanism to access your data models.

", - "CreateBackendAuthPasswordPolicyConfig$MinimumLength" : "

The minimum length of password used to access the backend of your Amplify project.

", - "UpdateBackendAuthPasswordPolicyConfig$MinimumLength" : "

Describes the minimum length of password required to sign in into the auth resource, configured as a part of your Ampify project.

" + "BackendAPIAppSyncAuthSettings$ExpirationTime" : "

The API key expiration time for API_KEY, if it is used as an authentication mechanism to access your data models.

", + "CreateBackendAuthPasswordPolicyConfig$MinimumLength" : "

The minimum length of the password used to access the backend of your Amplify project.

", + "UpdateBackendAuthPasswordPolicyConfig$MinimumLength" : "

Describes the minimum length of the password required to sign in to the auth resource, configured as a part of your Amplify project.

" } }, "__integerMin1Max25" : { "base" : null, "refs" : { - "ListBackendJobReqObj$MaxResults" : "

The maximum number of results you want in the response.

" + "ListBackendJobReqObj$MaxResults" : "

The maximum number of results that you want in the response.

" } }, "ListOfBackendAPIAuthType" : { "base" : null, "refs" : { - "BackendAPIResourceConfig$AdditionalAuthTypes" : "

Addition authentication methods used to interact with your data models.

" + "BackendAPIResourceConfig$AdditionalAuthTypes" : "

Additional authentication methods used to interact with your data models.

" } }, "ListOfBackendJobRespObj" : { @@ -472,8 +472,8 @@ "ListOfAdditionalConstraintsElement" : { "base" : null, "refs" : { - "CreateBackendAuthPasswordPolicyConfig$AdditionalConstraints" : "

Additional constraints for the pasword used to access the backend of your Amplify project.

", - "UpdateBackendAuthPasswordPolicyConfig$AdditionalConstraints" : "

Describes additional constrains on password requirements to sign in into the auth resource, configured as a part of your Ampify project.

" + "CreateBackendAuthPasswordPolicyConfig$AdditionalConstraints" : "

Additional constraints for the password used to access the backend of your Amplify project.

", + "UpdateBackendAuthPasswordPolicyConfig$AdditionalConstraints" : "

Describes additional constrains on the password requirements to sign in to the auth resource, configured as a part of your Amplify project.

" } }, "ListOfMfaTypesElement" : { @@ -485,36 +485,36 @@ "ListOfOAuthScopesElement" : { "base" : null, "refs" : { - "CreateBackendAuthOAuthConfig$OAuthScopes" : "

List of OAuth related flows which use to allow your app users to authenticate from your Amplify app.

", - "UpdateBackendAuthOAuthConfig$OAuthScopes" : "

The list of OAuth related flows which can allow users to authenticate from your Amplify app.

" + "CreateBackendAuthOAuthConfig$OAuthScopes" : "

List of OAuth-related flows that allow your app users to authenticate from your Amplify app.

", + "UpdateBackendAuthOAuthConfig$OAuthScopes" : "

The list of OAuth-related flows that can allow users to authenticate from your Amplify app.

" } }, "ListOfRequiredSignUpAttributesElement" : { "base" : null, "refs" : { - "CreateBackendAuthUserPoolConfig$RequiredSignUpAttributes" : "

The required attributes to sign up new users in the user pool.

" + "CreateBackendAuthUserPoolConfig$RequiredSignUpAttributes" : "

The required attributes to sign up new users in the Amazon Cognito user pool.

" } }, "ListOf__string" : { "base" : null, "refs" : { - "CreateBackendAuthOAuthConfig$RedirectSignInURIs" : "

The redirected URI for sigining into your Amplify app.

", - "CreateBackendAuthOAuthConfig$RedirectSignOutURIs" : "

Redirect URLs used by OAuth when a user signs out of an Amplify app.

", + "CreateBackendAuthOAuthConfig$RedirectSignInURIs" : "

The redirected URI for signing in to your Amplify app.

", + "CreateBackendAuthOAuthConfig$RedirectSignOutURIs" : "

Redirect URLs that OAuth uses when a user signs out of an Amplify app.

", "GetBackendRespObj$BackendEnvironmentList" : "

A list of backend environments in an array.

", - "UpdateBackendAuthOAuthConfig$RedirectSignInURIs" : "

Redirect URLs used by OAuth when a user signs in to an Amplify app.

", - "UpdateBackendAuthOAuthConfig$RedirectSignOutURIs" : "

Redirect URLs used by OAuth when a user signs out of an Amplify app.

" + "UpdateBackendAuthOAuthConfig$RedirectSignInURIs" : "

Redirect URLs that OAuth uses when a user signs in to an Amplify app.

", + "UpdateBackendAuthOAuthConfig$RedirectSignOutURIs" : "

Redirect URLs that OAuth uses when a user signs out of an Amplify app.

" } }, "__string" : { "base" : null, "refs" : { - "BackendAPIAppSyncAuthSettings$CognitoUserPoolId" : "

The Amazon Cognito user pool id, if Amazon Cognito was used as an authentication setting to access your data models.

", - "BackendAPIAppSyncAuthSettings$Description" : "

The api key description for API_KEY, if it was used as an authentication mechanism to access your data models.

", + "BackendAPIAppSyncAuthSettings$CognitoUserPoolId" : "

The Amazon Cognito user pool ID, if Amazon Cognito is used as an authentication setting to access your data models.

", + "BackendAPIAppSyncAuthSettings$Description" : "

The API key description for API_KEY, if it is used as an authentication mechanism to access your data models.

", "BackendAPIAppSyncAuthSettings$OpenIDAuthTTL" : "

The expiry time for the OpenID authentication mechanism.

", - "BackendAPIAppSyncAuthSettings$OpenIDClientId" : "

The clientID for openID, if openID was used as an authentication setting to access your data models.

", + "BackendAPIAppSyncAuthSettings$OpenIDClientId" : "

The clientID for openID, if openID is used as an authentication setting to access your data models.

", "BackendAPIAppSyncAuthSettings$OpenIDIatTTL" : "

The expiry time for the OpenID authentication mechanism.

", - "BackendAPIAppSyncAuthSettings$OpenIDIssueURL" : "

The openID issuer URL, if openID was used as an authentication setting to access your data models.

", - "BackendAPIAppSyncAuthSettings$OpenIDProviderName" : "

The open id provider name, if openID was used as an authentication mechanism to access your data models.

", + "BackendAPIAppSyncAuthSettings$OpenIDIssueURL" : "

The openID issuer URL, if openID is used as an authentication setting to access your data models.

", + "BackendAPIAppSyncAuthSettings$OpenIDProviderName" : "

The openID provider name, if openID is used as an authentication mechanism to access your data models.

", "BackendAPICodegenReqObj$ResourceName" : "

The name of this resource.

", "BackendAPICodegenRespObj$AppId" : "

The app ID.

", "BackendAPICodegenRespObj$BackendEnvironmentName" : "

The name of the backend environment.

", @@ -523,9 +523,9 @@ "BackendAPICodegenRespObj$Operation" : "

The name of the operation.

", "BackendAPICodegenRespObj$Status" : "

The current status of the request.

", "BackendAPIReqObj$ResourceName" : "

The name of this resource.

", - "BackendAPIResourceConfig$ApiName" : "

The API name used to interact with the data model, configured as a part of the amplify project.

", + "BackendAPIResourceConfig$ApiName" : "

The API name used to interact with the data model, configured as a part of the Amplify project.

", "BackendAPIResourceConfig$Service" : "

The service used to provision and interact with the data model.

", - "BackendAPIResourceConfig$TransformSchema" : "

The definition of the data model in the annotated transform of the graphql schema.

", + "BackendAPIResourceConfig$TransformSchema" : "

The definition of the data model in the annotated transform of the GraphQL schema.

", "BackendAPIRespObj$AppId" : "

The app ID.

", "BackendAPIRespObj$BackendEnvironmentName" : "

The name of the backend environment.

", "BackendAPIRespObj$Error" : "

If the request failed, this is the returned error.

", @@ -538,13 +538,13 @@ "BackendAuthRespObj$JobId" : "

The ID for the job.

", "BackendAuthRespObj$Operation" : "

The name of the operation.

", "BackendAuthRespObj$Status" : "

The current status of the request.

", - "BackendAuthSocialProviderConfig$ClientId" : "

Describes the client_id which can be obtained from the third party social federation provider.

", - "BackendAuthSocialProviderConfig$ClientSecret" : "

Describes the client_secret which can be obtained from third party social federation providers.

", + "BackendAuthSocialProviderConfig$ClientId" : "

Describes the client_id that can be obtained from the third-party social federation provider.

", + "BackendAuthSocialProviderConfig$ClientSecret" : "

Describes the client_secret that can be obtained from third-party social federation providers.

", "BackendConfigRespObj$AppId" : "

The app ID.

", "BackendConfigRespObj$BackendManagerAppId" : "

The app ID for the backend manager.

", "BackendConfigRespObj$Error" : "

If the request failed, this is the returned error.

", - "BackendJobReqObj$Operation" : "

Filters the list of response objects to only include those with the specified operation name.

", - "BackendJobReqObj$Status" : "

Filters the list of response objects to only include those with the specified status.

", + "BackendJobReqObj$Operation" : "

Filters the list of response objects to include only those with the specified operation name.

", + "BackendJobReqObj$Status" : "

Filters the list of response objects to include only those with the specified status.

", "BackendJobRespObj$AppId" : "

The app ID.

", "BackendJobRespObj$BackendEnvironmentName" : "

The name of the backend environment.

", "BackendJobRespObj$CreateTime" : "

The time when the job was created.

", @@ -553,7 +553,7 @@ "BackendJobRespObj$Operation" : "

The name of the operation.

", "BackendJobRespObj$Status" : "

The current status of the request.

", "BackendJobRespObj$UpdateTime" : "

The time when the job was last updated.

", - "BadRequestException$Message" : "

An error message to inform that the request has failed.

", + "BadRequestException$Message" : "

An error message to inform that the request failed.

", "CloneBackendReqObj$TargetEnvironmentName" : "

The name of the destination backend environment to be created.

", "CloneBackendRespObj$AppId" : "

The app ID.

", "CloneBackendRespObj$BackendEnvironmentName" : "

The name of the backend environment.

", @@ -584,9 +584,9 @@ "CreateBackendRespObj$Operation" : "

The name of the operation.

", "CreateBackendRespObj$Status" : "

The current status of the request.

", "CreateTokenRespObj$AppId" : "

The app ID.

", - "CreateTokenRespObj$ChallengeCode" : "

One time challenge code for authenticating into Amplify Admin UI.

", - "CreateTokenRespObj$SessionId" : "

A unique identifier provided when creating a new challenge token.

", - "CreateTokenRespObj$Ttl" : "

The expiry time for the one time generated token code.

", + "CreateTokenRespObj$ChallengeCode" : "

One-time challenge code for authenticating into the Amplify Admin UI.

", + "CreateTokenRespObj$SessionId" : "

A unique ID provided when creating a new challenge token.

", + "CreateTokenRespObj$Ttl" : "

The expiry time for the one-time generated token code.

", "DeleteBackendRespObj$AppId" : "

The app ID.

", "DeleteBackendRespObj$BackendEnvironmentName" : "

The name of the backend environment.

", "DeleteBackendRespObj$Error" : "

If the request failed, this is the returned error.

", @@ -595,7 +595,7 @@ "DeleteBackendRespObj$Status" : "

The current status of the request.

", "EmailSettings$EmailMessage" : "

The body of the email.

", "EmailSettings$EmailSubject" : "

The subject of the email.

", - "GetBackendAPICodegenRespObj$Models" : "

Stringified JSON of the datastore model.

", + "GetBackendAPICodegenRespObj$Models" : "

Stringified JSON of the DataStore model.

", "GetBackendAPIRespObj$AppId" : "

The app ID.

", "GetBackendAPIRespObj$BackendEnvironmentName" : "

The name of the backend environment.

", "GetBackendAPIRespObj$Error" : "

If the request failed, this is the returned error.

", @@ -606,28 +606,28 @@ "GetBackendAuthRespObj$Error" : "

If the request failed, this is the returned error.

", "GetBackendAuthRespObj$ResourceName" : "

The name of this resource.

", "GetBackendReqObj$BackendEnvironmentName" : "

The name of the backend environment.

", - "GetBackendRespObj$AmplifyMetaConfig" : "

A stringified version of the current configs for your Amplify project.

", + "GetBackendRespObj$AmplifyMetaConfig" : "

A stringified version of the current configurations for your Amplify project.

", "GetBackendRespObj$AppId" : "

The app ID.

", "GetBackendRespObj$AppName" : "

The name of the app.

", "GetBackendRespObj$BackendEnvironmentName" : "

The name of the backend environment.

", "GetBackendRespObj$Error" : "

If the request failed, this is the returned error.

", "GetTokenRespObj$AppId" : "

The app ID.

", - "GetTokenRespObj$ChallengeCode" : "

The one time challenge code for authenticating into Amplify Admin UI.

", - "GetTokenRespObj$SessionId" : "

A unique identifier provided when creating a new challenge token.

", - "GetTokenRespObj$Ttl" : "

The expiry time for the one time generated token code.

", - "InternalServiceException$Message" : "

An error message to inform that the request has failed.

", + "GetTokenRespObj$ChallengeCode" : "

The one-time challenge code for authenticating into the Amplify Admin UI.

", + "GetTokenRespObj$SessionId" : "

A unique ID provided when creating a new challenge token.

", + "GetTokenRespObj$Ttl" : "

The expiry time for the one-time generated token code.

", + "InternalServiceException$Message" : "

An error message to inform that the request failed.

", "LimitExceededException$LimitType" : "

The type of limit that was exceeded.

", - "LimitExceededException$Message" : "

An error message to inform that the request has failed.

", + "LimitExceededException$Message" : "

An error message to inform that the request failed.

", "ListBackendJobReqObj$JobId" : "

The ID for the job.

", "ListBackendJobReqObj$NextToken" : "

The token for the next set of results.

", - "ListBackendJobReqObj$Operation" : "

Filters the list of response objects to only include those with the specified operation name.

", - "ListBackendJobReqObj$Status" : "

Filters the list of response objects to only include those with the specified status.

", + "ListBackendJobReqObj$Operation" : "

Filters the list of response objects to include only those with the specified operation name.

", + "ListBackendJobReqObj$Status" : "

Filters the list of response objects to include only those with the specified status.

", "ListBackendJobRespObj$NextToken" : "

The token for the next set of results.

", - "LoginAuthConfigReqObj$AwsCognitoIdentityPoolId" : "

Amazon Cognito identitypool id used for the Amplify Admin UI login authorization.

", - "LoginAuthConfigReqObj$AwsCognitoRegion" : "

The AWS Region for the the Amplify Admin login.

", - "LoginAuthConfigReqObj$AwsUserPoolsId" : "

The Amazon Cognito userpool id used for Amplify Admin UI login authentication.

", - "LoginAuthConfigReqObj$AwsUserPoolsWebClientId" : "

The web client ID for the Amazon Cognito userpools.

", - "NotFoundException$Message" : "

An error message to inform that the request has failed.

", + "LoginAuthConfigReqObj$AwsCognitoIdentityPoolId" : "

The Amazon Cognito identity pool ID used for Amplify Admin UI login authorization.

", + "LoginAuthConfigReqObj$AwsCognitoRegion" : "

The AWS Region for the Amplify Admin UI login.

", + "LoginAuthConfigReqObj$AwsUserPoolsId" : "

The Amazon Cognito user pool ID used for Amplify Admin UI login authentication.

", + "LoginAuthConfigReqObj$AwsUserPoolsWebClientId" : "

The web client ID for the Amazon Cognito user pools.

", + "NotFoundException$Message" : "

An error message to inform that the request failed.

", "NotFoundException$ResourceType" : "

The type of resource that wasn't found.

", "RemoveAllBackendsRespObj$AppId" : "

The app ID.

", "RemoveAllBackendsRespObj$Error" : "

If the request failed, this is the returned error.

", diff --git a/models/apis/batch/2016-08-10/api-2.json b/models/apis/batch/2016-08-10/api-2.json index c6508f9282e..409cca6ca76 100644 --- a/models/apis/batch/2016-08-10/api-2.json +++ b/models/apis/batch/2016-08-10/api-2.json @@ -294,6 +294,13 @@ "index":{"shape":"Integer"} } }, + "AssignPublicIp":{ + "type":"string", + "enum":[ + "ENABLED", + "DISABLED" + ] + }, "AttemptContainerDetail":{ "type":"structure", "members":{ @@ -356,7 +363,9 @@ "type":"string", "enum":[ "EC2", - "SPOT" + "SPOT", + "FARGATE", + "FARGATE_SPOT" ] }, "CancelJobRequest":{ @@ -426,11 +435,8 @@ "type":"structure", "required":[ "type", - "minvCpus", "maxvCpus", - "instanceTypes", - "subnets", - "instanceRole" + "subnets" ], "members":{ "type":{"shape":"CRType"}, @@ -461,7 +467,9 @@ "members":{ "minvCpus":{"shape":"Integer"}, "maxvCpus":{"shape":"Integer"}, - "desiredvCpus":{"shape":"Integer"} + "desiredvCpus":{"shape":"Integer"}, + "subnets":{"shape":"StringList"}, + "securityGroupIds":{"shape":"StringList"} } }, "ContainerDetail":{ @@ -490,14 +498,24 @@ "resourceRequirements":{"shape":"ResourceRequirements"}, "linuxParameters":{"shape":"LinuxParameters"}, "logConfiguration":{"shape":"LogConfiguration"}, - "secrets":{"shape":"SecretList"} + "secrets":{"shape":"SecretList"}, + "networkConfiguration":{"shape":"NetworkConfiguration"}, + "fargatePlatformConfiguration":{"shape":"FargatePlatformConfiguration"} } }, "ContainerOverrides":{ "type":"structure", "members":{ - "vcpus":{"shape":"Integer"}, - "memory":{"shape":"Integer"}, + "vcpus":{ + "shape":"Integer", + "deprecated":true, + "deprecatedMessage":"This field is deprecated, use resourceRequirements instead." + }, + "memory":{ + "shape":"Integer", + "deprecated":true, + "deprecatedMessage":"This field is deprecated, use resourceRequirements instead." + }, "command":{"shape":"StringList"}, "instanceType":{"shape":"String"}, "environment":{"shape":"EnvironmentVariables"}, @@ -508,8 +526,16 @@ "type":"structure", "members":{ "image":{"shape":"String"}, - "vcpus":{"shape":"Integer"}, - "memory":{"shape":"Integer"}, + "vcpus":{ + "shape":"Integer", + "deprecated":true, + "deprecatedMessage":"This field is deprecated, use resourceRequirements instead." + }, + "memory":{ + "shape":"Integer", + "deprecated":true, + "deprecatedMessage":"This field is deprecated, use resourceRequirements instead." + }, "command":{"shape":"StringList"}, "jobRoleArn":{"shape":"String"}, "executionRoleArn":{"shape":"String"}, @@ -524,7 +550,9 @@ "resourceRequirements":{"shape":"ResourceRequirements"}, "linuxParameters":{"shape":"LinuxParameters"}, "logConfiguration":{"shape":"LogConfiguration"}, - "secrets":{"shape":"SecretList"} + "secrets":{"shape":"SecretList"}, + "networkConfiguration":{"shape":"NetworkConfiguration"}, + "fargatePlatformConfiguration":{"shape":"FargatePlatformConfiguration"} } }, "ContainerSummary":{ @@ -734,6 +762,12 @@ "type":"list", "member":{"shape":"EvaluateOnExit"} }, + "FargatePlatformConfiguration":{ + "type":"structure", + "members":{ + "platformVersion":{"shape":"String"} + } + }, "Host":{ "type":"structure", "members":{ @@ -788,7 +822,9 @@ "containerProperties":{"shape":"ContainerProperties"}, "timeout":{"shape":"JobTimeout"}, "nodeProperties":{"shape":"NodeProperties"}, - "tags":{"shape":"TagrisTagsMap"} + "tags":{"shape":"TagrisTagsMap"}, + "propagateTags":{"shape":"Boolean"}, + "platformCapabilities":{"shape":"PlatformCapabilityList"} } }, "JobDefinitionList":{ @@ -843,7 +879,9 @@ "nodeProperties":{"shape":"NodeProperties"}, "arrayProperties":{"shape":"ArrayPropertiesDetail"}, "timeout":{"shape":"JobTimeout"}, - "tags":{"shape":"TagrisTagsMap"} + "tags":{"shape":"TagrisTagsMap"}, + "propagateTags":{"shape":"Boolean"}, + "platformCapabilities":{"shape":"PlatformCapabilityList"} } }, "JobDetailList":{ @@ -1017,6 +1055,12 @@ "type":"list", "member":{"shape":"MountPoint"} }, + "NetworkConfiguration":{ + "type":"structure", + "members":{ + "assignPublicIp":{"shape":"AssignPublicIp"} + } + }, "NetworkInterface":{ "type":"structure", "members":{ @@ -1093,6 +1137,17 @@ "key":{"shape":"String"}, "value":{"shape":"String"} }, + "PlatformCapability":{ + "type":"string", + "enum":[ + "EC2", + "FARGATE" + ] + }, + "PlatformCapabilityList":{ + "type":"list", + "member":{"shape":"PlatformCapability"} + }, "RegisterJobDefinitionRequest":{ "type":"structure", "required":[ @@ -1106,8 +1161,10 @@ "containerProperties":{"shape":"ContainerProperties"}, "nodeProperties":{"shape":"NodeProperties"}, "retryStrategy":{"shape":"RetryStrategy"}, + "propagateTags":{"shape":"Boolean"}, "timeout":{"shape":"JobTimeout"}, - "tags":{"shape":"TagrisTagsMap"} + "tags":{"shape":"TagrisTagsMap"}, + "platformCapabilities":{"shape":"PlatformCapabilityList"} } }, "RegisterJobDefinitionResponse":{ @@ -1140,7 +1197,11 @@ }, "ResourceType":{ "type":"string", - "enum":["GPU"] + "enum":[ + "GPU", + "VCPU", + "MEMORY" + ] }, "RetryAction":{ "type":"string", @@ -1202,6 +1263,7 @@ "containerOverrides":{"shape":"ContainerOverrides"}, "nodeOverrides":{"shape":"NodeOverrides"}, "retryStrategy":{"shape":"RetryStrategy"}, + "propagateTags":{"shape":"Boolean"}, "timeout":{"shape":"JobTimeout"}, "tags":{"shape":"TagrisTagsMap"} } diff --git a/models/apis/batch/2016-08-10/docs-2.json b/models/apis/batch/2016-08-10/docs-2.json index 1a4fa332ca5..fa2a2691f7a 100644 --- a/models/apis/batch/2016-08-10/docs-2.json +++ b/models/apis/batch/2016-08-10/docs-2.json @@ -1,22 +1,22 @@ { "version": "2.0", - "service": "

AWS Batch enables you to run batch computing workloads on the AWS Cloud. Batch computing is a common way for developers, scientists, and engineers to access large amounts of compute resources, and AWS Batch removes the undifferentiated heavy lifting of configuring and managing the required infrastructure. AWS Batch will be familiar to users of traditional batch computing software. This service can efficiently provision resources in response to jobs submitted in order to eliminate capacity constraints, reduce compute costs, and deliver results quickly.

As a fully managed service, AWS Batch enables developers, scientists, and engineers to run batch computing workloads of any scale. AWS Batch automatically provisions compute resources and optimizes the workload distribution based on the quantity and scale of the workloads. With AWS Batch, there is no need to install or manage batch computing software, which allows you to focus on analyzing results and solving problems. AWS Batch reduces operational complexities, saves time, and reduces costs, which makes it easy for developers, scientists, and engineers to run their batch jobs in the AWS Cloud.

", + "service": "

Using AWS Batch, you can run batch computing workloads on the AWS Cloud. Batch computing is a common means for developers, scientists, and engineers to access large amounts of compute resources. AWS Batch utilizes the advantages of this computing workload to remove the undifferentiated heavy lifting of configuring and managing required infrastructure, while also adopting a familiar batch computing software approach. Given these advantages, AWS Batch can help you to efficiently provision resources in response to jobs submitted, thus effectively helping to eliminate capacity constraints, reduce compute costs, and deliver your results more quickly.

As a fully managed service, AWS Batch can run batch computing workloads of any scale. AWS Batch automatically provisions compute resources and optimizes workload distribution based on the quantity and scale of your specific workloads. With AWS Batch, there's no need to install or manage batch computing software. This means that you can focus your time and energy on analyzing results and solving your specific problems.

", "operations": { - "CancelJob": "

Cancels a job in an AWS Batch job queue. Jobs that are in the SUBMITTED, PENDING, or RUNNABLE state are cancelled. Jobs that have progressed to STARTING or RUNNING are not cancelled (but the API operation still succeeds, even if no job is cancelled); these jobs must be terminated with the TerminateJob operation.

", - "CreateComputeEnvironment": "

Creates an AWS Batch compute environment. You can create MANAGED or UNMANAGED compute environments.

In a managed compute environment, AWS Batch manages the capacity and instance types of the compute resources within the environment. This is based on the compute resource specification that you define or the launch template that you specify when you create the compute environment. You can choose to use Amazon EC2 On-Demand Instances or Spot Instances in your managed compute environment. You can optionally set a maximum price so that Spot Instances only launch when the Spot Instance price is below a specified percentage of the On-Demand price.

Multi-node parallel jobs are not supported on Spot Instances.

In an unmanaged compute environment, you can manage your own compute resources. This provides more compute resource configuration options, such as using a custom AMI, but you must ensure that your AMI meets the Amazon ECS container instance AMI specification. For more information, see Container Instance AMIs in the Amazon Elastic Container Service Developer Guide. After you have created your unmanaged compute environment, you can use the DescribeComputeEnvironments operation to find the Amazon ECS cluster that is associated with it. Then, manually launch your container instances into that Amazon ECS cluster. For more information, see Launching an Amazon ECS Container Instance in the Amazon Elastic Container Service Developer Guide.

AWS Batch does not upgrade the AMIs in a compute environment after it is created (for example, when a newer version of the Amazon ECS-optimized AMI is available). You are responsible for the management of the guest operating system (including updates and security patches) and any additional application software or utilities that you install on the compute resources. To use a new AMI for your AWS Batch jobs:

  1. Create a new compute environment with the new AMI.

  2. Add the compute environment to an existing job queue.

  3. Remove the old compute environment from your job queue.

  4. Delete the old compute environment.

", + "CancelJob": "

Cancels a job in an AWS Batch job queue. Jobs that are in the SUBMITTED, PENDING, or RUNNABLE state are canceled. Jobs that have progressed to STARTING or RUNNING are not canceled (but the API operation still succeeds, even if no job is canceled); these jobs must be terminated with the TerminateJob operation.

", + "CreateComputeEnvironment": "

Creates an AWS Batch compute environment. You can create MANAGED or UNMANAGED compute environments. MANAGED compute environments can use Amazon EC2 or AWS Fargate resources. UNMANAGED compute environments can only use EC2 resources.

In a managed compute environment, AWS Batch manages the capacity and instance types of the compute resources within the environment. This is based on the compute resource specification that you define or the launch template that you specify when you create the compute environment. You can choose either to use EC2 On-Demand Instances and EC2 Spot Instances, or to use Fargate and Fargate Spot capacity in your managed compute environment. You can optionally set a maximum price so that Spot Instances only launch when the Spot Instance price is below a specified percentage of the On-Demand price.

Multi-node parallel jobs are not supported on Spot Instances.

In an unmanaged compute environment, you can manage your own EC2 compute resources and have a lot of flexibility with how you configure your compute resources. For example, you can use custom AMI. However, you need to verify that your AMI meets the Amazon ECS container instance AMI specification. For more information, see container instance AMIs in the Amazon Elastic Container Service Developer Guide. After you have created your unmanaged compute environment, you can use the DescribeComputeEnvironments operation to find the Amazon ECS cluster that is associated with it. Then, manually launch your container instances into that Amazon ECS cluster. For more information, see Launching an Amazon ECS container instance in the Amazon Elastic Container Service Developer Guide.

AWS Batch doesn't upgrade the AMIs in a compute environment after it's created. For example, it doesn't update the AMIs when a newer version of the Amazon ECS-optimized AMI is available. Therefore, you're responsible for the management of the guest operating system (including updates and security patches) and any additional application software or utilities that you install on the compute resources. To use a new AMI for your AWS Batch jobs, complete these steps:

  1. Create a new compute environment with the new AMI.

  2. Add the compute environment to an existing job queue.

  3. Remove the earlier compute environment from your job queue.

  4. Delete the earlier compute environment.

", "CreateJobQueue": "

Creates an AWS Batch job queue. When you create a job queue, you associate one or more compute environments to the queue and assign an order of preference for the compute environments.

You also set a priority to the job queue that determines the order in which the AWS Batch scheduler places jobs onto its associated compute environments. For example, if a compute environment is associated with more than one job queue, the job queue with a higher priority is given preference for scheduling jobs to that compute environment.

", - "DeleteComputeEnvironment": "

Deletes an AWS Batch compute environment.

Before you can delete a compute environment, you must set its state to DISABLED with the UpdateComputeEnvironment API operation and disassociate it from any job queues with the UpdateJobQueue API operation.

", - "DeleteJobQueue": "

Deletes the specified job queue. You must first disable submissions for a queue with the UpdateJobQueue operation. All jobs in the queue are terminated when you delete a job queue.

It is not necessary to disassociate compute environments from a queue before submitting a DeleteJobQueue request.

", - "DeregisterJobDefinition": "

Deregisters an AWS Batch job definition. Job definitions will be permanently deleted after 180 days.

", - "DescribeComputeEnvironments": "

Describes one or more of your compute environments.

If you are using an unmanaged compute environment, you can use the DescribeComputeEnvironment operation to determine the ecsClusterArn that you should launch your Amazon ECS container instances into.

", + "DeleteComputeEnvironment": "

Deletes an AWS Batch compute environment.

Before you can delete a compute environment, you must set its state to DISABLED with the UpdateComputeEnvironment API operation and disassociate it from any job queues with the UpdateJobQueue API operation. Compute environments that use AWS Fargate resources must terminate all active jobs on that compute environment before deleting the compute environment. If this isn't done, the compute environment will end up in an invalid state.

", + "DeleteJobQueue": "

Deletes the specified job queue. You must first disable submissions for a queue with the UpdateJobQueue operation. All jobs in the queue are terminated when you delete a job queue.

It's not necessary to disassociate compute environments from a queue before submitting a DeleteJobQueue request.

", + "DeregisterJobDefinition": "

Deregisters an AWS Batch job definition. Job definitions are permanently deleted after 180 days.

", + "DescribeComputeEnvironments": "

Describes one or more of your compute environments.

If you're using an unmanaged compute environment, you can use the DescribeComputeEnvironment operation to determine the ecsClusterArn that you should launch your Amazon ECS container instances into.

", "DescribeJobDefinitions": "

Describes a list of job definitions. You can specify a status (such as ACTIVE) to only return job definitions that match that status.

", "DescribeJobQueues": "

Describes one or more of your job queues.

", "DescribeJobs": "

Describes a list of AWS Batch jobs.

", - "ListJobs": "

Returns a list of AWS Batch jobs.

You must specify only one of the following:

You can filter the results by job status with the jobStatus parameter. If you do not specify a status, only RUNNING jobs are returned.

", - "ListTagsForResource": "

List the tags for an AWS Batch resource. AWS Batch resources that support tags are compute environments, jobs, job definitions, and job queues. ARNs for child jobs of array and multi-node parallel (MNP) jobs are not supported.

", + "ListJobs": "

Returns a list of AWS Batch jobs.

You must specify only one of the following items:

You can filter the results by job status with the jobStatus parameter. If you don't specify a status, only RUNNING jobs are returned.

", + "ListTagsForResource": "

Lists the tags for an AWS Batch resource. AWS Batch resources that support tags are compute environments, jobs, job definitions, and job queues. ARNs for child jobs of array and multi-node parallel (MNP) jobs are not supported.

", "RegisterJobDefinition": "

Registers an AWS Batch job definition.

", - "SubmitJob": "

Submits an AWS Batch job from a job definition. Parameters specified during SubmitJob override parameters defined in the job definition.

", - "TagResource": "

Associates the specified tags to a resource with the specified resourceArn. If existing tags on a resource are not specified in the request parameters, they are not changed. When a resource is deleted, the tags associated with that resource are deleted as well. AWS Batch resources that support tags are compute environments, jobs, job definitions, and job queues. ARNs for child jobs of array and multi-node parallel (MNP) jobs are not supported.

", + "SubmitJob": "

Submits an AWS Batch job from a job definition. Parameters specified during SubmitJob override parameters defined in the job definition.

Jobs run on Fargate resources don't run for more than 14 days. After 14 days, the Fargate resources might no longer be available and the job is terminated.

", + "TagResource": "

Associates the specified tags to a resource with the specified resourceArn. If existing tags on a resource aren't specified in the request parameters, they aren't changed. When a resource is deleted, the tags associated with that resource are deleted as well. AWS Batch resources that support tags are compute environments, jobs, job definitions, and job queues. ARNs for child jobs of array and multi-node parallel (MNP) jobs are not supported.

", "TerminateJob": "

Terminates a job in a job queue. Jobs that are in the STARTING or RUNNING state are terminated, which causes them to transition to FAILED. Jobs that have not progressed to the STARTING state are cancelled.

", "UntagResource": "

Deletes specified tags from an AWS Batch resource.

", "UpdateComputeEnvironment": "

Updates an AWS Batch compute environment.

", @@ -53,6 +53,12 @@ "JobSummary$arrayProperties": "

The array properties of the job, if it is an array job.

" } }, + "AssignPublicIp": { + "base": null, + "refs": { + "NetworkConfiguration$assignPublicIp": "

Indicates whether the job should have a public IP address. For a job running on Fargate resources in a private subnet to send outbound traffic to the internet (for example, in order to pull container images), the private subnet requires a NAT gateway be attached to route requests to the internet. For more information, see Amazon ECS task networking. The default value is \"DISABLED\".

" + } + }, "AttemptContainerDetail": { "base": "

An object representing the details of a container that is part of a job attempt.

", "refs": { @@ -74,20 +80,24 @@ "Boolean": { "base": null, "refs": { - "ContainerDetail$readonlyRootFilesystem": "

When this parameter is true, the container is given read-only access to its root file system.

", - "ContainerDetail$privileged": "

When this parameter is true, the container is given elevated privileges on the host container instance (similar to the root user).

", + "ContainerDetail$readonlyRootFilesystem": "

When this parameter is true, the container is given read-only access to its root file system. This parameter maps to ReadonlyRootfs in the Create a container section of the Docker Remote API and the --read-only option to docker run .

", + "ContainerDetail$privileged": "

When this parameter is true, the container is given elevated permissions on the host container instance (similar to the root user). The default value is false.

This parameter isn't applicable to jobs running on Fargate resources and shouldn't be provided, or specified as false.

", "ContainerProperties$readonlyRootFilesystem": "

When this parameter is true, the container is given read-only access to its root file system. This parameter maps to ReadonlyRootfs in the Create a container section of the Docker Remote API and the --read-only option to docker run.

", - "ContainerProperties$privileged": "

When this parameter is true, the container is given elevated privileges on the host container instance (similar to the root user). This parameter maps to Privileged in the Create a container section of the Docker Remote API and the --privileged option to docker run.

", + "ContainerProperties$privileged": "

When this parameter is true, the container is given elevated permissions on the host container instance (similar to the root user). This parameter maps to Privileged in the Create a container section of the Docker Remote API and the --privileged option to docker run. The default value is false.

This parameter isn't applicable to jobs running on Fargate resources and shouldn't be provided, or specified as false.

", + "JobDefinition$propagateTags": "

Specifies whether to propagate the tags from the job or job definition to the corresponding Amazon ECS task. If no value is specified, the tags aren't propagated. Tags can only be propagated to the tasks during task creation. For tags with the same name, job tags are given priority over job definitions tags. If the total number of combined tags from the job and job definition is over 50, the job is moved to the FAILED state.

", + "JobDetail$propagateTags": "

Specifies whether to propagate the tags from the job or job definition to the corresponding Amazon ECS task. If no value is specified, the tags are not propagated. Tags can only be propagated to the tasks during task creation. For tags with the same name, job tags are given priority over job definitions tags. If the total number of combined tags from the job and job definition is over 50, the job is moved to the FAILED state.

", "LinuxParameters$initProcessEnabled": "

If true, run an init process inside the container that forwards signals and reaps processes. This parameter maps to the --init option to docker run. This parameter requires version 1.25 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log into your container instance and run the following command: sudo docker version | grep \"Server API version\"

", - "MountPoint$readOnly": "

If this value is true, the container has read-only access to the volume; otherwise, the container can write to the volume. The default value is false.

", + "MountPoint$readOnly": "

If this value is true, the container has read-only access to the volume. Otherwise, the container can write to the volume. The default value is false.

", "NodeDetails$isMainNode": "

Specifies whether the current node is the main node for a multi-node parallel job.

", - "NodePropertiesSummary$isMainNode": "

Specifies whether the current node is the main node for a multi-node parallel job.

" + "NodePropertiesSummary$isMainNode": "

Specifies whether the current node is the main node for a multi-node parallel job.

", + "RegisterJobDefinitionRequest$propagateTags": "

Specifies whether to propagate the tags from the job or job definition to the corresponding Amazon ECS task. If no value is specified, the tags are not propagated. Tags can only be propagated to the tasks during task creation. For tags with the same name, job tags are given priority over job definitions tags. If the total number of combined tags from the job and job definition is over 50, the job is moved to the FAILED state.

", + "SubmitJobRequest$propagateTags": "

Specifies whether to propagate the tags from the job or job definition to the corresponding Amazon ECS task. If no value is specified, the tags aren't propagated. Tags can only be propagated to the tasks during task creation. For tags with the same name, job tags are given priority over job definitions tags. If the total number of combined tags from the job and job definition is over 50, the job is moved to the FAILED state. When specified, this overrides the tag propagation setting in the job definition.

" } }, "CEState": { "base": null, "refs": { - "ComputeEnvironmentDetail$state": "

The state of the compute environment. The valid values are ENABLED or DISABLED.

If the state is ENABLED, then the AWS Batch scheduler can attempt to place jobs from an associated job queue on the compute resources within the environment. If the compute environment is managed, then it can scale its instances out or in automatically, based on the job queue demand.

If the state is DISABLED, then the AWS Batch scheduler does not attempt to place jobs within the environment. Jobs in a STARTING or RUNNING state continue to progress normally. Managed compute environments in the DISABLED state do not scale out. However, they scale in to minvCpus value after instances become idle.

", + "ComputeEnvironmentDetail$state": "

The state of the compute environment. The valid values are ENABLED or DISABLED.

If the state is ENABLED, then the AWS Batch scheduler can attempt to place jobs from an associated job queue on the compute resources within the environment. If the compute environment is managed, then it can scale its instances out or in automatically, based on the job queue demand.

If the state is DISABLED, then the AWS Batch scheduler doesn't attempt to place jobs within the environment. Jobs in a STARTING or RUNNING state continue to progress normally. Managed compute environments in the DISABLED state do not scale out. However, they scale in to minvCpus value after instances become idle.

", "CreateComputeEnvironmentRequest$state": "

The state of the compute environment. If the state is ENABLED, then the compute environment accepts jobs from a queue and can scale out automatically based on queues.

", "UpdateComputeEnvironmentRequest$state": "

The state of the compute environment. Compute environments in the ENABLED state can accept jobs from a queue and scale in or out automatically based on the workload demand of its associated queues.

" } @@ -101,20 +111,20 @@ "CEType": { "base": null, "refs": { - "ComputeEnvironmentDetail$type": "

The type of the compute environment.

", - "CreateComputeEnvironmentRequest$type": "

The type of the compute environment. For more information, see Compute Environments in the AWS Batch User Guide.

" + "ComputeEnvironmentDetail$type": "

The type of compute environment: EC2, SPOT, FARGATE, or FARGATE_SPOT. For more information, see Compute Environments in the AWS Batch User Guide.

", + "CreateComputeEnvironmentRequest$type": "

The type of the compute environment: MANAGED or UNMANAGED. For more information, see Compute Environments in the AWS Batch User Guide.

" } }, "CRAllocationStrategy": { "base": null, "refs": { - "ComputeResource$allocationStrategy": "

The allocation strategy to use for the compute resource in case not enough instances of the best fitting instance type can be allocated. This could be due to availability of the instance type in the region or Amazon EC2 service limits. If this is not specified, the default is BEST_FIT, which will use only the best fitting instance type, waiting for additional capacity if it's not available. This allocation strategy keeps costs lower but can limit scaling. If you are using Spot Fleets with BEST_FIT then the Spot Fleet IAM Role must be specified. BEST_FIT_PROGRESSIVE will select additional instance types that are large enough to meet the requirements of the jobs in the queue, with a preference for instance types with a lower cost per vCPU. SPOT_CAPACITY_OPTIMIZED is only available for Spot Instance compute resources and will select additional instance types that are large enough to meet the requirements of the jobs in the queue, with a preference for instance types that are less likely to be interrupted. For more information, see Allocation Strategies in the AWS Batch User Guide.

" + "ComputeResource$allocationStrategy": "

The allocation strategy to use for the compute resource if not enough instances of the best fitting instance type can be allocated. This might be because of availability of the instance type in the Region or Amazon EC2 service limits. For more information, see Allocation Strategies in the AWS Batch User Guide.

This parameter isn't applicable to jobs running on Fargate resources, and shouldn't be specified.

BEST_FIT (default)

AWS Batch selects an instance type that best fits the needs of the jobs with a preference for the lowest-cost instance type. If additional instances of the selected instance type aren't available, AWS Batch will wait for the additional instances to be available. If there are not enough instances available, or if the user is hitting Amazon EC2 service limits then additional jobs aren't run until currently running jobs have completed. This allocation strategy keeps costs lower but can limit scaling. If you are using Spot Fleets with BEST_FIT then the Spot Fleet IAM Role must be specified.

BEST_FIT_PROGRESSIVE

AWS Batch will select additional instance types that are large enough to meet the requirements of the jobs in the queue, with a preference for instance types with a lower cost per unit vCPU. If additional instances of the previously selected instance types aren't available, AWS Batch will select new instance types.

SPOT_CAPACITY_OPTIMIZED

AWS Batch will select one or more instance types that are large enough to meet the requirements of the jobs in the queue, with a preference for instance types that are less likely to be interrupted. This allocation strategy is only available for Spot Instance compute resources.

With both BEST_FIT_PROGRESSIVE and SPOT_CAPACITY_OPTIMIZED strategies, AWS Batch might need to go above maxvCpus to meet your capacity requirements. In this event, AWS Batch never exceeds maxvCpus by more than a single instance.

" } }, "CRType": { "base": null, "refs": { - "ComputeResource$type": "

The type of compute environment: EC2 or SPOT.

" + "ComputeResource$type": "

The type of compute environment: EC2, SPOT, FARGATE, or FARGATE_SPOT. For more information, see Compute Environments in the AWS Batch User Guide.

" } }, "CancelJobRequest": { @@ -128,7 +138,7 @@ } }, "ClientException": { - "base": "

These errors are usually caused by a client action, such as using an action or resource on behalf of a user that doesn't have permissions to use the action or resource, or specifying an identifier that is not valid.

", + "base": "

These errors are usually caused by a client action, such as using an action or resource on behalf of a user that doesn't have permissions to use the action or resource, or specifying an identifier that isn't valid.

", "refs": { } }, @@ -153,16 +163,16 @@ "ComputeEnvironmentOrders": { "base": null, "refs": { - "CreateJobQueueRequest$computeEnvironmentOrder": "

The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment should execute a given job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue.

", - "JobQueueDetail$computeEnvironmentOrder": "

The compute environments that are attached to the job queue and the order in which job placement is preferred. Compute environments are selected for job placement in ascending order.

", - "UpdateJobQueueRequest$computeEnvironmentOrder": "

Details the set of compute environments mapped to a job queue and their order relative to each other. This is one of the parameters used by the job scheduler to determine which compute environment should execute a given job.

" + "CreateJobQueueRequest$computeEnvironmentOrder": "

The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment should run a specific job. Compute environments must be in the VALID state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. All of the compute environments must be either EC2 (EC2 or SPOT) or Fargate (FARGATE or FARGATE_SPOT); EC2 and Fargate compute environments can't be mixed.

", + "JobQueueDetail$computeEnvironmentOrder": "

The compute environments that are attached to the job queue and the order that job placement is preferred. Compute environments are selected for job placement in ascending order.

", + "UpdateJobQueueRequest$computeEnvironmentOrder": "

Details the set of compute environments mapped to a job queue and their order relative to each other. This is one of the parameters used by the job scheduler to determine which compute environment should run a given job. All of the compute environments must be either EC2 (EC2 or SPOT) or Fargate (FARGATE or FARGATE_SPOT); EC2 and Fargate compute environments can't be mixed.

" } }, "ComputeResource": { "base": "

An object representing an AWS Batch compute resource.

", "refs": { "ComputeEnvironmentDetail$computeResources": "

The compute resources defined for the compute environment.

", - "CreateComputeEnvironmentRequest$computeResources": "

Details of the compute resources managed by the compute environment. This parameter is required for managed compute environments. For more information, see Compute Environments in the AWS Batch User Guide.

" + "CreateComputeEnvironmentRequest$computeResources": "

Details about the compute resources managed by the compute environment. This parameter is required for managed compute environments. For more information, see Compute Environments in the AWS Batch User Guide.

" } }, "ComputeResourceUpdate": { @@ -174,7 +184,7 @@ "ContainerDetail": { "base": "

An object representing the details of a container that is part of a job.

", "refs": { - "JobDetail$container": "

An object representing the details of the container that is associated with the job.

" + "JobDetail$container": "

An object representing the details of the container that's associated with the job.

" } }, "ContainerOverrides": { @@ -189,7 +199,7 @@ "refs": { "JobDefinition$containerProperties": "

An object with various properties specific to container-based jobs.

", "NodeRangeProperty$container": "

The container details for the node range.

", - "RegisterJobDefinitionRequest$containerProperties": "

An object with various properties specific to single-node container-based jobs. If the job definition's type parameter is container, then you must specify either containerProperties or nodeProperties.

" + "RegisterJobDefinitionRequest$containerProperties": "

An object with various properties specific to single-node container-based jobs. If the job definition's type parameter is container, then you must specify either containerProperties or nodeProperties.

If the job runs on Fargate resources, then you must not specify nodeProperties; use only containerProperties.

" } }, "ContainerSummary": { @@ -289,7 +299,7 @@ } }, "Device": { - "base": "

An object representing a container instance host device.

", + "base": "

An object representing a container instance host device.

This object isn't applicable to jobs running on Fargate resources and shouldn't be provided.

", "refs": { "DevicesList$member": null } @@ -309,11 +319,11 @@ "DevicesList": { "base": null, "refs": { - "LinuxParameters$devices": "

Any host devices to expose to the container. This parameter maps to Devices in the Create a container section of the Docker Remote API and the --device option to docker run.

" + "LinuxParameters$devices": "

Any host devices to expose to the container. This parameter maps to Devices in the Create a container section of the Docker Remote API and the --device option to docker run.

This parameter isn't applicable to jobs running on Fargate resources and shouldn't be provided.

" } }, "Ec2Configuration": { - "base": "

Provides information used to select Amazon Machine Images (AMIs) for instances in the compute environment. If the Ec2Configuration is not specified, the default is ECS_AL1.

", + "base": "

Provides information used to select Amazon Machine Images (AMIs) for instances in the compute environment. If the Ec2Configuration isn't specified, the default is ECS_AL1.

This object isn't applicable to jobs running on Fargate resources.

", "refs": { "Ec2ConfigurationList$member": null } @@ -321,7 +331,7 @@ "Ec2ConfigurationList": { "base": null, "refs": { - "ComputeResource$ec2Configuration": "

Provides additional details used to selecting the AMI to use for instances in a compute environment.

" + "ComputeResource$ec2Configuration": "

Provides information used to select Amazon Machine Images (AMIs) for instances in the compute environment. If Ec2Configuration isn't specified, the default is ECS_AL1.

This parameter isn't applicable to jobs running on Fargate resources, and shouldn't be specified.

" } }, "EnvironmentVariables": { @@ -329,7 +339,7 @@ "refs": { "ContainerDetail$environment": "

The environment variables to pass to a container.

Environment variables must not start with AWS_BATCH; this naming convention is reserved for variables that are set by the AWS Batch service.

", "ContainerOverrides$environment": "

The environment variables to send to the container. You can add new environment variables, which are added to the container at launch, or you can override the existing environment variables from the Docker image or the job definition.

Environment variables must not start with AWS_BATCH; this naming convention is reserved for variables that are set by the AWS Batch service.

", - "ContainerProperties$environment": "

The environment variables to pass to a container. This parameter maps to Env in the Create a container section of the Docker Remote API and the --env option to docker run.

We do not recommend using plaintext environment variables for sensitive information, such as credential data.

Environment variables must not start with AWS_BATCH; this naming convention is reserved for variables that are set by the AWS Batch service.

" + "ContainerProperties$environment": "

The environment variables to pass to a container. This parameter maps to Env in the Create a container section of the Docker Remote API and the --env option to docker run.

We don't recommend using plaintext environment variables for sensitive information, such as credential data.

Environment variables must not start with AWS_BATCH; this naming convention is reserved for variables that are set by the AWS Batch service.

" } }, "EvaluateOnExit": { @@ -344,10 +354,17 @@ "RetryStrategy$evaluateOnExit": "

Array of up to 5 objects that specify conditions under which the job should be retried or failed. If this parameter is specified, then the attempts parameter must also be specified.

" } }, + "FargatePlatformConfiguration": { + "base": "

The platform configuration for jobs running on Fargate resources. Jobs running on EC2 resources must not specify this parameter.

", + "refs": { + "ContainerDetail$fargatePlatformConfiguration": "

The platform configuration for jobs running on Fargate resources. Jobs running on EC2 resources must not specify this parameter.

", + "ContainerProperties$fargatePlatformConfiguration": "

The platform configuration for jobs running on Fargate resources. Jobs running on EC2 resources must not specify this parameter.

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

Determine whether your data volume persists on the host container instance and where it is stored. If this parameter is empty, then the Docker daemon assigns a host path for your data volume, but the data is not guaranteed to persist after the containers associated with it stop running.

", + "base": "

Determine whether your data volume persists on the host container instance and where it is stored. If this parameter is empty, then the Docker daemon assigns a host path for your data volume, but the data isn't guaranteed to persist after the containers associated with it stop running.

", "refs": { - "Volume$host": "

The contents of the host parameter determine whether your data volume persists on the host container instance and where it is stored. If the host parameter is empty, then the Docker daemon assigns a host path for your data volume. However, the data is not guaranteed to persist after the containers associated with it stop running.

" + "Volume$host": "

The contents of the host parameter determine whether your data volume persists on the host container instance and where it is stored. If the host parameter is empty, then the Docker daemon assigns a host path for your data volume. However, the data isn't guaranteed to persist after the containers associated with it stop running.

This parameter isn't applicable to jobs running on Fargate resources and shouldn't be provided.

" } }, "ImageIdOverride": { @@ -359,7 +376,7 @@ "ImageType": { "base": null, "refs": { - "Ec2Configuration$imageType": "

The image type to match with the instance type to pick an AMI. If the imageIdOverride parameter is not specified, then a recent Amazon ECS-optimized AMI will be used.

ECS_AL2

Amazon Linux 2− Default for all AWS Graviton-based instance families (for example, C6g, M6g, R6g, and T4g) and can be used for all non-GPU instance types.

ECS_AL2_NVIDIA

Amazon Linux 2 (GPU)−Default for all GPU instance families (for example P4 and G4) and can be used for all non-AWS Graviton-based instance types.

ECS_AL1

Amazon Linux−Default for all non-GPU, non-AWS-Graviton instance families. Amazon Linux is reaching the end-of-life of standard support. For more information, see Amazon Linux AMI.

" + "Ec2Configuration$imageType": "

The image type to match with the instance type to select an AMI. If the imageIdOverride parameter isn't specified, then a recent Amazon ECS-optimized AMI is used.

ECS_AL2

Amazon Linux 2− Default for all AWS Graviton-based instance families (for example, C6g, M6g, R6g, and T4g) and can be used for all non-GPU instance types.

ECS_AL2_NVIDIA

Amazon Linux 2 (GPU)−Default for all GPU instance families (for example P4 and G4) and can be used for all non-AWS Graviton-based instance types.

ECS_AL1

Amazon Linux−Default for all non-GPU, non-AWS-Graviton instance families. Amazon Linux is reaching the end-of-life of standard support. For more information, see Amazon Linux AMI.

" } }, "Integer": { @@ -372,33 +389,33 @@ "ArrayPropertiesSummary$size": "

The size of the array job. This parameter is returned for parent array jobs.

", "ArrayPropertiesSummary$index": "

The job index within the array that is associated with this job. This parameter is returned for children of array jobs.

", "AttemptContainerDetail$exitCode": "

The exit code for the job attempt. A non-zero exit code is considered a failure.

", - "ComputeEnvironmentOrder$order": "

The order of the compute environment.

", - "ComputeResource$minvCpus": "

The minimum number of Amazon EC2 vCPUs that an environment should maintain (even if the compute environment is DISABLED).

", - "ComputeResource$maxvCpus": "

The maximum number of Amazon EC2 vCPUs that an environment can reach.

", - "ComputeResource$desiredvCpus": "

The desired number of Amazon EC2 vCPUS in the compute environment.

", - "ComputeResource$bidPercentage": "

The maximum percentage that a Spot Instance price can be when compared with the On-Demand price for that instance type before instances are launched. For example, if your maximum percentage is 20%, then the Spot price must be below 20% of the current On-Demand price for that Amazon EC2 instance. You always pay the lowest (market) price and never more than your maximum percentage. If you leave this field empty, the default value is 100% of the On-Demand price.

", - "ComputeResourceUpdate$minvCpus": "

The minimum number of Amazon EC2 vCPUs that an environment should maintain.

", + "ComputeEnvironmentOrder$order": "

The order of the compute environment. Compute environments are tried in ascending order. For example, if two compute environments are associated with a job queue, the compute environment with a lower order integer value is tried for job placement first.

", + "ComputeResource$minvCpus": "

The minimum number of Amazon EC2 vCPUs that an environment should maintain (even if the compute environment is DISABLED).

This parameter isn't applicable to jobs running on Fargate resources, and shouldn't be specified.

", + "ComputeResource$maxvCpus": "

The maximum number of Amazon EC2 vCPUs that an environment can reach.

With both BEST_FIT_PROGRESSIVE and SPOT_CAPACITY_OPTIMIZED allocation strategies, AWS Batch may need to go above maxvCpus to meet your capacity requirements. In this event, AWS Batch will never go above maxvCpus by more than a single instance (e.g., no more than a single instance from among those specified in your compute environment).

", + "ComputeResource$desiredvCpus": "

The desired number of Amazon EC2 vCPUS in the compute environment. AWS Batch modifies this value between the minimum and maximum values, based on job queue demand.

This parameter isn't applicable to jobs running on Fargate resources, and shouldn't be specified.

", + "ComputeResource$bidPercentage": "

The maximum percentage that a Spot Instance price can be when compared with the On-Demand price for that instance type before instances are launched. For example, if your maximum percentage is 20%, then the Spot price must be below 20% of the current On-Demand price for that Amazon EC2 instance. You always pay the lowest (market) price and never more than your maximum percentage. If you leave this field empty, the default value is 100% of the On-Demand price.

This parameter isn't applicable to jobs running on Fargate resources, and shouldn't be specified.

", + "ComputeResourceUpdate$minvCpus": "

The minimum number of Amazon EC2 vCPUs that an environment should maintain.

This parameter isnt applicable to jobs running on Fargate resources, and shouldn't be specified.

", "ComputeResourceUpdate$maxvCpus": "

The maximum number of Amazon EC2 vCPUs that an environment can reach.

", - "ComputeResourceUpdate$desiredvCpus": "

The desired number of Amazon EC2 vCPUS in the compute environment.

", - "ContainerDetail$vcpus": "

The number of VCPUs allocated for the job. This is a required parameter.

", - "ContainerDetail$memory": "

The number of MiB of memory reserved for the job. This is a required parameter.

", + "ComputeResourceUpdate$desiredvCpus": "

The desired number of Amazon EC2 vCPUS in the compute environment.

This parameter isn't applicable to jobs running on Fargate resources, and shouldn't be specified.

", + "ContainerDetail$vcpus": "

The number of vCPUs reserved for the container. Jobs running on EC2 resources can specify the vCPU requirement for the job using resourceRequirements but the vCPU requirements can't be specified both here and in the resourceRequirement object. This parameter maps to CpuShares in the Create a container section of the Docker Remote API and the --cpu-shares option to docker run. Each vCPU is equivalent to 1,024 CPU shares. You must specify at least one vCPU. This is required but can be specified in several places. It must be specified for each node at least once.

This parameter isn't applicable to jobs running on Fargate resources. Jobs running on Fargate resources must specify the vCPU requirement for the job using resourceRequirements.

", + "ContainerDetail$memory": "

For jobs run on EC2 resources that didn't specify memory requirements using ResourceRequirement, the number of MiB of memory reserved for the job. For other jobs, including all run on Fargate resources, see resourceRequirements.

", "ContainerDetail$exitCode": "

The exit code to return upon completion.

", - "ContainerOverrides$vcpus": "

The number of vCPUs to reserve for the container. This value overrides the value set in the job definition.

", - "ContainerOverrides$memory": "

The number of MiB of memory reserved for the job. This value overrides the value set in the job definition.

", - "ContainerProperties$vcpus": "

The number of vCPUs reserved for the container. This parameter maps to CpuShares in the Create a container section of the Docker Remote API and the --cpu-shares option to docker run. Each vCPU is equivalent to 1,024 CPU shares. You must specify at least one vCPU. This is required but can be specified in several places for multi-node parallel (MNP) jobs; it must be specified for each node at least once.

", - "ContainerProperties$memory": "

The hard limit (in MiB) of memory to present to the container. If your container attempts to exceed the memory specified here, the container is killed. This parameter maps to Memory in the Create a container section of the Docker Remote API and the --memory option to docker run. You must specify at least 4 MiB of memory for a job. This is required but can be specified in several places for multi-node parallel (MNP) jobs; it must be specified for each node at least once.

If you are trying to maximize your resource utilization by providing your jobs as much memory as possible for a particular instance type, see Memory Management in the AWS Batch User Guide.

", + "ContainerOverrides$vcpus": "

This parameter is deprecated and not supported for jobs run on Fargate resources, see resourceRequirement. For jobs run on EC2 resources, the number of vCPUs to reserve for the container. This value overrides the value set in the job definition. Jobs run on EC2 resources can specify the vCPU requirement using resourceRequirement but the vCPU requirements can't be specified both here and in resourceRequirement. This parameter maps to CpuShares in the Create a container section of the Docker Remote API and the --cpu-shares option to docker run. Each vCPU is equivalent to 1,024 CPU shares. You must specify at least one vCPU.

This parameter isn't applicable to jobs running on Fargate resources and shouldn't be provided. Jobs running on Fargate resources must specify the vCPU requirement for the job using resourceRequirements.

", + "ContainerOverrides$memory": "

This parameter is deprecated and not supported for jobs run on Fargate resources, use ResourceRequirement. For jobs run on EC2 resource, the number of MiB of memory reserved for the job. This value overrides the value set in the job definition.

", + "ContainerProperties$vcpus": "

This parameter is deprecated and not supported for jobs run on Fargate resources, see resourceRequirement. The number of vCPUs reserved for the container. Jobs running on EC2 resources can specify the vCPU requirement for the job using resourceRequirements but the vCPU requirements can't be specified both here and in the resourceRequirement structure. This parameter maps to CpuShares in the Create a container section of the Docker Remote API and the --cpu-shares option to docker run. Each vCPU is equivalent to 1,024 CPU shares. You must specify at least one vCPU. This is required but can be specified in several places. It must be specified for each node at least once.

This parameter isn't applicable to jobs running on Fargate resources and shouldn't be provided. Jobs running on Fargate resources must specify the vCPU requirement for the job using resourceRequirements.

", + "ContainerProperties$memory": "

This parameter is deprecated and not supported for jobs run on Fargate resources, use ResourceRequirement. For jobs run on EC2 resources can specify the memory requirement using the ResourceRequirement structure. The hard limit (in MiB) of memory to present to the container. If your container attempts to exceed the memory specified here, the container is killed. This parameter maps to Memory in the Create a container section of the Docker Remote API and the --memory option to docker run. You must specify at least 4 MiB of memory for a job. This is required but can be specified in several places; it must be specified for each node at least once.

If you're trying to maximize your resource utilization by providing your jobs as much memory as possible for a particular instance type, see Memory Management in the AWS Batch User Guide.

", "ContainerSummary$exitCode": "

The exit code to return upon completion.

", - "CreateJobQueueRequest$priority": "

The priority of the job queue. Job queues with a higher priority (or a higher integer value for the priority parameter) are evaluated first when associated with the same compute environment. Priority is determined in descending order, for example, a job queue with a priority value of 10 is given scheduling preference over a job queue with a priority value of 1.

", - "DescribeComputeEnvironmentsRequest$maxResults": "

The maximum number of cluster results returned by DescribeComputeEnvironments in paginated output. When this parameter is used, DescribeComputeEnvironments only returns maxResults results in a single page along with a nextToken response element. The remaining results of the initial request can be seen by sending another DescribeComputeEnvironments request with the returned nextToken value. This value can be between 1 and 100. If this parameter is not used, then DescribeComputeEnvironments returns up to 100 results and a nextToken value if applicable.

", - "DescribeJobDefinitionsRequest$maxResults": "

The maximum number of results returned by DescribeJobDefinitions in paginated output. When this parameter is used, DescribeJobDefinitions only returns maxResults results in a single page along with a nextToken response element. The remaining results of the initial request can be seen by sending another DescribeJobDefinitions request with the returned nextToken value. This value can be between 1 and 100. If this parameter is not used, then DescribeJobDefinitions returns up to 100 results and a nextToken value if applicable.

", - "DescribeJobQueuesRequest$maxResults": "

The maximum number of results returned by DescribeJobQueues in paginated output. When this parameter is used, DescribeJobQueues only returns maxResults results in a single page along with a nextToken response element. The remaining results of the initial request can be seen by sending another DescribeJobQueues request with the returned nextToken value. This value can be between 1 and 100. If this parameter is not used, then DescribeJobQueues returns up to 100 results and a nextToken value if applicable.

", + "CreateJobQueueRequest$priority": "

The priority of the job queue. Job queues with a higher priority (or a higher integer value for the priority parameter) are evaluated first when associated with the same compute environment. Priority is determined in descending order. For example, a job queue with a priority value of 10 is given scheduling preference over a job queue with a priority value of 1.

", + "DescribeComputeEnvironmentsRequest$maxResults": "

The maximum number of cluster results returned by DescribeComputeEnvironments in paginated output. When this parameter is used, DescribeComputeEnvironments only returns maxResults results in a single page along with a nextToken response element. The remaining results of the initial request can be seen by sending another DescribeComputeEnvironments request with the returned nextToken value. This value can be between 1 and 100. If this parameter isn't used, then DescribeComputeEnvironments returns up to 100 results and a nextToken value if applicable.

", + "DescribeJobDefinitionsRequest$maxResults": "

The maximum number of results returned by DescribeJobDefinitions in paginated output. When this parameter is used, DescribeJobDefinitions only returns maxResults results in a single page along with a nextToken response element. The remaining results of the initial request can be seen by sending another DescribeJobDefinitions request with the returned nextToken value. This value can be between 1 and 100. If this parameter isn't used, then DescribeJobDefinitions returns up to 100 results and a nextToken value if applicable.

", + "DescribeJobQueuesRequest$maxResults": "

The maximum number of results returned by DescribeJobQueues in paginated output. When this parameter is used, DescribeJobQueues only returns maxResults results in a single page along with a nextToken response element. The remaining results of the initial request can be seen by sending another DescribeJobQueues request with the returned nextToken value. This value can be between 1 and 100. If this parameter isn't used, then DescribeJobQueues returns up to 100 results and a nextToken value if applicable.

", "JobDefinition$revision": "

The revision of the job definition.

", "JobQueueDetail$priority": "

The priority of the job queue.

", - "JobTimeout$attemptDurationSeconds": "

The time duration in seconds (measured from the job attempt's startedAt timestamp) after which AWS Batch terminates your jobs if they have not finished.

", - "LinuxParameters$sharedMemorySize": "

The value for the size (in MiB) of the /dev/shm volume. This parameter maps to the --shm-size option to docker run.

", - "LinuxParameters$maxSwap": "

The total amount of swap memory (in MiB) a container can use. This parameter will be translated to the --memory-swap option to docker run where the value would be the sum of the container memory plus the maxSwap value. For more information, see --memory-swap details in the Docker documentation.

If a maxSwap value of 0 is specified, the container will not use swap. Accepted values are 0 or any positive integer. If the maxSwap parameter is omitted, the container will use the swap configuration for the container instance it is running on. A maxSwap value must be set for the swappiness parameter to be used.

", - "LinuxParameters$swappiness": "

This allows you to tune a container's memory swappiness behavior. A swappiness value of 0 will cause swapping to not happen unless absolutely necessary. A swappiness value of 100 will cause pages to be swapped very aggressively. Accepted values are whole numbers between 0 and 100. If the swappiness parameter is not specified, a default value of 60 is used. If a value is not specified for maxSwap then this parameter is ignored. This parameter maps to the --memory-swappiness option to docker run.

", - "ListJobsRequest$maxResults": "

The maximum number of results returned by ListJobs in paginated output. When this parameter is used, ListJobs only returns maxResults results in a single page along with a nextToken response element. The remaining results of the initial request can be seen by sending another ListJobs request with the returned nextToken value. This value can be between 1 and 100. If this parameter is not used, then ListJobs returns up to 100 results and a nextToken value if applicable.

", + "JobTimeout$attemptDurationSeconds": "

The time duration in seconds (measured from the job attempt's startedAt timestamp) after which AWS Batch terminates your jobs if they have not finished. The minimum value for the timeout is 60 seconds.

", + "LinuxParameters$sharedMemorySize": "

The value for the size (in MiB) of the /dev/shm volume. This parameter maps to the --shm-size option to docker run.

This parameter isn't applicable to jobs running on Fargate resources and shouldn't be provided.

", + "LinuxParameters$maxSwap": "

The total amount of swap memory (in MiB) a container can use. This parameter is translated to the --memory-swap option to docker run where the value is the sum of the container memory plus the maxSwap value. For more information, see --memory-swap details in the Docker documentation.

If a maxSwap value of 0 is specified, the container doesn't use swap. Accepted values are 0 or any positive integer. If the maxSwap parameter is omitted, the container doesn't use the swap configuration for the container instance it is running on. A maxSwap value must be set for the swappiness parameter to be used.

This parameter isn't applicable to jobs running on Fargate resources and shouldn't be provided.

", + "LinuxParameters$swappiness": "

This allows you to tune a container's memory swappiness behavior. A swappiness value of 0 causes swapping not to happen unless absolutely necessary. A swappiness value of 100 causes pages to be swapped very aggressively. Accepted values are whole numbers between 0 and 100. If the swappiness parameter isn't specified, a default value of 60 is used. If a value isn't specified for maxSwap then this parameter is ignored. This parameter maps to the --memory-swappiness option to docker run.

This parameter isn't applicable to jobs running on Fargate resources and shouldn't be provided.

", + "ListJobsRequest$maxResults": "

The maximum number of results returned by ListJobs in paginated output. When this parameter is used, ListJobs only returns maxResults results in a single page along with a nextToken response element. The remaining results of the initial request can be seen by sending another ListJobs request with the returned nextToken value. This value can be between 1 and 100. If this parameter isn't used, then ListJobs returns up to 100 results and a nextToken value if applicable.

", "NodeDetails$nodeIndex": "

The node index for the node. Node index numbering begins at zero. This index is also available on the node with the AWS_BATCH_JOB_NODE_INDEX environment variable.

", "NodeOverrides$numNodes": "

The number of nodes to use with a multi-node parallel job. This value overrides the number of nodes that are specified in the job definition. To use this override:

", "NodeProperties$numNodes": "

The number of nodes associated with a multi-node parallel job.

", @@ -416,8 +433,8 @@ "JQState": { "base": null, "refs": { - "CreateJobQueueRequest$state": "

The state of the job queue. If the job queue state is ENABLED, it is able to accept jobs. If the job queue state is DISABLED, new jobs cannot be added to the queue, but jobs already in the queue can finish.

", - "JobQueueDetail$state": "

Describes the ability of the queue to accept new jobs. If the job queue state is ENABLED, it is able to accept jobs. If the job queue state is DISABLED, new jobs cannot be added to the queue, but jobs already in the queue can finish.

", + "CreateJobQueueRequest$state": "

The state of the job queue. If the job queue state is ENABLED, it is able to accept jobs. If the job queue state is DISABLED, new jobs can't be added to the queue, but jobs already in the queue can finish.

", + "JobQueueDetail$state": "

Describes the ability of the queue to accept new jobs. If the job queue state is ENABLED, it's able to accept jobs. If the job queue state is DISABLED, new jobs can't be added to the queue, but jobs already in the queue can finish.

", "UpdateJobQueueRequest$state": "

Describes the queue's ability to accept new jobs. If the job queue state is ENABLED, it is able to accept jobs. If the job queue state is DISABLED, new jobs cannot be added to the queue, but jobs already in the queue can finish.

" } }, @@ -442,7 +459,7 @@ "JobDefinitionType": { "base": null, "refs": { - "RegisterJobDefinitionRequest$type": "

The type of job definition.

" + "RegisterJobDefinitionRequest$type": "

The type of job definition. For more information about multi-node parallel jobs, see Creating a multi-node parallel job definition in the AWS Batch User Guide.

If the job is run on Fargate resources, then multinode isn't supported.

" } }, "JobDependency": { @@ -454,7 +471,7 @@ "JobDependencyList": { "base": null, "refs": { - "JobDetail$dependsOn": "

A list of job IDs on which this job depends.

", + "JobDetail$dependsOn": "

A list of job IDs that this job depends on.

", "SubmitJobRequest$dependsOn": "

A list of dependencies for the job. A job can depend upon a maximum of 20 jobs. You can specify a SEQUENTIAL type dependency without specifying a job ID for array jobs so that each child array job completes sequentially, starting at index 0. You can also specify an N_TO_N type dependency with a job ID for array jobs. In that case, each index child of this job must wait for the corresponding index child of each dependency to complete before it can begin.

" } }, @@ -487,7 +504,7 @@ "refs": { "JobDetail$status": "

The current status for the job.

If your jobs do not progress to STARTING, see Jobs Stuck in RUNNABLE Status in the troubleshooting section of the AWS Batch User Guide.

", "JobSummary$status": "

The current status for the job.

", - "ListJobsRequest$jobStatus": "

The job status with which to filter jobs in the specified queue. If you do not specify a status, only RUNNING jobs are returned.

" + "ListJobsRequest$jobStatus": "

The job status used to filter jobs in the specified queue. If you don't specify a status, only RUNNING jobs are returned.

" } }, "JobSummary": { @@ -505,10 +522,10 @@ "JobTimeout": { "base": "

An object representing a job timeout configuration.

", "refs": { - "JobDefinition$timeout": "

The timeout configuration for jobs that are submitted with this job definition. You can specify a timeout duration after which AWS Batch terminates your jobs if they have not finished.

", + "JobDefinition$timeout": "

The timeout configuration for jobs that are submitted with this job definition. You can specify a timeout duration after which AWS Batch terminates your jobs if they haven't finished.

", "JobDetail$timeout": "

The timeout configuration for the job.

", - "RegisterJobDefinitionRequest$timeout": "

The timeout configuration for jobs that are submitted with this job definition, after which AWS Batch terminates your jobs if they have not finished. If a job is terminated due to a timeout, it is not retried. The minimum value for the timeout is 60 seconds. Any timeout configuration that is specified during a SubmitJob operation overrides the timeout configuration defined here. For more information, see Job Timeouts in the Amazon Elastic Container Service Developer Guide.

", - "SubmitJobRequest$timeout": "

The timeout configuration for this SubmitJob operation. You can specify a timeout duration after which AWS Batch terminates your jobs if they have not finished. If a job is terminated due to a timeout, it is not retried. The minimum value for the timeout is 60 seconds. This configuration overrides any timeout configuration specified in the job definition. For array jobs, child jobs have the same timeout configuration as the parent job. For more information, see Job Timeouts in the Amazon Elastic Container Service Developer Guide.

" + "RegisterJobDefinitionRequest$timeout": "

The timeout configuration for jobs that are submitted with this job definition, after which AWS Batch terminates your jobs if they have not finished. If a job is terminated due to a timeout, it isn't retried. The minimum value for the timeout is 60 seconds. Any timeout configuration that is specified during a SubmitJob operation overrides the timeout configuration defined here. For more information, see Job Timeouts in the AWS Batch User Guide.

", + "SubmitJobRequest$timeout": "

The timeout configuration for this SubmitJob operation. You can specify a timeout duration after which AWS Batch terminates your jobs if they haven't finished. If a job is terminated due to a timeout, it isn't retried. The minimum value for the timeout is 60 seconds. This configuration overrides any timeout configuration specified in the job definition. For array jobs, child jobs have the same timeout configuration as the parent job. For more information, see Job Timeouts in the Amazon Elastic Container Service Developer Guide.

" } }, "KeyValuePair": { @@ -518,9 +535,9 @@ } }, "LaunchTemplateSpecification": { - "base": "

An object representing a launch template associated with a compute resource. You must specify either the launch template ID or launch template name in the request, but not both.

", + "base": "

An object representing a launch template associated with a compute resource. You must specify either the launch template ID or launch template name in the request, but not both.

If security groups are specified using both the securityGroupIds parameter of CreateComputeEnvironment and the launch template, the values in the securityGroupIds parameter of CreateComputeEnvironment will be used.

This object isn't applicable to jobs running on Fargate resources.

", "refs": { - "ComputeResource$launchTemplate": "

The launch template to use for your compute resources. Any other compute resource parameters that you specify in a CreateComputeEnvironment API operation override the same parameters in the launch template. You must specify either the launch template ID or launch template name in the request, but not both. For more information, see Launch Template Support in the AWS Batch User Guide.

" + "ComputeResource$launchTemplate": "

The launch template to use for your compute resources. Any other compute resource parameters that you specify in a CreateComputeEnvironment API operation override the same parameters in the launch template. You must specify either the launch template ID or launch template name in the request, but not both. For more information, see Launch Template Support in the AWS Batch User Guide.

This parameter isn't applicable to jobs running on Fargate resources, and shouldn't be specified.

" } }, "LinuxParameters": { @@ -553,8 +570,8 @@ "LogConfiguration": { "base": "

Log configuration options to send to a custom log driver for the container.

", "refs": { - "ContainerDetail$logConfiguration": "

The log configuration specification for the container.

This parameter maps to LogConfig in the Create a container section of the Docker Remote API and the --log-driver option to docker run. By default, containers use the same logging driver that the Docker daemon uses. However the container may use a different logging driver than the Docker daemon by specifying a log driver with this parameter in the container definition. To use a different logging driver for a container, the log system must be configured properly on the container instance (or on a different log server for remote logging options). For more information on the options for different supported log drivers, see Configure logging drivers in the Docker documentation.

AWS Batch currently supports a subset of the logging drivers available to the Docker daemon (shown in the LogConfiguration data type). Additional log drivers may be available in future releases of the Amazon ECS container agent.

This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log into your container instance and run the following command: sudo docker version | grep \"Server API version\"

The Amazon ECS container agent running on a container instance must register the logging drivers available on that instance with the ECS_AVAILABLE_LOGGING_DRIVERS environment variable before containers placed on that instance can use these log configuration options. For more information, see Amazon ECS Container Agent Configuration in the Amazon Elastic Container Service Developer Guide.

", - "ContainerProperties$logConfiguration": "

The log configuration specification for the container.

This parameter maps to LogConfig in the Create a container section of the Docker Remote API and the --log-driver option to docker run. By default, containers use the same logging driver that the Docker daemon uses. However the container may use a different logging driver than the Docker daemon by specifying a log driver with this parameter in the container definition. To use a different logging driver for a container, the log system must be configured properly on the container instance (or on a different log server for remote logging options). For more information on the options for different supported log drivers, see Configure logging drivers in the Docker documentation.

AWS Batch currently supports a subset of the logging drivers available to the Docker daemon (shown in the LogConfiguration data type).

This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log into your container instance and run the following command: sudo docker version | grep \"Server API version\"

The Amazon ECS container agent running on a container instance must register the logging drivers available on that instance with the ECS_AVAILABLE_LOGGING_DRIVERS environment variable before containers placed on that instance can use these log configuration options. For more information, see Amazon ECS Container Agent Configuration in the Amazon Elastic Container Service Developer Guide.

" + "ContainerDetail$logConfiguration": "

The log configuration specification for the container.

This parameter maps to LogConfig in the Create a container section of the Docker Remote API and the --log-driver option to docker run. By default, containers use the same logging driver that the Docker daemon uses. However the container might use a different logging driver than the Docker daemon by specifying a log driver with this parameter in the container definition. To use a different logging driver for a container, the log system must be configured properly on the container instance. Or, alternatively, it must be configured on a different log server for remote logging options. For more information on the options for different supported log drivers, see Configure logging drivers in the Docker documentation.

AWS Batch currently supports a subset of the logging drivers available to the Docker daemon (shown in the LogConfiguration data type). Additional log drivers may be available in future releases of the Amazon ECS container agent.

This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log into your container instance and run the following command: sudo docker version | grep \"Server API version\"

The Amazon ECS container agent running on a container instance must register the logging drivers available on that instance with the ECS_AVAILABLE_LOGGING_DRIVERS environment variable before containers placed on that instance can use these log configuration options. For more information, see Amazon ECS Container Agent Configuration in the Amazon Elastic Container Service Developer Guide.

", + "ContainerProperties$logConfiguration": "

The log configuration specification for the container.

This parameter maps to LogConfig in the Create a container section of the Docker Remote API and the --log-driver option to docker run. By default, containers use the same logging driver that the Docker daemon uses. However the container might use a different logging driver than the Docker daemon by specifying a log driver with this parameter in the container definition. To use a different logging driver for a container, the log system must be configured properly on the container instance (or on a different log server for remote logging options). For more information on the options for different supported log drivers, see Configure logging drivers in the Docker documentation.

AWS Batch currently supports a subset of the logging drivers available to the Docker daemon (shown in the LogConfiguration data type).

This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log into your container instance and run the following command: sudo docker version | grep \"Server API version\"

The Amazon ECS container agent running on a container instance must register the logging drivers available on that instance with the ECS_AVAILABLE_LOGGING_DRIVERS environment variable before containers placed on that instance can use these log configuration options. For more information, see Amazon ECS Container Agent Configuration in the Amazon Elastic Container Service Developer Guide.

" } }, "LogConfigurationOptionsMap": { @@ -566,7 +583,7 @@ "LogDriver": { "base": null, "refs": { - "LogConfiguration$logDriver": "

The log driver to use for the container. The valid values listed for this parameter are log drivers that the Amazon ECS container agent can communicate with by default.

The supported log drivers are awslogs, fluentd, gelf, json-file, journald, logentries, syslog, and splunk.

awslogs

Specifies the Amazon CloudWatch Logs logging driver. For more information, see Using the awslogs Log Driver in the AWS Batch User Guide and Amazon CloudWatch Logs logging driver in the Docker documentation.

fluentd

Specifies the Fluentd logging driver. For more information, including usage and options, see Fluentd logging driver in the Docker documentation.

gelf

Specifies the Graylog Extended Format (GELF) logging driver. For more information, including usage and options, see Graylog Extended Format logging driver in the Docker documentation.

journald

Specifies the journald logging driver. For more information, including usage and options, see Journald logging driver in the Docker documentation.

json-file

Specifies the JSON file logging driver. For more information, including usage and options, see JSON File logging driver in the Docker documentation.

splunk

Specifies the Splunk logging driver. For more information, including usage and options, see Splunk logging driver in the Docker documentation.

syslog

Specifies the syslog logging driver. For more information, including usage and options, see Syslog logging driver in the Docker documentation.

If you have a custom driver that is not listed earlier that you would like to work with the Amazon ECS container agent, you can fork the Amazon ECS container agent project that is available on GitHub and customize it to work with that driver. We encourage you to submit pull requests for changes that you would like to have included. However, Amazon Web Services does not currently support running modified copies of this software.

This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log into your container instance and run the following command: sudo docker version | grep \"Server API version\"

" + "LogConfiguration$logDriver": "

The log driver to use for the container. The valid values listed for this parameter are log drivers that the Amazon ECS container agent can communicate with by default.

The supported log drivers are awslogs, fluentd, gelf, json-file, journald, logentries, syslog, and splunk.

Jobs running on Fargate resources are restricted to the awslogs and splunk log drivers.

awslogs

Specifies the Amazon CloudWatch Logs logging driver. For more information, see Using the awslogs Log Driver in the AWS Batch User Guide and Amazon CloudWatch Logs logging driver in the Docker documentation.

fluentd

Specifies the Fluentd logging driver. For more information, including usage and options, see Fluentd logging driver in the Docker documentation.

gelf

Specifies the Graylog Extended Format (GELF) logging driver. For more information, including usage and options, see Graylog Extended Format logging driver in the Docker documentation.

journald

Specifies the journald logging driver. For more information, including usage and options, see Journald logging driver in the Docker documentation.

json-file

Specifies the JSON file logging driver. For more information, including usage and options, see JSON File logging driver in the Docker documentation.

splunk

Specifies the Splunk logging driver. For more information, including usage and options, see Splunk logging driver in the Docker documentation.

syslog

Specifies the syslog logging driver. For more information, including usage and options, see Syslog logging driver in the Docker documentation.

If you have a custom driver that isn't listed earlier that you want to work with the Amazon ECS container agent, you can fork the Amazon ECS container agent project that is available on GitHub and customize it to work with that driver. We encourage you to submit pull requests for changes that you want to have included. However, Amazon Web Services doesn't currently support running modified copies of this software.

This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log into your container instance and run the following command: sudo docker version | grep \"Server API version\"

" } }, "Long": { @@ -575,7 +592,7 @@ "AttemptDetail$startedAt": "

The Unix timestamp (in milliseconds) for when the attempt was started (when the attempt transitioned from the STARTING state to the RUNNING state).

", "AttemptDetail$stoppedAt": "

The Unix timestamp (in milliseconds) for when the attempt was stopped (when the attempt transitioned from the RUNNING state to a terminal state, such as SUCCEEDED or FAILED).

", "JobDetail$createdAt": "

The Unix timestamp (in milliseconds) for when the job was created. For non-array jobs and parent array jobs, this is when the job entered the SUBMITTED state (at the time SubmitJob was called). For array child jobs, this is when the child job was spawned by its parent and entered the PENDING state.

", - "JobDetail$startedAt": "

The Unix timestamp (in milliseconds) for when the job was started (when the job transitioned from the STARTING state to the RUNNING state). This parameter is not provided for child jobs of array jobs or multi-node parallel jobs.

", + "JobDetail$startedAt": "

The Unix timestamp (in milliseconds) for when the job was started (when the job transitioned from the STARTING state to the RUNNING state). This parameter isn't provided for child jobs of array jobs or multi-node parallel jobs.

", "JobDetail$stoppedAt": "

The Unix timestamp (in milliseconds) for when the job was stopped (when the job transitioned from the RUNNING state to a terminal state, such as SUCCEEDED or FAILED).

", "JobSummary$createdAt": "

The Unix timestamp for when the job was created. For non-array jobs and parent array jobs, this is when the job entered the SUBMITTED state (at the time SubmitJob was called). For array child jobs, this is when the child job was spawned by its parent and entered the PENDING state.

", "JobSummary$startedAt": "

The Unix timestamp for when the job was started (when the job transitioned from the STARTING state to the RUNNING state).

", @@ -595,6 +612,13 @@ "ContainerProperties$mountPoints": "

The mount points for data volumes in your container. This parameter maps to Volumes in the Create a container section of the Docker Remote API and the --volume option to docker run.

" } }, + "NetworkConfiguration": { + "base": "

The network configuration for jobs running on Fargate resources. Jobs running on EC2 resources must not specify this parameter.

", + "refs": { + "ContainerDetail$networkConfiguration": "

The network configuration for jobs running on Fargate resources. Jobs running on EC2 resources must not specify this parameter.

", + "ContainerProperties$networkConfiguration": "

The network configuration for jobs running on Fargate resources. Jobs running on EC2 resources must not specify this parameter.

" + } + }, "NetworkInterface": { "base": "

An object representing the elastic network interface for a multi-node parallel job node.

", "refs": { @@ -615,23 +639,23 @@ } }, "NodeOverrides": { - "base": "

Object representing any node overrides to a job definition that is used in a SubmitJob API operation.

", + "base": "

Object representing any node overrides to a job definition that is used in a SubmitJob API operation.

This isn't applicable to jobs running on Fargate resources and shouldn't be provided; use containerOverrides instead.

", "refs": { - "SubmitJobRequest$nodeOverrides": "

A list of node overrides in JSON format that specify the node range to target and the container overrides for that node range.

" + "SubmitJobRequest$nodeOverrides": "

A list of node overrides in JSON format that specify the node range to target and the container overrides for that node range.

This parameter isn't applicable to jobs running on Fargate resources; use containerOverrides instead.

" } }, "NodeProperties": { "base": "

An object representing the node properties of a multi-node parallel job.

", "refs": { - "JobDefinition$nodeProperties": "

An object with various properties specific to multi-node parallel jobs.

", - "JobDetail$nodeProperties": "

An object representing the node properties of a multi-node parallel job.

", - "RegisterJobDefinitionRequest$nodeProperties": "

An object with various properties specific to multi-node parallel jobs. If you specify node properties for a job, it becomes a multi-node parallel job. For more information, see Multi-node Parallel Jobs in the AWS Batch User Guide. If the job definition's type parameter is container, then you must specify either containerProperties or nodeProperties.

" + "JobDefinition$nodeProperties": "

An object with various properties specific to multi-node parallel jobs.

If the job runs on Fargate resources, then you must not specify nodeProperties; use containerProperties instead.

", + "JobDetail$nodeProperties": "

An object representing the node properties of a multi-node parallel job.

This isn't applicable to jobs running on Fargate resources.

", + "RegisterJobDefinitionRequest$nodeProperties": "

An object with various properties specific to multi-node parallel jobs. If you specify node properties for a job, it becomes a multi-node parallel job. For more information, see Multi-node Parallel Jobs in the AWS Batch User Guide. If the job definition's type parameter is container, then you must specify either containerProperties or nodeProperties.

If the job runs on Fargate resources, then you must not specify nodeProperties; use containerProperties instead.

" } }, "NodePropertiesSummary": { "base": "

An object representing the properties of a node that is associated with a multi-node parallel job.

", "refs": { - "JobSummary$nodeProperties": "

The node properties for a single node in a job summary list.

" + "JobSummary$nodeProperties": "

The node properties for a single node in a job summary list.

This isn't applicable to jobs running on Fargate resources.

" } }, "NodePropertyOverride": { @@ -667,6 +691,20 @@ "SubmitJobRequest$parameters": "

Additional parameters passed to the job that replace parameter substitution placeholders that are set in the job definition. Parameters are specified as a key and value pair mapping. Parameters in a SubmitJob request override any corresponding parameter defaults from the job definition.

" } }, + "PlatformCapability": { + "base": null, + "refs": { + "PlatformCapabilityList$member": null + } + }, + "PlatformCapabilityList": { + "base": null, + "refs": { + "JobDefinition$platformCapabilities": "

The platform capabilities required by the job definition. If no value is specified, it defaults to EC2. Jobs run on Fargate resources specify FARGATE.

", + "JobDetail$platformCapabilities": "

The platform capabilities required by the job definition. If no value is specified, it defaults to EC2. Jobs run on Fargate resources specify FARGATE.

", + "RegisterJobDefinitionRequest$platformCapabilities": "

The platform capabilities required by the job definition. If no value is specified, it defaults to EC2. To run the job on Fargate resources, specify FARGATE.

" + } + }, "RegisterJobDefinitionRequest": { "base": null, "refs": { @@ -678,7 +716,7 @@ } }, "ResourceRequirement": { - "base": "

The type and amount of a resource to assign to a container. Currently, the only supported resource type is GPU.

", + "base": "

The type and amount of a resource to assign to a container. The supported resources include GPU, MEMORY, and VCPU.

", "refs": { "ResourceRequirements$member": null } @@ -686,34 +724,34 @@ "ResourceRequirements": { "base": null, "refs": { - "ContainerDetail$resourceRequirements": "

The type and amount of a resource to assign to a container. Currently, the only supported resource is GPU.

", - "ContainerOverrides$resourceRequirements": "

The type and amount of a resource to assign to a container. This value overrides the value set in the job definition. Currently, the only supported resource is GPU.

", - "ContainerProperties$resourceRequirements": "

The type and amount of a resource to assign to a container. Currently, the only supported resource is GPU.

" + "ContainerDetail$resourceRequirements": "

The type and amount of resources to assign to a container. The supported resources include GPU, MEMORY, and VCPU.

", + "ContainerOverrides$resourceRequirements": "

The type and amount of resources to assign to a container. This overrides the settings in the job definition. The supported resources include GPU, MEMORY, and VCPU.

", + "ContainerProperties$resourceRequirements": "

The type and amount of resources to assign to a container. The supported resources include GPU, MEMORY, and VCPU.

" } }, "ResourceType": { "base": null, "refs": { - "ResourceRequirement$type": "

The type of resource to assign to a container. Currently, the only supported resource type is GPU.

" + "ResourceRequirement$type": "

The type of resource to assign to a container. The supported resources include GPU, MEMORY, and VCPU.

" } }, "RetryAction": { "base": null, "refs": { - "EvaluateOnExit$action": "

Specifies the action to take if all of the specified conditions (onStatusReason, onReason, and onExitCode) are met.

" + "EvaluateOnExit$action": "

Specifies the action to take if all of the specified conditions (onStatusReason, onReason, and onExitCode) are met. The values are not case sensitive.

" } }, "RetryStrategy": { - "base": "

The retry strategy associated with a job.

", + "base": "

The retry strategy associated with a job. For more information, see Automated job retries in the AWS Batch User Guide.

", "refs": { "JobDefinition$retryStrategy": "

The retry strategy to use for failed jobs that are submitted with this job definition.

", "JobDetail$retryStrategy": "

The retry strategy to use for this job if an attempt fails.

", - "RegisterJobDefinitionRequest$retryStrategy": "

The retry strategy to use for failed jobs that are submitted with this job definition. Any retry strategy that is specified during a SubmitJob operation overrides the retry strategy defined here. If a job is terminated due to a timeout, it is not retried.

", + "RegisterJobDefinitionRequest$retryStrategy": "

The retry strategy to use for failed jobs that are submitted with this job definition. Any retry strategy that is specified during a SubmitJob operation overrides the retry strategy defined here. If a job is terminated due to a timeout, it isn't retried.

", "SubmitJobRequest$retryStrategy": "

The retry strategy to use for failed jobs from this SubmitJob operation. When a retry strategy is specified here, it overrides the retry strategy defined in the job definition.

" } }, "Secret": { - "base": "

An object representing the secret to expose to your container. Secrets can be exposed to a container in the following ways:

For more information, see Specifying Sensitive Data in the Amazon Elastic Container Service Developer Guide.

", + "base": "

An object representing the secret to expose to your container. Secrets can be exposed to a container in the following ways:

For more information, see Specifying sensitive data in the AWS Batch User Guide.

", "refs": { "SecretList$member": null } @@ -721,8 +759,8 @@ "SecretList": { "base": null, "refs": { - "ContainerDetail$secrets": "

The secrets to pass to the container. For more information, see Specifying Sensitive Data in the Amazon Elastic Container Service Developer Guide.

", - "ContainerProperties$secrets": "

The secrets for the container. For more information, see Specifying Sensitive Data in the Amazon Elastic Container Service Developer Guide.

", + "ContainerDetail$secrets": "

The secrets to pass to the container. For more information, see Specifying sensitive data in the AWS Batch User Guide.

", + "ContainerProperties$secrets": "

The secrets for the container. For more information, see Specifying sensitive data in the AWS Batch User Guide.

", "LogConfiguration$secretOptions": "

The secrets to pass to the log configuration. For more information, see Specifying Sensitive Data in the AWS Batch User Guide.

" } }, @@ -749,29 +787,29 @@ "ComputeEnvironmentDetail$statusReason": "

A short, human-readable string to provide additional details about the current status of the compute environment.

", "ComputeEnvironmentDetail$serviceRole": "

The service role associated with the compute environment that allows AWS Batch to make calls to AWS API operations on your behalf.

", "ComputeEnvironmentOrder$computeEnvironment": "

The Amazon Resource Name (ARN) of the compute environment.

", - "ComputeResource$imageId": "

The Amazon Machine Image (AMI) ID used for instances launched in the compute environment. This parameter is overridden by the imageIdOverride member of the Ec2Configuration structure.

", - "ComputeResource$ec2KeyPair": "

The Amazon EC2 key pair that is used for instances launched in the compute environment.

", - "ComputeResource$instanceRole": "

The Amazon ECS instance profile applied to Amazon EC2 instances in a compute environment. You can specify the short name or full Amazon Resource Name (ARN) of an instance profile. For example, ecsInstanceRole or arn:aws:iam::<aws_account_id>:instance-profile/ecsInstanceRole . For more information, see Amazon ECS Instance Role in the AWS Batch User Guide.

", - "ComputeResource$placementGroup": "

The Amazon EC2 placement group to associate with your compute resources. If you intend to submit multi-node parallel jobs to your compute environment, you should consider creating a cluster placement group and associate it with your compute resources. This keeps your multi-node parallel job on a logical grouping of instances within a single Availability Zone with high network flow potential. For more information, see Placement Groups in the Amazon EC2 User Guide for Linux Instances.

", - "ComputeResource$spotIamFleetRole": "

The Amazon Resource Name (ARN) of the Amazon EC2 Spot Fleet IAM role applied to a SPOT compute environment. This role is required if the allocation strategy set to BEST_FIT or if the allocation strategy is not specified. For more information, see Amazon EC2 Spot Fleet Role in the AWS Batch User Guide.

", + "ComputeResource$imageId": "

The Amazon Machine Image (AMI) ID used for instances launched in the compute environment. This parameter is overridden by the imageIdOverride member of the Ec2Configuration structure.

This parameter isn't applicable to jobs running on Fargate resources, and shouldn't be specified.

The AMI that you choose for a compute environment must match the architecture of the instance types that you intend to use for that compute environment. For example, if your compute environment uses A1 instance types, the compute resource AMI that you choose must support ARM instances. Amazon ECS vends both x86 and ARM versions of the Amazon ECS-optimized Amazon Linux 2 AMI. For more information, see Amazon ECS-optimized Amazon Linux 2 AMI in the Amazon Elastic Container Service Developer Guide.

", + "ComputeResource$ec2KeyPair": "

The Amazon EC2 key pair that is used for instances launched in the compute environment. You can use this key pair to log in to your instances with SSH.

This parameter isn't applicable to jobs running on Fargate resources, and shouldn't be specified.

", + "ComputeResource$instanceRole": "

The Amazon ECS instance profile applied to Amazon EC2 instances in a compute environment. You can specify the short name or full Amazon Resource Name (ARN) of an instance profile. For example, ecsInstanceRole or arn:aws:iam::<aws_account_id>:instance-profile/ecsInstanceRole . For more information, see Amazon ECS Instance Role in the AWS Batch User Guide.

This parameter isn't applicable to jobs running on Fargate resources, and shouldn't be specified.

", + "ComputeResource$placementGroup": "

The Amazon EC2 placement group to associate with your compute resources. If you intend to submit multi-node parallel jobs to your compute environment, you should consider creating a cluster placement group and associate it with your compute resources. This keeps your multi-node parallel job on a logical grouping of instances within a single Availability Zone with high network flow potential. For more information, see Placement Groups in the Amazon EC2 User Guide for Linux Instances.

This parameter isn't applicable to jobs running on Fargate resources, and shouldn't be specified.

", + "ComputeResource$spotIamFleetRole": "

The Amazon Resource Name (ARN) of the Amazon EC2 Spot Fleet IAM role applied to a SPOT compute environment. This role is required if the allocation strategy set to BEST_FIT or if the allocation strategy isn't specified. For more information, see Amazon EC2 Spot Fleet Role in the AWS Batch User Guide.

This parameter isn't applicable to jobs running on Fargate resources, and shouldn't be specified.

To tag your Spot Instances on creation, the Spot Fleet IAM role specified here must use the newer AmazonEC2SpotFleetTaggingRole managed policy. The previously recommended AmazonEC2SpotFleetRole managed policy doesn't have the required permissions to tag Spot Instances. For more information, see Spot Instances not tagged on creation in the AWS Batch User Guide.

", "ContainerDetail$image": "

The image used to start the container.

", "ContainerDetail$jobRoleArn": "

The Amazon Resource Name (ARN) associated with the job upon execution.

", - "ContainerDetail$executionRoleArn": "

The Amazon Resource Name (ARN) of the execution role that AWS Batch can assume. For more information, see AWS Batch execution IAM role.

", - "ContainerDetail$user": "

The user name to use inside the container.

", + "ContainerDetail$executionRoleArn": "

The Amazon Resource Name (ARN) of the execution role that AWS Batch can assume. For more information, see AWS Batch execution IAM role in the AWS Batch User Guide.

", + "ContainerDetail$user": "

The user name to use inside the container. This parameter maps to User in the Create a container section of the Docker Remote API and the --user option to docker run.

", "ContainerDetail$reason": "

A short (255 max characters) human-readable string to provide additional details about a running or stopped container.

", - "ContainerDetail$containerInstanceArn": "

The Amazon Resource Name (ARN) of the container instance on which the container is running.

", + "ContainerDetail$containerInstanceArn": "

The Amazon Resource Name (ARN) of the container instance that the container is running on.

", "ContainerDetail$taskArn": "

The Amazon Resource Name (ARN) of the Amazon ECS task that is associated with the container job. Each container attempt receives a task ARN when they reach the STARTING status.

", "ContainerDetail$logStreamName": "

The name of the CloudWatch Logs log stream associated with the container. The log group for AWS Batch jobs is /aws/batch/job. Each container attempt receives a log stream name when they reach the RUNNING status.

", - "ContainerDetail$instanceType": "

The instance type of the underlying host infrastructure of a multi-node parallel job.

", - "ContainerOverrides$instanceType": "

The instance type to use for a multi-node parallel job. This parameter is not valid for single-node container jobs.

", - "ContainerProperties$image": "

The image used to start a container. This string is passed directly to the Docker daemon. Images in the Docker Hub registry are available by default. Other repositories are specified with repository-url/image:tag . Up to 255 letters (uppercase and lowercase), numbers, hyphens, underscores, colons, periods, forward slashes, and number signs are allowed. This parameter maps to Image in the Create a container section of the Docker Remote API and the IMAGE parameter of docker run.

", - "ContainerProperties$jobRoleArn": "

The Amazon Resource Name (ARN) of the IAM role that the container can assume for AWS permissions.

", - "ContainerProperties$executionRoleArn": "

The Amazon Resource Name (ARN) of the execution role that AWS Batch can assume. For more information, see AWS Batch execution IAM role.

", + "ContainerDetail$instanceType": "

The instance type of the underlying host infrastructure of a multi-node parallel job.

This parameter isn't applicable to jobs running on Fargate resources.

", + "ContainerOverrides$instanceType": "

The instance type to use for a multi-node parallel job.

This parameter isn't applicable to single-node container jobs or for jobs running on Fargate resources and shouldn't be provided.

", + "ContainerProperties$image": "

The image used to start a container. This string is passed directly to the Docker daemon. Images in the Docker Hub registry are available by default. Other repositories are specified with repository-url/image:tag . Up to 255 letters (uppercase and lowercase), numbers, hyphens, underscores, colons, periods, forward slashes, and number signs are allowed. This parameter maps to Image in the Create a container section of the Docker Remote API and the IMAGE parameter of docker run.

Docker image architecture must match the processor architecture of the compute resources that they're scheduled on. For example, ARM-based Docker images can only run on ARM-based compute resources.

", + "ContainerProperties$jobRoleArn": "

The Amazon Resource Name (ARN) of the IAM role that the container can assume for AWS permissions. For more information, see IAM Roles for Tasks in the Amazon Elastic Container Service Developer Guide.

", + "ContainerProperties$executionRoleArn": "

The Amazon Resource Name (ARN) of the execution role that AWS Batch can assume. Jobs running on Fargate resources must provide an execution role. For more information, see AWS Batch execution IAM role in the AWS Batch User Guide.

", "ContainerProperties$user": "

The user name to use inside the container. This parameter maps to User in the Create a container section of the Docker Remote API and the --user option to docker run.

", - "ContainerProperties$instanceType": "

The instance type to use for a multi-node parallel job. Currently all node groups in a multi-node parallel job must use the same instance type. This parameter is not valid for single-node container jobs.

", + "ContainerProperties$instanceType": "

The instance type to use for a multi-node parallel job. All node groups in a multi-node parallel job must use the same instance type.

This parameter isn't applicable to single-node container jobs or for jobs running on Fargate resources and shouldn't be provided.

", "ContainerSummary$reason": "

A short (255 max characters) human-readable string to provide additional details about a running or stopped container.

", "CreateComputeEnvironmentRequest$computeEnvironmentName": "

The name for your compute environment. Up to 128 letters (uppercase and lowercase), numbers, hyphens, and underscores are allowed.

", - "CreateComputeEnvironmentRequest$serviceRole": "

The full Amazon Resource Name (ARN) of the IAM role that allows AWS Batch to make calls to other AWS services on your behalf.

If your specified role has a path other than /, then you must either specify the full role ARN (this is recommended) or prefix the role name with the path.

Depending on how you created your AWS Batch service role, its ARN may contain the service-role path prefix. When you only specify the name of the service role, AWS Batch assumes that your ARN does not use the service-role path prefix. Because of this, we recommend that you specify the full ARN of your service role when you create compute environments.

", + "CreateComputeEnvironmentRequest$serviceRole": "

The full Amazon Resource Name (ARN) of the IAM role that allows AWS Batch to make calls to other AWS services on your behalf.

If your specified role has a path other than /, then you must either specify the full role ARN (this is recommended) or prefix the role name with the path.

Depending on how you created your AWS Batch service role, its ARN may contain the service-role path prefix. When you only specify the name of the service role, AWS Batch assumes that your ARN doesn't use the service-role path prefix. Because of this, we recommend that you specify the full ARN of your service role when you create compute environments.

", "CreateComputeEnvironmentResponse$computeEnvironmentName": "

The name of the compute environment.

", "CreateComputeEnvironmentResponse$computeEnvironmentArn": "

The Amazon Resource Name (ARN) of the compute environment.

", "CreateJobQueueRequest$jobQueueName": "

The name of the job queue.

", @@ -783,26 +821,27 @@ "DescribeComputeEnvironmentsRequest$nextToken": "

The nextToken value returned from a previous paginated DescribeComputeEnvironments request where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value. This value is null when there are no more results to return.

This token should be treated as an opaque identifier that is only used to retrieve the next items in a list and not for other programmatic purposes.

", "DescribeComputeEnvironmentsResponse$nextToken": "

The nextToken value to include in a future DescribeComputeEnvironments request. When the results of a DescribeJobDefinitions request exceed maxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

", "DescribeJobDefinitionsRequest$jobDefinitionName": "

The name of the job definition to describe.

", - "DescribeJobDefinitionsRequest$status": "

The status with which to filter job definitions.

", + "DescribeJobDefinitionsRequest$status": "

The status used to filter job definitions.

", "DescribeJobDefinitionsRequest$nextToken": "

The nextToken value returned from a previous paginated DescribeJobDefinitions request where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value. This value is null when there are no more results to return.

This token should be treated as an opaque identifier that is only used to retrieve the next items in a list and not for other programmatic purposes.

", "DescribeJobDefinitionsResponse$nextToken": "

The nextToken value to include in a future DescribeJobDefinitions request. When the results of a DescribeJobDefinitions request exceed maxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

", "DescribeJobQueuesRequest$nextToken": "

The nextToken value returned from a previous paginated DescribeJobQueues request where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value. This value is null when there are no more results to return.

This token should be treated as an opaque identifier that is only used to retrieve the next items in a list and not for other programmatic purposes.

", "DescribeJobQueuesResponse$nextToken": "

The nextToken value to include in a future DescribeJobQueues request. When the results of a DescribeJobQueues request exceed maxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

", "Device$hostPath": "

The path for the device on the host container instance.

", - "Device$containerPath": "

The path inside the container at which to expose the host device. By default the hostPath value is used.

", - "EvaluateOnExit$onStatusReason": "

Contains a glob pattern to match against the StatusReason returned for a job. The patten can be up to 512 characters long, can contain letters, numbers, periods (.), colons (:), and whitespace (spaces, tabs). and can optionally end with an asterisk (*) so that only the start of the string needs to be an exact match.

", - "EvaluateOnExit$onReason": "

Contains a glob pattern to match against the Reason returned for a job. The patten can be up to 512 characters long, can contain letters, numbers, periods (.), colons (:), and whitespace (spaces, tabs), and can optionally end with an asterisk (*) so that only the start of the string needs to be an exact match.

", + "Device$containerPath": "

The path inside the container used to expose the host device. By default the hostPath value is used.

", + "EvaluateOnExit$onStatusReason": "

Contains a glob pattern to match against the StatusReason returned for a job. The patten can be up to 512 characters long, can contain letters, numbers, periods (.), colons (:), and white space (spaces, tabs). and can optionally end with an asterisk (*) so that only the start of the string needs to be an exact match.

", + "EvaluateOnExit$onReason": "

Contains a glob pattern to match against the Reason returned for a job. The patten can be up to 512 characters long, can contain letters, numbers, periods (.), colons (:), and white space (spaces, tabs), and can optionally end with an asterisk (*) so that only the start of the string needs to be an exact match.

", "EvaluateOnExit$onExitCode": "

Contains a glob pattern to match against the decimal representation of the ExitCode returned for a job. The patten can be up to 512 characters long, can contain only numbers, and can optionally end with an asterisk (*) so that only the start of the string needs to be an exact match.

", - "Host$sourcePath": "

The path on the host container instance that is presented to the container. If this parameter is empty, then the Docker daemon has assigned a host path for you. If this parameter contains a file location, then the data volume persists at the specified location on the host container instance until you delete it manually. If the source path location does not exist on the host container instance, the Docker daemon creates it. If the location does exist, the contents of the source path folder are exported.

", + "FargatePlatformConfiguration$platformVersion": "

The AWS Fargate platform version on which the jobs are running. A platform version is specified only for jobs running on Fargate resources. If one isn't specified, the LATEST platform version is used by default. This will use a recent, approved version of the AWS Fargate platform for compute resources. For more information, see AWS Fargate platform versions in the Amazon Elastic Container Service Developer Guide.

", + "Host$sourcePath": "

The path on the host container instance that is presented to the container. If this parameter is empty, then the Docker daemon has assigned a host path for you. If this parameter contains a file location, then the data volume persists at the specified location on the host container instance until you delete it manually. If the source path location does not exist on the host container instance, the Docker daemon creates it. If the location does exist, the contents of the source path folder are exported.

This parameter isn't applicable to jobs running on Fargate resources and shouldn't be provided.

", "JobDefinition$jobDefinitionName": "

The name of the job definition.

", "JobDefinition$jobDefinitionArn": "

The Amazon Resource Name (ARN) for the job definition.

", "JobDefinition$status": "

The status of the job definition.

", - "JobDefinition$type": "

The type of job definition.

", + "JobDefinition$type": "

The type of job definition. If the job is run on Fargate resources, then multinode isn't supported. For more information about multi-node parallel jobs, see Creating a multi-node parallel job definition in the AWS Batch User Guide.

", "JobDependency$jobId": "

The job ID of the AWS Batch job associated with this dependency.

", "JobDetail$jobArn": "

The Amazon Resource Name (ARN) of the job.

", "JobDetail$jobName": "

The name of the job.

", "JobDetail$jobId": "

The ID for the job.

", - "JobDetail$jobQueue": "

The Amazon Resource Name (ARN) of the job queue with which the job is associated.

", + "JobDetail$jobQueue": "

The Amazon Resource Name (ARN) of the job queue that the job is associated with.

", "JobDetail$statusReason": "

A short, human-readable string to provide additional details about the current status of the job.

", "JobDetail$jobDefinition": "

The job definition that is used by this job.

", "JobQueueDetail$jobQueueName": "

The name of the job queue.

", @@ -817,29 +856,29 @@ "LaunchTemplateSpecification$launchTemplateId": "

The ID of the launch template.

", "LaunchTemplateSpecification$launchTemplateName": "

The name of the launch template.

", "LaunchTemplateSpecification$version": "

The version number of the launch template, $Latest, or $Default.

If the value is $Latest, the latest version of the launch template is used. If the value is $Default, the default version of the launch template is used.

Default: $Default.

", - "ListJobsRequest$jobQueue": "

The name or full Amazon Resource Name (ARN) of the job queue with which to list jobs.

", + "ListJobsRequest$jobQueue": "

The name or full Amazon Resource Name (ARN) of the job queue used to list jobs.

", "ListJobsRequest$arrayJobId": "

The job ID for an array job. Specifying an array job ID with this parameter lists all child jobs from within the specified array.

", "ListJobsRequest$multiNodeJobId": "

The job ID for a multi-node parallel job. Specifying a multi-node parallel job ID with this parameter lists all nodes that are associated with the specified job.

", "ListJobsRequest$nextToken": "

The nextToken value returned from a previous paginated ListJobs request where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value. This value is null when there are no more results to return.

This token should be treated as an opaque identifier that is only used to retrieve the next items in a list and not for other programmatic purposes.

", "ListJobsResponse$nextToken": "

The nextToken value to include in a future ListJobs request. When the results of a ListJobs request exceed maxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

", - "ListTagsForResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) that identifies the resource for which to list the tags. AWS Batch resources that support tags are compute environments, jobs, job definitions, and job queues. ARNs for child jobs of array and multi-node parallel (MNP) jobs are not supported.

", + "ListTagsForResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) that identifies the resource that tags are listed for. AWS Batch resources that support tags are compute environments, jobs, job definitions, and job queues. ARNs for child jobs of array and multi-node parallel (MNP) jobs are not supported.

", "LogConfigurationOptionsMap$key": null, "LogConfigurationOptionsMap$value": null, - "MountPoint$containerPath": "

The path on the container at which to mount the host volume.

", + "MountPoint$containerPath": "

The path on the container where the host volume is mounted.

", "MountPoint$sourceVolume": "

The name of the volume to mount.

", "NetworkInterface$attachmentId": "

The attachment ID for the network interface.

", "NetworkInterface$ipv6Address": "

The private IPv6 address for the network interface.

", "NetworkInterface$privateIpv4Address": "

The private IPv4 address for the network interface.

", - "NodePropertyOverride$targetNodes": "

The range of nodes, using node index values, with which to override. A range of 0:3 indicates nodes with index values of 0 through 3. If the starting range value is omitted (:n), then 0 is used to start the range. If the ending range value is omitted (n:), then the highest possible node index is used to end the range.

", - "NodeRangeProperty$targetNodes": "

The range of nodes, using node index values. A range of 0:3 indicates nodes with index values of 0 through 3. If the starting range value is omitted (:n), then 0 is used to start the range. If the ending range value is omitted (n:), then the highest possible node index is used to end the range. Your accumulative node ranges must account for all nodes (0:n). You may nest node ranges, for example 0:10 and 4:5, in which case the 4:5 range properties override the 0:10 properties.

", + "NodePropertyOverride$targetNodes": "

The range of nodes, using node index values, that's used to override. A range of 0:3 indicates nodes with index values of 0 through 3. If the starting range value is omitted (:n), then 0 is used to start the range. If the ending range value is omitted (n:), then the highest possible node index is used to end the range.

", + "NodeRangeProperty$targetNodes": "

The range of nodes, using node index values. A range of 0:3 indicates nodes with index values of 0 through 3. If the starting range value is omitted (:n), then 0 is used to start the range. If the ending range value is omitted (n:), then the highest possible node index is used to end the range. Your accumulative node ranges must account for all nodes (0:n). You may nest node ranges, for example 0:10 and 4:5, in which case the 4:5 range properties override the 0:10 properties.

", "ParametersMap$key": null, "ParametersMap$value": null, "RegisterJobDefinitionRequest$jobDefinitionName": "

The name of the job definition to register. Up to 128 letters (uppercase and lowercase), numbers, hyphens, and underscores are allowed.

", "RegisterJobDefinitionResponse$jobDefinitionName": "

The name of the job definition.

", "RegisterJobDefinitionResponse$jobDefinitionArn": "

The Amazon Resource Name (ARN) of the job definition.

", - "ResourceRequirement$value": "

The number of physical GPUs to reserve for the container. The number of GPUs reserved for all containers in a job should not exceed the number of available GPUs on the compute resource that the job is launched on.

", + "ResourceRequirement$value": "

The quantity of the specified resource to reserve for the container. The values vary based on the type specified.

type=\"GPU\"

The number of physical GPUs to reserve for the container. The number of GPUs reserved for all containers in a job shouldn't exceed the number of available GPUs on the compute resource that the job is launched on.

GPUs are not available for jobs running on Fargate resources.

type=\"MEMORY\"

For jobs running on EC2 resources, the hard limit (in MiB) of memory to present to the container. If your container attempts to exceed the memory specified here, the container is killed. This parameter maps to Memory in the Create a container section of the Docker Remote API and the --memory option to docker run. You must specify at least 4 MiB of memory for a job. This is required but can be specified in several places for multi-node parallel (MNP) jobs. It must be specified for each node at least once. This parameter maps to Memory in the Create a container section of the Docker Remote API and the --memory option to docker run. You must specify at least 4 MiB of memory for a job.

If you're trying to maximize your resource utilization by providing your jobs as much memory as possible for a particular instance type, see Memory Management in the AWS Batch User Guide.

For jobs running on Fargate resources, then value is the hard limit (in GiB), represented in decimal form, and must match one of the supported values (0.5 and whole numbers between 1 and 30, inclusive) and the VCPU values must be one of the values supported for that memory value.

value = 0.5

VCPU = 0.25

value = 1

VCPU = 0.25 or 0.5

value = 2

VCPU = 0.25, 0.5, or 1

value = 3

VCPU = 0.5, or 1

value = 4

VCPU = 0.5, 1, or 2

value = 5, 6, or 7

VCPU = 1 or 2

value = 8

VCPU = 1, 2, or 4

value = 9, 10, 11, 12, 13, 14, 15, or 16

VCPU = 2 or 4

value = 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, or 30

VCPU = 4

type=\"VCPU\"

The number of vCPUs reserved for the container. This parameter maps to CpuShares in the Create a container section of the Docker Remote API and the --cpu-shares option to docker run. Each vCPU is equivalent to 1,024 CPU shares. You must specify at least one vCPU. This is required but can be specified in several places; it must be specified for each node at least once.

For jobs running on Fargate resources, then value must match one of the supported values and the MEMORY values must be one of the values supported for that VCPU value. The supported values are 0.25, 0.5, 1, 2, and 4

value = 0.25

MEMORY = 0.5, 1, or 2

value = 0.5

MEMORY = 1, 2, 3, or 4

value = 1

MEMORY = 2, 3, 4, 5, 6, 7, or 8

value = 2

MEMORY = 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, or 16

value = 4

MEMORY = 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, or 30

", "Secret$name": "

The name of the secret.

", - "Secret$valueFrom": "

The secret to expose to the container. The supported values are either the full ARN of the AWS Secrets Manager secret or the full ARN of the parameter in the AWS Systems Manager Parameter Store.

If the AWS Systems Manager Parameter Store parameter exists in the same Region as the task you are launching, then you can use either the full ARN or name of the parameter. If the parameter exists in a different Region, then the full ARN must be specified.

", + "Secret$valueFrom": "

The secret to expose to the container. The supported values are either the full ARN of the AWS Secrets Manager secret or the full ARN of the parameter in the AWS Systems Manager Parameter Store.

If the AWS Systems Manager Parameter Store parameter exists in the same Region as the job you are launching, then you can use either the full ARN or name of the parameter. If the parameter exists in a different Region, then the full ARN must be specified.

", "ServerException$message": null, "StringList$member": null, "SubmitJobRequest$jobName": "

The name of the job. The first character must be alphanumeric, and up to 128 letters (uppercase and lowercase), numbers, hyphens, and underscores are allowed.

", @@ -848,16 +887,16 @@ "SubmitJobResponse$jobArn": "

The Amazon Resource Name (ARN) for the job.

", "SubmitJobResponse$jobName": "

The name of the job.

", "SubmitJobResponse$jobId": "

The unique identifier for the job.

", - "TagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource to which to add tags. AWS Batch resources that support tags are compute environments, jobs, job definitions, and job queues. ARNs for child jobs of array and multi-node parallel (MNP) jobs are not supported.

", + "TagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource that tags are added to. AWS Batch resources that support tags are compute environments, jobs, job definitions, and job queues. ARNs for child jobs of array and multi-node parallel (MNP) jobs are not supported.

", "TagsMap$key": null, "TagsMap$value": null, "TerminateJobRequest$jobId": "

The AWS Batch job ID of the job to terminate.

", "TerminateJobRequest$reason": "

A message to attach to the job that explains the reason for canceling it. This message is returned by future DescribeJobs operations on the job. This message is also recorded in the AWS Batch activity logs.

", - "Tmpfs$containerPath": "

The absolute file path in the container where the tmpfs volume is to be mounted.

", + "Tmpfs$containerPath": "

The absolute file path in the container where the tmpfs volume is mounted.

", "Ulimit$name": "

The type of the ulimit.

", "UntagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the resource from which to delete tags. AWS Batch resources that support tags are compute environments, jobs, job definitions, and job queues. ARNs for child jobs of array and multi-node parallel (MNP) jobs are not supported.

", "UpdateComputeEnvironmentRequest$computeEnvironment": "

The name or full Amazon Resource Name (ARN) of the compute environment to update.

", - "UpdateComputeEnvironmentRequest$serviceRole": "

The full Amazon Resource Name (ARN) of the IAM role that allows AWS Batch to make calls to other AWS services on your behalf.

If your specified role has a path other than /, then you must either specify the full role ARN (this is recommended) or prefix the role name with the path.

Depending on how you created your AWS Batch service role, its ARN may contain the service-role path prefix. When you only specify the name of the service role, AWS Batch assumes that your ARN does not use the service-role path prefix. Because of this, we recommend that you specify the full ARN of your service role when you create compute environments.

", + "UpdateComputeEnvironmentRequest$serviceRole": "

The full Amazon Resource Name (ARN) of the IAM role that allows AWS Batch to make calls to other AWS services on your behalf.

If your specified role has a path other than /, then you must either specify the full role ARN (this is recommended) or prefix the role name with the path.

Depending on how you created your AWS Batch service role, its ARN might contain the service-role path prefix. When you only specify the name of the service role, AWS Batch assumes that your ARN does not use the service-role path prefix. Because of this, we recommend that you specify the full ARN of your service role when you create compute environments.

", "UpdateComputeEnvironmentResponse$computeEnvironmentName": "

The name of the compute environment.

", "UpdateComputeEnvironmentResponse$computeEnvironmentArn": "

The Amazon Resource Name (ARN) of the compute environment.

", "UpdateJobQueueRequest$jobQueue": "

The name or the Amazon Resource Name (ARN) of the job queue.

", @@ -869,9 +908,11 @@ "StringList": { "base": null, "refs": { - "ComputeResource$instanceTypes": "

The instances types that may be launched. You can specify instance families to launch any instance type within those families (for example, c5 or p3), or you can specify specific sizes within a family (such as c5.8xlarge). You can also choose optimal to pick instance types (from the C, M, and R instance families) on the fly that match the demand of your job queues.

", - "ComputeResource$subnets": "

The VPC subnets into which the compute resources are launched. For more information, see VPCs and Subnets in the Amazon VPC User Guide.

", - "ComputeResource$securityGroupIds": "

The Amazon EC2 security groups associated with instances launched in the compute environment. One or more security groups must be specified, either in securityGroupIds or using a launch template referenced in launchTemplate. If security groups are specified using both securityGroupIds and launchTemplate, the values in securityGroupIds will be used.

", + "ComputeResource$instanceTypes": "

The instances types that may be launched. You can specify instance families to launch any instance type within those families (for example, c5 or p3), or you can specify specific sizes within a family (such as c5.8xlarge). You can also choose optimal to select instance types (from the C, M, and R instance families) on the fly that match the demand of your job queues.

This parameter isn't applicable to jobs running on Fargate resources, and shouldn't be specified.

When you create a compute environment, the instance types that you select for the compute environment must share the same architecture. For example, you can't mix x86 and ARM instances in the same compute environment.

", + "ComputeResource$subnets": "

The VPC subnets into which the compute resources are launched. These subnets must be within the same VPC. This parameter is required for jobs running on Fargate resources, where it can contain up to 16 subnets. For more information, see VPCs and Subnets in the Amazon VPC User Guide.

", + "ComputeResource$securityGroupIds": "

The Amazon EC2 security groups associated with instances launched in the compute environment. One or more security groups must be specified, either in securityGroupIds or using a launch template referenced in launchTemplate. This parameter is required for jobs running on Fargate resources and must contain at least one security group. (Fargate does not support launch templates.) If security groups are specified using both securityGroupIds and launchTemplate, the values in securityGroupIds will be used.

", + "ComputeResourceUpdate$subnets": "

The VPC subnets that the compute resources are launched into. This parameter is required for jobs running on Fargate compute resources, where it can contain up to 16 subnets. For more information, see VPCs and Subnets in the Amazon VPC User Guide. This can't be specified for EC2 compute resources. Providing an empty list will be handled as if this parameter wasn't specified and no change is made.

", + "ComputeResourceUpdate$securityGroupIds": "

The Amazon EC2 security groups associated with instances launched in the compute environment. This parameter is required for Fargate compute resources, where it can contain up to 5 security groups. This can't be specified for EC2 compute resources. Providing an empty list is handled as if this parameter wasn't specified and no changeis made.

", "ContainerDetail$command": "

The command that is passed to the container.

", "ContainerOverrides$command": "

The command to send to the container that overrides the default command from the Docker image or the job definition.

", "ContainerProperties$command": "

The command that is passed to the container. This parameter maps to Cmd in the Create a container section of the Docker Remote API and the COMMAND parameter to docker run. For more information, see https://docs.docker.com/engine/reference/builder/#cmd.

", @@ -925,13 +966,13 @@ "base": null, "refs": { "ComputeEnvironmentDetail$tags": "

The tags applied to the compute environment.

", - "CreateComputeEnvironmentRequest$tags": "

The tags that you apply to the compute environment to help you categorize and organize your resources. Each tag consists of a key and an optional value. For more information, see Tagging AWS Resources in AWS General Reference.

These tags can be updated or removed using the TagResource and UntagResource API operations. These tags do not propagate to the underlying compute resources.

", + "CreateComputeEnvironmentRequest$tags": "

The tags that you apply to the compute environment to help you categorize and organize your resources. Each tag consists of a key and an optional value. For more information, see Tagging AWS Resources in AWS General Reference.

These tags can be updated or removed using the TagResource and UntagResource API operations. These tags don't propagate to the underlying compute resources.

", "CreateJobQueueRequest$tags": "

The tags that you apply to the job queue to help you categorize and organize your resources. Each tag consists of a key and an optional value. For more information, see Tagging AWS Resources in AWS General Reference.

", "JobDefinition$tags": "

The tags applied to the job definition.

", "JobDetail$tags": "

The tags applied to the job.

", "JobQueueDetail$tags": "

The tags applied to the job queue.

", "ListTagsForResourceResponse$tags": "

The tags for the resource.

", - "RegisterJobDefinitionRequest$tags": "

The tags that you apply to the job definition to help you categorize and organize your resources. Each tag consists of a key and an optional value. For more information, see Tagging AWS Resources in AWS General Reference.

", + "RegisterJobDefinitionRequest$tags": "

The tags that you apply to the job definition to help you categorize and organize your resources. Each tag consists of a key and an optional value. For more information, see Tagging AWS Resources in AWS Batch User Guide.

", "SubmitJobRequest$tags": "

The tags that you apply to the job request to help you categorize and organize your resources. Each tag consists of a key and an optional value. For more information, see Tagging AWS Resources in AWS General Reference.

", "TagResourceRequest$tags": "

The tags that you apply to the resource to help you categorize and organize your resources. Each tag consists of a key and an optional value. For more information, see Tagging AWS Resources in AWS General Reference.

" } @@ -939,7 +980,7 @@ "TagsMap": { "base": null, "refs": { - "ComputeResource$tags": "

Key-value pair tags to be applied to resources that are launched in the compute environment. For AWS Batch, these take the form of \"String1\": \"String2\", where String1 is the tag key and String2 is the tag value—for example, { \"Name\": \"AWS Batch Instance - C4OnDemand\" }. These tags can not be updated or removed after the compute environment has been created; any changes require creating a new compute environment and removing the old compute environment. These tags are not seen when using the AWS Batch ListTagsForResource API operation.

" + "ComputeResource$tags": "

Key-value pair tags to be applied to EC2 resources that are launched in the compute environment. For AWS Batch, these take the form of \"String1\": \"String2\", where String1 is the tag key and String2 is the tag value—for example, { \"Name\": \"AWS Batch Instance - C4OnDemand\" }. This is helpful for recognizing your AWS Batch instances in the Amazon EC2 console. These tags can not be updated or removed after the compute environment has been created; any changes require creating a new compute environment and removing the old compute environment. These tags are not seen when using the AWS Batch ListTagsForResource API operation.

" } }, "TerminateJobRequest": { @@ -953,7 +994,7 @@ } }, "Tmpfs": { - "base": "

The container path, mount options, and size of the tmpfs mount.

", + "base": "

The container path, mount options, and size of the tmpfs mount.

This object isn't applicable to jobs running on Fargate resources.

", "refs": { "TmpfsList$member": null } @@ -961,11 +1002,11 @@ "TmpfsList": { "base": null, "refs": { - "LinuxParameters$tmpfs": "

The container path, mount options, and size (in MiB) of the tmpfs mount. This parameter maps to the --tmpfs option to docker run.

" + "LinuxParameters$tmpfs": "

The container path, mount options, and size (in MiB) of the tmpfs mount. This parameter maps to the --tmpfs option to docker run.

This parameter isn't applicable to jobs running on Fargate resources and shouldn't be provided.

" } }, "Ulimit": { - "base": "

The ulimit settings to pass to the container.

", + "base": "

The ulimit settings to pass to the container.

This object isn't applicable to jobs running on Fargate resources.

", "refs": { "Ulimits$member": null } @@ -973,8 +1014,8 @@ "Ulimits": { "base": null, "refs": { - "ContainerDetail$ulimits": "

A list of ulimit values to set in the container.

", - "ContainerProperties$ulimits": "

A list of ulimits to set in the container. This parameter maps to Ulimits in the Create a container section of the Docker Remote API and the --ulimit option to docker run.

" + "ContainerDetail$ulimits": "

A list of ulimit values to set in the container. This parameter maps to Ulimits in the Create a container section of the Docker Remote API and the --ulimit option to docker run.

This parameter isn't applicable to jobs running on Fargate resources.

", + "ContainerProperties$ulimits": "

A list of ulimits to set in the container. This parameter maps to Ulimits in the Create a container section of the Docker Remote API and the --ulimit option to docker run.

This parameter isn't applicable to jobs running on Fargate resources and shouldn't be provided.

" } }, "UntagResourceRequest": { diff --git a/models/apis/compute-optimizer/2019-11-01/api-2.json b/models/apis/compute-optimizer/2019-11-01/api-2.json index 1aec2cf9812..2749f6eb664 100644 --- a/models/apis/compute-optimizer/2019-11-01/api-2.json +++ b/models/apis/compute-optimizer/2019-11-01/api-2.json @@ -89,6 +89,25 @@ {"shape":"ThrottlingException"} ] }, + "GetEBSVolumeRecommendations":{ + "name":"GetEBSVolumeRecommendations", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetEBSVolumeRecommendationsRequest"}, + "output":{"shape":"GetEBSVolumeRecommendationsResponse"}, + "errors":[ + {"shape":"OptInRequiredException"}, + {"shape":"InternalServerException"}, + {"shape":"ServiceUnavailableException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"MissingAuthenticationToken"}, + {"shape":"ThrottlingException"} + ] + }, "GetEC2InstanceRecommendations":{ "name":"GetEC2InstanceRecommendations", "http":{ @@ -263,6 +282,49 @@ "DestinationBucket":{"type":"string"}, "DestinationKey":{"type":"string"}, "DestinationKeyPrefix":{"type":"string"}, + "EBSFilter":{ + "type":"structure", + "members":{ + "name":{"shape":"EBSFilterName"}, + "values":{"shape":"FilterValues"} + } + }, + "EBSFilterName":{ + "type":"string", + "enum":["Finding"] + }, + "EBSFilters":{ + "type":"list", + "member":{"shape":"EBSFilter"} + }, + "EBSFinding":{ + "type":"string", + "enum":[ + "Optimized", + "NotOptimized" + ] + }, + "EBSMetricName":{ + "type":"string", + "enum":[ + "VolumeReadOpsPerSecond", + "VolumeWriteOpsPerSecond", + "VolumeReadBytesPerSecond", + "VolumeWriteBytesPerSecond" + ] + }, + "EBSUtilizationMetric":{ + "type":"structure", + "members":{ + "name":{"shape":"EBSMetricName"}, + "statistic":{"shape":"MetricStatistic"}, + "value":{"shape":"MetricValue"} + } + }, + "EBSUtilizationMetrics":{ + "type":"list", + "member":{"shape":"EBSUtilizationMetric"} + }, "ErrorMessage":{"type":"string"}, "ExportAutoScalingGroupRecommendationsRequest":{ "type":"structure", @@ -451,6 +513,24 @@ "errors":{"shape":"GetRecommendationErrors"} } }, + "GetEBSVolumeRecommendationsRequest":{ + "type":"structure", + "members":{ + "volumeArns":{"shape":"VolumeArns"}, + "nextToken":{"shape":"NextToken"}, + "maxResults":{"shape":"MaxResults"}, + "filters":{"shape":"EBSFilters"}, + "accountIds":{"shape":"AccountIds"} + } + }, + "GetEBSVolumeRecommendationsResponse":{ + "type":"structure", + "members":{ + "nextToken":{"shape":"NextToken"}, + "volumeRecommendations":{"shape":"VolumeRecommendations"}, + "errors":{"shape":"GetRecommendationErrors"} + } + }, "GetEC2InstanceRecommendationsRequest":{ "type":"structure", "members":{ @@ -732,7 +812,8 @@ "type":"string", "enum":[ "Ec2Instance", - "AutoScalingGroup" + "AutoScalingGroup", + "EbsVolume" ] }, "RecommendationSources":{ @@ -864,6 +945,57 @@ "UtilizationMetrics":{ "type":"list", "member":{"shape":"UtilizationMetric"} - } + }, + "VolumeArn":{"type":"string"}, + "VolumeArns":{ + "type":"list", + "member":{"shape":"VolumeArn"} + }, + "VolumeBaselineIOPS":{"type":"integer"}, + "VolumeBaselineThroughput":{"type":"integer"}, + "VolumeBurstIOPS":{"type":"integer"}, + "VolumeBurstThroughput":{"type":"integer"}, + "VolumeConfiguration":{ + "type":"structure", + "members":{ + "volumeType":{"shape":"VolumeType"}, + "volumeSize":{"shape":"VolumeSize"}, + "volumeBaselineIOPS":{"shape":"VolumeBaselineIOPS"}, + "volumeBurstIOPS":{"shape":"VolumeBurstIOPS"}, + "volumeBaselineThroughput":{"shape":"VolumeBaselineThroughput"}, + "volumeBurstThroughput":{"shape":"VolumeBurstThroughput"} + } + }, + "VolumeRecommendation":{ + "type":"structure", + "members":{ + "volumeArn":{"shape":"VolumeArn"}, + "accountId":{"shape":"AccountId"}, + "currentConfiguration":{"shape":"VolumeConfiguration"}, + "finding":{"shape":"EBSFinding"}, + "utilizationMetrics":{"shape":"EBSUtilizationMetrics"}, + "lookBackPeriodInDays":{"shape":"LookBackPeriodInDays"}, + "volumeRecommendationOptions":{"shape":"VolumeRecommendationOptions"}, + "lastRefreshTimestamp":{"shape":"LastRefreshTimestamp"} + } + }, + "VolumeRecommendationOption":{ + "type":"structure", + "members":{ + "configuration":{"shape":"VolumeConfiguration"}, + "performanceRisk":{"shape":"PerformanceRisk"}, + "rank":{"shape":"Rank"} + } + }, + "VolumeRecommendationOptions":{ + "type":"list", + "member":{"shape":"VolumeRecommendationOption"} + }, + "VolumeRecommendations":{ + "type":"list", + "member":{"shape":"VolumeRecommendation"} + }, + "VolumeSize":{"type":"integer"}, + "VolumeType":{"type":"string"} } } diff --git a/models/apis/compute-optimizer/2019-11-01/docs-2.json b/models/apis/compute-optimizer/2019-11-01/docs-2.json index 4cfb8192f4c..63b418c6745 100644 --- a/models/apis/compute-optimizer/2019-11-01/docs-2.json +++ b/models/apis/compute-optimizer/2019-11-01/docs-2.json @@ -1,16 +1,17 @@ { "version": "2.0", - "service": "

AWS Compute Optimizer is a service that analyzes the configuration and utilization metrics of your AWS resources, such as EC2 instances and Auto Scaling groups. It reports whether your resources are optimal, and generates optimization recommendations to reduce the cost and improve the performance of your workloads. Compute Optimizer also provides recent utilization metric data, as well as projected utilization metric data for the recommendations, which you can use to evaluate which recommendation provides the best price-performance trade-off. The analysis of your usage patterns can help you decide when to move or resize your running resources, and still meet your performance and capacity requirements. For more information about Compute Optimizer, including the required permissions to use the service, see the AWS Compute Optimizer User Guide.

", + "service": "

AWS Compute Optimizer is a service that analyzes the configuration and utilization metrics of your AWS compute resources, such as EC2 instances, Auto Scaling groups, and Amazon EBS volumes. It reports whether your resources are optimal, and generates optimization recommendations to reduce the cost and improve the performance of your workloads. Compute Optimizer also provides recent utilization metric data, as well as projected utilization metric data for the recommendations, which you can use to evaluate which recommendation provides the best price-performance trade-off. The analysis of your usage patterns can help you decide when to move or resize your running resources, and still meet your performance and capacity requirements. For more information about Compute Optimizer, including the required permissions to use the service, see the AWS Compute Optimizer User Guide.

", "operations": { "DescribeRecommendationExportJobs": "

Describes recommendation export jobs created in the last seven days.

Use the ExportAutoScalingGroupRecommendations or ExportEC2InstanceRecommendations actions to request an export of your recommendations. Then use the DescribeRecommendationExportJobs action to view your export jobs.

", "ExportAutoScalingGroupRecommendations": "

Exports optimization recommendations for Auto Scaling groups.

Recommendations are exported in a comma-separated values (.csv) file, and its metadata in a JavaScript Object Notation (.json) file, to an existing Amazon Simple Storage Service (Amazon S3) bucket that you specify. For more information, see Exporting Recommendations in the Compute Optimizer User Guide.

You can have only one Auto Scaling group export job in progress per AWS Region.

", "ExportEC2InstanceRecommendations": "

Exports optimization recommendations for Amazon EC2 instances.

Recommendations are exported in a comma-separated values (.csv) file, and its metadata in a JavaScript Object Notation (.json) file, to an existing Amazon Simple Storage Service (Amazon S3) bucket that you specify. For more information, see Exporting Recommendations in the Compute Optimizer User Guide.

You can have only one Amazon EC2 instance export job in progress per AWS Region.

", "GetAutoScalingGroupRecommendations": "

Returns Auto Scaling group recommendations.

AWS Compute Optimizer generates recommendations for Amazon EC2 Auto Scaling groups that meet a specific set of requirements. For more information, see the Supported resources and requirements in the AWS Compute Optimizer User Guide.

", + "GetEBSVolumeRecommendations": "

Returns Amazon Elastic Block Store (Amazon EBS) volume recommendations.

AWS Compute Optimizer generates recommendations for Amazon EBS volumes that meet a specific set of requirements. For more information, see the Supported resources and requirements in the AWS Compute Optimizer User Guide.

", "GetEC2InstanceRecommendations": "

Returns Amazon EC2 instance recommendations.

AWS Compute Optimizer generates recommendations for Amazon Elastic Compute Cloud (Amazon EC2) instances that meet a specific set of requirements. For more information, see the Supported resources and requirements in the AWS Compute Optimizer User Guide.

", "GetEC2RecommendationProjectedMetrics": "

Returns the projected utilization metrics of Amazon EC2 instance recommendations.

The Cpu and Memory metrics are the only projected utilization metrics returned when you run this action. Additionally, the Memory metric is returned only for resources that have the unified CloudWatch agent installed on them. For more information, see Enabling Memory Utilization with the CloudWatch Agent.

", - "GetEnrollmentStatus": "

Returns the enrollment (opt in) status of an account to the AWS Compute Optimizer service.

If the account is the master account of an organization, this action also confirms the enrollment status of member accounts within the organization.

", + "GetEnrollmentStatus": "

Returns the enrollment (opt in) status of an account to the AWS Compute Optimizer service.

If the account is the management account of an organization, this action also confirms the enrollment status of member accounts within the organization.

", "GetRecommendationSummaries": "

Returns the optimization findings for an account.

For example, it returns the number of Amazon EC2 instances in an account that are under-provisioned, over-provisioned, or optimized. It also returns the number of Auto Scaling groups in an account that are not optimized, or optimized.

", - "UpdateEnrollmentStatus": "

Updates the enrollment (opt in) status of an account to the AWS Compute Optimizer service.

If the account is a master account of an organization, this action can also be used to enroll member accounts within the organization.

" + "UpdateEnrollmentStatus": "

Updates the enrollment (opt in) status of an account to the AWS Compute Optimizer service.

If the account is a management account of an organization, this action can also be used to enroll member accounts within the organization.

" }, "shapes": { "AccessDeniedException": { @@ -24,17 +25,19 @@ "AccountIds$member": null, "AutoScalingGroupRecommendation$accountId": "

The AWS account ID of the Auto Scaling group.

", "InstanceRecommendation$accountId": "

The AWS account ID of the instance.

", - "RecommendationSummary$accountId": "

The AWS account ID of the recommendation summary.

" + "RecommendationSummary$accountId": "

The AWS account ID of the recommendation summary.

", + "VolumeRecommendation$accountId": "

The AWS account ID of the volume.

" } }, "AccountIds": { "base": null, "refs": { - "ExportAutoScalingGroupRecommendationsRequest$accountIds": "

The IDs of the AWS accounts for which to export Auto Scaling group recommendations.

If your account is the master account of an organization, use this parameter to specify the member accounts for which you want to export recommendations.

This parameter cannot be specified together with the include member accounts parameter. The parameters are mutually exclusive.

Recommendations for member accounts are not included in the export if this parameter, or the include member accounts parameter, is omitted.

You can specify multiple account IDs per request.

", - "ExportEC2InstanceRecommendationsRequest$accountIds": "

The IDs of the AWS accounts for which to export instance recommendations.

If your account is the master account of an organization, use this parameter to specify the member accounts for which you want to export recommendations.

This parameter cannot be specified together with the include member accounts parameter. The parameters are mutually exclusive.

Recommendations for member accounts are not included in the export if this parameter, or the include member accounts parameter, is omitted.

You can specify multiple account IDs per request.

", - "GetAutoScalingGroupRecommendationsRequest$accountIds": "

The IDs of the AWS accounts for which to return Auto Scaling group recommendations.

If your account is the master account of an organization, use this parameter to specify the member accounts for which you want to return Auto Scaling group recommendations.

Only one account ID can be specified per request.

", - "GetEC2InstanceRecommendationsRequest$accountIds": "

The IDs of the AWS accounts for which to return instance recommendations.

If your account is the master account of an organization, use this parameter to specify the member accounts for which you want to return instance recommendations.

Only one account ID can be specified per request.

", - "GetRecommendationSummariesRequest$accountIds": "

The IDs of the AWS accounts for which to return recommendation summaries.

If your account is the master account of an organization, use this parameter to specify the member accounts for which you want to return recommendation summaries.

Only one account ID can be specified per request.

" + "ExportAutoScalingGroupRecommendationsRequest$accountIds": "

The IDs of the AWS accounts for which to export Auto Scaling group recommendations.

If your account is the management account of an organization, use this parameter to specify the member accounts for which you want to export recommendations.

This parameter cannot be specified together with the include member accounts parameter. The parameters are mutually exclusive.

Recommendations for member accounts are not included in the export if this parameter, or the include member accounts parameter, is omitted.

You can specify multiple account IDs per request.

", + "ExportEC2InstanceRecommendationsRequest$accountIds": "

The IDs of the AWS accounts for which to export instance recommendations.

If your account is the management account of an organization, use this parameter to specify the member accounts for which you want to export recommendations.

This parameter cannot be specified together with the include member accounts parameter. The parameters are mutually exclusive.

Recommendations for member accounts are not included in the export if this parameter, or the include member accounts parameter, is omitted.

You can specify multiple account IDs per request.

", + "GetAutoScalingGroupRecommendationsRequest$accountIds": "

The IDs of the AWS accounts for which to return Auto Scaling group recommendations.

If your account is the management account of an organization, use this parameter to specify the member accounts for which you want to return Auto Scaling group recommendations.

Only one account ID can be specified per request.

", + "GetEBSVolumeRecommendationsRequest$accountIds": "

The IDs of the AWS accounts for which to return volume recommendations.

If your account is the management account of an organization, use this parameter to specify the member accounts for which you want to return volume recommendations.

Only one account ID can be specified per request.

", + "GetEC2InstanceRecommendationsRequest$accountIds": "

The IDs of the AWS accounts for which to return instance recommendations.

If your account is the management account of an organization, use this parameter to specify the member accounts for which you want to return instance recommendations.

Only one account ID can be specified per request.

", + "GetRecommendationSummariesRequest$accountIds": "

The IDs of the AWS accounts for which to return recommendation summaries.

If your account is the management account of an organization, use this parameter to specify the member accounts for which you want to return recommendation summaries.

Only one account ID can be specified per request.

" } }, "AutoScalingGroupArn": { @@ -140,6 +143,48 @@ "S3DestinationConfig$keyPrefix": "

The Amazon S3 bucket prefix for an export job.

" } }, + "EBSFilter": { + "base": "

Describes a filter that returns a more specific list of Amazon Elastic Block Store (Amazon EBS) volume recommendations.

This filter is used with the GetEBSVolumeRecommendations action.

", + "refs": { + "EBSFilters$member": null + } + }, + "EBSFilterName": { + "base": null, + "refs": { + "EBSFilter$name": "

The name of the filter.

Specify Finding to return recommendations with a specific finding classification (e.g., Optimized).

" + } + }, + "EBSFilters": { + "base": null, + "refs": { + "GetEBSVolumeRecommendationsRequest$filters": "

An array of objects that describe a filter that returns a more specific list of volume recommendations.

" + } + }, + "EBSFinding": { + "base": null, + "refs": { + "VolumeRecommendation$finding": "

The finding classification for the volume.

Findings for volumes include:

" + } + }, + "EBSMetricName": { + "base": null, + "refs": { + "EBSUtilizationMetric$name": "

The name of the utilization metric.

The following utilization metrics are available:

" + } + }, + "EBSUtilizationMetric": { + "base": "

Describes a utilization metric of an Amazon Elastic Block Store (Amazon EBS) volume.

Compare the utilization metric data of your resource against its projected utilization metric data to determine the performance difference between your current resource and the recommended option.

", + "refs": { + "EBSUtilizationMetrics$member": null + } + }, + "EBSUtilizationMetrics": { + "base": null, + "refs": { + "VolumeRecommendation$utilizationMetrics": "

An array of objects that describe the utilization metrics of the volume.

" + } + }, "ErrorMessage": { "base": null, "refs": { @@ -218,7 +263,7 @@ } }, "Filter": { - "base": "

Describes a filter that returns a more specific list of recommendations.

", + "base": "

Describes a filter that returns a more specific list of recommendations.

This filter is used with the GetAutoScalingGroupRecommendations and GetEC2InstanceRecommendations actions.

", "refs": { "Filters$member": null } @@ -226,7 +271,7 @@ "FilterName": { "base": null, "refs": { - "Filter$name": "

The name of the filter.

Specify Finding to return recommendations with a specific findings classification (e.g., Overprovisioned).

Specify RecommendationSourceType to return recommendations of a specific resource type (e.g., AutoScalingGroup).

" + "Filter$name": "

The name of the filter.

Specify Finding to return recommendations with a specific finding classification (e.g., Overprovisioned).

Specify RecommendationSourceType to return recommendations of a specific resource type (e.g., AutoScalingGroup).

" } }, "FilterValue": { @@ -238,8 +283,9 @@ "FilterValues": { "base": null, "refs": { - "Filter$values": "

The value of the filter.

If you specify the name parameter as Finding, and you request recommendations for an instance, then the valid values are Underprovisioned, Overprovisioned, NotOptimized, or Optimized.

If you specify the name parameter as Finding, and you request recommendations for an Auto Scaling group, then the valid values are Optimized, or NotOptimized.

If you specify the name parameter as RecommendationSourceType, then the valid values are Ec2Instance, or AutoScalingGroup.

", - "JobFilter$values": "

The value of the filter.

If you specify the name parameter as ResourceType, the valid values are Ec2Instance or AutoScalingGroup.

If you specify the name parameter as JobStatus, the valid values are Queued, InProgress, Complete, or Failed.

" + "EBSFilter$values": "

The value of the filter.

The valid values are Optimized, or NotOptimized.

", + "Filter$values": "

The value of the filter.

The valid values for this parameter are as follows, depending on what you specify for the name parameter and the resource type that you wish to filter results for:

", + "JobFilter$values": "

The value of the filter.

The valid values for this parameter are as follows, depending on what you specify for the name parameter:

" } }, "Filters": { @@ -254,8 +300,8 @@ "Finding": { "base": null, "refs": { - "AutoScalingGroupRecommendation$finding": "

The finding classification for the Auto Scaling group.

Findings for Auto Scaling groups include:

The values that are returned might be NOT_OPTIMIZED or OPTIMIZED.

", - "InstanceRecommendation$finding": "

The finding classification for the instance.

Findings for instances include:

The values that are returned might be UNDER_PROVISIONED, OVER_PROVISIONED, or OPTIMIZED.

", + "AutoScalingGroupRecommendation$finding": "

The finding classification for the Auto Scaling group.

Findings for Auto Scaling groups include:

", + "InstanceRecommendation$finding": "

The finding classification for the instance.

Findings for instances include:

", "Summary$name": "

The finding classification of the recommendation.

" } }, @@ -269,6 +315,16 @@ "refs": { } }, + "GetEBSVolumeRecommendationsRequest": { + "base": null, + "refs": { + } + }, + "GetEBSVolumeRecommendationsResponse": { + "base": null, + "refs": { + } + }, "GetEC2InstanceRecommendationsRequest": { "base": null, "refs": { @@ -309,6 +365,7 @@ "base": null, "refs": { "GetAutoScalingGroupRecommendationsResponse$errors": "

An array of objects that describe errors of the request.

For example, an error is returned if you request recommendations for an unsupported Auto Scaling group.

", + "GetEBSVolumeRecommendationsResponse$errors": "

An array of objects that describe errors of the request.

For example, an error is returned if you request recommendations for an unsupported volume.

", "GetEC2InstanceRecommendationsResponse$errors": "

An array of objects that describe errors of the request.

For example, an error is returned if you request recommendations for an instance of an unsupported instance family.

" } }, @@ -331,9 +388,9 @@ "IncludeMemberAccounts": { "base": null, "refs": { - "ExportAutoScalingGroupRecommendationsRequest$includeMemberAccounts": "

Indicates whether to include recommendations for resources in all member accounts of the organization if your account is the master account of an organization.

The member accounts must also be opted in to Compute Optimizer.

Recommendations for member accounts of the organization are not included in the export file if this parameter is omitted.

This parameter cannot be specified together with the account IDs parameter. The parameters are mutually exclusive.

Recommendations for member accounts are not included in the export if this parameter, or the account IDs parameter, is omitted.

", - "ExportEC2InstanceRecommendationsRequest$includeMemberAccounts": "

Indicates whether to include recommendations for resources in all member accounts of the organization if your account is the master account of an organization.

The member accounts must also be opted in to Compute Optimizer.

Recommendations for member accounts of the organization are not included in the export file if this parameter is omitted.

Recommendations for member accounts are not included in the export if this parameter, or the account IDs parameter, is omitted.

", - "UpdateEnrollmentStatusRequest$includeMemberAccounts": "

Indicates whether to enroll member accounts of the organization if the your account is the master account of an organization.

" + "ExportAutoScalingGroupRecommendationsRequest$includeMemberAccounts": "

Indicates whether to include recommendations for resources in all member accounts of the organization if your account is the management account of an organization.

The member accounts must also be opted in to Compute Optimizer.

Recommendations for member accounts of the organization are not included in the export file if this parameter is omitted.

This parameter cannot be specified together with the account IDs parameter. The parameters are mutually exclusive.

Recommendations for member accounts are not included in the export if this parameter, or the account IDs parameter, is omitted.

", + "ExportEC2InstanceRecommendationsRequest$includeMemberAccounts": "

Indicates whether to include recommendations for resources in all member accounts of the organization if your account is the management account of an organization.

The member accounts must also be opted in to Compute Optimizer.

Recommendations for member accounts of the organization are not included in the export file if this parameter is omitted.

Recommendations for member accounts are not included in the export if this parameter, or the account IDs parameter, is omitted.

", + "UpdateEnrollmentStatusRequest$includeMemberAccounts": "

Indicates whether to enroll member accounts of the organization if the your account is the management account of an organization.

" } }, "InstanceArn": { @@ -434,7 +491,8 @@ "base": null, "refs": { "AutoScalingGroupRecommendation$lastRefreshTimestamp": "

The time stamp of when the Auto Scaling group recommendation was last refreshed.

", - "InstanceRecommendation$lastRefreshTimestamp": "

The time stamp of when the instance recommendation was last refreshed.

" + "InstanceRecommendation$lastRefreshTimestamp": "

The time stamp of when the instance recommendation was last refreshed.

", + "VolumeRecommendation$lastRefreshTimestamp": "

The time stamp of when the volume recommendation was last refreshed.

" } }, "LastUpdatedTimestamp": { @@ -452,7 +510,8 @@ "base": null, "refs": { "AutoScalingGroupRecommendation$lookBackPeriodInDays": "

The number of days for which utilization metrics were analyzed for the Auto Scaling group.

", - "InstanceRecommendation$lookBackPeriodInDays": "

The number of days for which utilization metrics were analyzed for the instance.

" + "InstanceRecommendation$lookBackPeriodInDays": "

The number of days for which utilization metrics were analyzed for the instance.

", + "VolumeRecommendation$lookBackPeriodInDays": "

The number of days for which utilization metrics were analyzed for the volume.

" } }, "MaxResults": { @@ -460,6 +519,7 @@ "refs": { "DescribeRecommendationExportJobsRequest$maxResults": "

The maximum number of export jobs to return with a single request.

To retrieve the remaining results, make another request with the returned NextToken value.

", "GetAutoScalingGroupRecommendationsRequest$maxResults": "

The maximum number of Auto Scaling group recommendations to return with a single request.

To retrieve the remaining results, make another request with the returned NextToken value.

", + "GetEBSVolumeRecommendationsRequest$maxResults": "

The maximum number of volume recommendations to return with a single request.

To retrieve the remaining results, make another request with the returned NextToken value.

", "GetEC2InstanceRecommendationsRequest$maxResults": "

The maximum number of instance recommendations to return with a single request.

To retrieve the remaining results, make another request with the returned NextToken value.

", "GetRecommendationSummariesRequest$maxResults": "

The maximum number of recommendation summaries to return with a single request.

To retrieve the remaining results, make another request with the returned NextToken value.

" } @@ -473,7 +533,7 @@ "MemberAccountsEnrolled": { "base": null, "refs": { - "GetEnrollmentStatusResponse$memberAccountsEnrolled": "

Confirms the enrollment status of member accounts within the organization, if the account is a master account of an organization.

" + "GetEnrollmentStatusResponse$memberAccountsEnrolled": "

Confirms the enrollment status of member accounts within the organization, if the account is a management account of an organization.

" } }, "Message": { @@ -491,20 +551,22 @@ "MetricName": { "base": null, "refs": { - "ProjectedMetric$name": "

The name of the projected utilization metric.

", - "UtilizationMetric$name": "

The name of the utilization metric.

The Memory metric is returned only for resources that have the unified CloudWatch agent installed on them. For more information, see Enabling Memory Utilization with the CloudWatch Agent.

" + "ProjectedMetric$name": "

The name of the projected utilization metric.

The following projected utilization metrics are returned:

", + "UtilizationMetric$name": "

The name of the utilization metric.

The following utilization metrics are available:

" } }, "MetricStatistic": { "base": null, "refs": { + "EBSUtilizationMetric$statistic": "

The statistic of the utilization metric.

The following statistics are available:

", "GetEC2RecommendationProjectedMetricsRequest$stat": "

The statistic of the projected metrics.

", - "UtilizationMetric$statistic": "

The statistic of the utilization metric.

" + "UtilizationMetric$statistic": "

The statistic of the utilization metric.

The following statistics are available:

" } }, "MetricValue": { "base": null, "refs": { + "EBSUtilizationMetric$value": "

The value of the utilization metric.

", "MetricValues$member": null, "UtilizationMetric$value": "

The value of the utilization metric.

" } @@ -533,6 +595,8 @@ "DescribeRecommendationExportJobsResponse$nextToken": "

The token to use to advance to the next page of export jobs.

This value is null when there are no more pages of export jobs to return.

", "GetAutoScalingGroupRecommendationsRequest$nextToken": "

The token to advance to the next page of Auto Scaling group recommendations.

", "GetAutoScalingGroupRecommendationsResponse$nextToken": "

The token to use to advance to the next page of Auto Scaling group recommendations.

This value is null when there are no more pages of Auto Scaling group recommendations to return.

", + "GetEBSVolumeRecommendationsRequest$nextToken": "

The token to advance to the next page of volume recommendations.

", + "GetEBSVolumeRecommendationsResponse$nextToken": "

The token to use to advance to the next page of volume recommendations.

This value is null when there are no more pages of volume recommendations to return.

", "GetEC2InstanceRecommendationsRequest$nextToken": "

The token to advance to the next page of instance recommendations.

", "GetEC2InstanceRecommendationsResponse$nextToken": "

The token to use to advance to the next page of instance recommendations.

This value is null when there are no more pages of instance recommendations to return.

", "GetRecommendationSummariesRequest$nextToken": "

The token to advance to the next page of recommendation summaries.

", @@ -548,7 +612,8 @@ "base": null, "refs": { "AutoScalingGroupRecommendationOption$performanceRisk": "

The performance risk of the Auto Scaling group configuration recommendation.

Performance risk is the likelihood of the recommended instance type not meeting the performance requirement of your workload.

The lowest performance risk is categorized as 0, and the highest as 5.

", - "InstanceRecommendationOption$performanceRisk": "

The performance risk of the instance recommendation option.

Performance risk is the likelihood of the recommended instance type not meeting the performance requirement of your workload.

The lowest performance risk is categorized as 0, and the highest as 5.

" + "InstanceRecommendationOption$performanceRisk": "

The performance risk of the instance recommendation option.

Performance risk is the likelihood of the recommended instance type not meeting the performance requirement of your workload.

The lowest performance risk is categorized as 0, and the highest as 5.

", + "VolumeRecommendationOption$performanceRisk": "

The performance risk of the volume recommendation option.

Performance risk is the likelihood of the recommended volume type not meeting the performance requirement of your workload.

The lowest performance risk is categorized as 0, and the highest as 5.

" } }, "Period": { @@ -558,7 +623,7 @@ } }, "ProjectedMetric": { - "base": "

Describes a projected utilization metric of a recommendation option, such as an Amazon EC2 instance.

The Cpu and Memory metrics are the only projected utilization metrics returned when you run the GetEC2RecommendationProjectedMetrics action. Additionally, the Memory metric is returned only for resources that have the unified CloudWatch agent installed on them. For more information, see Enabling Memory Utilization with the CloudWatch Agent.

", + "base": "

Describes a projected utilization metric of a recommendation option, such as an Amazon EC2 instance. This represents the projected utilization of a recommendation option had you used that resource during the analyzed period.

Compare the utilization metric data of your resource against its projected utilization metric data to determine the performance difference between your current resource and the recommended option.

The Cpu and Memory metrics are the only projected utilization metrics returned when you run the GetEC2RecommendationProjectedMetrics action. Additionally, the Memory metric is returned only for resources that have the unified CloudWatch agent installed on them. For more information, see Enabling Memory Utilization with the CloudWatch Agent.

", "refs": { "ProjectedMetrics$member": null } @@ -581,7 +646,8 @@ "refs": { "AutoScalingGroupRecommendationOption$rank": "

The rank of the Auto Scaling group recommendation option.

The top recommendation option is ranked as 1.

", "InstanceRecommendationOption$rank": "

The rank of the instance recommendation option.

The top recommendation option is ranked as 1.

", - "RecommendedOptionProjectedMetric$rank": "

The rank of the recommendation option projected metric.

The top recommendation option is ranked as 1.

The projected metric rank correlates to the recommendation option rank. For example, the projected metric ranked as 1 is related to the recommendation option that is also ranked as 1 in the same response.

" + "RecommendedOptionProjectedMetric$rank": "

The rank of the recommendation option projected metric.

The top recommendation option is ranked as 1.

The projected metric rank correlates to the recommendation option rank. For example, the projected metric ranked as 1 is related to the recommendation option that is also ranked as 1 in the same response.

", + "VolumeRecommendationOption$rank": "

The rank of the volume recommendation option.

The top recommendation option is ranked as 1.

" } }, "RecommendationExportJob": { @@ -751,7 +817,7 @@ } }, "UtilizationMetric": { - "base": "

Describes a utilization metric of a resource, such as an Amazon EC2 instance.

", + "base": "

Describes a utilization metric of a resource, such as an Amazon EC2 instance.

Compare the utilization metric data of your resource against its projected utilization metric data to determine the performance difference between your current resource and the recommended option.

", "refs": { "ProjectedUtilizationMetrics$member": null, "UtilizationMetrics$member": null @@ -763,6 +829,86 @@ "AutoScalingGroupRecommendation$utilizationMetrics": "

An array of objects that describe the utilization metrics of the Auto Scaling group.

", "InstanceRecommendation$utilizationMetrics": "

An array of objects that describe the utilization metrics of the instance.

" } + }, + "VolumeArn": { + "base": null, + "refs": { + "VolumeArns$member": null, + "VolumeRecommendation$volumeArn": "

The Amazon Resource Name (ARN) of the current volume.

" + } + }, + "VolumeArns": { + "base": null, + "refs": { + "GetEBSVolumeRecommendationsRequest$volumeArns": "

The Amazon Resource Name (ARN) of the volumes for which to return recommendations.

" + } + }, + "VolumeBaselineIOPS": { + "base": null, + "refs": { + "VolumeConfiguration$volumeBaselineIOPS": "

The baseline IOPS of the volume.

" + } + }, + "VolumeBaselineThroughput": { + "base": null, + "refs": { + "VolumeConfiguration$volumeBaselineThroughput": "

The baseline throughput of the volume.

" + } + }, + "VolumeBurstIOPS": { + "base": null, + "refs": { + "VolumeConfiguration$volumeBurstIOPS": "

The burst IOPS of the volume.

" + } + }, + "VolumeBurstThroughput": { + "base": null, + "refs": { + "VolumeConfiguration$volumeBurstThroughput": "

The burst throughput of the volume.

" + } + }, + "VolumeConfiguration": { + "base": "

Describes the configuration of an Amazon Elastic Block Store (Amazon EBS) volume.

", + "refs": { + "VolumeRecommendation$currentConfiguration": "

An array of objects that describe the current configuration of the volume.

", + "VolumeRecommendationOption$configuration": "

An array of objects that describe a volume configuration.

" + } + }, + "VolumeRecommendation": { + "base": "

Describes an Amazon Elastic Block Store (Amazon EBS) volume recommendation.

", + "refs": { + "VolumeRecommendations$member": null + } + }, + "VolumeRecommendationOption": { + "base": "

Describes a recommendation option for an Amazon Elastic Block Store (Amazon EBS) instance.

", + "refs": { + "VolumeRecommendationOptions$member": null + } + }, + "VolumeRecommendationOptions": { + "base": null, + "refs": { + "VolumeRecommendation$volumeRecommendationOptions": "

An array of objects that describe the recommendation options for the volume.

" + } + }, + "VolumeRecommendations": { + "base": null, + "refs": { + "GetEBSVolumeRecommendationsResponse$volumeRecommendations": "

An array of objects that describe volume recommendations.

" + } + }, + "VolumeSize": { + "base": null, + "refs": { + "VolumeConfiguration$volumeSize": "

The size of the volume, in GiB.

" + } + }, + "VolumeType": { + "base": null, + "refs": { + "VolumeConfiguration$volumeType": "

The volume type.

This can be gp2 for General Purpose SSD, io1 or io2 for Provisioned IOPS SSD, st1 for Throughput Optimized HDD, sc1 for Cold HDD, or standard for Magnetic volumes.

" + } } } } diff --git a/models/apis/license-manager/2018-08-01/api-2.json b/models/apis/license-manager/2018-08-01/api-2.json index 003834347ff..1717b199a36 100644 --- a/models/apis/license-manager/2018-08-01/api-2.json +++ b/models/apis/license-manager/2018-08-01/api-2.json @@ -12,6 +12,137 @@ "uid":"license-manager-2018-08-01" }, "operations":{ + "AcceptGrant":{ + "name":"AcceptGrant", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"AcceptGrantRequest"}, + "output":{"shape":"AcceptGrantResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"AuthorizationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"RateLimitExceededException"}, + {"shape":"ResourceLimitExceededException"}, + {"shape":"ServerInternalException"} + ] + }, + "CheckInLicense":{ + "name":"CheckInLicense", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CheckInLicenseRequest"}, + "output":{"shape":"CheckInLicenseResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"AuthorizationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"RateLimitExceededException"}, + {"shape":"ServerInternalException"} + ] + }, + "CheckoutBorrowLicense":{ + "name":"CheckoutBorrowLicense", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CheckoutBorrowLicenseRequest"}, + "output":{"shape":"CheckoutBorrowLicenseResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"NoEntitlementsAllowedException"}, + {"shape":"EntitlementNotAllowedException"}, + {"shape":"UnsupportedDigitalSignatureMethodException"}, + {"shape":"RedirectException"}, + {"shape":"AuthorizationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"RateLimitExceededException"}, + {"shape":"ServerInternalException"} + ] + }, + "CheckoutLicense":{ + "name":"CheckoutLicense", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CheckoutLicenseRequest"}, + "output":{"shape":"CheckoutLicenseResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"NoEntitlementsAllowedException"}, + {"shape":"UnsupportedDigitalSignatureMethodException"}, + {"shape":"RedirectException"}, + {"shape":"AuthorizationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"RateLimitExceededException"}, + {"shape":"ServerInternalException"} + ] + }, + "CreateGrant":{ + "name":"CreateGrant", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateGrantRequest"}, + "output":{"shape":"CreateGrantResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"ResourceLimitExceededException"}, + {"shape":"ServerInternalException"}, + {"shape":"AuthorizationException"}, + {"shape":"RateLimitExceededException"}, + {"shape":"AccessDeniedException"} + ] + }, + "CreateGrantVersion":{ + "name":"CreateGrantVersion", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateGrantVersionRequest"}, + "output":{"shape":"CreateGrantVersionResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"ResourceLimitExceededException"}, + {"shape":"ServerInternalException"}, + {"shape":"AuthorizationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"RateLimitExceededException"} + ] + }, + "CreateLicense":{ + "name":"CreateLicense", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateLicenseRequest"}, + "output":{"shape":"CreateLicenseResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"RedirectException"}, + {"shape":"AuthorizationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"RateLimitExceededException"}, + {"shape":"ServerInternalException"} + ] + }, "CreateLicenseConfiguration":{ "name":"CreateLicenseConfiguration", "http":{ @@ -29,6 +160,81 @@ {"shape":"RateLimitExceededException"} ] }, + "CreateLicenseVersion":{ + "name":"CreateLicenseVersion", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateLicenseVersionRequest"}, + "output":{"shape":"CreateLicenseVersionResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"RedirectException"}, + {"shape":"ConflictException"}, + {"shape":"ServerInternalException"}, + {"shape":"AuthorizationException"}, + {"shape":"RateLimitExceededException"} + ] + }, + "CreateToken":{ + "name":"CreateToken", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateTokenRequest"}, + "output":{"shape":"CreateTokenResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AuthorizationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"RateLimitExceededException"}, + {"shape":"ResourceLimitExceededException"}, + {"shape":"ServerInternalException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"RedirectException"} + ] + }, + "DeleteGrant":{ + "name":"DeleteGrant", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteGrantRequest"}, + "output":{"shape":"DeleteGrantResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"AuthorizationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"RateLimitExceededException"}, + {"shape":"ResourceLimitExceededException"}, + {"shape":"ServerInternalException"} + ] + }, + "DeleteLicense":{ + "name":"DeleteLicense", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteLicenseRequest"}, + "output":{"shape":"DeleteLicenseResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"RedirectException"}, + {"shape":"ConflictException"}, + {"shape":"ServerInternalException"}, + {"shape":"AuthorizationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"RateLimitExceededException"} + ] + }, "DeleteLicenseConfiguration":{ "name":"DeleteLicenseConfiguration", "http":{ @@ -45,6 +251,93 @@ {"shape":"RateLimitExceededException"} ] }, + "DeleteToken":{ + "name":"DeleteToken", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteTokenRequest"}, + "output":{"shape":"DeleteTokenResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AuthorizationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"RateLimitExceededException"}, + {"shape":"ServerInternalException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"RedirectException"} + ] + }, + "ExtendLicenseConsumption":{ + "name":"ExtendLicenseConsumption", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ExtendLicenseConsumptionRequest"}, + "output":{"shape":"ExtendLicenseConsumptionResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"AuthorizationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"RateLimitExceededException"}, + {"shape":"ServerInternalException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "GetAccessToken":{ + "name":"GetAccessToken", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetAccessTokenRequest"}, + "output":{"shape":"GetAccessTokenResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AuthorizationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"RateLimitExceededException"}, + {"shape":"ServerInternalException"} + ] + }, + "GetGrant":{ + "name":"GetGrant", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetGrantRequest"}, + "output":{"shape":"GetGrantResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"ResourceLimitExceededException"}, + {"shape":"ServerInternalException"}, + {"shape":"AuthorizationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"RateLimitExceededException"} + ] + }, + "GetLicense":{ + "name":"GetLicense", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetLicenseRequest"}, + "output":{"shape":"GetLicenseResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"AuthorizationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"RateLimitExceededException"}, + {"shape":"ServerInternalException"} + ] + }, "GetLicenseConfiguration":{ "name":"GetLicenseConfiguration", "http":{ @@ -61,6 +354,23 @@ {"shape":"RateLimitExceededException"} ] }, + "GetLicenseUsage":{ + "name":"GetLicenseUsage", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"GetLicenseUsageRequest"}, + "output":{"shape":"GetLicenseUsageResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"AuthorizationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"RateLimitExceededException"}, + {"shape":"ServerInternalException"} + ] + }, "GetServiceSettings":{ "name":"GetServiceSettings", "http":{ @@ -93,6 +403,24 @@ {"shape":"RateLimitExceededException"} ] }, + "ListDistributedGrants":{ + "name":"ListDistributedGrants", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListDistributedGrantsRequest"}, + "output":{"shape":"ListDistributedGrantsResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"ResourceLimitExceededException"}, + {"shape":"ServerInternalException"}, + {"shape":"AuthorizationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"RateLimitExceededException"} + ] + }, "ListFailuresForLicenseConfigurationOperations":{ "name":"ListFailuresForLicenseConfigurationOperations", "http":{ @@ -142,6 +470,75 @@ {"shape":"RateLimitExceededException"} ] }, + "ListLicenseVersions":{ + "name":"ListLicenseVersions", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListLicenseVersionsRequest"}, + "output":{"shape":"ListLicenseVersionsResponse"}, + "errors":[ + {"shape":"InvalidParameterValueException"}, + {"shape":"AuthorizationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"RateLimitExceededException"}, + {"shape":"ServerInternalException"} + ] + }, + "ListLicenses":{ + "name":"ListLicenses", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListLicensesRequest"}, + "output":{"shape":"ListLicensesResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"AuthorizationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"RateLimitExceededException"}, + {"shape":"ServerInternalException"} + ] + }, + "ListReceivedGrants":{ + "name":"ListReceivedGrants", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListReceivedGrantsRequest"}, + "output":{"shape":"ListReceivedGrantsResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"ResourceLimitExceededException"}, + {"shape":"ServerInternalException"}, + {"shape":"AuthorizationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"RateLimitExceededException"} + ] + }, + "ListReceivedLicenses":{ + "name":"ListReceivedLicenses", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListReceivedLicensesRequest"}, + "output":{"shape":"ListReceivedLicensesResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"ResourceLimitExceededException"}, + {"shape":"ServerInternalException"}, + {"shape":"AuthorizationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"RateLimitExceededException"} + ] + }, "ListResourceInventory":{ "name":"ListResourceInventory", "http":{ @@ -176,6 +573,22 @@ {"shape":"RateLimitExceededException"} ] }, + "ListTokens":{ + "name":"ListTokens", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListTokensRequest"}, + "output":{"shape":"ListTokensResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"AuthorizationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"RateLimitExceededException"}, + {"shape":"ServerInternalException"} + ] + }, "ListUsageForLicenseConfiguration":{ "name":"ListUsageForLicenseConfiguration", "http":{ @@ -193,6 +606,24 @@ {"shape":"RateLimitExceededException"} ] }, + "RejectGrant":{ + "name":"RejectGrant", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"RejectGrantRequest"}, + "output":{"shape":"RejectGrantResponse"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InvalidParameterValueException"}, + {"shape":"AuthorizationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"RateLimitExceededException"}, + {"shape":"ResourceLimitExceededException"}, + {"shape":"ServerInternalException"} + ] + }, "TagResource":{ "name":"TagResource", "http":{ @@ -238,7 +669,8 @@ {"shape":"ServerInternalException"}, {"shape":"AuthorizationException"}, {"shape":"AccessDeniedException"}, - {"shape":"RateLimitExceededException"} + {"shape":"RateLimitExceededException"}, + {"shape":"ResourceLimitExceededException"} ] }, "UpdateLicenseSpecificationsForResource":{ @@ -277,6 +709,21 @@ } }, "shapes":{ + "AcceptGrantRequest":{ + "type":"structure", + "required":["GrantArn"], + "members":{ + "GrantArn":{"shape":"Arn"} + } + }, + "AcceptGrantResponse":{ + "type":"structure", + "members":{ + "GrantArn":{"shape":"Arn"}, + "Status":{"shape":"GrantStatus"}, + "Version":{"shape":"String"} + } + }, "AccessDeniedException":{ "type":"structure", "members":{ @@ -284,6 +731,33 @@ }, "exception":true }, + "AllowedOperation":{ + "type":"string", + "enum":[ + "CreateGrant", + "CheckoutLicense", + "CheckoutBorrowLicense", + "CheckInLicense", + "ExtendConsumptionLicense", + "ListPurchasedLicenses", + "CreateToken" + ] + }, + "AllowedOperationList":{ + "type":"list", + "member":{"shape":"AllowedOperation"}, + "max":7, + "min":1 + }, + "Arn":{ + "type":"string", + "max":2048, + "pattern":"^arn:aws:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$" + }, + "ArnList":{ + "type":"list", + "member":{"shape":"Arn"} + }, "AuthorizationException":{ "type":"structure", "members":{ @@ -298,60 +772,515 @@ } }, "Boolean":{"type":"boolean"}, + "BorrowConfiguration":{ + "type":"structure", + "required":[ + "AllowEarlyCheckIn", + "MaxTimeToLiveInMinutes" + ], + "members":{ + "AllowEarlyCheckIn":{"shape":"BoxBoolean"}, + "MaxTimeToLiveInMinutes":{"shape":"BoxInteger"} + } + }, "BoxBoolean":{"type":"boolean"}, "BoxInteger":{"type":"integer"}, "BoxLong":{"type":"long"}, + "CheckInLicenseRequest":{ + "type":"structure", + "required":["LicenseConsumptionToken"], + "members":{ + "LicenseConsumptionToken":{"shape":"String"}, + "Beneficiary":{"shape":"String"} + } + }, + "CheckInLicenseResponse":{ + "type":"structure", + "members":{ + } + }, + "CheckoutBorrowLicenseRequest":{ + "type":"structure", + "required":[ + "LicenseArn", + "Entitlements", + "DigitalSignatureMethod", + "ClientToken" + ], + "members":{ + "LicenseArn":{"shape":"Arn"}, + "Entitlements":{"shape":"EntitlementDataList"}, + "DigitalSignatureMethod":{"shape":"DigitalSignatureMethod"}, + "NodeId":{"shape":"String"}, + "CheckoutMetadata":{"shape":"MetadataList"}, + "ClientToken":{"shape":"ClientToken"} + } + }, + "CheckoutBorrowLicenseResponse":{ + "type":"structure", + "members":{ + "LicenseArn":{"shape":"Arn"}, + "LicenseConsumptionToken":{"shape":"String"}, + "EntitlementsAllowed":{"shape":"EntitlementDataList"}, + "NodeId":{"shape":"String"}, + "SignedToken":{"shape":"SignedToken"}, + "IssuedAt":{"shape":"ISO8601DateTime"}, + "Expiration":{"shape":"ISO8601DateTime"}, + "CheckoutMetadata":{"shape":"MetadataList"} + } + }, + "CheckoutLicenseRequest":{ + "type":"structure", + "required":[ + "ProductSKU", + "CheckoutType", + "KeyFingerprint", + "Entitlements", + "ClientToken" + ], + "members":{ + "ProductSKU":{"shape":"String"}, + "CheckoutType":{"shape":"CheckoutType"}, + "KeyFingerprint":{"shape":"String"}, + "Entitlements":{"shape":"EntitlementDataList"}, + "ClientToken":{"shape":"ClientToken"}, + "Beneficiary":{"shape":"String"}, + "NodeId":{"shape":"String"} + } + }, + "CheckoutLicenseResponse":{ + "type":"structure", + "members":{ + "CheckoutType":{"shape":"CheckoutType"}, + "LicenseConsumptionToken":{"shape":"String"}, + "EntitlementsAllowed":{"shape":"EntitlementDataList"}, + "SignedToken":{"shape":"SignedToken"}, + "NodeId":{"shape":"String"}, + "IssuedAt":{"shape":"ISO8601DateTime"}, + "Expiration":{"shape":"ISO8601DateTime"} + } + }, + "CheckoutType":{ + "type":"string", + "enum":["PROVISIONAL"] + }, + "ClientToken":{ + "type":"string", + "max":64, + "pattern":"[a-zA-Z0-9]*" + }, + "ConflictException":{ + "type":"structure", + "members":{ + "Message":{"shape":"Message"} + }, + "exception":true + }, "ConsumedLicenseSummary":{ "type":"structure", "members":{ - "ResourceType":{"shape":"ResourceType"}, - "ConsumedLicenses":{"shape":"BoxLong"} - } + "ResourceType":{"shape":"ResourceType"}, + "ConsumedLicenses":{"shape":"BoxLong"} + } + }, + "ConsumedLicenseSummaryList":{ + "type":"list", + "member":{"shape":"ConsumedLicenseSummary"} + }, + "ConsumptionConfiguration":{ + "type":"structure", + "members":{ + "RenewType":{"shape":"RenewType"}, + "ProvisionalConfiguration":{"shape":"ProvisionalConfiguration"}, + "BorrowConfiguration":{"shape":"BorrowConfiguration"} + } + }, + "CreateGrantRequest":{ + "type":"structure", + "required":[ + "ClientToken", + "GrantName", + "LicenseArn", + "Principals", + "HomeRegion", + "AllowedOperations" + ], + "members":{ + "ClientToken":{"shape":"String"}, + "GrantName":{"shape":"String"}, + "LicenseArn":{"shape":"Arn"}, + "Principals":{"shape":"PrincipalArnList"}, + "HomeRegion":{"shape":"String"}, + "AllowedOperations":{"shape":"AllowedOperationList"} + } + }, + "CreateGrantResponse":{ + "type":"structure", + "members":{ + "GrantArn":{"shape":"Arn"}, + "Status":{"shape":"GrantStatus"}, + "Version":{"shape":"String"} + } + }, + "CreateGrantVersionRequest":{ + "type":"structure", + "required":[ + "ClientToken", + "GrantArn" + ], + "members":{ + "ClientToken":{"shape":"String"}, + "GrantArn":{"shape":"Arn"}, + "GrantName":{"shape":"String"}, + "AllowedOperations":{"shape":"AllowedOperationList"}, + "Status":{"shape":"GrantStatus"}, + "SourceVersion":{"shape":"String"} + } + }, + "CreateGrantVersionResponse":{ + "type":"structure", + "members":{ + "GrantArn":{"shape":"Arn"}, + "Status":{"shape":"GrantStatus"}, + "Version":{"shape":"String"} + } + }, + "CreateLicenseConfigurationRequest":{ + "type":"structure", + "required":[ + "Name", + "LicenseCountingType" + ], + "members":{ + "Name":{"shape":"String"}, + "Description":{"shape":"String"}, + "LicenseCountingType":{"shape":"LicenseCountingType"}, + "LicenseCount":{"shape":"BoxLong"}, + "LicenseCountHardLimit":{"shape":"BoxBoolean"}, + "LicenseRules":{"shape":"StringList"}, + "Tags":{"shape":"TagList"}, + "ProductInformationList":{"shape":"ProductInformationList"} + } + }, + "CreateLicenseConfigurationResponse":{ + "type":"structure", + "members":{ + "LicenseConfigurationArn":{"shape":"String"} + } + }, + "CreateLicenseRequest":{ + "type":"structure", + "required":[ + "LicenseName", + "ProductName", + "ProductSKU", + "Issuer", + "HomeRegion", + "Validity", + "Entitlements", + "Beneficiary", + "ConsumptionConfiguration", + "ClientToken" + ], + "members":{ + "LicenseName":{"shape":"String"}, + "ProductName":{"shape":"String"}, + "ProductSKU":{"shape":"String"}, + "Issuer":{"shape":"Issuer"}, + "HomeRegion":{"shape":"String"}, + "Validity":{"shape":"DatetimeRange"}, + "Entitlements":{"shape":"EntitlementList"}, + "Beneficiary":{"shape":"String"}, + "ConsumptionConfiguration":{"shape":"ConsumptionConfiguration"}, + "LicenseMetadata":{"shape":"MetadataList"}, + "ClientToken":{"shape":"String"} + } + }, + "CreateLicenseResponse":{ + "type":"structure", + "members":{ + "LicenseArn":{"shape":"Arn"}, + "Status":{"shape":"LicenseStatus"}, + "Version":{"shape":"String"} + } + }, + "CreateLicenseVersionRequest":{ + "type":"structure", + "required":[ + "LicenseArn", + "LicenseName", + "ProductName", + "Issuer", + "HomeRegion", + "Validity", + "Entitlements", + "ConsumptionConfiguration", + "Status", + "ClientToken" + ], + "members":{ + "LicenseArn":{"shape":"Arn"}, + "LicenseName":{"shape":"String"}, + "ProductName":{"shape":"String"}, + "Issuer":{"shape":"Issuer"}, + "HomeRegion":{"shape":"String"}, + "Validity":{"shape":"DatetimeRange"}, + "LicenseMetadata":{"shape":"MetadataList"}, + "Entitlements":{"shape":"EntitlementList"}, + "ConsumptionConfiguration":{"shape":"ConsumptionConfiguration"}, + "Status":{"shape":"LicenseStatus"}, + "ClientToken":{"shape":"String"}, + "SourceVersion":{"shape":"String"} + } + }, + "CreateLicenseVersionResponse":{ + "type":"structure", + "members":{ + "LicenseArn":{"shape":"Arn"}, + "Version":{"shape":"String"}, + "Status":{"shape":"LicenseStatus"} + } + }, + "CreateTokenRequest":{ + "type":"structure", + "required":[ + "LicenseArn", + "ClientToken" + ], + "members":{ + "LicenseArn":{"shape":"Arn"}, + "RoleArns":{"shape":"ArnList"}, + "ExpirationInDays":{"shape":"Integer"}, + "TokenProperties":{"shape":"MaxSize3StringList"}, + "ClientToken":{"shape":"IdempotencyToken"} + } + }, + "CreateTokenResponse":{ + "type":"structure", + "members":{ + "TokenId":{"shape":"String"}, + "TokenType":{"shape":"TokenType"}, + "Token":{"shape":"TokenString"} + } + }, + "DateTime":{"type":"timestamp"}, + "DatetimeRange":{ + "type":"structure", + "required":["Begin"], + "members":{ + "Begin":{"shape":"ISO8601DateTime"}, + "End":{"shape":"ISO8601DateTime"} + } + }, + "DeleteGrantRequest":{ + "type":"structure", + "required":[ + "GrantArn", + "Version" + ], + "members":{ + "GrantArn":{"shape":"Arn"}, + "Version":{"shape":"String"} + } + }, + "DeleteGrantResponse":{ + "type":"structure", + "members":{ + "GrantArn":{"shape":"Arn"}, + "Status":{"shape":"GrantStatus"}, + "Version":{"shape":"String"} + } + }, + "DeleteLicenseConfigurationRequest":{ + "type":"structure", + "required":["LicenseConfigurationArn"], + "members":{ + "LicenseConfigurationArn":{"shape":"String"} + } + }, + "DeleteLicenseConfigurationResponse":{ + "type":"structure", + "members":{ + } + }, + "DeleteLicenseRequest":{ + "type":"structure", + "required":[ + "LicenseArn", + "SourceVersion" + ], + "members":{ + "LicenseArn":{"shape":"Arn"}, + "SourceVersion":{"shape":"String"} + } + }, + "DeleteLicenseResponse":{ + "type":"structure", + "members":{ + "Status":{"shape":"LicenseDeletionStatus"}, + "DeletionDate":{"shape":"ISO8601DateTime"} + } + }, + "DeleteTokenRequest":{ + "type":"structure", + "required":["TokenId"], + "members":{ + "TokenId":{"shape":"String"} + } + }, + "DeleteTokenResponse":{ + "type":"structure", + "members":{ + } + }, + "DigitalSignatureMethod":{ + "type":"string", + "enum":["JWT_PS384"] + }, + "Entitlement":{ + "type":"structure", + "required":[ + "Name", + "Unit" + ], + "members":{ + "Name":{"shape":"String"}, + "Value":{"shape":"String"}, + "MaxCount":{"shape":"Long"}, + "Overage":{"shape":"BoxBoolean"}, + "Unit":{"shape":"EntitlementUnit"}, + "AllowCheckIn":{"shape":"BoxBoolean"} + } + }, + "EntitlementData":{ + "type":"structure", + "required":[ + "Name", + "Unit" + ], + "members":{ + "Name":{"shape":"String"}, + "Value":{"shape":"String"}, + "Unit":{"shape":"EntitlementDataUnit"} + } + }, + "EntitlementDataList":{ + "type":"list", + "member":{"shape":"EntitlementData"} + }, + "EntitlementDataUnit":{ + "type":"string", + "enum":[ + "Count", + "None", + "Seconds", + "Microseconds", + "Milliseconds", + "Bytes", + "Kilobytes", + "Megabytes", + "Gigabytes", + "Terabytes", + "Bits", + "Kilobits", + "Megabits", + "Gigabits", + "Terabits", + "Percent", + "Bytes/Second", + "Kilobytes/Second", + "Megabytes/Second", + "Gigabytes/Second", + "Terabytes/Second", + "Bits/Second", + "Kilobits/Second", + "Megabits/Second", + "Gigabits/Second", + "Terabits/Second", + "Count/Second" + ] + }, + "EntitlementList":{ + "type":"list", + "member":{"shape":"Entitlement"} + }, + "EntitlementNotAllowedException":{ + "type":"structure", + "members":{ + "Message":{"shape":"Message"} + }, + "exception":true }, - "ConsumedLicenseSummaryList":{ - "type":"list", - "member":{"shape":"ConsumedLicenseSummary"} + "EntitlementUnit":{ + "type":"string", + "enum":[ + "Count", + "None", + "Seconds", + "Microseconds", + "Milliseconds", + "Bytes", + "Kilobytes", + "Megabytes", + "Gigabytes", + "Terabytes", + "Bits", + "Kilobits", + "Megabits", + "Gigabits", + "Terabits", + "Percent", + "Bytes/Second", + "Kilobytes/Second", + "Megabytes/Second", + "Gigabytes/Second", + "Terabytes/Second", + "Bits/Second", + "Kilobits/Second", + "Megabits/Second", + "Gigabits/Second", + "Terabits/Second", + "Count/Second" + ] }, - "CreateLicenseConfigurationRequest":{ + "EntitlementUsage":{ "type":"structure", "required":[ "Name", - "LicenseCountingType" + "ConsumedValue", + "Unit" ], "members":{ "Name":{"shape":"String"}, - "Description":{"shape":"String"}, - "LicenseCountingType":{"shape":"LicenseCountingType"}, - "LicenseCount":{"shape":"BoxLong"}, - "LicenseCountHardLimit":{"shape":"BoxBoolean"}, - "LicenseRules":{"shape":"StringList"}, - "Tags":{"shape":"TagList"}, - "ProductInformationList":{"shape":"ProductInformationList"} + "ConsumedValue":{"shape":"String"}, + "MaxCount":{"shape":"String"}, + "Unit":{"shape":"EntitlementDataUnit"} } }, - "CreateLicenseConfigurationResponse":{ - "type":"structure", - "members":{ - "LicenseConfigurationArn":{"shape":"String"} - } + "EntitlementUsageList":{ + "type":"list", + "member":{"shape":"EntitlementUsage"} }, - "DateTime":{"type":"timestamp"}, - "DeleteLicenseConfigurationRequest":{ + "ExtendLicenseConsumptionRequest":{ "type":"structure", - "required":["LicenseConfigurationArn"], + "required":["LicenseConsumptionToken"], "members":{ - "LicenseConfigurationArn":{"shape":"String"} + "LicenseConsumptionToken":{"shape":"String"}, + "DryRun":{"shape":"Boolean"} } }, - "DeleteLicenseConfigurationResponse":{ + "ExtendLicenseConsumptionResponse":{ "type":"structure", "members":{ + "LicenseConsumptionToken":{"shape":"String"}, + "Expiration":{"shape":"ISO8601DateTime"} } }, "FailedDependencyException":{ "type":"structure", "members":{ - "Message":{"shape":"Message"} + "Message":{"shape":"Message"}, + "ErrorCode":{"shape":"String"} }, "exception":true }, @@ -369,6 +1298,10 @@ }, "exception":true }, + "FilterList":{ + "type":"list", + "member":{"shape":"Filter"} + }, "FilterName":{"type":"string"}, "FilterValue":{"type":"string"}, "FilterValues":{ @@ -379,6 +1312,34 @@ "type":"list", "member":{"shape":"Filter"} }, + "GetAccessTokenRequest":{ + "type":"structure", + "required":["Token"], + "members":{ + "Token":{"shape":"TokenString"}, + "TokenProperties":{"shape":"MaxSize3StringList"} + } + }, + "GetAccessTokenResponse":{ + "type":"structure", + "members":{ + "AccessToken":{"shape":"TokenString"} + } + }, + "GetGrantRequest":{ + "type":"structure", + "required":["GrantArn"], + "members":{ + "GrantArn":{"shape":"Arn"}, + "Version":{"shape":"String"} + } + }, + "GetGrantResponse":{ + "type":"structure", + "members":{ + "Grant":{"shape":"Grant"} + } + }, "GetLicenseConfigurationRequest":{ "type":"structure", "required":["LicenseConfigurationArn"], @@ -407,6 +1368,33 @@ "AutomatedDiscoveryInformation":{"shape":"AutomatedDiscoveryInformation"} } }, + "GetLicenseRequest":{ + "type":"structure", + "required":["LicenseArn"], + "members":{ + "LicenseArn":{"shape":"Arn"}, + "Version":{"shape":"String"} + } + }, + "GetLicenseResponse":{ + "type":"structure", + "members":{ + "License":{"shape":"License"} + } + }, + "GetLicenseUsageRequest":{ + "type":"structure", + "required":["LicenseArn"], + "members":{ + "LicenseArn":{"shape":"Arn"} + } + }, + "GetLicenseUsageResponse":{ + "type":"structure", + "members":{ + "LicenseUsage":{"shape":"LicenseUsage"} + } + }, "GetServiceSettingsRequest":{ "type":"structure", "members":{ @@ -422,6 +1410,84 @@ "LicenseManagerResourceShareArn":{"shape":"String"} } }, + "Grant":{ + "type":"structure", + "required":[ + "GrantArn", + "GrantName", + "ParentArn", + "LicenseArn", + "GranteePrincipalArn", + "HomeRegion", + "GrantStatus", + "Version", + "GrantedOperations" + ], + "members":{ + "GrantArn":{"shape":"Arn"}, + "GrantName":{"shape":"String"}, + "ParentArn":{"shape":"Arn"}, + "LicenseArn":{"shape":"Arn"}, + "GranteePrincipalArn":{"shape":"Arn"}, + "HomeRegion":{"shape":"String"}, + "GrantStatus":{"shape":"GrantStatus"}, + "StatusReason":{"shape":"String"}, + "Version":{"shape":"String"}, + "GrantedOperations":{"shape":"AllowedOperationList"} + } + }, + "GrantList":{ + "type":"list", + "member":{"shape":"Grant"} + }, + "GrantStatus":{ + "type":"string", + "enum":[ + "PENDING_WORKFLOW", + "PENDING_ACCEPT", + "REJECTED", + "ACTIVE", + "FAILED_WORKFLOW", + "DELETED", + "PENDING_DELETE", + "DISABLED" + ] + }, + "GrantedLicense":{ + "type":"structure", + "members":{ + "LicenseArn":{"shape":"Arn"}, + "LicenseName":{"shape":"String"}, + "ProductName":{"shape":"String"}, + "ProductSKU":{"shape":"String"}, + "Issuer":{"shape":"IssuerDetails"}, + "HomeRegion":{"shape":"String"}, + "Status":{"shape":"LicenseStatus"}, + "Validity":{"shape":"DatetimeRange"}, + "Beneficiary":{"shape":"String"}, + "Entitlements":{"shape":"EntitlementList"}, + "ConsumptionConfiguration":{"shape":"ConsumptionConfiguration"}, + "LicenseMetadata":{"shape":"MetadataList"}, + "CreateTime":{"shape":"ISO8601DateTime"}, + "Version":{"shape":"String"}, + "ReceivedMetadata":{"shape":"ReceivedMetadata"} + } + }, + "GrantedLicenseList":{ + "type":"list", + "member":{"shape":"GrantedLicense"} + }, + "ISO8601DateTime":{ + "type":"string", + "max":50, + "pattern":"^(-?(?:[1-9][0-9]*)?[0-9]{4})-(1[0-2]|0[1-9])-(3[0-1]|0[1-9]|[1-2][0-9])T(2[0-3]|[0-1][0-9]):([0-5][0-9]):([0-5][0-9])(\\.[0-9]+)?(Z|[+-](?:2[ 0-3]|[0-1][0-9]):[0-5][0-9])+$" + }, + "IdempotencyToken":{ + "type":"string", + "max":60, + "pattern":"\\S+" + }, + "Integer":{"type":"integer"}, "InvalidParameterValueException":{ "type":"structure", "members":{ @@ -462,6 +1528,41 @@ "type":"list", "member":{"shape":"InventoryFilter"} }, + "Issuer":{ + "type":"structure", + "required":["Name"], + "members":{ + "Name":{"shape":"String"}, + "SignKey":{"shape":"String"} + } + }, + "IssuerDetails":{ + "type":"structure", + "members":{ + "Name":{"shape":"String"}, + "SignKey":{"shape":"String"}, + "KeyFingerprint":{"shape":"String"} + } + }, + "License":{ + "type":"structure", + "members":{ + "LicenseArn":{"shape":"Arn"}, + "LicenseName":{"shape":"String"}, + "ProductName":{"shape":"String"}, + "ProductSKU":{"shape":"String"}, + "Issuer":{"shape":"IssuerDetails"}, + "HomeRegion":{"shape":"String"}, + "Status":{"shape":"LicenseStatus"}, + "Validity":{"shape":"DatetimeRange"}, + "Beneficiary":{"shape":"String"}, + "Entitlements":{"shape":"EntitlementList"}, + "ConsumptionConfiguration":{"shape":"ConsumptionConfiguration"}, + "LicenseMetadata":{"shape":"MetadataList"}, + "CreateTime":{"shape":"ISO8601DateTime"}, + "Version":{"shape":"String"} + } + }, "LicenseConfiguration":{ "type":"structure", "members":{ @@ -531,6 +1632,17 @@ "Socket" ] }, + "LicenseDeletionStatus":{ + "type":"string", + "enum":[ + "PENDING_DELETE", + "DELETED" + ] + }, + "LicenseList":{ + "type":"list", + "member":{"shape":"License"} + }, "LicenseOperationFailure":{ "type":"structure", "members":{ @@ -560,6 +1672,24 @@ "type":"list", "member":{"shape":"LicenseSpecification"} }, + "LicenseStatus":{ + "type":"string", + "enum":[ + "AVAILABLE", + "PENDING_AVAILABLE", + "DEACTIVATED", + "SUSPENDED", + "EXPIRED", + "PENDING_DELETE", + "DELETED" + ] + }, + "LicenseUsage":{ + "type":"structure", + "members":{ + "EntitlementUsages":{"shape":"EntitlementUsageList"} + } + }, "LicenseUsageException":{ "type":"structure", "members":{ @@ -583,6 +1713,22 @@ "NextToken":{"shape":"String"} } }, + "ListDistributedGrantsRequest":{ + "type":"structure", + "members":{ + "GrantArns":{"shape":"ArnList"}, + "Filters":{"shape":"FilterList"}, + "NextToken":{"shape":"String"}, + "MaxResults":{"shape":"MaxSize100"} + } + }, + "ListDistributedGrantsResponse":{ + "type":"structure", + "members":{ + "Grants":{"shape":"GrantList"}, + "NextToken":{"shape":"String"} + } + }, "ListFailuresForLicenseConfigurationOperationsRequest":{ "type":"structure", "required":["LicenseConfigurationArn"], @@ -631,6 +1777,70 @@ "NextToken":{"shape":"String"} } }, + "ListLicenseVersionsRequest":{ + "type":"structure", + "required":["LicenseArn"], + "members":{ + "LicenseArn":{"shape":"Arn"}, + "NextToken":{"shape":"String"}, + "MaxResults":{"shape":"MaxSize100"} + } + }, + "ListLicenseVersionsResponse":{ + "type":"structure", + "members":{ + "Licenses":{"shape":"LicenseList"}, + "NextToken":{"shape":"String"} + } + }, + "ListLicensesRequest":{ + "type":"structure", + "members":{ + "LicenseArns":{"shape":"ArnList"}, + "Filters":{"shape":"FilterList"}, + "NextToken":{"shape":"String"}, + "MaxResults":{"shape":"MaxSize100"} + } + }, + "ListLicensesResponse":{ + "type":"structure", + "members":{ + "Licenses":{"shape":"LicenseList"}, + "NextToken":{"shape":"String"} + } + }, + "ListReceivedGrantsRequest":{ + "type":"structure", + "members":{ + "GrantArns":{"shape":"ArnList"}, + "Filters":{"shape":"FilterList"}, + "NextToken":{"shape":"String"}, + "MaxResults":{"shape":"MaxSize100"} + } + }, + "ListReceivedGrantsResponse":{ + "type":"structure", + "members":{ + "Grants":{"shape":"GrantList"}, + "NextToken":{"shape":"String"} + } + }, + "ListReceivedLicensesRequest":{ + "type":"structure", + "members":{ + "LicenseArns":{"shape":"ArnList"}, + "Filters":{"shape":"FilterList"}, + "NextToken":{"shape":"String"}, + "MaxResults":{"shape":"MaxSize100"} + } + }, + "ListReceivedLicensesResponse":{ + "type":"structure", + "members":{ + "Licenses":{"shape":"GrantedLicenseList"}, + "NextToken":{"shape":"String"} + } + }, "ListResourceInventoryRequest":{ "type":"structure", "members":{ @@ -659,6 +1869,22 @@ "Tags":{"shape":"TagList"} } }, + "ListTokensRequest":{ + "type":"structure", + "members":{ + "TokenIds":{"shape":"StringList"}, + "Filters":{"shape":"FilterList"}, + "NextToken":{"shape":"String"}, + "MaxResults":{"shape":"MaxSize100"} + } + }, + "ListTokensResponse":{ + "type":"structure", + "members":{ + "Tokens":{"shape":"TokenList"}, + "NextToken":{"shape":"String"} + } + }, "ListUsageForLicenseConfigurationRequest":{ "type":"structure", "required":["LicenseConfigurationArn"], @@ -676,6 +1902,8 @@ "NextToken":{"shape":"String"} } }, + "Location":{"type":"string"}, + "Long":{"type":"long"}, "ManagedResourceSummary":{ "type":"structure", "members":{ @@ -687,6 +1915,16 @@ "type":"list", "member":{"shape":"ManagedResourceSummary"} }, + "MaxSize100":{ + "type":"integer", + "max":100, + "min":1 + }, + "MaxSize3StringList":{ + "type":"list", + "member":{"shape":"String"}, + "max":3 + }, "Message":{"type":"string"}, "Metadata":{ "type":"structure", @@ -699,6 +1937,13 @@ "type":"list", "member":{"shape":"Metadata"} }, + "NoEntitlementsAllowedException":{ + "type":"structure", + "members":{ + "Message":{"shape":"Message"} + }, + "exception":true + }, "OrganizationConfiguration":{ "type":"structure", "required":["EnableIntegration"], @@ -706,6 +1951,12 @@ "EnableIntegration":{"shape":"Boolean"} } }, + "PrincipalArnList":{ + "type":"list", + "member":{"shape":"Arn"}, + "max":1, + "min":1 + }, "ProductInformation":{ "type":"structure", "required":[ @@ -738,6 +1989,13 @@ "type":"list", "member":{"shape":"ProductInformation"} }, + "ProvisionalConfiguration":{ + "type":"structure", + "required":["MaxTimeToLiveInMinutes"], + "members":{ + "MaxTimeToLiveInMinutes":{"shape":"BoxInteger"} + } + }, "RateLimitExceededException":{ "type":"structure", "members":{ @@ -745,6 +2003,56 @@ }, "exception":true }, + "ReceivedMetadata":{ + "type":"structure", + "members":{ + "ReceivedStatus":{"shape":"ReceivedStatus"}, + "AllowedOperations":{"shape":"AllowedOperationList"} + } + }, + "ReceivedStatus":{ + "type":"string", + "enum":[ + "PENDING_WORKFLOW", + "PENDING_ACCEPT", + "REJECTED", + "ACTIVE", + "FAILED_WORKFLOW", + "DELETED", + "DISABLED" + ] + }, + "RedirectException":{ + "type":"structure", + "members":{ + "Location":{"shape":"Location"}, + "Message":{"shape":"Message"} + }, + "exception":true + }, + "RejectGrantRequest":{ + "type":"structure", + "required":["GrantArn"], + "members":{ + "GrantArn":{"shape":"Arn"} + } + }, + "RejectGrantResponse":{ + "type":"structure", + "members":{ + "GrantArn":{"shape":"Arn"}, + "Status":{"shape":"GrantStatus"}, + "Version":{"shape":"String"} + } + }, + "RenewType":{ + "type":"string", + "enum":[ + "None", + "Weekly", + "Monthly" + ] + }, "ResourceInventory":{ "type":"structure", "members":{ @@ -767,6 +2075,13 @@ }, "exception":true }, + "ResourceNotFoundException":{ + "type":"structure", + "members":{ + "Message":{"shape":"Message"} + }, + "exception":true + }, "ResourceType":{ "type":"string", "enum":[ @@ -785,6 +2100,10 @@ "exception":true, "fault":true }, + "SignedToken":{ + "type":"string", + "min":4096 + }, "String":{"type":"string"}, "StringList":{ "type":"list", @@ -821,6 +2140,38 @@ "members":{ } }, + "TokenData":{ + "type":"structure", + "members":{ + "TokenId":{"shape":"String"}, + "TokenType":{"shape":"String"}, + "LicenseArn":{"shape":"String"}, + "ExpirationTime":{"shape":"ISO8601DateTime"}, + "TokenProperties":{"shape":"MaxSize3StringList"}, + "RoleArns":{"shape":"ArnList"}, + "Status":{"shape":"String"} + } + }, + "TokenList":{ + "type":"list", + "member":{"shape":"TokenData"} + }, + "TokenString":{ + "type":"string", + "max":4096, + "pattern":"\\S+" + }, + "TokenType":{ + "type":"string", + "enum":["REFRESH_TOKEN"] + }, + "UnsupportedDigitalSignatureMethodException":{ + "type":"structure", + "members":{ + "Message":{"shape":"Message"} + }, + "exception":true + }, "UntagResourceRequest":{ "type":"structure", "required":[ @@ -883,6 +2234,13 @@ "type":"structure", "members":{ } + }, + "ValidationException":{ + "type":"structure", + "members":{ + "Message":{"shape":"Message"} + }, + "exception":true } } } diff --git a/models/apis/license-manager/2018-08-01/docs-2.json b/models/apis/license-manager/2018-08-01/docs-2.json index b6337ac2773..b388d4647fa 100644 --- a/models/apis/license-manager/2018-08-01/docs-2.json +++ b/models/apis/license-manager/2018-08-01/docs-2.json @@ -2,17 +2,41 @@ "version": "2.0", "service": " AWS License Manager

AWS License Manager makes it easier to manage licenses from software vendors across multiple AWS accounts and on-premises servers.

", "operations": { + "AcceptGrant": "

Accepts the specified grant.

", + "CheckInLicense": "

Checks in the specified license. Check in a license when it is no longer in use.

", + "CheckoutBorrowLicense": "

Checks out the specified license for offline use.

", + "CheckoutLicense": "

Checks out the specified license.

", + "CreateGrant": "

Creates a grant for the specified license. A grant shares the use of license entitlements with specific AWS accounts.

", + "CreateGrantVersion": "

Creates a new version of the specified grant.

", + "CreateLicense": "

Creates a license.

", "CreateLicenseConfiguration": "

Creates a license configuration.

A license configuration is an abstraction of a customer license agreement that can be consumed and enforced by License Manager. Components include specifications for the license type (licensing by instance, socket, CPU, or vCPU), allowed tenancy (shared tenancy, Dedicated Instance, Dedicated Host, or all of these), license affinity to host (how long a license must be associated with a host), and the number of licenses purchased and used.

", + "CreateLicenseVersion": "

Creates a new version of the specified license.

", + "CreateToken": "

Creates a long-lived token.

A refresh token is a JWT token used to get an access token. With an access token, you can call AssumeRoleWithWebIdentity to get role credentials that you can use to call License Manager to manage the specified license.

", + "DeleteGrant": "

Deletes the specified grant.

", + "DeleteLicense": "

Deletes the specified license.

", "DeleteLicenseConfiguration": "

Deletes the specified license configuration.

You cannot delete a license configuration that is in use.

", + "DeleteToken": "

Deletes the specified token. Must be called in the license home Region.

", + "ExtendLicenseConsumption": "

Extends the expiration date for license consumption.

", + "GetAccessToken": "

Gets a temporary access token to use with AssumeRoleWithWebIdentity. Access tokens are valid for one hour.

", + "GetGrant": "

Gets detailed information about the specified grant.

", + "GetLicense": "

Gets detailed information about the specified license.

", "GetLicenseConfiguration": "

Gets detailed information about the specified license configuration.

", + "GetLicenseUsage": "

Gets detailed information about the usage of the specified license.

", "GetServiceSettings": "

Gets the License Manager settings for the current Region.

", "ListAssociationsForLicenseConfiguration": "

Lists the resource associations for the specified license configuration.

Resource associations need not consume licenses from a license configuration. For example, an AMI or a stopped instance might not consume a license (depending on the license rules).

", + "ListDistributedGrants": "

Lists the grants distributed for the specified license.

", "ListFailuresForLicenseConfigurationOperations": "

Lists the license configuration operations that failed.

", "ListLicenseConfigurations": "

Lists the license configurations for your account.

", "ListLicenseSpecificationsForResource": "

Describes the license configurations for the specified resource.

", + "ListLicenseVersions": "

Lists all versions of the specified license.

", + "ListLicenses": "

Lists the licenses for your account.

", + "ListReceivedGrants": "

Lists grants that are received but not accepted.

", + "ListReceivedLicenses": "

Lists received licenses.

", "ListResourceInventory": "

Lists resources managed using Systems Manager inventory.

", "ListTagsForResource": "

Lists the tags for the specified license configuration.

", + "ListTokens": "

Lists your tokens.

", "ListUsageForLicenseConfiguration": "

Lists all license usage records for a license configuration, displaying license consumption details by resource at a selected point in time. Use this action to audit the current license consumption for any license inventory and configuration.

", + "RejectGrant": "

Rejects the specified grant.

", "TagResource": "

Adds the specified tags to the specified license configuration.

", "UntagResource": "

Removes the specified tags from the specified license configuration.

", "UpdateLicenseConfiguration": "

Modifies the attributes of an existing license configuration.

", @@ -20,11 +44,81 @@ "UpdateServiceSettings": "

Updates License Manager settings for the current Region.

" }, "shapes": { + "AcceptGrantRequest": { + "base": null, + "refs": { + } + }, + "AcceptGrantResponse": { + "base": null, + "refs": { + } + }, "AccessDeniedException": { "base": "

Access to resource denied.

", "refs": { } }, + "AllowedOperation": { + "base": null, + "refs": { + "AllowedOperationList$member": null + } + }, + "AllowedOperationList": { + "base": null, + "refs": { + "CreateGrantRequest$AllowedOperations": "

Allowed operations for the grant.

", + "CreateGrantVersionRequest$AllowedOperations": "

Allowed operations for the grant.

", + "Grant$GrantedOperations": "

Granted operations.

", + "ReceivedMetadata$AllowedOperations": "

Allowed operations.

" + } + }, + "Arn": { + "base": null, + "refs": { + "AcceptGrantRequest$GrantArn": "

Amazon Resource Name (ARN) of the grant.

", + "AcceptGrantResponse$GrantArn": "

Grant ARN.

", + "ArnList$member": null, + "CheckoutBorrowLicenseRequest$LicenseArn": "

Amazon Resource Name (ARN) of the license. The license must use the borrow consumption configuration.

", + "CheckoutBorrowLicenseResponse$LicenseArn": "

Amazon Resource Name (ARN) of the license.

", + "CreateGrantRequest$LicenseArn": "

Amazon Resource Name (ARN) of the license.

", + "CreateGrantResponse$GrantArn": "

Grant ARN.

", + "CreateGrantVersionRequest$GrantArn": "

Amazon Resource Name (ARN) of the grant.

", + "CreateGrantVersionResponse$GrantArn": "

Grant ARN.

", + "CreateLicenseResponse$LicenseArn": "

Amazon Resource Name (ARN) of the license.

", + "CreateLicenseVersionRequest$LicenseArn": "

Amazon Resource Name (ARN) of the license.

", + "CreateLicenseVersionResponse$LicenseArn": "

License ARN.

", + "CreateTokenRequest$LicenseArn": "

Amazon Resource Name (ARN) of the license. The ARN is mapped to the aud claim of the JWT token.

", + "DeleteGrantRequest$GrantArn": "

Amazon Resource Name (ARN) of the grant.

", + "DeleteGrantResponse$GrantArn": "

Grant ARN.

", + "DeleteLicenseRequest$LicenseArn": "

Amazon Resource Name (ARN) of the license.

", + "GetGrantRequest$GrantArn": "

Amazon Resource Name (ARN) of the grant.

", + "GetLicenseRequest$LicenseArn": "

Amazon Resource Name (ARN) of the license.

", + "GetLicenseUsageRequest$LicenseArn": "

Amazon Resource Name (ARN) of the license.

", + "Grant$GrantArn": "

Amazon Resource Name (ARN) of the grant.

", + "Grant$ParentArn": "

Parent ARN.

", + "Grant$LicenseArn": "

License ARN.

", + "Grant$GranteePrincipalArn": "

The grantee principal ARN.

", + "GrantedLicense$LicenseArn": "

Amazon Resource Name (ARN) of the license.

", + "License$LicenseArn": "

Amazon Resource Name (ARN) of the license.

", + "ListLicenseVersionsRequest$LicenseArn": "

Amazon Resource Name (ARN) of the license.

", + "PrincipalArnList$member": null, + "RejectGrantRequest$GrantArn": "

Amazon Resource Name (ARN) of the grant.

", + "RejectGrantResponse$GrantArn": "

Grant ARN.

" + } + }, + "ArnList": { + "base": null, + "refs": { + "CreateTokenRequest$RoleArns": "

Amazon Resource Name (ARN) of the IAM roles to embed in the token. License Manager does not check whether the roles are in use.

", + "ListDistributedGrantsRequest$GrantArns": "

Amazon Resource Names (ARNs) of the grants.

", + "ListLicensesRequest$LicenseArns": "

Amazon Resource Names (ARNs) of the licenses.

", + "ListReceivedGrantsRequest$GrantArns": "

Amazon Resource Names (ARNs) of the grants.

", + "ListReceivedLicensesRequest$LicenseArns": "

Amazon Resource Names (ARNs) of the licenses.

", + "TokenData$RoleArns": "

Amazon Resource Names (ARN) of the roles included in the token.

" + } + }, "AuthorizationException": { "base": "

The AWS user account does not have permission to perform the action. Check the IAM policy associated with this account.

", "refs": { @@ -40,15 +134,25 @@ "Boolean": { "base": null, "refs": { + "ExtendLicenseConsumptionRequest$DryRun": "

Checks whether you have the required permissions for the action, without actually making the request. Provides an error response if you do not have the required permissions.

", "OrganizationConfiguration$EnableIntegration": "

Enables AWS Organization integration.

" } }, + "BorrowConfiguration": { + "base": "

Details about a borrow configuration.

", + "refs": { + "ConsumptionConfiguration$BorrowConfiguration": "

Details about a borrow configuration.

" + } + }, "BoxBoolean": { "base": null, "refs": { + "BorrowConfiguration$AllowEarlyCheckIn": "

Indicates whether early check-ins are allowed.

", "CreateLicenseConfigurationRequest$LicenseCountHardLimit": "

Indicates whether hard or soft license enforcement is used. Exceeding a hard limit blocks the launch of new instances.

", + "Entitlement$Overage": "

Indicates whether overages are allowed.

", + "Entitlement$AllowCheckIn": "

Indicates whether check-ins are allowed.

", "GetLicenseConfigurationResponse$LicenseCountHardLimit": "

Sets the number of available licenses as a hard limit.

", - "GetServiceSettingsResponse$EnableCrossAccountsDiscovery": "

Indicates whether cross-account discovery has been enabled.

", + "GetServiceSettingsResponse$EnableCrossAccountsDiscovery": "

Indicates whether cross-account discovery is enabled.

", "LicenseConfiguration$LicenseCountHardLimit": "

Number of available licenses as a hard limit.

", "UpdateLicenseConfigurationRequest$LicenseCountHardLimit": "

New hard limit of the number of available licenses.

", "UpdateServiceSettingsRequest$EnableCrossAccountsDiscovery": "

Activates cross-account discovery.

" @@ -57,12 +161,14 @@ "BoxInteger": { "base": null, "refs": { + "BorrowConfiguration$MaxTimeToLiveInMinutes": "

Maximum time for the borrow configuration, in minutes.

", "ListAssociationsForLicenseConfigurationRequest$MaxResults": "

Maximum number of results to return in a single call.

", "ListFailuresForLicenseConfigurationOperationsRequest$MaxResults": "

Maximum number of results to return in a single call.

", "ListLicenseConfigurationsRequest$MaxResults": "

Maximum number of results to return in a single call.

", "ListLicenseSpecificationsForResourceRequest$MaxResults": "

Maximum number of results to return in a single call.

", "ListResourceInventoryRequest$MaxResults": "

Maximum number of results to return in a single call.

", - "ListUsageForLicenseConfigurationRequest$MaxResults": "

Maximum number of results to return in a single call.

" + "ListUsageForLicenseConfigurationRequest$MaxResults": "

Maximum number of results to return in a single call.

", + "ProvisionalConfiguration$MaxTimeToLiveInMinutes": "

Maximum time for the provisional configuration, in minutes.

" } }, "BoxLong": { @@ -79,6 +185,55 @@ "UpdateLicenseConfigurationRequest$LicenseCount": "

New number of licenses managed by the license configuration.

" } }, + "CheckInLicenseRequest": { + "base": null, + "refs": { + } + }, + "CheckInLicenseResponse": { + "base": null, + "refs": { + } + }, + "CheckoutBorrowLicenseRequest": { + "base": null, + "refs": { + } + }, + "CheckoutBorrowLicenseResponse": { + "base": null, + "refs": { + } + }, + "CheckoutLicenseRequest": { + "base": null, + "refs": { + } + }, + "CheckoutLicenseResponse": { + "base": null, + "refs": { + } + }, + "CheckoutType": { + "base": null, + "refs": { + "CheckoutLicenseRequest$CheckoutType": "

Checkout type.

", + "CheckoutLicenseResponse$CheckoutType": "

Checkout type.

" + } + }, + "ClientToken": { + "base": null, + "refs": { + "CheckoutBorrowLicenseRequest$ClientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", + "CheckoutLicenseRequest$ClientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

" + } + }, + "ConflictException": { + "base": "

There was a conflict processing the request. Try your request again.

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

Details about license consumption.

", "refs": { @@ -92,6 +247,35 @@ "LicenseConfiguration$ConsumedLicenseSummaryList": "

Summaries for licenses consumed by various resources.

" } }, + "ConsumptionConfiguration": { + "base": "

Details about a consumption configuration.

", + "refs": { + "CreateLicenseRequest$ConsumptionConfiguration": "

Configuration for consumption of the license. Choose a provisional configuration for workloads running with continuous connectivity. Choose a borrow configuration for workloads with offline usage.

", + "CreateLicenseVersionRequest$ConsumptionConfiguration": "

Configuration for consumption of the license. Choose a provisional configuration for workloads running with continuous connectivity. Choose a borrow configuration for workloads with offline usage.

", + "GrantedLicense$ConsumptionConfiguration": "

Configuration for consumption of the license.

", + "License$ConsumptionConfiguration": "

Configuration for consumption of the license.

" + } + }, + "CreateGrantRequest": { + "base": null, + "refs": { + } + }, + "CreateGrantResponse": { + "base": null, + "refs": { + } + }, + "CreateGrantVersionRequest": { + "base": null, + "refs": { + } + }, + "CreateGrantVersionResponse": { + "base": null, + "refs": { + } + }, "CreateLicenseConfigurationRequest": { "base": null, "refs": { @@ -102,6 +286,36 @@ "refs": { } }, + "CreateLicenseRequest": { + "base": null, + "refs": { + } + }, + "CreateLicenseResponse": { + "base": null, + "refs": { + } + }, + "CreateLicenseVersionRequest": { + "base": null, + "refs": { + } + }, + "CreateLicenseVersionResponse": { + "base": null, + "refs": { + } + }, + "CreateTokenRequest": { + "base": null, + "refs": { + } + }, + "CreateTokenResponse": { + "base": null, + "refs": { + } + }, "DateTime": { "base": null, "refs": { @@ -111,6 +325,25 @@ "LicenseOperationFailure$FailureTime": "

Failure time.

" } }, + "DatetimeRange": { + "base": "

Describes a time range, in ISO8601-UTC format.

", + "refs": { + "CreateLicenseRequest$Validity": "

Date and time range during which the license is valid, in ISO8601-UTC format.

", + "CreateLicenseVersionRequest$Validity": "

Date and time range during which the license is valid, in ISO8601-UTC format.

", + "GrantedLicense$Validity": "

Date and time range during which the granted license is valid, in ISO8601-UTC format.

", + "License$Validity": "

Date and time range during which the license is valid, in ISO8601-UTC format.

" + } + }, + "DeleteGrantRequest": { + "base": null, + "refs": { + } + }, + "DeleteGrantResponse": { + "base": null, + "refs": { + } + }, "DeleteLicenseConfigurationRequest": { "base": null, "refs": { @@ -121,6 +354,102 @@ "refs": { } }, + "DeleteLicenseRequest": { + "base": null, + "refs": { + } + }, + "DeleteLicenseResponse": { + "base": null, + "refs": { + } + }, + "DeleteTokenRequest": { + "base": null, + "refs": { + } + }, + "DeleteTokenResponse": { + "base": null, + "refs": { + } + }, + "DigitalSignatureMethod": { + "base": null, + "refs": { + "CheckoutBorrowLicenseRequest$DigitalSignatureMethod": "

Digital signature method. The possible value is JSON Web Signature (JWS) algorithm PS384. For more information, see RFC 7518 Digital Signature with RSASSA-PSS.

" + } + }, + "Entitlement": { + "base": "

Describes a resource entitled for use with a license.

", + "refs": { + "EntitlementList$member": null + } + }, + "EntitlementData": { + "base": "

Data associated with an entitlement resource.

", + "refs": { + "EntitlementDataList$member": null + } + }, + "EntitlementDataList": { + "base": null, + "refs": { + "CheckoutBorrowLicenseRequest$Entitlements": "

License entitlements. Partial checkouts are not supported.

", + "CheckoutBorrowLicenseResponse$EntitlementsAllowed": "

Allowed license entitlements.

", + "CheckoutLicenseRequest$Entitlements": "

License entitlements.

", + "CheckoutLicenseResponse$EntitlementsAllowed": "

Allowed license entitlements.

" + } + }, + "EntitlementDataUnit": { + "base": null, + "refs": { + "EntitlementData$Unit": "

Entitlement data unit.

", + "EntitlementUsage$Unit": "

Entitlement usage unit.

" + } + }, + "EntitlementList": { + "base": null, + "refs": { + "CreateLicenseRequest$Entitlements": "

License entitlements.

", + "CreateLicenseVersionRequest$Entitlements": "

License entitlements.

", + "GrantedLicense$Entitlements": "

License entitlements.

", + "License$Entitlements": "

License entitlements.

" + } + }, + "EntitlementNotAllowedException": { + "base": "

The entitlement is not allowed.

", + "refs": { + } + }, + "EntitlementUnit": { + "base": null, + "refs": { + "Entitlement$Unit": "

Entitlement unit.

" + } + }, + "EntitlementUsage": { + "base": "

Usage associated with an entitlement resource.

", + "refs": { + "EntitlementUsageList$member": null + } + }, + "EntitlementUsageList": { + "base": null, + "refs": { + "LicenseUsage$EntitlementUsages": "

License entitlement usages.

" + } + }, + "ExtendLicenseConsumptionRequest": { + "base": null, + "refs": { + } + }, + "ExtendLicenseConsumptionResponse": { + "base": null, + "refs": { + } + }, "FailedDependencyException": { "base": "

A dependency required to run the API is missing.

", "refs": { @@ -129,6 +458,7 @@ "Filter": { "base": "

A filter name and value pair that is used to return more specific results from a describe operation. Filters can be used to match a set of resources by specific criteria, such as tags, attributes, or IDs.

", "refs": { + "FilterList$member": null, "Filters$member": null } }, @@ -137,6 +467,16 @@ "refs": { } }, + "FilterList": { + "base": null, + "refs": { + "ListDistributedGrantsRequest$Filters": "

Filters to scope the results. The following filters are supported:

", + "ListLicensesRequest$Filters": "

Filters to scope the results. The following filters are supported:

", + "ListReceivedGrantsRequest$Filters": "

Filters to scope the results. The following filters are supported:

", + "ListReceivedLicensesRequest$Filters": "

Filters to scope the results. The following filters are supported:

", + "ListTokensRequest$Filters": "

Filters to scope the results. The following filter is supported:

" + } + }, "FilterName": { "base": null, "refs": { @@ -159,7 +499,27 @@ "base": null, "refs": { "ListLicenseConfigurationsRequest$Filters": "

Filters to scope the results. The following filters and logical operators are supported:

", - "ListUsageForLicenseConfigurationRequest$Filters": "

Filters to scope the results. The following filters and logical operators are supported:

" + "ListUsageForLicenseConfigurationRequest$Filters": "

Filters to scope the results. The following filters and logical operators are supported:

" + } + }, + "GetAccessTokenRequest": { + "base": null, + "refs": { + } + }, + "GetAccessTokenResponse": { + "base": null, + "refs": { + } + }, + "GetGrantRequest": { + "base": null, + "refs": { + } + }, + "GetGrantResponse": { + "base": null, + "refs": { } }, "GetLicenseConfigurationRequest": { @@ -172,6 +532,26 @@ "refs": { } }, + "GetLicenseRequest": { + "base": null, + "refs": { + } + }, + "GetLicenseResponse": { + "base": null, + "refs": { + } + }, + "GetLicenseUsageRequest": { + "base": null, + "refs": { + } + }, + "GetLicenseUsageResponse": { + "base": null, + "refs": { + } + }, "GetServiceSettingsRequest": { "base": null, "refs": { @@ -182,6 +562,72 @@ "refs": { } }, + "Grant": { + "base": "

Describes a grant.

", + "refs": { + "GetGrantResponse$Grant": "

Grant details.

", + "GrantList$member": null + } + }, + "GrantList": { + "base": null, + "refs": { + "ListDistributedGrantsResponse$Grants": "

Distributed grant details.

", + "ListReceivedGrantsResponse$Grants": "

Received grant details.

" + } + }, + "GrantStatus": { + "base": null, + "refs": { + "AcceptGrantResponse$Status": "

Grant status.

", + "CreateGrantResponse$Status": "

Grant status.

", + "CreateGrantVersionRequest$Status": "

Grant status.

", + "CreateGrantVersionResponse$Status": "

Grant status.

", + "DeleteGrantResponse$Status": "

Grant status.

", + "Grant$GrantStatus": "

Grant status.

", + "RejectGrantResponse$Status": "

Grant status.

" + } + }, + "GrantedLicense": { + "base": "

Describes a license that is granted to a grantee.

", + "refs": { + "GrantedLicenseList$member": null + } + }, + "GrantedLicenseList": { + "base": null, + "refs": { + "ListReceivedLicensesResponse$Licenses": "

Received license details.

" + } + }, + "ISO8601DateTime": { + "base": null, + "refs": { + "CheckoutBorrowLicenseResponse$IssuedAt": "

Date and time at which the license checkout is issued.

", + "CheckoutBorrowLicenseResponse$Expiration": "

Date and time at which the license checkout expires.

", + "CheckoutLicenseResponse$IssuedAt": "

Date and time at which the license checkout is issued.

", + "CheckoutLicenseResponse$Expiration": "

Date and time at which the license checkout expires.

", + "DatetimeRange$Begin": "

Start of the time range.

", + "DatetimeRange$End": "

End of the time range.

", + "DeleteLicenseResponse$DeletionDate": "

Date on which the license is deleted.

", + "ExtendLicenseConsumptionResponse$Expiration": "

Date and time at which the license consumption expires.

", + "GrantedLicense$CreateTime": "

Creation time of the granted license.

", + "License$CreateTime": "

License creation time.

", + "TokenData$ExpirationTime": "

Token expiration time, in ISO8601-UTC format.

" + } + }, + "IdempotencyToken": { + "base": null, + "refs": { + "CreateTokenRequest$ClientToken": "

Idempotency token, valid for 10 minutes.

" + } + }, + "Integer": { + "base": null, + "refs": { + "CreateTokenRequest$ExpirationInDays": "

Token expiration, in days, counted from token creation. The default is 365 days.

" + } + }, "InvalidParameterValueException": { "base": "

One or more parameter values are not valid.

", "refs": { @@ -210,6 +656,27 @@ "ListResourceInventoryRequest$Filters": "

Filters to scope the results. The following filters and logical operators are supported:

" } }, + "Issuer": { + "base": "

Details about the issuer of a license.

", + "refs": { + "CreateLicenseRequest$Issuer": "

License issuer.

", + "CreateLicenseVersionRequest$Issuer": "

License issuer.

" + } + }, + "IssuerDetails": { + "base": "

Details associated with the issuer of a license.

", + "refs": { + "GrantedLicense$Issuer": "

Granted license issuer.

", + "License$Issuer": "

License issuer.

" + } + }, + "License": { + "base": "

Software license that is managed in AWS License Manager.

", + "refs": { + "GetLicenseResponse$License": "

License details.

", + "LicenseList$member": null + } + }, "LicenseConfiguration": { "base": "

A license configuration is an abstraction of a customer license agreement that can be consumed and enforced by License Manager. Components include specifications for the license type (licensing by instance, socket, CPU, or vCPU), allowed tenancy (shared tenancy, Dedicated Instance, Dedicated Host, or all of these), host affinity (how long a VM must be associated with a host), and the number of licenses purchased and used.

", "refs": { @@ -260,6 +727,19 @@ "LicenseConfiguration$LicenseCountingType": "

Dimension to use to track the license inventory.

" } }, + "LicenseDeletionStatus": { + "base": null, + "refs": { + "DeleteLicenseResponse$Status": "

License status.

" + } + }, + "LicenseList": { + "base": null, + "refs": { + "ListLicenseVersionsResponse$Licenses": "

License details.

", + "ListLicensesResponse$Licenses": "

License details.

" + } + }, "LicenseOperationFailure": { "base": "

Describes the failure of a license operation.

", "refs": { @@ -286,6 +766,22 @@ "UpdateLicenseSpecificationsForResourceRequest$RemoveLicenseSpecifications": "

ARNs of the license configurations to remove.

" } }, + "LicenseStatus": { + "base": null, + "refs": { + "CreateLicenseResponse$Status": "

License status.

", + "CreateLicenseVersionRequest$Status": "

License status.

", + "CreateLicenseVersionResponse$Status": "

License status.

", + "GrantedLicense$Status": "

Granted license status.

", + "License$Status": "

License status.

" + } + }, + "LicenseUsage": { + "base": "

Describes the entitlement usage associated with a license.

", + "refs": { + "GetLicenseUsageResponse$LicenseUsage": "

License usage details.

" + } + }, "LicenseUsageException": { "base": "

You do not have enough licenses available to support a new resource launch.

", "refs": { @@ -301,6 +797,16 @@ "refs": { } }, + "ListDistributedGrantsRequest": { + "base": null, + "refs": { + } + }, + "ListDistributedGrantsResponse": { + "base": null, + "refs": { + } + }, "ListFailuresForLicenseConfigurationOperationsRequest": { "base": null, "refs": { @@ -331,6 +837,46 @@ "refs": { } }, + "ListLicenseVersionsRequest": { + "base": null, + "refs": { + } + }, + "ListLicenseVersionsResponse": { + "base": null, + "refs": { + } + }, + "ListLicensesRequest": { + "base": null, + "refs": { + } + }, + "ListLicensesResponse": { + "base": null, + "refs": { + } + }, + "ListReceivedGrantsRequest": { + "base": null, + "refs": { + } + }, + "ListReceivedGrantsResponse": { + "base": null, + "refs": { + } + }, + "ListReceivedLicensesRequest": { + "base": null, + "refs": { + } + }, + "ListReceivedLicensesResponse": { + "base": null, + "refs": { + } + }, "ListResourceInventoryRequest": { "base": null, "refs": { @@ -351,6 +897,16 @@ "refs": { } }, + "ListTokensRequest": { + "base": null, + "refs": { + } + }, + "ListTokensResponse": { + "base": null, + "refs": { + } + }, "ListUsageForLicenseConfigurationRequest": { "base": null, "refs": { @@ -361,6 +917,18 @@ "refs": { } }, + "Location": { + "base": null, + "refs": { + "RedirectException$Location": null + } + }, + "Long": { + "base": null, + "refs": { + "Entitlement$MaxCount": "

Maximum entitlement count. Use if the unit is not None.

" + } + }, "ManagedResourceSummary": { "base": "

Summary information about a managed resource.

", "refs": { @@ -374,23 +942,49 @@ "LicenseConfiguration$ManagedResourceSummaryList": "

Summaries for managed resources.

" } }, + "MaxSize100": { + "base": null, + "refs": { + "ListDistributedGrantsRequest$MaxResults": "

Maximum number of results to return in a single call.

", + "ListLicenseVersionsRequest$MaxResults": "

Maximum number of results to return in a single call.

", + "ListLicensesRequest$MaxResults": "

Maximum number of results to return in a single call.

", + "ListReceivedGrantsRequest$MaxResults": "

Maximum number of results to return in a single call.

", + "ListReceivedLicensesRequest$MaxResults": "

Maximum number of results to return in a single call.

", + "ListTokensRequest$MaxResults": "

Maximum number of results to return in a single call.

" + } + }, + "MaxSize3StringList": { + "base": null, + "refs": { + "CreateTokenRequest$TokenProperties": "

Data specified by the caller to be included in the JWT token. The data is mapped to the amr claim of the JWT token.

", + "GetAccessTokenRequest$TokenProperties": "

Token properties to validate against those present in the JWT token.

", + "TokenData$TokenProperties": "

Data specified by the caller.

" + } + }, "Message": { "base": null, "refs": { "AccessDeniedException$Message": null, "AuthorizationException$Message": null, + "ConflictException$Message": null, + "EntitlementNotAllowedException$Message": null, "FailedDependencyException$Message": null, "FilterLimitExceededException$Message": null, "InvalidParameterValueException$Message": null, "InvalidResourceStateException$Message": null, "LicenseUsageException$Message": null, + "NoEntitlementsAllowedException$Message": null, "RateLimitExceededException$Message": null, + "RedirectException$Message": null, "ResourceLimitExceededException$Message": null, - "ServerInternalException$Message": null + "ResourceNotFoundException$Message": null, + "ServerInternalException$Message": null, + "UnsupportedDigitalSignatureMethodException$Message": null, + "ValidationException$Message": null } }, "Metadata": { - "base": "

Reserved.

", + "base": "

Describes key/value pairs.

", "refs": { "MetadataList$member": null } @@ -398,16 +992,33 @@ "MetadataList": { "base": null, "refs": { + "CheckoutBorrowLicenseRequest$CheckoutMetadata": "

Information about constraints.

", + "CheckoutBorrowLicenseResponse$CheckoutMetadata": "

Information about constraints.

", + "CreateLicenseRequest$LicenseMetadata": "

Information about the license.

", + "CreateLicenseVersionRequest$LicenseMetadata": "

Information about the license.

", + "GrantedLicense$LicenseMetadata": "

Granted license metadata.

", + "License$LicenseMetadata": "

License metadata.

", "LicenseOperationFailure$MetadataList": "

Reserved.

" } }, + "NoEntitlementsAllowedException": { + "base": "

There are no entitlements found for this license, or the entitlement maximum count is reached.

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

Configuration information for AWS Organizations.

", "refs": { - "GetServiceSettingsResponse$OrganizationConfiguration": "

Indicates whether AWS Organizations has been integrated with License Manager for cross-account discovery.

", + "GetServiceSettingsResponse$OrganizationConfiguration": "

Indicates whether AWS Organizations is integrated with License Manager for cross-account discovery.

", "UpdateServiceSettingsRequest$OrganizationConfiguration": "

Enables integration with AWS Organizations for cross-account discovery.

" } }, + "PrincipalArnList": { + "base": null, + "refs": { + "CreateGrantRequest$Principals": "

The grant principals.

" + } + }, "ProductInformation": { "base": "

Describes product information for a license configuration.

", "refs": { @@ -435,11 +1046,50 @@ "UpdateLicenseConfigurationRequest$ProductInformationList": "

New product information.

" } }, + "ProvisionalConfiguration": { + "base": "

Details about a provisional configuration.

", + "refs": { + "ConsumptionConfiguration$ProvisionalConfiguration": "

Details about a provisional configuration.

" + } + }, "RateLimitExceededException": { "base": "

Too many requests have been submitted. Try again after a brief wait.

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

Metadata associated with received licenses and grants.

", + "refs": { + "GrantedLicense$ReceivedMetadata": "

Granted license received metadata.

" + } + }, + "ReceivedStatus": { + "base": null, + "refs": { + "ReceivedMetadata$ReceivedStatus": "

Received status.

" + } + }, + "RedirectException": { + "base": "

This is not the correct Region for the resource. Try again.

", + "refs": { + } + }, + "RejectGrantRequest": { + "base": null, + "refs": { + } + }, + "RejectGrantResponse": { + "base": null, + "refs": { + } + }, + "RenewType": { + "base": null, + "refs": { + "ConsumptionConfiguration$RenewType": "

Renewal frequency.

" + } + }, "ResourceInventory": { "base": "

Details about a resource.

", "refs": { @@ -457,6 +1107,11 @@ "refs": { } }, + "ResourceNotFoundException": { + "base": "

The resource cannot be found.

", + "refs": { + } + }, "ResourceType": { "base": null, "refs": { @@ -473,13 +1128,69 @@ "refs": { } }, + "SignedToken": { + "base": null, + "refs": { + "CheckoutBorrowLicenseResponse$SignedToken": "

Signed token.

", + "CheckoutLicenseResponse$SignedToken": "

Signed token.

" + } + }, "String": { "base": null, "refs": { + "AcceptGrantResponse$Version": "

Grant version.

", + "CheckInLicenseRequest$LicenseConsumptionToken": "

License consumption token.

", + "CheckInLicenseRequest$Beneficiary": "

License beneficiary.

", + "CheckoutBorrowLicenseRequest$NodeId": "

Node ID.

", + "CheckoutBorrowLicenseResponse$LicenseConsumptionToken": "

License consumption token.

", + "CheckoutBorrowLicenseResponse$NodeId": "

Node ID.

", + "CheckoutLicenseRequest$ProductSKU": "

Product SKU.

", + "CheckoutLicenseRequest$KeyFingerprint": "

Key fingerprint identifying the license.

", + "CheckoutLicenseRequest$Beneficiary": "

License beneficiary.

", + "CheckoutLicenseRequest$NodeId": "

Node ID.

", + "CheckoutLicenseResponse$LicenseConsumptionToken": "

License consumption token.

", + "CheckoutLicenseResponse$NodeId": "

Node ID.

", + "CreateGrantRequest$ClientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", + "CreateGrantRequest$GrantName": "

Grant name.

", + "CreateGrantRequest$HomeRegion": "

Home Region of the grant.

", + "CreateGrantResponse$Version": "

Grant version.

", + "CreateGrantVersionRequest$ClientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", + "CreateGrantVersionRequest$GrantName": "

Grant name.

", + "CreateGrantVersionRequest$SourceVersion": "

Current version of the grant.

", + "CreateGrantVersionResponse$Version": "

New version of the grant.

", "CreateLicenseConfigurationRequest$Name": "

Name of the license configuration.

", "CreateLicenseConfigurationRequest$Description": "

Description of the license configuration.

", "CreateLicenseConfigurationResponse$LicenseConfigurationArn": "

Amazon Resource Name (ARN) of the license configuration.

", + "CreateLicenseRequest$LicenseName": "

License name.

", + "CreateLicenseRequest$ProductName": "

Product name.

", + "CreateLicenseRequest$ProductSKU": "

Product SKU.

", + "CreateLicenseRequest$HomeRegion": "

Home Region for the license.

", + "CreateLicenseRequest$Beneficiary": "

License beneficiary.

", + "CreateLicenseRequest$ClientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", + "CreateLicenseResponse$Version": "

License version.

", + "CreateLicenseVersionRequest$LicenseName": "

License name.

", + "CreateLicenseVersionRequest$ProductName": "

Product name.

", + "CreateLicenseVersionRequest$HomeRegion": "

Home Region of the license.

", + "CreateLicenseVersionRequest$ClientToken": "

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

", + "CreateLicenseVersionRequest$SourceVersion": "

Current version of the license.

", + "CreateLicenseVersionResponse$Version": "

New version of the license.

", + "CreateTokenResponse$TokenId": "

Token ID.

", + "DeleteGrantRequest$Version": "

Current version of the grant.

", + "DeleteGrantResponse$Version": "

Grant version.

", "DeleteLicenseConfigurationRequest$LicenseConfigurationArn": "

ID of the license configuration.

", + "DeleteLicenseRequest$SourceVersion": "

Current version of the license.

", + "DeleteTokenRequest$TokenId": "

Token ID.

", + "Entitlement$Name": "

Entitlement name.

", + "Entitlement$Value": "

Entitlement resource. Use only if the unit is None.

", + "EntitlementData$Name": "

Entitlement data name.

", + "EntitlementData$Value": "

Entitlement data value.

", + "EntitlementUsage$Name": "

Entitlement usage name.

", + "EntitlementUsage$ConsumedValue": "

Resource usage consumed.

", + "EntitlementUsage$MaxCount": "

Maximum entitlement usage count.

", + "ExtendLicenseConsumptionRequest$LicenseConsumptionToken": "

License consumption token.

", + "ExtendLicenseConsumptionResponse$LicenseConsumptionToken": "

License consumption token.

", + "FailedDependencyException$ErrorCode": null, + "GetGrantRequest$Version": "

Grant version.

", "GetLicenseConfigurationRequest$LicenseConfigurationArn": "

Amazon Resource Name (ARN) of the license configuration.

", "GetLicenseConfigurationResponse$LicenseConfigurationId": "

Unique ID for the license configuration.

", "GetLicenseConfigurationResponse$LicenseConfigurationArn": "

Amazon Resource Name (ARN) of the license configuration.

", @@ -487,11 +1198,33 @@ "GetLicenseConfigurationResponse$Description": "

Description of the license configuration.

", "GetLicenseConfigurationResponse$Status": "

License configuration status.

", "GetLicenseConfigurationResponse$OwnerAccountId": "

Account ID of the owner of the license configuration.

", + "GetLicenseRequest$Version": "

License version.

", "GetServiceSettingsResponse$S3BucketArn": "

Regional S3 bucket path for storing reports, license trail event data, discovery data, and so on.

", "GetServiceSettingsResponse$SnsTopicArn": "

SNS topic configured to receive notifications from License Manager.

", "GetServiceSettingsResponse$LicenseManagerResourceShareArn": "

Amazon Resource Name (ARN) of the AWS resource share. The License Manager master account will provide member accounts with access to this share.

", + "Grant$GrantName": "

Grant name.

", + "Grant$HomeRegion": "

Home Region of the grant.

", + "Grant$StatusReason": "

Grant status reason.

", + "Grant$Version": "

Grant version.

", + "GrantedLicense$LicenseName": "

License name.

", + "GrantedLicense$ProductName": "

Product name.

", + "GrantedLicense$ProductSKU": "

Product SKU.

", + "GrantedLicense$HomeRegion": "

Home Region of the granted license.

", + "GrantedLicense$Beneficiary": "

Granted license beneficiary.

", + "GrantedLicense$Version": "

Version of the granted license.

", "InventoryFilter$Name": "

Name of the filter.

", "InventoryFilter$Value": "

Value of the filter.

", + "Issuer$Name": "

Issuer name.

", + "Issuer$SignKey": "

Asymmetric CMK from AWS Key Management Service. The CMK must have a key usage of sign and verify, and support the RSASSA-PSS SHA-256 signing algorithm.

", + "IssuerDetails$Name": "

Issuer name.

", + "IssuerDetails$SignKey": "

Asymmetric CMK from AWS Key Management Service. The CMK must have a key usage of sign and verify, and support the RSASSA-PSS SHA-256 signing algorithm.

", + "IssuerDetails$KeyFingerprint": "

Issuer key fingerprint.

", + "License$LicenseName": "

License name.

", + "License$ProductName": "

Product name.

", + "License$ProductSKU": "

Product SKU.

", + "License$HomeRegion": "

Home Region of the license.

", + "License$Beneficiary": "

License beneficiary.

", + "License$Version": "

License version.

", "LicenseConfiguration$LicenseConfigurationId": "

Unique ID of the license configuration.

", "LicenseConfiguration$LicenseConfigurationArn": "

Amazon Resource Name (ARN) of the license configuration.

", "LicenseConfiguration$Name": "

Name of the license configuration.

", @@ -500,7 +1233,7 @@ "LicenseConfiguration$OwnerAccountId": "

Account ID of the license configuration's owner.

", "LicenseConfigurationAssociation$ResourceArn": "

Amazon Resource Name (ARN) of the resource.

", "LicenseConfigurationAssociation$ResourceOwnerId": "

ID of the AWS account that owns the resource consuming licenses.

", - "LicenseConfigurationAssociation$AmiAssociationScope": "

Scope of AMI associations.

", + "LicenseConfigurationAssociation$AmiAssociationScope": "

Scope of AMI associations. The possible value is cross-account.

", "LicenseConfigurationUsage$ResourceArn": "

Amazon Resource Name (ARN) of the resource.

", "LicenseConfigurationUsage$ResourceStatus": "

Status of the resource.

", "LicenseConfigurationUsage$ResourceOwnerId": "

ID of the account that owns the resource.

", @@ -510,10 +1243,12 @@ "LicenseOperationFailure$ResourceOwnerId": "

ID of the AWS account that owns the resource.

", "LicenseOperationFailure$OperationRequestedBy": "

The requester is \"License Manager Automated Discovery\".

", "LicenseSpecification$LicenseConfigurationArn": "

Amazon Resource Name (ARN) of the license configuration.

", - "LicenseSpecification$AmiAssociationScope": "

Scope of AMI associations.

", + "LicenseSpecification$AmiAssociationScope": "

Scope of AMI associations. The possible value is cross-account.

", "ListAssociationsForLicenseConfigurationRequest$LicenseConfigurationArn": "

Amazon Resource Name (ARN) of a license configuration.

", "ListAssociationsForLicenseConfigurationRequest$NextToken": "

Token for the next set of results.

", "ListAssociationsForLicenseConfigurationResponse$NextToken": "

Token for the next set of results.

", + "ListDistributedGrantsRequest$NextToken": "

Token for the next set of results.

", + "ListDistributedGrantsResponse$NextToken": "

Token for the next set of results.

", "ListFailuresForLicenseConfigurationOperationsRequest$LicenseConfigurationArn": "

Amazon Resource Name of the license configuration.

", "ListFailuresForLicenseConfigurationOperationsRequest$NextToken": "

Token for the next set of results.

", "ListFailuresForLicenseConfigurationOperationsResponse$NextToken": "

Token for the next set of results.

", @@ -522,17 +1257,29 @@ "ListLicenseSpecificationsForResourceRequest$ResourceArn": "

Amazon Resource Name (ARN) of a resource that has an associated license configuration.

", "ListLicenseSpecificationsForResourceRequest$NextToken": "

Token for the next set of results.

", "ListLicenseSpecificationsForResourceResponse$NextToken": "

Token for the next set of results.

", + "ListLicenseVersionsRequest$NextToken": "

Token for the next set of results.

", + "ListLicenseVersionsResponse$NextToken": "

Token for the next set of results.

", + "ListLicensesRequest$NextToken": "

Token for the next set of results.

", + "ListLicensesResponse$NextToken": "

Token for the next set of results.

", + "ListReceivedGrantsRequest$NextToken": "

Token for the next set of results.

", + "ListReceivedGrantsResponse$NextToken": "

Token for the next set of results.

", + "ListReceivedLicensesRequest$NextToken": "

Token for the next set of results.

", + "ListReceivedLicensesResponse$NextToken": "

Token for the next set of results.

", "ListResourceInventoryRequest$NextToken": "

Token for the next set of results.

", "ListResourceInventoryResponse$NextToken": "

Token for the next set of results.

", "ListTagsForResourceRequest$ResourceArn": "

Amazon Resource Name (ARN) of the license configuration.

", + "ListTokensRequest$NextToken": "

Token for the next set of results.

", + "ListTokensResponse$NextToken": "

Token for the next set of results.

", "ListUsageForLicenseConfigurationRequest$LicenseConfigurationArn": "

Amazon Resource Name (ARN) of the license configuration.

", "ListUsageForLicenseConfigurationRequest$NextToken": "

Token for the next set of results.

", "ListUsageForLicenseConfigurationResponse$NextToken": "

Token for the next set of results.

", - "Metadata$Name": "

Reserved.

", - "Metadata$Value": "

Reserved.

", + "MaxSize3StringList$member": null, + "Metadata$Name": "

The key name.

", + "Metadata$Value": "

The value.

", "ProductInformation$ResourceType": "

Resource type. The possible values are SSM_MANAGED | RDS.

", "ProductInformationFilter$ProductInformationFilterName": "

Filter name.

", "ProductInformationFilter$ProductInformationFilterComparator": "

Logical operator.

", + "RejectGrantResponse$Version": "

Grant version.

", "ResourceInventory$ResourceId": "

ID of the resource.

", "ResourceInventory$ResourceArn": "

Amazon Resource Name (ARN) of the resource.

", "ResourceInventory$Platform": "

Platform of the resource.

", @@ -543,6 +1290,10 @@ "Tag$Value": "

Tag value.

", "TagKeyList$member": null, "TagResourceRequest$ResourceArn": "

Amazon Resource Name (ARN) of the license configuration.

", + "TokenData$TokenId": "

Token ID.

", + "TokenData$TokenType": "

Type of token generated. The supported value is REFRESH_TOKEN.

", + "TokenData$LicenseArn": "

Amazon Resource Name (ARN) of the license.

", + "TokenData$Status": "

Token status. The possible values are AVAILABLE and DELETED.

", "UntagResourceRequest$ResourceArn": "

Amazon Resource Name (ARN) of the license configuration.

", "UpdateLicenseConfigurationRequest$LicenseConfigurationArn": "

Amazon Resource Name (ARN) of the license configuration.

", "UpdateLicenseConfigurationRequest$Name": "

New name of the license configuration.

", @@ -559,6 +1310,7 @@ "GetLicenseConfigurationResponse$LicenseRules": "

License rules.

", "LicenseConfiguration$LicenseRules": "

License rules.

", "ListLicenseConfigurationsRequest$LicenseConfigurationArns": "

Amazon Resource Names (ARN) of the license configurations.

", + "ListTokensRequest$TokenIds": "

Token IDs.

", "ProductInformationFilter$ProductInformationFilterValue": "

Filter value.

", "UpdateLicenseConfigurationRequest$LicenseRules": "

New license rule. The only rule that you can add after you create a license configuration is licenseAffinityToHost.

" } @@ -594,6 +1346,37 @@ "refs": { } }, + "TokenData": { + "base": "

Describes a token.

", + "refs": { + "TokenList$member": null + } + }, + "TokenList": { + "base": null, + "refs": { + "ListTokensResponse$Tokens": "

Received token details.

" + } + }, + "TokenString": { + "base": null, + "refs": { + "CreateTokenResponse$Token": "

Refresh token, encoded as a JWT token.

", + "GetAccessTokenRequest$Token": "

Refresh token, encoded as a JWT token.

", + "GetAccessTokenResponse$AccessToken": "

Temporary access token.

" + } + }, + "TokenType": { + "base": null, + "refs": { + "CreateTokenResponse$TokenType": "

Token type.

" + } + }, + "UnsupportedDigitalSignatureMethodException": { + "base": "

The digital signature method is unsupported. Try your request again.

", + "refs": { + } + }, "UntagResourceRequest": { "base": null, "refs": { @@ -633,6 +1416,11 @@ "base": null, "refs": { } + }, + "ValidationException": { + "base": "

The provided input is not valid. Try your request again.

", + "refs": { + } } } } diff --git a/models/endpoints/endpoints.json b/models/endpoints/endpoints.json index 4ba430e4674..eb9deac60b4 100644 --- a/models/endpoints/endpoints.json +++ b/models/endpoints/endpoints.json @@ -2700,6 +2700,18 @@ "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, + "fips-af-south-1" : { + "credentialScope" : { + "region" : "af-south-1" + }, + "hostname" : "fms-fips.af-south-1.amazonaws.com" + }, + "fips-ap-east-1" : { + "credentialScope" : { + "region" : "ap-east-1" + }, + "hostname" : "fms-fips.ap-east-1.amazonaws.com" + }, "fips-ap-northeast-1" : { "credentialScope" : { "region" : "ap-northeast-1" @@ -2742,6 +2754,12 @@ }, "hostname" : "fms-fips.eu-central-1.amazonaws.com" }, + "fips-eu-south-1" : { + "credentialScope" : { + "region" : "eu-south-1" + }, + "hostname" : "fms-fips.eu-south-1.amazonaws.com" + }, "fips-eu-west-1" : { "credentialScope" : { "region" : "eu-west-1" @@ -2760,6 +2778,12 @@ }, "hostname" : "fms-fips.eu-west-3.amazonaws.com" }, + "fips-me-south-1" : { + "credentialScope" : { + "region" : "me-south-1" + }, + "hostname" : "fms-fips.me-south-1.amazonaws.com" + }, "fips-sa-east-1" : { "credentialScope" : { "region" : "sa-east-1" diff --git a/service/amplifybackend/api.go b/service/amplifybackend/api.go index 308c39a457b..b46185ceab1 100644 --- a/service/amplifybackend/api.go +++ b/service/amplifybackend/api.go @@ -72,7 +72,7 @@ func (c *AmplifyBackend) CloneBackendRequest(input *CloneBackendInput) (req *req // An error returned if there's a temporary issue with the service. // // * TooManyRequestsException -// An error that is returned when a limit of a specific type has been exceeded. +// An error that is returned when a limit of a specific type is exceeded. // // * BadRequestException // An error returned if a request is not formed properly. @@ -161,7 +161,7 @@ func (c *AmplifyBackend) CreateBackendRequest(input *CreateBackendInput) (req *r // An error returned if there's a temporary issue with the service. // // * TooManyRequestsException -// An error that is returned when a limit of a specific type has been exceeded. +// An error that is returned when a limit of a specific type is exceeded. // // * BadRequestException // An error returned if a request is not formed properly. @@ -249,7 +249,7 @@ func (c *AmplifyBackend) CreateBackendAPIRequest(input *CreateBackendAPIInput) ( // An error returned if there's a temporary issue with the service. // // * TooManyRequestsException -// An error that is returned when a limit of a specific type has been exceeded. +// An error that is returned when a limit of a specific type is exceeded. // // * BadRequestException // An error returned if a request is not formed properly. @@ -337,7 +337,7 @@ func (c *AmplifyBackend) CreateBackendAuthRequest(input *CreateBackendAuthInput) // An error returned if there's a temporary issue with the service. // // * TooManyRequestsException -// An error that is returned when a limit of a specific type has been exceeded. +// An error that is returned when a limit of a specific type is exceeded. // // * BadRequestException // An error returned if a request is not formed properly. @@ -425,7 +425,7 @@ func (c *AmplifyBackend) CreateBackendConfigRequest(input *CreateBackendConfigIn // An error returned if there's a temporary issue with the service. // // * TooManyRequestsException -// An error that is returned when a limit of a specific type has been exceeded. +// An error that is returned when a limit of a specific type is exceeded. // // * BadRequestException // An error returned if a request is not formed properly. @@ -496,7 +496,7 @@ func (c *AmplifyBackend) CreateTokenRequest(input *CreateTokenInput) (req *reque // CreateToken API operation for AmplifyBackend. // -// Generates a one time challenge code to authenticate a user into your Amplify +// Generates a one-time challenge code to authenticate a user into your Amplify // Admin UI. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -514,7 +514,7 @@ func (c *AmplifyBackend) CreateTokenRequest(input *CreateTokenInput) (req *reque // An error returned if there's a temporary issue with the service. // // * TooManyRequestsException -// An error that is returned when a limit of a specific type has been exceeded. +// An error that is returned when a limit of a specific type is exceeded. // // * BadRequestException // An error returned if a request is not formed properly. @@ -585,7 +585,7 @@ func (c *AmplifyBackend) DeleteBackendRequest(input *DeleteBackendInput) (req *r // DeleteBackend API operation for AmplifyBackend. // -// Removes an existing environment from your Ampify project. +// Removes an existing environment from your Amplify project. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -602,7 +602,7 @@ func (c *AmplifyBackend) DeleteBackendRequest(input *DeleteBackendInput) (req *r // An error returned if there's a temporary issue with the service. // // * TooManyRequestsException -// An error that is returned when a limit of a specific type has been exceeded. +// An error that is returned when a limit of a specific type is exceeded. // // * BadRequestException // An error returned if a request is not formed properly. @@ -690,7 +690,7 @@ func (c *AmplifyBackend) DeleteBackendAPIRequest(input *DeleteBackendAPIInput) ( // An error returned if there's a temporary issue with the service. // // * TooManyRequestsException -// An error that is returned when a limit of a specific type has been exceeded. +// An error that is returned when a limit of a specific type is exceeded. // // * BadRequestException // An error returned if a request is not formed properly. @@ -778,7 +778,7 @@ func (c *AmplifyBackend) DeleteBackendAuthRequest(input *DeleteBackendAuthInput) // An error returned if there's a temporary issue with the service. // // * TooManyRequestsException -// An error that is returned when a limit of a specific type has been exceeded. +// An error that is returned when a limit of a specific type is exceeded. // // * BadRequestException // An error returned if a request is not formed properly. @@ -866,7 +866,7 @@ func (c *AmplifyBackend) DeleteTokenRequest(input *DeleteTokenInput) (req *reque // An error returned if there's a temporary issue with the service. // // * TooManyRequestsException -// An error that is returned when a limit of a specific type has been exceeded. +// An error that is returned when a limit of a specific type is exceeded. // // * BadRequestException // An error returned if a request is not formed properly. @@ -954,7 +954,7 @@ func (c *AmplifyBackend) GenerateBackendAPIModelsRequest(input *GenerateBackendA // An error returned if there's a temporary issue with the service. // // * TooManyRequestsException -// An error that is returned when a limit of a specific type has been exceeded. +// An error that is returned when a limit of a specific type is exceeded. // // * BadRequestException // An error returned if a request is not formed properly. @@ -1025,7 +1025,7 @@ func (c *AmplifyBackend) GetBackendRequest(input *GetBackendInput) (req *request // GetBackend API operation for AmplifyBackend. // -// Provides project level details for your Amplify UI project. +// Provides project-level details for your Amplify UI project. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1042,7 +1042,7 @@ func (c *AmplifyBackend) GetBackendRequest(input *GetBackendInput) (req *request // An error returned if there's a temporary issue with the service. // // * TooManyRequestsException -// An error that is returned when a limit of a specific type has been exceeded. +// An error that is returned when a limit of a specific type is exceeded. // // * BadRequestException // An error returned if a request is not formed properly. @@ -1113,7 +1113,7 @@ func (c *AmplifyBackend) GetBackendAPIRequest(input *GetBackendAPIInput) (req *r // GetBackendAPI API operation for AmplifyBackend. // -// Gets the details for a backend api. +// Gets the details for a backend API. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1130,7 +1130,7 @@ func (c *AmplifyBackend) GetBackendAPIRequest(input *GetBackendAPIInput) (req *r // An error returned if there's a temporary issue with the service. // // * TooManyRequestsException -// An error that is returned when a limit of a specific type has been exceeded. +// An error that is returned when a limit of a specific type is exceeded. // // * BadRequestException // An error returned if a request is not formed properly. @@ -1218,7 +1218,7 @@ func (c *AmplifyBackend) GetBackendAPIModelsRequest(input *GetBackendAPIModelsIn // An error returned if there's a temporary issue with the service. // // * TooManyRequestsException -// An error that is returned when a limit of a specific type has been exceeded. +// An error that is returned when a limit of a specific type is exceeded. // // * BadRequestException // An error returned if a request is not formed properly. @@ -1289,7 +1289,7 @@ func (c *AmplifyBackend) GetBackendAuthRequest(input *GetBackendAuthInput) (req // GetBackendAuth API operation for AmplifyBackend. // -// Gets a backend auth details. +// Gets backend auth details. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1306,7 +1306,7 @@ func (c *AmplifyBackend) GetBackendAuthRequest(input *GetBackendAuthInput) (req // An error returned if there's a temporary issue with the service. // // * TooManyRequestsException -// An error that is returned when a limit of a specific type has been exceeded. +// An error that is returned when a limit of a specific type is exceeded. // // * BadRequestException // An error returned if a request is not formed properly. @@ -1394,7 +1394,7 @@ func (c *AmplifyBackend) GetBackendJobRequest(input *GetBackendJobInput) (req *r // An error returned if there's a temporary issue with the service. // // * TooManyRequestsException -// An error that is returned when a limit of a specific type has been exceeded. +// An error that is returned when a limit of a specific type is exceeded. // // * BadRequestException // An error returned if a request is not formed properly. @@ -1482,7 +1482,7 @@ func (c *AmplifyBackend) GetTokenRequest(input *GetTokenInput) (req *request.Req // An error returned if there's a temporary issue with the service. // // * TooManyRequestsException -// An error that is returned when a limit of a specific type has been exceeded. +// An error that is returned when a limit of a specific type is exceeded. // // * BadRequestException // An error returned if a request is not formed properly. @@ -1576,7 +1576,7 @@ func (c *AmplifyBackend) ListBackendJobsRequest(input *ListBackendJobsInput) (re // An error returned if there's a temporary issue with the service. // // * TooManyRequestsException -// An error that is returned when a limit of a specific type has been exceeded. +// An error that is returned when a limit of a specific type is exceeded. // // * BadRequestException // An error returned if a request is not formed properly. @@ -1716,7 +1716,7 @@ func (c *AmplifyBackend) RemoveAllBackendsRequest(input *RemoveAllBackendsInput) // An error returned if there's a temporary issue with the service. // // * TooManyRequestsException -// An error that is returned when a limit of a specific type has been exceeded. +// An error that is returned when a limit of a specific type is exceeded. // // * BadRequestException // An error returned if a request is not formed properly. @@ -1787,7 +1787,7 @@ func (c *AmplifyBackend) RemoveBackendConfigRequest(input *RemoveBackendConfigIn // RemoveBackendConfig API operation for AmplifyBackend. // -// Removes the AWS resources required to access the Amplify Admin UI. +// Removes the AWS resources that are required to access the Amplify Admin UI. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1804,7 +1804,7 @@ func (c *AmplifyBackend) RemoveBackendConfigRequest(input *RemoveBackendConfigIn // An error returned if there's a temporary issue with the service. // // * TooManyRequestsException -// An error that is returned when a limit of a specific type has been exceeded. +// An error that is returned when a limit of a specific type is exceeded. // // * BadRequestException // An error returned if a request is not formed properly. @@ -1892,7 +1892,7 @@ func (c *AmplifyBackend) UpdateBackendAPIRequest(input *UpdateBackendAPIInput) ( // An error returned if there's a temporary issue with the service. // // * TooManyRequestsException -// An error that is returned when a limit of a specific type has been exceeded. +// An error that is returned when a limit of a specific type is exceeded. // // * BadRequestException // An error returned if a request is not formed properly. @@ -1980,7 +1980,7 @@ func (c *AmplifyBackend) UpdateBackendAuthRequest(input *UpdateBackendAuthInput) // An error returned if there's a temporary issue with the service. // // * TooManyRequestsException -// An error that is returned when a limit of a specific type has been exceeded. +// An error that is returned when a limit of a specific type is exceeded. // // * BadRequestException // An error returned if a request is not formed properly. @@ -2051,7 +2051,7 @@ func (c *AmplifyBackend) UpdateBackendConfigRequest(input *UpdateBackendConfigIn // UpdateBackendConfig API operation for AmplifyBackend. // -// Updates the AWS resources required to access the Amplify Admin UI. +// Updates the AWS resources that are required to access the Amplify Admin UI. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2068,7 +2068,7 @@ func (c *AmplifyBackend) UpdateBackendConfigRequest(input *UpdateBackendConfigIn // An error returned if there's a temporary issue with the service. // // * TooManyRequestsException -// An error that is returned when a limit of a specific type has been exceeded. +// An error that is returned when a limit of a specific type is exceeded. // // * BadRequestException // An error returned if a request is not formed properly. @@ -2156,7 +2156,7 @@ func (c *AmplifyBackend) UpdateBackendJobRequest(input *UpdateBackendJobInput) ( // An error returned if there's a temporary issue with the service. // // * TooManyRequestsException -// An error that is returned when a limit of a specific type has been exceeded. +// An error that is returned when a limit of a specific type is exceeded. // // * BadRequestException // An error returned if a request is not formed properly. @@ -2188,33 +2188,33 @@ func (c *AmplifyBackend) UpdateBackendJobWithContext(ctx aws.Context, input *Upd type BackendAPIAppSyncAuthSettings struct { _ struct{} `type:"structure"` - // The Amazon Cognito user pool id, if Amazon Cognito was used as an authentication + // The Amazon Cognito user pool ID, if Amazon Cognito is used as an authentication // setting to access your data models. CognitoUserPoolId *string `locationName:"cognitoUserPoolId" type:"string"` - // The api key description for API_KEY, if it was used as an authentication - // mechanism to access your data models. + // The API key description for API_KEY, if it is used as an authentication mechanism + // to access your data models. Description *string `locationName:"description" type:"string"` - // The api key expiration time for API_KEY, if it was used as an authentication + // The API key expiration time for API_KEY, if it is used as an authentication // mechanism to access your data models. ExpirationTime *float64 `locationName:"expirationTime" type:"double"` // The expiry time for the OpenID authentication mechanism. OpenIDAuthTTL *string `locationName:"openIDAuthTTL" type:"string"` - // The clientID for openID, if openID was used as an authentication setting - // to access your data models. + // The clientID for openID, if openID is used as an authentication setting to + // access your data models. OpenIDClientId *string `locationName:"openIDClientId" type:"string"` // The expiry time for the OpenID authentication mechanism. OpenIDIatTTL *string `locationName:"openIDIatTTL" type:"string"` - // The openID issuer URL, if openID was used as an authentication setting to + // The openID issuer URL, if openID is used as an authentication setting to // access your data models. OpenIDIssueURL *string `locationName:"openIDIssueURL" type:"string"` - // The open id provider name, if openID was used as an authentication mechanism + // The openID provider name, if openID is used as an authentication mechanism // to access your data models. OpenIDProviderName *string `locationName:"openIDProviderName" type:"string"` } @@ -2310,7 +2310,7 @@ func (s *BackendAPIAuthType) SetSettings(v *BackendAPIAppSyncAuthSettings) *Back return s } -// Describes the conflict resolution configuration for your data model configured +// Describes the conflict resolution configuration for the data model configured // in your Amplify project. type BackendAPIConflictResolution struct { _ struct{} `type:"structure"` @@ -2335,29 +2335,29 @@ func (s *BackendAPIConflictResolution) SetResolutionStrategy(v string) *BackendA return s } -// The resource config for the data model,configured as a part of the Amplify -// project. +// The resource configuration for the data model, configured as a part of the +// Amplify project. type BackendAPIResourceConfig struct { _ struct{} `type:"structure"` - // Addition authentication methods used to interact with your data models. + // Additional authentication methods used to interact with your data models. AdditionalAuthTypes []*BackendAPIAuthType `locationName:"additionalAuthTypes" type:"list"` // The API name used to interact with the data model, configured as a part of - // the amplify project. + // the Amplify project. ApiName *string `locationName:"apiName" type:"string"` - // The conflict resoultion strategy for your data stored in the data models. + // The conflict resolution strategy for your data stored in the data models. ConflictResolution *BackendAPIConflictResolution `locationName:"conflictResolution" type:"structure"` // The default authentication type for interacting with the configured data - // models in your amplify project. + // models in your Amplify project. DefaultAuthType *BackendAPIAuthType `locationName:"defaultAuthType" type:"structure"` // The service used to provision and interact with the data model. Service *string `locationName:"service" type:"string"` - // The definition of the data model in the annotated transform of the graphql + // The definition of the data model in the annotated transform of the GraphQL // schema. TransformSchema *string `locationName:"transformSchema" type:"string"` } @@ -2408,16 +2408,16 @@ func (s *BackendAPIResourceConfig) SetTransformSchema(v string) *BackendAPIResou return s } -// Describes third party social federation configurations for allowing your +// Describes third-party social federation configurations for allowing your // app users to sign in using OAuth. type BackendAuthSocialProviderConfig struct { _ struct{} `type:"structure"` - // Describes the client_id which can be obtained from the third party social + // Describes the client_id that can be obtained from the third-party social // federation provider. ClientId *string `locationName:"client_id" type:"string"` - // Describes the client_secret which can be obtained from third party social + // Describes the client_secret that can be obtained from third-party social // federation providers. ClientSecret *string `locationName:"client_secret" type:"string"` } @@ -2540,7 +2540,7 @@ type BadRequestException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - // An error message to inform that the request has failed. + // An error message to inform that the request failed. Message_ *string `locationName:"message" type:"string"` } @@ -2729,8 +2729,8 @@ type CreateBackendAPIInput struct { // BackendEnvironmentName is a required field BackendEnvironmentName *string `locationName:"backendEnvironmentName" type:"string" required:"true"` - // The resource config for the data model,configured as a part of the Amplify - // project. + // The resource configuration for the data model, configured as a part of the + // Amplify project. // // ResourceConfig is a required field ResourceConfig *BackendAPIResourceConfig `locationName:"resourceConfig" type:"structure" required:"true"` @@ -2860,11 +2860,12 @@ func (s *CreateBackendAPIOutput) SetStatus(v string) *CreateBackendAPIOutput { return s } -// Describes the forgot password policy for authenticating into the Amlify app. +// Describes the forgot password policy for authenticating into the Amplify +// app. type CreateBackendAuthForgotPasswordConfig struct { _ struct{} `type:"structure"` - // Describes which mode to use (either SMS or email) to deliver messages to + // Describes which method to use (either SMS or email) to deliver messages to // app users that want to recover their password. // // DeliveryMethod is a required field @@ -2919,7 +2920,7 @@ func (s *CreateBackendAuthForgotPasswordConfig) SetSmsSettings(v *SmsSettings) * return s } -// Describes authorization configurations for the auth resources, configures +// Describes authorization configurations for the auth resources, configured // as a part of your Amplify project. type CreateBackendAuthIdentityPoolConfig struct { _ struct{} `type:"structure"` @@ -3057,13 +3058,14 @@ func (s *CreateBackendAuthInput) SetResourceName(v string) *CreateBackendAuthInp return s } -// Describes whether multi-factor authentication policies should be applied -// for your Amazon Cognito user pool configured as a part of your Amplify project. +// Describes whether to apply multi-factor authentication (MFA) policies for +// your Amazon Cognito user pool that's configured as a part of your Amplify +// project. type CreateBackendAuthMFAConfig struct { _ struct{} `type:"structure"` - // Describes whether MFA should be [ON, OFF, OPTIONAL] for authentication in - // your Amplify project. + // Describes whether MFA should be [ON, OFF, or OPTIONAL] for authentication + // in your Amplify project. // // MFAMode is a required field MFAMode *string `type:"string" required:"true" enum:"MFAMode"` @@ -3115,29 +3117,30 @@ type CreateBackendAuthOAuthConfig struct { // The domain prefix for your Amplify app. DomainPrefix *string `locationName:"domainPrefix" type:"string"` - // The OAuth grant type which you use to allow app users to authenticate from + // The OAuth grant type that you use to allow app users to authenticate from // your Amplify app. // // OAuthGrantType is a required field OAuthGrantType *string `locationName:"oAuthGrantType" type:"string" required:"true" enum:"OAuthGrantType"` - // List of OAuth related flows which use to allow your app users to authenticate - // from your Amplify app. + // List of OAuth-related flows that allow your app users to authenticate from + // your Amplify app. // // OAuthScopes is a required field OAuthScopes []*string `locationName:"oAuthScopes" type:"list" required:"true"` - // The redirected URI for sigining into your Amplify app. + // The redirected URI for signing in to your Amplify app. // // RedirectSignInURIs is a required field RedirectSignInURIs []*string `locationName:"redirectSignInURIs" type:"list" required:"true"` - // Redirect URLs used by OAuth when a user signs out of an Amplify app. + // Redirect URLs that OAuth uses when a user signs out of an Amplify app. // // RedirectSignOutURIs is a required field RedirectSignOutURIs []*string `locationName:"redirectSignOutURIs" type:"list" required:"true"` - // The settings for using the social providers for access to your Amplify app. + // The settings for using social identity providers for access to your Amplify + // app. SocialProviderSettings *SocialProviderSettings `locationName:"socialProviderSettings" type:"structure"` } @@ -3271,15 +3274,15 @@ func (s *CreateBackendAuthOutput) SetStatus(v string) *CreateBackendAuthOutput { return s } -// The password policy configuration for the backend to your Amplify project. +// The password policy configuration for the backend of your Amplify project. type CreateBackendAuthPasswordPolicyConfig struct { _ struct{} `type:"structure"` - // Additional constraints for the pasword used to access the backend of your + // Additional constraints for the password used to access the backend of your // Amplify project. AdditionalConstraints []*string `locationName:"additionalConstraints" type:"list"` - // The minimum length of password used to access the backend of your Amplify + // The minimum length of the password used to access the backend of your Amplify // project. // // MinimumLength is a required field @@ -3333,7 +3336,7 @@ type CreateBackendAuthResourceConfig struct { AuthResources *string `locationName:"authResources" type:"string" required:"true" enum:"AuthResources"` // Describes the authorization configuration for the Amazon Cognito identity - // pool, provisioned as a part of your auth resource in the Amplify project. + // pool, provisioned as a part of the auth resource in your Amplify project. IdentityPoolConfigs *CreateBackendAuthIdentityPoolConfig `locationName:"identityPoolConfigs" type:"structure"` // Defines the service name to use when configuring an authentication resource @@ -3342,8 +3345,8 @@ type CreateBackendAuthResourceConfig struct { // Service is a required field Service *string `locationName:"service" type:"string" required:"true" enum:"Service"` - // Describes authentication configuration for the Amazon Cognito user pool, - // provisioned as a part of your auth resource in the Amplify project. + // Describes the authentication configuration for the Amazon Cognito user pool, + // provisioned as a part of the auth resource in your Amplify project. // // UserPoolConfigs is a required field UserPoolConfigs *CreateBackendAuthUserPoolConfig `locationName:"userPoolConfigs" type:"structure" required:"true"` @@ -3421,8 +3424,9 @@ type CreateBackendAuthUserPoolConfig struct { // configured as a part of your Amplify project. ForgotPassword *CreateBackendAuthForgotPasswordConfig `locationName:"forgotPassword" type:"structure"` - // Describes whether multi-factor authentication policies should be applied - // for your Amazon Cognito user pool configured as a part of your Amplify project. + // Describes whether to apply multi-factor authentication (MFA) policies for + // your Amazon Cognito user pool that's configured as a part of your Amplify + // project. Mfa *CreateBackendAuthMFAConfig `locationName:"mfa" type:"structure"` // Describes the OAuth policy and rules for your Amazon Cognito user pool, configured @@ -3433,13 +3437,14 @@ type CreateBackendAuthUserPoolConfig struct { // as a part of your Amplify project. PasswordPolicy *CreateBackendAuthPasswordPolicyConfig `locationName:"passwordPolicy" type:"structure"` - // The required attributes to sign up new users in the user pool. + // The required attributes to sign up new users in the Amazon Cognito user pool. // // RequiredSignUpAttributes is a required field RequiredSignUpAttributes []*string `locationName:"requiredSignUpAttributes" type:"list" required:"true"` - // Describes the sign-in methods that your Amplify app users to login using - // the Amazon Cognito user pool, configured as a part of your Amplify project. + // Describes the sign-in methods that your Amplify app users to log in using + // the Amazon Cognito user pool that's configured as a part of your Amplify + // project. // // SignInMethod is a required field SignInMethod *string `locationName:"signInMethod" type:"string" required:"true" enum:"SignInMethod"` @@ -3866,8 +3871,8 @@ type DeleteBackendAPIInput struct { // BackendEnvironmentName is a required field BackendEnvironmentName *string `location:"uri" locationName:"backendEnvironmentName" type:"string" required:"true"` - // The resource config for the data model,configured as a part of the Amplify - // project. + // The resource configuration for the data model, configured as a part of the + // Amplify project. ResourceConfig *BackendAPIResourceConfig `locationName:"resourceConfig" type:"structure"` // ResourceName is a required field @@ -4540,8 +4545,8 @@ type GetBackendAPIInput struct { // BackendEnvironmentName is a required field BackendEnvironmentName *string `location:"uri" locationName:"backendEnvironmentName" type:"string" required:"true"` - // The resource config for the data model,configured as a part of the Amplify - // project. + // The resource configuration for the data model, configured as a part of the + // Amplify project. ResourceConfig *BackendAPIResourceConfig `locationName:"resourceConfig" type:"structure"` // ResourceName is a required field @@ -4712,8 +4717,8 @@ type GetBackendAPIOutput struct { Error *string `locationName:"error" type:"string"` - // The resource config for the data model,configured as a part of the Amplify - // project. + // The resource configuration for the data model, configured as a part of the + // Amplify project. ResourceConfig *BackendAPIResourceConfig `locationName:"resourceConfig" type:"structure"` ResourceName *string `locationName:"resourceName" type:"string"` @@ -5368,16 +5373,16 @@ func (s *ListBackendJobsOutput) SetNextToken(v string) *ListBackendJobsOutput { type LoginAuthConfigReqObj struct { _ struct{} `type:"structure"` - // Amazon Cognito identitypool id used for the Amplify Admin UI login authorization. + // The Amazon Cognito identity pool ID used for Amplify Admin UI login authorization. AwsCognitoIdentityPoolId *string `locationName:"aws_cognito_identity_pool_id" type:"string"` - // The AWS Region for the the Amplify Admin login. + // The AWS Region for the Amplify Admin UI login. AwsCognitoRegion *string `locationName:"aws_cognito_region" type:"string"` - // The Amazon Cognito userpool id used for Amplify Admin UI login authentication. + // The Amazon Cognito user pool ID used for Amplify Admin UI login authentication. AwsUserPoolsId *string `locationName:"aws_user_pools_id" type:"string"` - // The web client ID for the Amazon Cognito userpools. + // The web client ID for the Amazon Cognito user pools. AwsUserPoolsWebClientId *string `locationName:"aws_user_pools_web_client_id" type:"string"` } @@ -5420,7 +5425,7 @@ type NotFoundException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - // An error message to inform that the request has failed. + // An error message to inform that the request failed. Message_ *string `locationName:"message" type:"string"` // The type of resource that wasn't found. @@ -5708,15 +5713,15 @@ func (s *SmsSettings) SetSmsMessage(v string) *SmsSettings { type SocialProviderSettings struct { _ struct{} `type:"structure"` - // Describes third party social federation configurations for allowing your + // Describes third-party social federation configurations for allowing your // app users to sign in using OAuth. Facebook *BackendAuthSocialProviderConfig `type:"structure"` - // Describes third party social federation configurations for allowing your + // Describes third-party social federation configurations for allowing your // app users to sign in using OAuth. Google *BackendAuthSocialProviderConfig `type:"structure"` - // Describes third party social federation configurations for allowing your + // Describes third-party social federation configurations for allowing your // app users to sign in using OAuth. LoginWithAmazon *BackendAuthSocialProviderConfig `type:"structure"` } @@ -5749,7 +5754,7 @@ func (s *SocialProviderSettings) SetLoginWithAmazon(v *BackendAuthSocialProvider return s } -// An error that is returned when a limit of a specific type has been exceeded. +// An error that is returned when a limit of a specific type is exceeded. type TooManyRequestsException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -5816,8 +5821,8 @@ type UpdateBackendAPIInput struct { // BackendEnvironmentName is a required field BackendEnvironmentName *string `location:"uri" locationName:"backendEnvironmentName" type:"string" required:"true"` - // The resource config for the data model,configured as a part of the Amplify - // project. + // The resource configuration for the data model, configured as a part of the + // Amplify project. ResourceConfig *BackendAPIResourceConfig `locationName:"resourceConfig" type:"structure"` // ResourceName is a required field @@ -5945,11 +5950,12 @@ func (s *UpdateBackendAPIOutput) SetStatus(v string) *UpdateBackendAPIOutput { return s } -// Describes the forgot password policy for authenticating into the Amlify app. +// Describes the forgot password policy for authenticating into the Amplify +// app. type UpdateBackendAuthForgotPasswordConfig struct { _ struct{} `type:"structure"` - // Describes which mode to use (either SMS or email) to deliver messages to + // Describes which method to use (either SMS or email) to deliver messages to // app users that want to recover their password. DeliveryMethod *string `locationName:"deliveryMethod" type:"string" enum:"DeliveryMethod"` @@ -5994,7 +6000,7 @@ func (s *UpdateBackendAuthForgotPasswordConfig) SetSmsSettings(v *SmsSettings) * type UpdateBackendAuthIdentityPoolConfig struct { _ struct{} `type:"structure"` - // A boolean value which can be set to allow or disallow guest level authorization + // A Boolean value that you can set to allow or disallow guest-level authorization // into your Amplify app. UnauthenticatedLogin *bool `locationName:"unauthenticatedLogin" type:"boolean"` } @@ -6146,17 +6152,17 @@ type UpdateBackendAuthOAuthConfig struct { // app. OAuthGrantType *string `locationName:"oAuthGrantType" type:"string" enum:"OAuthGrantType"` - // The list of OAuth related flows which can allow users to authenticate from + // The list of OAuth-related flows that can allow users to authenticate from // your Amplify app. OAuthScopes []*string `locationName:"oAuthScopes" type:"list"` - // Redirect URLs used by OAuth when a user signs in to an Amplify app. + // Redirect URLs that OAuth uses when a user signs in to an Amplify app. RedirectSignInURIs []*string `locationName:"redirectSignInURIs" type:"list"` - // Redirect URLs used by OAuth when a user signs out of an Amplify app. + // Redirect URLs that OAuth uses when a user signs out of an Amplify app. RedirectSignOutURIs []*string `locationName:"redirectSignOutURIs" type:"list"` - // Describes third party social federation configurations for allowing your + // Describes third-party social federation configurations for allowing your // users to sign in with OAuth. SocialProviderSettings *SocialProviderSettings `locationName:"socialProviderSettings" type:"structure"` } @@ -6269,17 +6275,17 @@ func (s *UpdateBackendAuthOutput) SetStatus(v string) *UpdateBackendAuthOutput { return s } -// Describes the password policy for your Amazon Cognito user pool configured +// Describes the password policy for your Amazon Cognito user pool that's configured // as a part of your Amplify project. type UpdateBackendAuthPasswordPolicyConfig struct { _ struct{} `type:"structure"` - // Describes additional constrains on password requirements to sign in into - // the auth resource, configured as a part of your Ampify project. + // Describes additional constrains on the password requirements to sign in to + // the auth resource, configured as a part of your Amplify project. AdditionalConstraints []*string `locationName:"additionalConstraints" type:"list"` - // Describes the minimum length of password required to sign in into the auth - // resource, configured as a part of your Ampify project. + // Describes the minimum length of the password required to sign in to the auth + // resource, configured as a part of your Amplify project. MinimumLength *float64 `locationName:"minimumLength" type:"double"` } @@ -6317,7 +6323,7 @@ type UpdateBackendAuthResourceConfig struct { AuthResources *string `locationName:"authResources" type:"string" required:"true" enum:"AuthResources"` // Describes the authorization configuration for the Amazon Cognito identity - // pool, provisioned as a part of your auth resource in the Amplify project. + // pool, provisioned as a part of the auth resource in your Amplify project. IdentityPoolConfigs *UpdateBackendAuthIdentityPoolConfig `locationName:"identityPoolConfigs" type:"structure"` // Defines the service name to use when configuring an authentication resource @@ -6326,8 +6332,8 @@ type UpdateBackendAuthResourceConfig struct { // Service is a required field Service *string `locationName:"service" type:"string" required:"true" enum:"Service"` - // Describes the authentication configuration for the Amazon Cognito userpool, - // provisioned as a part of your auth resource in the Amplify project. + // Describes the authentication configuration for the Amazon Cognito user pool, + // provisioned as a part of the auth resource in your Amplify project. // // UserPoolConfigs is a required field UserPoolConfigs *UpdateBackendAuthUserPoolConfig `locationName:"userPoolConfigs" type:"structure" required:"true"` @@ -6386,8 +6392,8 @@ func (s *UpdateBackendAuthResourceConfig) SetUserPoolConfigs(v *UpdateBackendAut return s } -// Describes the Amazon Cognito user pool configuration for the authorization -// resource to be configured for your Amplify project on an update. +// Describes the Amazon Cognito user pool configuration to configure the authorization +// resource for your Amplify project on an update. type UpdateBackendAuthUserPoolConfig struct { _ struct{} `type:"structure"` @@ -6395,8 +6401,9 @@ type UpdateBackendAuthUserPoolConfig struct { // as a part of your Amplify project. ForgotPassword *UpdateBackendAuthForgotPasswordConfig `locationName:"forgotPassword" type:"structure"` - // Describes whether multi-factor authentication policies should be applied - // for your Amazon Cognito user pool configured as a part of your Amplify project. + // Describes whether to apply multi-factor authentication (MFA) policies for + // your Amazon Cognito user pool that's configured as a part of your Amplify + // project. Mfa *UpdateBackendAuthMFAConfig `locationName:"mfa" type:"structure"` // Describes the OAuth policy and rules for your Amazon Cognito user pool, configured diff --git a/service/amplifybackend/errors.go b/service/amplifybackend/errors.go index 2adfa84141c..5ac5349f2ef 100644 --- a/service/amplifybackend/errors.go +++ b/service/amplifybackend/errors.go @@ -29,7 +29,7 @@ const ( // ErrCodeTooManyRequestsException for service response error code // "TooManyRequestsException". // - // An error that is returned when a limit of a specific type has been exceeded. + // An error that is returned when a limit of a specific type is exceeded. ErrCodeTooManyRequestsException = "TooManyRequestsException" ) diff --git a/service/batch/api.go b/service/batch/api.go index 3950091b1b7..42302898603 100644 --- a/service/batch/api.go +++ b/service/batch/api.go @@ -58,9 +58,9 @@ func (c *Batch) CancelJobRequest(input *CancelJobInput) (req *request.Request, o // CancelJob API operation for AWS Batch. // // Cancels a job in an AWS Batch job queue. Jobs that are in the SUBMITTED, -// PENDING, or RUNNABLE state are cancelled. Jobs that have progressed to STARTING -// or RUNNING are not cancelled (but the API operation still succeeds, even -// if no job is cancelled); these jobs must be terminated with the TerminateJob +// PENDING, or RUNNABLE state are canceled. Jobs that have progressed to STARTING +// or RUNNING are not canceled (but the API operation still succeeds, even if +// no job is canceled); these jobs must be terminated with the TerminateJob // operation. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -74,7 +74,7 @@ func (c *Batch) CancelJobRequest(input *CancelJobInput) (req *request.Request, o // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permissions to use the -// action or resource, or specifying an identifier that is not valid. +// action or resource, or specifying an identifier that isn't valid. // // * ServerException // These errors are usually caused by a server issue. @@ -146,45 +146,47 @@ func (c *Batch) CreateComputeEnvironmentRequest(input *CreateComputeEnvironmentI // CreateComputeEnvironment API operation for AWS Batch. // // Creates an AWS Batch compute environment. You can create MANAGED or UNMANAGED -// compute environments. +// compute environments. MANAGED compute environments can use Amazon EC2 or +// AWS Fargate resources. UNMANAGED compute environments can only use EC2 resources. // // In a managed compute environment, AWS Batch manages the capacity and instance // types of the compute resources within the environment. This is based on the // compute resource specification that you define or the launch template (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html) // that you specify when you create the compute environment. You can choose -// to use Amazon EC2 On-Demand Instances or Spot Instances in your managed compute -// environment. You can optionally set a maximum price so that Spot Instances -// only launch when the Spot Instance price is below a specified percentage -// of the On-Demand price. +// either to use EC2 On-Demand Instances and EC2 Spot Instances, or to use Fargate +// and Fargate Spot capacity in your managed compute environment. You can optionally +// set a maximum price so that Spot Instances only launch when the Spot Instance +// price is below a specified percentage of the On-Demand price. // // Multi-node parallel jobs are not supported on Spot Instances. // -// In an unmanaged compute environment, you can manage your own compute resources. -// This provides more compute resource configuration options, such as using -// a custom AMI, but you must ensure that your AMI meets the Amazon ECS container -// instance AMI specification. For more information, see Container Instance -// AMIs (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/container_instance_AMIs.html) +// In an unmanaged compute environment, you can manage your own EC2 compute +// resources and have a lot of flexibility with how you configure your compute +// resources. For example, you can use custom AMI. However, you need to verify +// that your AMI meets the Amazon ECS container instance AMI specification. +// For more information, see container instance AMIs (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/container_instance_AMIs.html) // in the Amazon Elastic Container Service Developer Guide. After you have created // your unmanaged compute environment, you can use the DescribeComputeEnvironments // operation to find the Amazon ECS cluster that is associated with it. Then, // manually launch your container instances into that Amazon ECS cluster. For -// more information, see Launching an Amazon ECS Container Instance (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_container_instance.html) +// more information, see Launching an Amazon ECS container instance (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_container_instance.html) // in the Amazon Elastic Container Service Developer Guide. // -// AWS Batch does not upgrade the AMIs in a compute environment after it is -// created (for example, when a newer version of the Amazon ECS-optimized AMI -// is available). You are responsible for the management of the guest operating -// system (including updates and security patches) and any additional application -// software or utilities that you install on the compute resources. To use a -// new AMI for your AWS Batch jobs: +// AWS Batch doesn't upgrade the AMIs in a compute environment after it's created. +// For example, it doesn't update the AMIs when a newer version of the Amazon +// ECS-optimized AMI is available. Therefore, you're responsible for the management +// of the guest operating system (including updates and security patches) and +// any additional application software or utilities that you install on the +// compute resources. To use a new AMI for your AWS Batch jobs, complete these +// steps: // // Create a new compute environment with the new AMI. // // Add the compute environment to an existing job queue. // -// Remove the old compute environment from your job queue. +// Remove the earlier compute environment from your job queue. // -// Delete the old compute environment. +// Delete the earlier compute environment. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -197,7 +199,7 @@ func (c *Batch) CreateComputeEnvironmentRequest(input *CreateComputeEnvironmentI // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permissions to use the -// action or resource, or specifying an identifier that is not valid. +// action or resource, or specifying an identifier that isn't valid. // // * ServerException // These errors are usually caused by a server issue. @@ -289,7 +291,7 @@ func (c *Batch) CreateJobQueueRequest(input *CreateJobQueueInput) (req *request. // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permissions to use the -// action or resource, or specifying an identifier that is not valid. +// action or resource, or specifying an identifier that isn't valid. // // * ServerException // These errors are usually caused by a server issue. @@ -365,7 +367,10 @@ func (c *Batch) DeleteComputeEnvironmentRequest(input *DeleteComputeEnvironmentI // // Before you can delete a compute environment, you must set its state to DISABLED // with the UpdateComputeEnvironment API operation and disassociate it from -// any job queues with the UpdateJobQueue API operation. +// any job queues with the UpdateJobQueue API operation. Compute environments +// that use AWS Fargate resources must terminate all active jobs on that compute +// environment before deleting the compute environment. If this isn't done, +// the compute environment will end up in an invalid state. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -378,7 +383,7 @@ func (c *Batch) DeleteComputeEnvironmentRequest(input *DeleteComputeEnvironmentI // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permissions to use the -// action or resource, or specifying an identifier that is not valid. +// action or resource, or specifying an identifier that isn't valid. // // * ServerException // These errors are usually caused by a server issue. @@ -454,7 +459,7 @@ func (c *Batch) DeleteJobQueueRequest(input *DeleteJobQueueInput) (req *request. // queue with the UpdateJobQueue operation. All jobs in the queue are terminated // when you delete a job queue. // -// It is not necessary to disassociate compute environments from a queue before +// It's not necessary to disassociate compute environments from a queue before // submitting a DeleteJobQueue request. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -468,7 +473,7 @@ func (c *Batch) DeleteJobQueueRequest(input *DeleteJobQueueInput) (req *request. // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permissions to use the -// action or resource, or specifying an identifier that is not valid. +// action or resource, or specifying an identifier that isn't valid. // // * ServerException // These errors are usually caused by a server issue. @@ -540,7 +545,7 @@ func (c *Batch) DeregisterJobDefinitionRequest(input *DeregisterJobDefinitionInp // DeregisterJobDefinition API operation for AWS Batch. // -// Deregisters an AWS Batch job definition. Job definitions will be permanently +// Deregisters an AWS Batch job definition. Job definitions are permanently // deleted after 180 days. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -554,7 +559,7 @@ func (c *Batch) DeregisterJobDefinitionRequest(input *DeregisterJobDefinitionInp // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permissions to use the -// action or resource, or specifying an identifier that is not valid. +// action or resource, or specifying an identifier that isn't valid. // // * ServerException // These errors are usually caused by a server issue. @@ -633,7 +638,7 @@ func (c *Batch) DescribeComputeEnvironmentsRequest(input *DescribeComputeEnviron // // Describes one or more of your compute environments. // -// If you are using an unmanaged compute environment, you can use the DescribeComputeEnvironment +// If you're using an unmanaged compute environment, you can use the DescribeComputeEnvironment // operation to determine the ecsClusterArn that you should launch your Amazon // ECS container instances into. // @@ -648,7 +653,7 @@ func (c *Batch) DescribeComputeEnvironmentsRequest(input *DescribeComputeEnviron // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permissions to use the -// action or resource, or specifying an identifier that is not valid. +// action or resource, or specifying an identifier that isn't valid. // // * ServerException // These errors are usually caused by a server issue. @@ -791,7 +796,7 @@ func (c *Batch) DescribeJobDefinitionsRequest(input *DescribeJobDefinitionsInput // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permissions to use the -// action or resource, or specifying an identifier that is not valid. +// action or resource, or specifying an identifier that isn't valid. // // * ServerException // These errors are usually caused by a server issue. @@ -933,7 +938,7 @@ func (c *Batch) DescribeJobQueuesRequest(input *DescribeJobQueuesInput) (req *re // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permissions to use the -// action or resource, or specifying an identifier that is not valid. +// action or resource, or specifying an identifier that isn't valid. // // * ServerException // These errors are usually caused by a server issue. @@ -1069,7 +1074,7 @@ func (c *Batch) DescribeJobsRequest(input *DescribeJobsInput) (req *request.Requ // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permissions to use the -// action or resource, or specifying an identifier that is not valid. +// action or resource, or specifying an identifier that isn't valid. // // * ServerException // These errors are usually caused by a server issue. @@ -1148,16 +1153,16 @@ func (c *Batch) ListJobsRequest(input *ListJobsInput) (req *request.Request, out // // Returns a list of AWS Batch jobs. // -// You must specify only one of the following: +// You must specify only one of the following items: // -// * a job queue ID to return a list of jobs in that job queue +// * A job queue ID to return a list of jobs in that job queue // -// * a multi-node parallel job ID to return a list of that job's nodes +// * A multi-node parallel job ID to return a list of that job's nodes // -// * an array job ID to return a list of that job's children +// * An array job ID to return a list of that job's children // // You can filter the results by job status with the jobStatus parameter. If -// you do not specify a status, only RUNNING jobs are returned. +// you don't specify a status, only RUNNING jobs are returned. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1170,7 +1175,7 @@ func (c *Batch) ListJobsRequest(input *ListJobsInput) (req *request.Request, out // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permissions to use the -// action or resource, or specifying an identifier that is not valid. +// action or resource, or specifying an identifier that isn't valid. // // * ServerException // These errors are usually caused by a server issue. @@ -1293,7 +1298,7 @@ func (c *Batch) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req // ListTagsForResource API operation for AWS Batch. // -// List the tags for an AWS Batch resource. AWS Batch resources that support +// Lists the tags for an AWS Batch resource. AWS Batch resources that support // tags are compute environments, jobs, job definitions, and job queues. ARNs // for child jobs of array and multi-node parallel (MNP) jobs are not supported. // @@ -1308,7 +1313,7 @@ func (c *Batch) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permissions to use the -// action or resource, or specifying an identifier that is not valid. +// action or resource, or specifying an identifier that isn't valid. // // * ServerException // These errors are usually caused by a server issue. @@ -1392,7 +1397,7 @@ func (c *Batch) RegisterJobDefinitionRequest(input *RegisterJobDefinitionInput) // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permissions to use the -// action or resource, or specifying an identifier that is not valid. +// action or resource, or specifying an identifier that isn't valid. // // * ServerException // These errors are usually caused by a server issue. @@ -1466,6 +1471,9 @@ func (c *Batch) SubmitJobRequest(input *SubmitJobInput) (req *request.Request, o // Submits an AWS Batch job from a job definition. Parameters specified during // SubmitJob override parameters defined in the job definition. // +// Jobs run on Fargate resources don't run for more than 14 days. After 14 days, +// the Fargate resources might no longer be available and the job is terminated. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -1477,7 +1485,7 @@ func (c *Batch) SubmitJobRequest(input *SubmitJobInput) (req *request.Request, o // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permissions to use the -// action or resource, or specifying an identifier that is not valid. +// action or resource, or specifying an identifier that isn't valid. // // * ServerException // These errors are usually caused by a server issue. @@ -1550,8 +1558,8 @@ func (c *Batch) TagResourceRequest(input *TagResourceInput) (req *request.Reques // TagResource API operation for AWS Batch. // // Associates the specified tags to a resource with the specified resourceArn. -// If existing tags on a resource are not specified in the request parameters, -// they are not changed. When a resource is deleted, the tags associated with +// If existing tags on a resource aren't specified in the request parameters, +// they aren't changed. When a resource is deleted, the tags associated with // that resource are deleted as well. AWS Batch resources that support tags // are compute environments, jobs, job definitions, and job queues. ARNs for // child jobs of array and multi-node parallel (MNP) jobs are not supported. @@ -1567,7 +1575,7 @@ func (c *Batch) TagResourceRequest(input *TagResourceInput) (req *request.Reques // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permissions to use the -// action or resource, or specifying an identifier that is not valid. +// action or resource, or specifying an identifier that isn't valid. // // * ServerException // These errors are usually caused by a server issue. @@ -1654,7 +1662,7 @@ func (c *Batch) TerminateJobRequest(input *TerminateJobInput) (req *request.Requ // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permissions to use the -// action or resource, or specifying an identifier that is not valid. +// action or resource, or specifying an identifier that isn't valid. // // * ServerException // These errors are usually caused by a server issue. @@ -1739,7 +1747,7 @@ func (c *Batch) UntagResourceRequest(input *UntagResourceInput) (req *request.Re // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permissions to use the -// action or resource, or specifying an identifier that is not valid. +// action or resource, or specifying an identifier that isn't valid. // // * ServerException // These errors are usually caused by a server issue. @@ -1823,7 +1831,7 @@ func (c *Batch) UpdateComputeEnvironmentRequest(input *UpdateComputeEnvironmentI // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permissions to use the -// action or resource, or specifying an identifier that is not valid. +// action or resource, or specifying an identifier that isn't valid. // // * ServerException // These errors are usually caused by a server issue. @@ -1907,7 +1915,7 @@ func (c *Batch) UpdateJobQueueRequest(input *UpdateJobQueueInput) (req *request. // * ClientException // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permissions to use the -// action or resource, or specifying an identifier that is not valid. +// action or resource, or specifying an identifier that isn't valid. // // * ServerException // These errors are usually caused by a server issue. @@ -2236,7 +2244,7 @@ func (s CancelJobOutput) GoString() string { // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permissions to use the -// action or resource, or specifying an identifier that is not valid. +// action or resource, or specifying an identifier that isn't valid. type ClientException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -2326,7 +2334,7 @@ type ComputeEnvironmentDetail struct { // If the compute environment is managed, then it can scale its instances out // or in automatically, based on the job queue demand. // - // If the state is DISABLED, then the AWS Batch scheduler does not attempt to + // If the state is DISABLED, then the AWS Batch scheduler doesn't attempt to // place jobs within the environment. Jobs in a STARTING or RUNNING state continue // to progress normally. Managed compute environments in the DISABLED state // do not scale out. However, they scale in to minvCpus value after instances @@ -2343,7 +2351,9 @@ type ComputeEnvironmentDetail struct { // The tags applied to the compute environment. Tags map[string]*string `locationName:"tags" min:"1" type:"map"` - // The type of the compute environment. + // The type of compute environment: EC2, SPOT, FARGATE, or FARGATE_SPOT. For + // more information, see Compute Environments (https://docs.aws.amazon.com/batch/latest/userguide/compute_environments.html) + // in the AWS Batch User Guide. Type *string `locationName:"type" type:"string" enum:"CEType"` } @@ -2429,7 +2439,10 @@ type ComputeEnvironmentOrder struct { // ComputeEnvironment is a required field ComputeEnvironment *string `locationName:"computeEnvironment" type:"string" required:"true"` - // The order of the compute environment. + // The order of the compute environment. Compute environments are tried in ascending + // order. For example, if two compute environments are associated with a job + // queue, the compute environment with a lower order integer value is tried + // for job placement first. // // Order is a required field Order *int64 `locationName:"order" type:"integer" required:"true"` @@ -2477,22 +2490,46 @@ func (s *ComputeEnvironmentOrder) SetOrder(v int64) *ComputeEnvironmentOrder { type ComputeResource struct { _ struct{} `type:"structure"` - // The allocation strategy to use for the compute resource in case not enough - // instances of the best fitting instance type can be allocated. This could - // be due to availability of the instance type in the region or Amazon EC2 service + // The allocation strategy to use for the compute resource if not enough instances + // of the best fitting instance type can be allocated. This might be because + // of availability of the instance type in the Region or Amazon EC2 service // limits (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-resource-limits.html). - // If this is not specified, the default is BEST_FIT, which will use only the - // best fitting instance type, waiting for additional capacity if it's not available. + // For more information, see Allocation Strategies (https://docs.aws.amazon.com/batch/latest/userguide/allocation-strategies.html) + // in the AWS Batch User Guide. + // + // This parameter isn't applicable to jobs running on Fargate resources, and + // shouldn't be specified. + // + // BEST_FIT (default) + // + // AWS Batch selects an instance type that best fits the needs of the jobs with + // a preference for the lowest-cost instance type. If additional instances of + // the selected instance type aren't available, AWS Batch will wait for the + // additional instances to be available. If there are not enough instances available, + // or if the user is hitting Amazon EC2 service limits (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-resource-limits.html) + // then additional jobs aren't run until currently running jobs have completed. // This allocation strategy keeps costs lower but can limit scaling. If you // are using Spot Fleets with BEST_FIT then the Spot Fleet IAM Role must be - // specified. BEST_FIT_PROGRESSIVE will select additional instance types that - // are large enough to meet the requirements of the jobs in the queue, with - // a preference for instance types with a lower cost per vCPU. SPOT_CAPACITY_OPTIMIZED - // is only available for Spot Instance compute resources and will select additional - // instance types that are large enough to meet the requirements of the jobs - // in the queue, with a preference for instance types that are less likely to - // be interrupted. For more information, see Allocation Strategies (https://docs.aws.amazon.com/batch/latest/userguide/allocation-strategies.html) - // in the AWS Batch User Guide. + // specified. + // + // BEST_FIT_PROGRESSIVE + // + // AWS Batch will select additional instance types that are large enough to + // meet the requirements of the jobs in the queue, with a preference for instance + // types with a lower cost per unit vCPU. If additional instances of the previously + // selected instance types aren't available, AWS Batch will select new instance + // types. + // + // SPOT_CAPACITY_OPTIMIZED + // + // AWS Batch will select one or more instance types that are large enough to + // meet the requirements of the jobs in the queue, with a preference for instance + // types that are less likely to be interrupted. This allocation strategy is + // only available for Spot Instance compute resources. + // + // With both BEST_FIT_PROGRESSIVE and SPOT_CAPACITY_OPTIMIZED strategies, AWS + // Batch might need to go above maxvCpus to meet your capacity requirements. + // In this event, AWS Batch never exceeds maxvCpus by more than a single instance. AllocationStrategy *string `locationName:"allocationStrategy" type:"string" enum:"CRAllocationStrategy"` // The maximum percentage that a Spot Instance price can be when compared with @@ -2502,23 +2539,49 @@ type ComputeResource struct { // You always pay the lowest (market) price and never more than your maximum // percentage. If you leave this field empty, the default value is 100% of the // On-Demand price. + // + // This parameter isn't applicable to jobs running on Fargate resources, and + // shouldn't be specified. BidPercentage *int64 `locationName:"bidPercentage" type:"integer"` - // The desired number of Amazon EC2 vCPUS in the compute environment. + // The desired number of Amazon EC2 vCPUS in the compute environment. AWS Batch + // modifies this value between the minimum and maximum values, based on job + // queue demand. + // + // This parameter isn't applicable to jobs running on Fargate resources, and + // shouldn't be specified. DesiredvCpus *int64 `locationName:"desiredvCpus" type:"integer"` - // Provides additional details used to selecting the AMI to use for instances - // in a compute environment. + // Provides information used to select Amazon Machine Images (AMIs) for instances + // in the compute environment. If Ec2Configuration isn't specified, the default + // is ECS_AL1. + // + // This parameter isn't applicable to jobs running on Fargate resources, and + // shouldn't be specified. Ec2Configuration []*Ec2Configuration `locationName:"ec2Configuration" type:"list"` // The Amazon EC2 key pair that is used for instances launched in the compute - // environment. + // environment. You can use this key pair to log in to your instances with SSH. + // + // This parameter isn't applicable to jobs running on Fargate resources, and + // shouldn't be specified. Ec2KeyPair *string `locationName:"ec2KeyPair" type:"string"` // The Amazon Machine Image (AMI) ID used for instances launched in the compute // environment. This parameter is overridden by the imageIdOverride member of // the Ec2Configuration structure. // + // This parameter isn't applicable to jobs running on Fargate resources, and + // shouldn't be specified. + // + // The AMI that you choose for a compute environment must match the architecture + // of the instance types that you intend to use for that compute environment. + // For example, if your compute environment uses A1 instance types, the compute + // resource AMI that you choose must support ARM instances. Amazon ECS vends + // both x86 and ARM versions of the Amazon ECS-optimized Amazon Linux 2 AMI. + // For more information, see Amazon ECS-optimized Amazon Linux 2 AMI (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#ecs-optimized-ami-linux-variants.html) + // in the Amazon Elastic Container Service Developer Guide. + // // Deprecated: This field is deprecated, use ec2Configuration[].imageIdOverride instead. ImageId *string `locationName:"imageId" deprecated:"true" type:"string"` @@ -2528,17 +2591,23 @@ type ComputeResource struct { // . For more information, see Amazon ECS Instance Role (https://docs.aws.amazon.com/batch/latest/userguide/instance_IAM_role.html) // in the AWS Batch User Guide. // - // InstanceRole is a required field - InstanceRole *string `locationName:"instanceRole" type:"string" required:"true"` + // This parameter isn't applicable to jobs running on Fargate resources, and + // shouldn't be specified. + InstanceRole *string `locationName:"instanceRole" type:"string"` // The instances types that may be launched. You can specify instance families // to launch any instance type within those families (for example, c5 or p3), // or you can specify specific sizes within a family (such as c5.8xlarge). You - // can also choose optimal to pick instance types (from the C, M, and R instance + // can also choose optimal to select instance types (from the C, M, and R instance // families) on the fly that match the demand of your job queues. // - // InstanceTypes is a required field - InstanceTypes []*string `locationName:"instanceTypes" type:"list" required:"true"` + // This parameter isn't applicable to jobs running on Fargate resources, and + // shouldn't be specified. + // + // When you create a compute environment, the instance types that you select + // for the compute environment must share the same architecture. For example, + // you can't mix x86 and ARM instances in the same compute environment. + InstanceTypes []*string `locationName:"instanceTypes" type:"list"` // The launch template to use for your compute resources. Any other compute // resource parameters that you specify in a CreateComputeEnvironment API operation @@ -2546,18 +2615,28 @@ type ComputeResource struct { // the launch template ID or launch template name in the request, but not both. // For more information, see Launch Template Support (https://docs.aws.amazon.com/batch/latest/userguide/launch-templates.html) // in the AWS Batch User Guide. + // + // This parameter isn't applicable to jobs running on Fargate resources, and + // shouldn't be specified. LaunchTemplate *LaunchTemplateSpecification `locationName:"launchTemplate" type:"structure"` // The maximum number of Amazon EC2 vCPUs that an environment can reach. // + // With both BEST_FIT_PROGRESSIVE and SPOT_CAPACITY_OPTIMIZED allocation strategies, + // AWS Batch may need to go above maxvCpus to meet your capacity requirements. + // In this event, AWS Batch will never go above maxvCpus by more than a single + // instance (e.g., no more than a single instance from among those specified + // in your compute environment). + // // MaxvCpus is a required field MaxvCpus *int64 `locationName:"maxvCpus" type:"integer" required:"true"` // The minimum number of Amazon EC2 vCPUs that an environment should maintain // (even if the compute environment is DISABLED). // - // MinvCpus is a required field - MinvCpus *int64 `locationName:"minvCpus" type:"integer" required:"true"` + // This parameter isn't applicable to jobs running on Fargate resources, and + // shouldn't be specified. + MinvCpus *int64 `locationName:"minvCpus" type:"integer"` // The Amazon EC2 placement group to associate with your compute resources. // If you intend to submit multi-node parallel jobs to your compute environment, @@ -2566,40 +2645,60 @@ type ComputeResource struct { // grouping of instances within a single Availability Zone with high network // flow potential. For more information, see Placement Groups (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html) // in the Amazon EC2 User Guide for Linux Instances. + // + // This parameter isn't applicable to jobs running on Fargate resources, and + // shouldn't be specified. PlacementGroup *string `locationName:"placementGroup" type:"string"` // The Amazon EC2 security groups associated with instances launched in the // compute environment. One or more security groups must be specified, either // in securityGroupIds or using a launch template referenced in launchTemplate. + // This parameter is required for jobs running on Fargate resources and must + // contain at least one security group. (Fargate does not support launch templates.) // If security groups are specified using both securityGroupIds and launchTemplate, // the values in securityGroupIds will be used. SecurityGroupIds []*string `locationName:"securityGroupIds" type:"list"` // The Amazon Resource Name (ARN) of the Amazon EC2 Spot Fleet IAM role applied // to a SPOT compute environment. This role is required if the allocation strategy - // set to BEST_FIT or if the allocation strategy is not specified. For more - // information, see Amazon EC2 Spot Fleet Role (https://docs.aws.amazon.com/batch/latest/userguide/spot_fleet_IAM_role.html) + // set to BEST_FIT or if the allocation strategy isn't specified. For more information, + // see Amazon EC2 Spot Fleet Role (https://docs.aws.amazon.com/batch/latest/userguide/spot_fleet_IAM_role.html) + // in the AWS Batch User Guide. + // + // This parameter isn't applicable to jobs running on Fargate resources, and + // shouldn't be specified. + // + // To tag your Spot Instances on creation, the Spot Fleet IAM role specified + // here must use the newer AmazonEC2SpotFleetTaggingRole managed policy. The + // previously recommended AmazonEC2SpotFleetRole managed policy doesn't have + // the required permissions to tag Spot Instances. For more information, see + // Spot Instances not tagged on creation (https://docs.aws.amazon.com/batch/latest/userguide/troubleshooting.html#spot-instance-no-tag) // in the AWS Batch User Guide. SpotIamFleetRole *string `locationName:"spotIamFleetRole" type:"string"` - // The VPC subnets into which the compute resources are launched. For more information, + // The VPC subnets into which the compute resources are launched. These subnets + // must be within the same VPC. This parameter is required for jobs running + // on Fargate resources, where it can contain up to 16 subnets. For more information, // see VPCs and Subnets (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Subnets.html) // in the Amazon VPC User Guide. // // Subnets is a required field Subnets []*string `locationName:"subnets" type:"list" required:"true"` - // Key-value pair tags to be applied to resources that are launched in the compute - // environment. For AWS Batch, these take the form of "String1": "String2", + // Key-value pair tags to be applied to EC2 resources that are launched in the + // compute environment. For AWS Batch, these take the form of "String1": "String2", // where String1 is the tag key and String2 is the tag value—for example, - // { "Name": "AWS Batch Instance - C4OnDemand" }. These tags can not be updated - // or removed after the compute environment has been created; any changes require - // creating a new compute environment and removing the old compute environment. + // { "Name": "AWS Batch Instance - C4OnDemand" }. This is helpful for recognizing + // your AWS Batch instances in the Amazon EC2 console. These tags can not be + // updated or removed after the compute environment has been created; any changes + // require creating a new compute environment and removing the old compute environment. // These tags are not seen when using the AWS Batch ListTagsForResource API // operation. Tags map[string]*string `locationName:"tags" type:"map"` - // The type of compute environment: EC2 or SPOT. + // The type of compute environment: EC2, SPOT, FARGATE, or FARGATE_SPOT. For + // more information, see Compute Environments (https://docs.aws.amazon.com/batch/latest/userguide/compute_environments.html) + // in the AWS Batch User Guide. // // Type is a required field Type *string `locationName:"type" type:"string" required:"true" enum:"CRType"` @@ -2618,18 +2717,9 @@ func (s ComputeResource) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *ComputeResource) Validate() error { invalidParams := request.ErrInvalidParams{Context: "ComputeResource"} - if s.InstanceRole == nil { - invalidParams.Add(request.NewErrParamRequired("InstanceRole")) - } - if s.InstanceTypes == nil { - invalidParams.Add(request.NewErrParamRequired("InstanceTypes")) - } if s.MaxvCpus == nil { invalidParams.Add(request.NewErrParamRequired("MaxvCpus")) } - if s.MinvCpus == nil { - invalidParams.Add(request.NewErrParamRequired("MinvCpus")) - } if s.Subnets == nil { invalidParams.Add(request.NewErrParamRequired("Subnets")) } @@ -2761,13 +2851,34 @@ type ComputeResourceUpdate struct { _ struct{} `type:"structure"` // The desired number of Amazon EC2 vCPUS in the compute environment. + // + // This parameter isn't applicable to jobs running on Fargate resources, and + // shouldn't be specified. DesiredvCpus *int64 `locationName:"desiredvCpus" type:"integer"` // The maximum number of Amazon EC2 vCPUs that an environment can reach. MaxvCpus *int64 `locationName:"maxvCpus" type:"integer"` // The minimum number of Amazon EC2 vCPUs that an environment should maintain. + // + // This parameter isnt applicable to jobs running on Fargate resources, and + // shouldn't be specified. MinvCpus *int64 `locationName:"minvCpus" type:"integer"` + + // The Amazon EC2 security groups associated with instances launched in the + // compute environment. This parameter is required for Fargate compute resources, + // where it can contain up to 5 security groups. This can't be specified for + // EC2 compute resources. Providing an empty list is handled as if this parameter + // wasn't specified and no changeis made. + SecurityGroupIds []*string `locationName:"securityGroupIds" type:"list"` + + // The VPC subnets that the compute resources are launched into. This parameter + // is required for jobs running on Fargate compute resources, where it can contain + // up to 16 subnets. For more information, see VPCs and Subnets (https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Subnets.html) + // in the Amazon VPC User Guide. This can't be specified for EC2 compute resources. + // Providing an empty list will be handled as if this parameter wasn't specified + // and no change is made. + Subnets []*string `locationName:"subnets" type:"list"` } // String returns the string representation @@ -2798,6 +2909,18 @@ func (s *ComputeResourceUpdate) SetMinvCpus(v int64) *ComputeResourceUpdate { return s } +// SetSecurityGroupIds sets the SecurityGroupIds field's value. +func (s *ComputeResourceUpdate) SetSecurityGroupIds(v []*string) *ComputeResourceUpdate { + s.SecurityGroupIds = v + return s +} + +// SetSubnets sets the Subnets field's value. +func (s *ComputeResourceUpdate) SetSubnets(v []*string) *ComputeResourceUpdate { + s.Subnets = v + return s +} + // An object representing the details of a container that is part of a job. type ContainerDetail struct { _ struct{} `type:"structure"` @@ -2805,8 +2928,8 @@ type ContainerDetail struct { // The command that is passed to the container. Command []*string `locationName:"command" type:"list"` - // The Amazon Resource Name (ARN) of the container instance on which the container - // is running. + // The Amazon Resource Name (ARN) of the container instance that the container + // is running on. ContainerInstanceArn *string `locationName:"containerInstanceArn" type:"string"` // The environment variables to pass to a container. @@ -2816,17 +2939,24 @@ type ContainerDetail struct { Environment []*KeyValuePair `locationName:"environment" type:"list"` // The Amazon Resource Name (ARN) of the execution role that AWS Batch can assume. - // For more information, see AWS Batch execution IAM role (https://docs.aws.amazon.com/batch/latest/userguide/execution-IAM-role.html). + // For more information, see AWS Batch execution IAM role (https://docs.aws.amazon.com/batch/latest/userguide/execution-IAM-role.html) + // in the AWS Batch User Guide. ExecutionRoleArn *string `locationName:"executionRoleArn" type:"string"` // The exit code to return upon completion. ExitCode *int64 `locationName:"exitCode" type:"integer"` + // The platform configuration for jobs running on Fargate resources. Jobs running + // on EC2 resources must not specify this parameter. + FargatePlatformConfiguration *FargatePlatformConfiguration `locationName:"fargatePlatformConfiguration" type:"structure"` + // The image used to start the container. Image *string `locationName:"image" type:"string"` // The instance type of the underlying host infrastructure of a multi-node parallel // job. + // + // This parameter isn't applicable to jobs running on Fargate resources. InstanceType *string `locationName:"instanceType" type:"string"` // The Amazon Resource Name (ARN) associated with the job upon execution. @@ -2842,12 +2972,13 @@ type ContainerDetail struct { // section of the Docker Remote API (https://docs.docker.com/engine/api/v1.23/) // and the --log-driver option to docker run (https://docs.docker.com/engine/reference/run/). // By default, containers use the same logging driver that the Docker daemon - // uses. However the container may use a different logging driver than the Docker - // daemon by specifying a log driver with this parameter in the container definition. - // To use a different logging driver for a container, the log system must be - // configured properly on the container instance (or on a different log server - // for remote logging options). For more information on the options for different - // supported log drivers, see Configure logging drivers (https://docs.docker.com/engine/admin/logging/overview/) + // uses. However the container might use a different logging driver than the + // Docker daemon by specifying a log driver with this parameter in the container + // definition. To use a different logging driver for a container, the log system + // must be configured properly on the container instance. Or, alternatively, + // it must be configured on a different log server for remote logging options. + // For more information on the options for different supported log drivers, + // see Configure logging drivers (https://docs.docker.com/engine/admin/logging/overview/) // in the Docker documentation. // // AWS Batch currently supports a subset of the logging drivers available to @@ -2872,34 +3003,47 @@ type ContainerDetail struct { // receives a log stream name when they reach the RUNNING status. LogStreamName *string `locationName:"logStreamName" type:"string"` - // The number of MiB of memory reserved for the job. This is a required parameter. + // For jobs run on EC2 resources that didn't specify memory requirements using + // ResourceRequirement, the number of MiB of memory reserved for the job. For + // other jobs, including all run on Fargate resources, see resourceRequirements. Memory *int64 `locationName:"memory" type:"integer"` // The mount points for data volumes in your container. MountPoints []*MountPoint `locationName:"mountPoints" type:"list"` + // The network configuration for jobs running on Fargate resources. Jobs running + // on EC2 resources must not specify this parameter. + NetworkConfiguration *NetworkConfiguration `locationName:"networkConfiguration" type:"structure"` + // The network interfaces associated with the job. NetworkInterfaces []*NetworkInterface `locationName:"networkInterfaces" type:"list"` - // When this parameter is true, the container is given elevated privileges on - // the host container instance (similar to the root user). + // When this parameter is true, the container is given elevated permissions + // on the host container instance (similar to the root user). The default value + // is false. + // + // This parameter isn't applicable to jobs running on Fargate resources and + // shouldn't be provided, or specified as false. Privileged *bool `locationName:"privileged" type:"boolean"` // When this parameter is true, the container is given read-only access to its - // root file system. + // root file system. This parameter maps to ReadonlyRootfs in the Create a container + // (https://docs.docker.com/engine/api/v1.23/#create-a-container) section of + // the Docker Remote API (https://docs.docker.com/engine/api/v1.23/) and the + // --read-only option to docker run (https://docs.docker.com/engine/reference/commandline/run/). ReadonlyRootFilesystem *bool `locationName:"readonlyRootFilesystem" type:"boolean"` // A short (255 max characters) human-readable string to provide additional // details about a running or stopped container. Reason *string `locationName:"reason" type:"string"` - // The type and amount of a resource to assign to a container. Currently, the - // only supported resource is GPU. + // The type and amount of resources to assign to a container. The supported + // resources include GPU, MEMORY, and VCPU. ResourceRequirements []*ResourceRequirement `locationName:"resourceRequirements" type:"list"` // The secrets to pass to the container. For more information, see Specifying - // Sensitive Data (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/specifying-sensitive-data.html) - // in the Amazon Elastic Container Service Developer Guide. + // sensitive data (https://docs.aws.amazon.com/batch/latest/userguide/specifying-sensitive-data.html) + // in the AWS Batch User Guide. Secrets []*Secret `locationName:"secrets" type:"list"` // The Amazon Resource Name (ARN) of the Amazon ECS task that is associated @@ -2907,13 +3051,33 @@ type ContainerDetail struct { // reach the STARTING status. TaskArn *string `locationName:"taskArn" type:"string"` - // A list of ulimit values to set in the container. + // A list of ulimit values to set in the container. This parameter maps to Ulimits + // in the Create a container (https://docs.docker.com/engine/api/v1.23/#create-a-container) + // section of the Docker Remote API (https://docs.docker.com/engine/api/v1.23/) + // and the --ulimit option to docker run (https://docs.docker.com/engine/reference/run/). + // + // This parameter isn't applicable to jobs running on Fargate resources. Ulimits []*Ulimit `locationName:"ulimits" type:"list"` - // The user name to use inside the container. + // The user name to use inside the container. This parameter maps to User in + // the Create a container (https://docs.docker.com/engine/api/v1.23/#create-a-container) + // section of the Docker Remote API (https://docs.docker.com/engine/api/v1.23/) + // and the --user option to docker run (https://docs.docker.com/engine/reference/run/). User *string `locationName:"user" type:"string"` - // The number of VCPUs allocated for the job. This is a required parameter. + // The number of vCPUs reserved for the container. Jobs running on EC2 resources + // can specify the vCPU requirement for the job using resourceRequirements but + // the vCPU requirements can't be specified both here and in the resourceRequirement + // object. This parameter maps to CpuShares in the Create a container (https://docs.docker.com/engine/api/v1.23/#create-a-container) + // section of the Docker Remote API (https://docs.docker.com/engine/api/v1.23/) + // and the --cpu-shares option to docker run (https://docs.docker.com/engine/reference/run/). + // Each vCPU is equivalent to 1,024 CPU shares. You must specify at least one + // vCPU. This is required but can be specified in several places. It must be + // specified for each node at least once. + // + // This parameter isn't applicable to jobs running on Fargate resources. Jobs + // running on Fargate resources must specify the vCPU requirement for the job + // using resourceRequirements. Vcpus *int64 `locationName:"vcpus" type:"integer"` // A list of volumes associated with the job. @@ -2960,6 +3124,12 @@ func (s *ContainerDetail) SetExitCode(v int64) *ContainerDetail { return s } +// SetFargatePlatformConfiguration sets the FargatePlatformConfiguration field's value. +func (s *ContainerDetail) SetFargatePlatformConfiguration(v *FargatePlatformConfiguration) *ContainerDetail { + s.FargatePlatformConfiguration = v + return s +} + // SetImage sets the Image field's value. func (s *ContainerDetail) SetImage(v string) *ContainerDetail { s.Image = &v @@ -3008,6 +3178,12 @@ func (s *ContainerDetail) SetMountPoints(v []*MountPoint) *ContainerDetail { return s } +// SetNetworkConfiguration sets the NetworkConfiguration field's value. +func (s *ContainerDetail) SetNetworkConfiguration(v *NetworkConfiguration) *ContainerDetail { + s.NetworkConfiguration = v + return s +} + // SetNetworkInterfaces sets the NetworkInterfaces field's value. func (s *ContainerDetail) SetNetworkInterfaces(v []*NetworkInterface) *ContainerDetail { s.NetworkInterfaces = v @@ -3090,22 +3266,43 @@ type ContainerOverrides struct { // is reserved for variables that are set by the AWS Batch service. Environment []*KeyValuePair `locationName:"environment" type:"list"` - // The instance type to use for a multi-node parallel job. This parameter is - // not valid for single-node container jobs. + // The instance type to use for a multi-node parallel job. + // + // This parameter isn't applicable to single-node container jobs or for jobs + // running on Fargate resources and shouldn't be provided. InstanceType *string `locationName:"instanceType" type:"string"` - // The number of MiB of memory reserved for the job. This value overrides the - // value set in the job definition. - Memory *int64 `locationName:"memory" type:"integer"` + // This parameter is deprecated and not supported for jobs run on Fargate resources, + // use ResourceRequirement. For jobs run on EC2 resource, the number of MiB + // of memory reserved for the job. This value overrides the value set in the + // job definition. + // + // Deprecated: This field is deprecated, use resourceRequirements instead. + Memory *int64 `locationName:"memory" deprecated:"true" type:"integer"` - // The type and amount of a resource to assign to a container. This value overrides - // the value set in the job definition. Currently, the only supported resource - // is GPU. + // The type and amount of resources to assign to a container. This overrides + // the settings in the job definition. The supported resources include GPU, + // MEMORY, and VCPU. ResourceRequirements []*ResourceRequirement `locationName:"resourceRequirements" type:"list"` - // The number of vCPUs to reserve for the container. This value overrides the - // value set in the job definition. - Vcpus *int64 `locationName:"vcpus" type:"integer"` + // This parameter is deprecated and not supported for jobs run on Fargate resources, + // see resourceRequirement. For jobs run on EC2 resources, the number of vCPUs + // to reserve for the container. This value overrides the value set in the job + // definition. Jobs run on EC2 resources can specify the vCPU requirement using + // resourceRequirement but the vCPU requirements can't be specified both here + // and in resourceRequirement. This parameter maps to CpuShares in the Create + // a container (https://docs.docker.com/engine/api/v1.23/#create-a-container) + // section of the Docker Remote API (https://docs.docker.com/engine/api/v1.23/) + // and the --cpu-shares option to docker run (https://docs.docker.com/engine/reference/run/). + // Each vCPU is equivalent to 1,024 CPU shares. You must specify at least one + // vCPU. + // + // This parameter isn't applicable to jobs running on Fargate resources and + // shouldn't be provided. Jobs running on Fargate resources must specify the + // vCPU requirement for the job using resourceRequirements. + // + // Deprecated: This field is deprecated, use resourceRequirements instead. + Vcpus *int64 `locationName:"vcpus" deprecated:"true" type:"integer"` } // String returns the string representation @@ -3192,7 +3389,7 @@ type ContainerProperties struct { // section of the Docker Remote API (https://docs.docker.com/engine/api/v1.23/) // and the --env option to docker run (https://docs.docker.com/engine/reference/run/). // - // We do not recommend using plaintext environment variables for sensitive information, + // We don't recommend using plaintext environment variables for sensitive information, // such as credential data. // // Environment variables must not start with AWS_BATCH; this naming convention @@ -3200,9 +3397,15 @@ type ContainerProperties struct { Environment []*KeyValuePair `locationName:"environment" type:"list"` // The Amazon Resource Name (ARN) of the execution role that AWS Batch can assume. - // For more information, see AWS Batch execution IAM role (https://docs.aws.amazon.com/batch/latest/userguide/execution-IAM-role.html). + // Jobs running on Fargate resources must provide an execution role. For more + // information, see AWS Batch execution IAM role (https://docs.aws.amazon.com/batch/latest/userguide/execution-IAM-role.html) + // in the AWS Batch User Guide. ExecutionRoleArn *string `locationName:"executionRoleArn" type:"string"` + // The platform configuration for jobs running on Fargate resources. Jobs running + // on EC2 resources must not specify this parameter. + FargatePlatformConfiguration *FargatePlatformConfiguration `locationName:"fargatePlatformConfiguration" type:"structure"` + // The image used to start a container. This string is passed directly to the // Docker daemon. Images in the Docker Hub registry are available by default. // Other repositories are specified with repository-url/image:tag . Up to 255 @@ -3212,6 +3415,10 @@ type ContainerProperties struct { // section of the Docker Remote API (https://docs.docker.com/engine/api/v1.23/) // and the IMAGE parameter of docker run (https://docs.docker.com/engine/reference/run/). // + // Docker image architecture must match the processor architecture of the compute + // resources that they're scheduled on. For example, ARM-based Docker images + // can only run on ARM-based compute resources. + // // * Images in Amazon ECR repositories use the full registry and repository // URI (for example, 012345678910.dkr.ecr..amazonaws.com/). // @@ -3225,13 +3432,16 @@ type ContainerProperties struct { // name (for example, quay.io/assemblyline/ubuntu). Image *string `locationName:"image" type:"string"` - // The instance type to use for a multi-node parallel job. Currently all node - // groups in a multi-node parallel job must use the same instance type. This - // parameter is not valid for single-node container jobs. + // The instance type to use for a multi-node parallel job. All node groups in + // a multi-node parallel job must use the same instance type. + // + // This parameter isn't applicable to single-node container jobs or for jobs + // running on Fargate resources and shouldn't be provided. InstanceType *string `locationName:"instanceType" type:"string"` // The Amazon Resource Name (ARN) of the IAM role that the container can assume - // for AWS permissions. + // for AWS permissions. For more information, see IAM Roles for Tasks (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html) + // in the Amazon Elastic Container Service Developer Guide. JobRoleArn *string `locationName:"jobRoleArn" type:"string"` // Linux-specific modifications that are applied to the container, such as details @@ -3244,12 +3454,12 @@ type ContainerProperties struct { // section of the Docker Remote API (https://docs.docker.com/engine/api/v1.23/) // and the --log-driver option to docker run (https://docs.docker.com/engine/reference/run/). // By default, containers use the same logging driver that the Docker daemon - // uses. However the container may use a different logging driver than the Docker - // daemon by specifying a log driver with this parameter in the container definition. - // To use a different logging driver for a container, the log system must be - // configured properly on the container instance (or on a different log server - // for remote logging options). For more information on the options for different - // supported log drivers, see Configure logging drivers (https://docs.docker.com/engine/admin/logging/overview/) + // uses. However the container might use a different logging driver than the + // Docker daemon by specifying a log driver with this parameter in the container + // definition. To use a different logging driver for a container, the log system + // must be configured properly on the container instance (or on a different + // log server for remote logging options). For more information on the options + // for different supported log drivers, see Configure logging drivers (https://docs.docker.com/engine/admin/logging/overview/) // in the Docker documentation. // // AWS Batch currently supports a subset of the logging drivers available to @@ -3268,20 +3478,25 @@ type ContainerProperties struct { // in the Amazon Elastic Container Service Developer Guide. LogConfiguration *LogConfiguration `locationName:"logConfiguration" type:"structure"` - // The hard limit (in MiB) of memory to present to the container. If your container - // attempts to exceed the memory specified here, the container is killed. This - // parameter maps to Memory in the Create a container (https://docs.docker.com/engine/api/v1.23/#create-a-container) + // This parameter is deprecated and not supported for jobs run on Fargate resources, + // use ResourceRequirement. For jobs run on EC2 resources can specify the memory + // requirement using the ResourceRequirement structure. The hard limit (in MiB) + // of memory to present to the container. If your container attempts to exceed + // the memory specified here, the container is killed. This parameter maps to + // Memory in the Create a container (https://docs.docker.com/engine/api/v1.23/#create-a-container) // section of the Docker Remote API (https://docs.docker.com/engine/api/v1.23/) // and the --memory option to docker run (https://docs.docker.com/engine/reference/run/). // You must specify at least 4 MiB of memory for a job. This is required but - // can be specified in several places for multi-node parallel (MNP) jobs; it - // must be specified for each node at least once. + // can be specified in several places; it must be specified for each node at + // least once. // - // If you are trying to maximize your resource utilization by providing your + // If you're trying to maximize your resource utilization by providing your // jobs as much memory as possible for a particular instance type, see Memory // Management (https://docs.aws.amazon.com/batch/latest/userguide/memory-management.html) // in the AWS Batch User Guide. - Memory *int64 `locationName:"memory" type:"integer"` + // + // Deprecated: This field is deprecated, use resourceRequirements instead. + Memory *int64 `locationName:"memory" deprecated:"true" type:"integer"` // The mount points for data volumes in your container. This parameter maps // to Volumes in the Create a container (https://docs.docker.com/engine/api/v1.23/#create-a-container) @@ -3289,11 +3504,19 @@ type ContainerProperties struct { // and the --volume option to docker run (https://docs.docker.com/engine/reference/run/). MountPoints []*MountPoint `locationName:"mountPoints" type:"list"` - // When this parameter is true, the container is given elevated privileges on - // the host container instance (similar to the root user). This parameter maps - // to Privileged in the Create a container (https://docs.docker.com/engine/api/v1.23/#create-a-container) + // The network configuration for jobs running on Fargate resources. Jobs running + // on EC2 resources must not specify this parameter. + NetworkConfiguration *NetworkConfiguration `locationName:"networkConfiguration" type:"structure"` + + // When this parameter is true, the container is given elevated permissions + // on the host container instance (similar to the root user). This parameter + // maps to Privileged in the Create a container (https://docs.docker.com/engine/api/v1.23/#create-a-container) // section of the Docker Remote API (https://docs.docker.com/engine/api/v1.23/) // and the --privileged option to docker run (https://docs.docker.com/engine/reference/run/). + // The default value is false. + // + // This parameter isn't applicable to jobs running on Fargate resources and + // shouldn't be provided, or specified as false. Privileged *bool `locationName:"privileged" type:"boolean"` // When this parameter is true, the container is given read-only access to its @@ -3303,19 +3526,22 @@ type ContainerProperties struct { // --read-only option to docker run. ReadonlyRootFilesystem *bool `locationName:"readonlyRootFilesystem" type:"boolean"` - // The type and amount of a resource to assign to a container. Currently, the - // only supported resource is GPU. + // The type and amount of resources to assign to a container. The supported + // resources include GPU, MEMORY, and VCPU. ResourceRequirements []*ResourceRequirement `locationName:"resourceRequirements" type:"list"` - // The secrets for the container. For more information, see Specifying Sensitive - // Data (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/specifying-sensitive-data.html) - // in the Amazon Elastic Container Service Developer Guide. + // The secrets for the container. For more information, see Specifying sensitive + // data (https://docs.aws.amazon.com/batch/latest/userguide/specifying-sensitive-data.html) + // in the AWS Batch User Guide. Secrets []*Secret `locationName:"secrets" type:"list"` // A list of ulimits to set in the container. This parameter maps to Ulimits // in the Create a container (https://docs.docker.com/engine/api/v1.23/#create-a-container) // section of the Docker Remote API (https://docs.docker.com/engine/api/v1.23/) // and the --ulimit option to docker run (https://docs.docker.com/engine/reference/run/). + // + // This parameter isn't applicable to jobs running on Fargate resources and + // shouldn't be provided. Ulimits []*Ulimit `locationName:"ulimits" type:"list"` // The user name to use inside the container. This parameter maps to User in @@ -3324,14 +3550,24 @@ type ContainerProperties struct { // and the --user option to docker run (https://docs.docker.com/engine/reference/run/). User *string `locationName:"user" type:"string"` - // The number of vCPUs reserved for the container. This parameter maps to CpuShares + // This parameter is deprecated and not supported for jobs run on Fargate resources, + // see resourceRequirement. The number of vCPUs reserved for the container. + // Jobs running on EC2 resources can specify the vCPU requirement for the job + // using resourceRequirements but the vCPU requirements can't be specified both + // here and in the resourceRequirement structure. This parameter maps to CpuShares // in the Create a container (https://docs.docker.com/engine/api/v1.23/#create-a-container) // section of the Docker Remote API (https://docs.docker.com/engine/api/v1.23/) // and the --cpu-shares option to docker run (https://docs.docker.com/engine/reference/run/). // Each vCPU is equivalent to 1,024 CPU shares. You must specify at least one - // vCPU. This is required but can be specified in several places for multi-node - // parallel (MNP) jobs; it must be specified for each node at least once. - Vcpus *int64 `locationName:"vcpus" type:"integer"` + // vCPU. This is required but can be specified in several places. It must be + // specified for each node at least once. + // + // This parameter isn't applicable to jobs running on Fargate resources and + // shouldn't be provided. Jobs running on Fargate resources must specify the + // vCPU requirement for the job using resourceRequirements. + // + // Deprecated: This field is deprecated, use resourceRequirements instead. + Vcpus *int64 `locationName:"vcpus" deprecated:"true" type:"integer"` // A list of data volumes used in a job. Volumes []*Volume `locationName:"volumes" type:"list"` @@ -3415,6 +3651,12 @@ func (s *ContainerProperties) SetExecutionRoleArn(v string) *ContainerProperties return s } +// SetFargatePlatformConfiguration sets the FargatePlatformConfiguration field's value. +func (s *ContainerProperties) SetFargatePlatformConfiguration(v *FargatePlatformConfiguration) *ContainerProperties { + s.FargatePlatformConfiguration = v + return s +} + // SetImage sets the Image field's value. func (s *ContainerProperties) SetImage(v string) *ContainerProperties { s.Image = &v @@ -3457,6 +3699,12 @@ func (s *ContainerProperties) SetMountPoints(v []*MountPoint) *ContainerProperti return s } +// SetNetworkConfiguration sets the NetworkConfiguration field's value. +func (s *ContainerProperties) SetNetworkConfiguration(v *NetworkConfiguration) *ContainerProperties { + s.NetworkConfiguration = v + return s +} + // SetPrivileged sets the Privileged field's value. func (s *ContainerProperties) SetPrivileged(v bool) *ContainerProperties { s.Privileged = &v @@ -3548,7 +3796,7 @@ type CreateComputeEnvironmentInput struct { // ComputeEnvironmentName is a required field ComputeEnvironmentName *string `locationName:"computeEnvironmentName" type:"string" required:"true"` - // Details of the compute resources managed by the compute environment. This + // Details about the compute resources managed by the compute environment. This // parameter is required for managed compute environments. For more information, // see Compute Environments (https://docs.aws.amazon.com/batch/latest/userguide/compute_environments.html) // in the AWS Batch User Guide. @@ -3563,9 +3811,9 @@ type CreateComputeEnvironmentInput struct { // // Depending on how you created your AWS Batch service role, its ARN may contain // the service-role path prefix. When you only specify the name of the service - // role, AWS Batch assumes that your ARN does not use the service-role path - // prefix. Because of this, we recommend that you specify the full ARN of your - // service role when you create compute environments. + // role, AWS Batch assumes that your ARN doesn't use the service-role path prefix. + // Because of this, we recommend that you specify the full ARN of your service + // role when you create compute environments. // // ServiceRole is a required field ServiceRole *string `locationName:"serviceRole" type:"string" required:"true"` @@ -3582,11 +3830,11 @@ type CreateComputeEnvironmentInput struct { // // These tags can be updated or removed using the TagResource (https://docs.aws.amazon.com/batch/latest/APIReference/API_TagResource.html) // and UntagResource (https://docs.aws.amazon.com/batch/latest/APIReference/API_UntagResource.html) - // API operations. These tags do not propagate to the underlying compute resources. + // API operations. These tags don't propagate to the underlying compute resources. Tags map[string]*string `locationName:"tags" min:"1" type:"map"` - // The type of the compute environment. For more information, see Compute Environments - // (https://docs.aws.amazon.com/batch/latest/userguide/compute_environments.html) + // The type of the compute environment: MANAGED or UNMANAGED. For more information, + // see Compute Environments (https://docs.aws.amazon.com/batch/latest/userguide/compute_environments.html) // in the AWS Batch User Guide. // // Type is a required field @@ -3703,9 +3951,11 @@ type CreateJobQueueInput struct { // The set of compute environments mapped to a job queue and their order relative // to each other. The job scheduler uses this parameter to determine which compute - // environment should execute a given job. Compute environments must be in the + // environment should run a specific job. Compute environments must be in the // VALID state before you can associate them with a job queue. You can associate - // up to three compute environments with a job queue. + // up to three compute environments with a job queue. All of the compute environments + // must be either EC2 (EC2 or SPOT) or Fargate (FARGATE or FARGATE_SPOT); EC2 + // and Fargate compute environments can't be mixed. // // ComputeEnvironmentOrder is a required field ComputeEnvironmentOrder []*ComputeEnvironmentOrder `locationName:"computeEnvironmentOrder" type:"list" required:"true"` @@ -3717,15 +3967,15 @@ type CreateJobQueueInput struct { // The priority of the job queue. Job queues with a higher priority (or a higher // integer value for the priority parameter) are evaluated first when associated - // with the same compute environment. Priority is determined in descending order, - // for example, a job queue with a priority value of 10 is given scheduling + // with the same compute environment. Priority is determined in descending order. + // For example, a job queue with a priority value of 10 is given scheduling // preference over a job queue with a priority value of 1. // // Priority is a required field Priority *int64 `locationName:"priority" type:"integer" required:"true"` // The state of the job queue. If the job queue state is ENABLED, it is able - // to accept jobs. If the job queue state is DISABLED, new jobs cannot be added + // to accept jobs. If the job queue state is DISABLED, new jobs can't be added // to the queue, but jobs already in the queue can finish. State *string `locationName:"state" type:"string" enum:"JQState"` @@ -4013,9 +4263,8 @@ type DescribeComputeEnvironmentsInput struct { // only returns maxResults results in a single page along with a nextToken response // element. The remaining results of the initial request can be seen by sending // another DescribeComputeEnvironments request with the returned nextToken value. - // This value can be between 1 and 100. If this parameter is not used, then - // DescribeComputeEnvironments returns up to 100 results and a nextToken value - // if applicable. + // This value can be between 1 and 100. If this parameter isn't used, then DescribeComputeEnvironments + // returns up to 100 results and a nextToken value if applicable. MaxResults *int64 `locationName:"maxResults" type:"integer"` // The nextToken value returned from a previous paginated DescribeComputeEnvironments @@ -4107,7 +4356,7 @@ type DescribeJobDefinitionsInput struct { // maxResults results in a single page along with a nextToken response element. // The remaining results of the initial request can be seen by sending another // DescribeJobDefinitions request with the returned nextToken value. This value - // can be between 1 and 100. If this parameter is not used, then DescribeJobDefinitions + // can be between 1 and 100. If this parameter isn't used, then DescribeJobDefinitions // returns up to 100 results and a nextToken value if applicable. MaxResults *int64 `locationName:"maxResults" type:"integer"` @@ -4121,7 +4370,7 @@ type DescribeJobDefinitionsInput struct { // retrieve the next items in a list and not for other programmatic purposes. NextToken *string `locationName:"nextToken" type:"string"` - // The status with which to filter job definitions. + // The status used to filter job definitions. Status *string `locationName:"status" type:"string"` } @@ -4212,8 +4461,8 @@ type DescribeJobQueuesInput struct { // results in a single page along with a nextToken response element. The remaining // results of the initial request can be seen by sending another DescribeJobQueues // request with the returned nextToken value. This value can be between 1 and - // 100. If this parameter is not used, then DescribeJobQueues returns up to - // 100 results and a nextToken value if applicable. + // 100. If this parameter isn't used, then DescribeJobQueues returns up to 100 + // results and a nextToken value if applicable. MaxResults *int64 `locationName:"maxResults" type:"integer"` // The nextToken value returned from a previous paginated DescribeJobQueues @@ -4352,10 +4601,13 @@ func (s *DescribeJobsOutput) SetJobs(v []*JobDetail) *DescribeJobsOutput { } // An object representing a container instance host device. +// +// This object isn't applicable to jobs running on Fargate resources and shouldn't +// be provided. type Device struct { _ struct{} `type:"structure"` - // The path inside the container at which to expose the host device. By default + // The path inside the container used to expose the host device. By default // the hostPath value is used. ContainerPath *string `locationName:"containerPath" type:"string"` @@ -4411,8 +4663,10 @@ func (s *Device) SetPermissions(v []*string) *Device { } // Provides information used to select Amazon Machine Images (AMIs) for instances -// in the compute environment. If the Ec2Configuration is not specified, the +// in the compute environment. If the Ec2Configuration isn't specified, the // default is ECS_AL1. +// +// This object isn't applicable to jobs running on Fargate resources. type Ec2Configuration struct { _ struct{} `type:"structure"` @@ -4421,9 +4675,9 @@ type Ec2Configuration struct { // object. ImageIdOverride *string `locationName:"imageIdOverride" min:"1" type:"string"` - // The image type to match with the instance type to pick an AMI. If the imageIdOverride - // parameter is not specified, then a recent Amazon ECS-optimized AMI (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html) - // will be used. + // The image type to match with the instance type to select an AMI. If the imageIdOverride + // parameter isn't specified, then a recent Amazon ECS-optimized AMI (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html) + // is used. // // ECS_AL2 // @@ -4442,7 +4696,7 @@ type Ec2Configuration struct { // Amazon Linux (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#alami)−Default // for all non-GPU, non-AWS-Graviton instance families. Amazon Linux is reaching // the end-of-life of standard support. For more information, see Amazon Linux - // AMI (https://aws.amazon.com/amazon-linux-ami/). + // AMI (http://aws.amazon.com/amazon-linux-ami/). // // ImageType is a required field ImageType *string `locationName:"imageType" min:"1" type:"string" required:"true"` @@ -4495,7 +4749,7 @@ type EvaluateOnExit struct { _ struct{} `type:"structure"` // Specifies the action to take if all of the specified conditions (onStatusReason, - // onReason, and onExitCode) are met. + // onReason, and onExitCode) are met. The values are not case sensitive. // // Action is a required field Action *string `locationName:"action" type:"string" required:"true" enum:"RetryAction"` @@ -4508,14 +4762,14 @@ type EvaluateOnExit struct { // Contains a glob pattern to match against the Reason returned for a job. The // patten can be up to 512 characters long, can contain letters, numbers, periods - // (.), colons (:), and whitespace (spaces, tabs), and can optionally end with + // (.), colons (:), and white space (spaces, tabs), and can optionally end with // an asterisk (*) so that only the start of the string needs to be an exact // match. OnReason *string `locationName:"onReason" type:"string"` // Contains a glob pattern to match against the StatusReason returned for a // job. The patten can be up to 512 characters long, can contain letters, numbers, - // periods (.), colons (:), and whitespace (spaces, tabs). and can optionally + // periods (.), colons (:), and white space (spaces, tabs). and can optionally // end with an asterisk (*) so that only the start of the string needs to be // an exact match. OnStatusReason *string `locationName:"onStatusReason" type:"string"` @@ -4568,10 +4822,40 @@ func (s *EvaluateOnExit) SetOnStatusReason(v string) *EvaluateOnExit { return s } +// The platform configuration for jobs running on Fargate resources. Jobs running +// on EC2 resources must not specify this parameter. +type FargatePlatformConfiguration struct { + _ struct{} `type:"structure"` + + // The AWS Fargate platform version on which the jobs are running. A platform + // version is specified only for jobs running on Fargate resources. If one isn't + // specified, the LATEST platform version is used by default. This will use + // a recent, approved version of the AWS Fargate platform for compute resources. + // For more information, see AWS Fargate platform versions (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html) + // in the Amazon Elastic Container Service Developer Guide. + PlatformVersion *string `locationName:"platformVersion" type:"string"` +} + +// String returns the string representation +func (s FargatePlatformConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s FargatePlatformConfiguration) GoString() string { + return s.String() +} + +// SetPlatformVersion sets the PlatformVersion field's value. +func (s *FargatePlatformConfiguration) SetPlatformVersion(v string) *FargatePlatformConfiguration { + s.PlatformVersion = &v + return s +} + // Determine whether your data volume persists on the host container instance // and where it is stored. If this parameter is empty, then the Docker daemon -// assigns a host path for your data volume, but the data is not guaranteed -// to persist after the containers associated with it stop running. +// assigns a host path for your data volume, but the data isn't guaranteed to +// persist after the containers associated with it stop running. type Host struct { _ struct{} `type:"structure"` @@ -4582,6 +4866,9 @@ type Host struct { // delete it manually. If the source path location does not exist on the host // container instance, the Docker daemon creates it. If the location does exist, // the contents of the source path folder are exported. + // + // This parameter isn't applicable to jobs running on Fargate resources and + // shouldn't be provided. SourcePath *string `locationName:"sourcePath" type:"string"` } @@ -4619,6 +4906,9 @@ type JobDefinition struct { JobDefinitionName *string `locationName:"jobDefinitionName" type:"string" required:"true"` // An object with various properties specific to multi-node parallel jobs. + // + // If the job runs on Fargate resources, then you must not specify nodeProperties; + // use containerProperties instead. NodeProperties *NodeProperties `locationName:"nodeProperties" type:"structure"` // Default parameters or parameter substitution placeholders that are set in @@ -4629,6 +4919,18 @@ type JobDefinition struct { // in the AWS Batch User Guide. Parameters map[string]*string `locationName:"parameters" type:"map"` + // The platform capabilities required by the job definition. If no value is + // specified, it defaults to EC2. Jobs run on Fargate resources specify FARGATE. + PlatformCapabilities []*string `locationName:"platformCapabilities" type:"list"` + + // Specifies whether to propagate the tags from the job or job definition to + // the corresponding Amazon ECS task. If no value is specified, the tags aren't + // propagated. Tags can only be propagated to the tasks during task creation. + // For tags with the same name, job tags are given priority over job definitions + // tags. If the total number of combined tags from the job and job definition + // is over 50, the job is moved to the FAILED state. + PropagateTags *bool `locationName:"propagateTags" type:"boolean"` + // The retry strategy to use for failed jobs that are submitted with this job // definition. RetryStrategy *RetryStrategy `locationName:"retryStrategy" type:"structure"` @@ -4646,10 +4948,13 @@ type JobDefinition struct { // The timeout configuration for jobs that are submitted with this job definition. // You can specify a timeout duration after which AWS Batch terminates your - // jobs if they have not finished. + // jobs if they haven't finished. Timeout *JobTimeout `locationName:"timeout" type:"structure"` - // The type of job definition. + // The type of job definition. If the job is run on Fargate resources, then + // multinode isn't supported. For more information about multi-node parallel + // jobs, see Creating a multi-node parallel job definition (https://docs.aws.amazon.com/batch/latest/userguide/multi-node-job-def.html) + // in the AWS Batch User Guide. // // Type is a required field Type *string `locationName:"type" type:"string" required:"true"` @@ -4695,6 +5000,18 @@ func (s *JobDefinition) SetParameters(v map[string]*string) *JobDefinition { return s } +// SetPlatformCapabilities sets the PlatformCapabilities field's value. +func (s *JobDefinition) SetPlatformCapabilities(v []*string) *JobDefinition { + s.PlatformCapabilities = v + return s +} + +// SetPropagateTags sets the PropagateTags field's value. +func (s *JobDefinition) SetPropagateTags(v bool) *JobDefinition { + s.PropagateTags = &v + return s +} + // SetRetryStrategy sets the RetryStrategy field's value. func (s *JobDefinition) SetRetryStrategy(v *RetryStrategy) *JobDefinition { s.RetryStrategy = v @@ -4774,7 +5091,7 @@ type JobDetail struct { // A list of job attempts associated with this job. Attempts []*AttemptDetail `locationName:"attempts" type:"list"` - // An object representing the details of the container that is associated with + // An object representing the details of the container that's associated with // the job. Container *ContainerDetail `locationName:"container" type:"structure"` @@ -4784,7 +5101,7 @@ type JobDetail struct { // child job was spawned by its parent and entered the PENDING state. CreatedAt *int64 `locationName:"createdAt" type:"long"` - // A list of job IDs on which this job depends. + // A list of job IDs that this job depends on. DependsOn []*JobDependency `locationName:"dependsOn" type:"list"` // The Amazon Resource Name (ARN) of the job. @@ -4805,7 +5122,8 @@ type JobDetail struct { // JobName is a required field JobName *string `locationName:"jobName" type:"string" required:"true"` - // The Amazon Resource Name (ARN) of the job queue with which the job is associated. + // The Amazon Resource Name (ARN) of the job queue that the job is associated + // with. // // JobQueue is a required field JobQueue *string `locationName:"jobQueue" type:"string" required:"true"` @@ -4815,6 +5133,8 @@ type JobDetail struct { NodeDetails *NodeDetails `locationName:"nodeDetails" type:"structure"` // An object representing the node properties of a multi-node parallel job. + // + // This isn't applicable to jobs running on Fargate resources. NodeProperties *NodeProperties `locationName:"nodeProperties" type:"structure"` // Additional parameters passed to the job that replace parameter substitution @@ -4822,12 +5142,24 @@ type JobDetail struct { // definition. Parameters map[string]*string `locationName:"parameters" type:"map"` + // The platform capabilities required by the job definition. If no value is + // specified, it defaults to EC2. Jobs run on Fargate resources specify FARGATE. + PlatformCapabilities []*string `locationName:"platformCapabilities" type:"list"` + + // Specifies whether to propagate the tags from the job or job definition to + // the corresponding Amazon ECS task. If no value is specified, the tags are + // not propagated. Tags can only be propagated to the tasks during task creation. + // For tags with the same name, job tags are given priority over job definitions + // tags. If the total number of combined tags from the job and job definition + // is over 50, the job is moved to the FAILED state. + PropagateTags *bool `locationName:"propagateTags" type:"boolean"` + // The retry strategy to use for this job if an attempt fails. RetryStrategy *RetryStrategy `locationName:"retryStrategy" type:"structure"` // The Unix timestamp (in milliseconds) for when the job was started (when the // job transitioned from the STARTING state to the RUNNING state). This parameter - // is not provided for child jobs of array jobs or multi-node parallel jobs. + // isn't provided for child jobs of array jobs or multi-node parallel jobs. // // StartedAt is a required field StartedAt *int64 `locationName:"startedAt" type:"long" required:"true"` @@ -4945,6 +5277,18 @@ func (s *JobDetail) SetParameters(v map[string]*string) *JobDetail { return s } +// SetPlatformCapabilities sets the PlatformCapabilities field's value. +func (s *JobDetail) SetPlatformCapabilities(v []*string) *JobDetail { + s.PlatformCapabilities = v + return s +} + +// SetPropagateTags sets the PropagateTags field's value. +func (s *JobDetail) SetPropagateTags(v bool) *JobDetail { + s.PropagateTags = &v + return s +} + // SetRetryStrategy sets the RetryStrategy field's value. func (s *JobDetail) SetRetryStrategy(v *RetryStrategy) *JobDetail { s.RetryStrategy = v @@ -4992,8 +5336,8 @@ type JobQueueDetail struct { _ struct{} `type:"structure"` // The compute environments that are attached to the job queue and the order - // in which job placement is preferred. Compute environments are selected for - // job placement in ascending order. + // that job placement is preferred. Compute environments are selected for job + // placement in ascending order. // // ComputeEnvironmentOrder is a required field ComputeEnvironmentOrder []*ComputeEnvironmentOrder `locationName:"computeEnvironmentOrder" type:"list" required:"true"` @@ -5014,9 +5358,8 @@ type JobQueueDetail struct { Priority *int64 `locationName:"priority" type:"integer" required:"true"` // Describes the ability of the queue to accept new jobs. If the job queue state - // is ENABLED, it is able to accept jobs. If the job queue state is DISABLED, - // new jobs cannot be added to the queue, but jobs already in the queue can - // finish. + // is ENABLED, it's able to accept jobs. If the job queue state is DISABLED, + // new jobs can't be added to the queue, but jobs already in the queue can finish. // // State is a required field State *string `locationName:"state" type:"string" required:"true" enum:"JQState"` @@ -5121,6 +5464,8 @@ type JobSummary struct { JobName *string `locationName:"jobName" type:"string" required:"true"` // The node properties for a single node in a job summary list. + // + // This isn't applicable to jobs running on Fargate resources. NodeProperties *NodePropertiesSummary `locationName:"nodeProperties" type:"structure"` // The Unix timestamp for when the job was started (when the job transitioned @@ -5220,7 +5565,8 @@ type JobTimeout struct { _ struct{} `type:"structure"` // The time duration in seconds (measured from the job attempt's startedAt timestamp) - // after which AWS Batch terminates your jobs if they have not finished. + // after which AWS Batch terminates your jobs if they have not finished. The + // minimum value for the timeout is 60 seconds. AttemptDurationSeconds *int64 `locationName:"attemptDurationSeconds" type:"integer"` } @@ -5278,6 +5624,12 @@ func (s *KeyValuePair) SetValue(v string) *KeyValuePair { // An object representing a launch template associated with a compute resource. // You must specify either the launch template ID or launch template name in // the request, but not both. +// +// If security groups are specified using both the securityGroupIds parameter +// of CreateComputeEnvironment and the launch template, the values in the securityGroupIds +// parameter of CreateComputeEnvironment will be used. +// +// This object isn't applicable to jobs running on Fargate resources. type LaunchTemplateSpecification struct { _ struct{} `type:"structure"` @@ -5333,6 +5685,9 @@ type LinuxParameters struct { // in the Create a container (https://docs.docker.com/engine/api/v1.23/#create-a-container) // section of the Docker Remote API (https://docs.docker.com/engine/api/v1.23/) // and the --device option to docker run (https://docs.docker.com/engine/reference/run/). + // + // This parameter isn't applicable to jobs running on Fargate resources and + // shouldn't be provided. Devices []*Device `locationName:"devices" type:"list"` // If true, run an init process inside the container that forwards signals and @@ -5344,33 +5699,45 @@ type LinuxParameters struct { InitProcessEnabled *bool `locationName:"initProcessEnabled" type:"boolean"` // The total amount of swap memory (in MiB) a container can use. This parameter - // will be translated to the --memory-swap option to docker run (https://docs.docker.com/engine/reference/run/) - // where the value would be the sum of the container memory plus the maxSwap - // value. For more information, see --memory-swap details (https://docs.docker.com/config/containers/resource_constraints/#--memory-swap-details) + // is translated to the --memory-swap option to docker run (https://docs.docker.com/engine/reference/run/) + // where the value is the sum of the container memory plus the maxSwap value. + // For more information, see --memory-swap details (https://docs.docker.com/config/containers/resource_constraints/#--memory-swap-details) // in the Docker documentation. // - // If a maxSwap value of 0 is specified, the container will not use swap. Accepted + // If a maxSwap value of 0 is specified, the container doesn't use swap. Accepted // values are 0 or any positive integer. If the maxSwap parameter is omitted, - // the container will use the swap configuration for the container instance + // the container doesn't use the swap configuration for the container instance // it is running on. A maxSwap value must be set for the swappiness parameter // to be used. + // + // This parameter isn't applicable to jobs running on Fargate resources and + // shouldn't be provided. MaxSwap *int64 `locationName:"maxSwap" type:"integer"` // The value for the size (in MiB) of the /dev/shm volume. This parameter maps // to the --shm-size option to docker run (https://docs.docker.com/engine/reference/run/). + // + // This parameter isn't applicable to jobs running on Fargate resources and + // shouldn't be provided. SharedMemorySize *int64 `locationName:"sharedMemorySize" type:"integer"` // This allows you to tune a container's memory swappiness behavior. A swappiness - // value of 0 will cause swapping to not happen unless absolutely necessary. - // A swappiness value of 100 will cause pages to be swapped very aggressively. - // Accepted values are whole numbers between 0 and 100. If the swappiness parameter - // is not specified, a default value of 60 is used. If a value is not specified - // for maxSwap then this parameter is ignored. This parameter maps to the --memory-swappiness + // value of 0 causes swapping not to happen unless absolutely necessary. A swappiness + // value of 100 causes pages to be swapped very aggressively. Accepted values + // are whole numbers between 0 and 100. If the swappiness parameter isn't specified, + // a default value of 60 is used. If a value isn't specified for maxSwap then + // this parameter is ignored. This parameter maps to the --memory-swappiness // option to docker run (https://docs.docker.com/engine/reference/run/). + // + // This parameter isn't applicable to jobs running on Fargate resources and + // shouldn't be provided. Swappiness *int64 `locationName:"swappiness" type:"integer"` // The container path, mount options, and size (in MiB) of the tmpfs mount. // This parameter maps to the --tmpfs option to docker run (https://docs.docker.com/engine/reference/run/). + // + // This parameter isn't applicable to jobs running on Fargate resources and + // shouldn't be provided. Tmpfs []*Tmpfs `locationName:"tmpfs" type:"list"` } @@ -5457,12 +5824,12 @@ type ListJobsInput struct { // lists all child jobs from within the specified array. ArrayJobId *string `locationName:"arrayJobId" type:"string"` - // The name or full Amazon Resource Name (ARN) of the job queue with which to - // list jobs. + // The name or full Amazon Resource Name (ARN) of the job queue used to list + // jobs. JobQueue *string `locationName:"jobQueue" type:"string"` - // The job status with which to filter jobs in the specified queue. If you do - // not specify a status, only RUNNING jobs are returned. + // The job status used to filter jobs in the specified queue. If you don't specify + // a status, only RUNNING jobs are returned. JobStatus *string `locationName:"jobStatus" type:"string" enum:"JobStatus"` // The maximum number of results returned by ListJobs in paginated output. When @@ -5470,7 +5837,7 @@ type ListJobsInput struct { // page along with a nextToken response element. The remaining results of the // initial request can be seen by sending another ListJobs request with the // returned nextToken value. This value can be between 1 and 100. If this parameter - // is not used, then ListJobs returns up to 100 results and a nextToken value + // isn't used, then ListJobs returns up to 100 results and a nextToken value // if applicable. MaxResults *int64 `locationName:"maxResults" type:"integer"` @@ -5575,8 +5942,8 @@ func (s *ListJobsOutput) SetNextToken(v string) *ListJobsOutput { type ListTagsForResourceInput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) that identifies the resource for which to - // list the tags. AWS Batch resources that support tags are compute environments, + // The Amazon Resource Name (ARN) that identifies the resource that tags are + // listed for. AWS Batch resources that support tags are compute environments, // jobs, job definitions, and job queues. ARNs for child jobs of array and multi-node // parallel (MNP) jobs are not supported. // @@ -5650,6 +6017,9 @@ type LogConfiguration struct { // The supported log drivers are awslogs, fluentd, gelf, json-file, journald, // logentries, syslog, and splunk. // + // Jobs running on Fargate resources are restricted to the awslogs and splunk + // log drivers. + // // awslogs // // Specifies the Amazon CloudWatch Logs logging driver. For more information, @@ -5693,12 +6063,12 @@ type LogConfiguration struct { // and options, see Syslog logging driver (https://docs.docker.com/config/containers/logging/syslog/) // in the Docker documentation. // - // If you have a custom driver that is not listed earlier that you would like - // to work with the Amazon ECS container agent, you can fork the Amazon ECS - // container agent project that is available on GitHub (https://github.com/aws/amazon-ecs-agent) + // If you have a custom driver that isn't listed earlier that you want to work + // with the Amazon ECS container agent, you can fork the Amazon ECS container + // agent project that is available on GitHub (https://github.com/aws/amazon-ecs-agent) // and customize it to work with that driver. We encourage you to submit pull - // requests for changes that you would like to have included. However, Amazon - // Web Services does not currently support running modified copies of this software. + // requests for changes that you want to have included. However, Amazon Web + // Services doesn't currently support running modified copies of this software. // // This parameter requires version 1.18 of the Docker Remote API or greater // on your container instance. To check the Docker Remote API version on your @@ -5778,11 +6148,11 @@ func (s *LogConfiguration) SetSecretOptions(v []*Secret) *LogConfiguration { type MountPoint struct { _ struct{} `type:"structure"` - // The path on the container at which to mount the host volume. + // The path on the container where the host volume is mounted. ContainerPath *string `locationName:"containerPath" type:"string"` - // If this value is true, the container has read-only access to the volume; - // otherwise, the container can write to the volume. The default value is false. + // If this value is true, the container has read-only access to the volume. + // Otherwise, the container can write to the volume. The default value is false. ReadOnly *bool `locationName:"readOnly" type:"boolean"` // The name of the volume to mount. @@ -5817,6 +6187,36 @@ func (s *MountPoint) SetSourceVolume(v string) *MountPoint { return s } +// The network configuration for jobs running on Fargate resources. Jobs running +// on EC2 resources must not specify this parameter. +type NetworkConfiguration struct { + _ struct{} `type:"structure"` + + // Indicates whether the job should have a public IP address. For a job running + // on Fargate resources in a private subnet to send outbound traffic to the + // internet (for example, in order to pull container images), the private subnet + // requires a NAT gateway be attached to route requests to the internet. For + // more information, see Amazon ECS task networking (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html). + // The default value is "DISABLED". + AssignPublicIp *string `locationName:"assignPublicIp" type:"string" enum:"AssignPublicIp"` +} + +// String returns the string representation +func (s NetworkConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s NetworkConfiguration) GoString() string { + return s.String() +} + +// SetAssignPublicIp sets the AssignPublicIp field's value. +func (s *NetworkConfiguration) SetAssignPublicIp(v string) *NetworkConfiguration { + s.AssignPublicIp = &v + return s +} + // An object representing the elastic network interface for a multi-node parallel // job node. type NetworkInterface struct { @@ -5898,6 +6298,9 @@ func (s *NodeDetails) SetNodeIndex(v int64) *NodeDetails { // Object representing any node overrides to a job definition that is used in // a SubmitJob API operation. +// +// This isn't applicable to jobs running on Fargate resources and shouldn't +// be provided; use containerOverrides instead. type NodeOverrides struct { _ struct{} `type:"structure"` @@ -6094,7 +6497,7 @@ type NodePropertyOverride struct { // The overrides that should be sent to a node range. ContainerOverrides *ContainerOverrides `locationName:"containerOverrides" type:"structure"` - // The range of nodes, using node index values, with which to override. A range + // The range of nodes, using node index values, that's used to override. A range // of 0:3 indicates nodes with index values of 0 through 3. If the starting // range value is omitted (:n), then 0 is used to start the range. If the ending // range value is omitted (n:), then the highest possible node index is used @@ -6210,6 +6613,9 @@ type RegisterJobDefinitionInput struct { // An object with various properties specific to single-node container-based // jobs. If the job definition's type parameter is container, then you must // specify either containerProperties or nodeProperties. + // + // If the job runs on Fargate resources, then you must not specify nodeProperties; + // use only containerProperties. ContainerProperties *ContainerProperties `locationName:"containerProperties" type:"structure"` // The name of the job definition to register. Up to 128 letters (uppercase @@ -6223,6 +6629,9 @@ type RegisterJobDefinitionInput struct { // For more information, see Multi-node Parallel Jobs (https://docs.aws.amazon.com/batch/latest/userguide/multi-node-parallel-jobs.html) // in the AWS Batch User Guide. If the job definition's type parameter is container, // then you must specify either containerProperties or nodeProperties. + // + // If the job runs on Fargate resources, then you must not specify nodeProperties; + // use containerProperties instead. NodeProperties *NodeProperties `locationName:"nodeProperties" type:"structure"` // Default parameter substitution placeholders to set in the job definition. @@ -6230,28 +6639,45 @@ type RegisterJobDefinitionInput struct { // request override any corresponding parameter defaults from the job definition. Parameters map[string]*string `locationName:"parameters" type:"map"` + // The platform capabilities required by the job definition. If no value is + // specified, it defaults to EC2. To run the job on Fargate resources, specify + // FARGATE. + PlatformCapabilities []*string `locationName:"platformCapabilities" type:"list"` + + // Specifies whether to propagate the tags from the job or job definition to + // the corresponding Amazon ECS task. If no value is specified, the tags are + // not propagated. Tags can only be propagated to the tasks during task creation. + // For tags with the same name, job tags are given priority over job definitions + // tags. If the total number of combined tags from the job and job definition + // is over 50, the job is moved to the FAILED state. + PropagateTags *bool `locationName:"propagateTags" type:"boolean"` + // The retry strategy to use for failed jobs that are submitted with this job // definition. Any retry strategy that is specified during a SubmitJob operation // overrides the retry strategy defined here. If a job is terminated due to - // a timeout, it is not retried. + // a timeout, it isn't retried. RetryStrategy *RetryStrategy `locationName:"retryStrategy" type:"structure"` // The tags that you apply to the job definition to help you categorize and // organize your resources. Each tag consists of a key and an optional value. - // For more information, see Tagging AWS Resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) - // in AWS General Reference. + // For more information, see Tagging AWS Resources (https://docs.aws.amazon.com/batch/latest/userguide/using-tags.html) + // in AWS Batch User Guide. Tags map[string]*string `locationName:"tags" min:"1" type:"map"` // The timeout configuration for jobs that are submitted with this job definition, // after which AWS Batch terminates your jobs if they have not finished. If - // a job is terminated due to a timeout, it is not retried. The minimum value + // a job is terminated due to a timeout, it isn't retried. The minimum value // for the timeout is 60 seconds. Any timeout configuration that is specified // during a SubmitJob operation overrides the timeout configuration defined - // here. For more information, see Job Timeouts (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/job_timeouts.html) - // in the Amazon Elastic Container Service Developer Guide. + // here. For more information, see Job Timeouts (https://docs.aws.amazon.com/batch/latest/userguide/job_timeouts.html) + // in the AWS Batch User Guide. Timeout *JobTimeout `locationName:"timeout" type:"structure"` - // The type of job definition. + // The type of job definition. For more information about multi-node parallel + // jobs, see Creating a multi-node parallel job definition (https://docs.aws.amazon.com/batch/latest/userguide/multi-node-job-def.html) + // in the AWS Batch User Guide. + // + // If the job is run on Fargate resources, then multinode isn't supported. // // Type is a required field Type *string `locationName:"type" type:"string" required:"true" enum:"JobDefinitionType"` @@ -6325,6 +6751,18 @@ func (s *RegisterJobDefinitionInput) SetParameters(v map[string]*string) *Regist return s } +// SetPlatformCapabilities sets the PlatformCapabilities field's value. +func (s *RegisterJobDefinitionInput) SetPlatformCapabilities(v []*string) *RegisterJobDefinitionInput { + s.PlatformCapabilities = v + return s +} + +// SetPropagateTags sets the PropagateTags field's value. +func (s *RegisterJobDefinitionInput) SetPropagateTags(v bool) *RegisterJobDefinitionInput { + s.PropagateTags = &v + return s +} + // SetRetryStrategy sets the RetryStrategy field's value. func (s *RegisterJobDefinitionInput) SetRetryStrategy(v *RetryStrategy) *RegisterJobDefinitionInput { s.RetryStrategy = v @@ -6396,21 +6834,125 @@ func (s *RegisterJobDefinitionOutput) SetRevision(v int64) *RegisterJobDefinitio return s } -// The type and amount of a resource to assign to a container. Currently, the -// only supported resource type is GPU. +// The type and amount of a resource to assign to a container. The supported +// resources include GPU, MEMORY, and VCPU. type ResourceRequirement struct { _ struct{} `type:"structure"` - // The type of resource to assign to a container. Currently, the only supported - // resource type is GPU. + // The type of resource to assign to a container. The supported resources include + // GPU, MEMORY, and VCPU. // // Type is a required field Type *string `locationName:"type" type:"string" required:"true" enum:"ResourceType"` + // The quantity of the specified resource to reserve for the container. The + // values vary based on the type specified. + // + // type="GPU" + // // The number of physical GPUs to reserve for the container. The number of GPUs - // reserved for all containers in a job should not exceed the number of available + // reserved for all containers in a job shouldn't exceed the number of available // GPUs on the compute resource that the job is launched on. // + // GPUs are not available for jobs running on Fargate resources. + // + // type="MEMORY" + // + // For jobs running on EC2 resources, the hard limit (in MiB) of memory to present + // to the container. If your container attempts to exceed the memory specified + // here, the container is killed. This parameter maps to Memory in the Create + // a container (https://docs.docker.com/engine/api/v1.23/#create-a-container) + // section of the Docker Remote API (https://docs.docker.com/engine/api/v1.23/) + // and the --memory option to docker run (https://docs.docker.com/engine/reference/run/). + // You must specify at least 4 MiB of memory for a job. This is required but + // can be specified in several places for multi-node parallel (MNP) jobs. It + // must be specified for each node at least once. This parameter maps to Memory + // in the Create a container (https://docs.docker.com/engine/api/v1.23/#create-a-container) + // section of the Docker Remote API (https://docs.docker.com/engine/api/v1.23/) + // and the --memory option to docker run (https://docs.docker.com/engine/reference/run/). + // You must specify at least 4 MiB of memory for a job. + // + // If you're trying to maximize your resource utilization by providing your + // jobs as much memory as possible for a particular instance type, see Memory + // Management (https://docs.aws.amazon.com/batch/latest/userguide/memory-management.html) + // in the AWS Batch User Guide. + // + // For jobs running on Fargate resources, then value is the hard limit (in GiB), + // represented in decimal form, and must match one of the supported values (0.5 + // and whole numbers between 1 and 30, inclusive) and the VCPU values must be + // one of the values supported for that memory value. + // + // value = 0.5 + // + // VCPU = 0.25 + // + // value = 1 + // + // VCPU = 0.25 or 0.5 + // + // value = 2 + // + // VCPU = 0.25, 0.5, or 1 + // + // value = 3 + // + // VCPU = 0.5, or 1 + // + // value = 4 + // + // VCPU = 0.5, 1, or 2 + // + // value = 5, 6, or 7 + // + // VCPU = 1 or 2 + // + // value = 8 + // + // VCPU = 1, 2, or 4 + // + // value = 9, 10, 11, 12, 13, 14, 15, or 16 + // + // VCPU = 2 or 4 + // + // value = 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, or 30 + // + // VCPU = 4 + // + // type="VCPU" + // + // The number of vCPUs reserved for the container. This parameter maps to CpuShares + // in the Create a container (https://docs.docker.com/engine/api/v1.23/#create-a-container) + // section of the Docker Remote API (https://docs.docker.com/engine/api/v1.23/) + // and the --cpu-shares option to docker run (https://docs.docker.com/engine/reference/run/). + // Each vCPU is equivalent to 1,024 CPU shares. You must specify at least one + // vCPU. This is required but can be specified in several places; it must be + // specified for each node at least once. + // + // For jobs running on Fargate resources, then value must match one of the supported + // values and the MEMORY values must be one of the values supported for that + // VCPU value. The supported values are 0.25, 0.5, 1, 2, and 4 + // + // value = 0.25 + // + // MEMORY = 0.5, 1, or 2 + // + // value = 0.5 + // + // MEMORY = 1, 2, 3, or 4 + // + // value = 1 + // + // MEMORY = 2, 3, 4, 5, 6, 7, or 8 + // + // value = 2 + // + // MEMORY = 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, or 16 + // + // value = 4 + // + // MEMORY = 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + // 25, 26, 27, 28, 29, or 30 + // // Value is a required field Value *string `locationName:"value" type:"string" required:"true"` } @@ -6453,7 +6995,9 @@ func (s *ResourceRequirement) SetValue(v string) *ResourceRequirement { return s } -// The retry strategy associated with a job. +// The retry strategy associated with a job. For more information, see Automated +// job retries (https://docs.aws.amazon.com/batch/latest/userguide/job_retries.html) +// in the AWS Batch User Guide. type RetryStrategy struct { _ struct{} `type:"structure"` @@ -6519,8 +7063,8 @@ func (s *RetryStrategy) SetEvaluateOnExit(v []*EvaluateOnExit) *RetryStrategy { // * To reference sensitive information in the log configuration of a container, // use the secretOptions container definition parameter. // -// For more information, see Specifying Sensitive Data (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/specifying-sensitive-data.html) -// in the Amazon Elastic Container Service Developer Guide. +// For more information, see Specifying sensitive data (https://docs.aws.amazon.com/batch/latest/userguide/specifying-sensitive-data.html) +// in the AWS Batch User Guide. type Secret struct { _ struct{} `type:"structure"` @@ -6534,7 +7078,7 @@ type Secret struct { // in the AWS Systems Manager Parameter Store. // // If the AWS Systems Manager Parameter Store parameter exists in the same Region - // as the task you are launching, then you can use either the full ARN or name + // as the job you are launching, then you can use either the full ARN or name // of the parameter. If the parameter exists in a different Region, then the // full ARN must be specified. // @@ -6686,6 +7230,9 @@ type SubmitJobInput struct { // A list of node overrides in JSON format that specify the node range to target // and the container overrides for that node range. + // + // This parameter isn't applicable to jobs running on Fargate resources; use + // containerOverrides instead. NodeOverrides *NodeOverrides `locationName:"nodeOverrides" type:"structure"` // Additional parameters passed to the job that replace parameter substitution @@ -6694,6 +7241,15 @@ type SubmitJobInput struct { // any corresponding parameter defaults from the job definition. Parameters map[string]*string `locationName:"parameters" type:"map"` + // Specifies whether to propagate the tags from the job or job definition to + // the corresponding Amazon ECS task. If no value is specified, the tags aren't + // propagated. Tags can only be propagated to the tasks during task creation. + // For tags with the same name, job tags are given priority over job definitions + // tags. If the total number of combined tags from the job and job definition + // is over 50, the job is moved to the FAILED state. When specified, this overrides + // the tag propagation setting in the job definition. + PropagateTags *bool `locationName:"propagateTags" type:"boolean"` + // The retry strategy to use for failed jobs from this SubmitJob operation. // When a retry strategy is specified here, it overrides the retry strategy // defined in the job definition. @@ -6706,9 +7262,9 @@ type SubmitJobInput struct { Tags map[string]*string `locationName:"tags" min:"1" type:"map"` // The timeout configuration for this SubmitJob operation. You can specify a - // timeout duration after which AWS Batch terminates your jobs if they have - // not finished. If a job is terminated due to a timeout, it is not retried. - // The minimum value for the timeout is 60 seconds. This configuration overrides + // timeout duration after which AWS Batch terminates your jobs if they haven't + // finished. If a job is terminated due to a timeout, it isn't retried. The + // minimum value for the timeout is 60 seconds. This configuration overrides // any timeout configuration specified in the job definition. For array jobs, // child jobs have the same timeout configuration as the parent job. For more // information, see Job Timeouts (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/job_timeouts.html) @@ -6811,6 +7367,12 @@ func (s *SubmitJobInput) SetParameters(v map[string]*string) *SubmitJobInput { return s } +// SetPropagateTags sets the PropagateTags field's value. +func (s *SubmitJobInput) SetPropagateTags(v bool) *SubmitJobInput { + s.PropagateTags = &v + return s +} + // SetRetryStrategy sets the RetryStrategy field's value. func (s *SubmitJobInput) SetRetryStrategy(v *RetryStrategy) *SubmitJobInput { s.RetryStrategy = v @@ -6877,7 +7439,7 @@ func (s *SubmitJobOutput) SetJobName(v string) *SubmitJobOutput { type TagResourceInput struct { _ struct{} `type:"structure"` - // The Amazon Resource Name (ARN) of the resource to which to add tags. AWS + // The Amazon Resource Name (ARN) of the resource that tags are added to. AWS // Batch resources that support tags are compute environments, jobs, job definitions, // and job queues. ARNs for child jobs of array and multi-node parallel (MNP) // jobs are not supported. @@ -7021,10 +7583,12 @@ func (s TerminateJobOutput) GoString() string { } // The container path, mount options, and size of the tmpfs mount. +// +// This object isn't applicable to jobs running on Fargate resources. type Tmpfs struct { _ struct{} `type:"structure"` - // The absolute file path in the container where the tmpfs volume is to be mounted. + // The absolute file path in the container where the tmpfs volume is mounted. // // ContainerPath is a required field ContainerPath *string `locationName:"containerPath" type:"string" required:"true"` @@ -7090,6 +7654,8 @@ func (s *Tmpfs) SetSize(v int64) *Tmpfs { } // The ulimit settings to pass to the container. +// +// This object isn't applicable to jobs running on Fargate resources. type Ulimit struct { _ struct{} `type:"structure"` @@ -7251,7 +7817,7 @@ type UpdateComputeEnvironmentInput struct { // the full role ARN (this is recommended) or prefix the role name with the // path. // - // Depending on how you created your AWS Batch service role, its ARN may contain + // Depending on how you created your AWS Batch service role, its ARN might contain // the service-role path prefix. When you only specify the name of the service // role, AWS Batch assumes that your ARN does not use the service-role path // prefix. Because of this, we recommend that you specify the full ARN of your @@ -7348,7 +7914,9 @@ type UpdateJobQueueInput struct { // Details the set of compute environments mapped to a job queue and their order // relative to each other. This is one of the parameters used by the job scheduler - // to determine which compute environment should execute a given job. + // to determine which compute environment should run a given job. All of the + // compute environments must be either EC2 (EC2 or SPOT) or Fargate (FARGATE + // or FARGATE_SPOT); EC2 and Fargate compute environments can't be mixed. ComputeEnvironmentOrder []*ComputeEnvironmentOrder `locationName:"computeEnvironmentOrder" type:"list"` // The name or the Amazon Resource Name (ARN) of the job queue. @@ -7466,8 +8034,11 @@ type Volume struct { // The contents of the host parameter determine whether your data volume persists // on the host container instance and where it is stored. If the host parameter // is empty, then the Docker daemon assigns a host path for your data volume. - // However, the data is not guaranteed to persist after the containers associated + // However, the data isn't guaranteed to persist after the containers associated // with it stop running. + // + // This parameter isn't applicable to jobs running on Fargate resources and + // shouldn't be provided. Host *Host `locationName:"host" type:"structure"` // The name of the volume. Up to 255 letters (uppercase and lowercase), numbers, @@ -7514,6 +8085,22 @@ func ArrayJobDependency_Values() []string { } } +const ( + // AssignPublicIpEnabled is a AssignPublicIp enum value + AssignPublicIpEnabled = "ENABLED" + + // AssignPublicIpDisabled is a AssignPublicIp enum value + AssignPublicIpDisabled = "DISABLED" +) + +// AssignPublicIp_Values returns all elements of the AssignPublicIp enum +func AssignPublicIp_Values() []string { + return []string{ + AssignPublicIpEnabled, + AssignPublicIpDisabled, + } +} + const ( // CEStateEnabled is a CEState enum value CEStateEnabled = "ENABLED" @@ -7604,6 +8191,12 @@ const ( // CRTypeSpot is a CRType enum value CRTypeSpot = "SPOT" + + // CRTypeFargate is a CRType enum value + CRTypeFargate = "FARGATE" + + // CRTypeFargateSpot is a CRType enum value + CRTypeFargateSpot = "FARGATE_SPOT" ) // CRType_Values returns all elements of the CRType enum @@ -7611,6 +8204,8 @@ func CRType_Values() []string { return []string{ CRTypeEc2, CRTypeSpot, + CRTypeFargate, + CRTypeFargateSpot, } } @@ -7770,15 +8365,39 @@ func LogDriver_Values() []string { } } +const ( + // PlatformCapabilityEc2 is a PlatformCapability enum value + PlatformCapabilityEc2 = "EC2" + + // PlatformCapabilityFargate is a PlatformCapability enum value + PlatformCapabilityFargate = "FARGATE" +) + +// PlatformCapability_Values returns all elements of the PlatformCapability enum +func PlatformCapability_Values() []string { + return []string{ + PlatformCapabilityEc2, + PlatformCapabilityFargate, + } +} + const ( // ResourceTypeGpu is a ResourceType enum value ResourceTypeGpu = "GPU" + + // ResourceTypeVcpu is a ResourceType enum value + ResourceTypeVcpu = "VCPU" + + // ResourceTypeMemory is a ResourceType enum value + ResourceTypeMemory = "MEMORY" ) // ResourceType_Values returns all elements of the ResourceType enum func ResourceType_Values() []string { return []string{ ResourceTypeGpu, + ResourceTypeVcpu, + ResourceTypeMemory, } } diff --git a/service/batch/doc.go b/service/batch/doc.go index f3a80c9f5c9..1722344addc 100644 --- a/service/batch/doc.go +++ b/service/batch/doc.go @@ -3,23 +3,22 @@ // Package batch provides the client and types for making API // requests to AWS Batch. // -// AWS Batch enables you to run batch computing workloads on the AWS Cloud. -// Batch computing is a common way for developers, scientists, and engineers -// to access large amounts of compute resources, and AWS Batch removes the undifferentiated -// heavy lifting of configuring and managing the required infrastructure. AWS -// Batch will be familiar to users of traditional batch computing software. -// This service can efficiently provision resources in response to jobs submitted -// in order to eliminate capacity constraints, reduce compute costs, and deliver -// results quickly. -// -// As a fully managed service, AWS Batch enables developers, scientists, and -// engineers to run batch computing workloads of any scale. AWS Batch automatically -// provisions compute resources and optimizes the workload distribution based -// on the quantity and scale of the workloads. With AWS Batch, there is no need -// to install or manage batch computing software, which allows you to focus -// on analyzing results and solving problems. AWS Batch reduces operational -// complexities, saves time, and reduces costs, which makes it easy for developers, -// scientists, and engineers to run their batch jobs in the AWS Cloud. +// Using AWS Batch, you can run batch computing workloads on the AWS Cloud. +// Batch computing is a common means for developers, scientists, and engineers +// to access large amounts of compute resources. AWS Batch utilizes the advantages +// of this computing workload to remove the undifferentiated heavy lifting of +// configuring and managing required infrastructure, while also adopting a familiar +// batch computing software approach. Given these advantages, AWS Batch can +// help you to efficiently provision resources in response to jobs submitted, +// thus effectively helping to eliminate capacity constraints, reduce compute +// costs, and deliver your results more quickly. +// +// As a fully managed service, AWS Batch can run batch computing workloads of +// any scale. AWS Batch automatically provisions compute resources and optimizes +// workload distribution based on the quantity and scale of your specific workloads. +// With AWS Batch, there's no need to install or manage batch computing software. +// This means that you can focus your time and energy on analyzing results and +// solving your specific problems. // // See https://docs.aws.amazon.com/goto/WebAPI/batch-2016-08-10 for more information on this service. // diff --git a/service/batch/errors.go b/service/batch/errors.go index ae250859be0..994f8361f78 100644 --- a/service/batch/errors.go +++ b/service/batch/errors.go @@ -13,7 +13,7 @@ const ( // // These errors are usually caused by a client action, such as using an action // or resource on behalf of a user that doesn't have permissions to use the - // action or resource, or specifying an identifier that is not valid. + // action or resource, or specifying an identifier that isn't valid. ErrCodeClientException = "ClientException" // ErrCodeServerException for service response error code diff --git a/service/computeoptimizer/api.go b/service/computeoptimizer/api.go index 8851ac99bcb..1b40a911220 100644 --- a/service/computeoptimizer/api.go +++ b/service/computeoptimizer/api.go @@ -442,6 +442,112 @@ func (c *ComputeOptimizer) GetAutoScalingGroupRecommendationsWithContext(ctx aws return out, req.Send() } +const opGetEBSVolumeRecommendations = "GetEBSVolumeRecommendations" + +// GetEBSVolumeRecommendationsRequest generates a "aws/request.Request" representing the +// client's request for the GetEBSVolumeRecommendations operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetEBSVolumeRecommendations for more information on using the GetEBSVolumeRecommendations +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the GetEBSVolumeRecommendationsRequest method. +// req, resp := client.GetEBSVolumeRecommendationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/GetEBSVolumeRecommendations +func (c *ComputeOptimizer) GetEBSVolumeRecommendationsRequest(input *GetEBSVolumeRecommendationsInput) (req *request.Request, output *GetEBSVolumeRecommendationsOutput) { + op := &request.Operation{ + Name: opGetEBSVolumeRecommendations, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetEBSVolumeRecommendationsInput{} + } + + output = &GetEBSVolumeRecommendationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetEBSVolumeRecommendations API operation for AWS Compute Optimizer. +// +// Returns Amazon Elastic Block Store (Amazon EBS) volume recommendations. +// +// AWS Compute Optimizer generates recommendations for Amazon EBS volumes that +// meet a specific set of requirements. For more information, see the Supported +// resources and requirements (https://docs.aws.amazon.com/compute-optimizer/latest/ug/requirements.html) +// in the AWS Compute Optimizer User Guide. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Compute Optimizer's +// API operation GetEBSVolumeRecommendations for usage and error information. +// +// Returned Error Types: +// * OptInRequiredException +// The account is not opted in to AWS Compute Optimizer. +// +// * InternalServerException +// An internal error has occurred. Try your call again. +// +// * ServiceUnavailableException +// The request has failed due to a temporary failure of the server. +// +// * AccessDeniedException +// You do not have sufficient access to perform this action. +// +// * InvalidParameterValueException +// An invalid or out-of-range value was supplied for the input parameter. +// +// * ResourceNotFoundException +// A resource that is required for the action doesn't exist. +// +// * MissingAuthenticationToken +// The request must contain either a valid (registered) AWS access key ID or +// X.509 certificate. +// +// * ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01/GetEBSVolumeRecommendations +func (c *ComputeOptimizer) GetEBSVolumeRecommendations(input *GetEBSVolumeRecommendationsInput) (*GetEBSVolumeRecommendationsOutput, error) { + req, out := c.GetEBSVolumeRecommendationsRequest(input) + return out, req.Send() +} + +// GetEBSVolumeRecommendationsWithContext is the same as GetEBSVolumeRecommendations with the addition of +// the ability to pass a context and additional request options. +// +// See GetEBSVolumeRecommendations for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *ComputeOptimizer) GetEBSVolumeRecommendationsWithContext(ctx aws.Context, input *GetEBSVolumeRecommendationsInput, opts ...request.Option) (*GetEBSVolumeRecommendationsOutput, error) { + req, out := c.GetEBSVolumeRecommendationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetEC2InstanceRecommendations = "GetEC2InstanceRecommendations" // GetEC2InstanceRecommendationsRequest generates a "aws/request.Request" representing the @@ -702,8 +808,8 @@ func (c *ComputeOptimizer) GetEnrollmentStatusRequest(input *GetEnrollmentStatus // Returns the enrollment (opt in) status of an account to the AWS Compute Optimizer // service. // -// If the account is the master account of an organization, this action also -// confirms the enrollment status of member accounts within the organization. +// If the account is the management account of an organization, this action +// also confirms the enrollment status of member accounts within the organization. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -904,8 +1010,8 @@ func (c *ComputeOptimizer) UpdateEnrollmentStatusRequest(input *UpdateEnrollment // Updates the enrollment (opt in) status of an account to the AWS Compute Optimizer // service. // -// If the account is a master account of an organization, this action can also -// be used to enroll member accounts within the organization. +// If the account is a management account of an organization, this action can +// also be used to enroll member accounts within the organization. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1092,8 +1198,6 @@ type AutoScalingGroupRecommendation struct { // Optimizer determines that the group is correctly provisioned to run your // workload based on the chosen instance type. For optimized resources, Compute // Optimizer might recommend a new generation instance type. - // - // The values that are returned might be NOT_OPTIMIZED or OPTIMIZED. Finding *string `locationName:"finding" type:"string" enum:"Finding"` // The time stamp of when the Auto Scaling group recommendation was last refreshed. @@ -1334,12 +1438,122 @@ func (s *DescribeRecommendationExportJobsOutput) SetRecommendationExportJobs(v [ return s } +// Describes a filter that returns a more specific list of Amazon Elastic Block +// Store (Amazon EBS) volume recommendations. +// +// This filter is used with the GetEBSVolumeRecommendations action. +type EBSFilter struct { + _ struct{} `type:"structure"` + + // The name of the filter. + // + // Specify Finding to return recommendations with a specific finding classification + // (e.g., Optimized). + Name *string `locationName:"name" type:"string" enum:"EBSFilterName"` + + // The value of the filter. + // + // The valid values are Optimized, or NotOptimized. + Values []*string `locationName:"values" type:"list"` +} + +// String returns the string representation +func (s EBSFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s EBSFilter) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *EBSFilter) SetName(v string) *EBSFilter { + s.Name = &v + return s +} + +// SetValues sets the Values field's value. +func (s *EBSFilter) SetValues(v []*string) *EBSFilter { + s.Values = v + return s +} + +// Describes a utilization metric of an Amazon Elastic Block Store (Amazon EBS) +// volume. +// +// Compare the utilization metric data of your resource against its projected +// utilization metric data to determine the performance difference between your +// current resource and the recommended option. +type EBSUtilizationMetric struct { + _ struct{} `type:"structure"` + + // The name of the utilization metric. + // + // The following utilization metrics are available: + // + // * VolumeReadOpsPerSecond - The completed read operations per second from + // the volume in a specified period of time. Unit: Count + // + // * VolumeWriteOpsPerSecond - The completed write operations per second + // to the volume in a specified period of time. Unit: Count + // + // * VolumeReadBytesPerSecond - The bytes read per second from the volume + // in a specified period of time. Unit: Bytes + // + // * VolumeWriteBytesPerSecond - The bytes written to the volume in a specified + // period of time. Unit: Bytes + Name *string `locationName:"name" type:"string" enum:"EBSMetricName"` + + // The statistic of the utilization metric. + // + // The following statistics are available: + // + // * Average - This is the value of Sum / SampleCount during the specified + // period, or the average value observed during the specified period. + // + // * Maximum - The highest value observed during the specified period. Use + // this value to determine high volumes of activity for your application. + Statistic *string `locationName:"statistic" type:"string" enum:"MetricStatistic"` + + // The value of the utilization metric. + Value *float64 `locationName:"value" type:"double"` +} + +// String returns the string representation +func (s EBSUtilizationMetric) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s EBSUtilizationMetric) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *EBSUtilizationMetric) SetName(v string) *EBSUtilizationMetric { + s.Name = &v + return s +} + +// SetStatistic sets the Statistic field's value. +func (s *EBSUtilizationMetric) SetStatistic(v string) *EBSUtilizationMetric { + s.Statistic = &v + return s +} + +// SetValue sets the Value field's value. +func (s *EBSUtilizationMetric) SetValue(v float64) *EBSUtilizationMetric { + s.Value = &v + return s +} + type ExportAutoScalingGroupRecommendationsInput struct { _ struct{} `type:"structure"` // The IDs of the AWS accounts for which to export Auto Scaling group recommendations. // - // If your account is the master account of an organization, use this parameter + // If your account is the management account of an organization, use this parameter // to specify the member accounts for which you want to export recommendations. // // This parameter cannot be specified together with the include member accounts @@ -1366,8 +1580,8 @@ type ExportAutoScalingGroupRecommendationsInput struct { Filters []*Filter `locationName:"filters" type:"list"` // Indicates whether to include recommendations for resources in all member - // accounts of the organization if your account is the master account of an - // organization. + // accounts of the organization if your account is the management account of + // an organization. // // The member accounts must also be opted in to Compute Optimizer. // @@ -1524,7 +1738,7 @@ type ExportEC2InstanceRecommendationsInput struct { // The IDs of the AWS accounts for which to export instance recommendations. // - // If your account is the master account of an organization, use this parameter + // If your account is the management account of an organization, use this parameter // to specify the member accounts for which you want to export recommendations. // // This parameter cannot be specified together with the include member accounts @@ -1551,8 +1765,8 @@ type ExportEC2InstanceRecommendationsInput struct { Filters []*Filter `locationName:"filters" type:"list"` // Indicates whether to include recommendations for resources in all member - // accounts of the organization if your account is the master account of an - // organization. + // accounts of the organization if your account is the management account of + // an organization. // // The member accounts must also be opted in to Compute Optimizer. // @@ -1676,12 +1890,15 @@ func (s *ExportEC2InstanceRecommendationsOutput) SetS3Destination(v *S3Destinati } // Describes a filter that returns a more specific list of recommendations. +// +// This filter is used with the GetAutoScalingGroupRecommendations and GetEC2InstanceRecommendations +// actions. type Filter struct { _ struct{} `type:"structure"` // The name of the filter. // - // Specify Finding to return recommendations with a specific findings classification + // Specify Finding to return recommendations with a specific finding classification // (e.g., Overprovisioned). // // Specify RecommendationSourceType to return recommendations of a specific @@ -1690,15 +1907,18 @@ type Filter struct { // The value of the filter. // - // If you specify the name parameter as Finding, and you request recommendations - // for an instance, then the valid values are Underprovisioned, Overprovisioned, - // NotOptimized, or Optimized. + // The valid values for this parameter are as follows, depending on what you + // specify for the name parameter and the resource type that you wish to filter + // results for: // - // If you specify the name parameter as Finding, and you request recommendations - // for an Auto Scaling group, then the valid values are Optimized, or NotOptimized. + // * Specify Optimized or NotOptimized if you specified the name parameter + // as Finding and you want to filter results for Auto Scaling groups. // - // If you specify the name parameter as RecommendationSourceType, then the valid - // values are Ec2Instance, or AutoScalingGroup. + // * Specify Underprovisioned, Overprovisioned, or Optimized if you specified + // the name parameter as Finding and you want to filter results for EC2 instances. + // + // * Specify Ec2Instance or AutoScalingGroup if you specified the name parameter + // as RecommendationSourceType. Values []*string `locationName:"values" type:"list"` } @@ -1729,7 +1949,7 @@ type GetAutoScalingGroupRecommendationsInput struct { // The IDs of the AWS accounts for which to return Auto Scaling group recommendations. // - // If your account is the master account of an organization, use this parameter + // If your account is the management account of an organization, use this parameter // to specify the member accounts for which you want to return Auto Scaling // group recommendations. // @@ -1842,12 +2062,127 @@ func (s *GetAutoScalingGroupRecommendationsOutput) SetNextToken(v string) *GetAu return s } +type GetEBSVolumeRecommendationsInput struct { + _ struct{} `type:"structure"` + + // The IDs of the AWS accounts for which to return volume recommendations. + // + // If your account is the management account of an organization, use this parameter + // to specify the member accounts for which you want to return volume recommendations. + // + // Only one account ID can be specified per request. + AccountIds []*string `locationName:"accountIds" type:"list"` + + // An array of objects that describe a filter that returns a more specific list + // of volume recommendations. + Filters []*EBSFilter `locationName:"filters" type:"list"` + + // The maximum number of volume recommendations to return with a single request. + // + // To retrieve the remaining results, make another request with the returned + // NextToken value. + MaxResults *int64 `locationName:"maxResults" type:"integer"` + + // The token to advance to the next page of volume recommendations. + NextToken *string `locationName:"nextToken" type:"string"` + + // The Amazon Resource Name (ARN) of the volumes for which to return recommendations. + VolumeArns []*string `locationName:"volumeArns" type:"list"` +} + +// String returns the string representation +func (s GetEBSVolumeRecommendationsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetEBSVolumeRecommendationsInput) GoString() string { + return s.String() +} + +// SetAccountIds sets the AccountIds field's value. +func (s *GetEBSVolumeRecommendationsInput) SetAccountIds(v []*string) *GetEBSVolumeRecommendationsInput { + s.AccountIds = v + return s +} + +// SetFilters sets the Filters field's value. +func (s *GetEBSVolumeRecommendationsInput) SetFilters(v []*EBSFilter) *GetEBSVolumeRecommendationsInput { + s.Filters = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *GetEBSVolumeRecommendationsInput) SetMaxResults(v int64) *GetEBSVolumeRecommendationsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *GetEBSVolumeRecommendationsInput) SetNextToken(v string) *GetEBSVolumeRecommendationsInput { + s.NextToken = &v + return s +} + +// SetVolumeArns sets the VolumeArns field's value. +func (s *GetEBSVolumeRecommendationsInput) SetVolumeArns(v []*string) *GetEBSVolumeRecommendationsInput { + s.VolumeArns = v + return s +} + +type GetEBSVolumeRecommendationsOutput struct { + _ struct{} `type:"structure"` + + // An array of objects that describe errors of the request. + // + // For example, an error is returned if you request recommendations for an unsupported + // volume. + Errors []*GetRecommendationError `locationName:"errors" type:"list"` + + // The token to use to advance to the next page of volume recommendations. + // + // This value is null when there are no more pages of volume recommendations + // to return. + NextToken *string `locationName:"nextToken" type:"string"` + + // An array of objects that describe volume recommendations. + VolumeRecommendations []*VolumeRecommendation `locationName:"volumeRecommendations" type:"list"` +} + +// String returns the string representation +func (s GetEBSVolumeRecommendationsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetEBSVolumeRecommendationsOutput) GoString() string { + return s.String() +} + +// SetErrors sets the Errors field's value. +func (s *GetEBSVolumeRecommendationsOutput) SetErrors(v []*GetRecommendationError) *GetEBSVolumeRecommendationsOutput { + s.Errors = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *GetEBSVolumeRecommendationsOutput) SetNextToken(v string) *GetEBSVolumeRecommendationsOutput { + s.NextToken = &v + return s +} + +// SetVolumeRecommendations sets the VolumeRecommendations field's value. +func (s *GetEBSVolumeRecommendationsOutput) SetVolumeRecommendations(v []*VolumeRecommendation) *GetEBSVolumeRecommendationsOutput { + s.VolumeRecommendations = v + return s +} + type GetEC2InstanceRecommendationsInput struct { _ struct{} `type:"structure"` // The IDs of the AWS accounts for which to return instance recommendations. // - // If your account is the master account of an organization, use this parameter + // If your account is the management account of an organization, use this parameter // to specify the member accounts for which you want to return instance recommendations. // // Only one account ID can be specified per request. @@ -2093,7 +2428,7 @@ type GetEnrollmentStatusOutput struct { _ struct{} `type:"structure"` // Confirms the enrollment status of member accounts within the organization, - // if the account is a master account of an organization. + // if the account is a management account of an organization. MemberAccountsEnrolled *bool `locationName:"memberAccountsEnrolled" type:"boolean"` // The enrollment status of the account. @@ -2185,7 +2520,7 @@ type GetRecommendationSummariesInput struct { // The IDs of the AWS accounts for which to return recommendation summaries. // - // If your account is the master account of an organization, use this parameter + // If your account is the management account of an organization, use this parameter // to specify the member accounts for which you want to return recommendation // summaries. // @@ -2296,9 +2631,6 @@ type InstanceRecommendation struct { // instance runs your workloads with optimal performance and infrastructure // cost. For optimized resources, AWS Compute Optimizer might recommend a // new generation instance type. - // - // The values that are returned might be UNDER_PROVISIONED, OVER_PROVISIONED, - // or OPTIMIZED. Finding *string `locationName:"finding" type:"string" enum:"Finding"` // The Amazon Resource Name (ARN) of the current instance. @@ -2586,11 +2918,15 @@ type JobFilter struct { // The value of the filter. // - // If you specify the name parameter as ResourceType, the valid values are Ec2Instance - // or AutoScalingGroup. + // The valid values for this parameter are as follows, depending on what you + // specify for the name parameter: // - // If you specify the name parameter as JobStatus, the valid values are Queued, - // InProgress, Complete, or Failed. + // * Specify Ec2Instance or AutoScalingGroup if you specified the name parameter + // as ResourceType. There is no filter for EBS volumes because volume recommendations + // cannot be exported at this time. + // + // * Specify Queued, InProgress, Complete, or Failed if you specified the + // name parameter as JobStatus. Values []*string `locationName:"values" type:"list"` } @@ -2786,7 +3122,12 @@ func (s *OptInRequiredException) RequestID() string { } // Describes a projected utilization metric of a recommendation option, such -// as an Amazon EC2 instance. +// as an Amazon EC2 instance. This represents the projected utilization of a +// recommendation option had you used that resource during the analyzed period. +// +// Compare the utilization metric data of your resource against its projected +// utilization metric data to determine the performance difference between your +// current resource and the recommended option. // // The Cpu and Memory metrics are the only projected utilization metrics returned // when you run the GetEC2RecommendationProjectedMetrics action. Additionally, @@ -2797,6 +3138,24 @@ type ProjectedMetric struct { _ struct{} `type:"structure"` // The name of the projected utilization metric. + // + // The following projected utilization metrics are returned: + // + // * Cpu - The projected percentage of allocated EC2 compute units that would + // be in use on the recommendation option had you used that resource during + // the analyzed period. This metric identifies the processing power required + // to run an application on the recommendation option. Depending on the instance + // type, tools in your operating system can show a lower percentage than + // CloudWatch when the instance is not allocated a full processor core. Units: + // Percent + // + // * Memory - The percentage of memory that would be in use on the recommendation + // option had you used that resource during the analyzed period. This metric + // identifies the amount of memory required to run an application on the + // recommendation option. Units: Percent The Memory metric is returned only + // for resources that have the unified CloudWatch agent installed on them. + // For more information, see Enabling Memory Utilization with the CloudWatch + // Agent (https://docs.aws.amazon.com/compute-optimizer/latest/ug/metrics.html#cw-agent). Name *string `locationName:"name" type:"string" enum:"MetricName"` // The time stamps of the projected utilization metric. @@ -3346,7 +3705,7 @@ type UpdateEnrollmentStatusInput struct { _ struct{} `type:"structure"` // Indicates whether to enroll member accounts of the organization if the your - // account is the master account of an organization. + // account is the management account of an organization. IncludeMemberAccounts *bool `locationName:"includeMemberAccounts" type:"boolean"` // The new enrollment status of the account. @@ -3428,17 +3787,54 @@ func (s *UpdateEnrollmentStatusOutput) SetStatusReason(v string) *UpdateEnrollme } // Describes a utilization metric of a resource, such as an Amazon EC2 instance. +// +// Compare the utilization metric data of your resource against its projected +// utilization metric data to determine the performance difference between your +// current resource and the recommended option. type UtilizationMetric struct { _ struct{} `type:"structure"` // The name of the utilization metric. // - // The Memory metric is returned only for resources that have the unified CloudWatch - // agent installed on them. For more information, see Enabling Memory Utilization - // with the CloudWatch Agent (https://docs.aws.amazon.com/compute-optimizer/latest/ug/metrics.html#cw-agent). + // The following utilization metrics are available: + // + // * Cpu - The percentage of allocated EC2 compute units that are currently + // in use on the instance. This metric identifies the processing power required + // to run an application on the instance. Depending on the instance type, + // tools in your operating system can show a lower percentage than CloudWatch + // when the instance is not allocated a full processor core. Units: Percent + // + // * Memory - The percentage of memory that is currently in use on the instance. + // This metric identifies the amount of memory required to run an application + // on the instance. Units: Percent The Memory metric is returned only for + // resources that have the unified CloudWatch agent installed on them. For + // more information, see Enabling Memory Utilization with the CloudWatch + // Agent (https://docs.aws.amazon.com/compute-optimizer/latest/ug/metrics.html#cw-agent). + // + // * EBS_READ_OPS_PER_SECOND - The completed read operations from all EBS + // volumes attached to the instance in a specified period of time. Unit: + // Count + // + // * EBS_WRITE_OPS_PER_SECOND - The completed write operations to all EBS + // volumes attached to the instance in a specified period of time. Unit: + // Count + // + // * EBS_READ_BYTES_PER_SECOND - The bytes read from all EBS volumes attached + // to the instance in a specified period of time. Unit: Bytes + // + // * EBS_WRITE_BYTES_PER_SECOND - The bytes written to all EBS volumes attached + // to the instance in a specified period of time. Unit: Bytes Name *string `locationName:"name" type:"string" enum:"MetricName"` // The statistic of the utilization metric. + // + // The following statistics are available: + // + // * Average - This is the value of Sum / SampleCount during the specified + // period, or the average value observed during the specified period. + // + // * Maximum - The highest value observed during the specified period. Use + // this value to determine high volumes of activity for your application. Statistic *string `locationName:"statistic" type:"string" enum:"MetricStatistic"` // The value of the utilization metric. @@ -3473,6 +3869,280 @@ func (s *UtilizationMetric) SetValue(v float64) *UtilizationMetric { return s } +// Describes the configuration of an Amazon Elastic Block Store (Amazon EBS) +// volume. +type VolumeConfiguration struct { + _ struct{} `type:"structure"` + + // The baseline IOPS of the volume. + VolumeBaselineIOPS *int64 `locationName:"volumeBaselineIOPS" type:"integer"` + + // The baseline throughput of the volume. + VolumeBaselineThroughput *int64 `locationName:"volumeBaselineThroughput" type:"integer"` + + // The burst IOPS of the volume. + VolumeBurstIOPS *int64 `locationName:"volumeBurstIOPS" type:"integer"` + + // The burst throughput of the volume. + VolumeBurstThroughput *int64 `locationName:"volumeBurstThroughput" type:"integer"` + + // The size of the volume, in GiB. + VolumeSize *int64 `locationName:"volumeSize" type:"integer"` + + // The volume type. + // + // This can be gp2 for General Purpose SSD, io1 or io2 for Provisioned IOPS + // SSD, st1 for Throughput Optimized HDD, sc1 for Cold HDD, or standard for + // Magnetic volumes. + VolumeType *string `locationName:"volumeType" type:"string"` +} + +// String returns the string representation +func (s VolumeConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s VolumeConfiguration) GoString() string { + return s.String() +} + +// SetVolumeBaselineIOPS sets the VolumeBaselineIOPS field's value. +func (s *VolumeConfiguration) SetVolumeBaselineIOPS(v int64) *VolumeConfiguration { + s.VolumeBaselineIOPS = &v + return s +} + +// SetVolumeBaselineThroughput sets the VolumeBaselineThroughput field's value. +func (s *VolumeConfiguration) SetVolumeBaselineThroughput(v int64) *VolumeConfiguration { + s.VolumeBaselineThroughput = &v + return s +} + +// SetVolumeBurstIOPS sets the VolumeBurstIOPS field's value. +func (s *VolumeConfiguration) SetVolumeBurstIOPS(v int64) *VolumeConfiguration { + s.VolumeBurstIOPS = &v + return s +} + +// SetVolumeBurstThroughput sets the VolumeBurstThroughput field's value. +func (s *VolumeConfiguration) SetVolumeBurstThroughput(v int64) *VolumeConfiguration { + s.VolumeBurstThroughput = &v + return s +} + +// SetVolumeSize sets the VolumeSize field's value. +func (s *VolumeConfiguration) SetVolumeSize(v int64) *VolumeConfiguration { + s.VolumeSize = &v + return s +} + +// SetVolumeType sets the VolumeType field's value. +func (s *VolumeConfiguration) SetVolumeType(v string) *VolumeConfiguration { + s.VolumeType = &v + return s +} + +// Describes an Amazon Elastic Block Store (Amazon EBS) volume recommendation. +type VolumeRecommendation struct { + _ struct{} `type:"structure"` + + // The AWS account ID of the volume. + AccountId *string `locationName:"accountId" type:"string"` + + // An array of objects that describe the current configuration of the volume. + CurrentConfiguration *VolumeConfiguration `locationName:"currentConfiguration" type:"structure"` + + // The finding classification for the volume. + // + // Findings for volumes include: + // + // * NotOptimized —A volume is considered not optimized when AWS Compute + // Optimizer identifies a recommendation that can provide better performance + // for your workload. + // + // * Optimized —An volume is considered optimized when Compute Optimizer + // determines that the volume is correctly provisioned to run your workload + // based on the chosen volume type. For optimized resources, Compute Optimizer + // might recommend a new generation volume type. + Finding *string `locationName:"finding" type:"string" enum:"EBSFinding"` + + // The time stamp of when the volume recommendation was last refreshed. + LastRefreshTimestamp *time.Time `locationName:"lastRefreshTimestamp" type:"timestamp"` + + // The number of days for which utilization metrics were analyzed for the volume. + LookBackPeriodInDays *float64 `locationName:"lookBackPeriodInDays" type:"double"` + + // An array of objects that describe the utilization metrics of the volume. + UtilizationMetrics []*EBSUtilizationMetric `locationName:"utilizationMetrics" type:"list"` + + // The Amazon Resource Name (ARN) of the current volume. + VolumeArn *string `locationName:"volumeArn" type:"string"` + + // An array of objects that describe the recommendation options for the volume. + VolumeRecommendationOptions []*VolumeRecommendationOption `locationName:"volumeRecommendationOptions" type:"list"` +} + +// String returns the string representation +func (s VolumeRecommendation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s VolumeRecommendation) GoString() string { + return s.String() +} + +// SetAccountId sets the AccountId field's value. +func (s *VolumeRecommendation) SetAccountId(v string) *VolumeRecommendation { + s.AccountId = &v + return s +} + +// SetCurrentConfiguration sets the CurrentConfiguration field's value. +func (s *VolumeRecommendation) SetCurrentConfiguration(v *VolumeConfiguration) *VolumeRecommendation { + s.CurrentConfiguration = v + return s +} + +// SetFinding sets the Finding field's value. +func (s *VolumeRecommendation) SetFinding(v string) *VolumeRecommendation { + s.Finding = &v + return s +} + +// SetLastRefreshTimestamp sets the LastRefreshTimestamp field's value. +func (s *VolumeRecommendation) SetLastRefreshTimestamp(v time.Time) *VolumeRecommendation { + s.LastRefreshTimestamp = &v + return s +} + +// SetLookBackPeriodInDays sets the LookBackPeriodInDays field's value. +func (s *VolumeRecommendation) SetLookBackPeriodInDays(v float64) *VolumeRecommendation { + s.LookBackPeriodInDays = &v + return s +} + +// SetUtilizationMetrics sets the UtilizationMetrics field's value. +func (s *VolumeRecommendation) SetUtilizationMetrics(v []*EBSUtilizationMetric) *VolumeRecommendation { + s.UtilizationMetrics = v + return s +} + +// SetVolumeArn sets the VolumeArn field's value. +func (s *VolumeRecommendation) SetVolumeArn(v string) *VolumeRecommendation { + s.VolumeArn = &v + return s +} + +// SetVolumeRecommendationOptions sets the VolumeRecommendationOptions field's value. +func (s *VolumeRecommendation) SetVolumeRecommendationOptions(v []*VolumeRecommendationOption) *VolumeRecommendation { + s.VolumeRecommendationOptions = v + return s +} + +// Describes a recommendation option for an Amazon Elastic Block Store (Amazon +// EBS) instance. +type VolumeRecommendationOption struct { + _ struct{} `type:"structure"` + + // An array of objects that describe a volume configuration. + Configuration *VolumeConfiguration `locationName:"configuration" type:"structure"` + + // The performance risk of the volume recommendation option. + // + // Performance risk is the likelihood of the recommended volume type not meeting + // the performance requirement of your workload. + // + // The lowest performance risk is categorized as 0, and the highest as 5. + PerformanceRisk *float64 `locationName:"performanceRisk" type:"double"` + + // The rank of the volume recommendation option. + // + // The top recommendation option is ranked as 1. + Rank *int64 `locationName:"rank" type:"integer"` +} + +// String returns the string representation +func (s VolumeRecommendationOption) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s VolumeRecommendationOption) GoString() string { + return s.String() +} + +// SetConfiguration sets the Configuration field's value. +func (s *VolumeRecommendationOption) SetConfiguration(v *VolumeConfiguration) *VolumeRecommendationOption { + s.Configuration = v + return s +} + +// SetPerformanceRisk sets the PerformanceRisk field's value. +func (s *VolumeRecommendationOption) SetPerformanceRisk(v float64) *VolumeRecommendationOption { + s.PerformanceRisk = &v + return s +} + +// SetRank sets the Rank field's value. +func (s *VolumeRecommendationOption) SetRank(v int64) *VolumeRecommendationOption { + s.Rank = &v + return s +} + +const ( + // EBSFilterNameFinding is a EBSFilterName enum value + EBSFilterNameFinding = "Finding" +) + +// EBSFilterName_Values returns all elements of the EBSFilterName enum +func EBSFilterName_Values() []string { + return []string{ + EBSFilterNameFinding, + } +} + +const ( + // EBSFindingOptimized is a EBSFinding enum value + EBSFindingOptimized = "Optimized" + + // EBSFindingNotOptimized is a EBSFinding enum value + EBSFindingNotOptimized = "NotOptimized" +) + +// EBSFinding_Values returns all elements of the EBSFinding enum +func EBSFinding_Values() []string { + return []string{ + EBSFindingOptimized, + EBSFindingNotOptimized, + } +} + +const ( + // EBSMetricNameVolumeReadOpsPerSecond is a EBSMetricName enum value + EBSMetricNameVolumeReadOpsPerSecond = "VolumeReadOpsPerSecond" + + // EBSMetricNameVolumeWriteOpsPerSecond is a EBSMetricName enum value + EBSMetricNameVolumeWriteOpsPerSecond = "VolumeWriteOpsPerSecond" + + // EBSMetricNameVolumeReadBytesPerSecond is a EBSMetricName enum value + EBSMetricNameVolumeReadBytesPerSecond = "VolumeReadBytesPerSecond" + + // EBSMetricNameVolumeWriteBytesPerSecond is a EBSMetricName enum value + EBSMetricNameVolumeWriteBytesPerSecond = "VolumeWriteBytesPerSecond" +) + +// EBSMetricName_Values returns all elements of the EBSMetricName enum +func EBSMetricName_Values() []string { + return []string{ + EBSMetricNameVolumeReadOpsPerSecond, + EBSMetricNameVolumeWriteOpsPerSecond, + EBSMetricNameVolumeReadBytesPerSecond, + EBSMetricNameVolumeWriteBytesPerSecond, + } +} + const ( // ExportableAutoScalingGroupFieldAccountId is a ExportableAutoScalingGroupField enum value ExportableAutoScalingGroupFieldAccountId = "AccountId" @@ -3915,6 +4585,9 @@ const ( // RecommendationSourceTypeAutoScalingGroup is a RecommendationSourceType enum value RecommendationSourceTypeAutoScalingGroup = "AutoScalingGroup" + + // RecommendationSourceTypeEbsVolume is a RecommendationSourceType enum value + RecommendationSourceTypeEbsVolume = "EbsVolume" ) // RecommendationSourceType_Values returns all elements of the RecommendationSourceType enum @@ -3922,6 +4595,7 @@ func RecommendationSourceType_Values() []string { return []string{ RecommendationSourceTypeEc2instance, RecommendationSourceTypeAutoScalingGroup, + RecommendationSourceTypeEbsVolume, } } diff --git a/service/computeoptimizer/computeoptimizeriface/interface.go b/service/computeoptimizer/computeoptimizeriface/interface.go index e36f2aefc1b..bcbc6089b7f 100644 --- a/service/computeoptimizer/computeoptimizeriface/interface.go +++ b/service/computeoptimizer/computeoptimizeriface/interface.go @@ -76,6 +76,10 @@ type ComputeOptimizerAPI interface { GetAutoScalingGroupRecommendationsWithContext(aws.Context, *computeoptimizer.GetAutoScalingGroupRecommendationsInput, ...request.Option) (*computeoptimizer.GetAutoScalingGroupRecommendationsOutput, error) GetAutoScalingGroupRecommendationsRequest(*computeoptimizer.GetAutoScalingGroupRecommendationsInput) (*request.Request, *computeoptimizer.GetAutoScalingGroupRecommendationsOutput) + GetEBSVolumeRecommendations(*computeoptimizer.GetEBSVolumeRecommendationsInput) (*computeoptimizer.GetEBSVolumeRecommendationsOutput, error) + GetEBSVolumeRecommendationsWithContext(aws.Context, *computeoptimizer.GetEBSVolumeRecommendationsInput, ...request.Option) (*computeoptimizer.GetEBSVolumeRecommendationsOutput, error) + GetEBSVolumeRecommendationsRequest(*computeoptimizer.GetEBSVolumeRecommendationsInput) (*request.Request, *computeoptimizer.GetEBSVolumeRecommendationsOutput) + GetEC2InstanceRecommendations(*computeoptimizer.GetEC2InstanceRecommendationsInput) (*computeoptimizer.GetEC2InstanceRecommendationsOutput, error) GetEC2InstanceRecommendationsWithContext(aws.Context, *computeoptimizer.GetEC2InstanceRecommendationsInput, ...request.Option) (*computeoptimizer.GetEC2InstanceRecommendationsOutput, error) GetEC2InstanceRecommendationsRequest(*computeoptimizer.GetEC2InstanceRecommendationsInput) (*request.Request, *computeoptimizer.GetEC2InstanceRecommendationsOutput) diff --git a/service/computeoptimizer/doc.go b/service/computeoptimizer/doc.go index b57c0b992c2..e0a64e034d3 100644 --- a/service/computeoptimizer/doc.go +++ b/service/computeoptimizer/doc.go @@ -4,17 +4,17 @@ // requests to AWS Compute Optimizer. // // AWS Compute Optimizer is a service that analyzes the configuration and utilization -// metrics of your AWS resources, such as EC2 instances and Auto Scaling groups. -// It reports whether your resources are optimal, and generates optimization -// recommendations to reduce the cost and improve the performance of your workloads. -// Compute Optimizer also provides recent utilization metric data, as well as -// projected utilization metric data for the recommendations, which you can -// use to evaluate which recommendation provides the best price-performance -// trade-off. The analysis of your usage patterns can help you decide when to -// move or resize your running resources, and still meet your performance and -// capacity requirements. For more information about Compute Optimizer, including -// the required permissions to use the service, see the AWS Compute Optimizer -// User Guide (https://docs.aws.amazon.com/compute-optimizer/latest/ug/). +// metrics of your AWS compute resources, such as EC2 instances, Auto Scaling +// groups, and Amazon EBS volumes. It reports whether your resources are optimal, +// and generates optimization recommendations to reduce the cost and improve +// the performance of your workloads. Compute Optimizer also provides recent +// utilization metric data, as well as projected utilization metric data for +// the recommendations, which you can use to evaluate which recommendation provides +// the best price-performance trade-off. The analysis of your usage patterns +// can help you decide when to move or resize your running resources, and still +// meet your performance and capacity requirements. For more information about +// Compute Optimizer, including the required permissions to use the service, +// see the AWS Compute Optimizer User Guide (https://docs.aws.amazon.com/compute-optimizer/latest/ug/). // // See https://docs.aws.amazon.com/goto/WebAPI/compute-optimizer-2019-11-01 for more information on this service. // diff --git a/service/licensemanager/api.go b/service/licensemanager/api.go index c8838b6aa82..bea3aa29cc7 100644 --- a/service/licensemanager/api.go +++ b/service/licensemanager/api.go @@ -13,76 +13,66 @@ import ( "github.com/aws/aws-sdk-go/private/protocol/jsonrpc" ) -const opCreateLicenseConfiguration = "CreateLicenseConfiguration" +const opAcceptGrant = "AcceptGrant" -// CreateLicenseConfigurationRequest generates a "aws/request.Request" representing the -// client's request for the CreateLicenseConfiguration operation. The "output" return +// AcceptGrantRequest generates a "aws/request.Request" representing the +// client's request for the AcceptGrant operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See CreateLicenseConfiguration for more information on using the CreateLicenseConfiguration +// See AcceptGrant for more information on using the AcceptGrant // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the CreateLicenseConfigurationRequest method. -// req, resp := client.CreateLicenseConfigurationRequest(params) +// // Example sending a request using the AcceptGrantRequest method. +// req, resp := client.AcceptGrantRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CreateLicenseConfiguration -func (c *LicenseManager) CreateLicenseConfigurationRequest(input *CreateLicenseConfigurationInput) (req *request.Request, output *CreateLicenseConfigurationOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/AcceptGrant +func (c *LicenseManager) AcceptGrantRequest(input *AcceptGrantInput) (req *request.Request, output *AcceptGrantOutput) { op := &request.Operation{ - Name: opCreateLicenseConfiguration, + Name: opAcceptGrant, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &CreateLicenseConfigurationInput{} + input = &AcceptGrantInput{} } - output = &CreateLicenseConfigurationOutput{} + output = &AcceptGrantOutput{} req = c.newRequest(op, input, output) return } -// CreateLicenseConfiguration API operation for AWS License Manager. +// AcceptGrant API operation for AWS License Manager. // -// Creates a license configuration. -// -// A license configuration is an abstraction of a customer license agreement -// that can be consumed and enforced by License Manager. Components include -// specifications for the license type (licensing by instance, socket, CPU, -// or vCPU), allowed tenancy (shared tenancy, Dedicated Instance, Dedicated -// Host, or all of these), license affinity to host (how long a license must -// be associated with a host), and the number of licenses purchased and used. +// Accepts the specified grant. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS License Manager's -// API operation CreateLicenseConfiguration for usage and error information. +// API operation AcceptGrant for usage and error information. // // Returned Error Types: +// * ValidationException +// The provided input is not valid. Try your request again. +// // * InvalidParameterValueException // One or more parameter values are not valid. // -// * ServerInternalException -// The server experienced an internal error. Try again. -// -// * ResourceLimitExceededException -// Your resource limits have been exceeded. -// // * AuthorizationException // The AWS user account does not have permission to perform the action. Check // the IAM policy associated with this account. @@ -93,90 +83,98 @@ func (c *LicenseManager) CreateLicenseConfigurationRequest(input *CreateLicenseC // * RateLimitExceededException // Too many requests have been submitted. Try again after a brief wait. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CreateLicenseConfiguration -func (c *LicenseManager) CreateLicenseConfiguration(input *CreateLicenseConfigurationInput) (*CreateLicenseConfigurationOutput, error) { - req, out := c.CreateLicenseConfigurationRequest(input) +// * ResourceLimitExceededException +// Your resource limits have been exceeded. +// +// * ServerInternalException +// The server experienced an internal error. Try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/AcceptGrant +func (c *LicenseManager) AcceptGrant(input *AcceptGrantInput) (*AcceptGrantOutput, error) { + req, out := c.AcceptGrantRequest(input) return out, req.Send() } -// CreateLicenseConfigurationWithContext is the same as CreateLicenseConfiguration with the addition of +// AcceptGrantWithContext is the same as AcceptGrant with the addition of // the ability to pass a context and additional request options. // -// See CreateLicenseConfiguration for details on how to use this API operation. +// See AcceptGrant for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LicenseManager) CreateLicenseConfigurationWithContext(ctx aws.Context, input *CreateLicenseConfigurationInput, opts ...request.Option) (*CreateLicenseConfigurationOutput, error) { - req, out := c.CreateLicenseConfigurationRequest(input) +func (c *LicenseManager) AcceptGrantWithContext(ctx aws.Context, input *AcceptGrantInput, opts ...request.Option) (*AcceptGrantOutput, error) { + req, out := c.AcceptGrantRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opDeleteLicenseConfiguration = "DeleteLicenseConfiguration" +const opCheckInLicense = "CheckInLicense" -// DeleteLicenseConfigurationRequest generates a "aws/request.Request" representing the -// client's request for the DeleteLicenseConfiguration operation. The "output" return +// CheckInLicenseRequest generates a "aws/request.Request" representing the +// client's request for the CheckInLicense operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See DeleteLicenseConfiguration for more information on using the DeleteLicenseConfiguration +// See CheckInLicense for more information on using the CheckInLicense // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the DeleteLicenseConfigurationRequest method. -// req, resp := client.DeleteLicenseConfigurationRequest(params) +// // Example sending a request using the CheckInLicenseRequest method. +// req, resp := client.CheckInLicenseRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/DeleteLicenseConfiguration -func (c *LicenseManager) DeleteLicenseConfigurationRequest(input *DeleteLicenseConfigurationInput) (req *request.Request, output *DeleteLicenseConfigurationOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CheckInLicense +func (c *LicenseManager) CheckInLicenseRequest(input *CheckInLicenseInput) (req *request.Request, output *CheckInLicenseOutput) { op := &request.Operation{ - Name: opDeleteLicenseConfiguration, + Name: opCheckInLicense, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &DeleteLicenseConfigurationInput{} + input = &CheckInLicenseInput{} } - output = &DeleteLicenseConfigurationOutput{} + output = &CheckInLicenseOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// DeleteLicenseConfiguration API operation for AWS License Manager. -// -// Deletes the specified license configuration. +// CheckInLicense API operation for AWS License Manager. // -// You cannot delete a license configuration that is in use. +// Checks in the specified license. Check in a license when it is no longer +// in use. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS License Manager's -// API operation DeleteLicenseConfiguration for usage and error information. +// API operation CheckInLicense for usage and error information. // // Returned Error Types: -// * InvalidParameterValueException -// One or more parameter values are not valid. +// * ValidationException +// The provided input is not valid. Try your request again. // -// * ServerInternalException -// The server experienced an internal error. Try again. +// * ResourceNotFoundException +// The resource cannot be found. +// +// * ConflictException +// There was a conflict processing the request. Try your request again. // // * AuthorizationException // The AWS user account does not have permission to perform the action. Check @@ -188,87 +186,103 @@ func (c *LicenseManager) DeleteLicenseConfigurationRequest(input *DeleteLicenseC // * RateLimitExceededException // Too many requests have been submitted. Try again after a brief wait. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/DeleteLicenseConfiguration -func (c *LicenseManager) DeleteLicenseConfiguration(input *DeleteLicenseConfigurationInput) (*DeleteLicenseConfigurationOutput, error) { - req, out := c.DeleteLicenseConfigurationRequest(input) +// * ServerInternalException +// The server experienced an internal error. Try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CheckInLicense +func (c *LicenseManager) CheckInLicense(input *CheckInLicenseInput) (*CheckInLicenseOutput, error) { + req, out := c.CheckInLicenseRequest(input) return out, req.Send() } -// DeleteLicenseConfigurationWithContext is the same as DeleteLicenseConfiguration with the addition of +// CheckInLicenseWithContext is the same as CheckInLicense with the addition of // the ability to pass a context and additional request options. // -// See DeleteLicenseConfiguration for details on how to use this API operation. +// See CheckInLicense for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LicenseManager) DeleteLicenseConfigurationWithContext(ctx aws.Context, input *DeleteLicenseConfigurationInput, opts ...request.Option) (*DeleteLicenseConfigurationOutput, error) { - req, out := c.DeleteLicenseConfigurationRequest(input) +func (c *LicenseManager) CheckInLicenseWithContext(ctx aws.Context, input *CheckInLicenseInput, opts ...request.Option) (*CheckInLicenseOutput, error) { + req, out := c.CheckInLicenseRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetLicenseConfiguration = "GetLicenseConfiguration" +const opCheckoutBorrowLicense = "CheckoutBorrowLicense" -// GetLicenseConfigurationRequest generates a "aws/request.Request" representing the -// client's request for the GetLicenseConfiguration operation. The "output" return +// CheckoutBorrowLicenseRequest generates a "aws/request.Request" representing the +// client's request for the CheckoutBorrowLicense operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetLicenseConfiguration for more information on using the GetLicenseConfiguration +// See CheckoutBorrowLicense for more information on using the CheckoutBorrowLicense // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetLicenseConfigurationRequest method. -// req, resp := client.GetLicenseConfigurationRequest(params) +// // Example sending a request using the CheckoutBorrowLicenseRequest method. +// req, resp := client.CheckoutBorrowLicenseRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/GetLicenseConfiguration -func (c *LicenseManager) GetLicenseConfigurationRequest(input *GetLicenseConfigurationInput) (req *request.Request, output *GetLicenseConfigurationOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CheckoutBorrowLicense +func (c *LicenseManager) CheckoutBorrowLicenseRequest(input *CheckoutBorrowLicenseInput) (req *request.Request, output *CheckoutBorrowLicenseOutput) { op := &request.Operation{ - Name: opGetLicenseConfiguration, + Name: opCheckoutBorrowLicense, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetLicenseConfigurationInput{} + input = &CheckoutBorrowLicenseInput{} } - output = &GetLicenseConfigurationOutput{} + output = &CheckoutBorrowLicenseOutput{} req = c.newRequest(op, input, output) return } -// GetLicenseConfiguration API operation for AWS License Manager. +// CheckoutBorrowLicense API operation for AWS License Manager. // -// Gets detailed information about the specified license configuration. +// Checks out the specified license for offline use. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS License Manager's -// API operation GetLicenseConfiguration for usage and error information. +// API operation CheckoutBorrowLicense for usage and error information. // // Returned Error Types: -// * InvalidParameterValueException -// One or more parameter values are not valid. +// * ValidationException +// The provided input is not valid. Try your request again. // -// * ServerInternalException -// The server experienced an internal error. Try again. +// * ResourceNotFoundException +// The resource cannot be found. +// +// * NoEntitlementsAllowedException +// There are no entitlements found for this license, or the entitlement maximum +// count is reached. +// +// * EntitlementNotAllowedException +// The entitlement is not allowed. +// +// * UnsupportedDigitalSignatureMethodException +// The digital signature method is unsupported. Try your request again. +// +// * RedirectException +// This is not the correct Region for the resource. Try again. // // * AuthorizationException // The AWS user account does not have permission to perform the action. Check @@ -280,84 +294,100 @@ func (c *LicenseManager) GetLicenseConfigurationRequest(input *GetLicenseConfigu // * RateLimitExceededException // Too many requests have been submitted. Try again after a brief wait. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/GetLicenseConfiguration -func (c *LicenseManager) GetLicenseConfiguration(input *GetLicenseConfigurationInput) (*GetLicenseConfigurationOutput, error) { - req, out := c.GetLicenseConfigurationRequest(input) +// * ServerInternalException +// The server experienced an internal error. Try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CheckoutBorrowLicense +func (c *LicenseManager) CheckoutBorrowLicense(input *CheckoutBorrowLicenseInput) (*CheckoutBorrowLicenseOutput, error) { + req, out := c.CheckoutBorrowLicenseRequest(input) return out, req.Send() } -// GetLicenseConfigurationWithContext is the same as GetLicenseConfiguration with the addition of +// CheckoutBorrowLicenseWithContext is the same as CheckoutBorrowLicense with the addition of // the ability to pass a context and additional request options. // -// See GetLicenseConfiguration for details on how to use this API operation. +// See CheckoutBorrowLicense for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LicenseManager) GetLicenseConfigurationWithContext(ctx aws.Context, input *GetLicenseConfigurationInput, opts ...request.Option) (*GetLicenseConfigurationOutput, error) { - req, out := c.GetLicenseConfigurationRequest(input) +func (c *LicenseManager) CheckoutBorrowLicenseWithContext(ctx aws.Context, input *CheckoutBorrowLicenseInput, opts ...request.Option) (*CheckoutBorrowLicenseOutput, error) { + req, out := c.CheckoutBorrowLicenseRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetServiceSettings = "GetServiceSettings" +const opCheckoutLicense = "CheckoutLicense" -// GetServiceSettingsRequest generates a "aws/request.Request" representing the -// client's request for the GetServiceSettings operation. The "output" return +// CheckoutLicenseRequest generates a "aws/request.Request" representing the +// client's request for the CheckoutLicense operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See GetServiceSettings for more information on using the GetServiceSettings +// See CheckoutLicense for more information on using the CheckoutLicense // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the GetServiceSettingsRequest method. -// req, resp := client.GetServiceSettingsRequest(params) +// // Example sending a request using the CheckoutLicenseRequest method. +// req, resp := client.CheckoutLicenseRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/GetServiceSettings -func (c *LicenseManager) GetServiceSettingsRequest(input *GetServiceSettingsInput) (req *request.Request, output *GetServiceSettingsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CheckoutLicense +func (c *LicenseManager) CheckoutLicenseRequest(input *CheckoutLicenseInput) (req *request.Request, output *CheckoutLicenseOutput) { op := &request.Operation{ - Name: opGetServiceSettings, + Name: opCheckoutLicense, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &GetServiceSettingsInput{} + input = &CheckoutLicenseInput{} } - output = &GetServiceSettingsOutput{} + output = &CheckoutLicenseOutput{} req = c.newRequest(op, input, output) return } -// GetServiceSettings API operation for AWS License Manager. +// CheckoutLicense API operation for AWS License Manager. // -// Gets the License Manager settings for the current Region. +// Checks out the specified license. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS License Manager's -// API operation GetServiceSettings for usage and error information. +// API operation CheckoutLicense for usage and error information. // // Returned Error Types: -// * ServerInternalException -// The server experienced an internal error. Try again. +// * ValidationException +// The provided input is not valid. Try your request again. +// +// * ResourceNotFoundException +// The resource cannot be found. +// +// * NoEntitlementsAllowedException +// There are no entitlements found for this license, or the entitlement maximum +// count is reached. +// +// * UnsupportedDigitalSignatureMethodException +// The digital signature method is unsupported. Try your request again. +// +// * RedirectException +// This is not the correct Region for the resource. Try again. // // * AuthorizationException // The AWS user account does not have permission to perform the action. Check @@ -369,91 +399,94 @@ func (c *LicenseManager) GetServiceSettingsRequest(input *GetServiceSettingsInpu // * RateLimitExceededException // Too many requests have been submitted. Try again after a brief wait. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/GetServiceSettings -func (c *LicenseManager) GetServiceSettings(input *GetServiceSettingsInput) (*GetServiceSettingsOutput, error) { - req, out := c.GetServiceSettingsRequest(input) +// * ServerInternalException +// The server experienced an internal error. Try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CheckoutLicense +func (c *LicenseManager) CheckoutLicense(input *CheckoutLicenseInput) (*CheckoutLicenseOutput, error) { + req, out := c.CheckoutLicenseRequest(input) return out, req.Send() } -// GetServiceSettingsWithContext is the same as GetServiceSettings with the addition of +// CheckoutLicenseWithContext is the same as CheckoutLicense with the addition of // the ability to pass a context and additional request options. // -// See GetServiceSettings for details on how to use this API operation. +// See CheckoutLicense for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LicenseManager) GetServiceSettingsWithContext(ctx aws.Context, input *GetServiceSettingsInput, opts ...request.Option) (*GetServiceSettingsOutput, error) { - req, out := c.GetServiceSettingsRequest(input) +func (c *LicenseManager) CheckoutLicenseWithContext(ctx aws.Context, input *CheckoutLicenseInput, opts ...request.Option) (*CheckoutLicenseOutput, error) { + req, out := c.CheckoutLicenseRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opListAssociationsForLicenseConfiguration = "ListAssociationsForLicenseConfiguration" +const opCreateGrant = "CreateGrant" -// ListAssociationsForLicenseConfigurationRequest generates a "aws/request.Request" representing the -// client's request for the ListAssociationsForLicenseConfiguration operation. The "output" return +// CreateGrantRequest generates a "aws/request.Request" representing the +// client's request for the CreateGrant operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListAssociationsForLicenseConfiguration for more information on using the ListAssociationsForLicenseConfiguration +// See CreateGrant for more information on using the CreateGrant // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the ListAssociationsForLicenseConfigurationRequest method. -// req, resp := client.ListAssociationsForLicenseConfigurationRequest(params) +// // Example sending a request using the CreateGrantRequest method. +// req, resp := client.CreateGrantRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListAssociationsForLicenseConfiguration -func (c *LicenseManager) ListAssociationsForLicenseConfigurationRequest(input *ListAssociationsForLicenseConfigurationInput) (req *request.Request, output *ListAssociationsForLicenseConfigurationOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CreateGrant +func (c *LicenseManager) CreateGrantRequest(input *CreateGrantInput) (req *request.Request, output *CreateGrantOutput) { op := &request.Operation{ - Name: opListAssociationsForLicenseConfiguration, + Name: opCreateGrant, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &ListAssociationsForLicenseConfigurationInput{} + input = &CreateGrantInput{} } - output = &ListAssociationsForLicenseConfigurationOutput{} + output = &CreateGrantOutput{} req = c.newRequest(op, input, output) return } -// ListAssociationsForLicenseConfiguration API operation for AWS License Manager. -// -// Lists the resource associations for the specified license configuration. +// CreateGrant API operation for AWS License Manager. // -// Resource associations need not consume licenses from a license configuration. -// For example, an AMI or a stopped instance might not consume a license (depending -// on the license rules). +// Creates a grant for the specified license. A grant shares the use of license +// entitlements with specific AWS accounts. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS License Manager's -// API operation ListAssociationsForLicenseConfiguration for usage and error information. +// API operation CreateGrant for usage and error information. // // Returned Error Types: +// * ValidationException +// The provided input is not valid. Try your request again. +// // * InvalidParameterValueException // One or more parameter values are not valid. // -// * FilterLimitExceededException -// The request uses too many filters or too many filter values. +// * ResourceLimitExceededException +// Your resource limits have been exceeded. // // * ServerInternalException // The server experienced an internal error. Try again. @@ -462,91 +495,97 @@ func (c *LicenseManager) ListAssociationsForLicenseConfigurationRequest(input *L // The AWS user account does not have permission to perform the action. Check // the IAM policy associated with this account. // -// * AccessDeniedException -// Access to resource denied. -// // * RateLimitExceededException // Too many requests have been submitted. Try again after a brief wait. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListAssociationsForLicenseConfiguration -func (c *LicenseManager) ListAssociationsForLicenseConfiguration(input *ListAssociationsForLicenseConfigurationInput) (*ListAssociationsForLicenseConfigurationOutput, error) { - req, out := c.ListAssociationsForLicenseConfigurationRequest(input) +// * AccessDeniedException +// Access to resource denied. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CreateGrant +func (c *LicenseManager) CreateGrant(input *CreateGrantInput) (*CreateGrantOutput, error) { + req, out := c.CreateGrantRequest(input) return out, req.Send() } -// ListAssociationsForLicenseConfigurationWithContext is the same as ListAssociationsForLicenseConfiguration with the addition of +// CreateGrantWithContext is the same as CreateGrant with the addition of // the ability to pass a context and additional request options. // -// See ListAssociationsForLicenseConfiguration for details on how to use this API operation. +// See CreateGrant for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LicenseManager) ListAssociationsForLicenseConfigurationWithContext(ctx aws.Context, input *ListAssociationsForLicenseConfigurationInput, opts ...request.Option) (*ListAssociationsForLicenseConfigurationOutput, error) { - req, out := c.ListAssociationsForLicenseConfigurationRequest(input) +func (c *LicenseManager) CreateGrantWithContext(ctx aws.Context, input *CreateGrantInput, opts ...request.Option) (*CreateGrantOutput, error) { + req, out := c.CreateGrantRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opListFailuresForLicenseConfigurationOperations = "ListFailuresForLicenseConfigurationOperations" +const opCreateGrantVersion = "CreateGrantVersion" -// ListFailuresForLicenseConfigurationOperationsRequest generates a "aws/request.Request" representing the -// client's request for the ListFailuresForLicenseConfigurationOperations operation. The "output" return +// CreateGrantVersionRequest generates a "aws/request.Request" representing the +// client's request for the CreateGrantVersion operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListFailuresForLicenseConfigurationOperations for more information on using the ListFailuresForLicenseConfigurationOperations +// See CreateGrantVersion for more information on using the CreateGrantVersion // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the ListFailuresForLicenseConfigurationOperationsRequest method. -// req, resp := client.ListFailuresForLicenseConfigurationOperationsRequest(params) +// // Example sending a request using the CreateGrantVersionRequest method. +// req, resp := client.CreateGrantVersionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListFailuresForLicenseConfigurationOperations -func (c *LicenseManager) ListFailuresForLicenseConfigurationOperationsRequest(input *ListFailuresForLicenseConfigurationOperationsInput) (req *request.Request, output *ListFailuresForLicenseConfigurationOperationsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CreateGrantVersion +func (c *LicenseManager) CreateGrantVersionRequest(input *CreateGrantVersionInput) (req *request.Request, output *CreateGrantVersionOutput) { op := &request.Operation{ - Name: opListFailuresForLicenseConfigurationOperations, + Name: opCreateGrantVersion, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &ListFailuresForLicenseConfigurationOperationsInput{} + input = &CreateGrantVersionInput{} } - output = &ListFailuresForLicenseConfigurationOperationsOutput{} + output = &CreateGrantVersionOutput{} req = c.newRequest(op, input, output) return } -// ListFailuresForLicenseConfigurationOperations API operation for AWS License Manager. +// CreateGrantVersion API operation for AWS License Manager. // -// Lists the license configuration operations that failed. +// Creates a new version of the specified grant. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS License Manager's -// API operation ListFailuresForLicenseConfigurationOperations for usage and error information. +// API operation CreateGrantVersion for usage and error information. // // Returned Error Types: +// * ValidationException +// The provided input is not valid. Try your request again. +// // * InvalidParameterValueException // One or more parameter values are not valid. // +// * ResourceLimitExceededException +// Your resource limits have been exceeded. +// // * ServerInternalException // The server experienced an internal error. Try again. // @@ -560,90 +599,90 @@ func (c *LicenseManager) ListFailuresForLicenseConfigurationOperationsRequest(in // * RateLimitExceededException // Too many requests have been submitted. Try again after a brief wait. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListFailuresForLicenseConfigurationOperations -func (c *LicenseManager) ListFailuresForLicenseConfigurationOperations(input *ListFailuresForLicenseConfigurationOperationsInput) (*ListFailuresForLicenseConfigurationOperationsOutput, error) { - req, out := c.ListFailuresForLicenseConfigurationOperationsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CreateGrantVersion +func (c *LicenseManager) CreateGrantVersion(input *CreateGrantVersionInput) (*CreateGrantVersionOutput, error) { + req, out := c.CreateGrantVersionRequest(input) return out, req.Send() } -// ListFailuresForLicenseConfigurationOperationsWithContext is the same as ListFailuresForLicenseConfigurationOperations with the addition of +// CreateGrantVersionWithContext is the same as CreateGrantVersion with the addition of // the ability to pass a context and additional request options. // -// See ListFailuresForLicenseConfigurationOperations for details on how to use this API operation. +// See CreateGrantVersion for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LicenseManager) ListFailuresForLicenseConfigurationOperationsWithContext(ctx aws.Context, input *ListFailuresForLicenseConfigurationOperationsInput, opts ...request.Option) (*ListFailuresForLicenseConfigurationOperationsOutput, error) { - req, out := c.ListFailuresForLicenseConfigurationOperationsRequest(input) +func (c *LicenseManager) CreateGrantVersionWithContext(ctx aws.Context, input *CreateGrantVersionInput, opts ...request.Option) (*CreateGrantVersionOutput, error) { + req, out := c.CreateGrantVersionRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opListLicenseConfigurations = "ListLicenseConfigurations" +const opCreateLicense = "CreateLicense" -// ListLicenseConfigurationsRequest generates a "aws/request.Request" representing the -// client's request for the ListLicenseConfigurations operation. The "output" return +// CreateLicenseRequest generates a "aws/request.Request" representing the +// client's request for the CreateLicense operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListLicenseConfigurations for more information on using the ListLicenseConfigurations +// See CreateLicense for more information on using the CreateLicense // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the ListLicenseConfigurationsRequest method. -// req, resp := client.ListLicenseConfigurationsRequest(params) +// // Example sending a request using the CreateLicenseRequest method. +// req, resp := client.CreateLicenseRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListLicenseConfigurations -func (c *LicenseManager) ListLicenseConfigurationsRequest(input *ListLicenseConfigurationsInput) (req *request.Request, output *ListLicenseConfigurationsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CreateLicense +func (c *LicenseManager) CreateLicenseRequest(input *CreateLicenseInput) (req *request.Request, output *CreateLicenseOutput) { op := &request.Operation{ - Name: opListLicenseConfigurations, + Name: opCreateLicense, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &ListLicenseConfigurationsInput{} + input = &CreateLicenseInput{} } - output = &ListLicenseConfigurationsOutput{} + output = &CreateLicenseOutput{} req = c.newRequest(op, input, output) return } -// ListLicenseConfigurations API operation for AWS License Manager. +// CreateLicense API operation for AWS License Manager. // -// Lists the license configurations for your account. +// Creates a license. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS License Manager's -// API operation ListLicenseConfigurations for usage and error information. +// API operation CreateLicense for usage and error information. // // Returned Error Types: +// * ValidationException +// The provided input is not valid. Try your request again. +// // * InvalidParameterValueException // One or more parameter values are not valid. // -// * ServerInternalException -// The server experienced an internal error. Try again. -// -// * FilterLimitExceededException -// The request uses too many filters or too many filter values. +// * RedirectException +// This is not the correct Region for the resource. Try again. // // * AuthorizationException // The AWS user account does not have permission to perform the action. Check @@ -655,80 +694,90 @@ func (c *LicenseManager) ListLicenseConfigurationsRequest(input *ListLicenseConf // * RateLimitExceededException // Too many requests have been submitted. Try again after a brief wait. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListLicenseConfigurations -func (c *LicenseManager) ListLicenseConfigurations(input *ListLicenseConfigurationsInput) (*ListLicenseConfigurationsOutput, error) { - req, out := c.ListLicenseConfigurationsRequest(input) +// * ServerInternalException +// The server experienced an internal error. Try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CreateLicense +func (c *LicenseManager) CreateLicense(input *CreateLicenseInput) (*CreateLicenseOutput, error) { + req, out := c.CreateLicenseRequest(input) return out, req.Send() } -// ListLicenseConfigurationsWithContext is the same as ListLicenseConfigurations with the addition of +// CreateLicenseWithContext is the same as CreateLicense with the addition of // the ability to pass a context and additional request options. // -// See ListLicenseConfigurations for details on how to use this API operation. +// See CreateLicense for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LicenseManager) ListLicenseConfigurationsWithContext(ctx aws.Context, input *ListLicenseConfigurationsInput, opts ...request.Option) (*ListLicenseConfigurationsOutput, error) { - req, out := c.ListLicenseConfigurationsRequest(input) +func (c *LicenseManager) CreateLicenseWithContext(ctx aws.Context, input *CreateLicenseInput, opts ...request.Option) (*CreateLicenseOutput, error) { + req, out := c.CreateLicenseRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opListLicenseSpecificationsForResource = "ListLicenseSpecificationsForResource" +const opCreateLicenseConfiguration = "CreateLicenseConfiguration" -// ListLicenseSpecificationsForResourceRequest generates a "aws/request.Request" representing the -// client's request for the ListLicenseSpecificationsForResource operation. The "output" return +// CreateLicenseConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the CreateLicenseConfiguration operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListLicenseSpecificationsForResource for more information on using the ListLicenseSpecificationsForResource +// See CreateLicenseConfiguration for more information on using the CreateLicenseConfiguration // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the ListLicenseSpecificationsForResourceRequest method. -// req, resp := client.ListLicenseSpecificationsForResourceRequest(params) +// // Example sending a request using the CreateLicenseConfigurationRequest method. +// req, resp := client.CreateLicenseConfigurationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListLicenseSpecificationsForResource -func (c *LicenseManager) ListLicenseSpecificationsForResourceRequest(input *ListLicenseSpecificationsForResourceInput) (req *request.Request, output *ListLicenseSpecificationsForResourceOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CreateLicenseConfiguration +func (c *LicenseManager) CreateLicenseConfigurationRequest(input *CreateLicenseConfigurationInput) (req *request.Request, output *CreateLicenseConfigurationOutput) { op := &request.Operation{ - Name: opListLicenseSpecificationsForResource, + Name: opCreateLicenseConfiguration, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &ListLicenseSpecificationsForResourceInput{} + input = &CreateLicenseConfigurationInput{} } - output = &ListLicenseSpecificationsForResourceOutput{} + output = &CreateLicenseConfigurationOutput{} req = c.newRequest(op, input, output) return } -// ListLicenseSpecificationsForResource API operation for AWS License Manager. -// -// Describes the license configurations for the specified resource. +// CreateLicenseConfiguration API operation for AWS License Manager. // -// Returns awserr.Error for service API and SDK errors. Use runtime type assertions -// with awserr.Error's Code and Message methods to get detailed information about -// the error. +// Creates a license configuration. // -// See the AWS API reference guide for AWS License Manager's -// API operation ListLicenseSpecificationsForResource for usage and error information. +// A license configuration is an abstraction of a customer license agreement +// that can be consumed and enforced by License Manager. Components include +// specifications for the license type (licensing by instance, socket, CPU, +// or vCPU), allowed tenancy (shared tenancy, Dedicated Instance, Dedicated +// Host, or all of these), license affinity to host (how long a license must +// be associated with a host), and the number of licenses purchased and used. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS License Manager's +// API operation CreateLicenseConfiguration for usage and error information. // // Returned Error Types: // * InvalidParameterValueException @@ -737,6 +786,9 @@ func (c *LicenseManager) ListLicenseSpecificationsForResourceRequest(input *List // * ServerInternalException // The server experienced an internal error. Try again. // +// * ResourceLimitExceededException +// Your resource limits have been exceeded. +// // * AuthorizationException // The AWS user account does not have permission to perform the action. Check // the IAM policy associated with this account. @@ -747,185 +799,189 @@ func (c *LicenseManager) ListLicenseSpecificationsForResourceRequest(input *List // * RateLimitExceededException // Too many requests have been submitted. Try again after a brief wait. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListLicenseSpecificationsForResource -func (c *LicenseManager) ListLicenseSpecificationsForResource(input *ListLicenseSpecificationsForResourceInput) (*ListLicenseSpecificationsForResourceOutput, error) { - req, out := c.ListLicenseSpecificationsForResourceRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CreateLicenseConfiguration +func (c *LicenseManager) CreateLicenseConfiguration(input *CreateLicenseConfigurationInput) (*CreateLicenseConfigurationOutput, error) { + req, out := c.CreateLicenseConfigurationRequest(input) return out, req.Send() } -// ListLicenseSpecificationsForResourceWithContext is the same as ListLicenseSpecificationsForResource with the addition of +// CreateLicenseConfigurationWithContext is the same as CreateLicenseConfiguration with the addition of // the ability to pass a context and additional request options. // -// See ListLicenseSpecificationsForResource for details on how to use this API operation. +// See CreateLicenseConfiguration for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LicenseManager) ListLicenseSpecificationsForResourceWithContext(ctx aws.Context, input *ListLicenseSpecificationsForResourceInput, opts ...request.Option) (*ListLicenseSpecificationsForResourceOutput, error) { - req, out := c.ListLicenseSpecificationsForResourceRequest(input) +func (c *LicenseManager) CreateLicenseConfigurationWithContext(ctx aws.Context, input *CreateLicenseConfigurationInput, opts ...request.Option) (*CreateLicenseConfigurationOutput, error) { + req, out := c.CreateLicenseConfigurationRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opListResourceInventory = "ListResourceInventory" +const opCreateLicenseVersion = "CreateLicenseVersion" -// ListResourceInventoryRequest generates a "aws/request.Request" representing the -// client's request for the ListResourceInventory operation. The "output" return +// CreateLicenseVersionRequest generates a "aws/request.Request" representing the +// client's request for the CreateLicenseVersion operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListResourceInventory for more information on using the ListResourceInventory +// See CreateLicenseVersion for more information on using the CreateLicenseVersion // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the ListResourceInventoryRequest method. -// req, resp := client.ListResourceInventoryRequest(params) +// // Example sending a request using the CreateLicenseVersionRequest method. +// req, resp := client.CreateLicenseVersionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListResourceInventory -func (c *LicenseManager) ListResourceInventoryRequest(input *ListResourceInventoryInput) (req *request.Request, output *ListResourceInventoryOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CreateLicenseVersion +func (c *LicenseManager) CreateLicenseVersionRequest(input *CreateLicenseVersionInput) (req *request.Request, output *CreateLicenseVersionOutput) { op := &request.Operation{ - Name: opListResourceInventory, + Name: opCreateLicenseVersion, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &ListResourceInventoryInput{} + input = &CreateLicenseVersionInput{} } - output = &ListResourceInventoryOutput{} + output = &CreateLicenseVersionOutput{} req = c.newRequest(op, input, output) return } -// ListResourceInventory API operation for AWS License Manager. +// CreateLicenseVersion API operation for AWS License Manager. // -// Lists resources managed using Systems Manager inventory. +// Creates a new version of the specified license. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS License Manager's -// API operation ListResourceInventory for usage and error information. +// API operation CreateLicenseVersion for usage and error information. // // Returned Error Types: -// * InvalidParameterValueException -// One or more parameter values are not valid. +// * ValidationException +// The provided input is not valid. Try your request again. // -// * ServerInternalException -// The server experienced an internal error. Try again. +// * AccessDeniedException +// Access to resource denied. // -// * FilterLimitExceededException -// The request uses too many filters or too many filter values. +// * ResourceNotFoundException +// The resource cannot be found. // -// * FailedDependencyException -// A dependency required to run the API is missing. +// * RedirectException +// This is not the correct Region for the resource. Try again. +// +// * ConflictException +// There was a conflict processing the request. Try your request again. +// +// * ServerInternalException +// The server experienced an internal error. Try again. // // * AuthorizationException // The AWS user account does not have permission to perform the action. Check // the IAM policy associated with this account. // -// * AccessDeniedException -// Access to resource denied. -// // * RateLimitExceededException // Too many requests have been submitted. Try again after a brief wait. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListResourceInventory -func (c *LicenseManager) ListResourceInventory(input *ListResourceInventoryInput) (*ListResourceInventoryOutput, error) { - req, out := c.ListResourceInventoryRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CreateLicenseVersion +func (c *LicenseManager) CreateLicenseVersion(input *CreateLicenseVersionInput) (*CreateLicenseVersionOutput, error) { + req, out := c.CreateLicenseVersionRequest(input) return out, req.Send() } -// ListResourceInventoryWithContext is the same as ListResourceInventory with the addition of +// CreateLicenseVersionWithContext is the same as CreateLicenseVersion with the addition of // the ability to pass a context and additional request options. // -// See ListResourceInventory for details on how to use this API operation. +// See CreateLicenseVersion for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LicenseManager) ListResourceInventoryWithContext(ctx aws.Context, input *ListResourceInventoryInput, opts ...request.Option) (*ListResourceInventoryOutput, error) { - req, out := c.ListResourceInventoryRequest(input) +func (c *LicenseManager) CreateLicenseVersionWithContext(ctx aws.Context, input *CreateLicenseVersionInput, opts ...request.Option) (*CreateLicenseVersionOutput, error) { + req, out := c.CreateLicenseVersionRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opListTagsForResource = "ListTagsForResource" +const opCreateToken = "CreateToken" -// ListTagsForResourceRequest generates a "aws/request.Request" representing the -// client's request for the ListTagsForResource operation. The "output" return +// CreateTokenRequest generates a "aws/request.Request" representing the +// client's request for the CreateToken operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListTagsForResource for more information on using the ListTagsForResource +// See CreateToken for more information on using the CreateToken // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the ListTagsForResourceRequest method. -// req, resp := client.ListTagsForResourceRequest(params) +// // Example sending a request using the CreateTokenRequest method. +// req, resp := client.CreateTokenRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListTagsForResource -func (c *LicenseManager) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CreateToken +func (c *LicenseManager) CreateTokenRequest(input *CreateTokenInput) (req *request.Request, output *CreateTokenOutput) { op := &request.Operation{ - Name: opListTagsForResource, + Name: opCreateToken, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &ListTagsForResourceInput{} + input = &CreateTokenInput{} } - output = &ListTagsForResourceOutput{} + output = &CreateTokenOutput{} req = c.newRequest(op, input, output) return } -// ListTagsForResource API operation for AWS License Manager. +// CreateToken API operation for AWS License Manager. // -// Lists the tags for the specified license configuration. +// Creates a long-lived token. +// +// A refresh token is a JWT token used to get an access token. With an access +// token, you can call AssumeRoleWithWebIdentity to get role credentials that +// you can use to call License Manager to manage the specified license. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS License Manager's -// API operation ListTagsForResource for usage and error information. +// API operation CreateToken for usage and error information. // // Returned Error Types: -// * InvalidParameterValueException -// One or more parameter values are not valid. -// -// * ServerInternalException -// The server experienced an internal error. Try again. +// * ValidationException +// The provided input is not valid. Try your request again. // // * AuthorizationException // The AWS user account does not have permission to perform the action. Check @@ -937,93 +993,100 @@ func (c *LicenseManager) ListTagsForResourceRequest(input *ListTagsForResourceIn // * RateLimitExceededException // Too many requests have been submitted. Try again after a brief wait. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListTagsForResource -func (c *LicenseManager) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { - req, out := c.ListTagsForResourceRequest(input) +// * ResourceLimitExceededException +// Your resource limits have been exceeded. +// +// * ServerInternalException +// The server experienced an internal error. Try again. +// +// * ResourceNotFoundException +// The resource cannot be found. +// +// * RedirectException +// This is not the correct Region for the resource. Try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/CreateToken +func (c *LicenseManager) CreateToken(input *CreateTokenInput) (*CreateTokenOutput, error) { + req, out := c.CreateTokenRequest(input) return out, req.Send() } -// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of +// CreateTokenWithContext is the same as CreateToken with the addition of // the ability to pass a context and additional request options. // -// See ListTagsForResource for details on how to use this API operation. +// See CreateToken for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LicenseManager) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) { - req, out := c.ListTagsForResourceRequest(input) +func (c *LicenseManager) CreateTokenWithContext(ctx aws.Context, input *CreateTokenInput, opts ...request.Option) (*CreateTokenOutput, error) { + req, out := c.CreateTokenRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opListUsageForLicenseConfiguration = "ListUsageForLicenseConfiguration" +const opDeleteGrant = "DeleteGrant" -// ListUsageForLicenseConfigurationRequest generates a "aws/request.Request" representing the -// client's request for the ListUsageForLicenseConfiguration operation. The "output" return +// DeleteGrantRequest generates a "aws/request.Request" representing the +// client's request for the DeleteGrant operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListUsageForLicenseConfiguration for more information on using the ListUsageForLicenseConfiguration +// See DeleteGrant for more information on using the DeleteGrant // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the ListUsageForLicenseConfigurationRequest method. -// req, resp := client.ListUsageForLicenseConfigurationRequest(params) +// // Example sending a request using the DeleteGrantRequest method. +// req, resp := client.DeleteGrantRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListUsageForLicenseConfiguration -func (c *LicenseManager) ListUsageForLicenseConfigurationRequest(input *ListUsageForLicenseConfigurationInput) (req *request.Request, output *ListUsageForLicenseConfigurationOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/DeleteGrant +func (c *LicenseManager) DeleteGrantRequest(input *DeleteGrantInput) (req *request.Request, output *DeleteGrantOutput) { op := &request.Operation{ - Name: opListUsageForLicenseConfiguration, + Name: opDeleteGrant, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &ListUsageForLicenseConfigurationInput{} + input = &DeleteGrantInput{} } - output = &ListUsageForLicenseConfigurationOutput{} + output = &DeleteGrantOutput{} req = c.newRequest(op, input, output) return } -// ListUsageForLicenseConfiguration API operation for AWS License Manager. +// DeleteGrant API operation for AWS License Manager. // -// Lists all license usage records for a license configuration, displaying license -// consumption details by resource at a selected point in time. Use this action -// to audit the current license consumption for any license inventory and configuration. +// Deletes the specified grant. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS License Manager's -// API operation ListUsageForLicenseConfiguration for usage and error information. +// API operation DeleteGrant for usage and error information. // // Returned Error Types: +// * ValidationException +// The provided input is not valid. Try your request again. +// // * InvalidParameterValueException // One or more parameter values are not valid. // -// * FilterLimitExceededException -// The request uses too many filters or too many filter values. -// -// * ServerInternalException -// The server experienced an internal error. Try again. -// // * AuthorizationException // The AWS user account does not have permission to perform the action. Check // the IAM policy associated with this account. @@ -1034,86 +1097,100 @@ func (c *LicenseManager) ListUsageForLicenseConfigurationRequest(input *ListUsag // * RateLimitExceededException // Too many requests have been submitted. Try again after a brief wait. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListUsageForLicenseConfiguration -func (c *LicenseManager) ListUsageForLicenseConfiguration(input *ListUsageForLicenseConfigurationInput) (*ListUsageForLicenseConfigurationOutput, error) { - req, out := c.ListUsageForLicenseConfigurationRequest(input) +// * ResourceLimitExceededException +// Your resource limits have been exceeded. +// +// * ServerInternalException +// The server experienced an internal error. Try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/DeleteGrant +func (c *LicenseManager) DeleteGrant(input *DeleteGrantInput) (*DeleteGrantOutput, error) { + req, out := c.DeleteGrantRequest(input) return out, req.Send() } -// ListUsageForLicenseConfigurationWithContext is the same as ListUsageForLicenseConfiguration with the addition of +// DeleteGrantWithContext is the same as DeleteGrant with the addition of // the ability to pass a context and additional request options. // -// See ListUsageForLicenseConfiguration for details on how to use this API operation. +// See DeleteGrant for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LicenseManager) ListUsageForLicenseConfigurationWithContext(ctx aws.Context, input *ListUsageForLicenseConfigurationInput, opts ...request.Option) (*ListUsageForLicenseConfigurationOutput, error) { - req, out := c.ListUsageForLicenseConfigurationRequest(input) +func (c *LicenseManager) DeleteGrantWithContext(ctx aws.Context, input *DeleteGrantInput, opts ...request.Option) (*DeleteGrantOutput, error) { + req, out := c.DeleteGrantRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opTagResource = "TagResource" +const opDeleteLicense = "DeleteLicense" -// TagResourceRequest generates a "aws/request.Request" representing the -// client's request for the TagResource operation. The "output" return +// DeleteLicenseRequest generates a "aws/request.Request" representing the +// client's request for the DeleteLicense operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See TagResource for more information on using the TagResource +// See DeleteLicense for more information on using the DeleteLicense // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the TagResourceRequest method. -// req, resp := client.TagResourceRequest(params) +// // Example sending a request using the DeleteLicenseRequest method. +// req, resp := client.DeleteLicenseRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/TagResource -func (c *LicenseManager) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/DeleteLicense +func (c *LicenseManager) DeleteLicenseRequest(input *DeleteLicenseInput) (req *request.Request, output *DeleteLicenseOutput) { op := &request.Operation{ - Name: opTagResource, + Name: opDeleteLicense, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &TagResourceInput{} + input = &DeleteLicenseInput{} } - output = &TagResourceOutput{} + output = &DeleteLicenseOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// TagResource API operation for AWS License Manager. +// DeleteLicense API operation for AWS License Manager. // -// Adds the specified tags to the specified license configuration. +// Deletes the specified license. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS License Manager's -// API operation TagResource for usage and error information. +// API operation DeleteLicense for usage and error information. // // Returned Error Types: +// * ValidationException +// The provided input is not valid. Try your request again. +// // * InvalidParameterValueException // One or more parameter values are not valid. // +// * RedirectException +// This is not the correct Region for the resource. Try again. +// +// * ConflictException +// There was a conflict processing the request. Try your request again. +// // * ServerInternalException // The server experienced an internal error. Try again. // @@ -1127,81 +1204,83 @@ func (c *LicenseManager) TagResourceRequest(input *TagResourceInput) (req *reque // * RateLimitExceededException // Too many requests have been submitted. Try again after a brief wait. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/TagResource -func (c *LicenseManager) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { - req, out := c.TagResourceRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/DeleteLicense +func (c *LicenseManager) DeleteLicense(input *DeleteLicenseInput) (*DeleteLicenseOutput, error) { + req, out := c.DeleteLicenseRequest(input) return out, req.Send() } -// TagResourceWithContext is the same as TagResource with the addition of +// DeleteLicenseWithContext is the same as DeleteLicense with the addition of // the ability to pass a context and additional request options. // -// See TagResource for details on how to use this API operation. +// See DeleteLicense for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LicenseManager) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { - req, out := c.TagResourceRequest(input) +func (c *LicenseManager) DeleteLicenseWithContext(ctx aws.Context, input *DeleteLicenseInput, opts ...request.Option) (*DeleteLicenseOutput, error) { + req, out := c.DeleteLicenseRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUntagResource = "UntagResource" +const opDeleteLicenseConfiguration = "DeleteLicenseConfiguration" -// UntagResourceRequest generates a "aws/request.Request" representing the -// client's request for the UntagResource operation. The "output" return +// DeleteLicenseConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the DeleteLicenseConfiguration operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See UntagResource for more information on using the UntagResource +// See DeleteLicenseConfiguration for more information on using the DeleteLicenseConfiguration // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the UntagResourceRequest method. -// req, resp := client.UntagResourceRequest(params) +// // Example sending a request using the DeleteLicenseConfigurationRequest method. +// req, resp := client.DeleteLicenseConfigurationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/UntagResource -func (c *LicenseManager) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/DeleteLicenseConfiguration +func (c *LicenseManager) DeleteLicenseConfigurationRequest(input *DeleteLicenseConfigurationInput) (req *request.Request, output *DeleteLicenseConfigurationOutput) { op := &request.Operation{ - Name: opUntagResource, + Name: opDeleteLicenseConfiguration, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &UntagResourceInput{} + input = &DeleteLicenseConfigurationInput{} } - output = &UntagResourceOutput{} + output = &DeleteLicenseConfigurationOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// UntagResource API operation for AWS License Manager. +// DeleteLicenseConfiguration API operation for AWS License Manager. // -// Removes the specified tags from the specified license configuration. +// Deletes the specified license configuration. +// +// You cannot delete a license configuration that is in use. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS License Manager's -// API operation UntagResource for usage and error information. +// API operation DeleteLicenseConfiguration for usage and error information. // // Returned Error Types: // * InvalidParameterValueException @@ -1220,88 +1299,85 @@ func (c *LicenseManager) UntagResourceRequest(input *UntagResourceInput) (req *r // * RateLimitExceededException // Too many requests have been submitted. Try again after a brief wait. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/UntagResource -func (c *LicenseManager) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { - req, out := c.UntagResourceRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/DeleteLicenseConfiguration +func (c *LicenseManager) DeleteLicenseConfiguration(input *DeleteLicenseConfigurationInput) (*DeleteLicenseConfigurationOutput, error) { + req, out := c.DeleteLicenseConfigurationRequest(input) return out, req.Send() } -// UntagResourceWithContext is the same as UntagResource with the addition of +// DeleteLicenseConfigurationWithContext is the same as DeleteLicenseConfiguration with the addition of // the ability to pass a context and additional request options. // -// See UntagResource for details on how to use this API operation. +// See DeleteLicenseConfiguration for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LicenseManager) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { - req, out := c.UntagResourceRequest(input) +func (c *LicenseManager) DeleteLicenseConfigurationWithContext(ctx aws.Context, input *DeleteLicenseConfigurationInput, opts ...request.Option) (*DeleteLicenseConfigurationOutput, error) { + req, out := c.DeleteLicenseConfigurationRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateLicenseConfiguration = "UpdateLicenseConfiguration" +const opDeleteToken = "DeleteToken" -// UpdateLicenseConfigurationRequest generates a "aws/request.Request" representing the -// client's request for the UpdateLicenseConfiguration operation. The "output" return +// DeleteTokenRequest generates a "aws/request.Request" representing the +// client's request for the DeleteToken operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See UpdateLicenseConfiguration for more information on using the UpdateLicenseConfiguration +// See DeleteToken for more information on using the DeleteToken // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the UpdateLicenseConfigurationRequest method. -// req, resp := client.UpdateLicenseConfigurationRequest(params) +// // Example sending a request using the DeleteTokenRequest method. +// req, resp := client.DeleteTokenRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/UpdateLicenseConfiguration -func (c *LicenseManager) UpdateLicenseConfigurationRequest(input *UpdateLicenseConfigurationInput) (req *request.Request, output *UpdateLicenseConfigurationOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/DeleteToken +func (c *LicenseManager) DeleteTokenRequest(input *DeleteTokenInput) (req *request.Request, output *DeleteTokenOutput) { op := &request.Operation{ - Name: opUpdateLicenseConfiguration, + Name: opDeleteToken, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &UpdateLicenseConfigurationInput{} + input = &DeleteTokenInput{} } - output = &UpdateLicenseConfigurationOutput{} + output = &DeleteTokenOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// UpdateLicenseConfiguration API operation for AWS License Manager. +// DeleteToken API operation for AWS License Manager. // -// Modifies the attributes of an existing license configuration. +// Deletes the specified token. Must be called in the license home Region. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS License Manager's -// API operation UpdateLicenseConfiguration for usage and error information. +// API operation DeleteToken for usage and error information. // // Returned Error Types: -// * InvalidParameterValueException -// One or more parameter values are not valid. -// -// * ServerInternalException -// The server experienced an internal error. Try again. +// * ValidationException +// The provided input is not valid. Try your request again. // // * AuthorizationException // The AWS user account does not have permission to perform the action. Check @@ -1313,104 +1389,193 @@ func (c *LicenseManager) UpdateLicenseConfigurationRequest(input *UpdateLicenseC // * RateLimitExceededException // Too many requests have been submitted. Try again after a brief wait. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/UpdateLicenseConfiguration -func (c *LicenseManager) UpdateLicenseConfiguration(input *UpdateLicenseConfigurationInput) (*UpdateLicenseConfigurationOutput, error) { - req, out := c.UpdateLicenseConfigurationRequest(input) +// * ServerInternalException +// The server experienced an internal error. Try again. +// +// * ResourceNotFoundException +// The resource cannot be found. +// +// * RedirectException +// This is not the correct Region for the resource. Try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/DeleteToken +func (c *LicenseManager) DeleteToken(input *DeleteTokenInput) (*DeleteTokenOutput, error) { + req, out := c.DeleteTokenRequest(input) return out, req.Send() } -// UpdateLicenseConfigurationWithContext is the same as UpdateLicenseConfiguration with the addition of +// DeleteTokenWithContext is the same as DeleteToken with the addition of // the ability to pass a context and additional request options. // -// See UpdateLicenseConfiguration for details on how to use this API operation. +// See DeleteToken for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LicenseManager) UpdateLicenseConfigurationWithContext(ctx aws.Context, input *UpdateLicenseConfigurationInput, opts ...request.Option) (*UpdateLicenseConfigurationOutput, error) { - req, out := c.UpdateLicenseConfigurationRequest(input) +func (c *LicenseManager) DeleteTokenWithContext(ctx aws.Context, input *DeleteTokenInput, opts ...request.Option) (*DeleteTokenOutput, error) { + req, out := c.DeleteTokenRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateLicenseSpecificationsForResource = "UpdateLicenseSpecificationsForResource" +const opExtendLicenseConsumption = "ExtendLicenseConsumption" -// UpdateLicenseSpecificationsForResourceRequest generates a "aws/request.Request" representing the -// client's request for the UpdateLicenseSpecificationsForResource operation. The "output" return +// ExtendLicenseConsumptionRequest generates a "aws/request.Request" representing the +// client's request for the ExtendLicenseConsumption operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See UpdateLicenseSpecificationsForResource for more information on using the UpdateLicenseSpecificationsForResource +// See ExtendLicenseConsumption for more information on using the ExtendLicenseConsumption // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the UpdateLicenseSpecificationsForResourceRequest method. -// req, resp := client.UpdateLicenseSpecificationsForResourceRequest(params) +// // Example sending a request using the ExtendLicenseConsumptionRequest method. +// req, resp := client.ExtendLicenseConsumptionRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/UpdateLicenseSpecificationsForResource -func (c *LicenseManager) UpdateLicenseSpecificationsForResourceRequest(input *UpdateLicenseSpecificationsForResourceInput) (req *request.Request, output *UpdateLicenseSpecificationsForResourceOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ExtendLicenseConsumption +func (c *LicenseManager) ExtendLicenseConsumptionRequest(input *ExtendLicenseConsumptionInput) (req *request.Request, output *ExtendLicenseConsumptionOutput) { op := &request.Operation{ - Name: opUpdateLicenseSpecificationsForResource, + Name: opExtendLicenseConsumption, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &UpdateLicenseSpecificationsForResourceInput{} + input = &ExtendLicenseConsumptionInput{} } - output = &UpdateLicenseSpecificationsForResourceOutput{} + output = &ExtendLicenseConsumptionOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// UpdateLicenseSpecificationsForResource API operation for AWS License Manager. +// ExtendLicenseConsumption API operation for AWS License Manager. // -// Adds or removes the specified license configurations for the specified AWS -// resource. -// -// You can update the license specifications of AMIs, instances, and hosts. -// You cannot update the license specifications for launch templates and AWS -// CloudFormation templates, as they send license configurations to the operation -// that creates the resource. +// Extends the expiration date for license consumption. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS License Manager's -// API operation UpdateLicenseSpecificationsForResource for usage and error information. +// API operation ExtendLicenseConsumption for usage and error information. // // Returned Error Types: +// * ValidationException +// The provided input is not valid. Try your request again. +// // * InvalidParameterValueException // One or more parameter values are not valid. // -// * InvalidResourceStateException -// License Manager cannot allocate a license to a resource because of its state. +// * AuthorizationException +// The AWS user account does not have permission to perform the action. Check +// the IAM policy associated with this account. // -// For example, you cannot allocate a license to an instance in the process -// of shutting down. +// * AccessDeniedException +// Access to resource denied. // -// * LicenseUsageException -// You do not have enough licenses available to support a new resource launch. +// * RateLimitExceededException +// Too many requests have been submitted. Try again after a brief wait. // // * ServerInternalException // The server experienced an internal error. Try again. // +// * ResourceNotFoundException +// The resource cannot be found. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ExtendLicenseConsumption +func (c *LicenseManager) ExtendLicenseConsumption(input *ExtendLicenseConsumptionInput) (*ExtendLicenseConsumptionOutput, error) { + req, out := c.ExtendLicenseConsumptionRequest(input) + return out, req.Send() +} + +// ExtendLicenseConsumptionWithContext is the same as ExtendLicenseConsumption with the addition of +// the ability to pass a context and additional request options. +// +// See ExtendLicenseConsumption for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LicenseManager) ExtendLicenseConsumptionWithContext(ctx aws.Context, input *ExtendLicenseConsumptionInput, opts ...request.Option) (*ExtendLicenseConsumptionOutput, error) { + req, out := c.ExtendLicenseConsumptionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetAccessToken = "GetAccessToken" + +// GetAccessTokenRequest generates a "aws/request.Request" representing the +// client's request for the GetAccessToken operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetAccessToken for more information on using the GetAccessToken +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the GetAccessTokenRequest method. +// req, resp := client.GetAccessTokenRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/GetAccessToken +func (c *LicenseManager) GetAccessTokenRequest(input *GetAccessTokenInput) (req *request.Request, output *GetAccessTokenOutput) { + op := &request.Operation{ + Name: opGetAccessToken, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetAccessTokenInput{} + } + + output = &GetAccessTokenOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetAccessToken API operation for AWS License Manager. +// +// Gets a temporary access token to use with AssumeRoleWithWebIdentity. Access +// tokens are valid for one hour. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS License Manager's +// API operation GetAccessToken for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The provided input is not valid. Try your request again. +// // * AuthorizationException // The AWS user account does not have permission to perform the action. Check // the IAM policy associated with this account. @@ -1421,86 +1586,94 @@ func (c *LicenseManager) UpdateLicenseSpecificationsForResourceRequest(input *Up // * RateLimitExceededException // Too many requests have been submitted. Try again after a brief wait. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/UpdateLicenseSpecificationsForResource -func (c *LicenseManager) UpdateLicenseSpecificationsForResource(input *UpdateLicenseSpecificationsForResourceInput) (*UpdateLicenseSpecificationsForResourceOutput, error) { - req, out := c.UpdateLicenseSpecificationsForResourceRequest(input) +// * ServerInternalException +// The server experienced an internal error. Try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/GetAccessToken +func (c *LicenseManager) GetAccessToken(input *GetAccessTokenInput) (*GetAccessTokenOutput, error) { + req, out := c.GetAccessTokenRequest(input) return out, req.Send() } -// UpdateLicenseSpecificationsForResourceWithContext is the same as UpdateLicenseSpecificationsForResource with the addition of +// GetAccessTokenWithContext is the same as GetAccessToken with the addition of // the ability to pass a context and additional request options. // -// See UpdateLicenseSpecificationsForResource for details on how to use this API operation. +// See GetAccessToken for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LicenseManager) UpdateLicenseSpecificationsForResourceWithContext(ctx aws.Context, input *UpdateLicenseSpecificationsForResourceInput, opts ...request.Option) (*UpdateLicenseSpecificationsForResourceOutput, error) { - req, out := c.UpdateLicenseSpecificationsForResourceRequest(input) +func (c *LicenseManager) GetAccessTokenWithContext(ctx aws.Context, input *GetAccessTokenInput, opts ...request.Option) (*GetAccessTokenOutput, error) { + req, out := c.GetAccessTokenRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUpdateServiceSettings = "UpdateServiceSettings" +const opGetGrant = "GetGrant" -// UpdateServiceSettingsRequest generates a "aws/request.Request" representing the -// client's request for the UpdateServiceSettings operation. The "output" return +// GetGrantRequest generates a "aws/request.Request" representing the +// client's request for the GetGrant operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See UpdateServiceSettings for more information on using the UpdateServiceSettings +// See GetGrant for more information on using the GetGrant // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the UpdateServiceSettingsRequest method. -// req, resp := client.UpdateServiceSettingsRequest(params) +// // Example sending a request using the GetGrantRequest method. +// req, resp := client.GetGrantRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/UpdateServiceSettings -func (c *LicenseManager) UpdateServiceSettingsRequest(input *UpdateServiceSettingsInput) (req *request.Request, output *UpdateServiceSettingsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/GetGrant +func (c *LicenseManager) GetGrantRequest(input *GetGrantInput) (req *request.Request, output *GetGrantOutput) { op := &request.Operation{ - Name: opUpdateServiceSettings, + Name: opGetGrant, HTTPMethod: "POST", HTTPPath: "/", } if input == nil { - input = &UpdateServiceSettingsInput{} + input = &GetGrantInput{} } - output = &UpdateServiceSettingsOutput{} + output = &GetGrantOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// UpdateServiceSettings API operation for AWS License Manager. +// GetGrant API operation for AWS License Manager. // -// Updates License Manager settings for the current Region. +// Gets detailed information about the specified grant. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for AWS License Manager's -// API operation UpdateServiceSettings for usage and error information. +// API operation GetGrant for usage and error information. // // Returned Error Types: +// * ValidationException +// The provided input is not valid. Try your request again. +// // * InvalidParameterValueException // One or more parameter values are not valid. // +// * ResourceLimitExceededException +// Your resource limits have been exceeded. +// // * ServerInternalException // The server experienced an internal error. Try again. // @@ -1514,380 +1687,5952 @@ func (c *LicenseManager) UpdateServiceSettingsRequest(input *UpdateServiceSettin // * RateLimitExceededException // Too many requests have been submitted. Try again after a brief wait. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/UpdateServiceSettings -func (c *LicenseManager) UpdateServiceSettings(input *UpdateServiceSettingsInput) (*UpdateServiceSettingsOutput, error) { - req, out := c.UpdateServiceSettingsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/GetGrant +func (c *LicenseManager) GetGrant(input *GetGrantInput) (*GetGrantOutput, error) { + req, out := c.GetGrantRequest(input) return out, req.Send() } -// UpdateServiceSettingsWithContext is the same as UpdateServiceSettings with the addition of +// GetGrantWithContext is the same as GetGrant with the addition of // the ability to pass a context and additional request options. // -// See UpdateServiceSettings for details on how to use this API operation. +// See GetGrant for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *LicenseManager) UpdateServiceSettingsWithContext(ctx aws.Context, input *UpdateServiceSettingsInput, opts ...request.Option) (*UpdateServiceSettingsOutput, error) { - req, out := c.UpdateServiceSettingsRequest(input) +func (c *LicenseManager) GetGrantWithContext(ctx aws.Context, input *GetGrantInput, opts ...request.Option) (*GetGrantOutput, error) { + req, out := c.GetGrantRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// Access to resource denied. -type AccessDeniedException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - - Message_ *string `locationName:"Message" type:"string"` -} - -// String returns the string representation -func (s AccessDeniedException) String() string { - return awsutil.Prettify(s) -} +const opGetLicense = "GetLicense" -// GoString returns the string representation -func (s AccessDeniedException) GoString() string { - return s.String() -} +// GetLicenseRequest generates a "aws/request.Request" representing the +// client's request for the GetLicense operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetLicense for more information on using the GetLicense +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the GetLicenseRequest method. +// req, resp := client.GetLicenseRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/GetLicense +func (c *LicenseManager) GetLicenseRequest(input *GetLicenseInput) (req *request.Request, output *GetLicenseOutput) { + op := &request.Operation{ + Name: opGetLicense, + HTTPMethod: "POST", + HTTPPath: "/", + } -func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { - return &AccessDeniedException{ - RespMetadata: v, + if input == nil { + input = &GetLicenseInput{} } -} -// Code returns the exception type name. -func (s *AccessDeniedException) Code() string { - return "AccessDeniedException" + output = &GetLicenseOutput{} + req = c.newRequest(op, input, output) + return } -// Message returns the exception's message. -func (s *AccessDeniedException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" +// GetLicense API operation for AWS License Manager. +// +// Gets detailed information about the specified license. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS License Manager's +// API operation GetLicense for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The provided input is not valid. Try your request again. +// +// * InvalidParameterValueException +// One or more parameter values are not valid. +// +// * AuthorizationException +// The AWS user account does not have permission to perform the action. Check +// the IAM policy associated with this account. +// +// * AccessDeniedException +// Access to resource denied. +// +// * RateLimitExceededException +// Too many requests have been submitted. Try again after a brief wait. +// +// * ServerInternalException +// The server experienced an internal error. Try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/GetLicense +func (c *LicenseManager) GetLicense(input *GetLicenseInput) (*GetLicenseOutput, error) { + req, out := c.GetLicenseRequest(input) + return out, req.Send() } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *AccessDeniedException) OrigErr() error { - return nil +// GetLicenseWithContext is the same as GetLicense with the addition of +// the ability to pass a context and additional request options. +// +// See GetLicense for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LicenseManager) GetLicenseWithContext(ctx aws.Context, input *GetLicenseInput, opts ...request.Option) (*GetLicenseOutput, error) { + req, out := c.GetLicenseRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() } -func (s *AccessDeniedException) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) -} +const opGetLicenseConfiguration = "GetLicenseConfiguration" -// Status code returns the HTTP status code for the request's response error. -func (s *AccessDeniedException) StatusCode() int { - return s.RespMetadata.StatusCode -} +// GetLicenseConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the GetLicenseConfiguration operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetLicenseConfiguration for more information on using the GetLicenseConfiguration +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the GetLicenseConfigurationRequest method. +// req, resp := client.GetLicenseConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/GetLicenseConfiguration +func (c *LicenseManager) GetLicenseConfigurationRequest(input *GetLicenseConfigurationInput) (req *request.Request, output *GetLicenseConfigurationOutput) { + op := &request.Operation{ + Name: opGetLicenseConfiguration, + HTTPMethod: "POST", + HTTPPath: "/", + } -// RequestID returns the service's response RequestID for request. -func (s *AccessDeniedException) RequestID() string { - return s.RespMetadata.RequestID + if input == nil { + input = &GetLicenseConfigurationInput{} + } + + output = &GetLicenseConfigurationOutput{} + req = c.newRequest(op, input, output) + return } -// The AWS user account does not have permission to perform the action. Check -// the IAM policy associated with this account. +// GetLicenseConfiguration API operation for AWS License Manager. +// +// Gets detailed information about the specified license configuration. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS License Manager's +// API operation GetLicenseConfiguration for usage and error information. +// +// Returned Error Types: +// * InvalidParameterValueException +// One or more parameter values are not valid. +// +// * ServerInternalException +// The server experienced an internal error. Try again. +// +// * AuthorizationException +// The AWS user account does not have permission to perform the action. Check +// the IAM policy associated with this account. +// +// * AccessDeniedException +// Access to resource denied. +// +// * RateLimitExceededException +// Too many requests have been submitted. Try again after a brief wait. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/GetLicenseConfiguration +func (c *LicenseManager) GetLicenseConfiguration(input *GetLicenseConfigurationInput) (*GetLicenseConfigurationOutput, error) { + req, out := c.GetLicenseConfigurationRequest(input) + return out, req.Send() +} + +// GetLicenseConfigurationWithContext is the same as GetLicenseConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See GetLicenseConfiguration for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LicenseManager) GetLicenseConfigurationWithContext(ctx aws.Context, input *GetLicenseConfigurationInput, opts ...request.Option) (*GetLicenseConfigurationOutput, error) { + req, out := c.GetLicenseConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetLicenseUsage = "GetLicenseUsage" + +// GetLicenseUsageRequest generates a "aws/request.Request" representing the +// client's request for the GetLicenseUsage operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetLicenseUsage for more information on using the GetLicenseUsage +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the GetLicenseUsageRequest method. +// req, resp := client.GetLicenseUsageRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/GetLicenseUsage +func (c *LicenseManager) GetLicenseUsageRequest(input *GetLicenseUsageInput) (req *request.Request, output *GetLicenseUsageOutput) { + op := &request.Operation{ + Name: opGetLicenseUsage, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetLicenseUsageInput{} + } + + output = &GetLicenseUsageOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetLicenseUsage API operation for AWS License Manager. +// +// Gets detailed information about the usage of the specified license. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS License Manager's +// API operation GetLicenseUsage for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The provided input is not valid. Try your request again. +// +// * InvalidParameterValueException +// One or more parameter values are not valid. +// +// * AuthorizationException +// The AWS user account does not have permission to perform the action. Check +// the IAM policy associated with this account. +// +// * AccessDeniedException +// Access to resource denied. +// +// * RateLimitExceededException +// Too many requests have been submitted. Try again after a brief wait. +// +// * ServerInternalException +// The server experienced an internal error. Try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/GetLicenseUsage +func (c *LicenseManager) GetLicenseUsage(input *GetLicenseUsageInput) (*GetLicenseUsageOutput, error) { + req, out := c.GetLicenseUsageRequest(input) + return out, req.Send() +} + +// GetLicenseUsageWithContext is the same as GetLicenseUsage with the addition of +// the ability to pass a context and additional request options. +// +// See GetLicenseUsage for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LicenseManager) GetLicenseUsageWithContext(ctx aws.Context, input *GetLicenseUsageInput, opts ...request.Option) (*GetLicenseUsageOutput, error) { + req, out := c.GetLicenseUsageRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetServiceSettings = "GetServiceSettings" + +// GetServiceSettingsRequest generates a "aws/request.Request" representing the +// client's request for the GetServiceSettings operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetServiceSettings for more information on using the GetServiceSettings +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the GetServiceSettingsRequest method. +// req, resp := client.GetServiceSettingsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/GetServiceSettings +func (c *LicenseManager) GetServiceSettingsRequest(input *GetServiceSettingsInput) (req *request.Request, output *GetServiceSettingsOutput) { + op := &request.Operation{ + Name: opGetServiceSettings, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetServiceSettingsInput{} + } + + output = &GetServiceSettingsOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetServiceSettings API operation for AWS License Manager. +// +// Gets the License Manager settings for the current Region. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS License Manager's +// API operation GetServiceSettings for usage and error information. +// +// Returned Error Types: +// * ServerInternalException +// The server experienced an internal error. Try again. +// +// * AuthorizationException +// The AWS user account does not have permission to perform the action. Check +// the IAM policy associated with this account. +// +// * AccessDeniedException +// Access to resource denied. +// +// * RateLimitExceededException +// Too many requests have been submitted. Try again after a brief wait. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/GetServiceSettings +func (c *LicenseManager) GetServiceSettings(input *GetServiceSettingsInput) (*GetServiceSettingsOutput, error) { + req, out := c.GetServiceSettingsRequest(input) + return out, req.Send() +} + +// GetServiceSettingsWithContext is the same as GetServiceSettings with the addition of +// the ability to pass a context and additional request options. +// +// See GetServiceSettings for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LicenseManager) GetServiceSettingsWithContext(ctx aws.Context, input *GetServiceSettingsInput, opts ...request.Option) (*GetServiceSettingsOutput, error) { + req, out := c.GetServiceSettingsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListAssociationsForLicenseConfiguration = "ListAssociationsForLicenseConfiguration" + +// ListAssociationsForLicenseConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the ListAssociationsForLicenseConfiguration operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListAssociationsForLicenseConfiguration for more information on using the ListAssociationsForLicenseConfiguration +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the ListAssociationsForLicenseConfigurationRequest method. +// req, resp := client.ListAssociationsForLicenseConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListAssociationsForLicenseConfiguration +func (c *LicenseManager) ListAssociationsForLicenseConfigurationRequest(input *ListAssociationsForLicenseConfigurationInput) (req *request.Request, output *ListAssociationsForLicenseConfigurationOutput) { + op := &request.Operation{ + Name: opListAssociationsForLicenseConfiguration, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ListAssociationsForLicenseConfigurationInput{} + } + + output = &ListAssociationsForLicenseConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListAssociationsForLicenseConfiguration API operation for AWS License Manager. +// +// Lists the resource associations for the specified license configuration. +// +// Resource associations need not consume licenses from a license configuration. +// For example, an AMI or a stopped instance might not consume a license (depending +// on the license rules). +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS License Manager's +// API operation ListAssociationsForLicenseConfiguration for usage and error information. +// +// Returned Error Types: +// * InvalidParameterValueException +// One or more parameter values are not valid. +// +// * FilterLimitExceededException +// The request uses too many filters or too many filter values. +// +// * ServerInternalException +// The server experienced an internal error. Try again. +// +// * AuthorizationException +// The AWS user account does not have permission to perform the action. Check +// the IAM policy associated with this account. +// +// * AccessDeniedException +// Access to resource denied. +// +// * RateLimitExceededException +// Too many requests have been submitted. Try again after a brief wait. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListAssociationsForLicenseConfiguration +func (c *LicenseManager) ListAssociationsForLicenseConfiguration(input *ListAssociationsForLicenseConfigurationInput) (*ListAssociationsForLicenseConfigurationOutput, error) { + req, out := c.ListAssociationsForLicenseConfigurationRequest(input) + return out, req.Send() +} + +// ListAssociationsForLicenseConfigurationWithContext is the same as ListAssociationsForLicenseConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See ListAssociationsForLicenseConfiguration for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LicenseManager) ListAssociationsForLicenseConfigurationWithContext(ctx aws.Context, input *ListAssociationsForLicenseConfigurationInput, opts ...request.Option) (*ListAssociationsForLicenseConfigurationOutput, error) { + req, out := c.ListAssociationsForLicenseConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListDistributedGrants = "ListDistributedGrants" + +// ListDistributedGrantsRequest generates a "aws/request.Request" representing the +// client's request for the ListDistributedGrants operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListDistributedGrants for more information on using the ListDistributedGrants +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the ListDistributedGrantsRequest method. +// req, resp := client.ListDistributedGrantsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListDistributedGrants +func (c *LicenseManager) ListDistributedGrantsRequest(input *ListDistributedGrantsInput) (req *request.Request, output *ListDistributedGrantsOutput) { + op := &request.Operation{ + Name: opListDistributedGrants, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ListDistributedGrantsInput{} + } + + output = &ListDistributedGrantsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListDistributedGrants API operation for AWS License Manager. +// +// Lists the grants distributed for the specified license. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS License Manager's +// API operation ListDistributedGrants for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The provided input is not valid. Try your request again. +// +// * InvalidParameterValueException +// One or more parameter values are not valid. +// +// * ResourceLimitExceededException +// Your resource limits have been exceeded. +// +// * ServerInternalException +// The server experienced an internal error. Try again. +// +// * AuthorizationException +// The AWS user account does not have permission to perform the action. Check +// the IAM policy associated with this account. +// +// * AccessDeniedException +// Access to resource denied. +// +// * RateLimitExceededException +// Too many requests have been submitted. Try again after a brief wait. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListDistributedGrants +func (c *LicenseManager) ListDistributedGrants(input *ListDistributedGrantsInput) (*ListDistributedGrantsOutput, error) { + req, out := c.ListDistributedGrantsRequest(input) + return out, req.Send() +} + +// ListDistributedGrantsWithContext is the same as ListDistributedGrants with the addition of +// the ability to pass a context and additional request options. +// +// See ListDistributedGrants for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LicenseManager) ListDistributedGrantsWithContext(ctx aws.Context, input *ListDistributedGrantsInput, opts ...request.Option) (*ListDistributedGrantsOutput, error) { + req, out := c.ListDistributedGrantsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListFailuresForLicenseConfigurationOperations = "ListFailuresForLicenseConfigurationOperations" + +// ListFailuresForLicenseConfigurationOperationsRequest generates a "aws/request.Request" representing the +// client's request for the ListFailuresForLicenseConfigurationOperations operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListFailuresForLicenseConfigurationOperations for more information on using the ListFailuresForLicenseConfigurationOperations +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the ListFailuresForLicenseConfigurationOperationsRequest method. +// req, resp := client.ListFailuresForLicenseConfigurationOperationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListFailuresForLicenseConfigurationOperations +func (c *LicenseManager) ListFailuresForLicenseConfigurationOperationsRequest(input *ListFailuresForLicenseConfigurationOperationsInput) (req *request.Request, output *ListFailuresForLicenseConfigurationOperationsOutput) { + op := &request.Operation{ + Name: opListFailuresForLicenseConfigurationOperations, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ListFailuresForLicenseConfigurationOperationsInput{} + } + + output = &ListFailuresForLicenseConfigurationOperationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListFailuresForLicenseConfigurationOperations API operation for AWS License Manager. +// +// Lists the license configuration operations that failed. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS License Manager's +// API operation ListFailuresForLicenseConfigurationOperations for usage and error information. +// +// Returned Error Types: +// * InvalidParameterValueException +// One or more parameter values are not valid. +// +// * ServerInternalException +// The server experienced an internal error. Try again. +// +// * AuthorizationException +// The AWS user account does not have permission to perform the action. Check +// the IAM policy associated with this account. +// +// * AccessDeniedException +// Access to resource denied. +// +// * RateLimitExceededException +// Too many requests have been submitted. Try again after a brief wait. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListFailuresForLicenseConfigurationOperations +func (c *LicenseManager) ListFailuresForLicenseConfigurationOperations(input *ListFailuresForLicenseConfigurationOperationsInput) (*ListFailuresForLicenseConfigurationOperationsOutput, error) { + req, out := c.ListFailuresForLicenseConfigurationOperationsRequest(input) + return out, req.Send() +} + +// ListFailuresForLicenseConfigurationOperationsWithContext is the same as ListFailuresForLicenseConfigurationOperations with the addition of +// the ability to pass a context and additional request options. +// +// See ListFailuresForLicenseConfigurationOperations for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LicenseManager) ListFailuresForLicenseConfigurationOperationsWithContext(ctx aws.Context, input *ListFailuresForLicenseConfigurationOperationsInput, opts ...request.Option) (*ListFailuresForLicenseConfigurationOperationsOutput, error) { + req, out := c.ListFailuresForLicenseConfigurationOperationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListLicenseConfigurations = "ListLicenseConfigurations" + +// ListLicenseConfigurationsRequest generates a "aws/request.Request" representing the +// client's request for the ListLicenseConfigurations operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListLicenseConfigurations for more information on using the ListLicenseConfigurations +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the ListLicenseConfigurationsRequest method. +// req, resp := client.ListLicenseConfigurationsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListLicenseConfigurations +func (c *LicenseManager) ListLicenseConfigurationsRequest(input *ListLicenseConfigurationsInput) (req *request.Request, output *ListLicenseConfigurationsOutput) { + op := &request.Operation{ + Name: opListLicenseConfigurations, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ListLicenseConfigurationsInput{} + } + + output = &ListLicenseConfigurationsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListLicenseConfigurations API operation for AWS License Manager. +// +// Lists the license configurations for your account. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS License Manager's +// API operation ListLicenseConfigurations for usage and error information. +// +// Returned Error Types: +// * InvalidParameterValueException +// One or more parameter values are not valid. +// +// * ServerInternalException +// The server experienced an internal error. Try again. +// +// * FilterLimitExceededException +// The request uses too many filters or too many filter values. +// +// * AuthorizationException +// The AWS user account does not have permission to perform the action. Check +// the IAM policy associated with this account. +// +// * AccessDeniedException +// Access to resource denied. +// +// * RateLimitExceededException +// Too many requests have been submitted. Try again after a brief wait. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListLicenseConfigurations +func (c *LicenseManager) ListLicenseConfigurations(input *ListLicenseConfigurationsInput) (*ListLicenseConfigurationsOutput, error) { + req, out := c.ListLicenseConfigurationsRequest(input) + return out, req.Send() +} + +// ListLicenseConfigurationsWithContext is the same as ListLicenseConfigurations with the addition of +// the ability to pass a context and additional request options. +// +// See ListLicenseConfigurations for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LicenseManager) ListLicenseConfigurationsWithContext(ctx aws.Context, input *ListLicenseConfigurationsInput, opts ...request.Option) (*ListLicenseConfigurationsOutput, error) { + req, out := c.ListLicenseConfigurationsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListLicenseSpecificationsForResource = "ListLicenseSpecificationsForResource" + +// ListLicenseSpecificationsForResourceRequest generates a "aws/request.Request" representing the +// client's request for the ListLicenseSpecificationsForResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListLicenseSpecificationsForResource for more information on using the ListLicenseSpecificationsForResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the ListLicenseSpecificationsForResourceRequest method. +// req, resp := client.ListLicenseSpecificationsForResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListLicenseSpecificationsForResource +func (c *LicenseManager) ListLicenseSpecificationsForResourceRequest(input *ListLicenseSpecificationsForResourceInput) (req *request.Request, output *ListLicenseSpecificationsForResourceOutput) { + op := &request.Operation{ + Name: opListLicenseSpecificationsForResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ListLicenseSpecificationsForResourceInput{} + } + + output = &ListLicenseSpecificationsForResourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListLicenseSpecificationsForResource API operation for AWS License Manager. +// +// Describes the license configurations for the specified resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS License Manager's +// API operation ListLicenseSpecificationsForResource for usage and error information. +// +// Returned Error Types: +// * InvalidParameterValueException +// One or more parameter values are not valid. +// +// * ServerInternalException +// The server experienced an internal error. Try again. +// +// * AuthorizationException +// The AWS user account does not have permission to perform the action. Check +// the IAM policy associated with this account. +// +// * AccessDeniedException +// Access to resource denied. +// +// * RateLimitExceededException +// Too many requests have been submitted. Try again after a brief wait. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListLicenseSpecificationsForResource +func (c *LicenseManager) ListLicenseSpecificationsForResource(input *ListLicenseSpecificationsForResourceInput) (*ListLicenseSpecificationsForResourceOutput, error) { + req, out := c.ListLicenseSpecificationsForResourceRequest(input) + return out, req.Send() +} + +// ListLicenseSpecificationsForResourceWithContext is the same as ListLicenseSpecificationsForResource with the addition of +// the ability to pass a context and additional request options. +// +// See ListLicenseSpecificationsForResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LicenseManager) ListLicenseSpecificationsForResourceWithContext(ctx aws.Context, input *ListLicenseSpecificationsForResourceInput, opts ...request.Option) (*ListLicenseSpecificationsForResourceOutput, error) { + req, out := c.ListLicenseSpecificationsForResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListLicenseVersions = "ListLicenseVersions" + +// ListLicenseVersionsRequest generates a "aws/request.Request" representing the +// client's request for the ListLicenseVersions operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListLicenseVersions for more information on using the ListLicenseVersions +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the ListLicenseVersionsRequest method. +// req, resp := client.ListLicenseVersionsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListLicenseVersions +func (c *LicenseManager) ListLicenseVersionsRequest(input *ListLicenseVersionsInput) (req *request.Request, output *ListLicenseVersionsOutput) { + op := &request.Operation{ + Name: opListLicenseVersions, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ListLicenseVersionsInput{} + } + + output = &ListLicenseVersionsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListLicenseVersions API operation for AWS License Manager. +// +// Lists all versions of the specified license. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS License Manager's +// API operation ListLicenseVersions for usage and error information. +// +// Returned Error Types: +// * InvalidParameterValueException +// One or more parameter values are not valid. +// +// * AuthorizationException +// The AWS user account does not have permission to perform the action. Check +// the IAM policy associated with this account. +// +// * AccessDeniedException +// Access to resource denied. +// +// * RateLimitExceededException +// Too many requests have been submitted. Try again after a brief wait. +// +// * ServerInternalException +// The server experienced an internal error. Try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListLicenseVersions +func (c *LicenseManager) ListLicenseVersions(input *ListLicenseVersionsInput) (*ListLicenseVersionsOutput, error) { + req, out := c.ListLicenseVersionsRequest(input) + return out, req.Send() +} + +// ListLicenseVersionsWithContext is the same as ListLicenseVersions with the addition of +// the ability to pass a context and additional request options. +// +// See ListLicenseVersions for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LicenseManager) ListLicenseVersionsWithContext(ctx aws.Context, input *ListLicenseVersionsInput, opts ...request.Option) (*ListLicenseVersionsOutput, error) { + req, out := c.ListLicenseVersionsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListLicenses = "ListLicenses" + +// ListLicensesRequest generates a "aws/request.Request" representing the +// client's request for the ListLicenses operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListLicenses for more information on using the ListLicenses +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the ListLicensesRequest method. +// req, resp := client.ListLicensesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListLicenses +func (c *LicenseManager) ListLicensesRequest(input *ListLicensesInput) (req *request.Request, output *ListLicensesOutput) { + op := &request.Operation{ + Name: opListLicenses, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ListLicensesInput{} + } + + output = &ListLicensesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListLicenses API operation for AWS License Manager. +// +// Lists the licenses for your account. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS License Manager's +// API operation ListLicenses for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The provided input is not valid. Try your request again. +// +// * InvalidParameterValueException +// One or more parameter values are not valid. +// +// * AuthorizationException +// The AWS user account does not have permission to perform the action. Check +// the IAM policy associated with this account. +// +// * AccessDeniedException +// Access to resource denied. +// +// * RateLimitExceededException +// Too many requests have been submitted. Try again after a brief wait. +// +// * ServerInternalException +// The server experienced an internal error. Try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListLicenses +func (c *LicenseManager) ListLicenses(input *ListLicensesInput) (*ListLicensesOutput, error) { + req, out := c.ListLicensesRequest(input) + return out, req.Send() +} + +// ListLicensesWithContext is the same as ListLicenses with the addition of +// the ability to pass a context and additional request options. +// +// See ListLicenses for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LicenseManager) ListLicensesWithContext(ctx aws.Context, input *ListLicensesInput, opts ...request.Option) (*ListLicensesOutput, error) { + req, out := c.ListLicensesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListReceivedGrants = "ListReceivedGrants" + +// ListReceivedGrantsRequest generates a "aws/request.Request" representing the +// client's request for the ListReceivedGrants operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListReceivedGrants for more information on using the ListReceivedGrants +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the ListReceivedGrantsRequest method. +// req, resp := client.ListReceivedGrantsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListReceivedGrants +func (c *LicenseManager) ListReceivedGrantsRequest(input *ListReceivedGrantsInput) (req *request.Request, output *ListReceivedGrantsOutput) { + op := &request.Operation{ + Name: opListReceivedGrants, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ListReceivedGrantsInput{} + } + + output = &ListReceivedGrantsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListReceivedGrants API operation for AWS License Manager. +// +// Lists grants that are received but not accepted. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS License Manager's +// API operation ListReceivedGrants for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The provided input is not valid. Try your request again. +// +// * InvalidParameterValueException +// One or more parameter values are not valid. +// +// * ResourceLimitExceededException +// Your resource limits have been exceeded. +// +// * ServerInternalException +// The server experienced an internal error. Try again. +// +// * AuthorizationException +// The AWS user account does not have permission to perform the action. Check +// the IAM policy associated with this account. +// +// * AccessDeniedException +// Access to resource denied. +// +// * RateLimitExceededException +// Too many requests have been submitted. Try again after a brief wait. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListReceivedGrants +func (c *LicenseManager) ListReceivedGrants(input *ListReceivedGrantsInput) (*ListReceivedGrantsOutput, error) { + req, out := c.ListReceivedGrantsRequest(input) + return out, req.Send() +} + +// ListReceivedGrantsWithContext is the same as ListReceivedGrants with the addition of +// the ability to pass a context and additional request options. +// +// See ListReceivedGrants for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LicenseManager) ListReceivedGrantsWithContext(ctx aws.Context, input *ListReceivedGrantsInput, opts ...request.Option) (*ListReceivedGrantsOutput, error) { + req, out := c.ListReceivedGrantsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListReceivedLicenses = "ListReceivedLicenses" + +// ListReceivedLicensesRequest generates a "aws/request.Request" representing the +// client's request for the ListReceivedLicenses operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListReceivedLicenses for more information on using the ListReceivedLicenses +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the ListReceivedLicensesRequest method. +// req, resp := client.ListReceivedLicensesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListReceivedLicenses +func (c *LicenseManager) ListReceivedLicensesRequest(input *ListReceivedLicensesInput) (req *request.Request, output *ListReceivedLicensesOutput) { + op := &request.Operation{ + Name: opListReceivedLicenses, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ListReceivedLicensesInput{} + } + + output = &ListReceivedLicensesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListReceivedLicenses API operation for AWS License Manager. +// +// Lists received licenses. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS License Manager's +// API operation ListReceivedLicenses for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The provided input is not valid. Try your request again. +// +// * InvalidParameterValueException +// One or more parameter values are not valid. +// +// * ResourceLimitExceededException +// Your resource limits have been exceeded. +// +// * ServerInternalException +// The server experienced an internal error. Try again. +// +// * AuthorizationException +// The AWS user account does not have permission to perform the action. Check +// the IAM policy associated with this account. +// +// * AccessDeniedException +// Access to resource denied. +// +// * RateLimitExceededException +// Too many requests have been submitted. Try again after a brief wait. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListReceivedLicenses +func (c *LicenseManager) ListReceivedLicenses(input *ListReceivedLicensesInput) (*ListReceivedLicensesOutput, error) { + req, out := c.ListReceivedLicensesRequest(input) + return out, req.Send() +} + +// ListReceivedLicensesWithContext is the same as ListReceivedLicenses with the addition of +// the ability to pass a context and additional request options. +// +// See ListReceivedLicenses for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LicenseManager) ListReceivedLicensesWithContext(ctx aws.Context, input *ListReceivedLicensesInput, opts ...request.Option) (*ListReceivedLicensesOutput, error) { + req, out := c.ListReceivedLicensesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListResourceInventory = "ListResourceInventory" + +// ListResourceInventoryRequest generates a "aws/request.Request" representing the +// client's request for the ListResourceInventory operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListResourceInventory for more information on using the ListResourceInventory +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the ListResourceInventoryRequest method. +// req, resp := client.ListResourceInventoryRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListResourceInventory +func (c *LicenseManager) ListResourceInventoryRequest(input *ListResourceInventoryInput) (req *request.Request, output *ListResourceInventoryOutput) { + op := &request.Operation{ + Name: opListResourceInventory, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ListResourceInventoryInput{} + } + + output = &ListResourceInventoryOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListResourceInventory API operation for AWS License Manager. +// +// Lists resources managed using Systems Manager inventory. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS License Manager's +// API operation ListResourceInventory for usage and error information. +// +// Returned Error Types: +// * InvalidParameterValueException +// One or more parameter values are not valid. +// +// * ServerInternalException +// The server experienced an internal error. Try again. +// +// * FilterLimitExceededException +// The request uses too many filters or too many filter values. +// +// * FailedDependencyException +// A dependency required to run the API is missing. +// +// * AuthorizationException +// The AWS user account does not have permission to perform the action. Check +// the IAM policy associated with this account. +// +// * AccessDeniedException +// Access to resource denied. +// +// * RateLimitExceededException +// Too many requests have been submitted. Try again after a brief wait. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListResourceInventory +func (c *LicenseManager) ListResourceInventory(input *ListResourceInventoryInput) (*ListResourceInventoryOutput, error) { + req, out := c.ListResourceInventoryRequest(input) + return out, req.Send() +} + +// ListResourceInventoryWithContext is the same as ListResourceInventory with the addition of +// the ability to pass a context and additional request options. +// +// See ListResourceInventory for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LicenseManager) ListResourceInventoryWithContext(ctx aws.Context, input *ListResourceInventoryInput, opts ...request.Option) (*ListResourceInventoryOutput, error) { + req, out := c.ListResourceInventoryRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListTagsForResource = "ListTagsForResource" + +// ListTagsForResourceRequest generates a "aws/request.Request" representing the +// client's request for the ListTagsForResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListTagsForResource for more information on using the ListTagsForResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the ListTagsForResourceRequest method. +// req, resp := client.ListTagsForResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListTagsForResource +func (c *LicenseManager) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { + op := &request.Operation{ + Name: opListTagsForResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ListTagsForResourceInput{} + } + + output = &ListTagsForResourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTagsForResource API operation for AWS License Manager. +// +// Lists the tags for the specified license configuration. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS License Manager's +// API operation ListTagsForResource for usage and error information. +// +// Returned Error Types: +// * InvalidParameterValueException +// One or more parameter values are not valid. +// +// * ServerInternalException +// The server experienced an internal error. Try again. +// +// * AuthorizationException +// The AWS user account does not have permission to perform the action. Check +// the IAM policy associated with this account. +// +// * AccessDeniedException +// Access to resource denied. +// +// * RateLimitExceededException +// Too many requests have been submitted. Try again after a brief wait. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListTagsForResource +func (c *LicenseManager) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { + req, out := c.ListTagsForResourceRequest(input) + return out, req.Send() +} + +// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of +// the ability to pass a context and additional request options. +// +// See ListTagsForResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LicenseManager) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) { + req, out := c.ListTagsForResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListTokens = "ListTokens" + +// ListTokensRequest generates a "aws/request.Request" representing the +// client's request for the ListTokens operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListTokens for more information on using the ListTokens +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the ListTokensRequest method. +// req, resp := client.ListTokensRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListTokens +func (c *LicenseManager) ListTokensRequest(input *ListTokensInput) (req *request.Request, output *ListTokensOutput) { + op := &request.Operation{ + Name: opListTokens, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ListTokensInput{} + } + + output = &ListTokensOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTokens API operation for AWS License Manager. +// +// Lists your tokens. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS License Manager's +// API operation ListTokens for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The provided input is not valid. Try your request again. +// +// * AuthorizationException +// The AWS user account does not have permission to perform the action. Check +// the IAM policy associated with this account. +// +// * AccessDeniedException +// Access to resource denied. +// +// * RateLimitExceededException +// Too many requests have been submitted. Try again after a brief wait. +// +// * ServerInternalException +// The server experienced an internal error. Try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListTokens +func (c *LicenseManager) ListTokens(input *ListTokensInput) (*ListTokensOutput, error) { + req, out := c.ListTokensRequest(input) + return out, req.Send() +} + +// ListTokensWithContext is the same as ListTokens with the addition of +// the ability to pass a context and additional request options. +// +// See ListTokens for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LicenseManager) ListTokensWithContext(ctx aws.Context, input *ListTokensInput, opts ...request.Option) (*ListTokensOutput, error) { + req, out := c.ListTokensRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opListUsageForLicenseConfiguration = "ListUsageForLicenseConfiguration" + +// ListUsageForLicenseConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the ListUsageForLicenseConfiguration operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListUsageForLicenseConfiguration for more information on using the ListUsageForLicenseConfiguration +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the ListUsageForLicenseConfigurationRequest method. +// req, resp := client.ListUsageForLicenseConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListUsageForLicenseConfiguration +func (c *LicenseManager) ListUsageForLicenseConfigurationRequest(input *ListUsageForLicenseConfigurationInput) (req *request.Request, output *ListUsageForLicenseConfigurationOutput) { + op := &request.Operation{ + Name: opListUsageForLicenseConfiguration, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ListUsageForLicenseConfigurationInput{} + } + + output = &ListUsageForLicenseConfigurationOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListUsageForLicenseConfiguration API operation for AWS License Manager. +// +// Lists all license usage records for a license configuration, displaying license +// consumption details by resource at a selected point in time. Use this action +// to audit the current license consumption for any license inventory and configuration. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS License Manager's +// API operation ListUsageForLicenseConfiguration for usage and error information. +// +// Returned Error Types: +// * InvalidParameterValueException +// One or more parameter values are not valid. +// +// * FilterLimitExceededException +// The request uses too many filters or too many filter values. +// +// * ServerInternalException +// The server experienced an internal error. Try again. +// +// * AuthorizationException +// The AWS user account does not have permission to perform the action. Check +// the IAM policy associated with this account. +// +// * AccessDeniedException +// Access to resource denied. +// +// * RateLimitExceededException +// Too many requests have been submitted. Try again after a brief wait. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/ListUsageForLicenseConfiguration +func (c *LicenseManager) ListUsageForLicenseConfiguration(input *ListUsageForLicenseConfigurationInput) (*ListUsageForLicenseConfigurationOutput, error) { + req, out := c.ListUsageForLicenseConfigurationRequest(input) + return out, req.Send() +} + +// ListUsageForLicenseConfigurationWithContext is the same as ListUsageForLicenseConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See ListUsageForLicenseConfiguration for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LicenseManager) ListUsageForLicenseConfigurationWithContext(ctx aws.Context, input *ListUsageForLicenseConfigurationInput, opts ...request.Option) (*ListUsageForLicenseConfigurationOutput, error) { + req, out := c.ListUsageForLicenseConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opRejectGrant = "RejectGrant" + +// RejectGrantRequest generates a "aws/request.Request" representing the +// client's request for the RejectGrant operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See RejectGrant for more information on using the RejectGrant +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the RejectGrantRequest method. +// req, resp := client.RejectGrantRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/RejectGrant +func (c *LicenseManager) RejectGrantRequest(input *RejectGrantInput) (req *request.Request, output *RejectGrantOutput) { + op := &request.Operation{ + Name: opRejectGrant, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &RejectGrantInput{} + } + + output = &RejectGrantOutput{} + req = c.newRequest(op, input, output) + return +} + +// RejectGrant API operation for AWS License Manager. +// +// Rejects the specified grant. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS License Manager's +// API operation RejectGrant for usage and error information. +// +// Returned Error Types: +// * ValidationException +// The provided input is not valid. Try your request again. +// +// * InvalidParameterValueException +// One or more parameter values are not valid. +// +// * AuthorizationException +// The AWS user account does not have permission to perform the action. Check +// the IAM policy associated with this account. +// +// * AccessDeniedException +// Access to resource denied. +// +// * RateLimitExceededException +// Too many requests have been submitted. Try again after a brief wait. +// +// * ResourceLimitExceededException +// Your resource limits have been exceeded. +// +// * ServerInternalException +// The server experienced an internal error. Try again. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/RejectGrant +func (c *LicenseManager) RejectGrant(input *RejectGrantInput) (*RejectGrantOutput, error) { + req, out := c.RejectGrantRequest(input) + return out, req.Send() +} + +// RejectGrantWithContext is the same as RejectGrant with the addition of +// the ability to pass a context and additional request options. +// +// See RejectGrant for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LicenseManager) RejectGrantWithContext(ctx aws.Context, input *RejectGrantInput, opts ...request.Option) (*RejectGrantOutput, error) { + req, out := c.RejectGrantRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opTagResource = "TagResource" + +// TagResourceRequest generates a "aws/request.Request" representing the +// client's request for the TagResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See TagResource for more information on using the TagResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the TagResourceRequest method. +// req, resp := client.TagResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/TagResource +func (c *LicenseManager) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { + op := &request.Operation{ + Name: opTagResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &TagResourceInput{} + } + + output = &TagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// TagResource API operation for AWS License Manager. +// +// Adds the specified tags to the specified license configuration. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS License Manager's +// API operation TagResource for usage and error information. +// +// Returned Error Types: +// * InvalidParameterValueException +// One or more parameter values are not valid. +// +// * ServerInternalException +// The server experienced an internal error. Try again. +// +// * AuthorizationException +// The AWS user account does not have permission to perform the action. Check +// the IAM policy associated with this account. +// +// * AccessDeniedException +// Access to resource denied. +// +// * RateLimitExceededException +// Too many requests have been submitted. Try again after a brief wait. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/TagResource +func (c *LicenseManager) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) + return out, req.Send() +} + +// TagResourceWithContext is the same as TagResource with the addition of +// the ability to pass a context and additional request options. +// +// See TagResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LicenseManager) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUntagResource = "UntagResource" + +// UntagResourceRequest generates a "aws/request.Request" representing the +// client's request for the UntagResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UntagResource for more information on using the UntagResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the UntagResourceRequest method. +// req, resp := client.UntagResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/UntagResource +func (c *LicenseManager) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { + op := &request.Operation{ + Name: opUntagResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UntagResourceInput{} + } + + output = &UntagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UntagResource API operation for AWS License Manager. +// +// Removes the specified tags from the specified license configuration. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS License Manager's +// API operation UntagResource for usage and error information. +// +// Returned Error Types: +// * InvalidParameterValueException +// One or more parameter values are not valid. +// +// * ServerInternalException +// The server experienced an internal error. Try again. +// +// * AuthorizationException +// The AWS user account does not have permission to perform the action. Check +// the IAM policy associated with this account. +// +// * AccessDeniedException +// Access to resource denied. +// +// * RateLimitExceededException +// Too many requests have been submitted. Try again after a brief wait. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/UntagResource +func (c *LicenseManager) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) + return out, req.Send() +} + +// UntagResourceWithContext is the same as UntagResource with the addition of +// the ability to pass a context and additional request options. +// +// See UntagResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LicenseManager) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateLicenseConfiguration = "UpdateLicenseConfiguration" + +// UpdateLicenseConfigurationRequest generates a "aws/request.Request" representing the +// client's request for the UpdateLicenseConfiguration operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateLicenseConfiguration for more information on using the UpdateLicenseConfiguration +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the UpdateLicenseConfigurationRequest method. +// req, resp := client.UpdateLicenseConfigurationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/UpdateLicenseConfiguration +func (c *LicenseManager) UpdateLicenseConfigurationRequest(input *UpdateLicenseConfigurationInput) (req *request.Request, output *UpdateLicenseConfigurationOutput) { + op := &request.Operation{ + Name: opUpdateLicenseConfiguration, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateLicenseConfigurationInput{} + } + + output = &UpdateLicenseConfigurationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpdateLicenseConfiguration API operation for AWS License Manager. +// +// Modifies the attributes of an existing license configuration. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS License Manager's +// API operation UpdateLicenseConfiguration for usage and error information. +// +// Returned Error Types: +// * InvalidParameterValueException +// One or more parameter values are not valid. +// +// * ServerInternalException +// The server experienced an internal error. Try again. +// +// * AuthorizationException +// The AWS user account does not have permission to perform the action. Check +// the IAM policy associated with this account. +// +// * AccessDeniedException +// Access to resource denied. +// +// * RateLimitExceededException +// Too many requests have been submitted. Try again after a brief wait. +// +// * ResourceLimitExceededException +// Your resource limits have been exceeded. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/UpdateLicenseConfiguration +func (c *LicenseManager) UpdateLicenseConfiguration(input *UpdateLicenseConfigurationInput) (*UpdateLicenseConfigurationOutput, error) { + req, out := c.UpdateLicenseConfigurationRequest(input) + return out, req.Send() +} + +// UpdateLicenseConfigurationWithContext is the same as UpdateLicenseConfiguration with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateLicenseConfiguration for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LicenseManager) UpdateLicenseConfigurationWithContext(ctx aws.Context, input *UpdateLicenseConfigurationInput, opts ...request.Option) (*UpdateLicenseConfigurationOutput, error) { + req, out := c.UpdateLicenseConfigurationRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateLicenseSpecificationsForResource = "UpdateLicenseSpecificationsForResource" + +// UpdateLicenseSpecificationsForResourceRequest generates a "aws/request.Request" representing the +// client's request for the UpdateLicenseSpecificationsForResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateLicenseSpecificationsForResource for more information on using the UpdateLicenseSpecificationsForResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the UpdateLicenseSpecificationsForResourceRequest method. +// req, resp := client.UpdateLicenseSpecificationsForResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/UpdateLicenseSpecificationsForResource +func (c *LicenseManager) UpdateLicenseSpecificationsForResourceRequest(input *UpdateLicenseSpecificationsForResourceInput) (req *request.Request, output *UpdateLicenseSpecificationsForResourceOutput) { + op := &request.Operation{ + Name: opUpdateLicenseSpecificationsForResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateLicenseSpecificationsForResourceInput{} + } + + output = &UpdateLicenseSpecificationsForResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpdateLicenseSpecificationsForResource API operation for AWS License Manager. +// +// Adds or removes the specified license configurations for the specified AWS +// resource. +// +// You can update the license specifications of AMIs, instances, and hosts. +// You cannot update the license specifications for launch templates and AWS +// CloudFormation templates, as they send license configurations to the operation +// that creates the resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS License Manager's +// API operation UpdateLicenseSpecificationsForResource for usage and error information. +// +// Returned Error Types: +// * InvalidParameterValueException +// One or more parameter values are not valid. +// +// * InvalidResourceStateException +// License Manager cannot allocate a license to a resource because of its state. +// +// For example, you cannot allocate a license to an instance in the process +// of shutting down. +// +// * LicenseUsageException +// You do not have enough licenses available to support a new resource launch. +// +// * ServerInternalException +// The server experienced an internal error. Try again. +// +// * AuthorizationException +// The AWS user account does not have permission to perform the action. Check +// the IAM policy associated with this account. +// +// * AccessDeniedException +// Access to resource denied. +// +// * RateLimitExceededException +// Too many requests have been submitted. Try again after a brief wait. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/UpdateLicenseSpecificationsForResource +func (c *LicenseManager) UpdateLicenseSpecificationsForResource(input *UpdateLicenseSpecificationsForResourceInput) (*UpdateLicenseSpecificationsForResourceOutput, error) { + req, out := c.UpdateLicenseSpecificationsForResourceRequest(input) + return out, req.Send() +} + +// UpdateLicenseSpecificationsForResourceWithContext is the same as UpdateLicenseSpecificationsForResource with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateLicenseSpecificationsForResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LicenseManager) UpdateLicenseSpecificationsForResourceWithContext(ctx aws.Context, input *UpdateLicenseSpecificationsForResourceInput, opts ...request.Option) (*UpdateLicenseSpecificationsForResourceOutput, error) { + req, out := c.UpdateLicenseSpecificationsForResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateServiceSettings = "UpdateServiceSettings" + +// UpdateServiceSettingsRequest generates a "aws/request.Request" representing the +// client's request for the UpdateServiceSettings operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateServiceSettings for more information on using the UpdateServiceSettings +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the UpdateServiceSettingsRequest method. +// req, resp := client.UpdateServiceSettingsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/UpdateServiceSettings +func (c *LicenseManager) UpdateServiceSettingsRequest(input *UpdateServiceSettingsInput) (req *request.Request, output *UpdateServiceSettingsOutput) { + op := &request.Operation{ + Name: opUpdateServiceSettings, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateServiceSettingsInput{} + } + + output = &UpdateServiceSettingsOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UpdateServiceSettings API operation for AWS License Manager. +// +// Updates License Manager settings for the current Region. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS License Manager's +// API operation UpdateServiceSettings for usage and error information. +// +// Returned Error Types: +// * InvalidParameterValueException +// One or more parameter values are not valid. +// +// * ServerInternalException +// The server experienced an internal error. Try again. +// +// * AuthorizationException +// The AWS user account does not have permission to perform the action. Check +// the IAM policy associated with this account. +// +// * AccessDeniedException +// Access to resource denied. +// +// * RateLimitExceededException +// Too many requests have been submitted. Try again after a brief wait. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/license-manager-2018-08-01/UpdateServiceSettings +func (c *LicenseManager) UpdateServiceSettings(input *UpdateServiceSettingsInput) (*UpdateServiceSettingsOutput, error) { + req, out := c.UpdateServiceSettingsRequest(input) + return out, req.Send() +} + +// UpdateServiceSettingsWithContext is the same as UpdateServiceSettings with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateServiceSettings for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *LicenseManager) UpdateServiceSettingsWithContext(ctx aws.Context, input *UpdateServiceSettingsInput, opts ...request.Option) (*UpdateServiceSettingsOutput, error) { + req, out := c.UpdateServiceSettingsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +type AcceptGrantInput struct { + _ struct{} `type:"structure"` + + // Amazon Resource Name (ARN) of the grant. + // + // GrantArn is a required field + GrantArn *string `type:"string" required:"true"` +} + +// String returns the string representation +func (s AcceptGrantInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AcceptGrantInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *AcceptGrantInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "AcceptGrantInput"} + if s.GrantArn == nil { + invalidParams.Add(request.NewErrParamRequired("GrantArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetGrantArn sets the GrantArn field's value. +func (s *AcceptGrantInput) SetGrantArn(v string) *AcceptGrantInput { + s.GrantArn = &v + return s +} + +type AcceptGrantOutput struct { + _ struct{} `type:"structure"` + + // Grant ARN. + GrantArn *string `type:"string"` + + // Grant status. + Status *string `type:"string" enum:"GrantStatus"` + + // Grant version. + Version *string `type:"string"` +} + +// String returns the string representation +func (s AcceptGrantOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AcceptGrantOutput) GoString() string { + return s.String() +} + +// SetGrantArn sets the GrantArn field's value. +func (s *AcceptGrantOutput) SetGrantArn(v string) *AcceptGrantOutput { + s.GrantArn = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *AcceptGrantOutput) SetStatus(v string) *AcceptGrantOutput { + s.Status = &v + return s +} + +// SetVersion sets the Version field's value. +func (s *AcceptGrantOutput) SetVersion(v string) *AcceptGrantOutput { + s.Version = &v + return s +} + +// Access to resource denied. +type AccessDeniedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"Message" type:"string"` +} + +// String returns the string representation +func (s AccessDeniedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AccessDeniedException) GoString() string { + return s.String() +} + +func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { + return &AccessDeniedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *AccessDeniedException) Code() string { + return "AccessDeniedException" +} + +// Message returns the exception's message. +func (s *AccessDeniedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *AccessDeniedException) OrigErr() error { + return nil +} + +func (s *AccessDeniedException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *AccessDeniedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *AccessDeniedException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The AWS user account does not have permission to perform the action. Check +// the IAM policy associated with this account. type AuthorizationException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - Message_ *string `locationName:"Message" type:"string"` + Message_ *string `locationName:"Message" type:"string"` +} + +// String returns the string representation +func (s AuthorizationException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AuthorizationException) GoString() string { + return s.String() +} + +func newErrorAuthorizationException(v protocol.ResponseMetadata) error { + return &AuthorizationException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *AuthorizationException) Code() string { + return "AuthorizationException" +} + +// Message returns the exception's message. +func (s *AuthorizationException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *AuthorizationException) OrigErr() error { + return nil +} + +func (s *AuthorizationException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *AuthorizationException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *AuthorizationException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Describes automated discovery. +type AutomatedDiscoveryInformation struct { + _ struct{} `type:"structure"` + + // Time that automated discovery last ran. + LastRunTime *time.Time `type:"timestamp"` +} + +// String returns the string representation +func (s AutomatedDiscoveryInformation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AutomatedDiscoveryInformation) GoString() string { + return s.String() +} + +// SetLastRunTime sets the LastRunTime field's value. +func (s *AutomatedDiscoveryInformation) SetLastRunTime(v time.Time) *AutomatedDiscoveryInformation { + s.LastRunTime = &v + return s +} + +// Details about a borrow configuration. +type BorrowConfiguration struct { + _ struct{} `type:"structure"` + + // Indicates whether early check-ins are allowed. + // + // AllowEarlyCheckIn is a required field + AllowEarlyCheckIn *bool `type:"boolean" required:"true"` + + // Maximum time for the borrow configuration, in minutes. + // + // MaxTimeToLiveInMinutes is a required field + MaxTimeToLiveInMinutes *int64 `type:"integer" required:"true"` +} + +// String returns the string representation +func (s BorrowConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s BorrowConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *BorrowConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "BorrowConfiguration"} + if s.AllowEarlyCheckIn == nil { + invalidParams.Add(request.NewErrParamRequired("AllowEarlyCheckIn")) + } + if s.MaxTimeToLiveInMinutes == nil { + invalidParams.Add(request.NewErrParamRequired("MaxTimeToLiveInMinutes")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAllowEarlyCheckIn sets the AllowEarlyCheckIn field's value. +func (s *BorrowConfiguration) SetAllowEarlyCheckIn(v bool) *BorrowConfiguration { + s.AllowEarlyCheckIn = &v + return s +} + +// SetMaxTimeToLiveInMinutes sets the MaxTimeToLiveInMinutes field's value. +func (s *BorrowConfiguration) SetMaxTimeToLiveInMinutes(v int64) *BorrowConfiguration { + s.MaxTimeToLiveInMinutes = &v + return s +} + +type CheckInLicenseInput struct { + _ struct{} `type:"structure"` + + // License beneficiary. + Beneficiary *string `type:"string"` + + // License consumption token. + // + // LicenseConsumptionToken is a required field + LicenseConsumptionToken *string `type:"string" required:"true"` +} + +// String returns the string representation +func (s CheckInLicenseInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CheckInLicenseInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CheckInLicenseInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CheckInLicenseInput"} + if s.LicenseConsumptionToken == nil { + invalidParams.Add(request.NewErrParamRequired("LicenseConsumptionToken")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBeneficiary sets the Beneficiary field's value. +func (s *CheckInLicenseInput) SetBeneficiary(v string) *CheckInLicenseInput { + s.Beneficiary = &v + return s +} + +// SetLicenseConsumptionToken sets the LicenseConsumptionToken field's value. +func (s *CheckInLicenseInput) SetLicenseConsumptionToken(v string) *CheckInLicenseInput { + s.LicenseConsumptionToken = &v + return s +} + +type CheckInLicenseOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation +func (s CheckInLicenseOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CheckInLicenseOutput) GoString() string { + return s.String() +} + +type CheckoutBorrowLicenseInput struct { + _ struct{} `type:"structure"` + + // Information about constraints. + CheckoutMetadata []*Metadata `type:"list"` + + // Unique, case-sensitive identifier that you provide to ensure the idempotency + // of the request. + // + // ClientToken is a required field + ClientToken *string `type:"string" required:"true"` + + // Digital signature method. The possible value is JSON Web Signature (JWS) + // algorithm PS384. For more information, see RFC 7518 Digital Signature with + // RSASSA-PSS (https://tools.ietf.org/html/rfc7518#section-3.5). + // + // DigitalSignatureMethod is a required field + DigitalSignatureMethod *string `type:"string" required:"true" enum:"DigitalSignatureMethod"` + + // License entitlements. Partial checkouts are not supported. + // + // Entitlements is a required field + Entitlements []*EntitlementData `type:"list" required:"true"` + + // Amazon Resource Name (ARN) of the license. The license must use the borrow + // consumption configuration. + // + // LicenseArn is a required field + LicenseArn *string `type:"string" required:"true"` + + // Node ID. + NodeId *string `type:"string"` +} + +// String returns the string representation +func (s CheckoutBorrowLicenseInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CheckoutBorrowLicenseInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CheckoutBorrowLicenseInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CheckoutBorrowLicenseInput"} + if s.ClientToken == nil { + invalidParams.Add(request.NewErrParamRequired("ClientToken")) + } + if s.DigitalSignatureMethod == nil { + invalidParams.Add(request.NewErrParamRequired("DigitalSignatureMethod")) + } + if s.Entitlements == nil { + invalidParams.Add(request.NewErrParamRequired("Entitlements")) + } + if s.LicenseArn == nil { + invalidParams.Add(request.NewErrParamRequired("LicenseArn")) + } + if s.Entitlements != nil { + for i, v := range s.Entitlements { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Entitlements", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCheckoutMetadata sets the CheckoutMetadata field's value. +func (s *CheckoutBorrowLicenseInput) SetCheckoutMetadata(v []*Metadata) *CheckoutBorrowLicenseInput { + s.CheckoutMetadata = v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *CheckoutBorrowLicenseInput) SetClientToken(v string) *CheckoutBorrowLicenseInput { + s.ClientToken = &v + return s +} + +// SetDigitalSignatureMethod sets the DigitalSignatureMethod field's value. +func (s *CheckoutBorrowLicenseInput) SetDigitalSignatureMethod(v string) *CheckoutBorrowLicenseInput { + s.DigitalSignatureMethod = &v + return s +} + +// SetEntitlements sets the Entitlements field's value. +func (s *CheckoutBorrowLicenseInput) SetEntitlements(v []*EntitlementData) *CheckoutBorrowLicenseInput { + s.Entitlements = v + return s +} + +// SetLicenseArn sets the LicenseArn field's value. +func (s *CheckoutBorrowLicenseInput) SetLicenseArn(v string) *CheckoutBorrowLicenseInput { + s.LicenseArn = &v + return s +} + +// SetNodeId sets the NodeId field's value. +func (s *CheckoutBorrowLicenseInput) SetNodeId(v string) *CheckoutBorrowLicenseInput { + s.NodeId = &v + return s +} + +type CheckoutBorrowLicenseOutput struct { + _ struct{} `type:"structure"` + + // Information about constraints. + CheckoutMetadata []*Metadata `type:"list"` + + // Allowed license entitlements. + EntitlementsAllowed []*EntitlementData `type:"list"` + + // Date and time at which the license checkout expires. + Expiration *string `type:"string"` + + // Date and time at which the license checkout is issued. + IssuedAt *string `type:"string"` + + // Amazon Resource Name (ARN) of the license. + LicenseArn *string `type:"string"` + + // License consumption token. + LicenseConsumptionToken *string `type:"string"` + + // Node ID. + NodeId *string `type:"string"` + + // Signed token. + SignedToken *string `min:"4096" type:"string"` +} + +// String returns the string representation +func (s CheckoutBorrowLicenseOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CheckoutBorrowLicenseOutput) GoString() string { + return s.String() +} + +// SetCheckoutMetadata sets the CheckoutMetadata field's value. +func (s *CheckoutBorrowLicenseOutput) SetCheckoutMetadata(v []*Metadata) *CheckoutBorrowLicenseOutput { + s.CheckoutMetadata = v + return s +} + +// SetEntitlementsAllowed sets the EntitlementsAllowed field's value. +func (s *CheckoutBorrowLicenseOutput) SetEntitlementsAllowed(v []*EntitlementData) *CheckoutBorrowLicenseOutput { + s.EntitlementsAllowed = v + return s +} + +// SetExpiration sets the Expiration field's value. +func (s *CheckoutBorrowLicenseOutput) SetExpiration(v string) *CheckoutBorrowLicenseOutput { + s.Expiration = &v + return s +} + +// SetIssuedAt sets the IssuedAt field's value. +func (s *CheckoutBorrowLicenseOutput) SetIssuedAt(v string) *CheckoutBorrowLicenseOutput { + s.IssuedAt = &v + return s +} + +// SetLicenseArn sets the LicenseArn field's value. +func (s *CheckoutBorrowLicenseOutput) SetLicenseArn(v string) *CheckoutBorrowLicenseOutput { + s.LicenseArn = &v + return s +} + +// SetLicenseConsumptionToken sets the LicenseConsumptionToken field's value. +func (s *CheckoutBorrowLicenseOutput) SetLicenseConsumptionToken(v string) *CheckoutBorrowLicenseOutput { + s.LicenseConsumptionToken = &v + return s +} + +// SetNodeId sets the NodeId field's value. +func (s *CheckoutBorrowLicenseOutput) SetNodeId(v string) *CheckoutBorrowLicenseOutput { + s.NodeId = &v + return s +} + +// SetSignedToken sets the SignedToken field's value. +func (s *CheckoutBorrowLicenseOutput) SetSignedToken(v string) *CheckoutBorrowLicenseOutput { + s.SignedToken = &v + return s +} + +type CheckoutLicenseInput struct { + _ struct{} `type:"structure"` + + // License beneficiary. + Beneficiary *string `type:"string"` + + // Checkout type. + // + // CheckoutType is a required field + CheckoutType *string `type:"string" required:"true" enum:"CheckoutType"` + + // Unique, case-sensitive identifier that you provide to ensure the idempotency + // of the request. + // + // ClientToken is a required field + ClientToken *string `type:"string" required:"true"` + + // License entitlements. + // + // Entitlements is a required field + Entitlements []*EntitlementData `type:"list" required:"true"` + + // Key fingerprint identifying the license. + // + // KeyFingerprint is a required field + KeyFingerprint *string `type:"string" required:"true"` + + // Node ID. + NodeId *string `type:"string"` + + // Product SKU. + // + // ProductSKU is a required field + ProductSKU *string `type:"string" required:"true"` +} + +// String returns the string representation +func (s CheckoutLicenseInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CheckoutLicenseInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CheckoutLicenseInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CheckoutLicenseInput"} + if s.CheckoutType == nil { + invalidParams.Add(request.NewErrParamRequired("CheckoutType")) + } + if s.ClientToken == nil { + invalidParams.Add(request.NewErrParamRequired("ClientToken")) + } + if s.Entitlements == nil { + invalidParams.Add(request.NewErrParamRequired("Entitlements")) + } + if s.KeyFingerprint == nil { + invalidParams.Add(request.NewErrParamRequired("KeyFingerprint")) + } + if s.ProductSKU == nil { + invalidParams.Add(request.NewErrParamRequired("ProductSKU")) + } + if s.Entitlements != nil { + for i, v := range s.Entitlements { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Entitlements", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBeneficiary sets the Beneficiary field's value. +func (s *CheckoutLicenseInput) SetBeneficiary(v string) *CheckoutLicenseInput { + s.Beneficiary = &v + return s +} + +// SetCheckoutType sets the CheckoutType field's value. +func (s *CheckoutLicenseInput) SetCheckoutType(v string) *CheckoutLicenseInput { + s.CheckoutType = &v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *CheckoutLicenseInput) SetClientToken(v string) *CheckoutLicenseInput { + s.ClientToken = &v + return s +} + +// SetEntitlements sets the Entitlements field's value. +func (s *CheckoutLicenseInput) SetEntitlements(v []*EntitlementData) *CheckoutLicenseInput { + s.Entitlements = v + return s +} + +// SetKeyFingerprint sets the KeyFingerprint field's value. +func (s *CheckoutLicenseInput) SetKeyFingerprint(v string) *CheckoutLicenseInput { + s.KeyFingerprint = &v + return s +} + +// SetNodeId sets the NodeId field's value. +func (s *CheckoutLicenseInput) SetNodeId(v string) *CheckoutLicenseInput { + s.NodeId = &v + return s +} + +// SetProductSKU sets the ProductSKU field's value. +func (s *CheckoutLicenseInput) SetProductSKU(v string) *CheckoutLicenseInput { + s.ProductSKU = &v + return s +} + +type CheckoutLicenseOutput struct { + _ struct{} `type:"structure"` + + // Checkout type. + CheckoutType *string `type:"string" enum:"CheckoutType"` + + // Allowed license entitlements. + EntitlementsAllowed []*EntitlementData `type:"list"` + + // Date and time at which the license checkout expires. + Expiration *string `type:"string"` + + // Date and time at which the license checkout is issued. + IssuedAt *string `type:"string"` + + // License consumption token. + LicenseConsumptionToken *string `type:"string"` + + // Node ID. + NodeId *string `type:"string"` + + // Signed token. + SignedToken *string `min:"4096" type:"string"` +} + +// String returns the string representation +func (s CheckoutLicenseOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CheckoutLicenseOutput) GoString() string { + return s.String() +} + +// SetCheckoutType sets the CheckoutType field's value. +func (s *CheckoutLicenseOutput) SetCheckoutType(v string) *CheckoutLicenseOutput { + s.CheckoutType = &v + return s +} + +// SetEntitlementsAllowed sets the EntitlementsAllowed field's value. +func (s *CheckoutLicenseOutput) SetEntitlementsAllowed(v []*EntitlementData) *CheckoutLicenseOutput { + s.EntitlementsAllowed = v + return s +} + +// SetExpiration sets the Expiration field's value. +func (s *CheckoutLicenseOutput) SetExpiration(v string) *CheckoutLicenseOutput { + s.Expiration = &v + return s +} + +// SetIssuedAt sets the IssuedAt field's value. +func (s *CheckoutLicenseOutput) SetIssuedAt(v string) *CheckoutLicenseOutput { + s.IssuedAt = &v + return s +} + +// SetLicenseConsumptionToken sets the LicenseConsumptionToken field's value. +func (s *CheckoutLicenseOutput) SetLicenseConsumptionToken(v string) *CheckoutLicenseOutput { + s.LicenseConsumptionToken = &v + return s +} + +// SetNodeId sets the NodeId field's value. +func (s *CheckoutLicenseOutput) SetNodeId(v string) *CheckoutLicenseOutput { + s.NodeId = &v + return s +} + +// SetSignedToken sets the SignedToken field's value. +func (s *CheckoutLicenseOutput) SetSignedToken(v string) *CheckoutLicenseOutput { + s.SignedToken = &v + return s +} + +// There was a conflict processing the request. Try your request again. +type ConflictException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"Message" type:"string"` +} + +// String returns the string representation +func (s ConflictException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ConflictException) GoString() string { + return s.String() +} + +func newErrorConflictException(v protocol.ResponseMetadata) error { + return &ConflictException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ConflictException) Code() string { + return "ConflictException" +} + +// Message returns the exception's message. +func (s *ConflictException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ConflictException) OrigErr() error { + return nil +} + +func (s *ConflictException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ConflictException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ConflictException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Details about license consumption. +type ConsumedLicenseSummary struct { + _ struct{} `type:"structure"` + + // Number of licenses consumed by the resource. + ConsumedLicenses *int64 `type:"long"` + + // Resource type of the resource consuming a license. + ResourceType *string `type:"string" enum:"ResourceType"` +} + +// String returns the string representation +func (s ConsumedLicenseSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ConsumedLicenseSummary) GoString() string { + return s.String() +} + +// SetConsumedLicenses sets the ConsumedLicenses field's value. +func (s *ConsumedLicenseSummary) SetConsumedLicenses(v int64) *ConsumedLicenseSummary { + s.ConsumedLicenses = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *ConsumedLicenseSummary) SetResourceType(v string) *ConsumedLicenseSummary { + s.ResourceType = &v + return s +} + +// Details about a consumption configuration. +type ConsumptionConfiguration struct { + _ struct{} `type:"structure"` + + // Details about a borrow configuration. + BorrowConfiguration *BorrowConfiguration `type:"structure"` + + // Details about a provisional configuration. + ProvisionalConfiguration *ProvisionalConfiguration `type:"structure"` + + // Renewal frequency. + RenewType *string `type:"string" enum:"RenewType"` +} + +// String returns the string representation +func (s ConsumptionConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ConsumptionConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ConsumptionConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ConsumptionConfiguration"} + if s.BorrowConfiguration != nil { + if err := s.BorrowConfiguration.Validate(); err != nil { + invalidParams.AddNested("BorrowConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.ProvisionalConfiguration != nil { + if err := s.ProvisionalConfiguration.Validate(); err != nil { + invalidParams.AddNested("ProvisionalConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBorrowConfiguration sets the BorrowConfiguration field's value. +func (s *ConsumptionConfiguration) SetBorrowConfiguration(v *BorrowConfiguration) *ConsumptionConfiguration { + s.BorrowConfiguration = v + return s +} + +// SetProvisionalConfiguration sets the ProvisionalConfiguration field's value. +func (s *ConsumptionConfiguration) SetProvisionalConfiguration(v *ProvisionalConfiguration) *ConsumptionConfiguration { + s.ProvisionalConfiguration = v + return s +} + +// SetRenewType sets the RenewType field's value. +func (s *ConsumptionConfiguration) SetRenewType(v string) *ConsumptionConfiguration { + s.RenewType = &v + return s +} + +type CreateGrantInput struct { + _ struct{} `type:"structure"` + + // Allowed operations for the grant. + // + // AllowedOperations is a required field + AllowedOperations []*string `min:"1" type:"list" required:"true"` + + // Unique, case-sensitive identifier that you provide to ensure the idempotency + // of the request. + // + // ClientToken is a required field + ClientToken *string `type:"string" required:"true"` + + // Grant name. + // + // GrantName is a required field + GrantName *string `type:"string" required:"true"` + + // Home Region of the grant. + // + // HomeRegion is a required field + HomeRegion *string `type:"string" required:"true"` + + // Amazon Resource Name (ARN) of the license. + // + // LicenseArn is a required field + LicenseArn *string `type:"string" required:"true"` + + // The grant principals. + // + // Principals is a required field + Principals []*string `min:"1" type:"list" required:"true"` +} + +// String returns the string representation +func (s CreateGrantInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateGrantInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateGrantInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateGrantInput"} + if s.AllowedOperations == nil { + invalidParams.Add(request.NewErrParamRequired("AllowedOperations")) + } + if s.AllowedOperations != nil && len(s.AllowedOperations) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AllowedOperations", 1)) + } + if s.ClientToken == nil { + invalidParams.Add(request.NewErrParamRequired("ClientToken")) + } + if s.GrantName == nil { + invalidParams.Add(request.NewErrParamRequired("GrantName")) + } + if s.HomeRegion == nil { + invalidParams.Add(request.NewErrParamRequired("HomeRegion")) + } + if s.LicenseArn == nil { + invalidParams.Add(request.NewErrParamRequired("LicenseArn")) + } + if s.Principals == nil { + invalidParams.Add(request.NewErrParamRequired("Principals")) + } + if s.Principals != nil && len(s.Principals) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Principals", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAllowedOperations sets the AllowedOperations field's value. +func (s *CreateGrantInput) SetAllowedOperations(v []*string) *CreateGrantInput { + s.AllowedOperations = v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateGrantInput) SetClientToken(v string) *CreateGrantInput { + s.ClientToken = &v + return s +} + +// SetGrantName sets the GrantName field's value. +func (s *CreateGrantInput) SetGrantName(v string) *CreateGrantInput { + s.GrantName = &v + return s +} + +// SetHomeRegion sets the HomeRegion field's value. +func (s *CreateGrantInput) SetHomeRegion(v string) *CreateGrantInput { + s.HomeRegion = &v + return s +} + +// SetLicenseArn sets the LicenseArn field's value. +func (s *CreateGrantInput) SetLicenseArn(v string) *CreateGrantInput { + s.LicenseArn = &v + return s +} + +// SetPrincipals sets the Principals field's value. +func (s *CreateGrantInput) SetPrincipals(v []*string) *CreateGrantInput { + s.Principals = v + return s +} + +type CreateGrantOutput struct { + _ struct{} `type:"structure"` + + // Grant ARN. + GrantArn *string `type:"string"` + + // Grant status. + Status *string `type:"string" enum:"GrantStatus"` + + // Grant version. + Version *string `type:"string"` +} + +// String returns the string representation +func (s CreateGrantOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateGrantOutput) GoString() string { + return s.String() +} + +// SetGrantArn sets the GrantArn field's value. +func (s *CreateGrantOutput) SetGrantArn(v string) *CreateGrantOutput { + s.GrantArn = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *CreateGrantOutput) SetStatus(v string) *CreateGrantOutput { + s.Status = &v + return s +} + +// SetVersion sets the Version field's value. +func (s *CreateGrantOutput) SetVersion(v string) *CreateGrantOutput { + s.Version = &v + return s +} + +type CreateGrantVersionInput struct { + _ struct{} `type:"structure"` + + // Allowed operations for the grant. + AllowedOperations []*string `min:"1" type:"list"` + + // Unique, case-sensitive identifier that you provide to ensure the idempotency + // of the request. + // + // ClientToken is a required field + ClientToken *string `type:"string" required:"true"` + + // Amazon Resource Name (ARN) of the grant. + // + // GrantArn is a required field + GrantArn *string `type:"string" required:"true"` + + // Grant name. + GrantName *string `type:"string"` + + // Current version of the grant. + SourceVersion *string `type:"string"` + + // Grant status. + Status *string `type:"string" enum:"GrantStatus"` +} + +// String returns the string representation +func (s CreateGrantVersionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateGrantVersionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateGrantVersionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateGrantVersionInput"} + if s.AllowedOperations != nil && len(s.AllowedOperations) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AllowedOperations", 1)) + } + if s.ClientToken == nil { + invalidParams.Add(request.NewErrParamRequired("ClientToken")) + } + if s.GrantArn == nil { + invalidParams.Add(request.NewErrParamRequired("GrantArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAllowedOperations sets the AllowedOperations field's value. +func (s *CreateGrantVersionInput) SetAllowedOperations(v []*string) *CreateGrantVersionInput { + s.AllowedOperations = v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateGrantVersionInput) SetClientToken(v string) *CreateGrantVersionInput { + s.ClientToken = &v + return s +} + +// SetGrantArn sets the GrantArn field's value. +func (s *CreateGrantVersionInput) SetGrantArn(v string) *CreateGrantVersionInput { + s.GrantArn = &v + return s +} + +// SetGrantName sets the GrantName field's value. +func (s *CreateGrantVersionInput) SetGrantName(v string) *CreateGrantVersionInput { + s.GrantName = &v + return s +} + +// SetSourceVersion sets the SourceVersion field's value. +func (s *CreateGrantVersionInput) SetSourceVersion(v string) *CreateGrantVersionInput { + s.SourceVersion = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *CreateGrantVersionInput) SetStatus(v string) *CreateGrantVersionInput { + s.Status = &v + return s +} + +type CreateGrantVersionOutput struct { + _ struct{} `type:"structure"` + + // Grant ARN. + GrantArn *string `type:"string"` + + // Grant status. + Status *string `type:"string" enum:"GrantStatus"` + + // New version of the grant. + Version *string `type:"string"` +} + +// String returns the string representation +func (s CreateGrantVersionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateGrantVersionOutput) GoString() string { + return s.String() +} + +// SetGrantArn sets the GrantArn field's value. +func (s *CreateGrantVersionOutput) SetGrantArn(v string) *CreateGrantVersionOutput { + s.GrantArn = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *CreateGrantVersionOutput) SetStatus(v string) *CreateGrantVersionOutput { + s.Status = &v + return s +} + +// SetVersion sets the Version field's value. +func (s *CreateGrantVersionOutput) SetVersion(v string) *CreateGrantVersionOutput { + s.Version = &v + return s +} + +type CreateLicenseConfigurationInput struct { + _ struct{} `type:"structure"` + + // Description of the license configuration. + Description *string `type:"string"` + + // Number of licenses managed by the license configuration. + LicenseCount *int64 `type:"long"` + + // Indicates whether hard or soft license enforcement is used. Exceeding a hard + // limit blocks the launch of new instances. + LicenseCountHardLimit *bool `type:"boolean"` + + // Dimension used to track the license inventory. + // + // LicenseCountingType is a required field + LicenseCountingType *string `type:"string" required:"true" enum:"LicenseCountingType"` + + // License rules. The syntax is #name=value (for example, #allowedTenancy=EC2-DedicatedHost). + // The available rules vary by dimension, as follows. + // + // * Cores dimension: allowedTenancy | licenseAffinityToHost | maximumCores + // | minimumCores + // + // * Instances dimension: allowedTenancy | maximumCores | minimumCores | + // maximumSockets | minimumSockets | maximumVcpus | minimumVcpus + // + // * Sockets dimension: allowedTenancy | licenseAffinityToHost | maximumSockets + // | minimumSockets + // + // * vCPUs dimension: allowedTenancy | honorVcpuOptimization | maximumVcpus + // | minimumVcpus + // + // The unit for licenseAffinityToHost is days and the range is 1 to 180. The + // possible values for allowedTenancy are EC2-Default, EC2-DedicatedHost, and + // EC2-DedicatedInstance. The possible values for honorVcpuOptimization are + // True and False. + LicenseRules []*string `type:"list"` + + // Name of the license configuration. + // + // Name is a required field + Name *string `type:"string" required:"true"` + + // Product information. + ProductInformationList []*ProductInformation `type:"list"` + + // Tags to add to the license configuration. + Tags []*Tag `type:"list"` +} + +// String returns the string representation +func (s CreateLicenseConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateLicenseConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateLicenseConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateLicenseConfigurationInput"} + if s.LicenseCountingType == nil { + invalidParams.Add(request.NewErrParamRequired("LicenseCountingType")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.ProductInformationList != nil { + for i, v := range s.ProductInformationList { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ProductInformationList", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDescription sets the Description field's value. +func (s *CreateLicenseConfigurationInput) SetDescription(v string) *CreateLicenseConfigurationInput { + s.Description = &v + return s +} + +// SetLicenseCount sets the LicenseCount field's value. +func (s *CreateLicenseConfigurationInput) SetLicenseCount(v int64) *CreateLicenseConfigurationInput { + s.LicenseCount = &v + return s +} + +// SetLicenseCountHardLimit sets the LicenseCountHardLimit field's value. +func (s *CreateLicenseConfigurationInput) SetLicenseCountHardLimit(v bool) *CreateLicenseConfigurationInput { + s.LicenseCountHardLimit = &v + return s +} + +// SetLicenseCountingType sets the LicenseCountingType field's value. +func (s *CreateLicenseConfigurationInput) SetLicenseCountingType(v string) *CreateLicenseConfigurationInput { + s.LicenseCountingType = &v + return s +} + +// SetLicenseRules sets the LicenseRules field's value. +func (s *CreateLicenseConfigurationInput) SetLicenseRules(v []*string) *CreateLicenseConfigurationInput { + s.LicenseRules = v + return s +} + +// SetName sets the Name field's value. +func (s *CreateLicenseConfigurationInput) SetName(v string) *CreateLicenseConfigurationInput { + s.Name = &v + return s +} + +// SetProductInformationList sets the ProductInformationList field's value. +func (s *CreateLicenseConfigurationInput) SetProductInformationList(v []*ProductInformation) *CreateLicenseConfigurationInput { + s.ProductInformationList = v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateLicenseConfigurationInput) SetTags(v []*Tag) *CreateLicenseConfigurationInput { + s.Tags = v + return s +} + +type CreateLicenseConfigurationOutput struct { + _ struct{} `type:"structure"` + + // Amazon Resource Name (ARN) of the license configuration. + LicenseConfigurationArn *string `type:"string"` +} + +// String returns the string representation +func (s CreateLicenseConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateLicenseConfigurationOutput) GoString() string { + return s.String() +} + +// SetLicenseConfigurationArn sets the LicenseConfigurationArn field's value. +func (s *CreateLicenseConfigurationOutput) SetLicenseConfigurationArn(v string) *CreateLicenseConfigurationOutput { + s.LicenseConfigurationArn = &v + return s +} + +type CreateLicenseInput struct { + _ struct{} `type:"structure"` + + // License beneficiary. + // + // Beneficiary is a required field + Beneficiary *string `type:"string" required:"true"` + + // Unique, case-sensitive identifier that you provide to ensure the idempotency + // of the request. + // + // ClientToken is a required field + ClientToken *string `type:"string" required:"true"` + + // Configuration for consumption of the license. Choose a provisional configuration + // for workloads running with continuous connectivity. Choose a borrow configuration + // for workloads with offline usage. + // + // ConsumptionConfiguration is a required field + ConsumptionConfiguration *ConsumptionConfiguration `type:"structure" required:"true"` + + // License entitlements. + // + // Entitlements is a required field + Entitlements []*Entitlement `type:"list" required:"true"` + + // Home Region for the license. + // + // HomeRegion is a required field + HomeRegion *string `type:"string" required:"true"` + + // License issuer. + // + // Issuer is a required field + Issuer *Issuer `type:"structure" required:"true"` + + // Information about the license. + LicenseMetadata []*Metadata `type:"list"` + + // License name. + // + // LicenseName is a required field + LicenseName *string `type:"string" required:"true"` + + // Product name. + // + // ProductName is a required field + ProductName *string `type:"string" required:"true"` + + // Product SKU. + // + // ProductSKU is a required field + ProductSKU *string `type:"string" required:"true"` + + // Date and time range during which the license is valid, in ISO8601-UTC format. + // + // Validity is a required field + Validity *DatetimeRange `type:"structure" required:"true"` +} + +// String returns the string representation +func (s CreateLicenseInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateLicenseInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateLicenseInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateLicenseInput"} + if s.Beneficiary == nil { + invalidParams.Add(request.NewErrParamRequired("Beneficiary")) + } + if s.ClientToken == nil { + invalidParams.Add(request.NewErrParamRequired("ClientToken")) + } + if s.ConsumptionConfiguration == nil { + invalidParams.Add(request.NewErrParamRequired("ConsumptionConfiguration")) + } + if s.Entitlements == nil { + invalidParams.Add(request.NewErrParamRequired("Entitlements")) + } + if s.HomeRegion == nil { + invalidParams.Add(request.NewErrParamRequired("HomeRegion")) + } + if s.Issuer == nil { + invalidParams.Add(request.NewErrParamRequired("Issuer")) + } + if s.LicenseName == nil { + invalidParams.Add(request.NewErrParamRequired("LicenseName")) + } + if s.ProductName == nil { + invalidParams.Add(request.NewErrParamRequired("ProductName")) + } + if s.ProductSKU == nil { + invalidParams.Add(request.NewErrParamRequired("ProductSKU")) + } + if s.Validity == nil { + invalidParams.Add(request.NewErrParamRequired("Validity")) + } + if s.ConsumptionConfiguration != nil { + if err := s.ConsumptionConfiguration.Validate(); err != nil { + invalidParams.AddNested("ConsumptionConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.Entitlements != nil { + for i, v := range s.Entitlements { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Entitlements", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Issuer != nil { + if err := s.Issuer.Validate(); err != nil { + invalidParams.AddNested("Issuer", err.(request.ErrInvalidParams)) + } + } + if s.Validity != nil { + if err := s.Validity.Validate(); err != nil { + invalidParams.AddNested("Validity", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBeneficiary sets the Beneficiary field's value. +func (s *CreateLicenseInput) SetBeneficiary(v string) *CreateLicenseInput { + s.Beneficiary = &v + return s +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateLicenseInput) SetClientToken(v string) *CreateLicenseInput { + s.ClientToken = &v + return s +} + +// SetConsumptionConfiguration sets the ConsumptionConfiguration field's value. +func (s *CreateLicenseInput) SetConsumptionConfiguration(v *ConsumptionConfiguration) *CreateLicenseInput { + s.ConsumptionConfiguration = v + return s +} + +// SetEntitlements sets the Entitlements field's value. +func (s *CreateLicenseInput) SetEntitlements(v []*Entitlement) *CreateLicenseInput { + s.Entitlements = v + return s +} + +// SetHomeRegion sets the HomeRegion field's value. +func (s *CreateLicenseInput) SetHomeRegion(v string) *CreateLicenseInput { + s.HomeRegion = &v + return s +} + +// SetIssuer sets the Issuer field's value. +func (s *CreateLicenseInput) SetIssuer(v *Issuer) *CreateLicenseInput { + s.Issuer = v + return s +} + +// SetLicenseMetadata sets the LicenseMetadata field's value. +func (s *CreateLicenseInput) SetLicenseMetadata(v []*Metadata) *CreateLicenseInput { + s.LicenseMetadata = v + return s +} + +// SetLicenseName sets the LicenseName field's value. +func (s *CreateLicenseInput) SetLicenseName(v string) *CreateLicenseInput { + s.LicenseName = &v + return s +} + +// SetProductName sets the ProductName field's value. +func (s *CreateLicenseInput) SetProductName(v string) *CreateLicenseInput { + s.ProductName = &v + return s +} + +// SetProductSKU sets the ProductSKU field's value. +func (s *CreateLicenseInput) SetProductSKU(v string) *CreateLicenseInput { + s.ProductSKU = &v + return s +} + +// SetValidity sets the Validity field's value. +func (s *CreateLicenseInput) SetValidity(v *DatetimeRange) *CreateLicenseInput { + s.Validity = v + return s +} + +type CreateLicenseOutput struct { + _ struct{} `type:"structure"` + + // Amazon Resource Name (ARN) of the license. + LicenseArn *string `type:"string"` + + // License status. + Status *string `type:"string" enum:"LicenseStatus"` + + // License version. + Version *string `type:"string"` +} + +// String returns the string representation +func (s CreateLicenseOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateLicenseOutput) GoString() string { + return s.String() +} + +// SetLicenseArn sets the LicenseArn field's value. +func (s *CreateLicenseOutput) SetLicenseArn(v string) *CreateLicenseOutput { + s.LicenseArn = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *CreateLicenseOutput) SetStatus(v string) *CreateLicenseOutput { + s.Status = &v + return s +} + +// SetVersion sets the Version field's value. +func (s *CreateLicenseOutput) SetVersion(v string) *CreateLicenseOutput { + s.Version = &v + return s +} + +type CreateLicenseVersionInput struct { + _ struct{} `type:"structure"` + + // Unique, case-sensitive identifier that you provide to ensure the idempotency + // of the request. + // + // ClientToken is a required field + ClientToken *string `type:"string" required:"true"` + + // Configuration for consumption of the license. Choose a provisional configuration + // for workloads running with continuous connectivity. Choose a borrow configuration + // for workloads with offline usage. + // + // ConsumptionConfiguration is a required field + ConsumptionConfiguration *ConsumptionConfiguration `type:"structure" required:"true"` + + // License entitlements. + // + // Entitlements is a required field + Entitlements []*Entitlement `type:"list" required:"true"` + + // Home Region of the license. + // + // HomeRegion is a required field + HomeRegion *string `type:"string" required:"true"` + + // License issuer. + // + // Issuer is a required field + Issuer *Issuer `type:"structure" required:"true"` + + // Amazon Resource Name (ARN) of the license. + // + // LicenseArn is a required field + LicenseArn *string `type:"string" required:"true"` + + // Information about the license. + LicenseMetadata []*Metadata `type:"list"` + + // License name. + // + // LicenseName is a required field + LicenseName *string `type:"string" required:"true"` + + // Product name. + // + // ProductName is a required field + ProductName *string `type:"string" required:"true"` + + // Current version of the license. + SourceVersion *string `type:"string"` + + // License status. + // + // Status is a required field + Status *string `type:"string" required:"true" enum:"LicenseStatus"` + + // Date and time range during which the license is valid, in ISO8601-UTC format. + // + // Validity is a required field + Validity *DatetimeRange `type:"structure" required:"true"` +} + +// String returns the string representation +func (s CreateLicenseVersionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateLicenseVersionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateLicenseVersionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateLicenseVersionInput"} + if s.ClientToken == nil { + invalidParams.Add(request.NewErrParamRequired("ClientToken")) + } + if s.ConsumptionConfiguration == nil { + invalidParams.Add(request.NewErrParamRequired("ConsumptionConfiguration")) + } + if s.Entitlements == nil { + invalidParams.Add(request.NewErrParamRequired("Entitlements")) + } + if s.HomeRegion == nil { + invalidParams.Add(request.NewErrParamRequired("HomeRegion")) + } + if s.Issuer == nil { + invalidParams.Add(request.NewErrParamRequired("Issuer")) + } + if s.LicenseArn == nil { + invalidParams.Add(request.NewErrParamRequired("LicenseArn")) + } + if s.LicenseName == nil { + invalidParams.Add(request.NewErrParamRequired("LicenseName")) + } + if s.ProductName == nil { + invalidParams.Add(request.NewErrParamRequired("ProductName")) + } + if s.Status == nil { + invalidParams.Add(request.NewErrParamRequired("Status")) + } + if s.Validity == nil { + invalidParams.Add(request.NewErrParamRequired("Validity")) + } + if s.ConsumptionConfiguration != nil { + if err := s.ConsumptionConfiguration.Validate(); err != nil { + invalidParams.AddNested("ConsumptionConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.Entitlements != nil { + for i, v := range s.Entitlements { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Entitlements", i), err.(request.ErrInvalidParams)) + } + } + } + if s.Issuer != nil { + if err := s.Issuer.Validate(); err != nil { + invalidParams.AddNested("Issuer", err.(request.ErrInvalidParams)) + } + } + if s.Validity != nil { + if err := s.Validity.Validate(); err != nil { + invalidParams.AddNested("Validity", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateLicenseVersionInput) SetClientToken(v string) *CreateLicenseVersionInput { + s.ClientToken = &v + return s +} + +// SetConsumptionConfiguration sets the ConsumptionConfiguration field's value. +func (s *CreateLicenseVersionInput) SetConsumptionConfiguration(v *ConsumptionConfiguration) *CreateLicenseVersionInput { + s.ConsumptionConfiguration = v + return s +} + +// SetEntitlements sets the Entitlements field's value. +func (s *CreateLicenseVersionInput) SetEntitlements(v []*Entitlement) *CreateLicenseVersionInput { + s.Entitlements = v + return s +} + +// SetHomeRegion sets the HomeRegion field's value. +func (s *CreateLicenseVersionInput) SetHomeRegion(v string) *CreateLicenseVersionInput { + s.HomeRegion = &v + return s +} + +// SetIssuer sets the Issuer field's value. +func (s *CreateLicenseVersionInput) SetIssuer(v *Issuer) *CreateLicenseVersionInput { + s.Issuer = v + return s +} + +// SetLicenseArn sets the LicenseArn field's value. +func (s *CreateLicenseVersionInput) SetLicenseArn(v string) *CreateLicenseVersionInput { + s.LicenseArn = &v + return s +} + +// SetLicenseMetadata sets the LicenseMetadata field's value. +func (s *CreateLicenseVersionInput) SetLicenseMetadata(v []*Metadata) *CreateLicenseVersionInput { + s.LicenseMetadata = v + return s +} + +// SetLicenseName sets the LicenseName field's value. +func (s *CreateLicenseVersionInput) SetLicenseName(v string) *CreateLicenseVersionInput { + s.LicenseName = &v + return s +} + +// SetProductName sets the ProductName field's value. +func (s *CreateLicenseVersionInput) SetProductName(v string) *CreateLicenseVersionInput { + s.ProductName = &v + return s +} + +// SetSourceVersion sets the SourceVersion field's value. +func (s *CreateLicenseVersionInput) SetSourceVersion(v string) *CreateLicenseVersionInput { + s.SourceVersion = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *CreateLicenseVersionInput) SetStatus(v string) *CreateLicenseVersionInput { + s.Status = &v + return s +} + +// SetValidity sets the Validity field's value. +func (s *CreateLicenseVersionInput) SetValidity(v *DatetimeRange) *CreateLicenseVersionInput { + s.Validity = v + return s +} + +type CreateLicenseVersionOutput struct { + _ struct{} `type:"structure"` + + // License ARN. + LicenseArn *string `type:"string"` + + // License status. + Status *string `type:"string" enum:"LicenseStatus"` + + // New version of the license. + Version *string `type:"string"` +} + +// String returns the string representation +func (s CreateLicenseVersionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateLicenseVersionOutput) GoString() string { + return s.String() +} + +// SetLicenseArn sets the LicenseArn field's value. +func (s *CreateLicenseVersionOutput) SetLicenseArn(v string) *CreateLicenseVersionOutput { + s.LicenseArn = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *CreateLicenseVersionOutput) SetStatus(v string) *CreateLicenseVersionOutput { + s.Status = &v + return s +} + +// SetVersion sets the Version field's value. +func (s *CreateLicenseVersionOutput) SetVersion(v string) *CreateLicenseVersionOutput { + s.Version = &v + return s +} + +type CreateTokenInput struct { + _ struct{} `type:"structure"` + + // Idempotency token, valid for 10 minutes. + // + // ClientToken is a required field + ClientToken *string `type:"string" required:"true"` + + // Token expiration, in days, counted from token creation. The default is 365 + // days. + ExpirationInDays *int64 `type:"integer"` + + // Amazon Resource Name (ARN) of the license. The ARN is mapped to the aud claim + // of the JWT token. + // + // LicenseArn is a required field + LicenseArn *string `type:"string" required:"true"` + + // Amazon Resource Name (ARN) of the IAM roles to embed in the token. License + // Manager does not check whether the roles are in use. + RoleArns []*string `type:"list"` + + // Data specified by the caller to be included in the JWT token. The data is + // mapped to the amr claim of the JWT token. + TokenProperties []*string `type:"list"` +} + +// String returns the string representation +func (s CreateTokenInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateTokenInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateTokenInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateTokenInput"} + if s.ClientToken == nil { + invalidParams.Add(request.NewErrParamRequired("ClientToken")) + } + if s.LicenseArn == nil { + invalidParams.Add(request.NewErrParamRequired("LicenseArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateTokenInput) SetClientToken(v string) *CreateTokenInput { + s.ClientToken = &v + return s +} + +// SetExpirationInDays sets the ExpirationInDays field's value. +func (s *CreateTokenInput) SetExpirationInDays(v int64) *CreateTokenInput { + s.ExpirationInDays = &v + return s +} + +// SetLicenseArn sets the LicenseArn field's value. +func (s *CreateTokenInput) SetLicenseArn(v string) *CreateTokenInput { + s.LicenseArn = &v + return s +} + +// SetRoleArns sets the RoleArns field's value. +func (s *CreateTokenInput) SetRoleArns(v []*string) *CreateTokenInput { + s.RoleArns = v + return s +} + +// SetTokenProperties sets the TokenProperties field's value. +func (s *CreateTokenInput) SetTokenProperties(v []*string) *CreateTokenInput { + s.TokenProperties = v + return s +} + +type CreateTokenOutput struct { + _ struct{} `type:"structure"` + + // Refresh token, encoded as a JWT token. + Token *string `type:"string"` + + // Token ID. + TokenId *string `type:"string"` + + // Token type. + TokenType *string `type:"string" enum:"TokenType"` +} + +// String returns the string representation +func (s CreateTokenOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateTokenOutput) GoString() string { + return s.String() +} + +// SetToken sets the Token field's value. +func (s *CreateTokenOutput) SetToken(v string) *CreateTokenOutput { + s.Token = &v + return s +} + +// SetTokenId sets the TokenId field's value. +func (s *CreateTokenOutput) SetTokenId(v string) *CreateTokenOutput { + s.TokenId = &v + return s +} + +// SetTokenType sets the TokenType field's value. +func (s *CreateTokenOutput) SetTokenType(v string) *CreateTokenOutput { + s.TokenType = &v + return s +} + +// Describes a time range, in ISO8601-UTC format. +type DatetimeRange struct { + _ struct{} `type:"structure"` + + // Start of the time range. + // + // Begin is a required field + Begin *string `type:"string" required:"true"` + + // End of the time range. + End *string `type:"string"` +} + +// String returns the string representation +func (s DatetimeRange) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DatetimeRange) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DatetimeRange) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DatetimeRange"} + if s.Begin == nil { + invalidParams.Add(request.NewErrParamRequired("Begin")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBegin sets the Begin field's value. +func (s *DatetimeRange) SetBegin(v string) *DatetimeRange { + s.Begin = &v + return s +} + +// SetEnd sets the End field's value. +func (s *DatetimeRange) SetEnd(v string) *DatetimeRange { + s.End = &v + return s +} + +type DeleteGrantInput struct { + _ struct{} `type:"structure"` + + // Amazon Resource Name (ARN) of the grant. + // + // GrantArn is a required field + GrantArn *string `type:"string" required:"true"` + + // Current version of the grant. + // + // Version is a required field + Version *string `type:"string" required:"true"` +} + +// String returns the string representation +func (s DeleteGrantInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteGrantInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteGrantInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteGrantInput"} + if s.GrantArn == nil { + invalidParams.Add(request.NewErrParamRequired("GrantArn")) + } + if s.Version == nil { + invalidParams.Add(request.NewErrParamRequired("Version")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetGrantArn sets the GrantArn field's value. +func (s *DeleteGrantInput) SetGrantArn(v string) *DeleteGrantInput { + s.GrantArn = &v + return s +} + +// SetVersion sets the Version field's value. +func (s *DeleteGrantInput) SetVersion(v string) *DeleteGrantInput { + s.Version = &v + return s +} + +type DeleteGrantOutput struct { + _ struct{} `type:"structure"` + + // Grant ARN. + GrantArn *string `type:"string"` + + // Grant status. + Status *string `type:"string" enum:"GrantStatus"` + + // Grant version. + Version *string `type:"string"` +} + +// String returns the string representation +func (s DeleteGrantOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteGrantOutput) GoString() string { + return s.String() +} + +// SetGrantArn sets the GrantArn field's value. +func (s *DeleteGrantOutput) SetGrantArn(v string) *DeleteGrantOutput { + s.GrantArn = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *DeleteGrantOutput) SetStatus(v string) *DeleteGrantOutput { + s.Status = &v + return s +} + +// SetVersion sets the Version field's value. +func (s *DeleteGrantOutput) SetVersion(v string) *DeleteGrantOutput { + s.Version = &v + return s +} + +type DeleteLicenseConfigurationInput struct { + _ struct{} `type:"structure"` + + // ID of the license configuration. + // + // LicenseConfigurationArn is a required field + LicenseConfigurationArn *string `type:"string" required:"true"` +} + +// String returns the string representation +func (s DeleteLicenseConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteLicenseConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteLicenseConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteLicenseConfigurationInput"} + if s.LicenseConfigurationArn == nil { + invalidParams.Add(request.NewErrParamRequired("LicenseConfigurationArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLicenseConfigurationArn sets the LicenseConfigurationArn field's value. +func (s *DeleteLicenseConfigurationInput) SetLicenseConfigurationArn(v string) *DeleteLicenseConfigurationInput { + s.LicenseConfigurationArn = &v + return s +} + +type DeleteLicenseConfigurationOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation +func (s DeleteLicenseConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteLicenseConfigurationOutput) GoString() string { + return s.String() +} + +type DeleteLicenseInput struct { + _ struct{} `type:"structure"` + + // Amazon Resource Name (ARN) of the license. + // + // LicenseArn is a required field + LicenseArn *string `type:"string" required:"true"` + + // Current version of the license. + // + // SourceVersion is a required field + SourceVersion *string `type:"string" required:"true"` +} + +// String returns the string representation +func (s DeleteLicenseInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteLicenseInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteLicenseInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteLicenseInput"} + if s.LicenseArn == nil { + invalidParams.Add(request.NewErrParamRequired("LicenseArn")) + } + if s.SourceVersion == nil { + invalidParams.Add(request.NewErrParamRequired("SourceVersion")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLicenseArn sets the LicenseArn field's value. +func (s *DeleteLicenseInput) SetLicenseArn(v string) *DeleteLicenseInput { + s.LicenseArn = &v + return s +} + +// SetSourceVersion sets the SourceVersion field's value. +func (s *DeleteLicenseInput) SetSourceVersion(v string) *DeleteLicenseInput { + s.SourceVersion = &v + return s +} + +type DeleteLicenseOutput struct { + _ struct{} `type:"structure"` + + // Date on which the license is deleted. + DeletionDate *string `type:"string"` + + // License status. + Status *string `type:"string" enum:"LicenseDeletionStatus"` +} + +// String returns the string representation +func (s DeleteLicenseOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteLicenseOutput) GoString() string { + return s.String() +} + +// SetDeletionDate sets the DeletionDate field's value. +func (s *DeleteLicenseOutput) SetDeletionDate(v string) *DeleteLicenseOutput { + s.DeletionDate = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *DeleteLicenseOutput) SetStatus(v string) *DeleteLicenseOutput { + s.Status = &v + return s +} + +type DeleteTokenInput struct { + _ struct{} `type:"structure"` + + // Token ID. + // + // TokenId is a required field + TokenId *string `type:"string" required:"true"` +} + +// String returns the string representation +func (s DeleteTokenInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteTokenInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteTokenInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteTokenInput"} + if s.TokenId == nil { + invalidParams.Add(request.NewErrParamRequired("TokenId")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetTokenId sets the TokenId field's value. +func (s *DeleteTokenInput) SetTokenId(v string) *DeleteTokenInput { + s.TokenId = &v + return s +} + +type DeleteTokenOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation +func (s DeleteTokenOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteTokenOutput) GoString() string { + return s.String() +} + +// Describes a resource entitled for use with a license. +type Entitlement struct { + _ struct{} `type:"structure"` + + // Indicates whether check-ins are allowed. + AllowCheckIn *bool `type:"boolean"` + + // Maximum entitlement count. Use if the unit is not None. + MaxCount *int64 `type:"long"` + + // Entitlement name. + // + // Name is a required field + Name *string `type:"string" required:"true"` + + // Indicates whether overages are allowed. + Overage *bool `type:"boolean"` + + // Entitlement unit. + // + // Unit is a required field + Unit *string `type:"string" required:"true" enum:"EntitlementUnit"` + + // Entitlement resource. Use only if the unit is None. + Value *string `type:"string"` +} + +// String returns the string representation +func (s Entitlement) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s Entitlement) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *Entitlement) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Entitlement"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Unit == nil { + invalidParams.Add(request.NewErrParamRequired("Unit")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAllowCheckIn sets the AllowCheckIn field's value. +func (s *Entitlement) SetAllowCheckIn(v bool) *Entitlement { + s.AllowCheckIn = &v + return s +} + +// SetMaxCount sets the MaxCount field's value. +func (s *Entitlement) SetMaxCount(v int64) *Entitlement { + s.MaxCount = &v + return s +} + +// SetName sets the Name field's value. +func (s *Entitlement) SetName(v string) *Entitlement { + s.Name = &v + return s +} + +// SetOverage sets the Overage field's value. +func (s *Entitlement) SetOverage(v bool) *Entitlement { + s.Overage = &v + return s +} + +// SetUnit sets the Unit field's value. +func (s *Entitlement) SetUnit(v string) *Entitlement { + s.Unit = &v + return s +} + +// SetValue sets the Value field's value. +func (s *Entitlement) SetValue(v string) *Entitlement { + s.Value = &v + return s +} + +// Data associated with an entitlement resource. +type EntitlementData struct { + _ struct{} `type:"structure"` + + // Entitlement data name. + // + // Name is a required field + Name *string `type:"string" required:"true"` + + // Entitlement data unit. + // + // Unit is a required field + Unit *string `type:"string" required:"true" enum:"EntitlementDataUnit"` + + // Entitlement data value. + Value *string `type:"string"` +} + +// String returns the string representation +func (s EntitlementData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s EntitlementData) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *EntitlementData) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "EntitlementData"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + if s.Unit == nil { + invalidParams.Add(request.NewErrParamRequired("Unit")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetName sets the Name field's value. +func (s *EntitlementData) SetName(v string) *EntitlementData { + s.Name = &v + return s +} + +// SetUnit sets the Unit field's value. +func (s *EntitlementData) SetUnit(v string) *EntitlementData { + s.Unit = &v + return s +} + +// SetValue sets the Value field's value. +func (s *EntitlementData) SetValue(v string) *EntitlementData { + s.Value = &v + return s +} + +// The entitlement is not allowed. +type EntitlementNotAllowedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"Message" type:"string"` +} + +// String returns the string representation +func (s EntitlementNotAllowedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s EntitlementNotAllowedException) GoString() string { + return s.String() +} + +func newErrorEntitlementNotAllowedException(v protocol.ResponseMetadata) error { + return &EntitlementNotAllowedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *EntitlementNotAllowedException) Code() string { + return "EntitlementNotAllowedException" +} + +// Message returns the exception's message. +func (s *EntitlementNotAllowedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *EntitlementNotAllowedException) OrigErr() error { + return nil +} + +func (s *EntitlementNotAllowedException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *EntitlementNotAllowedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *EntitlementNotAllowedException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Usage associated with an entitlement resource. +type EntitlementUsage struct { + _ struct{} `type:"structure"` + + // Resource usage consumed. + // + // ConsumedValue is a required field + ConsumedValue *string `type:"string" required:"true"` + + // Maximum entitlement usage count. + MaxCount *string `type:"string"` + + // Entitlement usage name. + // + // Name is a required field + Name *string `type:"string" required:"true"` + + // Entitlement usage unit. + // + // Unit is a required field + Unit *string `type:"string" required:"true" enum:"EntitlementDataUnit"` +} + +// String returns the string representation +func (s EntitlementUsage) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s EntitlementUsage) GoString() string { + return s.String() +} + +// SetConsumedValue sets the ConsumedValue field's value. +func (s *EntitlementUsage) SetConsumedValue(v string) *EntitlementUsage { + s.ConsumedValue = &v + return s +} + +// SetMaxCount sets the MaxCount field's value. +func (s *EntitlementUsage) SetMaxCount(v string) *EntitlementUsage { + s.MaxCount = &v + return s +} + +// SetName sets the Name field's value. +func (s *EntitlementUsage) SetName(v string) *EntitlementUsage { + s.Name = &v + return s +} + +// SetUnit sets the Unit field's value. +func (s *EntitlementUsage) SetUnit(v string) *EntitlementUsage { + s.Unit = &v + return s +} + +type ExtendLicenseConsumptionInput struct { + _ struct{} `type:"structure"` + + // Checks whether you have the required permissions for the action, without + // actually making the request. Provides an error response if you do not have + // the required permissions. + DryRun *bool `type:"boolean"` + + // License consumption token. + // + // LicenseConsumptionToken is a required field + LicenseConsumptionToken *string `type:"string" required:"true"` +} + +// String returns the string representation +func (s ExtendLicenseConsumptionInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ExtendLicenseConsumptionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ExtendLicenseConsumptionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ExtendLicenseConsumptionInput"} + if s.LicenseConsumptionToken == nil { + invalidParams.Add(request.NewErrParamRequired("LicenseConsumptionToken")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDryRun sets the DryRun field's value. +func (s *ExtendLicenseConsumptionInput) SetDryRun(v bool) *ExtendLicenseConsumptionInput { + s.DryRun = &v + return s +} + +// SetLicenseConsumptionToken sets the LicenseConsumptionToken field's value. +func (s *ExtendLicenseConsumptionInput) SetLicenseConsumptionToken(v string) *ExtendLicenseConsumptionInput { + s.LicenseConsumptionToken = &v + return s +} + +type ExtendLicenseConsumptionOutput struct { + _ struct{} `type:"structure"` + + // Date and time at which the license consumption expires. + Expiration *string `type:"string"` + + // License consumption token. + LicenseConsumptionToken *string `type:"string"` +} + +// String returns the string representation +func (s ExtendLicenseConsumptionOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ExtendLicenseConsumptionOutput) GoString() string { + return s.String() +} + +// SetExpiration sets the Expiration field's value. +func (s *ExtendLicenseConsumptionOutput) SetExpiration(v string) *ExtendLicenseConsumptionOutput { + s.Expiration = &v + return s +} + +// SetLicenseConsumptionToken sets the LicenseConsumptionToken field's value. +func (s *ExtendLicenseConsumptionOutput) SetLicenseConsumptionToken(v string) *ExtendLicenseConsumptionOutput { + s.LicenseConsumptionToken = &v + return s +} + +// A dependency required to run the API is missing. +type FailedDependencyException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + ErrorCode *string `type:"string"` + + Message_ *string `locationName:"Message" type:"string"` +} + +// String returns the string representation +func (s FailedDependencyException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s FailedDependencyException) GoString() string { + return s.String() +} + +func newErrorFailedDependencyException(v protocol.ResponseMetadata) error { + return &FailedDependencyException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *FailedDependencyException) Code() string { + return "FailedDependencyException" +} + +// Message returns the exception's message. +func (s *FailedDependencyException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *FailedDependencyException) OrigErr() error { + return nil +} + +func (s *FailedDependencyException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *FailedDependencyException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *FailedDependencyException) RequestID() string { + return s.RespMetadata.RequestID +} + +// A filter name and value pair that is used to return more specific results +// from a describe operation. Filters can be used to match a set of resources +// by specific criteria, such as tags, attributes, or IDs. +type Filter struct { + _ struct{} `type:"structure"` + + // Name of the filter. Filter names are case-sensitive. + Name *string `type:"string"` + + // Filter values. Filter values are case-sensitive. + Values []*string `type:"list"` +} + +// String returns the string representation +func (s Filter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s Filter) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *Filter) SetName(v string) *Filter { + s.Name = &v + return s +} + +// SetValues sets the Values field's value. +func (s *Filter) SetValues(v []*string) *Filter { + s.Values = v + return s +} + +// The request uses too many filters or too many filter values. +type FilterLimitExceededException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"Message" type:"string"` +} + +// String returns the string representation +func (s FilterLimitExceededException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s FilterLimitExceededException) GoString() string { + return s.String() +} + +func newErrorFilterLimitExceededException(v protocol.ResponseMetadata) error { + return &FilterLimitExceededException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *FilterLimitExceededException) Code() string { + return "FilterLimitExceededException" +} + +// Message returns the exception's message. +func (s *FilterLimitExceededException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *FilterLimitExceededException) OrigErr() error { + return nil +} + +func (s *FilterLimitExceededException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *FilterLimitExceededException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *FilterLimitExceededException) RequestID() string { + return s.RespMetadata.RequestID +} + +type GetAccessTokenInput struct { + _ struct{} `type:"structure"` + + // Refresh token, encoded as a JWT token. + // + // Token is a required field + Token *string `type:"string" required:"true"` + + // Token properties to validate against those present in the JWT token. + TokenProperties []*string `type:"list"` +} + +// String returns the string representation +func (s GetAccessTokenInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetAccessTokenInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetAccessTokenInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetAccessTokenInput"} + if s.Token == nil { + invalidParams.Add(request.NewErrParamRequired("Token")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetToken sets the Token field's value. +func (s *GetAccessTokenInput) SetToken(v string) *GetAccessTokenInput { + s.Token = &v + return s +} + +// SetTokenProperties sets the TokenProperties field's value. +func (s *GetAccessTokenInput) SetTokenProperties(v []*string) *GetAccessTokenInput { + s.TokenProperties = v + return s +} + +type GetAccessTokenOutput struct { + _ struct{} `type:"structure"` + + // Temporary access token. + AccessToken *string `type:"string"` +} + +// String returns the string representation +func (s GetAccessTokenOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetAccessTokenOutput) GoString() string { + return s.String() +} + +// SetAccessToken sets the AccessToken field's value. +func (s *GetAccessTokenOutput) SetAccessToken(v string) *GetAccessTokenOutput { + s.AccessToken = &v + return s +} + +type GetGrantInput struct { + _ struct{} `type:"structure"` + + // Amazon Resource Name (ARN) of the grant. + // + // GrantArn is a required field + GrantArn *string `type:"string" required:"true"` + + // Grant version. + Version *string `type:"string"` +} + +// String returns the string representation +func (s GetGrantInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetGrantInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetGrantInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetGrantInput"} + if s.GrantArn == nil { + invalidParams.Add(request.NewErrParamRequired("GrantArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetGrantArn sets the GrantArn field's value. +func (s *GetGrantInput) SetGrantArn(v string) *GetGrantInput { + s.GrantArn = &v + return s +} + +// SetVersion sets the Version field's value. +func (s *GetGrantInput) SetVersion(v string) *GetGrantInput { + s.Version = &v + return s +} + +type GetGrantOutput struct { + _ struct{} `type:"structure"` + + // Grant details. + Grant *Grant `type:"structure"` +} + +// String returns the string representation +func (s GetGrantOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetGrantOutput) GoString() string { + return s.String() +} + +// SetGrant sets the Grant field's value. +func (s *GetGrantOutput) SetGrant(v *Grant) *GetGrantOutput { + s.Grant = v + return s +} + +type GetLicenseConfigurationInput struct { + _ struct{} `type:"structure"` + + // Amazon Resource Name (ARN) of the license configuration. + // + // LicenseConfigurationArn is a required field + LicenseConfigurationArn *string `type:"string" required:"true"` +} + +// String returns the string representation +func (s GetLicenseConfigurationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetLicenseConfigurationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetLicenseConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetLicenseConfigurationInput"} + if s.LicenseConfigurationArn == nil { + invalidParams.Add(request.NewErrParamRequired("LicenseConfigurationArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLicenseConfigurationArn sets the LicenseConfigurationArn field's value. +func (s *GetLicenseConfigurationInput) SetLicenseConfigurationArn(v string) *GetLicenseConfigurationInput { + s.LicenseConfigurationArn = &v + return s +} + +type GetLicenseConfigurationOutput struct { + _ struct{} `type:"structure"` + + // Automated discovery information. + AutomatedDiscoveryInformation *AutomatedDiscoveryInformation `type:"structure"` + + // Summaries of the licenses consumed by resources. + ConsumedLicenseSummaryList []*ConsumedLicenseSummary `type:"list"` + + // Number of licenses assigned to resources. + ConsumedLicenses *int64 `type:"long"` + + // Description of the license configuration. + Description *string `type:"string"` + + // Amazon Resource Name (ARN) of the license configuration. + LicenseConfigurationArn *string `type:"string"` + + // Unique ID for the license configuration. + LicenseConfigurationId *string `type:"string"` + + // Number of available licenses. + LicenseCount *int64 `type:"long"` + + // Sets the number of available licenses as a hard limit. + LicenseCountHardLimit *bool `type:"boolean"` + + // Dimension on which the licenses are counted. + LicenseCountingType *string `type:"string" enum:"LicenseCountingType"` + + // License rules. + LicenseRules []*string `type:"list"` + + // Summaries of the managed resources. + ManagedResourceSummaryList []*ManagedResourceSummary `type:"list"` + + // Name of the license configuration. + Name *string `type:"string"` + + // Account ID of the owner of the license configuration. + OwnerAccountId *string `type:"string"` + + // Product information. + ProductInformationList []*ProductInformation `type:"list"` + + // License configuration status. + Status *string `type:"string"` + + // Tags for the license configuration. + Tags []*Tag `type:"list"` +} + +// String returns the string representation +func (s GetLicenseConfigurationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetLicenseConfigurationOutput) GoString() string { + return s.String() +} + +// SetAutomatedDiscoveryInformation sets the AutomatedDiscoveryInformation field's value. +func (s *GetLicenseConfigurationOutput) SetAutomatedDiscoveryInformation(v *AutomatedDiscoveryInformation) *GetLicenseConfigurationOutput { + s.AutomatedDiscoveryInformation = v + return s +} + +// SetConsumedLicenseSummaryList sets the ConsumedLicenseSummaryList field's value. +func (s *GetLicenseConfigurationOutput) SetConsumedLicenseSummaryList(v []*ConsumedLicenseSummary) *GetLicenseConfigurationOutput { + s.ConsumedLicenseSummaryList = v + return s +} + +// SetConsumedLicenses sets the ConsumedLicenses field's value. +func (s *GetLicenseConfigurationOutput) SetConsumedLicenses(v int64) *GetLicenseConfigurationOutput { + s.ConsumedLicenses = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *GetLicenseConfigurationOutput) SetDescription(v string) *GetLicenseConfigurationOutput { + s.Description = &v + return s +} + +// SetLicenseConfigurationArn sets the LicenseConfigurationArn field's value. +func (s *GetLicenseConfigurationOutput) SetLicenseConfigurationArn(v string) *GetLicenseConfigurationOutput { + s.LicenseConfigurationArn = &v + return s +} + +// SetLicenseConfigurationId sets the LicenseConfigurationId field's value. +func (s *GetLicenseConfigurationOutput) SetLicenseConfigurationId(v string) *GetLicenseConfigurationOutput { + s.LicenseConfigurationId = &v + return s +} + +// SetLicenseCount sets the LicenseCount field's value. +func (s *GetLicenseConfigurationOutput) SetLicenseCount(v int64) *GetLicenseConfigurationOutput { + s.LicenseCount = &v + return s +} + +// SetLicenseCountHardLimit sets the LicenseCountHardLimit field's value. +func (s *GetLicenseConfigurationOutput) SetLicenseCountHardLimit(v bool) *GetLicenseConfigurationOutput { + s.LicenseCountHardLimit = &v + return s +} + +// SetLicenseCountingType sets the LicenseCountingType field's value. +func (s *GetLicenseConfigurationOutput) SetLicenseCountingType(v string) *GetLicenseConfigurationOutput { + s.LicenseCountingType = &v + return s +} + +// SetLicenseRules sets the LicenseRules field's value. +func (s *GetLicenseConfigurationOutput) SetLicenseRules(v []*string) *GetLicenseConfigurationOutput { + s.LicenseRules = v + return s +} + +// SetManagedResourceSummaryList sets the ManagedResourceSummaryList field's value. +func (s *GetLicenseConfigurationOutput) SetManagedResourceSummaryList(v []*ManagedResourceSummary) *GetLicenseConfigurationOutput { + s.ManagedResourceSummaryList = v + return s +} + +// SetName sets the Name field's value. +func (s *GetLicenseConfigurationOutput) SetName(v string) *GetLicenseConfigurationOutput { + s.Name = &v + return s +} + +// SetOwnerAccountId sets the OwnerAccountId field's value. +func (s *GetLicenseConfigurationOutput) SetOwnerAccountId(v string) *GetLicenseConfigurationOutput { + s.OwnerAccountId = &v + return s +} + +// SetProductInformationList sets the ProductInformationList field's value. +func (s *GetLicenseConfigurationOutput) SetProductInformationList(v []*ProductInformation) *GetLicenseConfigurationOutput { + s.ProductInformationList = v + return s +} + +// SetStatus sets the Status field's value. +func (s *GetLicenseConfigurationOutput) SetStatus(v string) *GetLicenseConfigurationOutput { + s.Status = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *GetLicenseConfigurationOutput) SetTags(v []*Tag) *GetLicenseConfigurationOutput { + s.Tags = v + return s +} + +type GetLicenseInput struct { + _ struct{} `type:"structure"` + + // Amazon Resource Name (ARN) of the license. + // + // LicenseArn is a required field + LicenseArn *string `type:"string" required:"true"` + + // License version. + Version *string `type:"string"` } // String returns the string representation -func (s AuthorizationException) String() string { +func (s GetLicenseInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AuthorizationException) GoString() string { +func (s GetLicenseInput) GoString() string { return s.String() } -func newErrorAuthorizationException(v protocol.ResponseMetadata) error { - return &AuthorizationException{ - RespMetadata: v, +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetLicenseInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetLicenseInput"} + if s.LicenseArn == nil { + invalidParams.Add(request.NewErrParamRequired("LicenseArn")) } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// Code returns the exception type name. -func (s *AuthorizationException) Code() string { - return "AuthorizationException" +// SetLicenseArn sets the LicenseArn field's value. +func (s *GetLicenseInput) SetLicenseArn(v string) *GetLicenseInput { + s.LicenseArn = &v + return s +} + +// SetVersion sets the Version field's value. +func (s *GetLicenseInput) SetVersion(v string) *GetLicenseInput { + s.Version = &v + return s +} + +type GetLicenseOutput struct { + _ struct{} `type:"structure"` + + // License details. + License *License `type:"structure"` +} + +// String returns the string representation +func (s GetLicenseOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetLicenseOutput) GoString() string { + return s.String() +} + +// SetLicense sets the License field's value. +func (s *GetLicenseOutput) SetLicense(v *License) *GetLicenseOutput { + s.License = v + return s +} + +type GetLicenseUsageInput struct { + _ struct{} `type:"structure"` + + // Amazon Resource Name (ARN) of the license. + // + // LicenseArn is a required field + LicenseArn *string `type:"string" required:"true"` +} + +// String returns the string representation +func (s GetLicenseUsageInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetLicenseUsageInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetLicenseUsageInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetLicenseUsageInput"} + if s.LicenseArn == nil { + invalidParams.Add(request.NewErrParamRequired("LicenseArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLicenseArn sets the LicenseArn field's value. +func (s *GetLicenseUsageInput) SetLicenseArn(v string) *GetLicenseUsageInput { + s.LicenseArn = &v + return s +} + +type GetLicenseUsageOutput struct { + _ struct{} `type:"structure"` + + // License usage details. + LicenseUsage *LicenseUsage `type:"structure"` +} + +// String returns the string representation +func (s GetLicenseUsageOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetLicenseUsageOutput) GoString() string { + return s.String() +} + +// SetLicenseUsage sets the LicenseUsage field's value. +func (s *GetLicenseUsageOutput) SetLicenseUsage(v *LicenseUsage) *GetLicenseUsageOutput { + s.LicenseUsage = v + return s +} + +type GetServiceSettingsInput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation +func (s GetServiceSettingsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetServiceSettingsInput) GoString() string { + return s.String() +} + +type GetServiceSettingsOutput struct { + _ struct{} `type:"structure"` + + // Indicates whether cross-account discovery is enabled. + EnableCrossAccountsDiscovery *bool `type:"boolean"` + + // Amazon Resource Name (ARN) of the AWS resource share. The License Manager + // master account will provide member accounts with access to this share. + LicenseManagerResourceShareArn *string `type:"string"` + + // Indicates whether AWS Organizations is integrated with License Manager for + // cross-account discovery. + OrganizationConfiguration *OrganizationConfiguration `type:"structure"` + + // Regional S3 bucket path for storing reports, license trail event data, discovery + // data, and so on. + S3BucketArn *string `type:"string"` + + // SNS topic configured to receive notifications from License Manager. + SnsTopicArn *string `type:"string"` +} + +// String returns the string representation +func (s GetServiceSettingsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetServiceSettingsOutput) GoString() string { + return s.String() +} + +// SetEnableCrossAccountsDiscovery sets the EnableCrossAccountsDiscovery field's value. +func (s *GetServiceSettingsOutput) SetEnableCrossAccountsDiscovery(v bool) *GetServiceSettingsOutput { + s.EnableCrossAccountsDiscovery = &v + return s +} + +// SetLicenseManagerResourceShareArn sets the LicenseManagerResourceShareArn field's value. +func (s *GetServiceSettingsOutput) SetLicenseManagerResourceShareArn(v string) *GetServiceSettingsOutput { + s.LicenseManagerResourceShareArn = &v + return s +} + +// SetOrganizationConfiguration sets the OrganizationConfiguration field's value. +func (s *GetServiceSettingsOutput) SetOrganizationConfiguration(v *OrganizationConfiguration) *GetServiceSettingsOutput { + s.OrganizationConfiguration = v + return s +} + +// SetS3BucketArn sets the S3BucketArn field's value. +func (s *GetServiceSettingsOutput) SetS3BucketArn(v string) *GetServiceSettingsOutput { + s.S3BucketArn = &v + return s +} + +// SetSnsTopicArn sets the SnsTopicArn field's value. +func (s *GetServiceSettingsOutput) SetSnsTopicArn(v string) *GetServiceSettingsOutput { + s.SnsTopicArn = &v + return s +} + +// Describes a grant. +type Grant struct { + _ struct{} `type:"structure"` + + // Amazon Resource Name (ARN) of the grant. + // + // GrantArn is a required field + GrantArn *string `type:"string" required:"true"` + + // Grant name. + // + // GrantName is a required field + GrantName *string `type:"string" required:"true"` + + // Grant status. + // + // GrantStatus is a required field + GrantStatus *string `type:"string" required:"true" enum:"GrantStatus"` + + // Granted operations. + // + // GrantedOperations is a required field + GrantedOperations []*string `min:"1" type:"list" required:"true"` + + // The grantee principal ARN. + // + // GranteePrincipalArn is a required field + GranteePrincipalArn *string `type:"string" required:"true"` + + // Home Region of the grant. + // + // HomeRegion is a required field + HomeRegion *string `type:"string" required:"true"` + + // License ARN. + // + // LicenseArn is a required field + LicenseArn *string `type:"string" required:"true"` + + // Parent ARN. + // + // ParentArn is a required field + ParentArn *string `type:"string" required:"true"` + + // Grant status reason. + StatusReason *string `type:"string"` + + // Grant version. + // + // Version is a required field + Version *string `type:"string" required:"true"` +} + +// String returns the string representation +func (s Grant) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s Grant) GoString() string { + return s.String() +} + +// SetGrantArn sets the GrantArn field's value. +func (s *Grant) SetGrantArn(v string) *Grant { + s.GrantArn = &v + return s +} + +// SetGrantName sets the GrantName field's value. +func (s *Grant) SetGrantName(v string) *Grant { + s.GrantName = &v + return s +} + +// SetGrantStatus sets the GrantStatus field's value. +func (s *Grant) SetGrantStatus(v string) *Grant { + s.GrantStatus = &v + return s +} + +// SetGrantedOperations sets the GrantedOperations field's value. +func (s *Grant) SetGrantedOperations(v []*string) *Grant { + s.GrantedOperations = v + return s +} + +// SetGranteePrincipalArn sets the GranteePrincipalArn field's value. +func (s *Grant) SetGranteePrincipalArn(v string) *Grant { + s.GranteePrincipalArn = &v + return s } -// Message returns the exception's message. -func (s *AuthorizationException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" +// SetHomeRegion sets the HomeRegion field's value. +func (s *Grant) SetHomeRegion(v string) *Grant { + s.HomeRegion = &v + return s } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *AuthorizationException) OrigErr() error { - return nil +// SetLicenseArn sets the LicenseArn field's value. +func (s *Grant) SetLicenseArn(v string) *Grant { + s.LicenseArn = &v + return s } -func (s *AuthorizationException) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +// SetParentArn sets the ParentArn field's value. +func (s *Grant) SetParentArn(v string) *Grant { + s.ParentArn = &v + return s } -// Status code returns the HTTP status code for the request's response error. -func (s *AuthorizationException) StatusCode() int { - return s.RespMetadata.StatusCode +// SetStatusReason sets the StatusReason field's value. +func (s *Grant) SetStatusReason(v string) *Grant { + s.StatusReason = &v + return s } -// RequestID returns the service's response RequestID for request. -func (s *AuthorizationException) RequestID() string { - return s.RespMetadata.RequestID +// SetVersion sets the Version field's value. +func (s *Grant) SetVersion(v string) *Grant { + s.Version = &v + return s } -// Describes automated discovery. -type AutomatedDiscoveryInformation struct { +// Describes a license that is granted to a grantee. +type GrantedLicense struct { _ struct{} `type:"structure"` - // Time that automated discovery last ran. - LastRunTime *time.Time `type:"timestamp"` + // Granted license beneficiary. + Beneficiary *string `type:"string"` + + // Configuration for consumption of the license. + ConsumptionConfiguration *ConsumptionConfiguration `type:"structure"` + + // Creation time of the granted license. + CreateTime *string `type:"string"` + + // License entitlements. + Entitlements []*Entitlement `type:"list"` + + // Home Region of the granted license. + HomeRegion *string `type:"string"` + + // Granted license issuer. + Issuer *IssuerDetails `type:"structure"` + + // Amazon Resource Name (ARN) of the license. + LicenseArn *string `type:"string"` + + // Granted license metadata. + LicenseMetadata []*Metadata `type:"list"` + + // License name. + LicenseName *string `type:"string"` + + // Product name. + ProductName *string `type:"string"` + + // Product SKU. + ProductSKU *string `type:"string"` + + // Granted license received metadata. + ReceivedMetadata *ReceivedMetadata `type:"structure"` + + // Granted license status. + Status *string `type:"string" enum:"LicenseStatus"` + + // Date and time range during which the granted license is valid, in ISO8601-UTC + // format. + Validity *DatetimeRange `type:"structure"` + + // Version of the granted license. + Version *string `type:"string"` } // String returns the string representation -func (s AutomatedDiscoveryInformation) String() string { +func (s GrantedLicense) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s AutomatedDiscoveryInformation) GoString() string { +func (s GrantedLicense) GoString() string { return s.String() } -// SetLastRunTime sets the LastRunTime field's value. -func (s *AutomatedDiscoveryInformation) SetLastRunTime(v time.Time) *AutomatedDiscoveryInformation { - s.LastRunTime = &v +// SetBeneficiary sets the Beneficiary field's value. +func (s *GrantedLicense) SetBeneficiary(v string) *GrantedLicense { + s.Beneficiary = &v return s } -// Details about license consumption. -type ConsumedLicenseSummary struct { - _ struct{} `type:"structure"` +// SetConsumptionConfiguration sets the ConsumptionConfiguration field's value. +func (s *GrantedLicense) SetConsumptionConfiguration(v *ConsumptionConfiguration) *GrantedLicense { + s.ConsumptionConfiguration = v + return s +} - // Number of licenses consumed by the resource. - ConsumedLicenses *int64 `type:"long"` +// SetCreateTime sets the CreateTime field's value. +func (s *GrantedLicense) SetCreateTime(v string) *GrantedLicense { + s.CreateTime = &v + return s +} - // Resource type of the resource consuming a license. - ResourceType *string `type:"string" enum:"ResourceType"` +// SetEntitlements sets the Entitlements field's value. +func (s *GrantedLicense) SetEntitlements(v []*Entitlement) *GrantedLicense { + s.Entitlements = v + return s } -// String returns the string representation -func (s ConsumedLicenseSummary) String() string { - return awsutil.Prettify(s) +// SetHomeRegion sets the HomeRegion field's value. +func (s *GrantedLicense) SetHomeRegion(v string) *GrantedLicense { + s.HomeRegion = &v + return s } -// GoString returns the string representation -func (s ConsumedLicenseSummary) GoString() string { - return s.String() +// SetIssuer sets the Issuer field's value. +func (s *GrantedLicense) SetIssuer(v *IssuerDetails) *GrantedLicense { + s.Issuer = v + return s } -// SetConsumedLicenses sets the ConsumedLicenses field's value. -func (s *ConsumedLicenseSummary) SetConsumedLicenses(v int64) *ConsumedLicenseSummary { - s.ConsumedLicenses = &v +// SetLicenseArn sets the LicenseArn field's value. +func (s *GrantedLicense) SetLicenseArn(v string) *GrantedLicense { + s.LicenseArn = &v return s } -// SetResourceType sets the ResourceType field's value. -func (s *ConsumedLicenseSummary) SetResourceType(v string) *ConsumedLicenseSummary { - s.ResourceType = &v +// SetLicenseMetadata sets the LicenseMetadata field's value. +func (s *GrantedLicense) SetLicenseMetadata(v []*Metadata) *GrantedLicense { + s.LicenseMetadata = v return s } -type CreateLicenseConfigurationInput struct { - _ struct{} `type:"structure"` +// SetLicenseName sets the LicenseName field's value. +func (s *GrantedLicense) SetLicenseName(v string) *GrantedLicense { + s.LicenseName = &v + return s +} - // Description of the license configuration. - Description *string `type:"string"` +// SetProductName sets the ProductName field's value. +func (s *GrantedLicense) SetProductName(v string) *GrantedLicense { + s.ProductName = &v + return s +} - // Number of licenses managed by the license configuration. - LicenseCount *int64 `type:"long"` +// SetProductSKU sets the ProductSKU field's value. +func (s *GrantedLicense) SetProductSKU(v string) *GrantedLicense { + s.ProductSKU = &v + return s +} - // Indicates whether hard or soft license enforcement is used. Exceeding a hard - // limit blocks the launch of new instances. - LicenseCountHardLimit *bool `type:"boolean"` +// SetReceivedMetadata sets the ReceivedMetadata field's value. +func (s *GrantedLicense) SetReceivedMetadata(v *ReceivedMetadata) *GrantedLicense { + s.ReceivedMetadata = v + return s +} - // Dimension used to track the license inventory. - // - // LicenseCountingType is a required field - LicenseCountingType *string `type:"string" required:"true" enum:"LicenseCountingType"` +// SetStatus sets the Status field's value. +func (s *GrantedLicense) SetStatus(v string) *GrantedLicense { + s.Status = &v + return s +} - // License rules. The syntax is #name=value (for example, #allowedTenancy=EC2-DedicatedHost). - // The available rules vary by dimension, as follows. - // - // * Cores dimension: allowedTenancy | licenseAffinityToHost | maximumCores - // | minimumCores - // - // * Instances dimension: allowedTenancy | maximumCores | minimumCores | - // maximumSockets | minimumSockets | maximumVcpus | minimumVcpus - // - // * Sockets dimension: allowedTenancy | licenseAffinityToHost | maximumSockets - // | minimumSockets - // - // * vCPUs dimension: allowedTenancy | honorVcpuOptimization | maximumVcpus - // | minimumVcpus - // - // The unit for licenseAffinityToHost is days and the range is 1 to 180. The - // possible values for allowedTenancy are EC2-Default, EC2-DedicatedHost, and - // EC2-DedicatedInstance. The possible values for honorVcpuOptimization are - // True and False. - LicenseRules []*string `type:"list"` +// SetValidity sets the Validity field's value. +func (s *GrantedLicense) SetValidity(v *DatetimeRange) *GrantedLicense { + s.Validity = v + return s +} - // Name of the license configuration. - // - // Name is a required field - Name *string `type:"string" required:"true"` +// SetVersion sets the Version field's value. +func (s *GrantedLicense) SetVersion(v string) *GrantedLicense { + s.Version = &v + return s +} - // Product information. - ProductInformationList []*ProductInformation `type:"list"` +// One or more parameter values are not valid. +type InvalidParameterValueException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - // Tags to add to the license configuration. - Tags []*Tag `type:"list"` + Message_ *string `locationName:"Message" type:"string"` } // String returns the string representation -func (s CreateLicenseConfigurationInput) String() string { +func (s InvalidParameterValueException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s CreateLicenseConfigurationInput) GoString() string { +func (s InvalidParameterValueException) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *CreateLicenseConfigurationInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "CreateLicenseConfigurationInput"} - if s.LicenseCountingType == nil { - invalidParams.Add(request.NewErrParamRequired("LicenseCountingType")) - } - if s.Name == nil { - invalidParams.Add(request.NewErrParamRequired("Name")) - } - if s.ProductInformationList != nil { - for i, v := range s.ProductInformationList { - if v == nil { - continue - } - if err := v.Validate(); err != nil { - invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ProductInformationList", i), err.(request.ErrInvalidParams)) - } - } +func newErrorInvalidParameterValueException(v protocol.ResponseMetadata) error { + return &InvalidParameterValueException{ + RespMetadata: v, } +} - if invalidParams.Len() > 0 { - return invalidParams +// Code returns the exception type name. +func (s *InvalidParameterValueException) Code() string { + return "InvalidParameterValueException" +} + +// Message returns the exception's message. +func (s *InvalidParameterValueException) Message() string { + if s.Message_ != nil { + return *s.Message_ } - return nil + return "" } -// SetDescription sets the Description field's value. -func (s *CreateLicenseConfigurationInput) SetDescription(v string) *CreateLicenseConfigurationInput { - s.Description = &v - return s +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InvalidParameterValueException) OrigErr() error { + return nil } -// SetLicenseCount sets the LicenseCount field's value. -func (s *CreateLicenseConfigurationInput) SetLicenseCount(v int64) *CreateLicenseConfigurationInput { - s.LicenseCount = &v - return s +func (s *InvalidParameterValueException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) } -// SetLicenseCountHardLimit sets the LicenseCountHardLimit field's value. -func (s *CreateLicenseConfigurationInput) SetLicenseCountHardLimit(v bool) *CreateLicenseConfigurationInput { - s.LicenseCountHardLimit = &v - return s +// Status code returns the HTTP status code for the request's response error. +func (s *InvalidParameterValueException) StatusCode() int { + return s.RespMetadata.StatusCode } -// SetLicenseCountingType sets the LicenseCountingType field's value. -func (s *CreateLicenseConfigurationInput) SetLicenseCountingType(v string) *CreateLicenseConfigurationInput { - s.LicenseCountingType = &v - return s +// RequestID returns the service's response RequestID for request. +func (s *InvalidParameterValueException) RequestID() string { + return s.RespMetadata.RequestID } -// SetLicenseRules sets the LicenseRules field's value. -func (s *CreateLicenseConfigurationInput) SetLicenseRules(v []*string) *CreateLicenseConfigurationInput { - s.LicenseRules = v - return s +// License Manager cannot allocate a license to a resource because of its state. +// +// For example, you cannot allocate a license to an instance in the process +// of shutting down. +type InvalidResourceStateException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"Message" type:"string"` } -// SetName sets the Name field's value. -func (s *CreateLicenseConfigurationInput) SetName(v string) *CreateLicenseConfigurationInput { - s.Name = &v - return s +// String returns the string representation +func (s InvalidResourceStateException) String() string { + return awsutil.Prettify(s) } -// SetProductInformationList sets the ProductInformationList field's value. -func (s *CreateLicenseConfigurationInput) SetProductInformationList(v []*ProductInformation) *CreateLicenseConfigurationInput { - s.ProductInformationList = v - return s +// GoString returns the string representation +func (s InvalidResourceStateException) GoString() string { + return s.String() } -// SetTags sets the Tags field's value. -func (s *CreateLicenseConfigurationInput) SetTags(v []*Tag) *CreateLicenseConfigurationInput { - s.Tags = v - return s +func newErrorInvalidResourceStateException(v protocol.ResponseMetadata) error { + return &InvalidResourceStateException{ + RespMetadata: v, + } } -type CreateLicenseConfigurationOutput struct { - _ struct{} `type:"structure"` +// Code returns the exception type name. +func (s *InvalidResourceStateException) Code() string { + return "InvalidResourceStateException" +} - // Amazon Resource Name (ARN) of the license configuration. - LicenseConfigurationArn *string `type:"string"` +// Message returns the exception's message. +func (s *InvalidResourceStateException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" } -// String returns the string representation -func (s CreateLicenseConfigurationOutput) String() string { - return awsutil.Prettify(s) +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InvalidResourceStateException) OrigErr() error { + return nil +} + +func (s *InvalidResourceStateException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) } -// GoString returns the string representation -func (s CreateLicenseConfigurationOutput) GoString() string { - return s.String() +// Status code returns the HTTP status code for the request's response error. +func (s *InvalidResourceStateException) StatusCode() int { + return s.RespMetadata.StatusCode } -// SetLicenseConfigurationArn sets the LicenseConfigurationArn field's value. -func (s *CreateLicenseConfigurationOutput) SetLicenseConfigurationArn(v string) *CreateLicenseConfigurationOutput { - s.LicenseConfigurationArn = &v - return s +// RequestID returns the service's response RequestID for request. +func (s *InvalidResourceStateException) RequestID() string { + return s.RespMetadata.RequestID } -type DeleteLicenseConfigurationInput struct { +// An inventory filter. +type InventoryFilter struct { _ struct{} `type:"structure"` - // ID of the license configuration. + // Condition of the filter. // - // LicenseConfigurationArn is a required field - LicenseConfigurationArn *string `type:"string" required:"true"` + // Condition is a required field + Condition *string `type:"string" required:"true" enum:"InventoryFilterCondition"` + + // Name of the filter. + // + // Name is a required field + Name *string `type:"string" required:"true"` + + // Value of the filter. + Value *string `type:"string"` } // String returns the string representation -func (s DeleteLicenseConfigurationInput) String() string { +func (s InventoryFilter) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s DeleteLicenseConfigurationInput) GoString() string { +func (s InventoryFilter) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteLicenseConfigurationInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteLicenseConfigurationInput"} - if s.LicenseConfigurationArn == nil { - invalidParams.Add(request.NewErrParamRequired("LicenseConfigurationArn")) +func (s *InventoryFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "InventoryFilter"} + if s.Condition == nil { + invalidParams.Add(request.NewErrParamRequired("Condition")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) } if invalidParams.Len() > 0 { @@ -1896,221 +7641,273 @@ func (s *DeleteLicenseConfigurationInput) Validate() error { return nil } -// SetLicenseConfigurationArn sets the LicenseConfigurationArn field's value. -func (s *DeleteLicenseConfigurationInput) SetLicenseConfigurationArn(v string) *DeleteLicenseConfigurationInput { - s.LicenseConfigurationArn = &v +// SetCondition sets the Condition field's value. +func (s *InventoryFilter) SetCondition(v string) *InventoryFilter { + s.Condition = &v return s } -type DeleteLicenseConfigurationOutput struct { - _ struct{} `type:"structure"` +// SetName sets the Name field's value. +func (s *InventoryFilter) SetName(v string) *InventoryFilter { + s.Name = &v + return s } -// String returns the string representation -func (s DeleteLicenseConfigurationOutput) String() string { - return awsutil.Prettify(s) +// SetValue sets the Value field's value. +func (s *InventoryFilter) SetValue(v string) *InventoryFilter { + s.Value = &v + return s } -// GoString returns the string representation -func (s DeleteLicenseConfigurationOutput) GoString() string { - return s.String() -} +// Details about the issuer of a license. +type Issuer struct { + _ struct{} `type:"structure"` -// A dependency required to run the API is missing. -type FailedDependencyException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + // Issuer name. + // + // Name is a required field + Name *string `type:"string" required:"true"` - Message_ *string `locationName:"Message" type:"string"` + // Asymmetric CMK from AWS Key Management Service. The CMK must have a key usage + // of sign and verify, and support the RSASSA-PSS SHA-256 signing algorithm. + SignKey *string `type:"string"` } // String returns the string representation -func (s FailedDependencyException) String() string { +func (s Issuer) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s FailedDependencyException) GoString() string { +func (s Issuer) GoString() string { return s.String() } -func newErrorFailedDependencyException(v protocol.ResponseMetadata) error { - return &FailedDependencyException{ - RespMetadata: v, +// Validate inspects the fields of the type to determine if they are valid. +func (s *Issuer) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "Issuer"} + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) } -} - -// Code returns the exception type name. -func (s *FailedDependencyException) Code() string { - return "FailedDependencyException" -} -// Message returns the exception's message. -func (s *FailedDependencyException) Message() string { - if s.Message_ != nil { - return *s.Message_ + if invalidParams.Len() > 0 { + return invalidParams } - return "" -} - -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *FailedDependencyException) OrigErr() error { return nil } -func (s *FailedDependencyException) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) -} - -// Status code returns the HTTP status code for the request's response error. -func (s *FailedDependencyException) StatusCode() int { - return s.RespMetadata.StatusCode +// SetName sets the Name field's value. +func (s *Issuer) SetName(v string) *Issuer { + s.Name = &v + return s } -// RequestID returns the service's response RequestID for request. -func (s *FailedDependencyException) RequestID() string { - return s.RespMetadata.RequestID +// SetSignKey sets the SignKey field's value. +func (s *Issuer) SetSignKey(v string) *Issuer { + s.SignKey = &v + return s } -// A filter name and value pair that is used to return more specific results -// from a describe operation. Filters can be used to match a set of resources -// by specific criteria, such as tags, attributes, or IDs. -type Filter struct { +// Details associated with the issuer of a license. +type IssuerDetails struct { _ struct{} `type:"structure"` - // Name of the filter. Filter names are case-sensitive. + // Issuer key fingerprint. + KeyFingerprint *string `type:"string"` + + // Issuer name. Name *string `type:"string"` - // Filter values. Filter values are case-sensitive. - Values []*string `type:"list"` + // Asymmetric CMK from AWS Key Management Service. The CMK must have a key usage + // of sign and verify, and support the RSASSA-PSS SHA-256 signing algorithm. + SignKey *string `type:"string"` } // String returns the string representation -func (s Filter) String() string { +func (s IssuerDetails) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s Filter) GoString() string { +func (s IssuerDetails) GoString() string { return s.String() } +// SetKeyFingerprint sets the KeyFingerprint field's value. +func (s *IssuerDetails) SetKeyFingerprint(v string) *IssuerDetails { + s.KeyFingerprint = &v + return s +} + // SetName sets the Name field's value. -func (s *Filter) SetName(v string) *Filter { +func (s *IssuerDetails) SetName(v string) *IssuerDetails { s.Name = &v return s } -// SetValues sets the Values field's value. -func (s *Filter) SetValues(v []*string) *Filter { - s.Values = v +// SetSignKey sets the SignKey field's value. +func (s *IssuerDetails) SetSignKey(v string) *IssuerDetails { + s.SignKey = &v return s } -// The request uses too many filters or too many filter values. -type FilterLimitExceededException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` +// Software license that is managed in AWS License Manager. +type License struct { + _ struct{} `type:"structure"` - Message_ *string `locationName:"Message" type:"string"` + // License beneficiary. + Beneficiary *string `type:"string"` + + // Configuration for consumption of the license. + ConsumptionConfiguration *ConsumptionConfiguration `type:"structure"` + + // License creation time. + CreateTime *string `type:"string"` + + // License entitlements. + Entitlements []*Entitlement `type:"list"` + + // Home Region of the license. + HomeRegion *string `type:"string"` + + // License issuer. + Issuer *IssuerDetails `type:"structure"` + + // Amazon Resource Name (ARN) of the license. + LicenseArn *string `type:"string"` + + // License metadata. + LicenseMetadata []*Metadata `type:"list"` + + // License name. + LicenseName *string `type:"string"` + + // Product name. + ProductName *string `type:"string"` + + // Product SKU. + ProductSKU *string `type:"string"` + + // License status. + Status *string `type:"string" enum:"LicenseStatus"` + + // Date and time range during which the license is valid, in ISO8601-UTC format. + Validity *DatetimeRange `type:"structure"` + + // License version. + Version *string `type:"string"` } // String returns the string representation -func (s FilterLimitExceededException) String() string { +func (s License) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s FilterLimitExceededException) GoString() string { +func (s License) GoString() string { return s.String() } -func newErrorFilterLimitExceededException(v protocol.ResponseMetadata) error { - return &FilterLimitExceededException{ - RespMetadata: v, - } +// SetBeneficiary sets the Beneficiary field's value. +func (s *License) SetBeneficiary(v string) *License { + s.Beneficiary = &v + return s } -// Code returns the exception type name. -func (s *FilterLimitExceededException) Code() string { - return "FilterLimitExceededException" +// SetConsumptionConfiguration sets the ConsumptionConfiguration field's value. +func (s *License) SetConsumptionConfiguration(v *ConsumptionConfiguration) *License { + s.ConsumptionConfiguration = v + return s } -// Message returns the exception's message. -func (s *FilterLimitExceededException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" +// SetCreateTime sets the CreateTime field's value. +func (s *License) SetCreateTime(v string) *License { + s.CreateTime = &v + return s } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *FilterLimitExceededException) OrigErr() error { - return nil +// SetEntitlements sets the Entitlements field's value. +func (s *License) SetEntitlements(v []*Entitlement) *License { + s.Entitlements = v + return s } -func (s *FilterLimitExceededException) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +// SetHomeRegion sets the HomeRegion field's value. +func (s *License) SetHomeRegion(v string) *License { + s.HomeRegion = &v + return s } -// Status code returns the HTTP status code for the request's response error. -func (s *FilterLimitExceededException) StatusCode() int { - return s.RespMetadata.StatusCode +// SetIssuer sets the Issuer field's value. +func (s *License) SetIssuer(v *IssuerDetails) *License { + s.Issuer = v + return s } -// RequestID returns the service's response RequestID for request. -func (s *FilterLimitExceededException) RequestID() string { - return s.RespMetadata.RequestID +// SetLicenseArn sets the LicenseArn field's value. +func (s *License) SetLicenseArn(v string) *License { + s.LicenseArn = &v + return s } -type GetLicenseConfigurationInput struct { - _ struct{} `type:"structure"` +// SetLicenseMetadata sets the LicenseMetadata field's value. +func (s *License) SetLicenseMetadata(v []*Metadata) *License { + s.LicenseMetadata = v + return s +} - // Amazon Resource Name (ARN) of the license configuration. - // - // LicenseConfigurationArn is a required field - LicenseConfigurationArn *string `type:"string" required:"true"` +// SetLicenseName sets the LicenseName field's value. +func (s *License) SetLicenseName(v string) *License { + s.LicenseName = &v + return s } -// String returns the string representation -func (s GetLicenseConfigurationInput) String() string { - return awsutil.Prettify(s) +// SetProductName sets the ProductName field's value. +func (s *License) SetProductName(v string) *License { + s.ProductName = &v + return s } -// GoString returns the string representation -func (s GetLicenseConfigurationInput) GoString() string { - return s.String() +// SetProductSKU sets the ProductSKU field's value. +func (s *License) SetProductSKU(v string) *License { + s.ProductSKU = &v + return s } -// Validate inspects the fields of the type to determine if they are valid. -func (s *GetLicenseConfigurationInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "GetLicenseConfigurationInput"} - if s.LicenseConfigurationArn == nil { - invalidParams.Add(request.NewErrParamRequired("LicenseConfigurationArn")) - } +// SetStatus sets the Status field's value. +func (s *License) SetStatus(v string) *License { + s.Status = &v + return s +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// SetValidity sets the Validity field's value. +func (s *License) SetValidity(v *DatetimeRange) *License { + s.Validity = v + return s } -// SetLicenseConfigurationArn sets the LicenseConfigurationArn field's value. -func (s *GetLicenseConfigurationInput) SetLicenseConfigurationArn(v string) *GetLicenseConfigurationInput { - s.LicenseConfigurationArn = &v +// SetVersion sets the Version field's value. +func (s *License) SetVersion(v string) *License { + s.Version = &v return s } -type GetLicenseConfigurationOutput struct { +// A license configuration is an abstraction of a customer license agreement +// that can be consumed and enforced by License Manager. Components include +// specifications for the license type (licensing by instance, socket, CPU, +// or vCPU), allowed tenancy (shared tenancy, Dedicated Instance, Dedicated +// Host, or all of these), host affinity (how long a VM must be associated with +// a host), and the number of licenses purchased and used. +type LicenseConfiguration struct { _ struct{} `type:"structure"` // Automated discovery information. AutomatedDiscoveryInformation *AutomatedDiscoveryInformation `type:"structure"` - // Summaries of the licenses consumed by resources. + // Summaries for licenses consumed by various resources. ConsumedLicenseSummaryList []*ConsumedLicenseSummary `type:"list"` - // Number of licenses assigned to resources. + // Number of licenses consumed. ConsumedLicenses *int64 `type:"long"` // Description of the license configuration. @@ -2119,283 +7916,427 @@ type GetLicenseConfigurationOutput struct { // Amazon Resource Name (ARN) of the license configuration. LicenseConfigurationArn *string `type:"string"` - // Unique ID for the license configuration. + // Unique ID of the license configuration. LicenseConfigurationId *string `type:"string"` - // Number of available licenses. + // Number of licenses managed by the license configuration. LicenseCount *int64 `type:"long"` - // Sets the number of available licenses as a hard limit. + // Number of available licenses as a hard limit. LicenseCountHardLimit *bool `type:"boolean"` - // Dimension on which the licenses are counted. + // Dimension to use to track the license inventory. LicenseCountingType *string `type:"string" enum:"LicenseCountingType"` // License rules. LicenseRules []*string `type:"list"` - // Summaries of the managed resources. + // Summaries for managed resources. ManagedResourceSummaryList []*ManagedResourceSummary `type:"list"` // Name of the license configuration. Name *string `type:"string"` - // Account ID of the owner of the license configuration. + // Account ID of the license configuration's owner. OwnerAccountId *string `type:"string"` // Product information. ProductInformationList []*ProductInformation `type:"list"` - // License configuration status. + // Status of the license configuration. Status *string `type:"string"` - - // Tags for the license configuration. - Tags []*Tag `type:"list"` } // String returns the string representation -func (s GetLicenseConfigurationOutput) String() string { +func (s LicenseConfiguration) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GetLicenseConfigurationOutput) GoString() string { +func (s LicenseConfiguration) GoString() string { return s.String() } // SetAutomatedDiscoveryInformation sets the AutomatedDiscoveryInformation field's value. -func (s *GetLicenseConfigurationOutput) SetAutomatedDiscoveryInformation(v *AutomatedDiscoveryInformation) *GetLicenseConfigurationOutput { +func (s *LicenseConfiguration) SetAutomatedDiscoveryInformation(v *AutomatedDiscoveryInformation) *LicenseConfiguration { s.AutomatedDiscoveryInformation = v return s } // SetConsumedLicenseSummaryList sets the ConsumedLicenseSummaryList field's value. -func (s *GetLicenseConfigurationOutput) SetConsumedLicenseSummaryList(v []*ConsumedLicenseSummary) *GetLicenseConfigurationOutput { +func (s *LicenseConfiguration) SetConsumedLicenseSummaryList(v []*ConsumedLicenseSummary) *LicenseConfiguration { s.ConsumedLicenseSummaryList = v return s } // SetConsumedLicenses sets the ConsumedLicenses field's value. -func (s *GetLicenseConfigurationOutput) SetConsumedLicenses(v int64) *GetLicenseConfigurationOutput { +func (s *LicenseConfiguration) SetConsumedLicenses(v int64) *LicenseConfiguration { s.ConsumedLicenses = &v return s } // SetDescription sets the Description field's value. -func (s *GetLicenseConfigurationOutput) SetDescription(v string) *GetLicenseConfigurationOutput { +func (s *LicenseConfiguration) SetDescription(v string) *LicenseConfiguration { s.Description = &v return s } // SetLicenseConfigurationArn sets the LicenseConfigurationArn field's value. -func (s *GetLicenseConfigurationOutput) SetLicenseConfigurationArn(v string) *GetLicenseConfigurationOutput { +func (s *LicenseConfiguration) SetLicenseConfigurationArn(v string) *LicenseConfiguration { s.LicenseConfigurationArn = &v return s } // SetLicenseConfigurationId sets the LicenseConfigurationId field's value. -func (s *GetLicenseConfigurationOutput) SetLicenseConfigurationId(v string) *GetLicenseConfigurationOutput { +func (s *LicenseConfiguration) SetLicenseConfigurationId(v string) *LicenseConfiguration { s.LicenseConfigurationId = &v return s } // SetLicenseCount sets the LicenseCount field's value. -func (s *GetLicenseConfigurationOutput) SetLicenseCount(v int64) *GetLicenseConfigurationOutput { +func (s *LicenseConfiguration) SetLicenseCount(v int64) *LicenseConfiguration { s.LicenseCount = &v return s } // SetLicenseCountHardLimit sets the LicenseCountHardLimit field's value. -func (s *GetLicenseConfigurationOutput) SetLicenseCountHardLimit(v bool) *GetLicenseConfigurationOutput { +func (s *LicenseConfiguration) SetLicenseCountHardLimit(v bool) *LicenseConfiguration { s.LicenseCountHardLimit = &v return s } // SetLicenseCountingType sets the LicenseCountingType field's value. -func (s *GetLicenseConfigurationOutput) SetLicenseCountingType(v string) *GetLicenseConfigurationOutput { +func (s *LicenseConfiguration) SetLicenseCountingType(v string) *LicenseConfiguration { s.LicenseCountingType = &v return s } // SetLicenseRules sets the LicenseRules field's value. -func (s *GetLicenseConfigurationOutput) SetLicenseRules(v []*string) *GetLicenseConfigurationOutput { +func (s *LicenseConfiguration) SetLicenseRules(v []*string) *LicenseConfiguration { s.LicenseRules = v return s } // SetManagedResourceSummaryList sets the ManagedResourceSummaryList field's value. -func (s *GetLicenseConfigurationOutput) SetManagedResourceSummaryList(v []*ManagedResourceSummary) *GetLicenseConfigurationOutput { +func (s *LicenseConfiguration) SetManagedResourceSummaryList(v []*ManagedResourceSummary) *LicenseConfiguration { s.ManagedResourceSummaryList = v return s } // SetName sets the Name field's value. -func (s *GetLicenseConfigurationOutput) SetName(v string) *GetLicenseConfigurationOutput { +func (s *LicenseConfiguration) SetName(v string) *LicenseConfiguration { s.Name = &v return s } // SetOwnerAccountId sets the OwnerAccountId field's value. -func (s *GetLicenseConfigurationOutput) SetOwnerAccountId(v string) *GetLicenseConfigurationOutput { +func (s *LicenseConfiguration) SetOwnerAccountId(v string) *LicenseConfiguration { s.OwnerAccountId = &v return s } // SetProductInformationList sets the ProductInformationList field's value. -func (s *GetLicenseConfigurationOutput) SetProductInformationList(v []*ProductInformation) *GetLicenseConfigurationOutput { +func (s *LicenseConfiguration) SetProductInformationList(v []*ProductInformation) *LicenseConfiguration { s.ProductInformationList = v return s } // SetStatus sets the Status field's value. -func (s *GetLicenseConfigurationOutput) SetStatus(v string) *GetLicenseConfigurationOutput { +func (s *LicenseConfiguration) SetStatus(v string) *LicenseConfiguration { s.Status = &v return s } -// SetTags sets the Tags field's value. -func (s *GetLicenseConfigurationOutput) SetTags(v []*Tag) *GetLicenseConfigurationOutput { - s.Tags = v +// Describes an association with a license configuration. +type LicenseConfigurationAssociation struct { + _ struct{} `type:"structure"` + + // Scope of AMI associations. The possible value is cross-account. + AmiAssociationScope *string `type:"string"` + + // Time when the license configuration was associated with the resource. + AssociationTime *time.Time `type:"timestamp"` + + // Amazon Resource Name (ARN) of the resource. + ResourceArn *string `type:"string"` + + // ID of the AWS account that owns the resource consuming licenses. + ResourceOwnerId *string `type:"string"` + + // Type of server resource. + ResourceType *string `type:"string" enum:"ResourceType"` +} + +// String returns the string representation +func (s LicenseConfigurationAssociation) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s LicenseConfigurationAssociation) GoString() string { + return s.String() +} + +// SetAmiAssociationScope sets the AmiAssociationScope field's value. +func (s *LicenseConfigurationAssociation) SetAmiAssociationScope(v string) *LicenseConfigurationAssociation { + s.AmiAssociationScope = &v return s } -type GetServiceSettingsInput struct { +// SetAssociationTime sets the AssociationTime field's value. +func (s *LicenseConfigurationAssociation) SetAssociationTime(v time.Time) *LicenseConfigurationAssociation { + s.AssociationTime = &v + return s +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *LicenseConfigurationAssociation) SetResourceArn(v string) *LicenseConfigurationAssociation { + s.ResourceArn = &v + return s +} + +// SetResourceOwnerId sets the ResourceOwnerId field's value. +func (s *LicenseConfigurationAssociation) SetResourceOwnerId(v string) *LicenseConfigurationAssociation { + s.ResourceOwnerId = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *LicenseConfigurationAssociation) SetResourceType(v string) *LicenseConfigurationAssociation { + s.ResourceType = &v + return s +} + +// Details about the usage of a resource associated with a license configuration. +type LicenseConfigurationUsage struct { _ struct{} `type:"structure"` + + // Time when the license configuration was initially associated with the resource. + AssociationTime *time.Time `type:"timestamp"` + + // Number of licenses consumed by the resource. + ConsumedLicenses *int64 `type:"long"` + + // Amazon Resource Name (ARN) of the resource. + ResourceArn *string `type:"string"` + + // ID of the account that owns the resource. + ResourceOwnerId *string `type:"string"` + + // Status of the resource. + ResourceStatus *string `type:"string"` + + // Type of resource. + ResourceType *string `type:"string" enum:"ResourceType"` } // String returns the string representation -func (s GetServiceSettingsInput) String() string { +func (s LicenseConfigurationUsage) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GetServiceSettingsInput) GoString() string { +func (s LicenseConfigurationUsage) GoString() string { return s.String() } -type GetServiceSettingsOutput struct { +// SetAssociationTime sets the AssociationTime field's value. +func (s *LicenseConfigurationUsage) SetAssociationTime(v time.Time) *LicenseConfigurationUsage { + s.AssociationTime = &v + return s +} + +// SetConsumedLicenses sets the ConsumedLicenses field's value. +func (s *LicenseConfigurationUsage) SetConsumedLicenses(v int64) *LicenseConfigurationUsage { + s.ConsumedLicenses = &v + return s +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *LicenseConfigurationUsage) SetResourceArn(v string) *LicenseConfigurationUsage { + s.ResourceArn = &v + return s +} + +// SetResourceOwnerId sets the ResourceOwnerId field's value. +func (s *LicenseConfigurationUsage) SetResourceOwnerId(v string) *LicenseConfigurationUsage { + s.ResourceOwnerId = &v + return s +} + +// SetResourceStatus sets the ResourceStatus field's value. +func (s *LicenseConfigurationUsage) SetResourceStatus(v string) *LicenseConfigurationUsage { + s.ResourceStatus = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *LicenseConfigurationUsage) SetResourceType(v string) *LicenseConfigurationUsage { + s.ResourceType = &v + return s +} + +// Describes the failure of a license operation. +type LicenseOperationFailure struct { _ struct{} `type:"structure"` - // Indicates whether cross-account discovery has been enabled. - EnableCrossAccountsDiscovery *bool `type:"boolean"` + // Error message. + ErrorMessage *string `type:"string"` - // Amazon Resource Name (ARN) of the AWS resource share. The License Manager - // master account will provide member accounts with access to this share. - LicenseManagerResourceShareArn *string `type:"string"` + // Failure time. + FailureTime *time.Time `type:"timestamp"` - // Indicates whether AWS Organizations has been integrated with License Manager - // for cross-account discovery. - OrganizationConfiguration *OrganizationConfiguration `type:"structure"` + // Reserved. + MetadataList []*Metadata `type:"list"` - // Regional S3 bucket path for storing reports, license trail event data, discovery - // data, and so on. - S3BucketArn *string `type:"string"` + // Name of the operation. + OperationName *string `type:"string"` - // SNS topic configured to receive notifications from License Manager. - SnsTopicArn *string `type:"string"` + // The requester is "License Manager Automated Discovery". + OperationRequestedBy *string `type:"string"` + + // Amazon Resource Name (ARN) of the resource. + ResourceArn *string `type:"string"` + + // ID of the AWS account that owns the resource. + ResourceOwnerId *string `type:"string"` + + // Resource type. + ResourceType *string `type:"string" enum:"ResourceType"` } // String returns the string representation -func (s GetServiceSettingsOutput) String() string { +func (s LicenseOperationFailure) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s GetServiceSettingsOutput) GoString() string { +func (s LicenseOperationFailure) GoString() string { return s.String() } -// SetEnableCrossAccountsDiscovery sets the EnableCrossAccountsDiscovery field's value. -func (s *GetServiceSettingsOutput) SetEnableCrossAccountsDiscovery(v bool) *GetServiceSettingsOutput { - s.EnableCrossAccountsDiscovery = &v +// SetErrorMessage sets the ErrorMessage field's value. +func (s *LicenseOperationFailure) SetErrorMessage(v string) *LicenseOperationFailure { + s.ErrorMessage = &v return s } -// SetLicenseManagerResourceShareArn sets the LicenseManagerResourceShareArn field's value. -func (s *GetServiceSettingsOutput) SetLicenseManagerResourceShareArn(v string) *GetServiceSettingsOutput { - s.LicenseManagerResourceShareArn = &v +// SetFailureTime sets the FailureTime field's value. +func (s *LicenseOperationFailure) SetFailureTime(v time.Time) *LicenseOperationFailure { + s.FailureTime = &v return s } -// SetOrganizationConfiguration sets the OrganizationConfiguration field's value. -func (s *GetServiceSettingsOutput) SetOrganizationConfiguration(v *OrganizationConfiguration) *GetServiceSettingsOutput { - s.OrganizationConfiguration = v +// SetMetadataList sets the MetadataList field's value. +func (s *LicenseOperationFailure) SetMetadataList(v []*Metadata) *LicenseOperationFailure { + s.MetadataList = v return s } -// SetS3BucketArn sets the S3BucketArn field's value. -func (s *GetServiceSettingsOutput) SetS3BucketArn(v string) *GetServiceSettingsOutput { - s.S3BucketArn = &v +// SetOperationName sets the OperationName field's value. +func (s *LicenseOperationFailure) SetOperationName(v string) *LicenseOperationFailure { + s.OperationName = &v return s } -// SetSnsTopicArn sets the SnsTopicArn field's value. -func (s *GetServiceSettingsOutput) SetSnsTopicArn(v string) *GetServiceSettingsOutput { - s.SnsTopicArn = &v +// SetOperationRequestedBy sets the OperationRequestedBy field's value. +func (s *LicenseOperationFailure) SetOperationRequestedBy(v string) *LicenseOperationFailure { + s.OperationRequestedBy = &v return s } -// One or more parameter values are not valid. -type InvalidParameterValueException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` +// SetResourceArn sets the ResourceArn field's value. +func (s *LicenseOperationFailure) SetResourceArn(v string) *LicenseOperationFailure { + s.ResourceArn = &v + return s +} - Message_ *string `locationName:"Message" type:"string"` +// SetResourceOwnerId sets the ResourceOwnerId field's value. +func (s *LicenseOperationFailure) SetResourceOwnerId(v string) *LicenseOperationFailure { + s.ResourceOwnerId = &v + return s +} + +// SetResourceType sets the ResourceType field's value. +func (s *LicenseOperationFailure) SetResourceType(v string) *LicenseOperationFailure { + s.ResourceType = &v + return s +} + +// Details for associating a license configuration with a resource. +type LicenseSpecification struct { + _ struct{} `type:"structure"` + + // Scope of AMI associations. The possible value is cross-account. + AmiAssociationScope *string `type:"string"` + + // Amazon Resource Name (ARN) of the license configuration. + // + // LicenseConfigurationArn is a required field + LicenseConfigurationArn *string `type:"string" required:"true"` } // String returns the string representation -func (s InvalidParameterValueException) String() string { +func (s LicenseSpecification) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s InvalidParameterValueException) GoString() string { +func (s LicenseSpecification) GoString() string { return s.String() } -func newErrorInvalidParameterValueException(v protocol.ResponseMetadata) error { - return &InvalidParameterValueException{ - RespMetadata: v, +// Validate inspects the fields of the type to determine if they are valid. +func (s *LicenseSpecification) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "LicenseSpecification"} + if s.LicenseConfigurationArn == nil { + invalidParams.Add(request.NewErrParamRequired("LicenseConfigurationArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams } + return nil } -// Code returns the exception type name. -func (s *InvalidParameterValueException) Code() string { - return "InvalidParameterValueException" +// SetAmiAssociationScope sets the AmiAssociationScope field's value. +func (s *LicenseSpecification) SetAmiAssociationScope(v string) *LicenseSpecification { + s.AmiAssociationScope = &v + return s } -// Message returns the exception's message. -func (s *InvalidParameterValueException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" +// SetLicenseConfigurationArn sets the LicenseConfigurationArn field's value. +func (s *LicenseSpecification) SetLicenseConfigurationArn(v string) *LicenseSpecification { + s.LicenseConfigurationArn = &v + return s } -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *InvalidParameterValueException) OrigErr() error { - return nil +// Describes the entitlement usage associated with a license. +type LicenseUsage struct { + _ struct{} `type:"structure"` + + // License entitlement usages. + EntitlementUsages []*EntitlementUsage `type:"list"` } -func (s *InvalidParameterValueException) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +// String returns the string representation +func (s LicenseUsage) String() string { + return awsutil.Prettify(s) } -// Status code returns the HTTP status code for the request's response error. -func (s *InvalidParameterValueException) StatusCode() int { - return s.RespMetadata.StatusCode +// GoString returns the string representation +func (s LicenseUsage) GoString() string { + return s.String() } -// RequestID returns the service's response RequestID for request. -func (s *InvalidParameterValueException) RequestID() string { - return s.RespMetadata.RequestID +// SetEntitlementUsages sets the EntitlementUsages field's value. +func (s *LicenseUsage) SetEntitlementUsages(v []*EntitlementUsage) *LicenseUsage { + s.EntitlementUsages = v + return s } -// License Manager cannot allocate a license to a resource because of its state. -// -// For example, you cannot allocate a license to an instance in the process -// of shutting down. -type InvalidResourceStateException struct { +// You do not have enough licenses available to support a new resource launch. +type LicenseUsageException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -2403,28 +8344,28 @@ type InvalidResourceStateException struct { } // String returns the string representation -func (s InvalidResourceStateException) String() string { +func (s LicenseUsageException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s InvalidResourceStateException) GoString() string { +func (s LicenseUsageException) GoString() string { return s.String() } -func newErrorInvalidResourceStateException(v protocol.ResponseMetadata) error { - return &InvalidResourceStateException{ +func newErrorLicenseUsageException(v protocol.ResponseMetadata) error { + return &LicenseUsageException{ RespMetadata: v, } } // Code returns the exception type name. -func (s *InvalidResourceStateException) Code() string { - return "InvalidResourceStateException" +func (s *LicenseUsageException) Code() string { + return "LicenseUsageException" } // Message returns the exception's message. -func (s *InvalidResourceStateException) Message() string { +func (s *LicenseUsageException) Message() string { if s.Message_ != nil { return *s.Message_ } @@ -2432,60 +8373,54 @@ func (s *InvalidResourceStateException) Message() string { } // OrigErr always returns nil, satisfies awserr.Error interface. -func (s *InvalidResourceStateException) OrigErr() error { +func (s *LicenseUsageException) OrigErr() error { return nil } -func (s *InvalidResourceStateException) Error() string { +func (s *LicenseUsageException) Error() string { return fmt.Sprintf("%s: %s", s.Code(), s.Message()) } // Status code returns the HTTP status code for the request's response error. -func (s *InvalidResourceStateException) StatusCode() int { +func (s *LicenseUsageException) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. -func (s *InvalidResourceStateException) RequestID() string { +func (s *LicenseUsageException) RequestID() string { return s.RespMetadata.RequestID } -// An inventory filter. -type InventoryFilter struct { +type ListAssociationsForLicenseConfigurationInput struct { _ struct{} `type:"structure"` - // Condition of the filter. + // Amazon Resource Name (ARN) of a license configuration. // - // Condition is a required field - Condition *string `type:"string" required:"true" enum:"InventoryFilterCondition"` + // LicenseConfigurationArn is a required field + LicenseConfigurationArn *string `type:"string" required:"true"` - // Name of the filter. - // - // Name is a required field - Name *string `type:"string" required:"true"` + // Maximum number of results to return in a single call. + MaxResults *int64 `type:"integer"` - // Value of the filter. - Value *string `type:"string"` + // Token for the next set of results. + NextToken *string `type:"string"` } // String returns the string representation -func (s InventoryFilter) String() string { +func (s ListAssociationsForLicenseConfigurationInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s InventoryFilter) GoString() string { +func (s ListAssociationsForLicenseConfigurationInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *InventoryFilter) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "InventoryFilter"} - if s.Condition == nil { - invalidParams.Add(request.NewErrParamRequired("Condition")) - } - if s.Name == nil { - invalidParams.Add(request.NewErrParamRequired("Name")) +func (s *ListAssociationsForLicenseConfigurationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListAssociationsForLicenseConfigurationInput"} + if s.LicenseConfigurationArn == nil { + invalidParams.Add(request.NewErrParamRequired("LicenseConfigurationArn")) } if invalidParams.Len() > 0 { @@ -2494,423 +8429,370 @@ func (s *InventoryFilter) Validate() error { return nil } -// SetCondition sets the Condition field's value. -func (s *InventoryFilter) SetCondition(v string) *InventoryFilter { - s.Condition = &v +// SetLicenseConfigurationArn sets the LicenseConfigurationArn field's value. +func (s *ListAssociationsForLicenseConfigurationInput) SetLicenseConfigurationArn(v string) *ListAssociationsForLicenseConfigurationInput { + s.LicenseConfigurationArn = &v return s } -// SetName sets the Name field's value. -func (s *InventoryFilter) SetName(v string) *InventoryFilter { - s.Name = &v +// SetMaxResults sets the MaxResults field's value. +func (s *ListAssociationsForLicenseConfigurationInput) SetMaxResults(v int64) *ListAssociationsForLicenseConfigurationInput { + s.MaxResults = &v return s } -// SetValue sets the Value field's value. -func (s *InventoryFilter) SetValue(v string) *InventoryFilter { - s.Value = &v +// SetNextToken sets the NextToken field's value. +func (s *ListAssociationsForLicenseConfigurationInput) SetNextToken(v string) *ListAssociationsForLicenseConfigurationInput { + s.NextToken = &v return s } -// A license configuration is an abstraction of a customer license agreement -// that can be consumed and enforced by License Manager. Components include -// specifications for the license type (licensing by instance, socket, CPU, -// or vCPU), allowed tenancy (shared tenancy, Dedicated Instance, Dedicated -// Host, or all of these), host affinity (how long a VM must be associated with -// a host), and the number of licenses purchased and used. -type LicenseConfiguration struct { +type ListAssociationsForLicenseConfigurationOutput struct { _ struct{} `type:"structure"` - // Automated discovery information. - AutomatedDiscoveryInformation *AutomatedDiscoveryInformation `type:"structure"` - - // Summaries for licenses consumed by various resources. - ConsumedLicenseSummaryList []*ConsumedLicenseSummary `type:"list"` - - // Number of licenses consumed. - ConsumedLicenses *int64 `type:"long"` - - // Description of the license configuration. - Description *string `type:"string"` - - // Amazon Resource Name (ARN) of the license configuration. - LicenseConfigurationArn *string `type:"string"` - - // Unique ID of the license configuration. - LicenseConfigurationId *string `type:"string"` - - // Number of licenses managed by the license configuration. - LicenseCount *int64 `type:"long"` - - // Number of available licenses as a hard limit. - LicenseCountHardLimit *bool `type:"boolean"` - - // Dimension to use to track the license inventory. - LicenseCountingType *string `type:"string" enum:"LicenseCountingType"` - - // License rules. - LicenseRules []*string `type:"list"` - - // Summaries for managed resources. - ManagedResourceSummaryList []*ManagedResourceSummary `type:"list"` - - // Name of the license configuration. - Name *string `type:"string"` - - // Account ID of the license configuration's owner. - OwnerAccountId *string `type:"string"` - - // Product information. - ProductInformationList []*ProductInformation `type:"list"` + // Information about the associations for the license configuration. + LicenseConfigurationAssociations []*LicenseConfigurationAssociation `type:"list"` - // Status of the license configuration. - Status *string `type:"string"` + // Token for the next set of results. + NextToken *string `type:"string"` } // String returns the string representation -func (s LicenseConfiguration) String() string { +func (s ListAssociationsForLicenseConfigurationOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s LicenseConfiguration) GoString() string { +func (s ListAssociationsForLicenseConfigurationOutput) GoString() string { return s.String() } -// SetAutomatedDiscoveryInformation sets the AutomatedDiscoveryInformation field's value. -func (s *LicenseConfiguration) SetAutomatedDiscoveryInformation(v *AutomatedDiscoveryInformation) *LicenseConfiguration { - s.AutomatedDiscoveryInformation = v +// SetLicenseConfigurationAssociations sets the LicenseConfigurationAssociations field's value. +func (s *ListAssociationsForLicenseConfigurationOutput) SetLicenseConfigurationAssociations(v []*LicenseConfigurationAssociation) *ListAssociationsForLicenseConfigurationOutput { + s.LicenseConfigurationAssociations = v return s } -// SetConsumedLicenseSummaryList sets the ConsumedLicenseSummaryList field's value. -func (s *LicenseConfiguration) SetConsumedLicenseSummaryList(v []*ConsumedLicenseSummary) *LicenseConfiguration { - s.ConsumedLicenseSummaryList = v +// SetNextToken sets the NextToken field's value. +func (s *ListAssociationsForLicenseConfigurationOutput) SetNextToken(v string) *ListAssociationsForLicenseConfigurationOutput { + s.NextToken = &v return s } -// SetConsumedLicenses sets the ConsumedLicenses field's value. -func (s *LicenseConfiguration) SetConsumedLicenses(v int64) *LicenseConfiguration { - s.ConsumedLicenses = &v - return s -} +type ListDistributedGrantsInput struct { + _ struct{} `type:"structure"` -// SetDescription sets the Description field's value. -func (s *LicenseConfiguration) SetDescription(v string) *LicenseConfiguration { - s.Description = &v - return s -} + // Filters to scope the results. The following filters are supported: + // + // * LicenseARN + // + // * Status + // + // * PrincipalARN + // + // * ParentARN + Filters []*Filter `type:"list"` -// SetLicenseConfigurationArn sets the LicenseConfigurationArn field's value. -func (s *LicenseConfiguration) SetLicenseConfigurationArn(v string) *LicenseConfiguration { - s.LicenseConfigurationArn = &v - return s -} + // Amazon Resource Names (ARNs) of the grants. + GrantArns []*string `type:"list"` -// SetLicenseConfigurationId sets the LicenseConfigurationId field's value. -func (s *LicenseConfiguration) SetLicenseConfigurationId(v string) *LicenseConfiguration { - s.LicenseConfigurationId = &v - return s -} + // Maximum number of results to return in a single call. + MaxResults *int64 `min:"1" type:"integer"` -// SetLicenseCount sets the LicenseCount field's value. -func (s *LicenseConfiguration) SetLicenseCount(v int64) *LicenseConfiguration { - s.LicenseCount = &v - return s + // Token for the next set of results. + NextToken *string `type:"string"` } -// SetLicenseCountHardLimit sets the LicenseCountHardLimit field's value. -func (s *LicenseConfiguration) SetLicenseCountHardLimit(v bool) *LicenseConfiguration { - s.LicenseCountHardLimit = &v - return s +// String returns the string representation +func (s ListDistributedGrantsInput) String() string { + return awsutil.Prettify(s) } -// SetLicenseCountingType sets the LicenseCountingType field's value. -func (s *LicenseConfiguration) SetLicenseCountingType(v string) *LicenseConfiguration { - s.LicenseCountingType = &v - return s +// GoString returns the string representation +func (s ListDistributedGrantsInput) GoString() string { + return s.String() } -// SetLicenseRules sets the LicenseRules field's value. -func (s *LicenseConfiguration) SetLicenseRules(v []*string) *LicenseConfiguration { - s.LicenseRules = v - return s -} +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListDistributedGrantsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListDistributedGrantsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } -// SetManagedResourceSummaryList sets the ManagedResourceSummaryList field's value. -func (s *LicenseConfiguration) SetManagedResourceSummaryList(v []*ManagedResourceSummary) *LicenseConfiguration { - s.ManagedResourceSummaryList = v - return s + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetName sets the Name field's value. -func (s *LicenseConfiguration) SetName(v string) *LicenseConfiguration { - s.Name = &v +// SetFilters sets the Filters field's value. +func (s *ListDistributedGrantsInput) SetFilters(v []*Filter) *ListDistributedGrantsInput { + s.Filters = v return s } -// SetOwnerAccountId sets the OwnerAccountId field's value. -func (s *LicenseConfiguration) SetOwnerAccountId(v string) *LicenseConfiguration { - s.OwnerAccountId = &v +// SetGrantArns sets the GrantArns field's value. +func (s *ListDistributedGrantsInput) SetGrantArns(v []*string) *ListDistributedGrantsInput { + s.GrantArns = v return s } -// SetProductInformationList sets the ProductInformationList field's value. -func (s *LicenseConfiguration) SetProductInformationList(v []*ProductInformation) *LicenseConfiguration { - s.ProductInformationList = v +// SetMaxResults sets the MaxResults field's value. +func (s *ListDistributedGrantsInput) SetMaxResults(v int64) *ListDistributedGrantsInput { + s.MaxResults = &v return s } -// SetStatus sets the Status field's value. -func (s *LicenseConfiguration) SetStatus(v string) *LicenseConfiguration { - s.Status = &v +// SetNextToken sets the NextToken field's value. +func (s *ListDistributedGrantsInput) SetNextToken(v string) *ListDistributedGrantsInput { + s.NextToken = &v return s } -// Describes an association with a license configuration. -type LicenseConfigurationAssociation struct { +type ListDistributedGrantsOutput struct { _ struct{} `type:"structure"` - // Scope of AMI associations. - AmiAssociationScope *string `type:"string"` - - // Time when the license configuration was associated with the resource. - AssociationTime *time.Time `type:"timestamp"` - - // Amazon Resource Name (ARN) of the resource. - ResourceArn *string `type:"string"` - - // ID of the AWS account that owns the resource consuming licenses. - ResourceOwnerId *string `type:"string"` + // Distributed grant details. + Grants []*Grant `type:"list"` - // Type of server resource. - ResourceType *string `type:"string" enum:"ResourceType"` + // Token for the next set of results. + NextToken *string `type:"string"` } // String returns the string representation -func (s LicenseConfigurationAssociation) String() string { +func (s ListDistributedGrantsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s LicenseConfigurationAssociation) GoString() string { +func (s ListDistributedGrantsOutput) GoString() string { return s.String() } -// SetAmiAssociationScope sets the AmiAssociationScope field's value. -func (s *LicenseConfigurationAssociation) SetAmiAssociationScope(v string) *LicenseConfigurationAssociation { - s.AmiAssociationScope = &v - return s -} - -// SetAssociationTime sets the AssociationTime field's value. -func (s *LicenseConfigurationAssociation) SetAssociationTime(v time.Time) *LicenseConfigurationAssociation { - s.AssociationTime = &v - return s -} - -// SetResourceArn sets the ResourceArn field's value. -func (s *LicenseConfigurationAssociation) SetResourceArn(v string) *LicenseConfigurationAssociation { - s.ResourceArn = &v - return s -} - -// SetResourceOwnerId sets the ResourceOwnerId field's value. -func (s *LicenseConfigurationAssociation) SetResourceOwnerId(v string) *LicenseConfigurationAssociation { - s.ResourceOwnerId = &v +// SetGrants sets the Grants field's value. +func (s *ListDistributedGrantsOutput) SetGrants(v []*Grant) *ListDistributedGrantsOutput { + s.Grants = v return s } -// SetResourceType sets the ResourceType field's value. -func (s *LicenseConfigurationAssociation) SetResourceType(v string) *LicenseConfigurationAssociation { - s.ResourceType = &v +// SetNextToken sets the NextToken field's value. +func (s *ListDistributedGrantsOutput) SetNextToken(v string) *ListDistributedGrantsOutput { + s.NextToken = &v return s } -// Details about the usage of a resource associated with a license configuration. -type LicenseConfigurationUsage struct { +type ListFailuresForLicenseConfigurationOperationsInput struct { _ struct{} `type:"structure"` - // Time when the license configuration was initially associated with the resource. - AssociationTime *time.Time `type:"timestamp"` - - // Number of licenses consumed by the resource. - ConsumedLicenses *int64 `type:"long"` - - // Amazon Resource Name (ARN) of the resource. - ResourceArn *string `type:"string"` - - // ID of the account that owns the resource. - ResourceOwnerId *string `type:"string"` + // Amazon Resource Name of the license configuration. + // + // LicenseConfigurationArn is a required field + LicenseConfigurationArn *string `type:"string" required:"true"` - // Status of the resource. - ResourceStatus *string `type:"string"` + // Maximum number of results to return in a single call. + MaxResults *int64 `type:"integer"` - // Type of resource. - ResourceType *string `type:"string" enum:"ResourceType"` + // Token for the next set of results. + NextToken *string `type:"string"` } // String returns the string representation -func (s LicenseConfigurationUsage) String() string { +func (s ListFailuresForLicenseConfigurationOperationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s LicenseConfigurationUsage) GoString() string { +func (s ListFailuresForLicenseConfigurationOperationsInput) GoString() string { return s.String() } -// SetAssociationTime sets the AssociationTime field's value. -func (s *LicenseConfigurationUsage) SetAssociationTime(v time.Time) *LicenseConfigurationUsage { - s.AssociationTime = &v - return s -} +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListFailuresForLicenseConfigurationOperationsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListFailuresForLicenseConfigurationOperationsInput"} + if s.LicenseConfigurationArn == nil { + invalidParams.Add(request.NewErrParamRequired("LicenseConfigurationArn")) + } -// SetConsumedLicenses sets the ConsumedLicenses field's value. -func (s *LicenseConfigurationUsage) SetConsumedLicenses(v int64) *LicenseConfigurationUsage { - s.ConsumedLicenses = &v - return s + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetResourceArn sets the ResourceArn field's value. -func (s *LicenseConfigurationUsage) SetResourceArn(v string) *LicenseConfigurationUsage { - s.ResourceArn = &v +// SetLicenseConfigurationArn sets the LicenseConfigurationArn field's value. +func (s *ListFailuresForLicenseConfigurationOperationsInput) SetLicenseConfigurationArn(v string) *ListFailuresForLicenseConfigurationOperationsInput { + s.LicenseConfigurationArn = &v return s } -// SetResourceOwnerId sets the ResourceOwnerId field's value. -func (s *LicenseConfigurationUsage) SetResourceOwnerId(v string) *LicenseConfigurationUsage { - s.ResourceOwnerId = &v +// SetMaxResults sets the MaxResults field's value. +func (s *ListFailuresForLicenseConfigurationOperationsInput) SetMaxResults(v int64) *ListFailuresForLicenseConfigurationOperationsInput { + s.MaxResults = &v return s } -// SetResourceStatus sets the ResourceStatus field's value. -func (s *LicenseConfigurationUsage) SetResourceStatus(v string) *LicenseConfigurationUsage { - s.ResourceStatus = &v +// SetNextToken sets the NextToken field's value. +func (s *ListFailuresForLicenseConfigurationOperationsInput) SetNextToken(v string) *ListFailuresForLicenseConfigurationOperationsInput { + s.NextToken = &v return s } -// SetResourceType sets the ResourceType field's value. -func (s *LicenseConfigurationUsage) SetResourceType(v string) *LicenseConfigurationUsage { - s.ResourceType = &v - return s +type ListFailuresForLicenseConfigurationOperationsOutput struct { + _ struct{} `type:"structure"` + + // License configuration operations that failed. + LicenseOperationFailureList []*LicenseOperationFailure `type:"list"` + + // Token for the next set of results. + NextToken *string `type:"string"` } -// Describes the failure of a license operation. -type LicenseOperationFailure struct { - _ struct{} `type:"structure"` +// String returns the string representation +func (s ListFailuresForLicenseConfigurationOperationsOutput) String() string { + return awsutil.Prettify(s) +} - // Error message. - ErrorMessage *string `type:"string"` +// GoString returns the string representation +func (s ListFailuresForLicenseConfigurationOperationsOutput) GoString() string { + return s.String() +} - // Failure time. - FailureTime *time.Time `type:"timestamp"` +// SetLicenseOperationFailureList sets the LicenseOperationFailureList field's value. +func (s *ListFailuresForLicenseConfigurationOperationsOutput) SetLicenseOperationFailureList(v []*LicenseOperationFailure) *ListFailuresForLicenseConfigurationOperationsOutput { + s.LicenseOperationFailureList = v + return s +} - // Reserved. - MetadataList []*Metadata `type:"list"` +// SetNextToken sets the NextToken field's value. +func (s *ListFailuresForLicenseConfigurationOperationsOutput) SetNextToken(v string) *ListFailuresForLicenseConfigurationOperationsOutput { + s.NextToken = &v + return s +} - // Name of the operation. - OperationName *string `type:"string"` +type ListLicenseConfigurationsInput struct { + _ struct{} `type:"structure"` - // The requester is "License Manager Automated Discovery". - OperationRequestedBy *string `type:"string"` + // Filters to scope the results. The following filters and logical operators + // are supported: + // + // * licenseCountingType - The dimension on which licenses are counted. Possible + // values are vCPU | Instance | Core | Socket. Logical operators are EQUALS + // | NOT_EQUALS. + // + // * enforceLicenseCount - A Boolean value that indicates whether hard license + // enforcement is used. Logical operators are EQUALS | NOT_EQUALS. + // + // * usagelimitExceeded - A Boolean value that indicates whether the available + // licenses have been exceeded. Logical operators are EQUALS | NOT_EQUALS. + Filters []*Filter `type:"list"` - // Amazon Resource Name (ARN) of the resource. - ResourceArn *string `type:"string"` + // Amazon Resource Names (ARN) of the license configurations. + LicenseConfigurationArns []*string `type:"list"` - // ID of the AWS account that owns the resource. - ResourceOwnerId *string `type:"string"` + // Maximum number of results to return in a single call. + MaxResults *int64 `type:"integer"` - // Resource type. - ResourceType *string `type:"string" enum:"ResourceType"` + // Token for the next set of results. + NextToken *string `type:"string"` } // String returns the string representation -func (s LicenseOperationFailure) String() string { +func (s ListLicenseConfigurationsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s LicenseOperationFailure) GoString() string { +func (s ListLicenseConfigurationsInput) GoString() string { return s.String() } -// SetErrorMessage sets the ErrorMessage field's value. -func (s *LicenseOperationFailure) SetErrorMessage(v string) *LicenseOperationFailure { - s.ErrorMessage = &v +// SetFilters sets the Filters field's value. +func (s *ListLicenseConfigurationsInput) SetFilters(v []*Filter) *ListLicenseConfigurationsInput { + s.Filters = v return s } -// SetFailureTime sets the FailureTime field's value. -func (s *LicenseOperationFailure) SetFailureTime(v time.Time) *LicenseOperationFailure { - s.FailureTime = &v +// SetLicenseConfigurationArns sets the LicenseConfigurationArns field's value. +func (s *ListLicenseConfigurationsInput) SetLicenseConfigurationArns(v []*string) *ListLicenseConfigurationsInput { + s.LicenseConfigurationArns = v return s } -// SetMetadataList sets the MetadataList field's value. -func (s *LicenseOperationFailure) SetMetadataList(v []*Metadata) *LicenseOperationFailure { - s.MetadataList = v +// SetMaxResults sets the MaxResults field's value. +func (s *ListLicenseConfigurationsInput) SetMaxResults(v int64) *ListLicenseConfigurationsInput { + s.MaxResults = &v return s } -// SetOperationName sets the OperationName field's value. -func (s *LicenseOperationFailure) SetOperationName(v string) *LicenseOperationFailure { - s.OperationName = &v +// SetNextToken sets the NextToken field's value. +func (s *ListLicenseConfigurationsInput) SetNextToken(v string) *ListLicenseConfigurationsInput { + s.NextToken = &v return s } -// SetOperationRequestedBy sets the OperationRequestedBy field's value. -func (s *LicenseOperationFailure) SetOperationRequestedBy(v string) *LicenseOperationFailure { - s.OperationRequestedBy = &v - return s +type ListLicenseConfigurationsOutput struct { + _ struct{} `type:"structure"` + + // Information about the license configurations. + LicenseConfigurations []*LicenseConfiguration `type:"list"` + + // Token for the next set of results. + NextToken *string `type:"string"` } -// SetResourceArn sets the ResourceArn field's value. -func (s *LicenseOperationFailure) SetResourceArn(v string) *LicenseOperationFailure { - s.ResourceArn = &v - return s +// String returns the string representation +func (s ListLicenseConfigurationsOutput) String() string { + return awsutil.Prettify(s) } -// SetResourceOwnerId sets the ResourceOwnerId field's value. -func (s *LicenseOperationFailure) SetResourceOwnerId(v string) *LicenseOperationFailure { - s.ResourceOwnerId = &v +// GoString returns the string representation +func (s ListLicenseConfigurationsOutput) GoString() string { + return s.String() +} + +// SetLicenseConfigurations sets the LicenseConfigurations field's value. +func (s *ListLicenseConfigurationsOutput) SetLicenseConfigurations(v []*LicenseConfiguration) *ListLicenseConfigurationsOutput { + s.LicenseConfigurations = v return s } -// SetResourceType sets the ResourceType field's value. -func (s *LicenseOperationFailure) SetResourceType(v string) *LicenseOperationFailure { - s.ResourceType = &v +// SetNextToken sets the NextToken field's value. +func (s *ListLicenseConfigurationsOutput) SetNextToken(v string) *ListLicenseConfigurationsOutput { + s.NextToken = &v return s } -// Details for associating a license configuration with a resource. -type LicenseSpecification struct { +type ListLicenseSpecificationsForResourceInput struct { _ struct{} `type:"structure"` - // Scope of AMI associations. - AmiAssociationScope *string `type:"string"` + // Maximum number of results to return in a single call. + MaxResults *int64 `type:"integer"` - // Amazon Resource Name (ARN) of the license configuration. + // Token for the next set of results. + NextToken *string `type:"string"` + + // Amazon Resource Name (ARN) of a resource that has an associated license configuration. // - // LicenseConfigurationArn is a required field - LicenseConfigurationArn *string `type:"string" required:"true"` + // ResourceArn is a required field + ResourceArn *string `type:"string" required:"true"` } // String returns the string representation -func (s LicenseSpecification) String() string { +func (s ListLicenseSpecificationsForResourceInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s LicenseSpecification) GoString() string { +func (s ListLicenseSpecificationsForResourceInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *LicenseSpecification) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "LicenseSpecification"} - if s.LicenseConfigurationArn == nil { - invalidParams.Add(request.NewErrParamRequired("LicenseConfigurationArn")) +func (s *ListLicenseSpecificationsForResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListLicenseSpecificationsForResourceInput"} + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) } if invalidParams.Len() > 0 { @@ -2919,104 +8801,89 @@ func (s *LicenseSpecification) Validate() error { return nil } -// SetAmiAssociationScope sets the AmiAssociationScope field's value. -func (s *LicenseSpecification) SetAmiAssociationScope(v string) *LicenseSpecification { - s.AmiAssociationScope = &v +// SetMaxResults sets the MaxResults field's value. +func (s *ListLicenseSpecificationsForResourceInput) SetMaxResults(v int64) *ListLicenseSpecificationsForResourceInput { + s.MaxResults = &v return s } -// SetLicenseConfigurationArn sets the LicenseConfigurationArn field's value. -func (s *LicenseSpecification) SetLicenseConfigurationArn(v string) *LicenseSpecification { - s.LicenseConfigurationArn = &v +// SetNextToken sets the NextToken field's value. +func (s *ListLicenseSpecificationsForResourceInput) SetNextToken(v string) *ListLicenseSpecificationsForResourceInput { + s.NextToken = &v return s } -// You do not have enough licenses available to support a new resource launch. -type LicenseUsageException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` +// SetResourceArn sets the ResourceArn field's value. +func (s *ListLicenseSpecificationsForResourceInput) SetResourceArn(v string) *ListLicenseSpecificationsForResourceInput { + s.ResourceArn = &v + return s +} - Message_ *string `locationName:"Message" type:"string"` +type ListLicenseSpecificationsForResourceOutput struct { + _ struct{} `type:"structure"` + + // License configurations associated with a resource. + LicenseSpecifications []*LicenseSpecification `type:"list"` + + // Token for the next set of results. + NextToken *string `type:"string"` } // String returns the string representation -func (s LicenseUsageException) String() string { +func (s ListLicenseSpecificationsForResourceOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s LicenseUsageException) GoString() string { +func (s ListLicenseSpecificationsForResourceOutput) GoString() string { return s.String() } -func newErrorLicenseUsageException(v protocol.ResponseMetadata) error { - return &LicenseUsageException{ - RespMetadata: v, - } -} - -// Code returns the exception type name. -func (s *LicenseUsageException) Code() string { - return "LicenseUsageException" -} - -// Message returns the exception's message. -func (s *LicenseUsageException) Message() string { - if s.Message_ != nil { - return *s.Message_ - } - return "" -} - -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *LicenseUsageException) OrigErr() error { - return nil -} - -func (s *LicenseUsageException) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) -} - -// Status code returns the HTTP status code for the request's response error. -func (s *LicenseUsageException) StatusCode() int { - return s.RespMetadata.StatusCode +// SetLicenseSpecifications sets the LicenseSpecifications field's value. +func (s *ListLicenseSpecificationsForResourceOutput) SetLicenseSpecifications(v []*LicenseSpecification) *ListLicenseSpecificationsForResourceOutput { + s.LicenseSpecifications = v + return s } -// RequestID returns the service's response RequestID for request. -func (s *LicenseUsageException) RequestID() string { - return s.RespMetadata.RequestID +// SetNextToken sets the NextToken field's value. +func (s *ListLicenseSpecificationsForResourceOutput) SetNextToken(v string) *ListLicenseSpecificationsForResourceOutput { + s.NextToken = &v + return s } -type ListAssociationsForLicenseConfigurationInput struct { +type ListLicenseVersionsInput struct { _ struct{} `type:"structure"` - // Amazon Resource Name (ARN) of a license configuration. + // Amazon Resource Name (ARN) of the license. // - // LicenseConfigurationArn is a required field - LicenseConfigurationArn *string `type:"string" required:"true"` + // LicenseArn is a required field + LicenseArn *string `type:"string" required:"true"` // Maximum number of results to return in a single call. - MaxResults *int64 `type:"integer"` + MaxResults *int64 `min:"1" type:"integer"` // Token for the next set of results. NextToken *string `type:"string"` } // String returns the string representation -func (s ListAssociationsForLicenseConfigurationInput) String() string { +func (s ListLicenseVersionsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListAssociationsForLicenseConfigurationInput) GoString() string { +func (s ListLicenseVersionsInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListAssociationsForLicenseConfigurationInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListAssociationsForLicenseConfigurationInput"} - if s.LicenseConfigurationArn == nil { - invalidParams.Add(request.NewErrParamRequired("LicenseConfigurationArn")) +func (s *ListLicenseVersionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListLicenseVersionsInput"} + if s.LicenseArn == nil { + invalidParams.Add(request.NewErrParamRequired("LicenseArn")) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if invalidParams.Len() > 0 { @@ -3025,86 +8892,95 @@ func (s *ListAssociationsForLicenseConfigurationInput) Validate() error { return nil } -// SetLicenseConfigurationArn sets the LicenseConfigurationArn field's value. -func (s *ListAssociationsForLicenseConfigurationInput) SetLicenseConfigurationArn(v string) *ListAssociationsForLicenseConfigurationInput { - s.LicenseConfigurationArn = &v +// SetLicenseArn sets the LicenseArn field's value. +func (s *ListLicenseVersionsInput) SetLicenseArn(v string) *ListLicenseVersionsInput { + s.LicenseArn = &v return s } // SetMaxResults sets the MaxResults field's value. -func (s *ListAssociationsForLicenseConfigurationInput) SetMaxResults(v int64) *ListAssociationsForLicenseConfigurationInput { +func (s *ListLicenseVersionsInput) SetMaxResults(v int64) *ListLicenseVersionsInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. -func (s *ListAssociationsForLicenseConfigurationInput) SetNextToken(v string) *ListAssociationsForLicenseConfigurationInput { +func (s *ListLicenseVersionsInput) SetNextToken(v string) *ListLicenseVersionsInput { s.NextToken = &v return s } -type ListAssociationsForLicenseConfigurationOutput struct { +type ListLicenseVersionsOutput struct { _ struct{} `type:"structure"` - // Information about the associations for the license configuration. - LicenseConfigurationAssociations []*LicenseConfigurationAssociation `type:"list"` + // License details. + Licenses []*License `type:"list"` // Token for the next set of results. NextToken *string `type:"string"` } // String returns the string representation -func (s ListAssociationsForLicenseConfigurationOutput) String() string { +func (s ListLicenseVersionsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListAssociationsForLicenseConfigurationOutput) GoString() string { +func (s ListLicenseVersionsOutput) GoString() string { return s.String() } -// SetLicenseConfigurationAssociations sets the LicenseConfigurationAssociations field's value. -func (s *ListAssociationsForLicenseConfigurationOutput) SetLicenseConfigurationAssociations(v []*LicenseConfigurationAssociation) *ListAssociationsForLicenseConfigurationOutput { - s.LicenseConfigurationAssociations = v +// SetLicenses sets the Licenses field's value. +func (s *ListLicenseVersionsOutput) SetLicenses(v []*License) *ListLicenseVersionsOutput { + s.Licenses = v return s } // SetNextToken sets the NextToken field's value. -func (s *ListAssociationsForLicenseConfigurationOutput) SetNextToken(v string) *ListAssociationsForLicenseConfigurationOutput { +func (s *ListLicenseVersionsOutput) SetNextToken(v string) *ListLicenseVersionsOutput { s.NextToken = &v return s } -type ListFailuresForLicenseConfigurationOperationsInput struct { +type ListLicensesInput struct { _ struct{} `type:"structure"` - // Amazon Resource Name of the license configuration. + // Filters to scope the results. The following filters are supported: // - // LicenseConfigurationArn is a required field - LicenseConfigurationArn *string `type:"string" required:"true"` + // * Beneficiary + // + // * ProductSKU + // + // * KeyFingerprint + // + // * Status + Filters []*Filter `type:"list"` + + // Amazon Resource Names (ARNs) of the licenses. + LicenseArns []*string `type:"list"` // Maximum number of results to return in a single call. - MaxResults *int64 `type:"integer"` + MaxResults *int64 `min:"1" type:"integer"` // Token for the next set of results. NextToken *string `type:"string"` } // String returns the string representation -func (s ListFailuresForLicenseConfigurationOperationsInput) String() string { +func (s ListLicensesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListFailuresForLicenseConfigurationOperationsInput) GoString() string { +func (s ListLicensesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListFailuresForLicenseConfigurationOperationsInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListFailuresForLicenseConfigurationOperationsInput"} - if s.LicenseConfigurationArn == nil { - invalidParams.Add(request.NewErrParamRequired("LicenseConfigurationArn")) +func (s *ListLicensesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListLicensesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if invalidParams.Len() > 0 { @@ -3113,179 +8989,200 @@ func (s *ListFailuresForLicenseConfigurationOperationsInput) Validate() error { return nil } -// SetLicenseConfigurationArn sets the LicenseConfigurationArn field's value. -func (s *ListFailuresForLicenseConfigurationOperationsInput) SetLicenseConfigurationArn(v string) *ListFailuresForLicenseConfigurationOperationsInput { - s.LicenseConfigurationArn = &v +// SetFilters sets the Filters field's value. +func (s *ListLicensesInput) SetFilters(v []*Filter) *ListLicensesInput { + s.Filters = v + return s +} + +// SetLicenseArns sets the LicenseArns field's value. +func (s *ListLicensesInput) SetLicenseArns(v []*string) *ListLicensesInput { + s.LicenseArns = v return s } // SetMaxResults sets the MaxResults field's value. -func (s *ListFailuresForLicenseConfigurationOperationsInput) SetMaxResults(v int64) *ListFailuresForLicenseConfigurationOperationsInput { +func (s *ListLicensesInput) SetMaxResults(v int64) *ListLicensesInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. -func (s *ListFailuresForLicenseConfigurationOperationsInput) SetNextToken(v string) *ListFailuresForLicenseConfigurationOperationsInput { +func (s *ListLicensesInput) SetNextToken(v string) *ListLicensesInput { s.NextToken = &v return s } -type ListFailuresForLicenseConfigurationOperationsOutput struct { +type ListLicensesOutput struct { _ struct{} `type:"structure"` - // License configuration operations that failed. - LicenseOperationFailureList []*LicenseOperationFailure `type:"list"` + // License details. + Licenses []*License `type:"list"` // Token for the next set of results. NextToken *string `type:"string"` } // String returns the string representation -func (s ListFailuresForLicenseConfigurationOperationsOutput) String() string { +func (s ListLicensesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListFailuresForLicenseConfigurationOperationsOutput) GoString() string { +func (s ListLicensesOutput) GoString() string { return s.String() } -// SetLicenseOperationFailureList sets the LicenseOperationFailureList field's value. -func (s *ListFailuresForLicenseConfigurationOperationsOutput) SetLicenseOperationFailureList(v []*LicenseOperationFailure) *ListFailuresForLicenseConfigurationOperationsOutput { - s.LicenseOperationFailureList = v +// SetLicenses sets the Licenses field's value. +func (s *ListLicensesOutput) SetLicenses(v []*License) *ListLicensesOutput { + s.Licenses = v return s } // SetNextToken sets the NextToken field's value. -func (s *ListFailuresForLicenseConfigurationOperationsOutput) SetNextToken(v string) *ListFailuresForLicenseConfigurationOperationsOutput { +func (s *ListLicensesOutput) SetNextToken(v string) *ListLicensesOutput { s.NextToken = &v return s } -type ListLicenseConfigurationsInput struct { +type ListReceivedGrantsInput struct { _ struct{} `type:"structure"` - // Filters to scope the results. The following filters and logical operators - // are supported: - // - // * licenseCountingType - The dimension on which licenses are counted. Possible - // values are vCPU | Instance | Core | Socket. Logical operators are EQUALS - // | NOT_EQUALS. + // Filters to scope the results. The following filters are supported: // - // * enforceLicenseCount - A Boolean value that indicates whether hard license - // enforcement is used. Logical operators are EQUALS | NOT_EQUALS. + // * LicenseARN // - // * usagelimitExceeded - A Boolean value that indicates whether the available - // licenses have been exceeded. Logical operators are EQUALS | NOT_EQUALS. + // * Status Filters []*Filter `type:"list"` - // Amazon Resource Names (ARN) of the license configurations. - LicenseConfigurationArns []*string `type:"list"` + // Amazon Resource Names (ARNs) of the grants. + GrantArns []*string `type:"list"` // Maximum number of results to return in a single call. - MaxResults *int64 `type:"integer"` + MaxResults *int64 `min:"1" type:"integer"` // Token for the next set of results. NextToken *string `type:"string"` } // String returns the string representation -func (s ListLicenseConfigurationsInput) String() string { +func (s ListReceivedGrantsInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListLicenseConfigurationsInput) GoString() string { +func (s ListReceivedGrantsInput) GoString() string { return s.String() } +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListReceivedGrantsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListReceivedGrantsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + // SetFilters sets the Filters field's value. -func (s *ListLicenseConfigurationsInput) SetFilters(v []*Filter) *ListLicenseConfigurationsInput { +func (s *ListReceivedGrantsInput) SetFilters(v []*Filter) *ListReceivedGrantsInput { s.Filters = v return s } -// SetLicenseConfigurationArns sets the LicenseConfigurationArns field's value. -func (s *ListLicenseConfigurationsInput) SetLicenseConfigurationArns(v []*string) *ListLicenseConfigurationsInput { - s.LicenseConfigurationArns = v +// SetGrantArns sets the GrantArns field's value. +func (s *ListReceivedGrantsInput) SetGrantArns(v []*string) *ListReceivedGrantsInput { + s.GrantArns = v return s } // SetMaxResults sets the MaxResults field's value. -func (s *ListLicenseConfigurationsInput) SetMaxResults(v int64) *ListLicenseConfigurationsInput { +func (s *ListReceivedGrantsInput) SetMaxResults(v int64) *ListReceivedGrantsInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. -func (s *ListLicenseConfigurationsInput) SetNextToken(v string) *ListLicenseConfigurationsInput { +func (s *ListReceivedGrantsInput) SetNextToken(v string) *ListReceivedGrantsInput { s.NextToken = &v return s } -type ListLicenseConfigurationsOutput struct { +type ListReceivedGrantsOutput struct { _ struct{} `type:"structure"` - // Information about the license configurations. - LicenseConfigurations []*LicenseConfiguration `type:"list"` + // Received grant details. + Grants []*Grant `type:"list"` // Token for the next set of results. NextToken *string `type:"string"` } // String returns the string representation -func (s ListLicenseConfigurationsOutput) String() string { +func (s ListReceivedGrantsOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListLicenseConfigurationsOutput) GoString() string { +func (s ListReceivedGrantsOutput) GoString() string { return s.String() } -// SetLicenseConfigurations sets the LicenseConfigurations field's value. -func (s *ListLicenseConfigurationsOutput) SetLicenseConfigurations(v []*LicenseConfiguration) *ListLicenseConfigurationsOutput { - s.LicenseConfigurations = v +// SetGrants sets the Grants field's value. +func (s *ListReceivedGrantsOutput) SetGrants(v []*Grant) *ListReceivedGrantsOutput { + s.Grants = v return s } // SetNextToken sets the NextToken field's value. -func (s *ListLicenseConfigurationsOutput) SetNextToken(v string) *ListLicenseConfigurationsOutput { +func (s *ListReceivedGrantsOutput) SetNextToken(v string) *ListReceivedGrantsOutput { s.NextToken = &v return s } -type ListLicenseSpecificationsForResourceInput struct { +type ListReceivedLicensesInput struct { _ struct{} `type:"structure"` + // Filters to scope the results. The following filters are supported: + // + // * ProductSKU + // + // * Status + // + // * KeyFingerprint + // + // * Issuer + Filters []*Filter `type:"list"` + + // Amazon Resource Names (ARNs) of the licenses. + LicenseArns []*string `type:"list"` + // Maximum number of results to return in a single call. - MaxResults *int64 `type:"integer"` + MaxResults *int64 `min:"1" type:"integer"` // Token for the next set of results. NextToken *string `type:"string"` - - // Amazon Resource Name (ARN) of a resource that has an associated license configuration. - // - // ResourceArn is a required field - ResourceArn *string `type:"string" required:"true"` } // String returns the string representation -func (s ListLicenseSpecificationsForResourceInput) String() string { +func (s ListReceivedLicensesInput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListLicenseSpecificationsForResourceInput) GoString() string { +func (s ListReceivedLicensesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListLicenseSpecificationsForResourceInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListLicenseSpecificationsForResourceInput"} - if s.ResourceArn == nil { - invalidParams.Add(request.NewErrParamRequired("ResourceArn")) +func (s *ListReceivedLicensesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListReceivedLicensesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } if invalidParams.Len() > 0 { @@ -3294,52 +9191,58 @@ func (s *ListLicenseSpecificationsForResourceInput) Validate() error { return nil } +// SetFilters sets the Filters field's value. +func (s *ListReceivedLicensesInput) SetFilters(v []*Filter) *ListReceivedLicensesInput { + s.Filters = v + return s +} + +// SetLicenseArns sets the LicenseArns field's value. +func (s *ListReceivedLicensesInput) SetLicenseArns(v []*string) *ListReceivedLicensesInput { + s.LicenseArns = v + return s +} + // SetMaxResults sets the MaxResults field's value. -func (s *ListLicenseSpecificationsForResourceInput) SetMaxResults(v int64) *ListLicenseSpecificationsForResourceInput { +func (s *ListReceivedLicensesInput) SetMaxResults(v int64) *ListReceivedLicensesInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. -func (s *ListLicenseSpecificationsForResourceInput) SetNextToken(v string) *ListLicenseSpecificationsForResourceInput { +func (s *ListReceivedLicensesInput) SetNextToken(v string) *ListReceivedLicensesInput { s.NextToken = &v return s } -// SetResourceArn sets the ResourceArn field's value. -func (s *ListLicenseSpecificationsForResourceInput) SetResourceArn(v string) *ListLicenseSpecificationsForResourceInput { - s.ResourceArn = &v - return s -} - -type ListLicenseSpecificationsForResourceOutput struct { +type ListReceivedLicensesOutput struct { _ struct{} `type:"structure"` - // License configurations associated with a resource. - LicenseSpecifications []*LicenseSpecification `type:"list"` + // Received license details. + Licenses []*GrantedLicense `type:"list"` // Token for the next set of results. NextToken *string `type:"string"` } // String returns the string representation -func (s ListLicenseSpecificationsForResourceOutput) String() string { +func (s ListReceivedLicensesOutput) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ListLicenseSpecificationsForResourceOutput) GoString() string { +func (s ListReceivedLicensesOutput) GoString() string { return s.String() } - -// SetLicenseSpecifications sets the LicenseSpecifications field's value. -func (s *ListLicenseSpecificationsForResourceOutput) SetLicenseSpecifications(v []*LicenseSpecification) *ListLicenseSpecificationsForResourceOutput { - s.LicenseSpecifications = v + +// SetLicenses sets the Licenses field's value. +func (s *ListReceivedLicensesOutput) SetLicenses(v []*GrantedLicense) *ListReceivedLicensesOutput { + s.Licenses = v return s } // SetNextToken sets the NextToken field's value. -func (s *ListLicenseSpecificationsForResourceOutput) SetNextToken(v string) *ListLicenseSpecificationsForResourceOutput { +func (s *ListReceivedLicensesOutput) SetNextToken(v string) *ListReceivedLicensesOutput { s.NextToken = &v return s } @@ -3515,6 +9418,103 @@ func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput return s } +type ListTokensInput struct { + _ struct{} `type:"structure"` + + // Filters to scope the results. The following filter is supported: + // + // * licenseArns + Filters []*Filter `type:"list"` + + // Maximum number of results to return in a single call. + MaxResults *int64 `min:"1" type:"integer"` + + // Token for the next set of results. + NextToken *string `type:"string"` + + // Token IDs. + TokenIds []*string `type:"list"` +} + +// String returns the string representation +func (s ListTokensInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListTokensInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListTokensInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListTokensInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilters sets the Filters field's value. +func (s *ListTokensInput) SetFilters(v []*Filter) *ListTokensInput { + s.Filters = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListTokensInput) SetMaxResults(v int64) *ListTokensInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListTokensInput) SetNextToken(v string) *ListTokensInput { + s.NextToken = &v + return s +} + +// SetTokenIds sets the TokenIds field's value. +func (s *ListTokensInput) SetTokenIds(v []*string) *ListTokensInput { + s.TokenIds = v + return s +} + +type ListTokensOutput struct { + _ struct{} `type:"structure"` + + // Token for the next set of results. + NextToken *string `type:"string"` + + // Received token details. + Tokens []*TokenData `type:"list"` +} + +// String returns the string representation +func (s ListTokensOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListTokensOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListTokensOutput) SetNextToken(v string) *ListTokensOutput { + s.NextToken = &v + return s +} + +// SetTokens sets the Tokens field's value. +func (s *ListTokensOutput) SetTokens(v []*TokenData) *ListTokensOutput { + s.Tokens = v + return s +} + type ListUsageForLicenseConfigurationInput struct { _ struct{} `type:"structure"` @@ -3655,14 +9655,14 @@ func (s *ManagedResourceSummary) SetResourceType(v string) *ManagedResourceSumma return s } -// Reserved. +// Describes key/value pairs. type Metadata struct { _ struct{} `type:"structure"` - // Reserved. + // The key name. Name *string `type:"string"` - // Reserved. + // The value. Value *string `type:"string"` } @@ -3688,6 +9688,63 @@ func (s *Metadata) SetValue(v string) *Metadata { return s } +// There are no entitlements found for this license, or the entitlement maximum +// count is reached. +type NoEntitlementsAllowedException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"Message" type:"string"` +} + +// String returns the string representation +func (s NoEntitlementsAllowedException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s NoEntitlementsAllowedException) GoString() string { + return s.String() +} + +func newErrorNoEntitlementsAllowedException(v protocol.ResponseMetadata) error { + return &NoEntitlementsAllowedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *NoEntitlementsAllowedException) Code() string { + return "NoEntitlementsAllowedException" +} + +// Message returns the exception's message. +func (s *NoEntitlementsAllowedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *NoEntitlementsAllowedException) OrigErr() error { + return nil +} + +func (s *NoEntitlementsAllowedException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *NoEntitlementsAllowedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *NoEntitlementsAllowedException) RequestID() string { + return s.RespMetadata.RequestID +} + // Configuration information for AWS Organizations. type OrganizationConfiguration struct { _ struct{} `type:"structure"` @@ -3829,95 +9886,225 @@ type ProductInformationFilter struct { // ProductInformationFilterComparator is a required field ProductInformationFilterComparator *string `type:"string" required:"true"` - // Filter name. - // - // ProductInformationFilterName is a required field - ProductInformationFilterName *string `type:"string" required:"true"` + // Filter name. + // + // ProductInformationFilterName is a required field + ProductInformationFilterName *string `type:"string" required:"true"` + + // Filter value. + // + // ProductInformationFilterValue is a required field + ProductInformationFilterValue []*string `type:"list" required:"true"` +} + +// String returns the string representation +func (s ProductInformationFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ProductInformationFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ProductInformationFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ProductInformationFilter"} + if s.ProductInformationFilterComparator == nil { + invalidParams.Add(request.NewErrParamRequired("ProductInformationFilterComparator")) + } + if s.ProductInformationFilterName == nil { + invalidParams.Add(request.NewErrParamRequired("ProductInformationFilterName")) + } + if s.ProductInformationFilterValue == nil { + invalidParams.Add(request.NewErrParamRequired("ProductInformationFilterValue")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetProductInformationFilterComparator sets the ProductInformationFilterComparator field's value. +func (s *ProductInformationFilter) SetProductInformationFilterComparator(v string) *ProductInformationFilter { + s.ProductInformationFilterComparator = &v + return s +} + +// SetProductInformationFilterName sets the ProductInformationFilterName field's value. +func (s *ProductInformationFilter) SetProductInformationFilterName(v string) *ProductInformationFilter { + s.ProductInformationFilterName = &v + return s +} + +// SetProductInformationFilterValue sets the ProductInformationFilterValue field's value. +func (s *ProductInformationFilter) SetProductInformationFilterValue(v []*string) *ProductInformationFilter { + s.ProductInformationFilterValue = v + return s +} + +// Details about a provisional configuration. +type ProvisionalConfiguration struct { + _ struct{} `type:"structure"` + + // Maximum time for the provisional configuration, in minutes. + // + // MaxTimeToLiveInMinutes is a required field + MaxTimeToLiveInMinutes *int64 `type:"integer" required:"true"` +} + +// String returns the string representation +func (s ProvisionalConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ProvisionalConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ProvisionalConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ProvisionalConfiguration"} + if s.MaxTimeToLiveInMinutes == nil { + invalidParams.Add(request.NewErrParamRequired("MaxTimeToLiveInMinutes")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxTimeToLiveInMinutes sets the MaxTimeToLiveInMinutes field's value. +func (s *ProvisionalConfiguration) SetMaxTimeToLiveInMinutes(v int64) *ProvisionalConfiguration { + s.MaxTimeToLiveInMinutes = &v + return s +} + +// Too many requests have been submitted. Try again after a brief wait. +type RateLimitExceededException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"Message" type:"string"` +} + +// String returns the string representation +func (s RateLimitExceededException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s RateLimitExceededException) GoString() string { + return s.String() +} + +func newErrorRateLimitExceededException(v protocol.ResponseMetadata) error { + return &RateLimitExceededException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *RateLimitExceededException) Code() string { + return "RateLimitExceededException" +} + +// Message returns the exception's message. +func (s *RateLimitExceededException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *RateLimitExceededException) OrigErr() error { + return nil +} + +func (s *RateLimitExceededException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *RateLimitExceededException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *RateLimitExceededException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Metadata associated with received licenses and grants. +type ReceivedMetadata struct { + _ struct{} `type:"structure"` - // Filter value. - // - // ProductInformationFilterValue is a required field - ProductInformationFilterValue []*string `type:"list" required:"true"` + // Allowed operations. + AllowedOperations []*string `min:"1" type:"list"` + + // Received status. + ReceivedStatus *string `type:"string" enum:"ReceivedStatus"` } // String returns the string representation -func (s ProductInformationFilter) String() string { +func (s ReceivedMetadata) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s ProductInformationFilter) GoString() string { +func (s ReceivedMetadata) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *ProductInformationFilter) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ProductInformationFilter"} - if s.ProductInformationFilterComparator == nil { - invalidParams.Add(request.NewErrParamRequired("ProductInformationFilterComparator")) - } - if s.ProductInformationFilterName == nil { - invalidParams.Add(request.NewErrParamRequired("ProductInformationFilterName")) - } - if s.ProductInformationFilterValue == nil { - invalidParams.Add(request.NewErrParamRequired("ProductInformationFilterValue")) - } - - if invalidParams.Len() > 0 { - return invalidParams - } - return nil -} - -// SetProductInformationFilterComparator sets the ProductInformationFilterComparator field's value. -func (s *ProductInformationFilter) SetProductInformationFilterComparator(v string) *ProductInformationFilter { - s.ProductInformationFilterComparator = &v - return s -} - -// SetProductInformationFilterName sets the ProductInformationFilterName field's value. -func (s *ProductInformationFilter) SetProductInformationFilterName(v string) *ProductInformationFilter { - s.ProductInformationFilterName = &v +// SetAllowedOperations sets the AllowedOperations field's value. +func (s *ReceivedMetadata) SetAllowedOperations(v []*string) *ReceivedMetadata { + s.AllowedOperations = v return s } -// SetProductInformationFilterValue sets the ProductInformationFilterValue field's value. -func (s *ProductInformationFilter) SetProductInformationFilterValue(v []*string) *ProductInformationFilter { - s.ProductInformationFilterValue = v +// SetReceivedStatus sets the ReceivedStatus field's value. +func (s *ReceivedMetadata) SetReceivedStatus(v string) *ReceivedMetadata { + s.ReceivedStatus = &v return s } -// Too many requests have been submitted. Try again after a brief wait. -type RateLimitExceededException struct { +// This is not the correct Region for the resource. Try again. +type RedirectException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + Location *string `type:"string"` + Message_ *string `locationName:"Message" type:"string"` } // String returns the string representation -func (s RateLimitExceededException) String() string { +func (s RedirectException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s RateLimitExceededException) GoString() string { +func (s RedirectException) GoString() string { return s.String() } -func newErrorRateLimitExceededException(v protocol.ResponseMetadata) error { - return &RateLimitExceededException{ +func newErrorRedirectException(v protocol.ResponseMetadata) error { + return &RedirectException{ RespMetadata: v, } } // Code returns the exception type name. -func (s *RateLimitExceededException) Code() string { - return "RateLimitExceededException" +func (s *RedirectException) Code() string { + return "RedirectException" } // Message returns the exception's message. -func (s *RateLimitExceededException) Message() string { +func (s *RedirectException) Message() string { if s.Message_ != nil { return *s.Message_ } @@ -3925,24 +10112,103 @@ func (s *RateLimitExceededException) Message() string { } // OrigErr always returns nil, satisfies awserr.Error interface. -func (s *RateLimitExceededException) OrigErr() error { +func (s *RedirectException) OrigErr() error { return nil } -func (s *RateLimitExceededException) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +func (s *RedirectException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) } // Status code returns the HTTP status code for the request's response error. -func (s *RateLimitExceededException) StatusCode() int { +func (s *RedirectException) StatusCode() int { return s.RespMetadata.StatusCode } // RequestID returns the service's response RequestID for request. -func (s *RateLimitExceededException) RequestID() string { +func (s *RedirectException) RequestID() string { return s.RespMetadata.RequestID } +type RejectGrantInput struct { + _ struct{} `type:"structure"` + + // Amazon Resource Name (ARN) of the grant. + // + // GrantArn is a required field + GrantArn *string `type:"string" required:"true"` +} + +// String returns the string representation +func (s RejectGrantInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s RejectGrantInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *RejectGrantInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RejectGrantInput"} + if s.GrantArn == nil { + invalidParams.Add(request.NewErrParamRequired("GrantArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetGrantArn sets the GrantArn field's value. +func (s *RejectGrantInput) SetGrantArn(v string) *RejectGrantInput { + s.GrantArn = &v + return s +} + +type RejectGrantOutput struct { + _ struct{} `type:"structure"` + + // Grant ARN. + GrantArn *string `type:"string"` + + // Grant status. + Status *string `type:"string" enum:"GrantStatus"` + + // Grant version. + Version *string `type:"string"` +} + +// String returns the string representation +func (s RejectGrantOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s RejectGrantOutput) GoString() string { + return s.String() +} + +// SetGrantArn sets the GrantArn field's value. +func (s *RejectGrantOutput) SetGrantArn(v string) *RejectGrantOutput { + s.GrantArn = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *RejectGrantOutput) SetStatus(v string) *RejectGrantOutput { + s.Status = &v + return s +} + +// SetVersion sets the Version field's value. +func (s *RejectGrantOutput) SetVersion(v string) *RejectGrantOutput { + s.Version = &v + return s +} + // Details about a resource. type ResourceInventory struct { _ struct{} `type:"structure"` @@ -4068,6 +10334,62 @@ func (s *ResourceLimitExceededException) RequestID() string { return s.RespMetadata.RequestID } +// The resource cannot be found. +type ResourceNotFoundException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"Message" type:"string"` +} + +// String returns the string representation +func (s ResourceNotFoundException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ResourceNotFoundException) GoString() string { + return s.String() +} + +func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { + return &ResourceNotFoundException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ResourceNotFoundException) Code() string { + return "ResourceNotFoundException" +} + +// Message returns the exception's message. +func (s *ResourceNotFoundException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ResourceNotFoundException) OrigErr() error { + return nil +} + +func (s *ResourceNotFoundException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ResourceNotFoundException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ResourceNotFoundException) RequestID() string { + return s.RespMetadata.RequestID +} + // The server experienced an internal error. Try again. type ServerInternalException struct { _ struct{} `type:"structure"` @@ -4160,67 +10482,201 @@ func (s *Tag) SetValue(v string) *Tag { type TagResourceInput struct { _ struct{} `type:"structure"` - // Amazon Resource Name (ARN) of the license configuration. - // - // ResourceArn is a required field - ResourceArn *string `type:"string" required:"true"` + // Amazon Resource Name (ARN) of the license configuration. + // + // ResourceArn is a required field + ResourceArn *string `type:"string" required:"true"` + + // One or more tags. + // + // Tags is a required field + Tags []*Tag `type:"list" required:"true"` +} + +// String returns the string representation +func (s TagResourceInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s TagResourceInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TagResourceInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} + if s.ResourceArn == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceArn")) + } + if s.Tags == nil { + invalidParams.Add(request.NewErrParamRequired("Tags")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetResourceArn sets the ResourceArn field's value. +func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput { + s.ResourceArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput { + s.Tags = v + return s +} + +type TagResourceOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation +func (s TagResourceOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s TagResourceOutput) GoString() string { + return s.String() +} + +// Describes a token. +type TokenData struct { + _ struct{} `type:"structure"` + + // Token expiration time, in ISO8601-UTC format. + ExpirationTime *string `type:"string"` + + // Amazon Resource Name (ARN) of the license. + LicenseArn *string `type:"string"` + + // Amazon Resource Names (ARN) of the roles included in the token. + RoleArns []*string `type:"list"` + + // Token status. The possible values are AVAILABLE and DELETED. + Status *string `type:"string"` + + // Token ID. + TokenId *string `type:"string"` + + // Data specified by the caller. + TokenProperties []*string `type:"list"` + + // Type of token generated. The supported value is REFRESH_TOKEN. + TokenType *string `type:"string"` +} + +// String returns the string representation +func (s TokenData) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s TokenData) GoString() string { + return s.String() +} + +// SetExpirationTime sets the ExpirationTime field's value. +func (s *TokenData) SetExpirationTime(v string) *TokenData { + s.ExpirationTime = &v + return s +} + +// SetLicenseArn sets the LicenseArn field's value. +func (s *TokenData) SetLicenseArn(v string) *TokenData { + s.LicenseArn = &v + return s +} + +// SetRoleArns sets the RoleArns field's value. +func (s *TokenData) SetRoleArns(v []*string) *TokenData { + s.RoleArns = v + return s +} + +// SetStatus sets the Status field's value. +func (s *TokenData) SetStatus(v string) *TokenData { + s.Status = &v + return s +} + +// SetTokenId sets the TokenId field's value. +func (s *TokenData) SetTokenId(v string) *TokenData { + s.TokenId = &v + return s +} + +// SetTokenProperties sets the TokenProperties field's value. +func (s *TokenData) SetTokenProperties(v []*string) *TokenData { + s.TokenProperties = v + return s +} + +// SetTokenType sets the TokenType field's value. +func (s *TokenData) SetTokenType(v string) *TokenData { + s.TokenType = &v + return s +} + +// The digital signature method is unsupported. Try your request again. +type UnsupportedDigitalSignatureMethodException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - // One or more tags. - // - // Tags is a required field - Tags []*Tag `type:"list" required:"true"` + Message_ *string `locationName:"Message" type:"string"` } // String returns the string representation -func (s TagResourceInput) String() string { +func (s UnsupportedDigitalSignatureMethodException) String() string { return awsutil.Prettify(s) } // GoString returns the string representation -func (s TagResourceInput) GoString() string { +func (s UnsupportedDigitalSignatureMethodException) GoString() string { return s.String() } -// Validate inspects the fields of the type to determine if they are valid. -func (s *TagResourceInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"} - if s.ResourceArn == nil { - invalidParams.Add(request.NewErrParamRequired("ResourceArn")) - } - if s.Tags == nil { - invalidParams.Add(request.NewErrParamRequired("Tags")) +func newErrorUnsupportedDigitalSignatureMethodException(v protocol.ResponseMetadata) error { + return &UnsupportedDigitalSignatureMethodException{ + RespMetadata: v, } +} - if invalidParams.Len() > 0 { - return invalidParams - } - return nil +// Code returns the exception type name. +func (s *UnsupportedDigitalSignatureMethodException) Code() string { + return "UnsupportedDigitalSignatureMethodException" } -// SetResourceArn sets the ResourceArn field's value. -func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput { - s.ResourceArn = &v - return s +// Message returns the exception's message. +func (s *UnsupportedDigitalSignatureMethodException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" } -// SetTags sets the Tags field's value. -func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput { - s.Tags = v - return s +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *UnsupportedDigitalSignatureMethodException) OrigErr() error { + return nil } -type TagResourceOutput struct { - _ struct{} `type:"structure"` +func (s *UnsupportedDigitalSignatureMethodException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) } -// String returns the string representation -func (s TagResourceOutput) String() string { - return awsutil.Prettify(s) +// Status code returns the HTTP status code for the request's response error. +func (s *UnsupportedDigitalSignatureMethodException) StatusCode() int { + return s.RespMetadata.StatusCode } -// GoString returns the string representation -func (s TagResourceOutput) GoString() string { - return s.String() +// RequestID returns the service's response RequestID for request. +func (s *UnsupportedDigitalSignatureMethodException) RequestID() string { + return s.RespMetadata.RequestID } type UntagResourceInput struct { @@ -4586,6 +11042,394 @@ func (s UpdateServiceSettingsOutput) GoString() string { return s.String() } +// The provided input is not valid. Try your request again. +type ValidationException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"Message" type:"string"` +} + +// String returns the string representation +func (s ValidationException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ValidationException) GoString() string { + return s.String() +} + +func newErrorValidationException(v protocol.ResponseMetadata) error { + return &ValidationException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ValidationException) Code() string { + return "ValidationException" +} + +// Message returns the exception's message. +func (s *ValidationException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ValidationException) OrigErr() error { + return nil +} + +func (s *ValidationException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ValidationException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ValidationException) RequestID() string { + return s.RespMetadata.RequestID +} + +const ( + // AllowedOperationCreateGrant is a AllowedOperation enum value + AllowedOperationCreateGrant = "CreateGrant" + + // AllowedOperationCheckoutLicense is a AllowedOperation enum value + AllowedOperationCheckoutLicense = "CheckoutLicense" + + // AllowedOperationCheckoutBorrowLicense is a AllowedOperation enum value + AllowedOperationCheckoutBorrowLicense = "CheckoutBorrowLicense" + + // AllowedOperationCheckInLicense is a AllowedOperation enum value + AllowedOperationCheckInLicense = "CheckInLicense" + + // AllowedOperationExtendConsumptionLicense is a AllowedOperation enum value + AllowedOperationExtendConsumptionLicense = "ExtendConsumptionLicense" + + // AllowedOperationListPurchasedLicenses is a AllowedOperation enum value + AllowedOperationListPurchasedLicenses = "ListPurchasedLicenses" + + // AllowedOperationCreateToken is a AllowedOperation enum value + AllowedOperationCreateToken = "CreateToken" +) + +// AllowedOperation_Values returns all elements of the AllowedOperation enum +func AllowedOperation_Values() []string { + return []string{ + AllowedOperationCreateGrant, + AllowedOperationCheckoutLicense, + AllowedOperationCheckoutBorrowLicense, + AllowedOperationCheckInLicense, + AllowedOperationExtendConsumptionLicense, + AllowedOperationListPurchasedLicenses, + AllowedOperationCreateToken, + } +} + +const ( + // CheckoutTypeProvisional is a CheckoutType enum value + CheckoutTypeProvisional = "PROVISIONAL" +) + +// CheckoutType_Values returns all elements of the CheckoutType enum +func CheckoutType_Values() []string { + return []string{ + CheckoutTypeProvisional, + } +} + +const ( + // DigitalSignatureMethodJwtPs384 is a DigitalSignatureMethod enum value + DigitalSignatureMethodJwtPs384 = "JWT_PS384" +) + +// DigitalSignatureMethod_Values returns all elements of the DigitalSignatureMethod enum +func DigitalSignatureMethod_Values() []string { + return []string{ + DigitalSignatureMethodJwtPs384, + } +} + +const ( + // EntitlementDataUnitCount is a EntitlementDataUnit enum value + EntitlementDataUnitCount = "Count" + + // EntitlementDataUnitNone is a EntitlementDataUnit enum value + EntitlementDataUnitNone = "None" + + // EntitlementDataUnitSeconds is a EntitlementDataUnit enum value + EntitlementDataUnitSeconds = "Seconds" + + // EntitlementDataUnitMicroseconds is a EntitlementDataUnit enum value + EntitlementDataUnitMicroseconds = "Microseconds" + + // EntitlementDataUnitMilliseconds is a EntitlementDataUnit enum value + EntitlementDataUnitMilliseconds = "Milliseconds" + + // EntitlementDataUnitBytes is a EntitlementDataUnit enum value + EntitlementDataUnitBytes = "Bytes" + + // EntitlementDataUnitKilobytes is a EntitlementDataUnit enum value + EntitlementDataUnitKilobytes = "Kilobytes" + + // EntitlementDataUnitMegabytes is a EntitlementDataUnit enum value + EntitlementDataUnitMegabytes = "Megabytes" + + // EntitlementDataUnitGigabytes is a EntitlementDataUnit enum value + EntitlementDataUnitGigabytes = "Gigabytes" + + // EntitlementDataUnitTerabytes is a EntitlementDataUnit enum value + EntitlementDataUnitTerabytes = "Terabytes" + + // EntitlementDataUnitBits is a EntitlementDataUnit enum value + EntitlementDataUnitBits = "Bits" + + // EntitlementDataUnitKilobits is a EntitlementDataUnit enum value + EntitlementDataUnitKilobits = "Kilobits" + + // EntitlementDataUnitMegabits is a EntitlementDataUnit enum value + EntitlementDataUnitMegabits = "Megabits" + + // EntitlementDataUnitGigabits is a EntitlementDataUnit enum value + EntitlementDataUnitGigabits = "Gigabits" + + // EntitlementDataUnitTerabits is a EntitlementDataUnit enum value + EntitlementDataUnitTerabits = "Terabits" + + // EntitlementDataUnitPercent is a EntitlementDataUnit enum value + EntitlementDataUnitPercent = "Percent" + + // EntitlementDataUnitBytesSecond is a EntitlementDataUnit enum value + EntitlementDataUnitBytesSecond = "Bytes/Second" + + // EntitlementDataUnitKilobytesSecond is a EntitlementDataUnit enum value + EntitlementDataUnitKilobytesSecond = "Kilobytes/Second" + + // EntitlementDataUnitMegabytesSecond is a EntitlementDataUnit enum value + EntitlementDataUnitMegabytesSecond = "Megabytes/Second" + + // EntitlementDataUnitGigabytesSecond is a EntitlementDataUnit enum value + EntitlementDataUnitGigabytesSecond = "Gigabytes/Second" + + // EntitlementDataUnitTerabytesSecond is a EntitlementDataUnit enum value + EntitlementDataUnitTerabytesSecond = "Terabytes/Second" + + // EntitlementDataUnitBitsSecond is a EntitlementDataUnit enum value + EntitlementDataUnitBitsSecond = "Bits/Second" + + // EntitlementDataUnitKilobitsSecond is a EntitlementDataUnit enum value + EntitlementDataUnitKilobitsSecond = "Kilobits/Second" + + // EntitlementDataUnitMegabitsSecond is a EntitlementDataUnit enum value + EntitlementDataUnitMegabitsSecond = "Megabits/Second" + + // EntitlementDataUnitGigabitsSecond is a EntitlementDataUnit enum value + EntitlementDataUnitGigabitsSecond = "Gigabits/Second" + + // EntitlementDataUnitTerabitsSecond is a EntitlementDataUnit enum value + EntitlementDataUnitTerabitsSecond = "Terabits/Second" + + // EntitlementDataUnitCountSecond is a EntitlementDataUnit enum value + EntitlementDataUnitCountSecond = "Count/Second" +) + +// EntitlementDataUnit_Values returns all elements of the EntitlementDataUnit enum +func EntitlementDataUnit_Values() []string { + return []string{ + EntitlementDataUnitCount, + EntitlementDataUnitNone, + EntitlementDataUnitSeconds, + EntitlementDataUnitMicroseconds, + EntitlementDataUnitMilliseconds, + EntitlementDataUnitBytes, + EntitlementDataUnitKilobytes, + EntitlementDataUnitMegabytes, + EntitlementDataUnitGigabytes, + EntitlementDataUnitTerabytes, + EntitlementDataUnitBits, + EntitlementDataUnitKilobits, + EntitlementDataUnitMegabits, + EntitlementDataUnitGigabits, + EntitlementDataUnitTerabits, + EntitlementDataUnitPercent, + EntitlementDataUnitBytesSecond, + EntitlementDataUnitKilobytesSecond, + EntitlementDataUnitMegabytesSecond, + EntitlementDataUnitGigabytesSecond, + EntitlementDataUnitTerabytesSecond, + EntitlementDataUnitBitsSecond, + EntitlementDataUnitKilobitsSecond, + EntitlementDataUnitMegabitsSecond, + EntitlementDataUnitGigabitsSecond, + EntitlementDataUnitTerabitsSecond, + EntitlementDataUnitCountSecond, + } +} + +const ( + // EntitlementUnitCount is a EntitlementUnit enum value + EntitlementUnitCount = "Count" + + // EntitlementUnitNone is a EntitlementUnit enum value + EntitlementUnitNone = "None" + + // EntitlementUnitSeconds is a EntitlementUnit enum value + EntitlementUnitSeconds = "Seconds" + + // EntitlementUnitMicroseconds is a EntitlementUnit enum value + EntitlementUnitMicroseconds = "Microseconds" + + // EntitlementUnitMilliseconds is a EntitlementUnit enum value + EntitlementUnitMilliseconds = "Milliseconds" + + // EntitlementUnitBytes is a EntitlementUnit enum value + EntitlementUnitBytes = "Bytes" + + // EntitlementUnitKilobytes is a EntitlementUnit enum value + EntitlementUnitKilobytes = "Kilobytes" + + // EntitlementUnitMegabytes is a EntitlementUnit enum value + EntitlementUnitMegabytes = "Megabytes" + + // EntitlementUnitGigabytes is a EntitlementUnit enum value + EntitlementUnitGigabytes = "Gigabytes" + + // EntitlementUnitTerabytes is a EntitlementUnit enum value + EntitlementUnitTerabytes = "Terabytes" + + // EntitlementUnitBits is a EntitlementUnit enum value + EntitlementUnitBits = "Bits" + + // EntitlementUnitKilobits is a EntitlementUnit enum value + EntitlementUnitKilobits = "Kilobits" + + // EntitlementUnitMegabits is a EntitlementUnit enum value + EntitlementUnitMegabits = "Megabits" + + // EntitlementUnitGigabits is a EntitlementUnit enum value + EntitlementUnitGigabits = "Gigabits" + + // EntitlementUnitTerabits is a EntitlementUnit enum value + EntitlementUnitTerabits = "Terabits" + + // EntitlementUnitPercent is a EntitlementUnit enum value + EntitlementUnitPercent = "Percent" + + // EntitlementUnitBytesSecond is a EntitlementUnit enum value + EntitlementUnitBytesSecond = "Bytes/Second" + + // EntitlementUnitKilobytesSecond is a EntitlementUnit enum value + EntitlementUnitKilobytesSecond = "Kilobytes/Second" + + // EntitlementUnitMegabytesSecond is a EntitlementUnit enum value + EntitlementUnitMegabytesSecond = "Megabytes/Second" + + // EntitlementUnitGigabytesSecond is a EntitlementUnit enum value + EntitlementUnitGigabytesSecond = "Gigabytes/Second" + + // EntitlementUnitTerabytesSecond is a EntitlementUnit enum value + EntitlementUnitTerabytesSecond = "Terabytes/Second" + + // EntitlementUnitBitsSecond is a EntitlementUnit enum value + EntitlementUnitBitsSecond = "Bits/Second" + + // EntitlementUnitKilobitsSecond is a EntitlementUnit enum value + EntitlementUnitKilobitsSecond = "Kilobits/Second" + + // EntitlementUnitMegabitsSecond is a EntitlementUnit enum value + EntitlementUnitMegabitsSecond = "Megabits/Second" + + // EntitlementUnitGigabitsSecond is a EntitlementUnit enum value + EntitlementUnitGigabitsSecond = "Gigabits/Second" + + // EntitlementUnitTerabitsSecond is a EntitlementUnit enum value + EntitlementUnitTerabitsSecond = "Terabits/Second" + + // EntitlementUnitCountSecond is a EntitlementUnit enum value + EntitlementUnitCountSecond = "Count/Second" +) + +// EntitlementUnit_Values returns all elements of the EntitlementUnit enum +func EntitlementUnit_Values() []string { + return []string{ + EntitlementUnitCount, + EntitlementUnitNone, + EntitlementUnitSeconds, + EntitlementUnitMicroseconds, + EntitlementUnitMilliseconds, + EntitlementUnitBytes, + EntitlementUnitKilobytes, + EntitlementUnitMegabytes, + EntitlementUnitGigabytes, + EntitlementUnitTerabytes, + EntitlementUnitBits, + EntitlementUnitKilobits, + EntitlementUnitMegabits, + EntitlementUnitGigabits, + EntitlementUnitTerabits, + EntitlementUnitPercent, + EntitlementUnitBytesSecond, + EntitlementUnitKilobytesSecond, + EntitlementUnitMegabytesSecond, + EntitlementUnitGigabytesSecond, + EntitlementUnitTerabytesSecond, + EntitlementUnitBitsSecond, + EntitlementUnitKilobitsSecond, + EntitlementUnitMegabitsSecond, + EntitlementUnitGigabitsSecond, + EntitlementUnitTerabitsSecond, + EntitlementUnitCountSecond, + } +} + +const ( + // GrantStatusPendingWorkflow is a GrantStatus enum value + GrantStatusPendingWorkflow = "PENDING_WORKFLOW" + + // GrantStatusPendingAccept is a GrantStatus enum value + GrantStatusPendingAccept = "PENDING_ACCEPT" + + // GrantStatusRejected is a GrantStatus enum value + GrantStatusRejected = "REJECTED" + + // GrantStatusActive is a GrantStatus enum value + GrantStatusActive = "ACTIVE" + + // GrantStatusFailedWorkflow is a GrantStatus enum value + GrantStatusFailedWorkflow = "FAILED_WORKFLOW" + + // GrantStatusDeleted is a GrantStatus enum value + GrantStatusDeleted = "DELETED" + + // GrantStatusPendingDelete is a GrantStatus enum value + GrantStatusPendingDelete = "PENDING_DELETE" + + // GrantStatusDisabled is a GrantStatus enum value + GrantStatusDisabled = "DISABLED" +) + +// GrantStatus_Values returns all elements of the GrantStatus enum +func GrantStatus_Values() []string { + return []string{ + GrantStatusPendingWorkflow, + GrantStatusPendingAccept, + GrantStatusRejected, + GrantStatusActive, + GrantStatusFailedWorkflow, + GrantStatusDeleted, + GrantStatusPendingDelete, + GrantStatusDisabled, + } +} + const ( // InventoryFilterConditionEquals is a InventoryFilterCondition enum value InventoryFilterConditionEquals = "EQUALS" @@ -4650,6 +11494,114 @@ func LicenseCountingType_Values() []string { } } +const ( + // LicenseDeletionStatusPendingDelete is a LicenseDeletionStatus enum value + LicenseDeletionStatusPendingDelete = "PENDING_DELETE" + + // LicenseDeletionStatusDeleted is a LicenseDeletionStatus enum value + LicenseDeletionStatusDeleted = "DELETED" +) + +// LicenseDeletionStatus_Values returns all elements of the LicenseDeletionStatus enum +func LicenseDeletionStatus_Values() []string { + return []string{ + LicenseDeletionStatusPendingDelete, + LicenseDeletionStatusDeleted, + } +} + +const ( + // LicenseStatusAvailable is a LicenseStatus enum value + LicenseStatusAvailable = "AVAILABLE" + + // LicenseStatusPendingAvailable is a LicenseStatus enum value + LicenseStatusPendingAvailable = "PENDING_AVAILABLE" + + // LicenseStatusDeactivated is a LicenseStatus enum value + LicenseStatusDeactivated = "DEACTIVATED" + + // LicenseStatusSuspended is a LicenseStatus enum value + LicenseStatusSuspended = "SUSPENDED" + + // LicenseStatusExpired is a LicenseStatus enum value + LicenseStatusExpired = "EXPIRED" + + // LicenseStatusPendingDelete is a LicenseStatus enum value + LicenseStatusPendingDelete = "PENDING_DELETE" + + // LicenseStatusDeleted is a LicenseStatus enum value + LicenseStatusDeleted = "DELETED" +) + +// LicenseStatus_Values returns all elements of the LicenseStatus enum +func LicenseStatus_Values() []string { + return []string{ + LicenseStatusAvailable, + LicenseStatusPendingAvailable, + LicenseStatusDeactivated, + LicenseStatusSuspended, + LicenseStatusExpired, + LicenseStatusPendingDelete, + LicenseStatusDeleted, + } +} + +const ( + // ReceivedStatusPendingWorkflow is a ReceivedStatus enum value + ReceivedStatusPendingWorkflow = "PENDING_WORKFLOW" + + // ReceivedStatusPendingAccept is a ReceivedStatus enum value + ReceivedStatusPendingAccept = "PENDING_ACCEPT" + + // ReceivedStatusRejected is a ReceivedStatus enum value + ReceivedStatusRejected = "REJECTED" + + // ReceivedStatusActive is a ReceivedStatus enum value + ReceivedStatusActive = "ACTIVE" + + // ReceivedStatusFailedWorkflow is a ReceivedStatus enum value + ReceivedStatusFailedWorkflow = "FAILED_WORKFLOW" + + // ReceivedStatusDeleted is a ReceivedStatus enum value + ReceivedStatusDeleted = "DELETED" + + // ReceivedStatusDisabled is a ReceivedStatus enum value + ReceivedStatusDisabled = "DISABLED" +) + +// ReceivedStatus_Values returns all elements of the ReceivedStatus enum +func ReceivedStatus_Values() []string { + return []string{ + ReceivedStatusPendingWorkflow, + ReceivedStatusPendingAccept, + ReceivedStatusRejected, + ReceivedStatusActive, + ReceivedStatusFailedWorkflow, + ReceivedStatusDeleted, + ReceivedStatusDisabled, + } +} + +const ( + // RenewTypeNone is a RenewType enum value + RenewTypeNone = "None" + + // RenewTypeWeekly is a RenewType enum value + RenewTypeWeekly = "Weekly" + + // RenewTypeMonthly is a RenewType enum value + RenewTypeMonthly = "Monthly" +) + +// RenewType_Values returns all elements of the RenewType enum +func RenewType_Values() []string { + return []string{ + RenewTypeNone, + RenewTypeWeekly, + RenewTypeMonthly, + } +} + const ( // ResourceTypeEc2Instance is a ResourceType enum value ResourceTypeEc2Instance = "EC2_INSTANCE" @@ -4677,3 +11629,15 @@ func ResourceType_Values() []string { ResourceTypeSystemsManagerManagedInstance, } } + +const ( + // TokenTypeRefreshToken is a TokenType enum value + TokenTypeRefreshToken = "REFRESH_TOKEN" +) + +// TokenType_Values returns all elements of the TokenType enum +func TokenType_Values() []string { + return []string{ + TokenTypeRefreshToken, + } +} diff --git a/service/licensemanager/errors.go b/service/licensemanager/errors.go index 31ef544090d..26500cac063 100644 --- a/service/licensemanager/errors.go +++ b/service/licensemanager/errors.go @@ -21,6 +21,18 @@ const ( // the IAM policy associated with this account. ErrCodeAuthorizationException = "AuthorizationException" + // ErrCodeConflictException for service response error code + // "ConflictException". + // + // There was a conflict processing the request. Try your request again. + ErrCodeConflictException = "ConflictException" + + // ErrCodeEntitlementNotAllowedException for service response error code + // "EntitlementNotAllowedException". + // + // The entitlement is not allowed. + ErrCodeEntitlementNotAllowedException = "EntitlementNotAllowedException" + // ErrCodeFailedDependencyException for service response error code // "FailedDependencyException". // @@ -54,34 +66,72 @@ const ( // You do not have enough licenses available to support a new resource launch. ErrCodeLicenseUsageException = "LicenseUsageException" + // ErrCodeNoEntitlementsAllowedException for service response error code + // "NoEntitlementsAllowedException". + // + // There are no entitlements found for this license, or the entitlement maximum + // count is reached. + ErrCodeNoEntitlementsAllowedException = "NoEntitlementsAllowedException" + // ErrCodeRateLimitExceededException for service response error code // "RateLimitExceededException". // // Too many requests have been submitted. Try again after a brief wait. ErrCodeRateLimitExceededException = "RateLimitExceededException" + // ErrCodeRedirectException for service response error code + // "RedirectException". + // + // This is not the correct Region for the resource. Try again. + ErrCodeRedirectException = "RedirectException" + // ErrCodeResourceLimitExceededException for service response error code // "ResourceLimitExceededException". // // Your resource limits have been exceeded. ErrCodeResourceLimitExceededException = "ResourceLimitExceededException" + // ErrCodeResourceNotFoundException for service response error code + // "ResourceNotFoundException". + // + // The resource cannot be found. + ErrCodeResourceNotFoundException = "ResourceNotFoundException" + // ErrCodeServerInternalException for service response error code // "ServerInternalException". // // The server experienced an internal error. Try again. ErrCodeServerInternalException = "ServerInternalException" + + // ErrCodeUnsupportedDigitalSignatureMethodException for service response error code + // "UnsupportedDigitalSignatureMethodException". + // + // The digital signature method is unsupported. Try your request again. + ErrCodeUnsupportedDigitalSignatureMethodException = "UnsupportedDigitalSignatureMethodException" + + // ErrCodeValidationException for service response error code + // "ValidationException". + // + // The provided input is not valid. Try your request again. + ErrCodeValidationException = "ValidationException" ) var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ - "AccessDeniedException": newErrorAccessDeniedException, - "AuthorizationException": newErrorAuthorizationException, - "FailedDependencyException": newErrorFailedDependencyException, - "FilterLimitExceededException": newErrorFilterLimitExceededException, - "InvalidParameterValueException": newErrorInvalidParameterValueException, - "InvalidResourceStateException": newErrorInvalidResourceStateException, - "LicenseUsageException": newErrorLicenseUsageException, - "RateLimitExceededException": newErrorRateLimitExceededException, - "ResourceLimitExceededException": newErrorResourceLimitExceededException, - "ServerInternalException": newErrorServerInternalException, + "AccessDeniedException": newErrorAccessDeniedException, + "AuthorizationException": newErrorAuthorizationException, + "ConflictException": newErrorConflictException, + "EntitlementNotAllowedException": newErrorEntitlementNotAllowedException, + "FailedDependencyException": newErrorFailedDependencyException, + "FilterLimitExceededException": newErrorFilterLimitExceededException, + "InvalidParameterValueException": newErrorInvalidParameterValueException, + "InvalidResourceStateException": newErrorInvalidResourceStateException, + "LicenseUsageException": newErrorLicenseUsageException, + "NoEntitlementsAllowedException": newErrorNoEntitlementsAllowedException, + "RateLimitExceededException": newErrorRateLimitExceededException, + "RedirectException": newErrorRedirectException, + "ResourceLimitExceededException": newErrorResourceLimitExceededException, + "ResourceNotFoundException": newErrorResourceNotFoundException, + "ServerInternalException": newErrorServerInternalException, + "UnsupportedDigitalSignatureMethodException": newErrorUnsupportedDigitalSignatureMethodException, + "ValidationException": newErrorValidationException, } diff --git a/service/licensemanager/licensemanageriface/interface.go b/service/licensemanager/licensemanageriface/interface.go index c9b63b82f39..638d451ed85 100644 --- a/service/licensemanager/licensemanageriface/interface.go +++ b/service/licensemanager/licensemanageriface/interface.go @@ -26,7 +26,7 @@ import ( // // myFunc uses an SDK service client to make a request to // // AWS License Manager. // func myFunc(svc licensemanageriface.LicenseManagerAPI) bool { -// // Make svc.CreateLicenseConfiguration request +// // Make svc.AcceptGrant request // } // // func main() { @@ -42,7 +42,7 @@ import ( // type mockLicenseManagerClient struct { // licensemanageriface.LicenseManagerAPI // } -// func (m *mockLicenseManagerClient) CreateLicenseConfiguration(input *licensemanager.CreateLicenseConfigurationInput) (*licensemanager.CreateLicenseConfigurationOutput, error) { +// func (m *mockLicenseManagerClient) AcceptGrant(input *licensemanager.AcceptGrantInput) (*licensemanager.AcceptGrantOutput, error) { // // mock response/functionality // } // @@ -60,18 +60,86 @@ import ( // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type LicenseManagerAPI interface { + AcceptGrant(*licensemanager.AcceptGrantInput) (*licensemanager.AcceptGrantOutput, error) + AcceptGrantWithContext(aws.Context, *licensemanager.AcceptGrantInput, ...request.Option) (*licensemanager.AcceptGrantOutput, error) + AcceptGrantRequest(*licensemanager.AcceptGrantInput) (*request.Request, *licensemanager.AcceptGrantOutput) + + CheckInLicense(*licensemanager.CheckInLicenseInput) (*licensemanager.CheckInLicenseOutput, error) + CheckInLicenseWithContext(aws.Context, *licensemanager.CheckInLicenseInput, ...request.Option) (*licensemanager.CheckInLicenseOutput, error) + CheckInLicenseRequest(*licensemanager.CheckInLicenseInput) (*request.Request, *licensemanager.CheckInLicenseOutput) + + CheckoutBorrowLicense(*licensemanager.CheckoutBorrowLicenseInput) (*licensemanager.CheckoutBorrowLicenseOutput, error) + CheckoutBorrowLicenseWithContext(aws.Context, *licensemanager.CheckoutBorrowLicenseInput, ...request.Option) (*licensemanager.CheckoutBorrowLicenseOutput, error) + CheckoutBorrowLicenseRequest(*licensemanager.CheckoutBorrowLicenseInput) (*request.Request, *licensemanager.CheckoutBorrowLicenseOutput) + + CheckoutLicense(*licensemanager.CheckoutLicenseInput) (*licensemanager.CheckoutLicenseOutput, error) + CheckoutLicenseWithContext(aws.Context, *licensemanager.CheckoutLicenseInput, ...request.Option) (*licensemanager.CheckoutLicenseOutput, error) + CheckoutLicenseRequest(*licensemanager.CheckoutLicenseInput) (*request.Request, *licensemanager.CheckoutLicenseOutput) + + CreateGrant(*licensemanager.CreateGrantInput) (*licensemanager.CreateGrantOutput, error) + CreateGrantWithContext(aws.Context, *licensemanager.CreateGrantInput, ...request.Option) (*licensemanager.CreateGrantOutput, error) + CreateGrantRequest(*licensemanager.CreateGrantInput) (*request.Request, *licensemanager.CreateGrantOutput) + + CreateGrantVersion(*licensemanager.CreateGrantVersionInput) (*licensemanager.CreateGrantVersionOutput, error) + CreateGrantVersionWithContext(aws.Context, *licensemanager.CreateGrantVersionInput, ...request.Option) (*licensemanager.CreateGrantVersionOutput, error) + CreateGrantVersionRequest(*licensemanager.CreateGrantVersionInput) (*request.Request, *licensemanager.CreateGrantVersionOutput) + + CreateLicense(*licensemanager.CreateLicenseInput) (*licensemanager.CreateLicenseOutput, error) + CreateLicenseWithContext(aws.Context, *licensemanager.CreateLicenseInput, ...request.Option) (*licensemanager.CreateLicenseOutput, error) + CreateLicenseRequest(*licensemanager.CreateLicenseInput) (*request.Request, *licensemanager.CreateLicenseOutput) + CreateLicenseConfiguration(*licensemanager.CreateLicenseConfigurationInput) (*licensemanager.CreateLicenseConfigurationOutput, error) CreateLicenseConfigurationWithContext(aws.Context, *licensemanager.CreateLicenseConfigurationInput, ...request.Option) (*licensemanager.CreateLicenseConfigurationOutput, error) CreateLicenseConfigurationRequest(*licensemanager.CreateLicenseConfigurationInput) (*request.Request, *licensemanager.CreateLicenseConfigurationOutput) + CreateLicenseVersion(*licensemanager.CreateLicenseVersionInput) (*licensemanager.CreateLicenseVersionOutput, error) + CreateLicenseVersionWithContext(aws.Context, *licensemanager.CreateLicenseVersionInput, ...request.Option) (*licensemanager.CreateLicenseVersionOutput, error) + CreateLicenseVersionRequest(*licensemanager.CreateLicenseVersionInput) (*request.Request, *licensemanager.CreateLicenseVersionOutput) + + CreateToken(*licensemanager.CreateTokenInput) (*licensemanager.CreateTokenOutput, error) + CreateTokenWithContext(aws.Context, *licensemanager.CreateTokenInput, ...request.Option) (*licensemanager.CreateTokenOutput, error) + CreateTokenRequest(*licensemanager.CreateTokenInput) (*request.Request, *licensemanager.CreateTokenOutput) + + DeleteGrant(*licensemanager.DeleteGrantInput) (*licensemanager.DeleteGrantOutput, error) + DeleteGrantWithContext(aws.Context, *licensemanager.DeleteGrantInput, ...request.Option) (*licensemanager.DeleteGrantOutput, error) + DeleteGrantRequest(*licensemanager.DeleteGrantInput) (*request.Request, *licensemanager.DeleteGrantOutput) + + DeleteLicense(*licensemanager.DeleteLicenseInput) (*licensemanager.DeleteLicenseOutput, error) + DeleteLicenseWithContext(aws.Context, *licensemanager.DeleteLicenseInput, ...request.Option) (*licensemanager.DeleteLicenseOutput, error) + DeleteLicenseRequest(*licensemanager.DeleteLicenseInput) (*request.Request, *licensemanager.DeleteLicenseOutput) + DeleteLicenseConfiguration(*licensemanager.DeleteLicenseConfigurationInput) (*licensemanager.DeleteLicenseConfigurationOutput, error) DeleteLicenseConfigurationWithContext(aws.Context, *licensemanager.DeleteLicenseConfigurationInput, ...request.Option) (*licensemanager.DeleteLicenseConfigurationOutput, error) DeleteLicenseConfigurationRequest(*licensemanager.DeleteLicenseConfigurationInput) (*request.Request, *licensemanager.DeleteLicenseConfigurationOutput) + DeleteToken(*licensemanager.DeleteTokenInput) (*licensemanager.DeleteTokenOutput, error) + DeleteTokenWithContext(aws.Context, *licensemanager.DeleteTokenInput, ...request.Option) (*licensemanager.DeleteTokenOutput, error) + DeleteTokenRequest(*licensemanager.DeleteTokenInput) (*request.Request, *licensemanager.DeleteTokenOutput) + + ExtendLicenseConsumption(*licensemanager.ExtendLicenseConsumptionInput) (*licensemanager.ExtendLicenseConsumptionOutput, error) + ExtendLicenseConsumptionWithContext(aws.Context, *licensemanager.ExtendLicenseConsumptionInput, ...request.Option) (*licensemanager.ExtendLicenseConsumptionOutput, error) + ExtendLicenseConsumptionRequest(*licensemanager.ExtendLicenseConsumptionInput) (*request.Request, *licensemanager.ExtendLicenseConsumptionOutput) + + GetAccessToken(*licensemanager.GetAccessTokenInput) (*licensemanager.GetAccessTokenOutput, error) + GetAccessTokenWithContext(aws.Context, *licensemanager.GetAccessTokenInput, ...request.Option) (*licensemanager.GetAccessTokenOutput, error) + GetAccessTokenRequest(*licensemanager.GetAccessTokenInput) (*request.Request, *licensemanager.GetAccessTokenOutput) + + GetGrant(*licensemanager.GetGrantInput) (*licensemanager.GetGrantOutput, error) + GetGrantWithContext(aws.Context, *licensemanager.GetGrantInput, ...request.Option) (*licensemanager.GetGrantOutput, error) + GetGrantRequest(*licensemanager.GetGrantInput) (*request.Request, *licensemanager.GetGrantOutput) + + GetLicense(*licensemanager.GetLicenseInput) (*licensemanager.GetLicenseOutput, error) + GetLicenseWithContext(aws.Context, *licensemanager.GetLicenseInput, ...request.Option) (*licensemanager.GetLicenseOutput, error) + GetLicenseRequest(*licensemanager.GetLicenseInput) (*request.Request, *licensemanager.GetLicenseOutput) + GetLicenseConfiguration(*licensemanager.GetLicenseConfigurationInput) (*licensemanager.GetLicenseConfigurationOutput, error) GetLicenseConfigurationWithContext(aws.Context, *licensemanager.GetLicenseConfigurationInput, ...request.Option) (*licensemanager.GetLicenseConfigurationOutput, error) GetLicenseConfigurationRequest(*licensemanager.GetLicenseConfigurationInput) (*request.Request, *licensemanager.GetLicenseConfigurationOutput) + GetLicenseUsage(*licensemanager.GetLicenseUsageInput) (*licensemanager.GetLicenseUsageOutput, error) + GetLicenseUsageWithContext(aws.Context, *licensemanager.GetLicenseUsageInput, ...request.Option) (*licensemanager.GetLicenseUsageOutput, error) + GetLicenseUsageRequest(*licensemanager.GetLicenseUsageInput) (*request.Request, *licensemanager.GetLicenseUsageOutput) + GetServiceSettings(*licensemanager.GetServiceSettingsInput) (*licensemanager.GetServiceSettingsOutput, error) GetServiceSettingsWithContext(aws.Context, *licensemanager.GetServiceSettingsInput, ...request.Option) (*licensemanager.GetServiceSettingsOutput, error) GetServiceSettingsRequest(*licensemanager.GetServiceSettingsInput) (*request.Request, *licensemanager.GetServiceSettingsOutput) @@ -80,6 +148,10 @@ type LicenseManagerAPI interface { ListAssociationsForLicenseConfigurationWithContext(aws.Context, *licensemanager.ListAssociationsForLicenseConfigurationInput, ...request.Option) (*licensemanager.ListAssociationsForLicenseConfigurationOutput, error) ListAssociationsForLicenseConfigurationRequest(*licensemanager.ListAssociationsForLicenseConfigurationInput) (*request.Request, *licensemanager.ListAssociationsForLicenseConfigurationOutput) + ListDistributedGrants(*licensemanager.ListDistributedGrantsInput) (*licensemanager.ListDistributedGrantsOutput, error) + ListDistributedGrantsWithContext(aws.Context, *licensemanager.ListDistributedGrantsInput, ...request.Option) (*licensemanager.ListDistributedGrantsOutput, error) + ListDistributedGrantsRequest(*licensemanager.ListDistributedGrantsInput) (*request.Request, *licensemanager.ListDistributedGrantsOutput) + ListFailuresForLicenseConfigurationOperations(*licensemanager.ListFailuresForLicenseConfigurationOperationsInput) (*licensemanager.ListFailuresForLicenseConfigurationOperationsOutput, error) ListFailuresForLicenseConfigurationOperationsWithContext(aws.Context, *licensemanager.ListFailuresForLicenseConfigurationOperationsInput, ...request.Option) (*licensemanager.ListFailuresForLicenseConfigurationOperationsOutput, error) ListFailuresForLicenseConfigurationOperationsRequest(*licensemanager.ListFailuresForLicenseConfigurationOperationsInput) (*request.Request, *licensemanager.ListFailuresForLicenseConfigurationOperationsOutput) @@ -92,6 +164,22 @@ type LicenseManagerAPI interface { ListLicenseSpecificationsForResourceWithContext(aws.Context, *licensemanager.ListLicenseSpecificationsForResourceInput, ...request.Option) (*licensemanager.ListLicenseSpecificationsForResourceOutput, error) ListLicenseSpecificationsForResourceRequest(*licensemanager.ListLicenseSpecificationsForResourceInput) (*request.Request, *licensemanager.ListLicenseSpecificationsForResourceOutput) + ListLicenseVersions(*licensemanager.ListLicenseVersionsInput) (*licensemanager.ListLicenseVersionsOutput, error) + ListLicenseVersionsWithContext(aws.Context, *licensemanager.ListLicenseVersionsInput, ...request.Option) (*licensemanager.ListLicenseVersionsOutput, error) + ListLicenseVersionsRequest(*licensemanager.ListLicenseVersionsInput) (*request.Request, *licensemanager.ListLicenseVersionsOutput) + + ListLicenses(*licensemanager.ListLicensesInput) (*licensemanager.ListLicensesOutput, error) + ListLicensesWithContext(aws.Context, *licensemanager.ListLicensesInput, ...request.Option) (*licensemanager.ListLicensesOutput, error) + ListLicensesRequest(*licensemanager.ListLicensesInput) (*request.Request, *licensemanager.ListLicensesOutput) + + ListReceivedGrants(*licensemanager.ListReceivedGrantsInput) (*licensemanager.ListReceivedGrantsOutput, error) + ListReceivedGrantsWithContext(aws.Context, *licensemanager.ListReceivedGrantsInput, ...request.Option) (*licensemanager.ListReceivedGrantsOutput, error) + ListReceivedGrantsRequest(*licensemanager.ListReceivedGrantsInput) (*request.Request, *licensemanager.ListReceivedGrantsOutput) + + ListReceivedLicenses(*licensemanager.ListReceivedLicensesInput) (*licensemanager.ListReceivedLicensesOutput, error) + ListReceivedLicensesWithContext(aws.Context, *licensemanager.ListReceivedLicensesInput, ...request.Option) (*licensemanager.ListReceivedLicensesOutput, error) + ListReceivedLicensesRequest(*licensemanager.ListReceivedLicensesInput) (*request.Request, *licensemanager.ListReceivedLicensesOutput) + ListResourceInventory(*licensemanager.ListResourceInventoryInput) (*licensemanager.ListResourceInventoryOutput, error) ListResourceInventoryWithContext(aws.Context, *licensemanager.ListResourceInventoryInput, ...request.Option) (*licensemanager.ListResourceInventoryOutput, error) ListResourceInventoryRequest(*licensemanager.ListResourceInventoryInput) (*request.Request, *licensemanager.ListResourceInventoryOutput) @@ -100,10 +188,18 @@ type LicenseManagerAPI interface { ListTagsForResourceWithContext(aws.Context, *licensemanager.ListTagsForResourceInput, ...request.Option) (*licensemanager.ListTagsForResourceOutput, error) ListTagsForResourceRequest(*licensemanager.ListTagsForResourceInput) (*request.Request, *licensemanager.ListTagsForResourceOutput) + ListTokens(*licensemanager.ListTokensInput) (*licensemanager.ListTokensOutput, error) + ListTokensWithContext(aws.Context, *licensemanager.ListTokensInput, ...request.Option) (*licensemanager.ListTokensOutput, error) + ListTokensRequest(*licensemanager.ListTokensInput) (*request.Request, *licensemanager.ListTokensOutput) + ListUsageForLicenseConfiguration(*licensemanager.ListUsageForLicenseConfigurationInput) (*licensemanager.ListUsageForLicenseConfigurationOutput, error) ListUsageForLicenseConfigurationWithContext(aws.Context, *licensemanager.ListUsageForLicenseConfigurationInput, ...request.Option) (*licensemanager.ListUsageForLicenseConfigurationOutput, error) ListUsageForLicenseConfigurationRequest(*licensemanager.ListUsageForLicenseConfigurationInput) (*request.Request, *licensemanager.ListUsageForLicenseConfigurationOutput) + RejectGrant(*licensemanager.RejectGrantInput) (*licensemanager.RejectGrantOutput, error) + RejectGrantWithContext(aws.Context, *licensemanager.RejectGrantInput, ...request.Option) (*licensemanager.RejectGrantOutput, error) + RejectGrantRequest(*licensemanager.RejectGrantInput) (*request.Request, *licensemanager.RejectGrantOutput) + TagResource(*licensemanager.TagResourceInput) (*licensemanager.TagResourceOutput, error) TagResourceWithContext(aws.Context, *licensemanager.TagResourceInput, ...request.Option) (*licensemanager.TagResourceOutput, error) TagResourceRequest(*licensemanager.TagResourceInput) (*request.Request, *licensemanager.TagResourceOutput)