From 6646f21285baf44d9c89945ef22ca99b87009c2b Mon Sep 17 00:00:00 2001 From: AWS SDK for Go v2 automation user Date: Thu, 14 Nov 2024 19:05:39 +0000 Subject: [PATCH] Update API model --- .../aws-models/accessanalyzer.json | 144 +- .../sdk-codegen/aws-models/cloudcontrol.json | 170 +- codegen/sdk-codegen/aws-models/deadline.json | 109 +- codegen/sdk-codegen/aws-models/iam.json | 471 +- .../sdk-codegen/aws-models/iot-wireless.json | 187 +- codegen/sdk-codegen/aws-models/ivs.json | 200 +- .../license-manager-user-subscriptions.json | 1185 ++- .../aws-models/partnercentral-selling.json | 8879 +++++++++++++++++ .../sdk-codegen/aws-models/quicksight.json | 2441 ++++- codegen/sdk-codegen/aws-models/redshift.json | 42 + codegen/sdk-codegen/aws-models/s3.json | 340 +- codegen/sdk-codegen/aws-models/sagemaker.json | 66 + codegen/sdk-codegen/aws-models/sts.json | 171 +- 13 files changed, 14176 insertions(+), 229 deletions(-) create mode 100644 codegen/sdk-codegen/aws-models/partnercentral-selling.json diff --git a/codegen/sdk-codegen/aws-models/accessanalyzer.json b/codegen/sdk-codegen/aws-models/accessanalyzer.json index 1e9fd2345fd..74e06f8fbbf 100644 --- a/codegen/sdk-codegen/aws-models/accessanalyzer.json +++ b/codegen/sdk-codegen/aws-models/accessanalyzer.json @@ -1554,6 +1554,12 @@ "target": "com.amazonaws.accessanalyzer#AccessPreviewSummary" } }, + "com.amazonaws.accessanalyzer#AccountIdsList": { + "type": "list", + "member": { + "target": "smithy.api#String" + } + }, "com.amazonaws.accessanalyzer#AclCanonicalId": { "type": "string" }, @@ -1622,6 +1628,46 @@ "target": "com.amazonaws.accessanalyzer#Action" } }, + "com.amazonaws.accessanalyzer#AnalysisRule": { + "type": "structure", + "members": { + "exclusions": { + "target": "com.amazonaws.accessanalyzer#AnalysisRuleCriteriaList", + "traits": { + "smithy.api#documentation": "

A list of rules for the analyzer containing criteria to exclude from analysis. Entities\n that meet the rule criteria will not generate findings.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains information about analysis rules for the analyzer. Analysis rules determine\n which entities will generate findings based on the criteria you define when you create the\n rule.

" + } + }, + "com.amazonaws.accessanalyzer#AnalysisRuleCriteria": { + "type": "structure", + "members": { + "accountIds": { + "target": "com.amazonaws.accessanalyzer#AccountIdsList", + "traits": { + "smithy.api#documentation": "

A list of Amazon Web Services account IDs to apply to the analysis rule criteria. The accounts cannot\n include the organization analyzer owner account. Account IDs can only be applied to the\n analysis rule criteria for organization-level analyzers. The list cannot include more than\n 2,000 account IDs.

" + } + }, + "resourceTags": { + "target": "com.amazonaws.accessanalyzer#TagsList", + "traits": { + "smithy.api#documentation": "

An array of key-value pairs to match for your resources. You can use the set of Unicode\n letters, digits, whitespace, _, ., /,\n =, +, and -.

\n

For the tag key, you can specify a value that is 1 to 128 characters in length and\n cannot be prefixed with aws:.

\n

For the tag value, you can specify a value that is 0 to 256 characters in length. If the\n specified tag value is 0 characters, the rule is applied to all principals with the\n specified tag key.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The criteria for an analysis rule for an analyzer. The criteria determine which entities\n will generate findings.

" + } + }, + "com.amazonaws.accessanalyzer#AnalysisRuleCriteriaList": { + "type": "list", + "member": { + "target": "com.amazonaws.accessanalyzer#AnalysisRuleCriteria" + } + }, "com.amazonaws.accessanalyzer#AnalyzedResource": { "type": "structure", "members": { @@ -1751,6 +1797,9 @@ "read": { "target": "com.amazonaws.accessanalyzer#GetAnalyzer" }, + "update": { + "target": "com.amazonaws.accessanalyzer#UpdateAnalyzer" + }, "delete": { "target": "com.amazonaws.accessanalyzer#DeleteAnalyzer" }, @@ -1781,12 +1830,12 @@ "unusedAccess": { "target": "com.amazonaws.accessanalyzer#UnusedAccessConfiguration", "traits": { - "smithy.api#documentation": "

Specifies the configuration of an unused access analyzer for an Amazon Web Services organization or\n account. External access analyzers do not support any configuration.

" + "smithy.api#documentation": "

Specifies the configuration of an unused access analyzer for an Amazon Web Services organization or\n account.

" } } }, "traits": { - "smithy.api#documentation": "

Contains information about the configuration of an unused access analyzer for an Amazon Web Services\n organization or account.

" + "smithy.api#documentation": "

Contains information about the configuration of an analyzer for an Amazon Web Services organization or\n account.

" } }, "com.amazonaws.accessanalyzer#AnalyzerStatus": { @@ -2020,7 +2069,7 @@ } }, "traits": { - "smithy.api#documentation": "

Contains information about an archive rule.

" + "smithy.api#documentation": "

Contains information about an archive rule. Archive rules automatically archive new\n findings that meet the criteria you define when you create the rule.

" } }, "com.amazonaws.accessanalyzer#ArchiveRulesList": { @@ -2857,7 +2906,7 @@ "tags": { "target": "com.amazonaws.accessanalyzer#TagsMap", "traits": { - "smithy.api#documentation": "

An array of key-value pairs to apply to the analyzer.

" + "smithy.api#documentation": "

An array of key-value pairs to apply to the analyzer. You can use the set of Unicode\n letters, digits, whitespace, _, ., /,\n =, +, and -.

\n

For the tag key, you can specify a value that is 1 to 128 characters in length and\n cannot be prefixed with aws:.

\n

For the tag value, you can specify a value that is 0 to 256 characters in length.

" } }, "clientToken": { @@ -2870,7 +2919,7 @@ "configuration": { "target": "com.amazonaws.accessanalyzer#AnalyzerConfiguration", "traits": { - "smithy.api#documentation": "

Specifies the configuration of the analyzer. If the analyzer is an unused access\n analyzer, the specified scope of unused access is used for the configuration. If the\n analyzer is an external access analyzer, this field is not used.

" + "smithy.api#documentation": "

Specifies the configuration of the analyzer. If the analyzer is an unused access\n analyzer, the specified scope of unused access is used for the configuration.

" } } }, @@ -5383,7 +5432,7 @@ } ], "traits": { - "smithy.api#documentation": "

Retrieves a list of resources of the specified type that have been analyzed by the\n specified external access analyzer. This action is not supported for unused access\n analyzers.

", + "smithy.api#documentation": "

Retrieves a list of resources of the specified type that have been analyzed by the\n specified analyzer.

", "smithy.api#http": { "uri": "/analyzed-resource", "method": "POST", @@ -6634,6 +6683,10 @@ { "value": "AWS::DynamoDB::Stream", "name": "AWS_DYNAMODB_STREAM" + }, + { + "value": "AWS::IAM::User", + "name": "AWS_IAM_USER" } ] } @@ -7196,6 +7249,12 @@ "smithy.api#documentation": "

The response to the request.

" } }, + "com.amazonaws.accessanalyzer#TagsList": { + "type": "list", + "member": { + "target": "com.amazonaws.accessanalyzer#TagsMap" + } + }, "com.amazonaws.accessanalyzer#TagsMap": { "type": "map", "key": { @@ -7417,8 +7476,11 @@ "unusedAccessAge": { "target": "smithy.api#Integer", "traits": { - "smithy.api#documentation": "

The specified access age in days for which to generate findings for unused access. For\n example, if you specify 90 days, the analyzer will generate findings for IAM entities\n within the accounts of the selected organization for any access that hasn't been used in 90\n or more days since the analyzer's last scan. You can choose a value between 1 and 180\n days.

" + "smithy.api#documentation": "

The specified access age in days for which to generate findings for unused access. For\n example, if you specify 90 days, the analyzer will generate findings for IAM entities\n within the accounts of the selected organization for any access that hasn't been used in 90\n or more days since the analyzer's last scan. You can choose a value between 1 and 365\n days.

" } + }, + "analysisRule": { + "target": "com.amazonaws.accessanalyzer#AnalysisRule" } }, "traits": { @@ -7561,6 +7623,74 @@ "smithy.api#documentation": "

Contains information about the action to take for a policy in an unused permissions\n finding.

" } }, + "com.amazonaws.accessanalyzer#UpdateAnalyzer": { + "type": "operation", + "input": { + "target": "com.amazonaws.accessanalyzer#UpdateAnalyzerRequest" + }, + "output": { + "target": "com.amazonaws.accessanalyzer#UpdateAnalyzerResponse" + }, + "errors": [ + { + "target": "com.amazonaws.accessanalyzer#AccessDeniedException" + }, + { + "target": "com.amazonaws.accessanalyzer#ConflictException" + }, + { + "target": "com.amazonaws.accessanalyzer#InternalServerException" + }, + { + "target": "com.amazonaws.accessanalyzer#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.accessanalyzer#ThrottlingException" + }, + { + "target": "com.amazonaws.accessanalyzer#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Modifies the configuration of an existing analyzer.

", + "smithy.api#http": { + "uri": "/analyzer/{analyzerName}", + "method": "PUT", + "code": 200 + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.accessanalyzer#UpdateAnalyzerRequest": { + "type": "structure", + "members": { + "analyzerName": { + "target": "com.amazonaws.accessanalyzer#Name", + "traits": { + "smithy.api#documentation": "

The name of the analyzer to modify.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "configuration": { + "target": "com.amazonaws.accessanalyzer#AnalyzerConfiguration" + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.accessanalyzer#UpdateAnalyzerResponse": { + "type": "structure", + "members": { + "configuration": { + "target": "com.amazonaws.accessanalyzer#AnalyzerConfiguration" + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.accessanalyzer#UpdateArchiveRule": { "type": "operation", "input": { diff --git a/codegen/sdk-codegen/aws-models/cloudcontrol.json b/codegen/sdk-codegen/aws-models/cloudcontrol.json index e479fe67210..8d0c09d6226 100644 --- a/codegen/sdk-codegen/aws-models/cloudcontrol.json +++ b/codegen/sdk-codegen/aws-models/cloudcontrol.json @@ -169,7 +169,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -212,7 +211,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -225,7 +225,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -239,7 +238,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -262,7 +260,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -297,7 +294,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -308,14 +304,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -329,14 +327,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -345,11 +341,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -360,14 +356,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -381,7 +379,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -401,7 +398,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -412,14 +408,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -430,9 +428,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -1400,7 +1400,7 @@ "traits": { "smithy.api#length": { "min": 1, - "max": 1024 + "max": 2048 }, "smithy.api#pattern": "^.+$" } @@ -1607,6 +1607,12 @@ "traits": { "smithy.api#documentation": "

Represents the current status of the resource operation request.

" } + }, + "HooksProgressEvent": { + "target": "com.amazonaws.cloudcontrol#HooksProgressEvent", + "traits": { + "smithy.api#documentation": "

Lists Hook invocations for the specified target in the request. This is a list since the same target can invoke multiple Hooks.

" + } } } }, @@ -1626,6 +1632,10 @@ "value": "AccessDenied", "name": "ACCESS_DENIED" }, + { + "value": "UnauthorizedTaggingOperation", + "name": "UNAUTHORIZED_TAGGING_OPERATION" + }, { "value": "InvalidCredentials", "name": "INVALID_CREDENTIALS" @@ -1716,11 +1726,113 @@ "traits": { "smithy.api#length": { "min": 1, - "max": 2048 + "max": 4096 }, "smithy.api#pattern": "^.+$" } }, + "com.amazonaws.cloudcontrol#HookFailureMode": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#pattern": "^[-A-Za-z_]+$" + } + }, + "com.amazonaws.cloudcontrol#HookInvocationPoint": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#pattern": "^[-A-Za-z_]+$" + } + }, + "com.amazonaws.cloudcontrol#HookProgressEvent": { + "type": "structure", + "members": { + "HookTypeName": { + "target": "com.amazonaws.cloudcontrol#TypeName", + "traits": { + "smithy.api#documentation": "

The type name of the Hook being invoked.

" + } + }, + "HookTypeVersionId": { + "target": "com.amazonaws.cloudcontrol#TypeVersionId", + "traits": { + "smithy.api#documentation": "

The type version of the Hook being invoked.

" + } + }, + "HookTypeArn": { + "target": "com.amazonaws.cloudcontrol#HookTypeArn", + "traits": { + "smithy.api#documentation": "

The ARN of the Hook being invoked.

" + } + }, + "InvocationPoint": { + "target": "com.amazonaws.cloudcontrol#HookInvocationPoint", + "traits": { + "smithy.api#documentation": "

States whether the Hook is invoked before or after resource provisioning.

" + } + }, + "HookStatus": { + "target": "com.amazonaws.cloudcontrol#HookStatus", + "traits": { + "smithy.api#documentation": "

The status of the Hook invocation. The following are potential statuses:

\n " + } + }, + "HookEventTime": { + "target": "com.amazonaws.cloudcontrol#Timestamp", + "traits": { + "smithy.api#documentation": "

The time that the Hook invocation request initiated.

" + } + }, + "HookStatusMessage": { + "target": "com.amazonaws.cloudcontrol#StatusMessage", + "traits": { + "smithy.api#documentation": "

The message explaining the current Hook status.

" + } + }, + "FailureMode": { + "target": "com.amazonaws.cloudcontrol#HookFailureMode", + "traits": { + "smithy.api#documentation": "

The failure mode of the invocation. The following are the potential statuses:

\n " + } + } + }, + "traits": { + "smithy.api#documentation": "

Represents the current status of applicable Hooks for a resource operation request. It contains list of \n Hook invocation information for the resource specified in the request since the same target can invoke multiple Hooks. \n For more information, see Managing resource operation requests with Amazon Web Services Cloud Control API\n .

" + } + }, + "com.amazonaws.cloudcontrol#HookStatus": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#pattern": "^[-A-Za-z_]+$" + } + }, + "com.amazonaws.cloudcontrol#HookTypeArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^arn:aws.*:.+:.*:.*:.+$" + } + }, + "com.amazonaws.cloudcontrol#HooksProgressEvent": { + "type": "list", + "member": { + "target": "com.amazonaws.cloudcontrol#HookProgressEvent" + } + }, "com.amazonaws.cloudcontrol#Identifier": { "type": "string", "traits": { @@ -2100,9 +2212,10 @@ "com.amazonaws.cloudcontrol#PatchDocument": { "type": "string", "traits": { + "smithy.api#documentation": "Allow up to 256K length of Resource properties", "smithy.api#length": { "min": 1, - "max": 65536 + "max": 262144 }, "smithy.api#pattern": "^[\\s\\S]*$", "smithy.api#sensitive": {} @@ -2146,6 +2259,12 @@ "smithy.api#documentation": "

The unique token representing this resource operation request.

\n

Use the RequestToken with GetResourceRequestStatus to return the current status of a resource operation\n request.

" } }, + "HooksRequestToken": { + "target": "com.amazonaws.cloudcontrol#RequestToken", + "traits": { + "smithy.api#documentation": "

The unique token representing the Hooks operation for the request.

" + } + }, "Operation": { "target": "com.amazonaws.cloudcontrol#Operation", "traits": { @@ -2196,9 +2315,10 @@ "com.amazonaws.cloudcontrol#Properties": { "type": "string", "traits": { + "smithy.api#documentation": "Allow up to 256K length of Resource properties", "smithy.api#length": { "min": 1, - "max": 65536 + "max": 262144 }, "smithy.api#pattern": "^[\\s\\S]*$", "smithy.api#sensitive": {} @@ -2366,7 +2486,7 @@ "traits": { "smithy.api#length": { "min": 0, - "max": 1024 + "max": 2048 }, "smithy.api#pattern": "^[\\s\\S]*$" } diff --git a/codegen/sdk-codegen/aws-models/deadline.json b/codegen/sdk-codegen/aws-models/deadline.json index 903bfb185f1..f1304f8b3a6 100644 --- a/codegen/sdk-codegen/aws-models/deadline.json +++ b/codegen/sdk-codegen/aws-models/deadline.json @@ -16,20 +16,41 @@ "smithy.api#private": {} } }, + "com.amazonaws.deadline#AcceleratorCapabilities": { + "type": "structure", + "members": { + "selections": { + "target": "com.amazonaws.deadline#AcceleratorSelections", + "traits": { + "smithy.api#documentation": "

A list of objects that contain the GPU name of the accelerator and driver for the\n instance types that support the accelerator.

", + "smithy.api#required": {} + } + }, + "count": { + "target": "com.amazonaws.deadline#AcceleratorCountRange", + "traits": { + "smithy.api#documentation": "

The number of GPUs on each worker. The default is 1.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Provides information about the GPU accelerators and drivers for the instance types in a\n fleet. If you include the acceleratorCapabilities property in the ServiceManagedEc2InstanceCapabilities object, all of the Amazon EC2\n instances will have at least one accelerator.

" + } + }, "com.amazonaws.deadline#AcceleratorCountRange": { "type": "structure", "members": { "min": { "target": "com.amazonaws.deadline#MinZeroMaxInteger", "traits": { - "smithy.api#documentation": "

The minimum GPU for the accelerator.

", + "smithy.api#documentation": "

The minimum number of GPUs for the accelerator. If you set the value to 0, a worker will\n still have 1 GPU.

", "smithy.api#required": {} } }, "max": { "target": "com.amazonaws.deadline#MinZeroMaxInteger", "traits": { - "smithy.api#documentation": "

The maximum GPU for the accelerator.

" + "smithy.api#documentation": "

The maximum number of GPUs for the accelerator.

" } } }, @@ -37,6 +58,72 @@ "smithy.api#documentation": "

The range for the GPU fleet acceleration.

" } }, + "com.amazonaws.deadline#AcceleratorName": { + "type": "enum", + "members": { + "T4": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "t4" + } + }, + "A10G": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "a10g" + } + }, + "L4": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "l4" + } + }, + "L40S": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "l40s" + } + } + } + }, + "com.amazonaws.deadline#AcceleratorRuntime": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 100 + } + } + }, + "com.amazonaws.deadline#AcceleratorSelection": { + "type": "structure", + "members": { + "name": { + "target": "com.amazonaws.deadline#AcceleratorName", + "traits": { + "smithy.api#documentation": "

The name of the GPU accelerator.

", + "smithy.api#required": {} + } + }, + "runtime": { + "target": "com.amazonaws.deadline#AcceleratorRuntime", + "traits": { + "smithy.api#default": "latest", + "smithy.api#documentation": "

The driver version that the GPU accelerator uses.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Values that you can use to select a particular Amazon EC2 instance type.

" + } + }, + "com.amazonaws.deadline#AcceleratorSelections": { + "type": "list", + "member": { + "target": "com.amazonaws.deadline#AcceleratorSelection" + } + }, "com.amazonaws.deadline#AcceleratorTotalMemoryMiBRange": { "type": "structure", "members": { @@ -16150,6 +16237,12 @@ "smithy.api#documentation": "

The root EBS volume.

" } }, + "acceleratorCapabilities": { + "target": "com.amazonaws.deadline#AcceleratorCapabilities", + "traits": { + "smithy.api#documentation": "

The GPU accelerator capabilities required for the Amazon EC2 instances. If you\n include the acceleratorCapabilities property in the ServiceManagedEc2InstanceCapabilities object, all of the Amazon EC2\n instances will have at least one accelerator.

" + } + }, "allowedInstanceTypes": { "target": "com.amazonaws.deadline#InstanceTypes", "traits": { @@ -16999,6 +17092,12 @@ "type": "list", "member": { "target": "com.amazonaws.deadline#StepAmountCapability" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 25 + } } }, "com.amazonaws.deadline#StepAmountCapability": { @@ -17038,6 +17137,12 @@ "type": "list", "member": { "target": "com.amazonaws.deadline#StepAttributeCapability" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 25 + } } }, "com.amazonaws.deadline#StepAttributeCapability": { diff --git a/codegen/sdk-codegen/aws-models/iam.json b/codegen/sdk-codegen/aws-models/iam.json index 35d29c78745..780e888265b 100644 --- a/codegen/sdk-codegen/aws-models/iam.json +++ b/codegen/sdk-codegen/aws-models/iam.json @@ -177,9 +177,21 @@ { "target": "com.amazonaws.iam#DetachUserPolicy" }, + { + "target": "com.amazonaws.iam#DisableOrganizationsRootCredentialsManagement" + }, + { + "target": "com.amazonaws.iam#DisableOrganizationsRootSessions" + }, { "target": "com.amazonaws.iam#EnableMFADevice" }, + { + "target": "com.amazonaws.iam#EnableOrganizationsRootCredentialsManagement" + }, + { + "target": "com.amazonaws.iam#EnableOrganizationsRootSessions" + }, { "target": "com.amazonaws.iam#GenerateCredentialReport" }, @@ -315,6 +327,9 @@ { "target": "com.amazonaws.iam#ListOpenIDConnectProviderTags" }, + { + "target": "com.amazonaws.iam#ListOrganizationsFeatures" + }, { "target": "com.amazonaws.iam#ListPolicies" }, @@ -2049,6 +2064,19 @@ "smithy.api#documentation": "

Contains information about an Amazon Web Services access key, without its secret key.

\n

This data type is used as a response element in the ListAccessKeys\n operation.

" } }, + "com.amazonaws.iam#AccountNotManagementOrDelegatedAdministratorException": { + "type": "structure", + "members": { + "Message": { + "target": "com.amazonaws.iam#ExceptionMessage" + } + }, + "traits": { + "smithy.api#documentation": "

The request was rejected because the account making the request is not the management\n account or delegated administrator account for centralized root\n access.

", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + }, "com.amazonaws.iam#ActionNameListType": { "type": "list", "member": { @@ -2473,6 +2501,19 @@ "smithy.api#sensitive": {} } }, + "com.amazonaws.iam#CallerIsNotManagementAccountException": { + "type": "structure", + "members": { + "Message": { + "target": "com.amazonaws.iam#ExceptionMessage" + } + }, + "traits": { + "smithy.api#documentation": "

The request was rejected because the account making the request is not the management\n account for the organization.

", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + }, "com.amazonaws.iam#CertificationKeyType": { "type": "string", "traits": { @@ -3071,15 +3112,13 @@ "UserName": { "target": "com.amazonaws.iam#userNameType", "traits": { - "smithy.api#documentation": "

The name of the IAM user to create a password for. The user must already\n exist.

\n

This parameter allows (through its regex pattern) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-

", - "smithy.api#required": {} + "smithy.api#documentation": "

The name of the IAM user to create a password for. The user must already\n exist.

\n

This parameter is optional. If no user name is included, it defaults to the principal\n making the request. When you make this request with root user credentials, you must use\n an AssumeRoot session to omit the user name.

\n

This parameter allows (through its regex pattern) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-

" } }, "Password": { "target": "com.amazonaws.iam#passwordType", "traits": { - "smithy.api#documentation": "

The new password for the user.

\n

The regex pattern \n that is used to validate this parameter is a string of characters. That string can include almost any printable \n ASCII character from the space (\\u0020) through the end of the ASCII character range (\\u00FF). \n You can also include the tab (\\u0009), line feed (\\u000A), and carriage return (\\u000D) \n characters. Any of these characters are valid in a password. However, many tools, such \n as the Amazon Web Services Management Console, might restrict the ability to type certain characters because they have \n special meaning within that tool.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The new password for the user.

\n

This parameter must be omitted when you make the request with an AssumeRoot session. It is required in all other cases.

\n

The regex pattern \n that is used to validate this parameter is a string of characters. That string can include almost any printable \n ASCII character from the space (\\u0020) through the end of the ASCII character range (\\u00FF). \n You can also include the tab (\\u0009), line feed (\\u000A), and carriage return (\\u000D) \n characters. Any of these characters are valid in a password. However, many tools, such \n as the Amazon Web Services Management Console, might restrict the ability to type certain characters because they have \n special meaning within that tool.

" } }, "PasswordResetRequired": { @@ -3955,8 +3994,7 @@ "UserName": { "target": "com.amazonaws.iam#existingUserNameType", "traits": { - "smithy.api#documentation": "

The name of the user whose MFA device you want to deactivate.

\n

This parameter allows (through its regex pattern) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-

", - "smithy.api#required": {} + "smithy.api#documentation": "

The name of the user whose MFA device you want to deactivate.

\n

This parameter is optional. If no user name is included, it defaults to the principal\n making the request. When you make this request with root user credentials, you must use\n an AssumeRoot session to omit the user name.

\n

This parameter allows (through its regex pattern) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-

" } }, "SerialNumber": { @@ -4308,8 +4346,7 @@ "UserName": { "target": "com.amazonaws.iam#userNameType", "traits": { - "smithy.api#documentation": "

The name of the user whose password you want to delete.

\n

This parameter allows (through its regex pattern) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-

", - "smithy.api#required": {} + "smithy.api#documentation": "

The name of the user whose password you want to delete.

\n

This parameter is optional. If no user name is included, it defaults to the principal\n making the request. When you make this request with root user credentials, you must use\n an AssumeRoot session to omit the user name.

\n

This parameter allows (through its regex pattern) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-

" } } }, @@ -5272,6 +5309,136 @@ "smithy.api#input": {} } }, + "com.amazonaws.iam#DisableOrganizationsRootCredentialsManagement": { + "type": "operation", + "input": { + "target": "com.amazonaws.iam#DisableOrganizationsRootCredentialsManagementRequest" + }, + "output": { + "target": "com.amazonaws.iam#DisableOrganizationsRootCredentialsManagementResponse" + }, + "errors": [ + { + "target": "com.amazonaws.iam#AccountNotManagementOrDelegatedAdministratorException" + }, + { + "target": "com.amazonaws.iam#OrganizationNotFoundException" + }, + { + "target": "com.amazonaws.iam#OrganizationNotInAllFeaturesModeException" + }, + { + "target": "com.amazonaws.iam#ServiceAccessNotEnabledException" + } + ], + "traits": { + "smithy.api#documentation": "

Disables the management of privileged root user credentials across member accounts in\n your organization. When you disable this feature, the management account and the\n delegated admininstrator for IAM can no longer manage root user credentials for member\n accounts in your organization.

", + "smithy.api#examples": [ + { + "title": "To disable the RootCredentialsManagement feature in your organization", + "documentation": "The following command disables the management of privileged root user credentials across member accounts in your organization.", + "output": { + "OrganizationId": "o-aa111bb222", + "EnabledFeatures": [ + "RootSessions" + ] + } + } + ] + } + }, + "com.amazonaws.iam#DisableOrganizationsRootCredentialsManagementRequest": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.iam#DisableOrganizationsRootCredentialsManagementResponse": { + "type": "structure", + "members": { + "OrganizationId": { + "target": "com.amazonaws.iam#OrganizationIdType", + "traits": { + "smithy.api#documentation": "

The unique identifier (ID) of an organization.

" + } + }, + "EnabledFeatures": { + "target": "com.amazonaws.iam#FeaturesListType", + "traits": { + "smithy.api#documentation": "

The features enabled for centralized root access for member accounts in your\n organization.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.iam#DisableOrganizationsRootSessions": { + "type": "operation", + "input": { + "target": "com.amazonaws.iam#DisableOrganizationsRootSessionsRequest" + }, + "output": { + "target": "com.amazonaws.iam#DisableOrganizationsRootSessionsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.iam#AccountNotManagementOrDelegatedAdministratorException" + }, + { + "target": "com.amazonaws.iam#OrganizationNotFoundException" + }, + { + "target": "com.amazonaws.iam#OrganizationNotInAllFeaturesModeException" + }, + { + "target": "com.amazonaws.iam#ServiceAccessNotEnabledException" + } + ], + "traits": { + "smithy.api#documentation": "

Disables root user sessions for privileged tasks across member accounts in your\n organization. When you disable this feature, the management account and the delegated\n admininstrator for IAM can no longer perform privileged tasks on member accounts in\n your organization.

", + "smithy.api#examples": [ + { + "title": "To disable the RootSessions feature in your organization", + "documentation": "The following command disables root user sessions for privileged tasks across member accounts in your organization.", + "output": { + "OrganizationId": "o-aa111bb222", + "EnabledFeatures": [ + "RootCredentialsManagement" + ] + } + } + ] + } + }, + "com.amazonaws.iam#DisableOrganizationsRootSessionsRequest": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.iam#DisableOrganizationsRootSessionsResponse": { + "type": "structure", + "members": { + "OrganizationId": { + "target": "com.amazonaws.iam#OrganizationIdType", + "traits": { + "smithy.api#documentation": "

The unique identifier (ID) of an organization.

" + } + }, + "EnabledFeatures": { + "target": "com.amazonaws.iam#FeaturesListType", + "traits": { + "smithy.api#documentation": "

The features you have enabled for centralized root access of member accounts in your\n organization.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.iam#DuplicateCertificateException": { "type": "structure", "members": { @@ -5377,6 +5544,143 @@ "smithy.api#input": {} } }, + "com.amazonaws.iam#EnableOrganizationsRootCredentialsManagement": { + "type": "operation", + "input": { + "target": "com.amazonaws.iam#EnableOrganizationsRootCredentialsManagementRequest" + }, + "output": { + "target": "com.amazonaws.iam#EnableOrganizationsRootCredentialsManagementResponse" + }, + "errors": [ + { + "target": "com.amazonaws.iam#AccountNotManagementOrDelegatedAdministratorException" + }, + { + "target": "com.amazonaws.iam#CallerIsNotManagementAccountException" + }, + { + "target": "com.amazonaws.iam#OrganizationNotFoundException" + }, + { + "target": "com.amazonaws.iam#OrganizationNotInAllFeaturesModeException" + }, + { + "target": "com.amazonaws.iam#ServiceAccessNotEnabledException" + } + ], + "traits": { + "smithy.api#documentation": "

Enables the management of privileged root user credentials across member accounts in your\n organization. When you enable root credentials management for centralized root access, the management account and the delegated\n admininstrator for IAM can manage root user credentials for member accounts in your\n organization.

\n

Before you enable centralized root access, you must have an account configured with\n the following settings:

\n ", + "smithy.api#examples": [ + { + "title": "To enable the RootCredentialsManagement feature in your organization", + "documentation": "The following command enables the management of privileged root user credentials across member accounts in your organization.", + "output": { + "OrganizationId": "o-aa111bb222", + "EnabledFeatures": [ + "RootCredentialsManagement" + ] + } + } + ] + } + }, + "com.amazonaws.iam#EnableOrganizationsRootCredentialsManagementRequest": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.iam#EnableOrganizationsRootCredentialsManagementResponse": { + "type": "structure", + "members": { + "OrganizationId": { + "target": "com.amazonaws.iam#OrganizationIdType", + "traits": { + "smithy.api#documentation": "

The unique identifier (ID) of an organization.

" + } + }, + "EnabledFeatures": { + "target": "com.amazonaws.iam#FeaturesListType", + "traits": { + "smithy.api#documentation": "

The features you have enabled for centralized root access.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.iam#EnableOrganizationsRootSessions": { + "type": "operation", + "input": { + "target": "com.amazonaws.iam#EnableOrganizationsRootSessionsRequest" + }, + "output": { + "target": "com.amazonaws.iam#EnableOrganizationsRootSessionsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.iam#AccountNotManagementOrDelegatedAdministratorException" + }, + { + "target": "com.amazonaws.iam#CallerIsNotManagementAccountException" + }, + { + "target": "com.amazonaws.iam#OrganizationNotFoundException" + }, + { + "target": "com.amazonaws.iam#OrganizationNotInAllFeaturesModeException" + }, + { + "target": "com.amazonaws.iam#ServiceAccessNotEnabledException" + } + ], + "traits": { + "smithy.api#documentation": "

Allows the management account or delegated administrator to perform privileged tasks\n on member accounts in your organization. For more information, see Centrally manage root access for member accounts in the Identity and Access Management\n User Guide.

\n

Before you enable this feature, you must have an account configured with the following\n settings:

\n ", + "smithy.api#examples": [ + { + "title": "To enable the RootSessions feature in your organization", + "documentation": "The following command allows the management account or delegated administrator to perform privileged tasks on member accounts in your organization.", + "output": { + "OrganizationId": "o-aa111bb222", + "EnabledFeatures": [ + "RootCredentialsManagement", + "RootSessions" + ] + } + } + ] + } + }, + "com.amazonaws.iam#EnableOrganizationsRootSessionsRequest": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.iam#EnableOrganizationsRootSessionsResponse": { + "type": "structure", + "members": { + "OrganizationId": { + "target": "com.amazonaws.iam#OrganizationIdType", + "traits": { + "smithy.api#documentation": "

The unique identifier (ID) of an organization.

" + } + }, + "EnabledFeatures": { + "target": "com.amazonaws.iam#FeaturesListType", + "traits": { + "smithy.api#documentation": "

The features you have enabled for centralized root access.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.iam#EntityAlreadyExistsException": { "type": "structure", "members": { @@ -5618,6 +5922,32 @@ "target": "com.amazonaws.iam#EvaluationResult" } }, + "com.amazonaws.iam#ExceptionMessage": { + "type": "string" + }, + "com.amazonaws.iam#FeatureType": { + "type": "enum", + "members": { + "ROOT_CREDENTIALS_MANAGEMENT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "RootCredentialsManagement" + } + }, + "ROOT_SESSIONS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "RootSessions" + } + } + } + }, + "com.amazonaws.iam#FeaturesListType": { + "type": "list", + "member": { + "target": "com.amazonaws.iam#FeatureType" + } + }, "com.amazonaws.iam#GenerateCredentialReport": { "type": "operation", "input": { @@ -6496,8 +6826,7 @@ "UserName": { "target": "com.amazonaws.iam#userNameType", "traits": { - "smithy.api#documentation": "

The name of the user whose login profile you want to retrieve.

\n

This parameter allows (through its regex pattern) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-

", - "smithy.api#required": {} + "smithy.api#documentation": "

The name of the user whose login profile you want to retrieve.

\n

This parameter is optional. If no user name is included, it defaults to the principal\n making the request. When you make this request with root user credentials, you must use\n an AssumeRoot session to omit the user name.

\n

This parameter allows (through its regex pattern) a string of characters consisting of upper and lowercase alphanumeric \n characters with no spaces. You can also include any of the following characters: _+=,.@-

" } } }, @@ -8224,7 +8553,7 @@ } ], "traits": { - "smithy.api#documentation": "

Lists the account alias associated with the Amazon Web Services account (Note: you can have only\n one). For information about using an Amazon Web Services account alias, see Creating,\n deleting, and listing an Amazon Web Services account alias in the\n IAM User Guide.

", + "smithy.api#documentation": "

Lists the account alias associated with the Amazon Web Services account (Note: you can have only\n one). For information about using an Amazon Web Services account alias, see Creating,\n deleting, and listing an Amazon Web Services account alias in the Amazon Web Services Sign-In\n User Guide.

", "smithy.api#examples": [ { "title": "To list account aliases", @@ -9520,6 +9849,71 @@ "smithy.api#output": {} } }, + "com.amazonaws.iam#ListOrganizationsFeatures": { + "type": "operation", + "input": { + "target": "com.amazonaws.iam#ListOrganizationsFeaturesRequest" + }, + "output": { + "target": "com.amazonaws.iam#ListOrganizationsFeaturesResponse" + }, + "errors": [ + { + "target": "com.amazonaws.iam#AccountNotManagementOrDelegatedAdministratorException" + }, + { + "target": "com.amazonaws.iam#OrganizationNotFoundException" + }, + { + "target": "com.amazonaws.iam#OrganizationNotInAllFeaturesModeException" + }, + { + "target": "com.amazonaws.iam#ServiceAccessNotEnabledException" + } + ], + "traits": { + "smithy.api#documentation": "

Lists the centralized root access features enabled for your organization. For more\n information, see Centrally manage root access for member accounts.

", + "smithy.api#examples": [ + { + "title": "To list the centralized root access features enabled for your organization", + "documentation": "he following command lists the centralized root access features enabled for your organization.", + "output": { + "OrganizationId": "o-aa111bb222", + "EnabledFeatures": [ + "RootCredentialsManagement" + ] + } + } + ] + } + }, + "com.amazonaws.iam#ListOrganizationsFeaturesRequest": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.iam#ListOrganizationsFeaturesResponse": { + "type": "structure", + "members": { + "OrganizationId": { + "target": "com.amazonaws.iam#OrganizationIdType", + "traits": { + "smithy.api#documentation": "

The unique identifier (ID) of an organization.

" + } + }, + "EnabledFeatures": { + "target": "com.amazonaws.iam#FeaturesListType", + "traits": { + "smithy.api#documentation": "

Specifies the features that are currently available in your organization.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.iam#ListPolicies": { "type": "operation", "input": { @@ -11332,6 +11726,42 @@ "smithy.api#httpError": 400 } }, + "com.amazonaws.iam#OrganizationIdType": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 34 + }, + "smithy.api#pattern": "^o-[a-z0-9]{10,32}$" + } + }, + "com.amazonaws.iam#OrganizationNotFoundException": { + "type": "structure", + "members": { + "Message": { + "target": "com.amazonaws.iam#ExceptionMessage" + } + }, + "traits": { + "smithy.api#documentation": "

The request was rejected because no organization is associated with your account.

", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + }, + "com.amazonaws.iam#OrganizationNotInAllFeaturesModeException": { + "type": "structure", + "members": { + "Message": { + "target": "com.amazonaws.iam#ExceptionMessage" + } + }, + "traits": { + "smithy.api#documentation": "

The request was rejected because your organization does not have All features enabled. For\n more information, see Available feature sets in the Organizations User\n Guide.

", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + }, "com.amazonaws.iam#OrganizationsDecisionDetail": { "type": "structure", "members": { @@ -13011,6 +13441,19 @@ "smithy.api#documentation": "

Contains information about a server certificate without its certificate body,\n certificate chain, and private key.

\n

This data type is used as a response element in the UploadServerCertificate and ListServerCertificates\n operations.

" } }, + "com.amazonaws.iam#ServiceAccessNotEnabledException": { + "type": "structure", + "members": { + "Message": { + "target": "com.amazonaws.iam#ExceptionMessage" + } + }, + "traits": { + "smithy.api#documentation": "

The request was rejected because trusted access is not enabled for IAM in Organizations. For details, see IAM and Organizations in the Organizations User Guide.

", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + }, "com.amazonaws.iam#ServiceFailureException": { "type": "structure", "members": { @@ -16844,6 +17287,12 @@ "smithy.api#enumValue": "AccountAccessKeysPresent" } }, + "AccountPasswordPresent": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AccountPasswordPresent" + } + }, "AccountSigningCertificatesPresent": { "target": "smithy.api#Unit", "traits": { diff --git a/codegen/sdk-codegen/aws-models/iot-wireless.json b/codegen/sdk-codegen/aws-models/iot-wireless.json index 92d58ae8835..07a6bf4f841 100644 --- a/codegen/sdk-codegen/aws-models/iot-wireless.json +++ b/codegen/sdk-codegen/aws-models/iot-wireless.json @@ -1610,6 +1610,9 @@ }, "FragmentIntervalMS": { "target": "com.amazonaws.iotwireless#FragmentIntervalMS" + }, + "Descriptor": { + "target": "com.amazonaws.iotwireless#FileDescriptor" } }, "traits": { @@ -4229,6 +4232,12 @@ "com.amazonaws.iotwireless#EventNotificationResourceType": { "type": "enum", "members": { + "FuotaTask": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FuotaTask" + } + }, "SidewalkAccount": { "target": "smithy.api#Unit", "traits": { @@ -4362,6 +4371,17 @@ "com.amazonaws.iotwireless#FactorySupport": { "type": "boolean" }, + "com.amazonaws.iotwireless#FileDescriptor": { + "type": "string", + "traits": { + "smithy.api#documentation": "

The Descriptor specifies some metadata about the File being transferred using FUOTA e.g. the software version.\n It is sent transparently to the device. It is a binary field encoded in base64

", + "smithy.api#length": { + "min": 0, + "max": 332 + }, + "smithy.api#pattern": "^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$" + } + }, "com.amazonaws.iotwireless#Fingerprint": { "type": "string", "traits": { @@ -4518,6 +4538,49 @@ } } }, + "com.amazonaws.iotwireless#FuotaTaskEvent": { + "type": "enum", + "members": { + "Fuota": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Fuota" + } + } + }, + "traits": { + "smithy.api#documentation": "

The event for a log message, if the log message is tied to a fuota task.

" + } + }, + "com.amazonaws.iotwireless#FuotaTaskEventLogOption": { + "type": "structure", + "members": { + "Event": { + "target": "com.amazonaws.iotwireless#FuotaTaskEvent", + "traits": { + "smithy.api#required": {} + } + }, + "LogLevel": { + "target": "com.amazonaws.iotwireless#LogLevel", + "traits": { + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The log options for a FUOTA task event and can be used to set log levels for a\n specific fuota task event.

\n

For a LoRaWAN FuotaTask type, possible event for a log message is Fuota.

" + } + }, + "com.amazonaws.iotwireless#FuotaTaskEventLogOptionList": { + "type": "list", + "member": { + "target": "com.amazonaws.iotwireless#FuotaTaskEventLogOption" + }, + "traits": { + "smithy.api#documentation": "

The list of FUOTA task event log options.

" + } + }, "com.amazonaws.iotwireless#FuotaTaskId": { "type": "string", "traits": { @@ -4537,6 +4600,39 @@ "smithy.api#documentation": "

Lists the FUOTA tasks registered to your AWS account.

" } }, + "com.amazonaws.iotwireless#FuotaTaskLogOption": { + "type": "structure", + "members": { + "Type": { + "target": "com.amazonaws.iotwireless#FuotaTaskType", + "traits": { + "smithy.api#documentation": "

The fuota task type.

", + "smithy.api#required": {} + } + }, + "LogLevel": { + "target": "com.amazonaws.iotwireless#LogLevel", + "traits": { + "smithy.api#required": {} + } + }, + "Events": { + "target": "com.amazonaws.iotwireless#FuotaTaskEventLogOptionList" + } + }, + "traits": { + "smithy.api#documentation": "

The log options for fuota tasks and can be used to set log levels for a specific\n type of fuota task.

" + } + }, + "com.amazonaws.iotwireless#FuotaTaskLogOptionList": { + "type": "list", + "member": { + "target": "com.amazonaws.iotwireless#FuotaTaskLogOption" + }, + "traits": { + "smithy.api#documentation": "

The list of fuota task log options.

" + } + }, "com.amazonaws.iotwireless#FuotaTaskName": { "type": "string", "traits": { @@ -4585,6 +4681,20 @@ "smithy.api#documentation": "

The status of a FUOTA task.

" } }, + "com.amazonaws.iotwireless#FuotaTaskType": { + "type": "enum", + "members": { + "LoRaWAN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LoRaWAN" + } + } + }, + "traits": { + "smithy.api#documentation": "

The fuota task type.

" + } + }, "com.amazonaws.iotwireless#GPST": { "type": "float" }, @@ -4622,6 +4732,18 @@ "smithy.api#documentation": "

Gateway list item object that specifies the frequency and list of gateways for which\n the downlink message should be sent.

" } }, + "com.amazonaws.iotwireless#GatewayListMulticast": { + "type": "list", + "member": { + "target": "com.amazonaws.iotwireless#WirelessGatewayId" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 20 + } + } + }, "com.amazonaws.iotwireless#GatewayMaxEirp": { "type": "float", "traits": { @@ -4991,6 +5113,9 @@ }, "FragmentIntervalMS": { "target": "com.amazonaws.iotwireless#FragmentIntervalMS" + }, + "Descriptor": { + "target": "com.amazonaws.iotwireless#FileDescriptor" } }, "traits": { @@ -5049,6 +5174,9 @@ }, "WirelessDeviceLogOptions": { "target": "com.amazonaws.iotwireless#WirelessDeviceLogOptionList" + }, + "FuotaTaskLogOptions": { + "target": "com.amazonaws.iotwireless#FuotaTaskLogOptionList" } }, "traits": { @@ -5896,7 +6024,7 @@ } ], "traits": { - "smithy.api#documentation": "

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

", + "smithy.api#documentation": "

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

", "smithy.api#http": { "method": "GET", "uri": "/log-levels/{ResourceIdentifier}", @@ -5917,7 +6045,7 @@ "ResourceType": { "target": "com.amazonaws.iotwireless#ResourceType", "traits": { - "smithy.api#documentation": "

The type of the resource, which can be WirelessDevice or\n WirelessGateway.

", + "smithy.api#documentation": "

The type of the resource, which can be WirelessDevice,\n WirelessGateway or FuotaTask.

", "smithy.api#httpQuery": "resourceType", "smithy.api#required": {} } @@ -7277,6 +7405,12 @@ "smithy.api#enumValue": "DevEui" } }, + "FuotaTaskId": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FuotaTaskId" + } + }, "GatewayEui": { "target": "smithy.api#Unit", "traits": { @@ -9533,6 +9667,9 @@ }, "DlClass": { "target": "com.amazonaws.iotwireless#DlClass" + }, + "ParticipatingGateways": { + "target": "com.amazonaws.iotwireless#ParticipatingGatewaysMulticast" } }, "traits": { @@ -9553,6 +9690,9 @@ }, "NumberOfDevicesInGroup": { "target": "com.amazonaws.iotwireless#NumberOfDevicesInGroup" + }, + "ParticipatingGateways": { + "target": "com.amazonaws.iotwireless#ParticipatingGatewaysMulticast" } }, "traits": { @@ -10903,6 +11043,26 @@ "smithy.api#documentation": "

Specify the list of gateways to which you want to send downlink data traffic when the\n wireless device is running in class B or class C mode.

" } }, + "com.amazonaws.iotwireless#ParticipatingGatewaysMulticast": { + "type": "structure", + "members": { + "GatewayList": { + "target": "com.amazonaws.iotwireless#GatewayListMulticast", + "traits": { + "smithy.api#documentation": "

The list of gateways that you want to use for sending the multicast downlink. Each downlink will be\n sent to all the gateways in the list with transmission interval between them. If list is empty the gateway\n list will be dynamically selected similar to the case of no ParticipatingGateways\n

" + } + }, + "TransmissionInterval": { + "target": "com.amazonaws.iotwireless#TransmissionIntervalMulticast", + "traits": { + "smithy.api#documentation": "

The duration of time for which AWS IoT Core for LoRaWAN will wait before transmitting\n the multicast payload to the next gateway in the list.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specify the list of gateways to which you want to send the multicast downlink messages.\n The multicast message will be sent to each gateway in the sequence provided in the list.

" + } + }, "com.amazonaws.iotwireless#PartnerAccountArn": { "type": "string" }, @@ -11385,7 +11545,7 @@ "ResourceType": { "target": "com.amazonaws.iotwireless#ResourceType", "traits": { - "smithy.api#documentation": "

The type of the resource, which can be WirelessDevice or\n WirelessGateway.

", + "smithy.api#documentation": "

The type of the resource, which can be WirelessDevice,\n WirelessGateway, or FuotaTask.

", "smithy.api#httpQuery": "resourceType", "smithy.api#required": {} } @@ -11529,7 +11689,7 @@ } ], "traits": { - "smithy.api#documentation": "

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

", + "smithy.api#documentation": "

Removes the log-level overrides for all resources; wireless devices, wireless\n gateways, and fuota tasks.

", "smithy.api#http": { "method": "DELETE", "uri": "/log-levels", @@ -11577,7 +11737,7 @@ } ], "traits": { - "smithy.api#documentation": "

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

", + "smithy.api#documentation": "

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

", "smithy.api#http": { "method": "DELETE", "uri": "/log-levels/{ResourceIdentifier}", @@ -11598,7 +11758,7 @@ "ResourceType": { "target": "com.amazonaws.iotwireless#ResourceType", "traits": { - "smithy.api#documentation": "

The type of the resource, which can be WirelessDevice or\n WirelessGateway.

", + "smithy.api#documentation": "

The type of the resource, which can be WirelessDevice,\n WirelessGateway, or FuotaTask.

", "smithy.api#httpQuery": "resourceType", "smithy.api#required": {} } @@ -13678,6 +13838,15 @@ } } }, + "com.amazonaws.iotwireless#TransmissionIntervalMulticast": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 0, + "max": 60000 + } + } + }, "com.amazonaws.iotwireless#TransmitMode": { "type": "integer", "traits": { @@ -14081,6 +14250,9 @@ }, "FragmentIntervalMS": { "target": "com.amazonaws.iotwireless#FragmentIntervalMS" + }, + "Descriptor": { + "target": "com.amazonaws.iotwireless#FileDescriptor" } }, "traits": { @@ -14137,6 +14309,9 @@ "DefaultLogLevel": { "target": "com.amazonaws.iotwireless#LogLevel" }, + "FuotaTaskLogOptions": { + "target": "com.amazonaws.iotwireless#FuotaTaskLogOptionList" + }, "WirelessDeviceLogOptions": { "target": "com.amazonaws.iotwireless#WirelessDeviceLogOptionList" }, diff --git a/codegen/sdk-codegen/aws-models/ivs.json b/codegen/sdk-codegen/aws-models/ivs.json index bd40fc7c47f..eb1f138452d 100644 --- a/codegen/sdk-codegen/aws-models/ivs.json +++ b/codegen/sdk-codegen/aws-models/ivs.json @@ -896,10 +896,22 @@ "smithy.api#default": 0, "smithy.api#documentation": "

Number of audio channels.

" } + }, + "track": { + "target": "com.amazonaws.ivs#String", + "traits": { + "smithy.api#documentation": "

Name of the audio track (if the stream has an audio track). If multitrack is not enabled, this is track0 (the sole track).

" + } } }, "traits": { - "smithy.api#documentation": "

Object specifying a stream’s audio configuration, as set up by the broadcaster (usually in\n an encoder). This is part of the IngestConfiguration object and used for\n monitoring stream health.

" + "smithy.api#documentation": "

Object specifying a stream’s audio configuration, as set up by the broadcaster (usually in an encoder). This is part of the IngestConfigurations object and the deprecated IngestConfiguration object. It is used for monitoring stream health.

" + } + }, + "com.amazonaws.ivs#AudioConfigurationList": { + "type": "list", + "member": { + "target": "com.amazonaws.ivs#AudioConfiguration" } }, "com.amazonaws.ivs#BatchError": { @@ -1249,6 +1261,18 @@ "traits": { "smithy.api#documentation": "

Playback-restriction-policy ARN. A valid ARN value here both specifies the ARN and enables\n playback restriction. Default: \"\" (empty string, no playback restriction policy is\n applied).

" } + }, + "multitrackInputConfiguration": { + "target": "com.amazonaws.ivs#MultitrackInputConfiguration", + "traits": { + "smithy.api#documentation": "

Object specifying multitrack input configuration. Default: no multitrack input configuration is specified.

" + } + }, + "containerFormat": { + "target": "com.amazonaws.ivs#ContainerFormat", + "traits": { + "smithy.api#documentation": "

Indicates which content-packaging format is used (MPEG-TS or fMP4). If multitrackInputConfiguration is specified and enabled is true, then containerFormat is required and must be set to FRAGMENTED_MP4. Otherwise, containerFormat may be set to TS or FRAGMENTED_MP4. Default: TS.

" + } } }, "traits": { @@ -1465,6 +1489,21 @@ "smithy.api#httpError": 409 } }, + "com.amazonaws.ivs#ContainerFormat": { + "type": "string", + "traits": { + "smithy.api#enum": [ + { + "value": "TS", + "name": "TS" + }, + { + "value": "FRAGMENTED_MP4", + "name": "FragmentedMP4" + } + ] + } + }, "com.amazonaws.ivs#CreateChannel": { "type": "operation", "input": { @@ -1556,6 +1595,18 @@ "traits": { "smithy.api#documentation": "

Playback-restriction-policy ARN. A valid ARN value here both specifies the ARN and enables playback restriction.\n Default: \"\" (empty string, no playback restriction policy is applied).

" } + }, + "multitrackInputConfiguration": { + "target": "com.amazonaws.ivs#MultitrackInputConfiguration", + "traits": { + "smithy.api#documentation": "

Object specifying multitrack input configuration. Default: no multitrack input configuration is specified.

" + } + }, + "containerFormat": { + "target": "com.amazonaws.ivs#ContainerFormat", + "traits": { + "smithy.api#documentation": "

Indicates which content-packaging format is used (MPEG-TS or fMP4). If multitrackInputConfiguration is specified and enabled is true, then containerFormat is required and must be set to FRAGMENTED_MP4. Otherwise, containerFormat may be set to TS or FRAGMENTED_MP4. Default: TS.

" + } } } }, @@ -2520,7 +2571,29 @@ } }, "traits": { - "smithy.api#documentation": "

Object specifying the ingest configuration set up by the broadcaster, usually in an\n encoder.

" + "smithy.api#documentation": "

Object specifying the ingest configuration set up by the broadcaster, usually in an\n encoder.

\n

\n Note: IngestConfiguration is deprecated in favor of IngestConfigurations but retained to ensure backward compatibility. If multitrack is not enabled, IngestConfiguration and IngestConfigurations contain the same data, namely information about track0 (the sole track). If multitrack is enabled, IngestConfiguration contains data for only the first track (track0) and IngestConfigurations contains data for all tracks.

" + } + }, + "com.amazonaws.ivs#IngestConfigurations": { + "type": "structure", + "members": { + "videoConfigurations": { + "target": "com.amazonaws.ivs#VideoConfigurationList", + "traits": { + "smithy.api#documentation": "

Encoder settings for video

", + "smithy.api#required": {} + } + }, + "audioConfigurations": { + "target": "com.amazonaws.ivs#AudioConfigurationList", + "traits": { + "smithy.api#documentation": "

Encoder settings for audio.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Object specifying the ingest configuration set up by the broadcaster, usually in an encoder.

\n

\n Note: Use IngestConfigurations instead of IngestConfiguration (which is deprecated). If multitrack is not enabled, IngestConfiguration and IngestConfigurations contain the same data, namely information about track0 (the sole track). If multitrack is enabled, IngestConfiguration contains data for only the first track (track0) and IngestConfigurations contains data for all tracks.

" } }, "com.amazonaws.ivs#IngestEndpoint": { @@ -2560,6 +2633,12 @@ "smithy.api#default": false } }, + "com.amazonaws.ivs#IsMultitrackInputEnabled": { + "type": "boolean", + "traits": { + "smithy.api#default": false + } + }, "com.amazonaws.ivs#ListChannels": { "type": "operation", "input": { @@ -3184,6 +3263,73 @@ } } }, + "com.amazonaws.ivs#MultitrackInputConfiguration": { + "type": "structure", + "members": { + "enabled": { + "target": "com.amazonaws.ivs#IsMultitrackInputEnabled", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

Indicates whether multitrack input is enabled. Can be set to true only if channel type is STANDARD. Setting enabled to true with any other channel type will cause an exception. If true, then policy, maximumResolution, and containerFormat are required, and containerFormat must be set to FRAGMENTED_MP4. Default: false.

" + } + }, + "policy": { + "target": "com.amazonaws.ivs#MultitrackPolicy", + "traits": { + "smithy.api#documentation": "

Indicates whether multitrack input is allowed or required. Required if enabled is true.

" + } + }, + "maximumResolution": { + "target": "com.amazonaws.ivs#MultitrackMaximumResolution", + "traits": { + "smithy.api#documentation": "

Maximum resolution for multitrack input. Required if enabled is true.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A complex type that specifies multitrack input configuration.

" + } + }, + "com.amazonaws.ivs#MultitrackMaximumResolution": { + "type": "enum", + "members": { + "SD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SD" + } + }, + "HD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "HD" + } + }, + "FULL_HD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FULL_HD" + } + } + } + }, + "com.amazonaws.ivs#MultitrackPolicy": { + "type": "enum", + "members": { + "ALLOW": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ALLOW" + } + }, + "REQUIRE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "REQUIRE" + } + } + } + }, "com.amazonaws.ivs#PaginationToken": { "type": "string", "traits": { @@ -4041,7 +4187,7 @@ "code": { "target": "com.amazonaws.ivs#String", "traits": { - "smithy.api#documentation": "

Provides additional details about the stream event. There are several values; note that \n\t\t\tthe long descriptions are provided in the IVS console but not delivered through \n\t \t the IVS API or EventBridge:

\n " + "smithy.api#documentation": "

Provides additional details about the stream event. There are several values; the long descriptions are provided in the IVS console but not delivered through the IVS API or EventBridge. Multitrack-related codes are used only for certain Session Ended events.

\n " } } }, @@ -4246,7 +4392,13 @@ "ingestConfiguration": { "target": "com.amazonaws.ivs#IngestConfiguration", "traits": { - "smithy.api#documentation": "

The properties of the incoming RTMP stream for the stream.

" + "smithy.api#documentation": "

The properties of the incoming RTMP stream.

\n

\n Note:\n ingestConfiguration is deprecated in favor of ingestConfigurations but retained to ensure backward compatibility. If multitrack is not enabled, ingestConfiguration and ingestConfigurations contain the same data, namely information about track0 (the sole track). If multitrack is enabled, ingestConfiguration contains data for only the first track (track0) and ingestConfigurations contains data for all tracks.

" + } + }, + "ingestConfigurations": { + "target": "com.amazonaws.ivs#IngestConfigurations", + "traits": { + "smithy.api#documentation": "

The properties of the incoming RTMP stream. If multitrack is enabled, ingestConfigurations contains data for all tracks; otherwise, it contains data only for track0 (the sole track).

" } }, "recordingConfiguration": { @@ -4528,7 +4680,7 @@ "targetIntervalSeconds": { "target": "com.amazonaws.ivs#TargetIntervalSeconds", "traits": { - "smithy.api#documentation": "

The targeted thumbnail-generation interval in seconds. This is configurable (and required)\n only if recordingMode is INTERVAL. Default: 60.

\n

\n Important: For the BASIC channel type,\n setting a value for targetIntervalSeconds does not guarantee that thumbnails are\n generated at the specified interval. For thumbnails to be generated at the\n targetIntervalSeconds interval, the IDR/Keyframe value for the\n input video must be less than the targetIntervalSeconds value. See Amazon IVS Streaming\n Configuration for information on setting IDR/Keyframe to the\n recommended value in video-encoder settings.

" + "smithy.api#documentation": "

The targeted thumbnail-generation interval in seconds. This is configurable (and required)\n only if recordingMode is INTERVAL. Default: 60.

\n

\n Important: For the BASIC channel type,\n or the STANDARD channel type with multitrack input,\n setting a value for targetIntervalSeconds does not guarantee that thumbnails are\n generated at the specified interval. For thumbnails to be generated at the\n targetIntervalSeconds interval, the IDR/Keyframe value for the\n input video must be less than the targetIntervalSeconds value. See Amazon IVS Streaming\n Configuration for information on setting IDR/Keyframe to the\n recommended value in video-encoder settings.

" } }, "resolution": { @@ -4766,6 +4918,18 @@ "traits": { "smithy.api#documentation": "

Playback-restriction-policy ARN. A valid ARN value here both specifies the ARN and enables playback restriction.\n If this is set to an empty string, playback restriction policy is disabled.

" } + }, + "multitrackInputConfiguration": { + "target": "com.amazonaws.ivs#MultitrackInputConfiguration", + "traits": { + "smithy.api#documentation": "

Object specifying multitrack input configuration. Default: no multitrack input configuration is specified.

" + } + }, + "containerFormat": { + "target": "com.amazonaws.ivs#ContainerFormat", + "traits": { + "smithy.api#documentation": "

Indicates which content-packaging format is used (MPEG-TS or fMP4). If multitrackInputConfiguration is specified and enabled is true, then containerFormat is required and must be set to FRAGMENTED_MP4. Otherwise, containerFormat may be set to TS or FRAGMENTED_MP4. Default: TS.

" + } } } }, @@ -4936,10 +5100,34 @@ "smithy.api#default": 0, "smithy.api#documentation": "

Video-resolution width in pixels.

" } + }, + "level": { + "target": "com.amazonaws.ivs#String", + "traits": { + "smithy.api#documentation": "

Indicates the degree of required decoder performance for a profile. Normally this is set automatically by the encoder. When an AVC codec is used, this field has the same value as avcLevel.

" + } + }, + "track": { + "target": "com.amazonaws.ivs#String", + "traits": { + "smithy.api#documentation": "

Name of the video track. If multitrack is not enabled, this is track0 (the sole track).

" + } + }, + "profile": { + "target": "com.amazonaws.ivs#String", + "traits": { + "smithy.api#documentation": "

Indicates to the decoder the requirements for decoding the stream. When an AVC codec is used, this field has the same value as avcProfile.

" + } } }, "traits": { - "smithy.api#documentation": "

Object specifying a stream’s video configuration, as set up by the broadcaster (usually in\n an encoder). This is part of the IngestConfiguration object and used for\n monitoring stream health.

" + "smithy.api#documentation": "

Object specifying a stream’s video configuration, as set up by the broadcaster (usually in\n an encoder). This is part of the IngestConfigurations object and the deprecated\n IngestConfiguration object. It is used for monitoring stream health.\n

" + } + }, + "com.amazonaws.ivs#VideoConfigurationList": { + "type": "list", + "member": { + "target": "com.amazonaws.ivs#VideoConfiguration" } }, "com.amazonaws.ivs#ViewerId": { diff --git a/codegen/sdk-codegen/aws-models/license-manager-user-subscriptions.json b/codegen/sdk-codegen/aws-models/license-manager-user-subscriptions.json index db82722fba1..bd0cd0097a6 100644 --- a/codegen/sdk-codegen/aws-models/license-manager-user-subscriptions.json +++ b/codegen/sdk-codegen/aws-models/license-manager-user-subscriptions.json @@ -17,16 +17,87 @@ "type": "structure", "members": { "DirectoryId": { - "target": "smithy.api#String", + "target": "com.amazonaws.licensemanagerusersubscriptions#Directory", "traits": { "smithy.api#documentation": "

The directory ID for an Active Directory identity provider.

" } + }, + "ActiveDirectorySettings": { + "target": "com.amazonaws.licensemanagerusersubscriptions#ActiveDirectorySettings", + "traits": { + "smithy.api#documentation": "

The ActiveDirectorySettings resource contains details about \n\t\t\tthe Active Directory, including network access details such as domain name and IP \n\t\t\taddresses, and the credential provider for user administration.

" + } + }, + "ActiveDirectoryType": { + "target": "com.amazonaws.licensemanagerusersubscriptions#ActiveDirectoryType", + "traits": { + "smithy.api#documentation": "

The type of Active Directory – either a self-managed Active Directory or an \n\t\t\tAmazon Web Services Managed Active Directory.

" + } } }, "traits": { "smithy.api#documentation": "

Details about an Active Directory identity provider.

" } }, + "com.amazonaws.licensemanagerusersubscriptions#ActiveDirectorySettings": { + "type": "structure", + "members": { + "DomainName": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The domain name for the Active Directory.

" + } + }, + "DomainIpv4List": { + "target": "com.amazonaws.licensemanagerusersubscriptions#IpV4List", + "traits": { + "smithy.api#documentation": "

A list of domain IPv4 addresses that are used for the Active Directory.

", + "smithy.api#length": { + "min": 1, + "max": 2 + } + } + }, + "DomainCredentialsProvider": { + "target": "com.amazonaws.licensemanagerusersubscriptions#CredentialsProvider", + "traits": { + "smithy.api#documentation": "

Points to the CredentialsProvider resource that contains \n\t\t\tinformation about the credential provider for user administration.

" + } + }, + "DomainNetworkSettings": { + "target": "com.amazonaws.licensemanagerusersubscriptions#DomainNetworkSettings", + "traits": { + "smithy.api#documentation": "

The DomainNetworkSettings resource contains an array of \n\t\t\tsubnets that apply for the Active Directory.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains network access and credential details that are needed for \n\t\t\tuser administration in the Active Directory.

" + } + }, + "com.amazonaws.licensemanagerusersubscriptions#ActiveDirectoryType": { + "type": "string", + "traits": { + "smithy.api#enum": [ + { + "name": "SELF_MANAGED", + "value": "SELF_MANAGED", + "documentation": "SELF_MANAGED type of Active Directory" + }, + { + "name": "AWS_MANAGED", + "value": "AWS_MANAGED", + "documentation": "AWS_MANAGED type of Active Directory" + } + ] + } + }, + "com.amazonaws.licensemanagerusersubscriptions#Arn": { + "type": "string", + "traits": { + "smithy.api#pattern": "^arn:[a-z0-9-\\.]{1,63}:[a-z0-9-\\.]{1,63}:[a-z0-9-\\.]{1,63}:[a-z0-9-\\.]{1,63}:[a-zA-Z0-9-\\.]{1,510}/[a-zA-Z0-9-\\.]{1,510}$" + } + }, "com.amazonaws.licensemanagerusersubscriptions#AssociateUser": { "type": "operation", "input": { @@ -59,7 +130,7 @@ } ], "traits": { - "smithy.api#documentation": "

Associates the user to an EC2 instance to utilize user-based subscriptions.

\n \n

Your estimated bill for charges on the number of users and related costs will take 48\n hours to appear for billing periods that haven't closed (marked as Pending billing status) in Amazon Web Services Billing. For more information, see Viewing your\n monthly charges in the Amazon Web Services Billing User Guide.

\n
", + "smithy.api#documentation": "

Associates the user to an EC2 instance to utilize user-based subscriptions.

\n \n

Your estimated bill for charges on the number of users and related costs will take 48\n\t\t\thours to appear for billing periods that haven't closed (marked as Pending billing status) in Amazon Web Services Billing. For more information, see Viewing your\n\t\t\t\tmonthly charges in the Amazon Web Services Billing User Guide.

\n
", "smithy.api#http": { "code": 200, "method": "POST", @@ -74,30 +145,39 @@ "Username": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The user name from the identity provider for the user.

", + "smithy.api#documentation": "

The user name from the identity provider.

", "smithy.api#required": {} } }, "InstanceId": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The ID of the EC2 instance, which provides user-based subscriptions.

", + "smithy.api#documentation": "

The ID of the EC2 instance that provides the user-based subscription.

", "smithy.api#required": {} } }, "IdentityProvider": { "target": "com.amazonaws.licensemanagerusersubscriptions#IdentityProvider", "traits": { - "smithy.api#documentation": "

The identity provider of the user.

", + "smithy.api#documentation": "

The identity provider for the user.

", "smithy.api#required": {} } }, "Domain": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The domain name of the user.

" + "smithy.api#documentation": "

The domain name of the Active Directory that contains information for the user to associate.

" + } + }, + "Tags": { + "target": "com.amazonaws.licensemanagerusersubscriptions#Tags", + "traits": { + "smithy.api#documentation": "

The tags that apply for the user association.

" } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.licensemanagerusersubscriptions#AssociateUserResponse": { @@ -110,6 +190,9 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.licensemanagerusersubscriptions#BoxInteger": { @@ -123,10 +206,190 @@ } }, "traits": { - "smithy.api#documentation": "

The request couldn't be completed because it conflicted with the current state of the\n resource.

", + "smithy.api#documentation": "

The request couldn't be completed because it conflicted with the current state of the\n\t\t\tresource.

", "smithy.api#error": "server" } }, + "com.amazonaws.licensemanagerusersubscriptions#CreateLicenseServerEndpoint": { + "type": "operation", + "input": { + "target": "com.amazonaws.licensemanagerusersubscriptions#CreateLicenseServerEndpointRequest" + }, + "output": { + "target": "com.amazonaws.licensemanagerusersubscriptions#CreateLicenseServerEndpointResponse" + }, + "errors": [ + { + "target": "com.amazonaws.licensemanagerusersubscriptions#AccessDeniedException" + }, + { + "target": "com.amazonaws.licensemanagerusersubscriptions#ConflictException" + }, + { + "target": "com.amazonaws.licensemanagerusersubscriptions#InternalServerException" + }, + { + "target": "com.amazonaws.licensemanagerusersubscriptions#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.licensemanagerusersubscriptions#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.licensemanagerusersubscriptions#ThrottlingException" + }, + { + "target": "com.amazonaws.licensemanagerusersubscriptions#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Creates a network endpoint for the Remote Desktop Services (RDS) license server.

", + "smithy.api#http": { + "code": 200, + "method": "POST", + "uri": "/license-server/CreateLicenseServerEndpoint" + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.licensemanagerusersubscriptions#CreateLicenseServerEndpointRequest": { + "type": "structure", + "members": { + "IdentityProviderArn": { + "target": "com.amazonaws.licensemanagerusersubscriptions#Arn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) that identifies the IdentityProvider resource that contains details \n\t\t\tabout a registered identity provider. In the case of Active Directory, that can be \n\t\t\ta self-managed Active Directory or an Amazon Web Services Managed Active Directory that contains user identity details.

", + "smithy.api#required": {} + } + }, + "LicenseServerSettings": { + "target": "com.amazonaws.licensemanagerusersubscriptions#LicenseServerSettings", + "traits": { + "smithy.api#documentation": "

The LicenseServerSettings resource to create for the endpoint. The \n\t\t\tsettings include the type of license server and the Secrets Manager secret that \n\t\t\tenables administrators to add or remove users associated with the \n\t\t\tlicense server.

", + "smithy.api#required": {} + } + }, + "Tags": { + "target": "com.amazonaws.licensemanagerusersubscriptions#Tags", + "traits": { + "smithy.api#documentation": "

The tags that apply for the license server endpoint.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.licensemanagerusersubscriptions#CreateLicenseServerEndpointResponse": { + "type": "structure", + "members": { + "IdentityProviderArn": { + "target": "com.amazonaws.licensemanagerusersubscriptions#Arn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the identity provider specified in the request.

" + } + }, + "LicenseServerEndpointArn": { + "target": "com.amazonaws.licensemanagerusersubscriptions#Arn", + "traits": { + "smithy.api#documentation": "

The ARN of the LicenseServerEndpoint resource.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.licensemanagerusersubscriptions#CredentialsProvider": { + "type": "union", + "members": { + "SecretsManagerCredentialsProvider": { + "target": "com.amazonaws.licensemanagerusersubscriptions#SecretsManagerCredentialsProvider", + "traits": { + "smithy.api#documentation": "

Identifies the Secrets Manager secret that contains credentials needed for \n\t\t\tuser administration in the Active Directory.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains information about the credential provider for user \n\t\t\tadministration.

" + } + }, + "com.amazonaws.licensemanagerusersubscriptions#DeleteLicenseServerEndpoint": { + "type": "operation", + "input": { + "target": "com.amazonaws.licensemanagerusersubscriptions#DeleteLicenseServerEndpointRequest" + }, + "output": { + "target": "com.amazonaws.licensemanagerusersubscriptions#DeleteLicenseServerEndpointResponse" + }, + "errors": [ + { + "target": "com.amazonaws.licensemanagerusersubscriptions#AccessDeniedException" + }, + { + "target": "com.amazonaws.licensemanagerusersubscriptions#ConflictException" + }, + { + "target": "com.amazonaws.licensemanagerusersubscriptions#InternalServerException" + }, + { + "target": "com.amazonaws.licensemanagerusersubscriptions#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.licensemanagerusersubscriptions#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.licensemanagerusersubscriptions#ThrottlingException" + }, + { + "target": "com.amazonaws.licensemanagerusersubscriptions#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Deletes a LicenseServerEndpoint resource.

", + "smithy.api#http": { + "code": 200, + "method": "POST", + "uri": "/license-server/DeleteLicenseServerEndpoint" + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.licensemanagerusersubscriptions#DeleteLicenseServerEndpointRequest": { + "type": "structure", + "members": { + "LicenseServerEndpointArn": { + "target": "com.amazonaws.licensemanagerusersubscriptions#Arn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) that identifies the LicenseServerEndpoint \n\t\t\tresource to delete.

", + "smithy.api#required": {} + } + }, + "ServerType": { + "target": "com.amazonaws.licensemanagerusersubscriptions#ServerType", + "traits": { + "smithy.api#documentation": "

The type of License Server that the delete request refers to.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.licensemanagerusersubscriptions#DeleteLicenseServerEndpointResponse": { + "type": "structure", + "members": { + "LicenseServerEndpoint": { + "target": "com.amazonaws.licensemanagerusersubscriptions#LicenseServerEndpoint", + "traits": { + "smithy.api#documentation": "

Shows details from the LicenseServerEndpoint resource that was deleted.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.licensemanagerusersubscriptions#DeregisterIdentityProvider": { "type": "operation", "input": { @@ -159,7 +422,7 @@ } ], "traits": { - "smithy.api#documentation": "

Deregisters the identity provider from providing user-based subscriptions.

", + "smithy.api#documentation": "

Deregisters the Active Directory identity provider from License Manager user-based subscriptions.

", "smithy.api#http": { "code": 200, "method": "POST", @@ -174,17 +437,24 @@ "IdentityProvider": { "target": "com.amazonaws.licensemanagerusersubscriptions#IdentityProvider", "traits": { - "smithy.api#documentation": "

An object that specifies details for the identity provider.

", - "smithy.api#required": {} + "smithy.api#documentation": "

An object that specifies details for the Active Directory identity provider.

" } }, "Product": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The name of the user-based subscription product.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The name of the user-based subscription product.

\n

Valid values: VISUAL_STUDIO_ENTERPRISE | VISUAL_STUDIO_PROFESSIONAL | OFFICE_PROFESSIONAL_PLUS\n

" + } + }, + "IdentityProviderArn": { + "target": "com.amazonaws.licensemanagerusersubscriptions#Arn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) that identifies the identity provider to deregister.

" } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.licensemanagerusersubscriptions#DeregisterIdentityProviderResponse": { @@ -197,6 +467,15 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.licensemanagerusersubscriptions#Directory": { + "type": "string", + "traits": { + "smithy.api#pattern": "^(d|sd)-[0-9a-f]{10}$" } }, "com.amazonaws.licensemanagerusersubscriptions#DisassociateUser": { @@ -246,30 +525,36 @@ "Username": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The user name from the identity provider for the user.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The user name from the Active Directory identity provider for the user.

" } }, "InstanceId": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The ID of the EC2 instance, which provides user-based subscriptions.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The ID of the EC2 instance which provides user-based subscriptions.

" } }, "IdentityProvider": { "target": "com.amazonaws.licensemanagerusersubscriptions#IdentityProvider", "traits": { - "smithy.api#documentation": "

An object that specifies details for the identity provider.

", - "smithy.api#required": {} + "smithy.api#documentation": "

An object that specifies details for the Active Directory identity provider.

" + } + }, + "InstanceUserArn": { + "target": "com.amazonaws.licensemanagerusersubscriptions#Arn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the user to disassociate from the EC2 instance.

" } }, "Domain": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The domain name of the user.

" + "smithy.api#documentation": "

The domain name of the Active Directory that contains information for the user to disassociate.

" } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.licensemanagerusersubscriptions#DisassociateUserResponse": { @@ -282,6 +567,27 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.licensemanagerusersubscriptions#DomainNetworkSettings": { + "type": "structure", + "members": { + "Subnets": { + "target": "com.amazonaws.licensemanagerusersubscriptions#Subnets", + "traits": { + "smithy.api#documentation": "

Contains a list of subnets that apply for the Active Directory domain.

", + "smithy.api#length": { + "min": 1 + }, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains network settings for the Active Directory domain.

" } }, "com.amazonaws.licensemanagerusersubscriptions#Filter": { @@ -307,7 +613,7 @@ } }, "traits": { - "smithy.api#documentation": "

A filter name and value pair that is used to return more specific results from a describe\n operation. Filters can be used to match a set of resources by specific criteria, such as tags,\n attributes, or IDs.

" + "smithy.api#documentation": "

A filter name and value pair that is used to return more specific results from a describe\n\t\t\tor list operation. You can use filters can be used to match a set of resources by specific \n\t\t\tcriteria, such as tags, attributes, or IDs.

" } }, "com.amazonaws.licensemanagerusersubscriptions#FilterList": { @@ -322,12 +628,12 @@ "ActiveDirectoryIdentityProvider": { "target": "com.amazonaws.licensemanagerusersubscriptions#ActiveDirectoryIdentityProvider", "traits": { - "smithy.api#documentation": "

An object that details an Active Directory identity provider.

" + "smithy.api#documentation": "

The ActiveDirectoryIdentityProvider resource contains settings \n\t\t\tand other details about a specific Active Directory identity provider.

" } } }, "traits": { - "smithy.api#documentation": "

Details about an identity provider.

" + "smithy.api#documentation": "

Refers to an identity provider.

" } }, "com.amazonaws.licensemanagerusersubscriptions#IdentityProviderSummary": { @@ -336,14 +642,14 @@ "IdentityProvider": { "target": "com.amazonaws.licensemanagerusersubscriptions#IdentityProvider", "traits": { - "smithy.api#documentation": "

An object that specifies details for the identity provider.

", + "smithy.api#documentation": "

The IdentityProvider resource contains information about \n\t\t\tan identity provider.

", "smithy.api#required": {} } }, "Settings": { "target": "com.amazonaws.licensemanagerusersubscriptions#Settings", "traits": { - "smithy.api#documentation": "

An object that details the registered identity provider’s product related configuration\n settings such as the subnets to provision VPC endpoints.

", + "smithy.api#documentation": "

The Settings resource contains details about the registered \n\t\t\tidentity provider’s product related configuration settings, such as the \n\t\t\tsubnets to provision VPC endpoints.

", "smithy.api#required": {} } }, @@ -357,10 +663,16 @@ "Status": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The status of an identity provider.

", + "smithy.api#documentation": "

The status of the identity provider.

", "smithy.api#required": {} } }, + "IdentityProviderArn": { + "target": "com.amazonaws.licensemanagerusersubscriptions#Arn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the identity provider.

" + } + }, "FailureMessage": { "target": "smithy.api#String", "traits": { @@ -438,14 +750,14 @@ "InstanceId": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The ID of the EC2 instance, which provides user-based subscriptions.

", + "smithy.api#documentation": "

The ID of the EC2 instance that provides user-based subscriptions.

", "smithy.api#required": {} } }, "IdentityProvider": { "target": "com.amazonaws.licensemanagerusersubscriptions#IdentityProvider", "traits": { - "smithy.api#documentation": "

An object that specifies details for the identity provider.

", + "smithy.api#documentation": "

The IdentityProvider resource specifies details \n\t\t\tabout the identity provider.

", "smithy.api#required": {} } }, @@ -456,6 +768,12 @@ "smithy.api#required": {} } }, + "InstanceUserArn": { + "target": "com.amazonaws.licensemanagerusersubscriptions#Arn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) that identifies the instance user.

" + } + }, "StatusMessage": { "target": "smithy.api#String", "traits": { @@ -465,7 +783,7 @@ "Domain": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The domain name of the user.

" + "smithy.api#documentation": "

The domain name of the Active Directory that contains the user information for the product subscription.

" } }, "AssociationDate": { @@ -500,7 +818,20 @@ }, "traits": { "smithy.api#documentation": "

An exception occurred with the service.

", - "smithy.api#error": "server" + "smithy.api#error": "server", + "smithy.api#httpError": 500 + } + }, + "com.amazonaws.licensemanagerusersubscriptions#IpV4": { + "type": "string", + "traits": { + "smithy.api#pattern": "^(?:(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])(\\.(?!$)|$)){4}$" + } + }, + "com.amazonaws.licensemanagerusersubscriptions#IpV4List": { + "type": "list", + "member": { + "target": "com.amazonaws.licensemanagerusersubscriptions#IpV4" } }, "com.amazonaws.licensemanagerusersubscriptions#LicenseManagerUserSubscriptions": { @@ -510,6 +841,12 @@ { "target": "com.amazonaws.licensemanagerusersubscriptions#AssociateUser" }, + { + "target": "com.amazonaws.licensemanagerusersubscriptions#CreateLicenseServerEndpoint" + }, + { + "target": "com.amazonaws.licensemanagerusersubscriptions#DeleteLicenseServerEndpoint" + }, { "target": "com.amazonaws.licensemanagerusersubscriptions#DeregisterIdentityProvider" }, @@ -522,9 +859,15 @@ { "target": "com.amazonaws.licensemanagerusersubscriptions#ListInstances" }, + { + "target": "com.amazonaws.licensemanagerusersubscriptions#ListLicenseServerEndpoints" + }, { "target": "com.amazonaws.licensemanagerusersubscriptions#ListProductSubscriptions" }, + { + "target": "com.amazonaws.licensemanagerusersubscriptions#ListTagsForResource" + }, { "target": "com.amazonaws.licensemanagerusersubscriptions#ListUserAssociations" }, @@ -537,6 +880,12 @@ { "target": "com.amazonaws.licensemanagerusersubscriptions#StopProductSubscription" }, + { + "target": "com.amazonaws.licensemanagerusersubscriptions#TagResource" + }, + { + "target": "com.amazonaws.licensemanagerusersubscriptions#UntagResource" + }, { "target": "com.amazonaws.licensemanagerusersubscriptions#UpdateIdentityProviderSettings" } @@ -574,7 +923,7 @@ "x-amzn-trace-id" ] }, - "smithy.api#documentation": "

With License Manager, you can create user-based subscriptions to utilize licensed software with\n a per user subscription fee on Amazon EC2 instances.

", + "smithy.api#documentation": "

With License Manager, you can create user-based subscriptions to utilize licensed software with\n\t\ta per user subscription fee on Amazon EC2 instances.

", "smithy.api#title": "AWS License Manager User Subscriptions", "smithy.rules#endpointRuleSet": { "version": "1.0", @@ -618,7 +967,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -661,7 +1009,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -674,7 +1023,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -688,7 +1036,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -711,7 +1058,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -746,7 +1092,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -757,14 +1102,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -778,14 +1125,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -794,11 +1139,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -809,14 +1154,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -830,7 +1177,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -850,7 +1196,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -861,14 +1206,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -879,9 +1226,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -1206,6 +1555,190 @@ } } }, + "com.amazonaws.licensemanagerusersubscriptions#LicenseServer": { + "type": "structure", + "members": { + "ProvisioningStatus": { + "target": "com.amazonaws.licensemanagerusersubscriptions#LicenseServerEndpointProvisioningStatus", + "traits": { + "smithy.api#documentation": "

The current state of the provisioning process for the RDS \n\t\t\tlicense server.

" + } + }, + "HealthStatus": { + "target": "com.amazonaws.licensemanagerusersubscriptions#LicenseServerHealthStatus", + "traits": { + "smithy.api#documentation": "

The health status of the RDS license server.

" + } + }, + "Ipv4Address": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

A list of domain IPv4 addresses that are used for the RDS \n\t\t\tlicense server.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Information about a Remote Desktop Services (RDS) license server.

" + } + }, + "com.amazonaws.licensemanagerusersubscriptions#LicenseServerEndpoint": { + "type": "structure", + "members": { + "IdentityProviderArn": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the identity provider that's associated with \n\t\t\tthe RDS license server endpoint.

" + } + }, + "ServerType": { + "target": "com.amazonaws.licensemanagerusersubscriptions#ServerType", + "traits": { + "smithy.api#documentation": "

The type of license server.

" + } + }, + "ServerEndpoint": { + "target": "com.amazonaws.licensemanagerusersubscriptions#ServerEndpoint", + "traits": { + "smithy.api#documentation": "

The ServerEndpoint resource contains the network \n\t\t\taddress of the RDS license server endpoint.

" + } + }, + "StatusMessage": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The message associated with the provisioning status, if there is one.

" + } + }, + "LicenseServerEndpointId": { + "target": "com.amazonaws.licensemanagerusersubscriptions#LicenseServerEndpointId", + "traits": { + "smithy.api#documentation": "

The ID of the license server endpoint.

" + } + }, + "LicenseServerEndpointArn": { + "target": "com.amazonaws.licensemanagerusersubscriptions#Arn", + "traits": { + "smithy.api#documentation": "

The ARN of the ServerEndpoint resource for the RDS \n\t\t\tlicense server.

" + } + }, + "LicenseServerEndpointProvisioningStatus": { + "target": "com.amazonaws.licensemanagerusersubscriptions#LicenseServerEndpointProvisioningStatus", + "traits": { + "smithy.api#documentation": "

The current state of the provisioning process for the RDS license \n\t\t\tserver endpoint

" + } + }, + "LicenseServers": { + "target": "com.amazonaws.licensemanagerusersubscriptions#LicenseServerList", + "traits": { + "smithy.api#documentation": "

An array of LicenseServer resources that represent the \n\t\t\tlicense servers that are accessed through this endpoint.

" + } + }, + "CreationTime": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when License Manager created the license server endpoint.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains details about a network endpoint for a Remote Desktop Services (RDS) \n\t\t\tlicense server.

" + } + }, + "com.amazonaws.licensemanagerusersubscriptions#LicenseServerEndpointId": { + "type": "string" + }, + "com.amazonaws.licensemanagerusersubscriptions#LicenseServerEndpointList": { + "type": "list", + "member": { + "target": "com.amazonaws.licensemanagerusersubscriptions#LicenseServerEndpoint" + } + }, + "com.amazonaws.licensemanagerusersubscriptions#LicenseServerEndpointProvisioningStatus": { + "type": "string", + "traits": { + "smithy.api#enum": [ + { + "name": "PROVISIONING", + "value": "PROVISIONING", + "documentation": "" + }, + { + "name": "PROVISIONING_FAILED", + "value": "PROVISIONING_FAILED", + "documentation": "" + }, + { + "name": "PROVISIONED", + "value": "PROVISIONED", + "documentation": "" + }, + { + "name": "DELETING", + "value": "DELETING", + "documentation": "" + }, + { + "name": "DELETION_FAILED", + "value": "DELETION_FAILED", + "documentation": "" + }, + { + "name": "DELETED", + "value": "DELETED", + "documentation": "" + } + ] + } + }, + "com.amazonaws.licensemanagerusersubscriptions#LicenseServerHealthStatus": { + "type": "string", + "traits": { + "smithy.api#enum": [ + { + "name": "HEALTHY", + "value": "HEALTHY", + "documentation": "" + }, + { + "name": "UNHEALTHY", + "value": "UNHEALTHY", + "documentation": "" + }, + { + "name": "NOT_APPLICABLE", + "value": "NOT_APPLICABLE", + "documentation": "" + } + ] + } + }, + "com.amazonaws.licensemanagerusersubscriptions#LicenseServerList": { + "type": "list", + "member": { + "target": "com.amazonaws.licensemanagerusersubscriptions#LicenseServer" + } + }, + "com.amazonaws.licensemanagerusersubscriptions#LicenseServerSettings": { + "type": "structure", + "members": { + "ServerType": { + "target": "com.amazonaws.licensemanagerusersubscriptions#ServerType", + "traits": { + "smithy.api#documentation": "

The type of license server.

", + "smithy.api#required": {} + } + }, + "ServerSettings": { + "target": "com.amazonaws.licensemanagerusersubscriptions#ServerSettings", + "traits": { + "smithy.api#documentation": "

The ServerSettings resource contains the settings for your \n\t\t\tserver.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The settings to configure your license server.

" + } + }, "com.amazonaws.licensemanagerusersubscriptions#ListIdentityProviders": { "type": "operation", "input": { @@ -1238,7 +1771,7 @@ } ], "traits": { - "smithy.api#documentation": "

Lists the identity providers for user-based subscriptions.

", + "smithy.api#documentation": "

Lists the Active Directory identity providers for user-based subscriptions.

", "smithy.api#http": { "code": 200, "method": "POST", @@ -1258,15 +1791,24 @@ "MaxResults": { "target": "com.amazonaws.licensemanagerusersubscriptions#BoxInteger", "traits": { - "smithy.api#documentation": "

Maximum number of results to return in a single call.

" + "smithy.api#documentation": "

The maximum number of results to return from a single request.

" + } + }, + "Filters": { + "target": "com.amazonaws.licensemanagerusersubscriptions#FilterList", + "traits": { + "smithy.api#documentation": "

You can use the following filters to streamline results:

\n " } }, "NextToken": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

Token for the next set of results.

" + "smithy.api#documentation": "

A token to specify where to start paginating. This is the nextToken \n\tfrom a previously truncated response.

" } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.licensemanagerusersubscriptions#ListIdentityProvidersResponse": { @@ -1275,16 +1817,19 @@ "IdentityProviderSummaries": { "target": "com.amazonaws.licensemanagerusersubscriptions#IdentityProviderSummaryList", "traits": { - "smithy.api#documentation": "

Metadata that describes the list identity providers operation.

", + "smithy.api#documentation": "

An array of IdentityProviderSummary resources that contain \n\t\t\tdetails about the Active Directory identity providers that meet the request criteria.

", "smithy.api#required": {} } }, "NextToken": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

Token for the next set of results.

" + "smithy.api#documentation": "

The next token used for paginated responses. When this field isn't empty, \n\tthere are additional elements that the service hasn't included in this request. Use this token \n\t\twith the next request to retrieve additional objects.

" } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.licensemanagerusersubscriptions#ListInstances": { @@ -1339,21 +1884,24 @@ "MaxResults": { "target": "com.amazonaws.licensemanagerusersubscriptions#BoxInteger", "traits": { - "smithy.api#documentation": "

Maximum number of results to return in a single call.

" + "smithy.api#documentation": "

The maximum number of results to return from a single request.

" } }, "NextToken": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

Token for the next set of results.

" + "smithy.api#documentation": "

A token to specify where to start paginating. This is the nextToken \n\tfrom a previously truncated response.

" } }, "Filters": { "target": "com.amazonaws.licensemanagerusersubscriptions#FilterList", "traits": { - "smithy.api#documentation": "

An array of structures that you can use to filter the results to those that match one or\n more sets of key-value pairs that you specify.

" + "smithy.api#documentation": "

You can use the following filters to streamline results:

\n " } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.licensemanagerusersubscriptions#ListInstancesResponse": { @@ -1362,15 +1910,111 @@ "InstanceSummaries": { "target": "com.amazonaws.licensemanagerusersubscriptions#InstanceSummaryList", "traits": { - "smithy.api#documentation": "

Metadata that describes the list instances operation.

" + "smithy.api#documentation": "

An array of InstanceSummary resources that contain details \n\t\t\tabout the instances that provide user-based subscriptions and also meet the \n\t\t\trequest criteria.

" } }, "NextToken": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

Token for the next set of results.

" + "smithy.api#documentation": "

The next token used for paginated responses. When this field isn't empty, \n\tthere are additional elements that the service hasn't included in this request. Use this token \n\t\twith the next request to retrieve additional objects.

" } } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.licensemanagerusersubscriptions#ListLicenseServerEndpoints": { + "type": "operation", + "input": { + "target": "com.amazonaws.licensemanagerusersubscriptions#ListLicenseServerEndpointsRequest" + }, + "output": { + "target": "com.amazonaws.licensemanagerusersubscriptions#ListLicenseServerEndpointsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.licensemanagerusersubscriptions#AccessDeniedException" + }, + { + "target": "com.amazonaws.licensemanagerusersubscriptions#ConflictException" + }, + { + "target": "com.amazonaws.licensemanagerusersubscriptions#InternalServerException" + }, + { + "target": "com.amazonaws.licensemanagerusersubscriptions#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.licensemanagerusersubscriptions#ThrottlingException" + }, + { + "target": "com.amazonaws.licensemanagerusersubscriptions#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

List the Remote Desktop Services (RDS) License Server endpoints

", + "smithy.api#http": { + "code": 200, + "method": "POST", + "uri": "/license-server/ListLicenseServerEndpoints" + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "pageSize": "MaxResults", + "items": "LicenseServerEndpoints" + } + } + }, + "com.amazonaws.licensemanagerusersubscriptions#ListLicenseServerEndpointsRequest": { + "type": "structure", + "members": { + "MaxResults": { + "target": "com.amazonaws.licensemanagerusersubscriptions#BoxInteger", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return from a single request.

", + "smithy.api#range": { + "min": 1, + "max": 100 + } + } + }, + "Filters": { + "target": "com.amazonaws.licensemanagerusersubscriptions#FilterList", + "traits": { + "smithy.api#documentation": "

You can use the following filters to streamline results:

\n " + } + }, + "NextToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

A token to specify where to start paginating. This is the nextToken \n\tfrom a previously truncated response.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.licensemanagerusersubscriptions#ListLicenseServerEndpointsResponse": { + "type": "structure", + "members": { + "LicenseServerEndpoints": { + "target": "com.amazonaws.licensemanagerusersubscriptions#LicenseServerEndpointList", + "traits": { + "smithy.api#documentation": "

An array of LicenseServerEndpoint resources that \n\t\t\tcontain detailed information about the RDS License Servers that meet \n\t\t\tthe request criteria.

" + } + }, + "NextToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The next token used for paginated responses. When this field isn't empty, \n\tthere are additional elements that the service hasn't included in this request. Use this token \n\t\twith the next request to retrieve additional objects.

" + } + } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.licensemanagerusersubscriptions#ListProductSubscriptions": { @@ -1425,8 +2069,7 @@ "Product": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The name of the user-based subscription product.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The name of the user-based subscription product.

\n

Valid values: VISUAL_STUDIO_ENTERPRISE | VISUAL_STUDIO_PROFESSIONAL | OFFICE_PROFESSIONAL_PLUS\n

" } }, "IdentityProvider": { @@ -1439,21 +2082,24 @@ "MaxResults": { "target": "com.amazonaws.licensemanagerusersubscriptions#BoxInteger", "traits": { - "smithy.api#documentation": "

Maximum number of results to return in a single call.

" + "smithy.api#documentation": "

The maximum number of results to return from a single request.

" } }, "Filters": { "target": "com.amazonaws.licensemanagerusersubscriptions#FilterList", "traits": { - "smithy.api#documentation": "

An array of structures that you can use to filter the results to those that match one or\n more sets of key-value pairs that you specify.

" + "smithy.api#documentation": "

You can use the following filters to streamline results:

\n " } }, "NextToken": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

Token for the next set of results.

" + "smithy.api#documentation": "

A token to specify where to start paginating. This is the nextToken \n\tfrom a previously truncated response.

" } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.licensemanagerusersubscriptions#ListProductSubscriptionsResponse": { @@ -1468,9 +2114,70 @@ "NextToken": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

Token for the next set of results.

" + "smithy.api#documentation": "

The next token used for paginated responses. When this field isn't empty, \n\tthere are additional elements that the service hasn't included in this request. Use this token \n\t\twith the next request to retrieve additional objects.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.licensemanagerusersubscriptions#ListTagsForResource": { + "type": "operation", + "input": { + "target": "com.amazonaws.licensemanagerusersubscriptions#ListTagsForResourceRequest" + }, + "output": { + "target": "com.amazonaws.licensemanagerusersubscriptions#ListTagsForResourceResponse" + }, + "errors": [ + { + "target": "com.amazonaws.licensemanagerusersubscriptions#InternalServerException" + }, + { + "target": "com.amazonaws.licensemanagerusersubscriptions#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.licensemanagerusersubscriptions#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Returns the list of tags for the specified resource.

", + "smithy.api#http": { + "method": "GET", + "uri": "/tags/{ResourceArn}" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.licensemanagerusersubscriptions#ListTagsForResourceRequest": { + "type": "structure", + "members": { + "ResourceArn": { + "target": "com.amazonaws.licensemanagerusersubscriptions#ResourceArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the resource whose tags you want to retrieve.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.licensemanagerusersubscriptions#ListTagsForResourceResponse": { + "type": "structure", + "members": { + "Tags": { + "target": "com.amazonaws.licensemanagerusersubscriptions#Tags", + "traits": { + "smithy.api#documentation": "

The tags for the specified resource.

" } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.licensemanagerusersubscriptions#ListUserAssociations": { @@ -1539,21 +2246,24 @@ "MaxResults": { "target": "com.amazonaws.licensemanagerusersubscriptions#BoxInteger", "traits": { - "smithy.api#documentation": "

Maximum number of results to return in a single call.

" + "smithy.api#documentation": "

The maximum number of results to return from a single request.

" } }, "Filters": { "target": "com.amazonaws.licensemanagerusersubscriptions#FilterList", "traits": { - "smithy.api#documentation": "

An array of structures that you can use to filter the results to those that match one or\n more sets of key-value pairs that you specify.

" + "smithy.api#documentation": "

You can use the following filters to streamline results:

\n " } }, "NextToken": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

Token for the next set of results.

" + "smithy.api#documentation": "

A token to specify where to start paginating. This is the nextToken \n\tfrom a previously truncated response.

" } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.licensemanagerusersubscriptions#ListUserAssociationsResponse": { @@ -1568,9 +2278,12 @@ "NextToken": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

Token for the next set of results.

" + "smithy.api#documentation": "

The next token used for paginated responses. When this field isn't empty, \n\tthere are additional elements that the service hasn't included in this request. Use this token \n\t\twith the next request to retrieve additional objects.

" } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.licensemanagerusersubscriptions#ProductUserSummary": { @@ -1579,7 +2292,7 @@ "Username": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The user name from the identity provider of the user.

", + "smithy.api#documentation": "

The user name from the identity provider for this product user.

", "smithy.api#required": {} } }, @@ -1600,20 +2313,26 @@ "Status": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The status of a product for a user.

", + "smithy.api#documentation": "

The status of a product for this user.

", "smithy.api#required": {} } }, + "ProductUserArn": { + "target": "com.amazonaws.licensemanagerusersubscriptions#Arn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) for this product user.

" + } + }, "StatusMessage": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The status message for a product for a user.

" + "smithy.api#documentation": "

The status message for a product for this user.

" } }, "Domain": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The domain name of the user.

" + "smithy.api#documentation": "

The domain name of the Active Directory that contains the user information for the product subscription.

" } }, "SubscriptionStartDate": { @@ -1630,7 +2349,7 @@ } }, "traits": { - "smithy.api#documentation": "

The summary of the user-based subscription products for a user.

" + "smithy.api#documentation": "

A summary of the user-based subscription products for a specific user.

" } }, "com.amazonaws.licensemanagerusersubscriptions#ProductUserSummaryList": { @@ -1639,6 +2358,21 @@ "target": "com.amazonaws.licensemanagerusersubscriptions#ProductUserSummary" } }, + "com.amazonaws.licensemanagerusersubscriptions#RdsSalSettings": { + "type": "structure", + "members": { + "RdsSalCredentialsProvider": { + "target": "com.amazonaws.licensemanagerusersubscriptions#CredentialsProvider", + "traits": { + "smithy.api#documentation": "

The CredentialsProvider resource contains a reference to \n\t\t\tthe credentials provider that's used for RDS license server user administration.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Server settings that are specific to a Remote Desktop Services (RDS) license server.

" + } + }, "com.amazonaws.licensemanagerusersubscriptions#RegisterIdentityProvider": { "type": "operation", "input": { @@ -1686,23 +2420,32 @@ "IdentityProvider": { "target": "com.amazonaws.licensemanagerusersubscriptions#IdentityProvider", "traits": { - "smithy.api#documentation": "

An object that specifies details for the identity provider.

", + "smithy.api#documentation": "

An object that specifies details for the identity provider to register.

", "smithy.api#required": {} } }, "Product": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The name of the user-based subscription product.

", + "smithy.api#documentation": "

The name of the user-based subscription product.

\n

Valid values: VISUAL_STUDIO_ENTERPRISE | VISUAL_STUDIO_PROFESSIONAL | OFFICE_PROFESSIONAL_PLUS\n

", "smithy.api#required": {} } }, "Settings": { "target": "com.amazonaws.licensemanagerusersubscriptions#Settings", "traits": { - "smithy.api#documentation": "

The registered identity provider’s product related configuration settings such as the\n subnets to provision VPC endpoints.

" + "smithy.api#documentation": "

The registered identity provider’s product related configuration \n\t\t\tsettings such as the subnets to provision VPC endpoints.

" + } + }, + "Tags": { + "target": "com.amazonaws.licensemanagerusersubscriptions#Tags", + "traits": { + "smithy.api#documentation": "

The tags that apply to the identity provider's registration.

" } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.licensemanagerusersubscriptions#RegisterIdentityProviderResponse": { @@ -1715,6 +2458,15 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.licensemanagerusersubscriptions#ResourceArn": { + "type": "string", + "traits": { + "smithy.api#pattern": "^arn:([a-z0-9-\\.]{1,63}):([a-z0-9-\\.]{1,63}):([a-z0-9-\\.]{1,63}):([a-z0-9-\\.]{1,63}):([a-z0-9-\\.]{1,510})/([a-z0-9-\\.]{1,510})$" } }, "com.amazonaws.licensemanagerusersubscriptions#ResourceNotFoundException": { @@ -1730,6 +2482,23 @@ "smithy.api#httpError": 404 } }, + "com.amazonaws.licensemanagerusersubscriptions#SecretsManagerCredentialsProvider": { + "type": "structure", + "members": { + "SecretId": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The ID of the Secrets Manager secret that contains credentials.

", + "smithy.api#length": { + "min": 1 + } + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains a credentials secret that's stored in Secrets Manager.

" + } + }, "com.amazonaws.licensemanagerusersubscriptions#SecurityGroup": { "type": "string", "traits": { @@ -1740,6 +2509,46 @@ "smithy.api#pattern": "^sg-(([0-9a-z]{8})|([0-9a-z]{17}))$" } }, + "com.amazonaws.licensemanagerusersubscriptions#ServerEndpoint": { + "type": "structure", + "members": { + "Endpoint": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The network address of the endpoint.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A network endpoint through which you can access one or more servers.

" + } + }, + "com.amazonaws.licensemanagerusersubscriptions#ServerSettings": { + "type": "union", + "members": { + "RdsSalSettings": { + "target": "com.amazonaws.licensemanagerusersubscriptions#RdsSalSettings", + "traits": { + "smithy.api#documentation": "

The RdsSalSettings resource contains settings to configure \n\t\t\ta specific Remote Desktop Services (RDS) license server.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains settings for a specific server.

" + } + }, + "com.amazonaws.licensemanagerusersubscriptions#ServerType": { + "type": "string", + "traits": { + "smithy.api#enum": [ + { + "name": "RDS_SAL", + "value": "RDS_SAL", + "documentation": "" + } + ] + } + }, "com.amazonaws.licensemanagerusersubscriptions#ServiceQuotaExceededException": { "type": "structure", "members": { @@ -1768,13 +2577,13 @@ "SecurityGroupId": { "target": "com.amazonaws.licensemanagerusersubscriptions#SecurityGroup", "traits": { - "smithy.api#documentation": "

A security group ID that allows inbound TCP port 1688 communication between resources in\n your VPC and the VPC endpoint for activation servers.

", + "smithy.api#documentation": "

A security group ID that allows inbound TCP port 1688 communication between resources in\n\t\t\tyour VPC and the VPC endpoint for activation servers.

", "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

The registered identity provider’s product related configuration settings such as the\n subnets to provision VPC endpoints, and the security group ID that is associated with the VPC\n endpoints. The security group should permit inbound TCP port 1688 communication from resources\n in the VPC.

" + "smithy.api#documentation": "

The registered identity provider’s product related configuration settings such as the\n\t\t\tsubnets to provision VPC endpoints, and the security group ID that is associated with the VPC\n\t\t\tendpoints. The security group should permit inbound TCP port 1688 communication from resources\n\t\t\tin the VPC.

" } }, "com.amazonaws.licensemanagerusersubscriptions#StartProductSubscription": { @@ -1809,7 +2618,7 @@ } ], "traits": { - "smithy.api#documentation": "

Starts a product subscription for a user with the specified identity provider.

\n \n

Your estimated bill for charges on the number of users and related costs will take 48\n hours to appear for billing periods that haven't closed (marked as Pending billing status) in Amazon Web Services Billing. For more information, see Viewing your\n monthly charges in the Amazon Web Services Billing User Guide.

\n
", + "smithy.api#documentation": "

Starts a product subscription for a user with the specified identity provider.

\n \n

Your estimated bill for charges on the number of users and related costs will take 48\n\t\t\thours to appear for billing periods that haven't closed (marked as Pending billing status) in Amazon Web Services Billing. For more information, see Viewing your\n\t\t\t\tmonthly charges in the Amazon Web Services Billing User Guide.

\n
", "smithy.api#http": { "code": 200, "method": "POST", @@ -1837,16 +2646,25 @@ "Product": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The name of the user-based subscription product.

", + "smithy.api#documentation": "

The name of the user-based subscription product.

\n

Valid values: VISUAL_STUDIO_ENTERPRISE | VISUAL_STUDIO_PROFESSIONAL | OFFICE_PROFESSIONAL_PLUS\n

", "smithy.api#required": {} } }, "Domain": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The domain name of the user.

" + "smithy.api#documentation": "

The domain name of the Active Directory that contains the user for whom to start the product \n\t\t\tsubscription.

" + } + }, + "Tags": { + "target": "com.amazonaws.licensemanagerusersubscriptions#Tags", + "traits": { + "smithy.api#documentation": "

The tags that apply to the product subscription.

" } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.licensemanagerusersubscriptions#StartProductSubscriptionResponse": { @@ -1859,6 +2677,9 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.licensemanagerusersubscriptions#StopProductSubscription": { @@ -1907,30 +2728,36 @@ "Username": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The user name from the identity provider for the user.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The user name from the identity provider for the user.

" } }, "IdentityProvider": { "target": "com.amazonaws.licensemanagerusersubscriptions#IdentityProvider", "traits": { - "smithy.api#documentation": "

An object that specifies details for the identity provider.

", - "smithy.api#required": {} + "smithy.api#documentation": "

An object that specifies details for the identity provider.

" } }, "Product": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The name of the user-based subscription product.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The name of the user-based subscription product.

\n

Valid values: VISUAL_STUDIO_ENTERPRISE | VISUAL_STUDIO_PROFESSIONAL | OFFICE_PROFESSIONAL_PLUS\n

" + } + }, + "ProductUserArn": { + "target": "com.amazonaws.licensemanagerusersubscriptions#Arn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the product user.

" } }, "Domain": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The domain name of the user.

" + "smithy.api#documentation": "

The domain name of the Active Directory that contains the user for whom to stop the product \n\t\t\tsubscription.

" } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.licensemanagerusersubscriptions#StopProductSubscriptionResponse": { @@ -1943,6 +2770,9 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.licensemanagerusersubscriptions#StringList": { @@ -1954,7 +2784,7 @@ "com.amazonaws.licensemanagerusersubscriptions#Subnet": { "type": "string", "traits": { - "smithy.api#pattern": "subnet-[a-z0-9]{8,17}" + "smithy.api#pattern": "^subnet-[a-z0-9]{8,17}" } }, "com.amazonaws.licensemanagerusersubscriptions#Subnets": { @@ -1963,6 +2793,93 @@ "target": "com.amazonaws.licensemanagerusersubscriptions#Subnet" } }, + "com.amazonaws.licensemanagerusersubscriptions#TagKeyList": { + "type": "list", + "member": { + "target": "smithy.api#String" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 50 + }, + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.licensemanagerusersubscriptions#TagResource": { + "type": "operation", + "input": { + "target": "com.amazonaws.licensemanagerusersubscriptions#TagResourceRequest" + }, + "output": { + "target": "com.amazonaws.licensemanagerusersubscriptions#TagResourceResponse" + }, + "errors": [ + { + "target": "com.amazonaws.licensemanagerusersubscriptions#InternalServerException" + }, + { + "target": "com.amazonaws.licensemanagerusersubscriptions#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.licensemanagerusersubscriptions#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Adds tags to a resource.

", + "smithy.api#http": { + "method": "PUT", + "uri": "/tags/{ResourceArn}" + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.licensemanagerusersubscriptions#TagResourceRequest": { + "type": "structure", + "members": { + "ResourceArn": { + "target": "com.amazonaws.licensemanagerusersubscriptions#ResourceArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the resource that you want to tag.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "Tags": { + "target": "com.amazonaws.licensemanagerusersubscriptions#Tags", + "traits": { + "smithy.api#documentation": "

The tags to apply to the specified resource.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.licensemanagerusersubscriptions#TagResourceResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.licensemanagerusersubscriptions#Tags": { + "type": "map", + "key": { + "target": "smithy.api#String" + }, + "value": { + "target": "smithy.api#String" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 50 + }, + "smithy.api#sensitive": {} + } + }, "com.amazonaws.licensemanagerusersubscriptions#ThrottlingException": { "type": "structure", "members": { @@ -1975,6 +2892,62 @@ "smithy.api#error": "client" } }, + "com.amazonaws.licensemanagerusersubscriptions#UntagResource": { + "type": "operation", + "input": { + "target": "com.amazonaws.licensemanagerusersubscriptions#UntagResourceRequest" + }, + "output": { + "target": "com.amazonaws.licensemanagerusersubscriptions#UntagResourceResponse" + }, + "errors": [ + { + "target": "com.amazonaws.licensemanagerusersubscriptions#InternalServerException" + }, + { + "target": "com.amazonaws.licensemanagerusersubscriptions#ResourceNotFoundException" + } + ], + "traits": { + "smithy.api#documentation": "

Removes tags from a resource.

", + "smithy.api#http": { + "method": "DELETE", + "uri": "/tags/{ResourceArn}" + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.licensemanagerusersubscriptions#UntagResourceRequest": { + "type": "structure", + "members": { + "ResourceArn": { + "target": "com.amazonaws.licensemanagerusersubscriptions#ResourceArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the resource that you want to remove tags from.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "TagKeys": { + "target": "com.amazonaws.licensemanagerusersubscriptions#TagKeyList", + "traits": { + "smithy.api#documentation": "

The tag keys to remove from the resource.

", + "smithy.api#httpQuery": "tagKeys", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.licensemanagerusersubscriptions#UntagResourceResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.licensemanagerusersubscriptions#UpdateIdentityProviderSettings": { "type": "operation", "input": { @@ -1998,7 +2971,7 @@ } ], "traits": { - "smithy.api#documentation": "

Updates additional product configuration settings for the registered identity\n provider.

", + "smithy.api#documentation": "

Updates additional product configuration settings for the registered identity\n\t\t\tprovider.

", "smithy.api#http": { "code": 200, "method": "POST", @@ -2011,25 +2984,30 @@ "type": "structure", "members": { "IdentityProvider": { - "target": "com.amazonaws.licensemanagerusersubscriptions#IdentityProvider", - "traits": { - "smithy.api#required": {} - } + "target": "com.amazonaws.licensemanagerusersubscriptions#IdentityProvider" }, "Product": { "target": "smithy.api#String", "traits": { - "smithy.api#documentation": "

The name of the user-based subscription product.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The name of the user-based subscription product.

\n

Valid values: VISUAL_STUDIO_ENTERPRISE | VISUAL_STUDIO_PROFESSIONAL | OFFICE_PROFESSIONAL_PLUS\n

" + } + }, + "IdentityProviderArn": { + "target": "com.amazonaws.licensemanagerusersubscriptions#Arn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the identity provider to update.

" } }, "UpdateSettings": { "target": "com.amazonaws.licensemanagerusersubscriptions#UpdateSettings", "traits": { - "smithy.api#documentation": "

Updates the registered identity provider’s product related configuration settings. You can\n update any combination of settings in a single operation such as the:

\n ", + "smithy.api#documentation": "

Updates the registered identity provider’s product related configuration settings. You can\n\t\t\tupdate any combination of settings in a single operation such as the:

\n ", "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#input": {} } }, "com.amazonaws.licensemanagerusersubscriptions#UpdateIdentityProviderSettingsResponse": { @@ -2041,6 +3019,9 @@ "smithy.api#required": {} } } + }, + "traits": { + "smithy.api#output": {} } }, "com.amazonaws.licensemanagerusersubscriptions#UpdateSettings": { @@ -2049,7 +3030,7 @@ "AddSubnets": { "target": "com.amazonaws.licensemanagerusersubscriptions#Subnets", "traits": { - "smithy.api#documentation": "

The ID of one or more subnets in which License Manager will create a VPC endpoint for products that\n require connectivity to activation servers.

", + "smithy.api#documentation": "

The ID of one or more subnets in which License Manager will create a VPC endpoint for products that\n\t\t\trequire connectivity to activation servers.

", "smithy.api#required": {} } }, @@ -2063,12 +3044,12 @@ "SecurityGroupId": { "target": "com.amazonaws.licensemanagerusersubscriptions#SecurityGroup", "traits": { - "smithy.api#documentation": "

A security group ID that allows inbound TCP port 1688 communication between resources in\n your VPC and the VPC endpoints for activation servers.

" + "smithy.api#documentation": "

A security group ID that allows inbound TCP port 1688 communication between resources in\n\t\t\tyour VPC and the VPC endpoints for activation servers.

" } } }, "traits": { - "smithy.api#documentation": "

Updates the registered identity provider’s product related configuration settings such as\n the subnets to provision VPC endpoints.

" + "smithy.api#documentation": "

Updates the registered identity provider’s product related configuration settings such as\n\t\t\tthe subnets to provision VPC endpoints.

" } }, "com.amazonaws.licensemanagerusersubscriptions#ValidationException": { diff --git a/codegen/sdk-codegen/aws-models/partnercentral-selling.json b/codegen/sdk-codegen/aws-models/partnercentral-selling.json new file mode 100644 index 00000000000..eaa5ad3402a --- /dev/null +++ b/codegen/sdk-codegen/aws-models/partnercentral-selling.json @@ -0,0 +1,8879 @@ +{ + "smithy": "2.0", + "shapes": { + "com.amazonaws.partnercentralselling#AWSPartnerCentralSelling": { + "type": "service", + "version": "2022-07-26", + "resources": [ + { + "target": "com.amazonaws.partnercentralselling#EngagementByAcceptingInvitationTask" + }, + { + "target": "com.amazonaws.partnercentralselling#EngagementFromOpportunityTask" + }, + { + "target": "com.amazonaws.partnercentralselling#EngagementInvitation" + }, + { + "target": "com.amazonaws.partnercentralselling#Opportunity" + }, + { + "target": "com.amazonaws.partnercentralselling#Solution" + } + ], + "traits": { + "aws.api#service": { + "sdkId": "PartnerCentral Selling", + "endpointPrefix": "partnercentral-selling", + "arnNamespace": "partnercentral", + "cloudTrailEventSource": "partnercentral-selling.amazonaws.com" + }, + "aws.auth#sigv4": { + "name": "partnercentral-selling" + }, + "aws.iam#defineConditionKeys": { + "partnercentral:RelatedEntityType": { + "type": "String", + "relativeDocumentation": "page.html#RelatedEntityType", + "documentation": "Filters access by entity types for Opportunity association. Accepted values: [Solutions, AwsProducts, AwsMarketplaceOffers]" + }, + "partnercentral:Catalog": { + "type": "String", + "relativeDocumentation": "page.html#Catalog", + "documentation": "Filters access by a specific Catalog. Accepted values: [AWS, Sandbox]" + } + }, + "aws.iam#supportedPrincipalTypes": [ + "Root", + "IAMUser", + "IAMRole", + "FederatedUser" + ], + "aws.protocols#awsJson1_0": {}, + "smithy.api#documentation": "AWS Partner Central API for Selling\n

\n AWS Partner Central API for Selling Reference Guide\n

\n

\n Amazon Web Services (AWS) Partner Central API reference guide is designed to help\n AWS Partners programmatically integrate their Customer Relationship Management (CRM) systems with AWS Partner Central. Through the Partner Central APIs, partners can automate and streamline their interactions with AWS Partner Central, ensuring a more efficient and effective engagement in joint business activities.\n

\n

\n The AWS Partner Central API service provides standard AWS API functionality. You can directly use the API Actions, or you can use an AWS SDK to access an API that's tailored to the programming language or platform that you're using. For more information about AWS application development, see Getting Started with AWS. For more information about using AWS SDKs, see AWS SDKs.\n

\n

\n Features offered by AWS Partner Central API\n

\n
    \n
  1. \n

    \n Opportunity management: Facilitates the management of co-selling opportunities with AWS using API actions such as CreateOpportunity, UpdateOpportunity, ListOpportunities, GetOpportunity, and AssignOpportunity.

    \n
  2. \n
  3. \n

    \n AWS referral management: Facilitates receiving referrals shared by AWS using actions like ListEngagementInvitations, GetEngagementInvitation, StartEngagementByAcceptingInvitation, and RejectEngagementInvitation.

    \n
  4. \n
  5. \n

    \n Entity association: Associate related entities such as AWS Products, Partner Solutions, and AWS Marketplace Private Offers with opportunities using the actions AssociateOpportunity and DisassociateOpportunity.

    \n
  6. \n
  7. \n

    \n View AWS opportunity details: Use the GetAWSOpportunitySummary action to retrieve real-time summaries of AWS opportunities that are linked to your opportunities.

    \n
  8. \n
  9. \n

    \n List solutions: Provides list APIs for listing solutions partners offer using ListSolutions.

    \n
  10. \n
  11. \n

    \n Event subscription: Partners can subscribe to real-time updates on opportunities by listening to events such as Opportunity Created, Opportunity Updated, Engagement Invitation Accepted, Engagement Invitation Rejected and Engagement Invitation Created using AWS EventBridge.

    \n
  12. \n
", + "smithy.api#title": "Partner Central Selling API", + "smithy.rules#endpointRuleSet": { + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://partnercentral-selling-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://partnercentral-selling-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://partnercentral-selling.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://partnercentral-selling.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ], + "type": "tree" + } + ] + }, + "smithy.rules#endpointTests": { + "testCases": [ + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://partnercentral-selling-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://partnercentral-selling-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://partnercentral-selling.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://partnercentral-selling.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://partnercentral-selling-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://partnercentral-selling-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://partnercentral-selling.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://partnercentral-selling.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://partnercentral-selling-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://partnercentral-selling-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://partnercentral-selling.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://partnercentral-selling.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://partnercentral-selling-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://partnercentral-selling.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://partnercentral-selling-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://partnercentral-selling.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" + } + } + }, + "com.amazonaws.partnercentralselling#AccessDeniedException": { + "type": "structure", + "members": { + "Message": { + "target": "smithy.api#String" + } + }, + "traits": { + "smithy.api#documentation": "

This error occurs when you don't have permission to perform the\n requested action.\n

\n

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.\n

", + "smithy.api#error": "client", + "smithy.api#httpError": 403 + } + }, + "com.amazonaws.partnercentralselling#Account": { + "type": "structure", + "members": { + "Industry": { + "target": "com.amazonaws.partnercentralselling#Industry", + "traits": { + "smithy.api#documentation": "

Specifies the industry the end Customer belongs to that's associated with the Opportunity . It refers to the category or sector where the customer's business operates. This is a required field.\n

" + } + }, + "OtherIndustry": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Specifies the end Customer's industry associated with the Opportunity, when the selected value in the Industry field is Other.\n

", + "smithy.api#length": { + "max": 255 + } + } + }, + "CompanyName": { + "target": "com.amazonaws.partnercentralselling#Name", + "traits": { + "smithy.api#documentation": "

Specifies the end Customer's company name associated with the Opportunity.\n

", + "smithy.api#length": { + "max": 120 + }, + "smithy.api#required": {} + } + }, + "WebsiteUrl": { + "target": "com.amazonaws.partnercentralselling#WebsiteUrl", + "traits": { + "smithy.api#documentation": "

\n Specifies the end customer's company website URL associated with the Opportunity. This value is crucial to map the customer within the Amazon Web Services CRM system. This field is required in all cases except when the opportunity is related to national security.\n

" + } + }, + "AwsAccountId": { + "target": "com.amazonaws.partnercentralselling#AwsAccount", + "traits": { + "smithy.api#documentation": "

Specifies the Customer Amazon Web Services account ID associated with the Opportunity.\n

" + } + }, + "Address": { + "target": "com.amazonaws.partnercentralselling#Address", + "traits": { + "smithy.api#documentation": "

Specifies the end Customer's address details associated with the Opportunity.\n

" + } + }, + "Duns": { + "target": "com.amazonaws.partnercentralselling#DunsNumber", + "traits": { + "smithy.api#documentation": "

Indicates the Customer DUNS number, if available.\n

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies the Customer's account details associated with the Opportunity.\n

" + } + }, + "com.amazonaws.partnercentralselling#AccountReceiver": { + "type": "structure", + "members": { + "Alias": { + "target": "com.amazonaws.partnercentralselling#Alias", + "traits": { + "smithy.api#documentation": "

Represents the alias of the partner account receiving the Engagement Invitation, making it easier to identify and track the recipient in reports or logs.

" + } + }, + "AwsAccountId": { + "target": "com.amazonaws.partnercentralselling#AwsAccount", + "traits": { + "smithy.api#documentation": "

Indicates the AWS account ID of the partner who received the Engagement Invitation. This is a unique identifier for managing engagements with specific AWS accounts.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the account details of the partner who received the Engagement Invitation, including the AWS account ID and company name.

" + } + }, + "com.amazonaws.partnercentralselling#AccountSummary": { + "type": "structure", + "members": { + "Industry": { + "target": "com.amazonaws.partnercentralselling#Industry", + "traits": { + "smithy.api#documentation": "

Specifies which industry the end Customer belongs to associated with the Opportunity .\n It refers to the category or sector that the customer's business operates in.\n

\n

To submit a value outside the picklist, use\n Other.\n

\n

Conditionally mandatory if Other is selected for Industry Vertical in LOVs.\n

" + } + }, + "OtherIndustry": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Specifies the end Customer's industry associated with the \n Opportunity, when the selected value in the Industry field is Other. This field is relevant\n when the customer's industry doesn't fall under the predefined picklist values and requires a custom\n description.\n

", + "smithy.api#length": { + "max": 255 + } + } + }, + "CompanyName": { + "target": "com.amazonaws.partnercentralselling#Name", + "traits": { + "smithy.api#documentation": "

Specifies the end Customer's company name associated with the Opportunity.\n

", + "smithy.api#length": { + "max": 120 + }, + "smithy.api#required": {} + } + }, + "WebsiteUrl": { + "target": "com.amazonaws.partnercentralselling#WebsiteUrl", + "traits": { + "smithy.api#documentation": "

Specifies the end customer's company website URL associated with the Opportunity. This\n value is crucial to map the customer within the Amazon Web Services CRM system.\n

" + } + }, + "Address": { + "target": "com.amazonaws.partnercentralselling#AddressSummary", + "traits": { + "smithy.api#documentation": "

Specifies the end Customer's address details associated with the Opportunity.\n

" + } + } + }, + "traits": { + "smithy.api#documentation": "

An object that contains an Account's subset of fields.\n

" + } + }, + "com.amazonaws.partnercentralselling#Address": { + "type": "structure", + "members": { + "City": { + "target": "com.amazonaws.partnercentralselling#AddressPart", + "traits": { + "smithy.api#documentation": "

Specifies the end Customer's city associated with the Opportunity.\n

", + "smithy.api#length": { + "max": 255 + } + } + }, + "PostalCode": { + "target": "com.amazonaws.partnercentralselling#AddressPart", + "traits": { + "smithy.api#documentation": "

Specifies the end Customer's postal code associated with the Opportunity.\n

", + "smithy.api#length": { + "max": 20 + } + } + }, + "StateOrRegion": { + "target": "com.amazonaws.partnercentralselling#AddressPart", + "traits": { + "smithy.api#documentation": "

Specifies the end Customer's state or region associated with the Opportunity.\n

\n

Valid values: Alabama | Alaska | American Samoa | Arizona | Arkansas | California | Colorado | Connecticut | Delaware | Dist. of Columbia | Federated States of Micronesia | Florida | Georgia | Guam | Hawaii | Idaho | Illinois | Indiana | Iowa | Kansas | Kentucky | Louisiana | Maine | Marshall Islands | Maryland | Massachusetts | Michigan | Minnesota | Mississippi | Missouri | Montana | Nebraska | Nevada | New Hampshire | New Jersey | New Mexico | New York | North Carolina | North Dakota | Northern Mariana Islands | Ohio | Oklahoma | Oregon | Palau | Pennsylvania | Puerto Rico | Rhode Island | South Carolina | South Dakota | Tennessee | Texas | Utah | Vermont | Virginia | Virgin Islands | Washington | West Virginia | Wisconsin | Wyoming | APO/AE | AFO/FPO | FPO, AP\n

" + } + }, + "CountryCode": { + "target": "com.amazonaws.partnercentralselling#CountryCode", + "traits": { + "smithy.api#documentation": "

Specifies the end Customer's country associated with the Opportunity.\n

" + } + }, + "StreetAddress": { + "target": "com.amazonaws.partnercentralselling#AddressPart", + "traits": { + "smithy.api#documentation": "

Specifies the end Customer's street address associated with the Opportunity.\n

", + "smithy.api#length": { + "max": 255 + } + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies the end Customer's address details associated with the Opportunity.\n

" + } + }, + "com.amazonaws.partnercentralselling#AddressPart": { + "type": "string", + "traits": { + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.partnercentralselling#AddressSummary": { + "type": "structure", + "members": { + "City": { + "target": "com.amazonaws.partnercentralselling#AddressPart", + "traits": { + "smithy.api#documentation": "

Specifies the end Customer's city associated with the Opportunity.\n

", + "smithy.api#length": { + "max": 255 + } + } + }, + "PostalCode": { + "target": "com.amazonaws.partnercentralselling#AddressPart", + "traits": { + "smithy.api#documentation": "

Specifies the end Customer's postal code associated with the Opportunity.\n

", + "smithy.api#length": { + "max": 20 + } + } + }, + "StateOrRegion": { + "target": "com.amazonaws.partnercentralselling#AddressPart", + "traits": { + "smithy.api#documentation": "

Specifies the end Customer's state or region associated with the Opportunity.\n

\n

Valid values: Alabama | Alaska | American Samoa | Arizona | Arkansas | California | Colorado | Connecticut | Delaware | Dist. of Columbia | Federated States of Micronesia | Florida | Georgia | Guam | Hawaii | Idaho | Illinois | Indiana | Iowa | Kansas | Kentucky | Louisiana | Maine | Marshall Islands | Maryland | Massachusetts | Michigan | Minnesota | Mississippi | Missouri | Montana | Nebraska | Nevada | New Hampshire | New Jersey | New Mexico | New York | North Carolina | North Dakota | Northern Mariana Islands | Ohio | Oklahoma | Oregon | Palau | Pennsylvania | Puerto Rico | Rhode Island | South Carolina | South Dakota | Tennessee | Texas | Utah | Vermont | Virginia | Virgin Islands | Washington | West Virginia | Wisconsin | Wyoming | APO/AE | AFO/FPO | FPO, AP\n

" + } + }, + "CountryCode": { + "target": "com.amazonaws.partnercentralselling#CountryCode", + "traits": { + "smithy.api#documentation": "

Specifies the end Customer's country associated with the Opportunity.\n

" + } + } + }, + "traits": { + "smithy.api#documentation": "

An object that contains an Address object's subset of fields.\n

" + } + }, + "com.amazonaws.partnercentralselling#Alias": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 80 + }, + "smithy.api#pattern": "^[\\p{L}\\p{N}\\p{P}\\p{Z}]+$" + } + }, + "com.amazonaws.partnercentralselling#ApnPrograms": { + "type": "list", + "member": { + "target": "smithy.api#String" + } + }, + "com.amazonaws.partnercentralselling#AssignOpportunity": { + "type": "operation", + "input": { + "target": "com.amazonaws.partnercentralselling#AssignOpportunityRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "errors": [ + { + "target": "com.amazonaws.partnercentralselling#AccessDeniedException" + }, + { + "target": "com.amazonaws.partnercentralselling#InternalServerException" + }, + { + "target": "com.amazonaws.partnercentralselling#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.partnercentralselling#ThrottlingException" + }, + { + "target": "com.amazonaws.partnercentralselling#ValidationException" + } + ], + "traits": { + "aws.iam#conditionKeys": [ + "partnercentral:Catalog" + ], + "aws.iam#iamAction": { + "documentation": "Grants permission to assign Opportunities on AWS Partner Central" + }, + "smithy.api#documentation": "

\n Enables you to reassign an existing Opportunity to another user within your\n Partner Central account. The specified user receives the opportunity, and it appears on their\n Partner Central dashboard, allowing them to take necessary actions or proceed with the opportunity.\n

\n

\n This is useful for distributing opportunities to the appropriate team members\n or departments within your organization, ensuring that each opportunity is handled by the right person. By default, the opportunity owner is the one who creates it. Currently, there's no API to enumerate the list of available users.\n

", + "smithy.api#http": { + "method": "POST", + "uri": "/AssignOpportunity", + "code": 200 + } + } + }, + "com.amazonaws.partnercentralselling#AssignOpportunityRequest": { + "type": "structure", + "members": { + "Catalog": { + "target": "com.amazonaws.partnercentralselling#CatalogIdentifier", + "traits": { + "smithy.api#documentation": "

\n Specifies the catalog associated with the request. This field takes a string value from a predefined list:\n AWS or Sandbox. The catalog determines which environment the opportunity\n is assigned in. Use AWS to assign real opportunities in the Amazon Web Services catalog,\n and Sandbox to test in a secure and isolated environment.\n

", + "smithy.api#required": {} + } + }, + "Identifier": { + "target": "com.amazonaws.partnercentralselling#OpportunityIdentifier", + "traits": { + "smithy.api#documentation": "

\n Requires the Opportunity's unique identifier when you want to\n assign it to another user. Provide the correct identifier so the intended opportunity is\n reassigned.\n

", + "smithy.api#required": {}, + "smithy.api#resourceIdentifier": "Identifier" + } + }, + "Assignee": { + "target": "com.amazonaws.partnercentralselling#AssigneeContact", + "traits": { + "smithy.api#documentation": "

Specifies the user or team member responsible for managing the assigned opportunity. This field identifies the Assignee based on the partner's internal team structure. Ensure that the email address is associated with a registered user in your Partner Central account.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.partnercentralselling#AssigneeContact": { + "type": "structure", + "members": { + "Email": { + "target": "com.amazonaws.partnercentralselling#Email", + "traits": { + "smithy.api#documentation": "

Provides the email address of the assignee. This email is used for communications and notifications related to the opportunity.

", + "smithy.api#required": {} + } + }, + "FirstName": { + "target": "com.amazonaws.partnercentralselling#Name", + "traits": { + "smithy.api#documentation": "

Specifies the first name of the assignee managing the opportunity.

", + "smithy.api#length": { + "max": 80 + }, + "smithy.api#required": {} + } + }, + "LastName": { + "target": "com.amazonaws.partnercentralselling#Name", + "traits": { + "smithy.api#documentation": "

Specifies the last name of the assignee managing the opportunity.

", + "smithy.api#length": { + "max": 80 + }, + "smithy.api#required": {} + } + }, + "BusinessTitle": { + "target": "com.amazonaws.partnercentralselling#JobTitle", + "traits": { + "smithy.api#documentation": "

Specifies the business title of the assignee managing the opportunity. This helps clarify the individual's role and responsibilities within the organization.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Represents the contact details of the individual assigned to manage the opportunity within the partner organization. This ensures that there is a clear point of contact for the opportunity's progress and updates.

" + } + }, + "com.amazonaws.partnercentralselling#AssociateOpportunity": { + "type": "operation", + "input": { + "target": "com.amazonaws.partnercentralselling#AssociateOpportunityRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "errors": [ + { + "target": "com.amazonaws.partnercentralselling#AccessDeniedException" + }, + { + "target": "com.amazonaws.partnercentralselling#InternalServerException" + }, + { + "target": "com.amazonaws.partnercentralselling#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.partnercentralselling#ThrottlingException" + }, + { + "target": "com.amazonaws.partnercentralselling#ValidationException" + } + ], + "traits": { + "aws.iam#conditionKeys": [ + "partnercentral:RelatedEntityType", + "partnercentral:Catalog" + ], + "aws.iam#iamAction": { + "documentation": "Grants permission to associate Opportunities on AWS Partner Central with other entities" + }, + "smithy.api#documentation": "

\n Enables you to create a formal association between an Opportunity and various\n related entities, enriching the context and details of the opportunity for better collaboration and\n decision-making. You can associate an opportunity with the following types of entities:\n

\n \n

To obtain identifiers for these entities, use the following methods:

\n ", + "smithy.api#http": { + "method": "POST", + "uri": "/AssociateOpportunity", + "code": 200 + } + } + }, + "com.amazonaws.partnercentralselling#AssociateOpportunityRequest": { + "type": "structure", + "members": { + "Catalog": { + "target": "com.amazonaws.partnercentralselling#CatalogIdentifier", + "traits": { + "smithy.api#documentation": "

\n Specifies the catalog associated with the request. This field takes a string value from a predefined list:\n AWS or Sandbox. The catalog determines whichenvironment the opportunity\n association is made in. Use AWS to associate opportunities in the Amazon Web Services catalog,\n and Sandbox to test in a secure and isolated environment.\n

", + "smithy.api#required": {} + } + }, + "OpportunityIdentifier": { + "target": "com.amazonaws.partnercentralselling#OpportunityIdentifier", + "traits": { + "smithy.api#documentation": "

Requires the Opportunity's unique identifier when you want to\n associate it with a related entity. Provide the correct identifier so the intended opportunity is\n updated with the association.\n

", + "smithy.api#required": {}, + "smithy.api#resourceIdentifier": "Identifier" + } + }, + "RelatedEntityType": { + "target": "com.amazonaws.partnercentralselling#RelatedEntityType", + "traits": { + "smithy.api#documentation": "

Specifies the type of the related entity you're associating with the \n Opportunity. This helps to categorize and properly process the association.\n

", + "smithy.api#required": {} + } + }, + "RelatedEntityIdentifier": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Requires the related entity's unique identifier when you want to associate it with the \n Opportunity. For Amazon Web Services Marketplace entities, provide the Amazon Resource Name (ARN). Use the \n Amazon Web Services Marketplace API to obtain the ARN.\n

", + "smithy.api#length": { + "min": 1, + "max": 255 + }, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.partnercentralselling#AwsAccount": { + "type": "string", + "traits": { + "smithy.api#pattern": "^[0-9]{12}$", + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.partnercentralselling#AwsAccountIdOrLabel": { + "type": "string", + "traits": { + "smithy.api#pattern": "^(aws|[0-9]{12})$", + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.partnercentralselling#AwsClosedLostReason": { + "type": "enum", + "members": { + "ADMINISTRATIVE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Administrative" + } + }, + "BUSINESS_ASSOCIATE_AGREEMENT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Business Associate Agreement" + } + }, + "COMPANY_ACQUIRED_DISSOLVED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Company Acquired/Dissolved" + } + }, + "COMPETITIVE_OFFERING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Competitive Offering" + } + }, + "CUSTOMER_DATA_REQUIREMENT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Customer Data Requirement" + } + }, + "CUSTOMER_DEFICIENCY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Customer Deficiency" + } + }, + "CUSTOMER_EXPERIENCE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Customer Experience" + } + }, + "DELAY_CANCELLATION_OF_PROJECT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Delay / Cancellation of Project" + } + }, + "DUPLICATE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Duplicate" + } + }, + "DUPLICATE_OPPORTUNITY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Duplicate Opportunity" + } + }, + "EXECUTIVE_BLOCKER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Executive Blocker" + } + }, + "FAILED_VETTING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Failed Vetting" + } + }, + "FEATURE_LIMITATION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Feature Limitation" + } + }, + "FINANCIAL_COMMERCIAL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Financial/Commercial" + } + }, + "INSUFFICIENT_AMAZON_VALUE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Insufficient Amazon Value" + } + }, + "INSUFFICIENT_AWS_VALUE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Insufficient AWS Value" + } + }, + "INTERNATIONAL_CONSTRAINTS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "International Constraints" + } + }, + "LEGAL_TAX_REGULATORY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Legal / Tax / Regulatory" + } + }, + "LEGAL_TERMS_AND_CONDITIONS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Legal Terms and Conditions" + } + }, + "LOST_TO_COMPETITOR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Lost to Competitor" + } + }, + "LOST_TO_COMPETITOR_GOOGLE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Lost to Competitor - Google" + } + }, + "LOST_TO_COMPETITOR_MICROSOFT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Lost to Competitor - Microsoft" + } + }, + "LOST_TO_COMPETITOR_OTHER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Lost to Competitor - Other" + } + }, + "LOST_TO_COMPETITOR_RACKSPACE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Lost to Competitor - Rackspace" + } + }, + "LOST_TO_COMPETITOR_SOFTLAYER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Lost to Competitor - SoftLayer" + } + }, + "LOST_TO_COMPETITOR_VMWARE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Lost to Competitor - VMWare" + } + }, + "NO_CUSTOMER_REFERENCE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "No Customer Reference" + } + }, + "NO_INTEGRATION_RESOURCES": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "No Integration Resources" + } + }, + "NO_OPPORTUNITY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "No Opportunity" + } + }, + "NO_PERCEIVED_VALUE_OF_MP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "No Perceived Value of MP" + } + }, + "NO_RESPONSE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "No Response" + } + }, + "NOT_COMMITTED_TO_AWS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Not Committed to AWS" + } + }, + "NO_UPDATE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "No Update" + } + }, + "ON_PREMISES_DEPLOYMENT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "On Premises Deployment" + } + }, + "OTHER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Other" + } + }, + "OTHER_DETAILS_IN_DESCRIPTION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Other (Details in Description)" + } + }, + "PARTNER_GAP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Partner Gap" + } + }, + "PAST_DUE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Past Due" + } + }, + "PEOPLE_RELATIONSHIP_GOVERNANCE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "People/Relationship/Governance" + } + }, + "PLATFORM_TECHNOLOGY_LIMITATION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Platform Technology Limitation" + } + }, + "PREFERENCE_FOR_COMPETITOR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Preference for Competitor" + } + }, + "PRICE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Price" + } + }, + "PRODUCT_TECHNOLOGY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Product/Technology" + } + }, + "PRODUCT_NOT_ON_AWS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Product Not on AWS" + } + }, + "SECURITY_COMPLIANCE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Security / Compliance" + } + }, + "SELF_SERVICE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Self-Service" + } + }, + "TECHNICAL_LIMITATIONS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Technical Limitations" + } + }, + "TERM_SHEET_IMPASSE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Term Sheet Impasse" + } + } + } + }, + "com.amazonaws.partnercentralselling#AwsFundingUsed": { + "type": "enum", + "members": { + "YES": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Yes" + } + }, + "NO": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "No" + } + } + } + }, + "com.amazonaws.partnercentralselling#AwsMarketplaceOfferIdentifier": { + "type": "string", + "traits": { + "smithy.api#pattern": "^arn:aws:aws-marketplace:[a-z]{1,2}-[a-z]*-\\d+:\\d{12}:AWSMarketplace/Offer/.*$" + } + }, + "com.amazonaws.partnercentralselling#AwsMarketplaceOfferIdentifiers": { + "type": "list", + "member": { + "target": "com.amazonaws.partnercentralselling#AwsMarketplaceOfferIdentifier" + } + }, + "com.amazonaws.partnercentralselling#AwsMemberBusinessTitle": { + "type": "enum", + "members": { + "AWS_SALES_REP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWSSalesRep" + } + }, + "AWS_ACCOUNT_OWNER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWSAccountOwner" + } + }, + "WWPSPDM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "WWPSPDM" + } + }, + "PDM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PDM" + } + }, + "PSM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PSM" + } + }, + "ISVSM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ISVSM" + } + } + } + }, + "com.amazonaws.partnercentralselling#AwsOpportunityCustomer": { + "type": "structure", + "members": { + "Contacts": { + "target": "com.amazonaws.partnercentralselling#CustomerContactsList", + "traits": { + "smithy.api#documentation": "

Provides a list of customer contacts involved in the opportunity. These contacts may include decision-makers, influencers, and other key stakeholders within the customer's organization.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Represents the customer associated with the AWS opportunity. This field captures key details about the customer that are necessary for managing the opportunity.

" + } + }, + "com.amazonaws.partnercentralselling#AwsOpportunityInsights": { + "type": "structure", + "members": { + "NextBestActions": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Provides recommendations from AWS on the next best actions to take in order to move the opportunity forward and increase the likelihood of success.

" + } + }, + "EngagementScore": { + "target": "com.amazonaws.partnercentralselling#EngagementScore", + "traits": { + "smithy.api#documentation": "

Represents a score assigned by AWS to indicate the level of engagement and potential success for the opportunity. This score helps partners prioritize their efforts.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains insights provided by AWS for the opportunity, offering recommendations and analysis that can help the partner optimize their engagement and strategy.

" + } + }, + "com.amazonaws.partnercentralselling#AwsOpportunityLifeCycle": { + "type": "structure", + "members": { + "TargetCloseDate": { + "target": "com.amazonaws.partnercentralselling#Date", + "traits": { + "smithy.api#documentation": "

Indicates the expected date by which the opportunity is projected to close. This field helps in planning resources and timelines for both the partner and AWS.

" + } + }, + "ClosedLostReason": { + "target": "com.amazonaws.partnercentralselling#AwsClosedLostReason", + "traits": { + "smithy.api#documentation": "

Indicates the reason why an opportunity was marked as Closed Lost. This helps in understanding the context behind the lost opportunity and aids in refining future strategies.

" + } + }, + "Stage": { + "target": "com.amazonaws.partnercentralselling#AwsOpportunityStage", + "traits": { + "smithy.api#documentation": "

Represents the current stage of the opportunity in its lifecycle, such as Qualification, Validation, or Closed Won. This helps in understanding the opportunity's progress.

" + } + }, + "NextSteps": { + "target": "com.amazonaws.partnercentralselling#PiiString", + "traits": { + "smithy.api#documentation": "

Specifies the immediate next steps required to progress the opportunity. These steps are based on AWS's guidance and the current stage of the opportunity.

", + "smithy.api#length": { + "max": 255 + } + } + }, + "NextStepsHistory": { + "target": "com.amazonaws.partnercentralselling#ProfileNextStepsHistories", + "traits": { + "smithy.api#documentation": "

Provides a historical log of previous next steps that were taken to move the opportunity forward. This helps in tracking the decision-making process and identifying any delays or obstacles encountered.

", + "smithy.api#length": { + "max": 50 + } + } + } + }, + "traits": { + "smithy.api#documentation": "

Tracks the lifecycle of the AWS opportunity, including stages such as qualification, validation, and closure. This field helps partners understand the current status and progression of the opportunity.

" + } + }, + "com.amazonaws.partnercentralselling#AwsOpportunityProject": { + "type": "structure", + "members": { + "ExpectedCustomerSpend": { + "target": "com.amazonaws.partnercentralselling#ExpectedCustomerSpendList", + "traits": { + "smithy.api#documentation": "

Indicates the expected spending by the customer over the course of the project. This value helps partners and AWS estimate the financial impact of the opportunity. Use the AWS Pricing Calculator to create an estimate of the customer’s total spend. If only annual recurring revenue (ARR) is available, distribute it across 12 months to provide an average monthly value.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Captures details about the project associated with the opportunity, including objectives, scope, and customer requirements.

" + } + }, + "com.amazonaws.partnercentralselling#AwsOpportunityRelatedEntities": { + "type": "structure", + "members": { + "AwsProducts": { + "target": "com.amazonaws.partnercentralselling#AwsProductIdentifiers", + "traits": { + "smithy.api#documentation": "

Specifies the AWS products associated with the opportunity. This field helps track the specific products that are part of the proposed solution.

" + } + }, + "Solutions": { + "target": "com.amazonaws.partnercentralselling#SolutionIdentifiers", + "traits": { + "smithy.api#documentation": "

Specifies the partner solutions related to the opportunity. These solutions represent the partner's offerings that are being positioned as part of the overall AWS opportunity.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Represents other entities related to the AWS opportunity, such as AWS products, partner solutions, and marketplace offers. These associations help build a complete picture of the solution being sold.

" + } + }, + "com.amazonaws.partnercentralselling#AwsOpportunityStage": { + "type": "enum", + "members": { + "NOT_STARTED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Not Started" + } + }, + "IN_PROGRESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "In Progress" + } + }, + "PROSPECT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Prospect" + } + }, + "ENGAGED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Engaged" + } + }, + "IDENTIFIED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Identified" + } + }, + "QUALIFY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Qualify" + } + }, + "RESEARCH": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Research" + } + }, + "SELLER_ENGAGED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Seller Engaged" + } + }, + "EVALUATING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Evaluating" + } + }, + "SELLER_REGISTERED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Seller Registered" + } + }, + "TERM_SHEET_NEGOTIATION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Term Sheet Negotiation" + } + }, + "CONTRACT_NEGOTIATION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Contract Negotiation" + } + }, + "ONBOARDING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Onboarding" + } + }, + "BUILDING_INTEGRATION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Building Integration" + } + }, + "QUALIFIED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Qualified" + } + }, + "ON_HOLD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "On-hold" + } + }, + "TECHNICAL_VALIDATION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Technical Validation" + } + }, + "BUSINESS_VALIDATION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Business Validation" + } + }, + "COMMITTED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Committed" + } + }, + "LAUNCHED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Launched" + } + }, + "DEFERRED_TO_PARTNER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Deferred to Partner" + } + }, + "CLOSED_LOST": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Closed Lost" + } + }, + "COMPLETED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Completed" + } + }, + "CLOSED_INCOMPLETE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Closed Incomplete" + } + } + } + }, + "com.amazonaws.partnercentralselling#AwsOpportunityTeamMembersList": { + "type": "list", + "member": { + "target": "com.amazonaws.partnercentralselling#AwsTeamMember" + } + }, + "com.amazonaws.partnercentralselling#AwsProductIdentifier": { + "type": "string" + }, + "com.amazonaws.partnercentralselling#AwsProductIdentifiers": { + "type": "list", + "member": { + "target": "com.amazonaws.partnercentralselling#AwsProductIdentifier" + } + }, + "com.amazonaws.partnercentralselling#AwsSubmission": { + "type": "structure", + "members": { + "InvolvementType": { + "target": "com.amazonaws.partnercentralselling#SalesInvolvementType", + "traits": { + "smithy.api#documentation": "

Specifies the type of AWS involvement in the opportunity, such as co-selling, deal support, or technical consultation. This helps categorize the nature of AWS's participation.

", + "smithy.api#required": {} + } + }, + "Visibility": { + "target": "com.amazonaws.partnercentralselling#Visibility", + "traits": { + "smithy.api#documentation": "

Determines who can view AWS's involvement in the opportunity. Typically, this field is set to Full for most cases, but it may be restricted based on special program requirements or confidentiality needs.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Indicates the level of AWS involvement in the opportunity. This field helps track AWS's role and participation throughout the engagement, such as providing technical support, deal assistance, or sales support.

" + } + }, + "com.amazonaws.partnercentralselling#AwsTeamMember": { + "type": "structure", + "members": { + "Email": { + "target": "com.amazonaws.partnercentralselling#Email", + "traits": { + "smithy.api#documentation": "

\n Provides the Amazon Web Services team member's email address.\n

" + } + }, + "FirstName": { + "target": "com.amazonaws.partnercentralselling#Name", + "traits": { + "smithy.api#documentation": "

\n Provides the Amazon Web Services team member's first name.\n

", + "smithy.api#length": { + "max": 80 + } + } + }, + "LastName": { + "target": "com.amazonaws.partnercentralselling#Name", + "traits": { + "smithy.api#documentation": "

\n Provides the Amazon Web Services team member's last name.\n

", + "smithy.api#length": { + "max": 80 + } + } + }, + "BusinessTitle": { + "target": "com.amazonaws.partnercentralselling#AwsMemberBusinessTitle", + "traits": { + "smithy.api#documentation": "

\n Specifies the Amazon Web Services team member's business title and indicates their organizational role.\n

" + } + } + }, + "traits": { + "smithy.api#documentation": "

\n Represents an Amazon Web Services team member for the engagement. This structure includes details such as name, email, and business title.\n

" + } + }, + "com.amazonaws.partnercentralselling#CatalogIdentifier": { + "type": "string", + "traits": { + "smithy.api#pattern": "^[a-zA-Z]+$" + } + }, + "com.amazonaws.partnercentralselling#Channel": { + "type": "enum", + "members": { + "AWS_MARKETING_CENTRAL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS Marketing Central" + } + }, + "CONTENT_SYNDICATION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Content Syndication" + } + }, + "DISPLAY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Display" + } + }, + "EMAIL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Email" + } + }, + "LIVE_EVENT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Live Event" + } + }, + "OUT_OF_HOME": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Out Of Home (OOH)" + } + }, + "PRINT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Print" + } + }, + "SEARCH": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Search" + } + }, + "SOCIAL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Social" + } + }, + "TELEMARKETING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Telemarketing" + } + }, + "TV": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TV" + } + }, + "VIDEO": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Video" + } + }, + "VIRTUAL_EVENT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Virtual Event" + } + } + } + }, + "com.amazonaws.partnercentralselling#Channels": { + "type": "list", + "member": { + "target": "com.amazonaws.partnercentralselling#Channel" + } + }, + "com.amazonaws.partnercentralselling#ClosedLostReason": { + "type": "enum", + "members": { + "CUSTOMER_DEFICIENCY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Customer Deficiency" + } + }, + "DELAY_CANCELLATION_OF_PROJECT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Delay / Cancellation of Project" + } + }, + "LEGAL_TAX_REGULATORY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Legal / Tax / Regulatory" + } + }, + "LOST_TO_COMPETITOR_GOOGLE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Lost to Competitor - Google" + } + }, + "LOST_TO_COMPETITOR_MICROSOFT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Lost to Competitor - Microsoft" + } + }, + "LOST_TO_COMPETITOR_SOFTLAYER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Lost to Competitor - SoftLayer" + } + }, + "LOST_TO_COMPETITOR_VMWARE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Lost to Competitor - VMWare" + } + }, + "LOST_TO_COMPETITOR_OTHER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Lost to Competitor - Other" + } + }, + "NO_OPPORTUNITY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "No Opportunity" + } + }, + "ON_PREMISES_DEPLOYMENT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "On Premises Deployment" + } + }, + "PARTNER_GAP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Partner Gap" + } + }, + "PRICE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Price" + } + }, + "SECURITY_COMPLIANCE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Security / Compliance" + } + }, + "TECHNICAL_LIMITATIONS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Technical Limitations" + } + }, + "CUSTOMER_EXPERIENCE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Customer Experience" + } + }, + "OTHER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Other" + } + }, + "PEOPLERELATIONSHIPGOVERNANCE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "People/Relationship/Governance" + } + }, + "PRODUCTTECHNOLOGY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Product/Technology" + } + }, + "FINANCIALCOMMERCIAL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Financial/Commercial" + } + } + } + }, + "com.amazonaws.partnercentralselling#CompanyName": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 120 + }, + "smithy.api#pattern": "^[\\p{L}\\p{N}\\p{P}\\p{Z}]+$" + } + }, + "com.amazonaws.partnercentralselling#CompanyWebsiteUrl": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 4, + "max": 255 + }, + "smithy.api#pattern": "^((http|https)://)??(www[.])??([a-zA-Z0-9]|-)+?([.][a-zA-Z0-9(-|/|=|?)??]+?)+?$", + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.partnercentralselling#CompetitorName": { + "type": "enum", + "members": { + "ORACLE_CLOUD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Oracle Cloud" + } + }, + "ON_PREM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "On-Prem" + } + }, + "CO_LOCATION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Co-location" + } + }, + "AKAMAI": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Akamai" + } + }, + "ALICLOUD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AliCloud" + } + }, + "GOOGLE_CLOUD_PLATFORM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Google Cloud Platform" + } + }, + "IBM_SOFTLAYER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IBM Softlayer" + } + }, + "MICROSOFT_AZURE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Microsoft Azure" + } + }, + "OTHER_COST_OPTIMIZATION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Other- Cost Optimization" + } + }, + "NO_COMPETITION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "No Competition" + } + }, + "OTHER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "*Other" + } + } + } + }, + "com.amazonaws.partnercentralselling#ConflictException": { + "type": "structure", + "members": { + "Message": { + "target": "smithy.api#String" + } + }, + "traits": { + "smithy.api#documentation": "

This error occurs when the request can’t be processed due to a conflict with the target resource's current state, which could result from updating or deleting the resource.\n

\n

Suggested action: Fetch the latest state of the resource, verify the state, and retry the request.\n

", + "smithy.api#error": "client", + "smithy.api#httpError": 409 + } + }, + "com.amazonaws.partnercentralselling#Contact": { + "type": "structure", + "members": { + "Email": { + "target": "com.amazonaws.partnercentralselling#Email", + "traits": { + "smithy.api#documentation": "

The contact's email address associated with the Opportunity.\n

" + } + }, + "FirstName": { + "target": "com.amazonaws.partnercentralselling#Name", + "traits": { + "smithy.api#documentation": "

The contact's first name associated with the Opportunity.\n

", + "smithy.api#length": { + "max": 80 + } + } + }, + "LastName": { + "target": "com.amazonaws.partnercentralselling#Name", + "traits": { + "smithy.api#documentation": "

The contact's last name associated with the Opportunity.\n

", + "smithy.api#length": { + "max": 80 + } + } + }, + "BusinessTitle": { + "target": "com.amazonaws.partnercentralselling#JobTitle", + "traits": { + "smithy.api#documentation": "

The partner contact's title (job title or role) associated with the Opportunity.\n

" + } + }, + "Phone": { + "target": "com.amazonaws.partnercentralselling#PhoneNumber", + "traits": { + "smithy.api#documentation": "

The contact's phone number associated with the Opportunity.\n

" + } + } + }, + "traits": { + "smithy.api#documentation": "

An object that contains a Customer Partner's contact details.\n

" + } + }, + "com.amazonaws.partnercentralselling#CountryCode": { + "type": "enum", + "members": { + "US": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "US" + } + }, + "AF": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AF" + } + }, + "AX": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AX" + } + }, + "AL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AL" + } + }, + "DZ": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DZ" + } + }, + "AS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AS" + } + }, + "AD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AD" + } + }, + "AO": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AO" + } + }, + "AI": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AI" + } + }, + "AQ": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AQ" + } + }, + "AG": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AG" + } + }, + "AR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AR" + } + }, + "AM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AM" + } + }, + "AW": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AW" + } + }, + "AU": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AU" + } + }, + "AT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AT" + } + }, + "AZ": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AZ" + } + }, + "BS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BS" + } + }, + "BH": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BH" + } + }, + "BD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BD" + } + }, + "BB": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BB" + } + }, + "BY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BY" + } + }, + "BE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BE" + } + }, + "BZ": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BZ" + } + }, + "BJ": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BJ" + } + }, + "BM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BM" + } + }, + "BT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BT" + } + }, + "BO": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BO" + } + }, + "BQ": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BQ" + } + }, + "BA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BA" + } + }, + "BW": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BW" + } + }, + "BV": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BV" + } + }, + "BR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BR" + } + }, + "IO": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IO" + } + }, + "BN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BN" + } + }, + "BG": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BG" + } + }, + "BF": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BF" + } + }, + "BI": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BI" + } + }, + "KH": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "KH" + } + }, + "CM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CM" + } + }, + "CA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CA" + } + }, + "CV": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CV" + } + }, + "KY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "KY" + } + }, + "CF": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CF" + } + }, + "TD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TD" + } + }, + "CL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CL" + } + }, + "CN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CN" + } + }, + "CX": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CX" + } + }, + "CC": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CC" + } + }, + "CO": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CO" + } + }, + "KM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "KM" + } + }, + "CG": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CG" + } + }, + "CK": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CK" + } + }, + "CR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CR" + } + }, + "CI": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CI" + } + }, + "HR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "HR" + } + }, + "CU": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CU" + } + }, + "CW": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CW" + } + }, + "CY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CY" + } + }, + "CZ": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CZ" + } + }, + "CD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CD" + } + }, + "DK": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DK" + } + }, + "DJ": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DJ" + } + }, + "DM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DM" + } + }, + "DO": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DO" + } + }, + "EC": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EC" + } + }, + "EG": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EG" + } + }, + "SV": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SV" + } + }, + "GQ": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GQ" + } + }, + "ER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ER" + } + }, + "EE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EE" + } + }, + "ET": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ET" + } + }, + "FK": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FK" + } + }, + "FO": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FO" + } + }, + "FJ": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FJ" + } + }, + "FI": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FI" + } + }, + "FR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FR" + } + }, + "GF": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GF" + } + }, + "PF": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PF" + } + }, + "TF": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TF" + } + }, + "GA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GA" + } + }, + "GM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GM" + } + }, + "GE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GE" + } + }, + "DE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DE" + } + }, + "GH": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GH" + } + }, + "GI": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GI" + } + }, + "GR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GR" + } + }, + "GL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GL" + } + }, + "GD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GD" + } + }, + "GP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GP" + } + }, + "GU": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GU" + } + }, + "GT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GT" + } + }, + "GG": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GG" + } + }, + "GN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GN" + } + }, + "GW": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GW" + } + }, + "GY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GY" + } + }, + "HT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "HT" + } + }, + "HM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "HM" + } + }, + "VA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "VA" + } + }, + "HN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "HN" + } + }, + "HK": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "HK" + } + }, + "HU": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "HU" + } + }, + "IS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IS" + } + }, + "IN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IN" + } + }, + "ID": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ID" + } + }, + "IR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IR" + } + }, + "IQ": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IQ" + } + }, + "IE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IE" + } + }, + "IM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IM" + } + }, + "IL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IL" + } + }, + "IT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IT" + } + }, + "JM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "JM" + } + }, + "JP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "JP" + } + }, + "JE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "JE" + } + }, + "JO": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "JO" + } + }, + "KZ": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "KZ" + } + }, + "KE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "KE" + } + }, + "KI": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "KI" + } + }, + "KR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "KR" + } + }, + "KW": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "KW" + } + }, + "KG": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "KG" + } + }, + "LA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LA" + } + }, + "LV": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LV" + } + }, + "LB": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LB" + } + }, + "LS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LS" + } + }, + "LR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LR" + } + }, + "LY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LY" + } + }, + "LI": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LI" + } + }, + "LT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LT" + } + }, + "LU": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LU" + } + }, + "MO": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MO" + } + }, + "MK": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MK" + } + }, + "MG": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MG" + } + }, + "MW": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MW" + } + }, + "MY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MY" + } + }, + "MV": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MV" + } + }, + "ML": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ML" + } + }, + "MT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MT" + } + }, + "MH": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MH" + } + }, + "MQ": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MQ" + } + }, + "MR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MR" + } + }, + "MU": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MU" + } + }, + "YT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "YT" + } + }, + "MX": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MX" + } + }, + "FM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FM" + } + }, + "MD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MD" + } + }, + "MC": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MC" + } + }, + "MN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MN" + } + }, + "ME": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ME" + } + }, + "MS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MS" + } + }, + "MA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MA" + } + }, + "MZ": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MZ" + } + }, + "MM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MM" + } + }, + "NA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NA" + } + }, + "NR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NR" + } + }, + "NP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NP" + } + }, + "NL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NL" + } + }, + "AN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AN" + } + }, + "NC": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NC" + } + }, + "NZ": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NZ" + } + }, + "NI": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NI" + } + }, + "NE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NE" + } + }, + "NG": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NG" + } + }, + "NU": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NU" + } + }, + "NF": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NF" + } + }, + "MP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MP" + } + }, + "NO": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NO" + } + }, + "OM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "OM" + } + }, + "PK": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PK" + } + }, + "PW": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PW" + } + }, + "PS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PS" + } + }, + "PA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PA" + } + }, + "PG": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PG" + } + }, + "PY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PY" + } + }, + "PE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PE" + } + }, + "PH": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PH" + } + }, + "PN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PN" + } + }, + "PL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PL" + } + }, + "PT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PT" + } + }, + "PR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PR" + } + }, + "QA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "QA" + } + }, + "RE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "RE" + } + }, + "RO": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "RO" + } + }, + "RU": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "RU" + } + }, + "RW": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "RW" + } + }, + "BL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BL" + } + }, + "SH": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SH" + } + }, + "KN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "KN" + } + }, + "LC": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LC" + } + }, + "MF": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MF" + } + }, + "PM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PM" + } + }, + "VC": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "VC" + } + }, + "WS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "WS" + } + }, + "SM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SM" + } + }, + "ST": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ST" + } + }, + "SA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SA" + } + }, + "SN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SN" + } + }, + "RS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "RS" + } + }, + "SC": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SC" + } + }, + "SL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SL" + } + }, + "SG": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SG" + } + }, + "SX": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SX" + } + }, + "SK": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SK" + } + }, + "SI": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SI" + } + }, + "SB": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SB" + } + }, + "SO": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SO" + } + }, + "ZA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ZA" + } + }, + "GS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GS" + } + }, + "SS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SS" + } + }, + "ES": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ES" + } + }, + "LK": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LK" + } + }, + "SD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SD" + } + }, + "SR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SR" + } + }, + "SJ": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SJ" + } + }, + "SZ": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SZ" + } + }, + "SE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SE" + } + }, + "CH": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CH" + } + }, + "SY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SY" + } + }, + "TW": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TW" + } + }, + "TJ": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TJ" + } + }, + "TZ": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TZ" + } + }, + "TH": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TH" + } + }, + "TL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TL" + } + }, + "TG": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TG" + } + }, + "TK": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TK" + } + }, + "TO": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TO" + } + }, + "TT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TT" + } + }, + "TN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TN" + } + }, + "TR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TR" + } + }, + "TM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TM" + } + }, + "TC": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TC" + } + }, + "TV": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TV" + } + }, + "UG": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "UG" + } + }, + "UA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "UA" + } + }, + "AE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AE" + } + }, + "GB": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GB" + } + }, + "UM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "UM" + } + }, + "UY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "UY" + } + }, + "UZ": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "UZ" + } + }, + "VU": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "VU" + } + }, + "VE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "VE" + } + }, + "VN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "VN" + } + }, + "VG": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "VG" + } + }, + "VI": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "VI" + } + }, + "WF": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "WF" + } + }, + "EH": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EH" + } + }, + "YE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "YE" + } + }, + "ZM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ZM" + } + }, + "ZW": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ZW" + } + } + }, + "traits": { + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.partnercentralselling#CreateOpportunity": { + "type": "operation", + "input": { + "target": "com.amazonaws.partnercentralselling#CreateOpportunityRequest" + }, + "output": { + "target": "com.amazonaws.partnercentralselling#CreateOpportunityResponse" + }, + "errors": [ + { + "target": "com.amazonaws.partnercentralselling#AccessDeniedException" + }, + { + "target": "com.amazonaws.partnercentralselling#ConflictException" + }, + { + "target": "com.amazonaws.partnercentralselling#InternalServerException" + }, + { + "target": "com.amazonaws.partnercentralselling#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.partnercentralselling#ThrottlingException" + }, + { + "target": "com.amazonaws.partnercentralselling#ValidationException" + } + ], + "traits": { + "aws.iam#conditionKeys": [ + "partnercentral:Catalog" + ], + "aws.iam#iamAction": { + "documentation": "Grants permission to create new Opportunities on AWS Partner Central" + }, + "smithy.api#documentation": "

\n Creates an Opportunity record in Partner Central. Use this operation to create\n a potential business opportunity intended to be submitted to Amazon Web Services. Creating an opportunity sets its Lifecycle.ReviewStatus to\n Pending Submission.\n

\n

\n To fully submit an opportunity, follow these steps:\n

\n
    \n
  1. \n

    To create the opportunity, use CreateOpportunity.

    \n
  2. \n
  3. \n

    To associate a solution with the opportunity, use AssociateOpportunity.

    \n
  4. \n
  5. \n

    To submit the opportunity, use SubmitOpportunity.

    \n
  6. \n
\n

\n After submission, you can't edit the opportunity until the review is complete. However, opportunities in the\n Pending Submission state still need all details completed. You can update\n the opportunity while it's in the Pending Submission state.\n

\n

\n There's a set of mandatory fields required to create opportunities, but consider providing optional fields to\n enrich the opportunity record.\n

", + "smithy.api#http": { + "method": "POST", + "uri": "/CreateOpportunity", + "code": 200 + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.partnercentralselling#CreateOpportunityRequest": { + "type": "structure", + "members": { + "Catalog": { + "target": "com.amazonaws.partnercentralselling#CatalogIdentifier", + "traits": { + "smithy.api#documentation": "

\n Specifies the catalog associated with the request. This field takes a string value from a predefined list:\n AWS or Sandbox. The catalog determines which environment the opportunity\n is created in. Use AWS to create opportunities in the Amazon Web Services catalog,\n and Sandbox to test in a secure and isolated environment.\n

", + "smithy.api#required": {} + } + }, + "PrimaryNeedsFromAws": { + "target": "com.amazonaws.partnercentralselling#PrimaryNeedsFromAws", + "traits": { + "smithy.api#documentation": "

\n Identifies the type of support the partner needs from Amazon Web Services.\n

\n

\n Valid values:\n

\n " + } + }, + "NationalSecurity": { + "target": "com.amazonaws.partnercentralselling#NationalSecurity", + "traits": { + "smithy.api#documentation": "

Indicates whether the Opportunity pertains to a national security project. This field must be set to true only when the customer's industry is Government. Additional privacy and security measures apply during the review and management process for opportunities marked as NationalSecurity.

" + } + }, + "PartnerOpportunityIdentifier": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

\n Specifies the opportunity's unique identifier in the partner's CRM system. This value is essential\n to track and reconcile because it's included in the outbound payload sent back to the partner.\n

\n

\n This field allows partners to link an opportunity to their CRM, to ensure seamless integration and accurate\n synchronization between the Partner Central API and the partner's internal systems.\n

", + "smithy.api#length": { + "max": 64 + } + } + }, + "Customer": { + "target": "com.amazonaws.partnercentralselling#Customer", + "traits": { + "smithy.api#documentation": "

Specifies customer details associated with the Opportunity.\n

" + } + }, + "Project": { + "target": "com.amazonaws.partnercentralselling#Project", + "traits": { + "smithy.api#documentation": "

An object that contains project details for the\n Opportunity.\n

" + } + }, + "OpportunityType": { + "target": "com.amazonaws.partnercentralselling#OpportunityType", + "traits": { + "smithy.api#documentation": "

\n Specifies the opportunity type as a renewal, new, or expansion.\n

\n

\n Opportunity types:\n

\n " + } + }, + "Marketing": { + "target": "com.amazonaws.partnercentralselling#Marketing", + "traits": { + "smithy.api#documentation": "

This object contains marketing details and is optional for an opportunity.

" + } + }, + "SoftwareRevenue": { + "target": "com.amazonaws.partnercentralselling#SoftwareRevenue", + "traits": { + "smithy.api#documentation": "

Specifies details of a customer's procurement terms. Required only for partners in eligible programs.

" + } + }, + "ClientToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

\n Required to be unique, and should be unchanging, it can be randomly generated or a meaningful string.\n

\n

\n Default: None\n

\n

\n Best practice: To ensure uniqueness and avoid collisions, we recommend you use a UUID (Universally Unique Identifier) as the ClientToken. You can use standard libraries available in most programming languages to generated this. If you use the same client token, the API throws this error: \"Conflicting client token submitted for a new request body\".\n

", + "smithy.api#idempotencyToken": {}, + "smithy.api#length": { + "min": 1 + }, + "smithy.api#required": {} + } + }, + "LifeCycle": { + "target": "com.amazonaws.partnercentralselling#LifeCycle", + "traits": { + "smithy.api#documentation": "

An object that contains lifecycle details for the Opportunity.\n

" + } + }, + "Origin": { + "target": "com.amazonaws.partnercentralselling#OpportunityOrigin", + "traits": { + "smithy.api#documentation": "

\n Specifies the origin of the opportunity, indicating if it was sourced from Amazon Web Services or the partner.\n For all opportunities created with Catalog: AWS, this field must only be Partner Referral.\n However, when using Catalog: Sandbox, you can set this field to AWS Referral\n to simulate Amazon Web Services referral creation. This allows Amazon Web Services-originated flows testing in the sandbox catalog.\n

" + } + }, + "OpportunityTeam": { + "target": "com.amazonaws.partnercentralselling#PartnerOpportunityTeamMembersList", + "traits": { + "smithy.api#documentation": "

Represents the internal team handling the opportunity. Specify the members involved in collaborating on this opportunity within the partner's organization.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.partnercentralselling#CreateOpportunityResponse": { + "type": "structure", + "members": { + "Id": { + "target": "com.amazonaws.partnercentralselling#OpportunityIdentifier", + "traits": { + "smithy.api#documentation": "

\n Read-only, system-generated Opportunity unique identifier. Amazon Web Services creates this identifier, and it's\n used for all subsequent actions on the opportunity, such as updates, associations, and submissions. It ensures\n that each opportunity can be accurately tracked and managed within the system.\n

", + "smithy.api#required": {} + } + }, + "PartnerOpportunityIdentifier": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Specifies the opportunity's unique identifier in the partner's CRM system. This value is essential to\n track and reconcile because it's included in the outbound payload sent back to the partner.\n

" + } + }, + "LastModifiedDate": { + "target": "com.amazonaws.partnercentralselling#DateTime", + "traits": { + "smithy.api#documentation": "

\n DateTime\n when the opportunity was last modified. When the Opportunity is created, its value is equal to\n CreatedDate.\n

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.partnercentralselling#CurrencyCode": { + "type": "enum", + "members": { + "USD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "USD" + } + }, + "EUR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EUR" + } + }, + "GBP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GBP" + } + }, + "AUD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AUD" + } + }, + "CAD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CAD" + } + }, + "CNY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CNY" + } + }, + "NZD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NZD" + } + }, + "INR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "INR" + } + }, + "JPY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "JPY" + } + }, + "CHF": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CHF" + } + }, + "SEK": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SEK" + } + }, + "AED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AED" + } + }, + "AFN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AFN" + } + }, + "ALL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ALL" + } + }, + "AMD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AMD" + } + }, + "ANG": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ANG" + } + }, + "AOA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AOA" + } + }, + "ARS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ARS" + } + }, + "AWG": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWG" + } + }, + "AZN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AZN" + } + }, + "BAM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BAM" + } + }, + "BBD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BBD" + } + }, + "BDT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BDT" + } + }, + "BGN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BGN" + } + }, + "BHD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BHD" + } + }, + "BIF": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BIF" + } + }, + "BMD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BMD" + } + }, + "BND": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BND" + } + }, + "BOB": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BOB" + } + }, + "BOV": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BOV" + } + }, + "BRL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BRL" + } + }, + "BSD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BSD" + } + }, + "BTN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BTN" + } + }, + "BWP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BWP" + } + }, + "BYN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BYN" + } + }, + "BZD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BZD" + } + }, + "CDF": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CDF" + } + }, + "CHE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CHE" + } + }, + "CHW": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CHW" + } + }, + "CLF": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CLF" + } + }, + "CLP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CLP" + } + }, + "COP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "COP" + } + }, + "COU": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "COU" + } + }, + "CRC": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CRC" + } + }, + "CUC": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CUC" + } + }, + "CUP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CUP" + } + }, + "CVE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CVE" + } + }, + "CZK": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CZK" + } + }, + "DJF": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DJF" + } + }, + "DKK": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DKK" + } + }, + "DOP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DOP" + } + }, + "DZD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DZD" + } + }, + "EGP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EGP" + } + }, + "ERN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ERN" + } + }, + "ETB": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ETB" + } + }, + "FJD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FJD" + } + }, + "FKP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FKP" + } + }, + "GEL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GEL" + } + }, + "GHS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GHS" + } + }, + "GIP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GIP" + } + }, + "GMD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GMD" + } + }, + "GNF": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GNF" + } + }, + "GTQ": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GTQ" + } + }, + "GYD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GYD" + } + }, + "HKD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "HKD" + } + }, + "HNL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "HNL" + } + }, + "HRK": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "HRK" + } + }, + "HTG": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "HTG" + } + }, + "HUF": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "HUF" + } + }, + "IDR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IDR" + } + }, + "ILS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ILS" + } + }, + "IQD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IQD" + } + }, + "IRR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IRR" + } + }, + "ISK": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ISK" + } + }, + "JMD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "JMD" + } + }, + "JOD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "JOD" + } + }, + "KES": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "KES" + } + }, + "KGS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "KGS" + } + }, + "KHR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "KHR" + } + }, + "KMF": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "KMF" + } + }, + "KPW": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "KPW" + } + }, + "KRW": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "KRW" + } + }, + "KWD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "KWD" + } + }, + "KYD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "KYD" + } + }, + "KZT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "KZT" + } + }, + "LAK": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LAK" + } + }, + "LBP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LBP" + } + }, + "LKR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LKR" + } + }, + "LRD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LRD" + } + }, + "LSL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LSL" + } + }, + "LYD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LYD" + } + }, + "MAD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MAD" + } + }, + "MDL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MDL" + } + }, + "MGA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MGA" + } + }, + "MKD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MKD" + } + }, + "MMK": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MMK" + } + }, + "MNT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MNT" + } + }, + "MOP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MOP" + } + }, + "MRU": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MRU" + } + }, + "MUR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MUR" + } + }, + "MVR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MVR" + } + }, + "MWK": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MWK" + } + }, + "MXN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MXN" + } + }, + "MXV": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MXV" + } + }, + "MYR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MYR" + } + }, + "MZN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MZN" + } + }, + "NAD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NAD" + } + }, + "NGN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NGN" + } + }, + "NIO": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NIO" + } + }, + "NOK": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NOK" + } + }, + "NPR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NPR" + } + }, + "OMR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "OMR" + } + }, + "PAB": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PAB" + } + }, + "PEN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PEN" + } + }, + "PGK": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PGK" + } + }, + "PHP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PHP" + } + }, + "PKR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PKR" + } + }, + "PLN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PLN" + } + }, + "PYG": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PYG" + } + }, + "QAR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "QAR" + } + }, + "RON": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "RON" + } + }, + "RSD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "RSD" + } + }, + "RUB": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "RUB" + } + }, + "RWF": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "RWF" + } + }, + "SAR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SAR" + } + }, + "SBD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SBD" + } + }, + "SCR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SCR" + } + }, + "SDG": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SDG" + } + }, + "SGD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SGD" + } + }, + "SHP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SHP" + } + }, + "SLL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SLL" + } + }, + "SOS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SOS" + } + }, + "SRD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SRD" + } + }, + "SSP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SSP" + } + }, + "STN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "STN" + } + }, + "SVC": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SVC" + } + }, + "SYP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SYP" + } + }, + "SZL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SZL" + } + }, + "THB": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "THB" + } + }, + "TJS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TJS" + } + }, + "TMT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TMT" + } + }, + "TND": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TND" + } + }, + "TOP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TOP" + } + }, + "TRY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TRY" + } + }, + "TTD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TTD" + } + }, + "TWD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TWD" + } + }, + "TZS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TZS" + } + }, + "UAH": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "UAH" + } + }, + "UGX": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "UGX" + } + }, + "USN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "USN" + } + }, + "UYI": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "UYI" + } + }, + "UYU": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "UYU" + } + }, + "UZS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "UZS" + } + }, + "VEF": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "VEF" + } + }, + "VND": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "VND" + } + }, + "VUV": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "VUV" + } + }, + "WST": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "WST" + } + }, + "XAF": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "XAF" + } + }, + "XCD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "XCD" + } + }, + "XDR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "XDR" + } + }, + "XOF": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "XOF" + } + }, + "XPF": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "XPF" + } + }, + "XSU": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "XSU" + } + }, + "XUA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "XUA" + } + }, + "YER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "YER" + } + }, + "ZAR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ZAR" + } + }, + "ZMW": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ZMW" + } + }, + "ZWL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ZWL" + } + } + } + }, + "com.amazonaws.partnercentralselling#Customer": { + "type": "structure", + "members": { + "Account": { + "target": "com.amazonaws.partnercentralselling#Account", + "traits": { + "smithy.api#documentation": "

An object that contains the customer's account details.

" + } + }, + "Contacts": { + "target": "com.amazonaws.partnercentralselling#CustomerContactsList", + "traits": { + "smithy.api#documentation": "

Represents the contact details for individuals associated with the customer of the Opportunity. This field captures relevant contacts, including decision-makers, influencers, and technical stakeholders within the customer organization. These contacts are key to progressing the opportunity.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

An object that contains the customer's Account and Contact.\n

" + } + }, + "com.amazonaws.partnercentralselling#CustomerContactsList": { + "type": "list", + "member": { + "target": "com.amazonaws.partnercentralselling#Contact" + } + }, + "com.amazonaws.partnercentralselling#CustomerSummary": { + "type": "structure", + "members": { + "Account": { + "target": "com.amazonaws.partnercentralselling#AccountSummary", + "traits": { + "smithy.api#documentation": "

An object that contains a customer's account details.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

An object that contains a Customer object's subset of fields.\n

" + } + }, + "com.amazonaws.partnercentralselling#Date": { + "type": "string", + "traits": { + "smithy.api#pattern": "^[1-9][0-9]{3}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])$" + } + }, + "com.amazonaws.partnercentralselling#DateTime": { + "type": "timestamp", + "traits": { + "smithy.api#timestampFormat": "date-time" + } + }, + "com.amazonaws.partnercentralselling#DeliveryModel": { + "type": "enum", + "members": { + "SAAS_OR_PAAS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SaaS or PaaS" + } + }, + "BYOL_OR_AMI": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BYOL or AMI" + } + }, + "MANAGED_SERVICES": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Managed Services" + } + }, + "PROFESSIONAL_SERVICES": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Professional Services" + } + }, + "RESELL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Resell" + } + }, + "OTHER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Other" + } + } + } + }, + "com.amazonaws.partnercentralselling#DeliveryModels": { + "type": "list", + "member": { + "target": "com.amazonaws.partnercentralselling#DeliveryModel" + } + }, + "com.amazonaws.partnercentralselling#DisassociateOpportunity": { + "type": "operation", + "input": { + "target": "com.amazonaws.partnercentralselling#DisassociateOpportunityRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "errors": [ + { + "target": "com.amazonaws.partnercentralselling#AccessDeniedException" + }, + { + "target": "com.amazonaws.partnercentralselling#InternalServerException" + }, + { + "target": "com.amazonaws.partnercentralselling#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.partnercentralselling#ThrottlingException" + }, + { + "target": "com.amazonaws.partnercentralselling#ValidationException" + } + ], + "traits": { + "aws.iam#conditionKeys": [ + "partnercentral:RelatedEntityType", + "partnercentral:Catalog" + ], + "aws.iam#iamAction": { + "documentation": "Grants permission to disassociate Opportunities on AWS Partner Central from other entities" + }, + "smithy.api#documentation": "

\n Allows you to remove an existing association between an Opportunity and related entities such as a Partner Solution, Amazon Web Services product, or an Amazon Web Services Marketplace offer.\n This operation is the counterpart to AssociateOpportunity, and it provides flexibility to manage\n associations as business needs change.\n

\n

\n Use this operation to update the associations of an Opportunity due to changes in the related entities,\n or if an association was made in error. Ensuring accurate associations helps maintain clarity and accuracy to track\n and manage business opportunities. When you replace an entity, first attach the new entity and then disassociate the\n one to be removed, especially if it's the last remaining related entity that's required.\n

", + "smithy.api#http": { + "method": "POST", + "uri": "/DisassociateOpportunity", + "code": 200 + } + } + }, + "com.amazonaws.partnercentralselling#DisassociateOpportunityRequest": { + "type": "structure", + "members": { + "Catalog": { + "target": "com.amazonaws.partnercentralselling#CatalogIdentifier", + "traits": { + "smithy.api#documentation": "

\n Specifies the catalog associated with the request. This field takes a string value from a predefined list:\n AWS or Sandbox. The catalog determines which environment the opportunity\n disassociation is made in. Use AWS to disassociate opportunities in the Amazon Web Services catalog,\n and Sandbox to test in a secure and isolated environment.\n

", + "smithy.api#required": {} + } + }, + "OpportunityIdentifier": { + "target": "com.amazonaws.partnercentralselling#OpportunityIdentifier", + "traits": { + "smithy.api#documentation": "

The opportunity's unique identifier for when you want to disassociate it from related entities. This identifier\n is crucial to ensure the correct opportunity is updated, especially in environments with numerous\n opportunities.\n

\n

Validation: Ensure that the identifier provided corresponds to an existing opportunity in the Amazon Web Services system because\n incorrect identifiers result in an error and no changes are made.\n

", + "smithy.api#required": {}, + "smithy.api#resourceIdentifier": "Identifier" + } + }, + "RelatedEntityType": { + "target": "com.amazonaws.partnercentralselling#RelatedEntityType", + "traits": { + "smithy.api#documentation": "

The type of the entity that you're disassociating from the opportunity. When you specify the entity type, it helps\n the system correctly process the disassociation request and ensures that the right connections are removed.\n

\n

Examples of entity types include Partner Solution, Amazon Web Services product, and Amazon Web Services Marketplace offer. Ensure that the value\n matches one of the expected entity types.\n

\n

Validation: Provide a valid entity type to ensure successful disassociation. Invalid or incorrect entity\n types result in an error.\n

", + "smithy.api#required": {} + } + }, + "RelatedEntityIdentifier": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The related entity's identifier that you want to disassociate from the opportunity. Depending on the\n type of entity, this could be a simple identifier or an Amazon Resource Name (ARN) for entities managed\n through Amazon Web Services Marketplace.\n

\n

For Amazon Web Services Marketplace entities, use the Amazon Web Services Marketplace API to obtain the necessary ARNs.\n For guidance on retrieving these ARNs, refer to \n Amazon Web Services Marketplace Catalog API .\n

\n

Validation: Ensure the identifier or ARN is valid and corresponds to an existing related entity.\n An incorrect or invalid identifier results in an error.\n

", + "smithy.api#length": { + "min": 1, + "max": 255 + }, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.partnercentralselling#DunsNumber": { + "type": "string", + "traits": { + "smithy.api#pattern": "^[0-9]{9}$", + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.partnercentralselling#Email": { + "type": "string", + "traits": { + "smithy.api#length": { + "max": 80 + }, + "smithy.api#pattern": "^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$", + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.partnercentralselling#EngagementByAcceptingInvitationTask": { + "type": "resource", + "identifiers": { + "Catalog": { + "target": "com.amazonaws.partnercentralselling#CatalogIdentifier" + }, + "TaskId": { + "target": "com.amazonaws.partnercentralselling#TaskIdentifier" + } + }, + "create": { + "target": "com.amazonaws.partnercentralselling#StartEngagementByAcceptingInvitationTask" + }, + "traits": { + "aws.api#arn": { + "template": "catalog/{Catalog}/engagement-by-accepting-invitation-task/{TaskId}", + "noAccount": true + }, + "aws.iam#disableConditionKeyInference": {}, + "aws.iam#iamResource": { + "name": "engagement-by-accepting-invitation-task", + "relativeDocumentation": "/working-with-tasks.html" + }, + "smithy.api#documentation": "Represents a task that starts an Engagement by accepting an Engagement Invitation in AWS Partner Central" + } + }, + "com.amazonaws.partnercentralselling#EngagementCustomer": { + "type": "structure", + "members": { + "Industry": { + "target": "com.amazonaws.partnercentralselling#Industry", + "traits": { + "smithy.api#documentation": "

Specifies the industry to which the customer’s company belongs. This field helps categorize the opportunity based on the customer’s business sector.

", + "smithy.api#required": {} + } + }, + "CompanyName": { + "target": "com.amazonaws.partnercentralselling#CompanyName", + "traits": { + "smithy.api#documentation": "

Represents the name of the customer’s company associated with the Engagement Invitation. This field is used to identify the customer.

", + "smithy.api#required": {} + } + }, + "WebsiteUrl": { + "target": "com.amazonaws.partnercentralselling#CompanyWebsiteUrl", + "traits": { + "smithy.api#documentation": "

Provides the website URL of the customer’s company. This field helps partners verify the legitimacy and size of the customer organization.

", + "smithy.api#required": {} + } + }, + "CountryCode": { + "target": "com.amazonaws.partnercentralselling#CountryCode", + "traits": { + "smithy.api#documentation": "

Indicates the country in which the customer’s company operates. This field is useful for understanding regional requirements or compliance needs.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains details about the customer associated with the Engagement Invitation, including key company information and industry.

" + } + }, + "com.amazonaws.partnercentralselling#EngagementCustomerBusinessProblem": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 20, + "max": 255 + }, + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.partnercentralselling#EngagementFromOpportunityTask": { + "type": "resource", + "identifiers": { + "Catalog": { + "target": "com.amazonaws.partnercentralselling#CatalogIdentifier" + }, + "TaskId": { + "target": "com.amazonaws.partnercentralselling#TaskIdentifier" + } + }, + "create": { + "target": "com.amazonaws.partnercentralselling#StartEngagementFromOpportunityTask" + }, + "traits": { + "aws.api#arn": { + "template": "catalog/{Catalog}/engagement-from-opportunity-task/{TaskId}", + "noAccount": true + }, + "aws.iam#disableConditionKeyInference": {}, + "aws.iam#iamResource": { + "name": "engagement-from-opportunity-task", + "relativeDocumentation": "/working-with-tasks.html" + }, + "smithy.api#documentation": "Represents a task that starts an Engagement from an Opportunity in AWS Partner Central" + } + }, + "com.amazonaws.partnercentralselling#EngagementInvitation": { + "type": "resource", + "identifiers": { + "Identifier": { + "target": "com.amazonaws.partnercentralselling#EngagementInvitationArnOrIdentifier" + }, + "Catalog": { + "target": "com.amazonaws.partnercentralselling#CatalogIdentifier" + } + }, + "read": { + "target": "com.amazonaws.partnercentralselling#GetEngagementInvitation" + }, + "list": { + "target": "com.amazonaws.partnercentralselling#ListEngagementInvitations" + }, + "operations": [ + { + "target": "com.amazonaws.partnercentralselling#RejectEngagementInvitation" + } + ], + "traits": { + "aws.api#arn": { + "template": "catalog/{Catalog}/engagement-invitation/{Identifier}", + "noAccount": true + }, + "aws.iam#disableConditionKeyInference": {}, + "aws.iam#iamResource": { + "name": "engagement-invitation", + "relativeDocumentation": "/working-with-engagement-invitations.html" + }, + "smithy.api#documentation": "Represents an Engagement Invitation that allows to join an Engagement on AWS Partner Central" + } + }, + "com.amazonaws.partnercentralselling#EngagementInvitationArnOrIdentifier": { + "type": "string", + "traits": { + "aws.api#arnReference": { + "resource": "com.amazon.partnerintegrationapi.operation#EngagementInvitation" + }, + "smithy.api#length": { + "min": 1, + "max": 255 + }, + "smithy.api#pattern": "^(arn:.*|engi-[0-9a-z]{13})$" + } + }, + "com.amazonaws.partnercentralselling#EngagementInvitationIdentifier": { + "type": "string", + "traits": { + "smithy.api#pattern": "^engi-[0-9,a-z]{13}$" + } + }, + "com.amazonaws.partnercentralselling#EngagementInvitationPayloadType": { + "type": "enum", + "members": { + "OPPORTUNITY_INVITATION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "OpportunityInvitation" + } + } + } + }, + "com.amazonaws.partnercentralselling#EngagementInvitationSummaries": { + "type": "list", + "member": { + "target": "com.amazonaws.partnercentralselling#EngagementInvitationSummary" + } + }, + "com.amazonaws.partnercentralselling#EngagementInvitationSummary": { + "type": "structure", + "members": { + "Arn": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Engagement Invitation. The ARN is a unique identifier that allows partners to reference the invitation in their system and manage its lifecycle.

" + } + }, + "PayloadType": { + "target": "com.amazonaws.partnercentralselling#EngagementInvitationPayloadType", + "traits": { + "smithy.api#documentation": "

Describes the type of payload associated with the Engagement Invitation, such as Opportunity or MarketplaceOffer. This helps partners understand the nature of the engagement request from AWS.

" + } + }, + "Id": { + "target": "com.amazonaws.partnercentralselling#EngagementInvitationArnOrIdentifier", + "traits": { + "smithy.api#documentation": "

Represents the unique identifier of the Engagement Invitation. This identifier is used to track the invitation and to manage responses like acceptance or rejection.

", + "smithy.api#required": {} + } + }, + "EngagementTitle": { + "target": "com.amazonaws.partnercentralselling#EngagementTitle", + "traits": { + "smithy.api#documentation": "

Provides a short title or description of the Engagement Invitation. This title helps partners quickly identify and differentiate between multiple engagement opportunities.

" + } + }, + "Status": { + "target": "com.amazonaws.partnercentralselling#InvitationStatus", + "traits": { + "smithy.api#documentation": "

Represents the current status of the Engagement Invitation, such as Pending, Accepted, or Rejected. The status helps track the progress and response to the invitation.

" + } + }, + "InvitationDate": { + "target": "com.amazonaws.partnercentralselling#DateTime", + "traits": { + "smithy.api#documentation": "

Indicates the date when the Engagement Invitation was sent to the partner. This provides context for when the opportunity was shared and helps in tracking the timeline for engagement.

" + } + }, + "ExpirationDate": { + "target": "com.amazonaws.partnercentralselling#DateTime", + "traits": { + "smithy.api#documentation": "

Indicates the date and time when the Engagement Invitation will expire. After this date, the invitation can no longer be accepted, and the opportunity will no longer be available for the partner to engage.

" + } + }, + "SenderAwsAccountId": { + "target": "com.amazonaws.partnercentralselling#AwsAccountIdOrLabel", + "traits": { + "smithy.api#documentation": "

Specifies the AWS account ID of the sender who initiated the Engagement Invitation. This allows the partner to identify the AWS entity or representative responsible for sharing the opportunity.

" + } + }, + "SenderCompanyName": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Indicates the name of the company or AWS division that sent the Engagement Invitation. This information is useful for partners to know which part of AWS is requesting engagement.

", + "smithy.api#length": { + "max": 120 + } + } + }, + "Receiver": { + "target": "com.amazonaws.partnercentralselling#Receiver", + "traits": { + "smithy.api#documentation": "

Specifies the partner company or individual that received the Engagement Invitation. This field is important for tracking who the invitation was sent to within the partner organization.

" + } + }, + "Catalog": { + "target": "com.amazonaws.partnercentralselling#CatalogIdentifier", + "traits": { + "smithy.api#documentation": "

Specifies the catalog in which the Engagement Invitation resides. This can be either the AWS or Sandbox catalog, indicating whether the opportunity is live or being tested.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Provides a summarized view of the Engagement Invitation, including key details like the identifier, status, and sender information. This summary helps partners track and manage AWS-originated opportunities.

" + } + }, + "com.amazonaws.partnercentralselling#EngagementInvitationsPayloadType": { + "type": "list", + "member": { + "target": "com.amazonaws.partnercentralselling#EngagementInvitationPayloadType" + } + }, + "com.amazonaws.partnercentralselling#EngagementScore": { + "type": "enum", + "members": { + "HIGH": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "High" + } + }, + "MEDIUM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Medium" + } + }, + "LOW": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Low" + } + } + } + }, + "com.amazonaws.partnercentralselling#EngagementTitle": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 40 + } + } + }, + "com.amazonaws.partnercentralselling#ExpectedCustomerSpend": { + "type": "structure", + "members": { + "Amount": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Represents the estimated monthly revenue that the partner expects to earn from the opportunity. This helps in forecasting financial returns.

", + "smithy.api#pattern": "^(0|([1-9][0-9]{0,30}))(\\.[0-9]{0,2})?$", + "smithy.api#required": {} + } + }, + "CurrencyCode": { + "target": "com.amazonaws.partnercentralselling#CurrencyCode", + "traits": { + "smithy.api#documentation": "

Indicates the currency in which the revenue estimate is provided. This helps in understanding the financial impact across different markets.

", + "smithy.api#pattern": "^USD$", + "smithy.api#required": {} + } + }, + "Frequency": { + "target": "com.amazonaws.partnercentralselling#PaymentFrequency", + "traits": { + "smithy.api#documentation": "

Indicates how frequently the customer is expected to spend the projected amount. This can include values such as Monthly, Quarterly, or Annually. The default value is Monthly, representing recurring monthly spend.

", + "smithy.api#required": {} + } + }, + "TargetCompany": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Specifies the name of the partner company that is expected to generate revenue from the opportunity. This field helps track the partner’s involvement in the opportunity.

", + "smithy.api#length": { + "min": 1, + "max": 80 + }, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Provides an estimate of the revenue that the partner is expected to generate from the opportunity. This information helps partners assess the financial value of the project.

" + } + }, + "com.amazonaws.partnercentralselling#ExpectedCustomerSpendList": { + "type": "list", + "member": { + "target": "com.amazonaws.partnercentralselling#ExpectedCustomerSpend" + }, + "traits": { + "smithy.api#length": { + "min": 1 + } + } + }, + "com.amazonaws.partnercentralselling#FilterIdentifier": { + "type": "list", + "member": { + "target": "com.amazonaws.partnercentralselling#OpportunityIdentifier" + } + }, + "com.amazonaws.partnercentralselling#FilterLifeCycleReviewStatus": { + "type": "list", + "member": { + "target": "com.amazonaws.partnercentralselling#ReviewStatus" + } + }, + "com.amazonaws.partnercentralselling#FilterLifeCycleStage": { + "type": "list", + "member": { + "target": "com.amazonaws.partnercentralselling#Stage" + } + }, + "com.amazonaws.partnercentralselling#FilterStatus": { + "type": "list", + "member": { + "target": "com.amazonaws.partnercentralselling#SolutionStatus" + } + }, + "com.amazonaws.partnercentralselling#GetAwsOpportunitySummary": { + "type": "operation", + "input": { + "target": "com.amazonaws.partnercentralselling#GetAwsOpportunitySummaryRequest" + }, + "output": { + "target": "com.amazonaws.partnercentralselling#GetAwsOpportunitySummaryResponse" + }, + "errors": [ + { + "target": "com.amazonaws.partnercentralselling#AccessDeniedException" + }, + { + "target": "com.amazonaws.partnercentralselling#InternalServerException" + }, + { + "target": "com.amazonaws.partnercentralselling#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.partnercentralselling#ThrottlingException" + }, + { + "target": "com.amazonaws.partnercentralselling#ValidationException" + } + ], + "traits": { + "aws.iam#conditionKeys": [ + "partnercentral:Catalog" + ], + "aws.iam#iamAction": { + "documentation": "Grants permission to retrieve AWS Opportunity Summaries for Opportunities on AWS Partner Central" + }, + "smithy.api#documentation": "

\n Retrieves a summary of an AWS Opportunity. This summary includes high-level details about the opportunity\n sourced from AWS, such as lifecycle information, customer details, and involvement type.\n It is useful for tracking updates on the AWS opportunity corresponding to an opportunity in the partner's account.\n

", + "smithy.api#http": { + "method": "POST", + "uri": "/GetAwsOpportunitySummary", + "code": 200 + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.partnercentralselling#GetAwsOpportunitySummaryRequest": { + "type": "structure", + "members": { + "Catalog": { + "target": "com.amazonaws.partnercentralselling#CatalogIdentifier", + "traits": { + "smithy.api#documentation": "

\n Specifies the catalog in which the AWS Opportunity is located. Accepted values include AWS\n for production opportunities or Sandbox for testing purposes. The catalog determines\n which environment the opportunity data is pulled from.\n

", + "smithy.api#required": {} + } + }, + "RelatedOpportunityIdentifier": { + "target": "com.amazonaws.partnercentralselling#OpportunityIdentifier", + "traits": { + "smithy.api#documentation": "

\n The unique identifier for the related partner opportunity. Use this field to correlate an AWS\n opportunity with its corresponding partner opportunity in your CRM system.\n

", + "smithy.api#required": {}, + "smithy.api#resourceIdentifier": "Identifier" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.partnercentralselling#GetAwsOpportunitySummaryResponse": { + "type": "structure", + "members": { + "Catalog": { + "target": "com.amazonaws.partnercentralselling#CatalogIdentifier", + "traits": { + "smithy.api#documentation": "

\n Specifies the catalog in which the AWS Opportunity exists. This is the environment (e.g., AWS\n or Sandbox) where the opportunity is being managed.\n

", + "smithy.api#required": {} + } + }, + "RelatedOpportunityId": { + "target": "com.amazonaws.partnercentralselling#OpportunityIdentifier", + "traits": { + "smithy.api#documentation": "

\n Provides the unique identifier of the related partner opportunity, allowing partners to link the AWS\n Opportunity to their corresponding opportunity in their CRM system.\n

" + } + }, + "Origin": { + "target": "com.amazonaws.partnercentralselling#OpportunityOrigin", + "traits": { + "smithy.api#documentation": "

\n Specifies whether the AWS Opportunity originated from AWS or the partner. This helps distinguish between\n opportunities that were sourced by AWS and those referred by the partner.\n

" + } + }, + "InvolvementType": { + "target": "com.amazonaws.partnercentralselling#SalesInvolvementType", + "traits": { + "smithy.api#documentation": "

\n Specifies the type of involvement AWS has in the opportunity, such as direct co-sell or advisory support.\n This field helps partners understand the role AWS will play in advancing the opportunity.\n

" + } + }, + "Visibility": { + "target": "com.amazonaws.partnercentralselling#Visibility", + "traits": { + "smithy.api#documentation": "

\n Defines the visibility level for the AWS Opportunity. Use Full visibility for most cases,\n while Limited visibility is reserved for special programs or sensitive opportunities.\n

" + } + }, + "LifeCycle": { + "target": "com.amazonaws.partnercentralselling#AwsOpportunityLifeCycle", + "traits": { + "smithy.api#documentation": "

\n Contains lifecycle information for the AWS Opportunity, including review status, stage, and target close date.\n This field is crucial for partners to monitor the progression of the opportunity.\n

" + } + }, + "OpportunityTeam": { + "target": "com.amazonaws.partnercentralselling#AwsOpportunityTeamMembersList", + "traits": { + "smithy.api#documentation": "

\n Details the AWS Opportunity team, including key members involved in the opportunity. This information\n helps partners know who from AWS is engaged and their roles in the opportunity.\n

" + } + }, + "Insights": { + "target": "com.amazonaws.partnercentralselling#AwsOpportunityInsights", + "traits": { + "smithy.api#documentation": "

\n Provides insights into the AWS Opportunity, including engagement score and recommended actions that AWS suggests\n for the partner.\n

" + } + }, + "InvolvementTypeChangeReason": { + "target": "com.amazonaws.partnercentralselling#InvolvementTypeChangeReason", + "traits": { + "smithy.api#documentation": "

\n Provides a reason for any changes in the involvement type of AWS in the opportunity. This field is used to\n track why the level of AWS engagement has changed from For Visibility Only to Co-sell offering transparency into the partnership dynamics.\n

" + } + }, + "RelatedEntityIds": { + "target": "com.amazonaws.partnercentralselling#AwsOpportunityRelatedEntities", + "traits": { + "smithy.api#documentation": "

\n Lists related entity identifiers, such as AWS products or partner solutions, associated with the AWS\n Opportunity. These identifiers provide additional context and help partners understand which AWS services\n are involved.\n

" + } + }, + "Customer": { + "target": "com.amazonaws.partnercentralselling#AwsOpportunityCustomer", + "traits": { + "smithy.api#documentation": "

\n Provides details about the customer associated with the AWS Opportunity, including account information,\n industry, and other key customer data. These details help partners understand the business context of the\n opportunity.\n

" + } + }, + "Project": { + "target": "com.amazonaws.partnercentralselling#AwsOpportunityProject", + "traits": { + "smithy.api#documentation": "

\n Provides details about the project associated with the AWS Opportunity, including the customer’s business\n problem, expected outcomes, and project scope. This information is crucial for understanding the broader\n context of the opportunity.\n

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.partnercentralselling#GetEngagementInvitation": { + "type": "operation", + "input": { + "target": "com.amazonaws.partnercentralselling#GetEngagementInvitationRequest" + }, + "output": { + "target": "com.amazonaws.partnercentralselling#GetEngagementInvitationResponse" + }, + "errors": [ + { + "target": "com.amazonaws.partnercentralselling#AccessDeniedException" + }, + { + "target": "com.amazonaws.partnercentralselling#InternalServerException" + }, + { + "target": "com.amazonaws.partnercentralselling#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.partnercentralselling#ThrottlingException" + }, + { + "target": "com.amazonaws.partnercentralselling#ValidationException" + } + ], + "traits": { + "aws.iam#conditionKeys": [ + "partnercentral:Catalog" + ], + "aws.iam#iamAction": { + "documentation": "Grants permission to retrieve details of Engagement Invitations on AWS Partner Central" + }, + "smithy.api#documentation": "

Retrieves the details of an engagement invitation shared by AWS with a partner. The information includes key aspects such as the customer, project details, and lifecycle information related to the engagement.

", + "smithy.api#http": { + "method": "POST", + "uri": "/GetEngagementInvitation", + "code": 200 + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.partnercentralselling#GetEngagementInvitationRequest": { + "type": "structure", + "members": { + "Catalog": { + "target": "com.amazonaws.partnercentralselling#CatalogIdentifier", + "traits": { + "smithy.api#documentation": "

Specifies the catalog associated with the request. The field accepts values from the predefined set: AWS for live operations or Sandbox for testing environments.

", + "smithy.api#required": {} + } + }, + "Identifier": { + "target": "com.amazonaws.partnercentralselling#EngagementInvitationArnOrIdentifier", + "traits": { + "smithy.api#documentation": "

Specifies the unique identifier for the engagement invitation being retrieved.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.partnercentralselling#GetEngagementInvitationResponse": { + "type": "structure", + "members": { + "Arn": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) that uniquely identifies the engagement invitation.

" + } + }, + "PayloadType": { + "target": "com.amazonaws.partnercentralselling#EngagementInvitationPayloadType", + "traits": { + "smithy.api#documentation": "

The type of payload contained in the engagement invitation, indicating what data or context the payload covers.

" + } + }, + "Id": { + "target": "com.amazonaws.partnercentralselling#EngagementInvitationArnOrIdentifier", + "traits": { + "smithy.api#documentation": "

Unique identifier assigned to the engagement invitation being retrieved.

", + "smithy.api#required": {} + } + }, + "EngagementTitle": { + "target": "com.amazonaws.partnercentralselling#EngagementTitle", + "traits": { + "smithy.api#documentation": "

The title of the engagement invitation, summarizing the purpose or key objectives of the opportunity shared by AWS.

" + } + }, + "Status": { + "target": "com.amazonaws.partnercentralselling#InvitationStatus", + "traits": { + "smithy.api#documentation": "

The current status of the engagement invitation (e.g., Accepted, Pending, or Rejected).

" + } + }, + "InvitationDate": { + "target": "com.amazonaws.partnercentralselling#DateTime", + "traits": { + "smithy.api#documentation": "

The date when the engagement invitation was sent to the partner.

" + } + }, + "ExpirationDate": { + "target": "com.amazonaws.partnercentralselling#DateTime", + "traits": { + "smithy.api#documentation": "

Indicates the date on which the engagement invitation will expire if not accepted by the partner.

" + } + }, + "SenderAwsAccountId": { + "target": "com.amazonaws.partnercentralselling#AwsAccountIdOrLabel", + "traits": { + "smithy.api#documentation": "

Specifies the AWS Account ID of the sender, which identifies the AWS team responsible for sharing the engagement invitation.

" + } + }, + "SenderCompanyName": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

The name of the AWS organization or team that sent the engagement invitation.

", + "smithy.api#length": { + "max": 120 + } + } + }, + "Receiver": { + "target": "com.amazonaws.partnercentralselling#Receiver", + "traits": { + "smithy.api#documentation": "

Information about the partner organization or team that received the engagement invitation, including contact details and identifiers.

" + } + }, + "Catalog": { + "target": "com.amazonaws.partnercentralselling#CatalogIdentifier", + "traits": { + "smithy.api#documentation": "

Indicates the catalog from which the engagement invitation details are retrieved. This field helps in identifying the appropriate catalog (e.g., AWS or Sandbox) used in the request.

", + "smithy.api#required": {} + } + }, + "RejectionReason": { + "target": "com.amazonaws.partnercentralselling#RejectionReasonString", + "traits": { + "smithy.api#documentation": "

If the engagement invitation was rejected, this field specifies the reason provided by the partner for the rejection.

" + } + }, + "Payload": { + "target": "com.amazonaws.partnercentralselling#Payload", + "traits": { + "smithy.api#documentation": "

Details of the engagement invitation payload, including specific data relevant to the invitation's contents, such as customer information and opportunity insights.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.partnercentralselling#GetOpportunity": { + "type": "operation", + "input": { + "target": "com.amazonaws.partnercentralselling#GetOpportunityRequest" + }, + "output": { + "target": "com.amazonaws.partnercentralselling#GetOpportunityResponse" + }, + "errors": [ + { + "target": "com.amazonaws.partnercentralselling#AccessDeniedException" + }, + { + "target": "com.amazonaws.partnercentralselling#InternalServerException" + }, + { + "target": "com.amazonaws.partnercentralselling#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.partnercentralselling#ThrottlingException" + }, + { + "target": "com.amazonaws.partnercentralselling#ValidationException" + } + ], + "traits": { + "aws.iam#conditionKeys": [ + "partnercentral:Catalog" + ], + "aws.iam#iamAction": { + "documentation": "Grants permission to retrieve details of Opportunities on AWS Partner Central" + }, + "smithy.api#documentation": "

\n Fetches the Opportunity record from Partner Central by a given Identifier.\n

\n

\n Use the ListOpportunities action or the event notification (from Amazon EventBridge) to obtain this identifier.\n

", + "smithy.api#http": { + "method": "POST", + "uri": "/GetOpportunity", + "code": 200 + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.partnercentralselling#GetOpportunityRequest": { + "type": "structure", + "members": { + "Catalog": { + "target": "com.amazonaws.partnercentralselling#CatalogIdentifier", + "traits": { + "smithy.api#documentation": "

\n Specifies the catalog associated with the request. This field takes a string value from a predefined list:\n AWS or Sandbox. The catalog determines which environment the opportunity\n is fetched from. Use AWS to retrieve opportunities in the Amazon Web Services catalog,\n and Sandbox to retrieve opportunities in a secure and isolated testing environment.\n

", + "smithy.api#required": {} + } + }, + "Identifier": { + "target": "com.amazonaws.partnercentralselling#OpportunityIdentifier", + "traits": { + "smithy.api#documentation": "

Read-only, system generated Opportunity unique identifier.\n

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.partnercentralselling#GetOpportunityResponse": { + "type": "structure", + "members": { + "Catalog": { + "target": "com.amazonaws.partnercentralselling#CatalogIdentifier", + "traits": { + "smithy.api#documentation": "

\n Specifies the catalog associated with the request. This field takes a string value from a predefined list:\n AWS or Sandbox. The catalog determines which environment the opportunity\n information is retrieved from. Use AWS to retrieve opportunities in the Amazon Web Services catalog,\n and Sandbox to retrieve opportunities in a secure and isolated testing environment.\n

", + "smithy.api#required": {} + } + }, + "PrimaryNeedsFromAws": { + "target": "com.amazonaws.partnercentralselling#PrimaryNeedsFromAws", + "traits": { + "smithy.api#documentation": "

\n Identifies the type of support the partner needs from Amazon Web Services.\n

\n

\n Valid values:\n

\n " + } + }, + "NationalSecurity": { + "target": "com.amazonaws.partnercentralselling#NationalSecurity", + "traits": { + "smithy.api#documentation": "

Indicates whether the Opportunity pertains to a national security project. This field must be set to true only when the customer's industry is Government. Additional privacy and security measures apply during the review and management process for opportunities marked as NationalSecurity.

" + } + }, + "PartnerOpportunityIdentifier": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Specifies the opportunity's unique identifier in the partner's CRM system. This value is essential\n to track and reconcile because it's included in the outbound payload sent back to the partner.\n

", + "smithy.api#length": { + "max": 64 + } + } + }, + "Customer": { + "target": "com.amazonaws.partnercentralselling#Customer", + "traits": { + "smithy.api#documentation": "

Specifies details of the customer associated with the Opportunity.\n

" + } + }, + "Project": { + "target": "com.amazonaws.partnercentralselling#Project", + "traits": { + "smithy.api#documentation": "

An object that contains project details summary for the Opportunity.\n

" + } + }, + "OpportunityType": { + "target": "com.amazonaws.partnercentralselling#OpportunityType", + "traits": { + "smithy.api#documentation": "

\n Specifies the opportunity type as renewal, new, or expansion.\n

\n

\n Opportunity types:\n

\n " + } + }, + "Marketing": { + "target": "com.amazonaws.partnercentralselling#Marketing", + "traits": { + "smithy.api#documentation": "

An object that contains marketing details for the Opportunity.\n

" + } + }, + "SoftwareRevenue": { + "target": "com.amazonaws.partnercentralselling#SoftwareRevenue", + "traits": { + "smithy.api#documentation": "

Specifies details of a customer's procurement terms. Required only for partners in eligible programs.

" + } + }, + "Id": { + "target": "com.amazonaws.partnercentralselling#OpportunityIdentifier", + "traits": { + "smithy.api#documentation": "

Read-only, system generated Opportunity unique identifier.\n

", + "smithy.api#required": {} + } + }, + "LastModifiedDate": { + "target": "com.amazonaws.partnercentralselling#DateTime", + "traits": { + "smithy.api#documentation": "

\n DateTime\n when the opportunity was last modified.\n

", + "smithy.api#required": {} + } + }, + "CreatedDate": { + "target": "com.amazonaws.partnercentralselling#DateTime", + "traits": { + "smithy.api#documentation": "

\n DateTime when the Opportunity was last created.\n

", + "smithy.api#required": {} + } + }, + "RelatedEntityIdentifiers": { + "target": "com.amazonaws.partnercentralselling#RelatedEntityIdentifiers", + "traits": { + "smithy.api#documentation": "

\n Provides information about the associations of other entities with the opportunity. These entities include identifiers for\n AWSProducts, Partner Solutions, and AWSMarketplaceOffers.\n

", + "smithy.api#required": {} + } + }, + "LifeCycle": { + "target": "com.amazonaws.partnercentralselling#LifeCycle", + "traits": { + "smithy.api#documentation": "

An object that contains lifecycle details for the Opportunity.\n

" + } + }, + "OpportunityTeam": { + "target": "com.amazonaws.partnercentralselling#PartnerOpportunityTeamMembersList", + "traits": { + "smithy.api#documentation": "

Represents the internal team handling the opportunity. Specify the members involved in collaborating on this opportunity within the partner's organization.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.partnercentralselling#Industry": { + "type": "enum", + "members": { + "AEROSPACE_SATELLITE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Aerospace" + } + }, + "AGRICULTURE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Agriculture" + } + }, + "AUTOMOTIVE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Automotive" + } + }, + "COMPUTERS_ELECTRONICS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Computers and Electronics" + } + }, + "CONSUMER_GOODS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Consumer Goods" + } + }, + "EDUCATION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Education" + } + }, + "ENERGY_OIL_GAS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Energy - Oil and Gas" + } + }, + "ENERGY_POWER_UTILITIES": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Energy - Power and Utilities" + } + }, + "FINANCIAL_SERVICES": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Financial Services" + } + }, + "GAMING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Gaming" + } + }, + "GOVERNMENT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Government" + } + }, + "HEALTHCARE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Healthcare" + } + }, + "HOSPITALITY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Hospitality" + } + }, + "LIFE_SCIENCES": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Life Sciences" + } + }, + "MANUFACTURING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Manufacturing" + } + }, + "MARKETING_ADVERTISING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Marketing and Advertising" + } + }, + "MEDIA_ENTERTAINMENT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Media and Entertainment" + } + }, + "MINING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Mining" + } + }, + "NON_PROFIT_ORGANIZATION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Non-Profit Organization" + } + }, + "PROFESSIONAL_SERVICES": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Professional Services" + } + }, + "REALESTATE_CONSTRUCTION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Real Estate and Construction" + } + }, + "RETAIL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Retail" + } + }, + "SOFTWARE_INTERNET": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Software and Internet" + } + }, + "TELECOMMUNICATIONS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Telecommunications" + } + }, + "TRANSPORTATION_LOGISTICS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Transportation and Logistics" + } + }, + "TRAVEL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Travel" + } + }, + "WHOLESALE_DISTRIBUTION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Wholesale and Distribution" + } + }, + "OTHER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Other" + } + } + } + }, + "com.amazonaws.partnercentralselling#InternalServerException": { + "type": "structure", + "members": { + "Message": { + "target": "smithy.api#String" + } + }, + "traits": { + "smithy.api#documentation": "

This error occurs when the specified resource can’t be found or doesn't exist. Resource ID and type might be incorrect.\n

\n

Suggested action: This is usually a transient error. Retry after the provided retry delay or a short interval. If the problem persists, contact AWS support.\n

", + "smithy.api#error": "server", + "smithy.api#httpError": 500 + } + }, + "com.amazonaws.partnercentralselling#InvitationStatus": { + "type": "enum", + "members": { + "ACCEPTED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ACCEPTED" + } + }, + "PENDING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PENDING" + } + }, + "REJECTED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "REJECTED" + } + }, + "EXPIRED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EXPIRED" + } + } + } + }, + "com.amazonaws.partnercentralselling#InvolvementTypeChangeReason": { + "type": "enum", + "members": { + "EXPANSION_OPPORTUNITY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Expansion Opportunity" + } + }, + "CHANGE_IN_DEAL_INFORMATION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Change in Deal Information" + } + }, + "CUSTOMER_REQUESTED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Customer Requested" + } + }, + "TECHNICAL_COMPLEXITY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Technical Complexity" + } + }, + "RISK_MITIGATION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Risk Mitigation" + } + } + } + }, + "com.amazonaws.partnercentralselling#JobTitle": { + "type": "string", + "traits": { + "smithy.api#length": { + "max": 80 + }, + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.partnercentralselling#LastModifiedDate": { + "type": "structure", + "members": { + "AfterLastModifiedDate": { + "target": "com.amazonaws.partnercentralselling#DateTime", + "traits": { + "smithy.api#documentation": "

Specifies the date after which the opportunities were modified. Use this filter to retrieve only those opportunities that were modified after a given timestamp.

" + } + }, + "BeforeLastModifiedDate": { + "target": "com.amazonaws.partnercentralselling#DateTime", + "traits": { + "smithy.api#documentation": "

Specifies the date before which the opportunities were modified. Use this filter to retrieve only those opportunities that were modified before a given timestamp.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Defines a filter to retrieve opportunities based on the last modified date. This filter is useful for tracking changes or updates to opportunities over time.

" + } + }, + "com.amazonaws.partnercentralselling#LifeCycle": { + "type": "structure", + "members": { + "Stage": { + "target": "com.amazonaws.partnercentralselling#Stage", + "traits": { + "smithy.api#documentation": "

\n Specifies the current stage of the Opportunity's lifecycle as it maps to Amazon Web Services stages from the current stage in the partner CRM. This field provides a translated value of the stage, and offers insight into the Opportunity's progression in the sales cycle, according to Amazon Web Services definitions.\n

\n \n

A lead and a prospect must be further matured to a Qualified opportunity before submission. Opportunities that were closed/lost before submission aren't suitable for submission.

\n
\n

\n The descriptions of each sales stage are:\n

\n " + } + }, + "ClosedLostReason": { + "target": "com.amazonaws.partnercentralselling#ClosedLostReason", + "traits": { + "smithy.api#documentation": "

\n Specifies the reason code when an opportunity is marked as Closed Lost. When you select an\n appropriate reason code, you communicate the context for closing the Opportunity,\n and aid in accurate reports and analysis of opportunity outcomes. The possible values are:\n

\n " + } + }, + "NextSteps": { + "target": "com.amazonaws.partnercentralselling#PiiString", + "traits": { + "smithy.api#documentation": "

Specifies the upcoming actions or tasks for the Opportunity. This field\n is utilized to communicate to Amazon Web Services the next actions required for the Opportunity.\n

", + "smithy.api#length": { + "max": 255 + } + } + }, + "TargetCloseDate": { + "target": "com.amazonaws.partnercentralselling#Date", + "traits": { + "smithy.api#documentation": "

\n Specifies the date when Amazon Web Services expects to start significant billing, when the project finishes, and when it moves into production. This field informs the Amazon Web Services seller about when the opportunity launches and starts to incur Amazon Web Services usage.\n

\n

\n Ensure the Target Close Date isn't in the past.\n

" + } + }, + "ReviewStatus": { + "target": "com.amazonaws.partnercentralselling#ReviewStatus", + "traits": { + "smithy.api#documentation": "

\n Indicates the review status of an opportunity referred by a partner. This field is read-only\n and only applicable for partner referrals. The possible values are:\n

\n " + } + }, + "ReviewComments": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Indicates why an opportuntiy was sent back for further details. Partners must take corrective action based on the ReviewComments.

" + } + }, + "ReviewStatusReason": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

\n Indicates the reason a decision was made during the opportunity review process. This field combines the reasons for both disqualified and action required statuses, and provide clarity for why an opportunity was disqualified or requires further action.\n

" + } + }, + "NextStepsHistory": { + "target": "com.amazonaws.partnercentralselling#NextStepsHistories", + "traits": { + "smithy.api#documentation": "

Captures a chronological record of the next steps or actions planned or taken for the current opportunity,\n along with the timestamp.\n

", + "smithy.api#length": { + "max": 50 + } + } + } + }, + "traits": { + "smithy.api#documentation": "

An object that contains the Opportunity lifecycle's details.\n

" + } + }, + "com.amazonaws.partnercentralselling#LifeCycleSummary": { + "type": "structure", + "members": { + "Stage": { + "target": "com.amazonaws.partnercentralselling#Stage", + "traits": { + "smithy.api#documentation": "

\n Specifies the current stage of the Opportunity's lifecycle as it maps to Amazon Web Services stages from the current stage in the partner CRM. This field provides a translated value of the stage, and offers insight into the Opportunity's progression in the sales cycle, according to Amazon Web Services definitions.\n

\n \n

A lead and a prospect must be further matured to a Qualified opportunity before submission. Opportunities that were closed/lost before submission aren't suitable for submission.

\n
\n

\n The descriptions of each sales stage are:\n

\n " + } + }, + "ClosedLostReason": { + "target": "com.amazonaws.partnercentralselling#ClosedLostReason", + "traits": { + "smithy.api#documentation": "

Specifies the reason code when an opportunity is marked as Closed Lost. When you select an\n appropriate reason code, you communicate the context for closing the Opportunity,\n and aid in accurate reports and analysis of opportunity outcomes.\n

" + } + }, + "NextSteps": { + "target": "com.amazonaws.partnercentralselling#PiiString", + "traits": { + "smithy.api#documentation": "

Specifies the upcoming actions or tasks for the Opportunity. This field\n is utilized to communicate to Amazon Web Services the next actions required for the Opportunity.\n

", + "smithy.api#length": { + "max": 255 + } + } + }, + "TargetCloseDate": { + "target": "com.amazonaws.partnercentralselling#Date", + "traits": { + "smithy.api#documentation": "

\n Specifies the date when Amazon Web Services expects to start significant billing, when the project finishes, and when it moves into production. This field informs the Amazon Web Services seller about when the opportunity launches and starts to incur Amazon Web Services usage.\n

\n

\n Ensure the Target Close Date isn't in the past.\n

" + } + }, + "ReviewStatus": { + "target": "com.amazonaws.partnercentralselling#ReviewStatus", + "traits": { + "smithy.api#documentation": "

\n Indicates the review status of a partner referred opportunity. This field is read-only\n and only applicable for partner referrals. Valid values:\n

\n " + } + }, + "ReviewComments": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Indicates why an opportuntiy was sent back for further details. Partners must take corrective action based on the ReviewComments.

" + } + }, + "ReviewStatusReason": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

\n Indicates the reason a specific decision was taken during the opportunity review process. This field combines the reasons for both disqualified and action required statuses, and provides clarity for why an opportunity was disqualified or required further action.\n

" + } + } + }, + "traits": { + "smithy.api#documentation": "

An object that contains a LifeCycle object's subset of fields.\n

" + } + }, + "com.amazonaws.partnercentralselling#ListEngagementInvitations": { + "type": "operation", + "input": { + "target": "com.amazonaws.partnercentralselling#ListEngagementInvitationsRequest" + }, + "output": { + "target": "com.amazonaws.partnercentralselling#ListEngagementInvitationsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.partnercentralselling#AccessDeniedException" + }, + { + "target": "com.amazonaws.partnercentralselling#InternalServerException" + }, + { + "target": "com.amazonaws.partnercentralselling#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.partnercentralselling#ThrottlingException" + }, + { + "target": "com.amazonaws.partnercentralselling#ValidationException" + } + ], + "traits": { + "aws.iam#conditionKeys": [ + "partnercentral:Catalog" + ], + "aws.iam#iamAction": { + "documentation": "Grants permission to list Engagement Invitations on AWS Partner Central" + }, + "smithy.api#documentation": "

Retrieves a list of engagement invitations sent to the partner. This allows partners to view all pending or past engagement invitations, helping them track opportunities shared by AWS.

", + "smithy.api#http": { + "method": "POST", + "uri": "/ListEngagementInvitations", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "pageSize": "MaxResults", + "items": "EngagementInvitationSummaries" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.partnercentralselling#ListEngagementInvitationsRequest": { + "type": "structure", + "members": { + "Catalog": { + "target": "com.amazonaws.partnercentralselling#CatalogIdentifier", + "traits": { + "smithy.api#documentation": "

Specifies the catalog from which to list the engagement invitations. Use AWS for production invitations or Sandbox for testing environments.

", + "smithy.api#required": {} + } + }, + "MaxResults": { + "target": "com.amazonaws.partnercentralselling#PageSize", + "traits": { + "smithy.api#documentation": "

Specifies the maximum number of engagement invitations to return in the response. If more results are available, a pagination token will be provided.

" + } + }, + "NextToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

A pagination token used to retrieve additional pages of results when the response to a previous request was truncated. Pass this token to continue listing invitations from where the previous call left off.

" + } + }, + "Sort": { + "target": "com.amazonaws.partnercentralselling#OpportunityEngagementInvitationSort", + "traits": { + "smithy.api#documentation": "

Specifies the sorting options for listing engagement invitations. Invitations can be sorted by fields such as InvitationDate or Status to help partners view results in their preferred order.

" + } + }, + "PayloadType": { + "target": "com.amazonaws.partnercentralselling#EngagementInvitationsPayloadType", + "traits": { + "smithy.api#documentation": "

Defines the type of payload associated with the engagement invitations to be listed. The attributes in this payload help decide on acceptance or rejection of the invitation.

" + } + }, + "ParticipantType": { + "target": "com.amazonaws.partnercentralselling#ParticipantType", + "traits": { + "smithy.api#documentation": "

Specifies the type of participant for which to list engagement invitations. Identifies the role of the participant.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.partnercentralselling#ListEngagementInvitationsResponse": { + "type": "structure", + "members": { + "EngagementInvitationSummaries": { + "target": "com.amazonaws.partnercentralselling#EngagementInvitationSummaries", + "traits": { + "smithy.api#documentation": "

An array containing summaries of engagement invitations. Each summary includes key information such as the invitation title, invitation date, and the current status of the invitation.

" + } + }, + "NextToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

A pagination token returned when there are more results available than can be returned in a single call. Use this token to retrieve additional pages of engagement invitation summaries.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.partnercentralselling#ListOpportunities": { + "type": "operation", + "input": { + "target": "com.amazonaws.partnercentralselling#ListOpportunitiesRequest" + }, + "output": { + "target": "com.amazonaws.partnercentralselling#ListOpportunitiesResponse" + }, + "errors": [ + { + "target": "com.amazonaws.partnercentralselling#AccessDeniedException" + }, + { + "target": "com.amazonaws.partnercentralselling#InternalServerException" + }, + { + "target": "com.amazonaws.partnercentralselling#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.partnercentralselling#ThrottlingException" + }, + { + "target": "com.amazonaws.partnercentralselling#ValidationException" + } + ], + "traits": { + "aws.iam#conditionKeys": [ + "partnercentral:Catalog" + ], + "aws.iam#iamAction": { + "documentation": "Grants permission to list Opportunities on AWS Partner Central" + }, + "smithy.api#documentation": "

This request accepts a list of filters to use to\n retrieve a specific subset of opportunities, as well as sort options. This feature is available to partners from\n Partner Central\n using the ListOpportunities API action.\n

\n

To synchronize your system with Amazon Web Services, only list the opportunities that were\n newly created or updated.\n We recommend you rely on events emitted by the service into your Amazon Web Services account’s Amazon EventBridge default\n event bus, you can also use the ListOpportunities action.\n

\n

We recommend the following approach:

\n
    \n
  1. \n

    Find the latest LastModifiedDate that you stored, and only use the values that came\n from Amazon Web Services. Don’t use values generated by your system.\n

    \n
  2. \n
  3. \n

    When you send a ListOpportunities request, submit the date in ISO 8601 format in the AfterLastModifiedDate filter.\n

    \n
  4. \n
  5. \n

    Amazon Web Services only returns opportunities created or updated on or after that date and time. Use NextToken to iterate over all pages.\n

    \n
  6. \n
", + "smithy.api#http": { + "method": "POST", + "uri": "/ListOpportunities", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "pageSize": "MaxResults", + "items": "OpportunitySummaries" + }, + "smithy.api#readonly": {}, + "smithy.test#smokeTests": [ + { + "id": "ListOpportunitiesError", + "params": { + "Catalog": null + }, + "expect": { + "failure": { + "errorId": "com.amazonaws.partnercentralselling#ValidationException" + } + } + } + ] + } + }, + "com.amazonaws.partnercentralselling#ListOpportunitiesRequest": { + "type": "structure", + "members": { + "Catalog": { + "target": "com.amazonaws.partnercentralselling#CatalogIdentifier", + "traits": { + "smithy.api#documentation": "

\n Specifies the catalog associated with the request. This field takes a string value from a predefined list:\n AWS or Sandbox. The catalog determines which environment the opportunities are listed in.\n Use AWS for listing real opportunities in the Amazon Web Services catalog, and Sandbox\n for to test in a secure and isolated environment.\n

", + "smithy.api#required": {} + } + }, + "MaxResults": { + "target": "com.amazonaws.partnercentralselling#PageSize", + "traits": { + "smithy.api#documentation": "

\n Specifies the maximum number of results to return in a single call. This limits the number of opportunities returned in the response to avoid overloading with too many results at once.\n

\n

\n Default: 20\n

" + } + }, + "NextToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

\n A pagination token used to retrieve the next set of results in subsequent calls. This token is included in the response only if there are additional result pages available.\n

" + } + }, + "Sort": { + "target": "com.amazonaws.partnercentralselling#OpportunitySort", + "traits": { + "smithy.api#documentation": "

\n An object that specifies how the response is sorted. The default Sort.SortBy value is LastModifiedDate.\n

" + } + }, + "LastModifiedDate": { + "target": "com.amazonaws.partnercentralselling#LastModifiedDate", + "traits": { + "smithy.api#documentation": "

Filters the opportunities based on their last modified date. This filter helps retrieve opportunities that were updated after the specified date, allowing partners to track recent changes or updates.

" + } + }, + "Identifier": { + "target": "com.amazonaws.partnercentralselling#FilterIdentifier", + "traits": { + "smithy.api#documentation": "

Filters the opportunities based on the opportunity identifier. This allows partners to retrieve specific opportunities by providing their unique identifiers, ensuring precise results.

", + "smithy.api#length": { + "max": 20 + } + } + }, + "LifeCycleStage": { + "target": "com.amazonaws.partnercentralselling#FilterLifeCycleStage", + "traits": { + "smithy.api#documentation": "

Filters the opportunities based on their lifecycle stage. This filter allows partners to retrieve opportunities at various stages in the sales cycle, such as Qualified, Technical Validation, Business Validation, or Closed Won.

", + "smithy.api#length": { + "max": 10 + } + } + }, + "LifeCycleReviewStatus": { + "target": "com.amazonaws.partnercentralselling#FilterLifeCycleReviewStatus", + "traits": { + "smithy.api#documentation": "

Filters the opportunities based on their current lifecycle approval status. Use this filter to retrieve opportunities with statuses such as Pending Submission, In Review, Action Required, or Approved.

", + "smithy.api#length": { + "max": 10 + } + } + }, + "CustomerCompanyName": { + "target": "com.amazonaws.partnercentralselling#StringList", + "traits": { + "smithy.api#documentation": "

Filters the opportunities based on the customer's company name. This allows partners to search for opportunities associated with a specific customer by matching the provided company name string.

", + "smithy.api#length": { + "max": 10 + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.partnercentralselling#ListOpportunitiesResponse": { + "type": "structure", + "members": { + "OpportunitySummaries": { + "target": "com.amazonaws.partnercentralselling#OpportunitySummaries", + "traits": { + "smithy.api#documentation": "

\n An array that contains minimal details for opportunities that match the request criteria. This summary view provides a quick overview of relevant opportunities.\n

", + "smithy.api#required": {} + } + }, + "NextToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

\n A pagination token used to retrieve the next set of results in subsequent calls. This token is included in the response only if there are additional result pages available.\n

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.partnercentralselling#ListSolutions": { + "type": "operation", + "input": { + "target": "com.amazonaws.partnercentralselling#ListSolutionsRequest" + }, + "output": { + "target": "com.amazonaws.partnercentralselling#ListSolutionsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.partnercentralselling#AccessDeniedException" + }, + { + "target": "com.amazonaws.partnercentralselling#InternalServerException" + }, + { + "target": "com.amazonaws.partnercentralselling#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.partnercentralselling#ValidationException" + } + ], + "traits": { + "aws.iam#conditionKeys": [ + "partnercentral:Catalog" + ], + "aws.iam#iamAction": { + "documentation": "Grants permission to list Solutions on AWS Partner Central" + }, + "smithy.api#documentation": "

\n Retrieves a list of Partner Solutions that the partner registered on Partner Central. This API is used to generate a list of solutions that an end user selects from for association with an opportunity.\n

", + "smithy.api#http": { + "method": "POST", + "uri": "/ListSolutions", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "pageSize": "MaxResults", + "items": "SolutionSummaries" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.partnercentralselling#ListSolutionsRequest": { + "type": "structure", + "members": { + "Catalog": { + "target": "com.amazonaws.partnercentralselling#CatalogIdentifier", + "traits": { + "smithy.api#documentation": "

\n Specifies the catalog associated with the request. This field takes a string value from a predefined list:\n AWS or Sandbox. The catalog determines which environment the solutions are listed in.\n Use AWS to list solutions in the Amazon Web Services catalog, and Sandbox to list solutions\n in a secure and isolated testing environment.\n

", + "smithy.api#required": {} + } + }, + "MaxResults": { + "target": "com.amazonaws.partnercentralselling#PageSize", + "traits": { + "smithy.api#documentation": "

The maximum number of results returned by a single call. This value must be provided in the next call to\n retrieve the next set of results.\n

\n

Default: 20

" + } + }, + "NextToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

\n A pagination token used to retrieve the next set of results in subsequent calls. This token is included in the response only if there are additional result pages available.\n

" + } + }, + "Sort": { + "target": "com.amazonaws.partnercentralselling#SolutionSort", + "traits": { + "smithy.api#documentation": "

Object that configures sorting done on the response. Default Sort.SortBy is Identifier.\n

" + } + }, + "Status": { + "target": "com.amazonaws.partnercentralselling#FilterStatus", + "traits": { + "smithy.api#documentation": "

Filters the solutions based on their status. This filter helps retrieve solutions with statuses such as Active, Inactive, or Pending Approval, allowing partners to manage their solution portfolios effectively.

", + "smithy.api#length": { + "max": 10 + } + } + }, + "Identifier": { + "target": "com.amazonaws.partnercentralselling#SolutionIdentifiers", + "traits": { + "smithy.api#documentation": "

Filters the solutions based on their unique identifier. Use this filter to retrieve specific solutions by providing the solution's identifier for accurate results.

", + "smithy.api#length": { + "max": 20 + } + } + }, + "Category": { + "target": "com.amazonaws.partnercentralselling#StringList", + "traits": { + "smithy.api#documentation": "

Filters the solutions based on the category to which they belong. This allows partners to search for solutions within specific categories, such as Software, Consulting, or Managed Services.

", + "smithy.api#length": { + "max": 10 + } + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.partnercentralselling#ListSolutionsResponse": { + "type": "structure", + "members": { + "SolutionSummaries": { + "target": "com.amazonaws.partnercentralselling#SolutionList", + "traits": { + "smithy.api#documentation": "

An array with minimal details for solutions matching the request criteria.

", + "smithy.api#required": {} + } + }, + "NextToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

\n A pagination token used to retrieve the next set of results in subsequent calls. This token is included in the response only if there are additional result pages available.\n

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.partnercentralselling#Marketing": { + "type": "structure", + "members": { + "CampaignName": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Specifies the Opportunity's unique marketing campaign name. The Amazon Web Services\n campaign name serves as a reference to specific marketing initiatives, promotions, or\n activities related to the Opportunity. This field captures the identifier used to track and\n categorize the Opportunity within Amazon Web Services's marketing campaigns. If you don't have a campaign\n name, reach out to your Amazon Web Services point of contact to obtain one.\n

" + } + }, + "Source": { + "target": "com.amazonaws.partnercentralselling#MarketingSource", + "traits": { + "smithy.api#documentation": "

\n Indicates if the Opportunity was sourced from an Amazon Web Services marketing activity. Use the value Marketing Activity. Use None if it's not associated with an Amazon Web Services marketing activity. This field helps Amazon Web Services track the return on marketing investments and enables better distribution of marketing budgets among partners.\n

" + } + }, + "UseCases": { + "target": "com.amazonaws.partnercentralselling#UseCases", + "traits": { + "smithy.api#documentation": "

\n Specifies the marketing activity use case or purpose that led to the Opportunity's creation or contact. This field captures the context or marketing activity's execution's intention and the direct correlation to the generated opportunity or contact. Must be empty when Marketing.AWSFundingUsed = No.\n

\n

\n Valid values: AI/ML | Analytics | Application Integration | Blockchain | Business Applications | Cloud Financial Management | Compute | Containers | Customer Engagement | Databases | Developer Tools | End User Computing | Front End Web & Mobile | Game Tech | IoT | Management & Governance | Media Services | Migration & Transfer | Networking & Content Delivery | Quantum Technologies | Robotics | Satellite | Security | Serverless | Storage | VR & AR\n

" + } + }, + "Channels": { + "target": "com.amazonaws.partnercentralselling#Channels", + "traits": { + "smithy.api#documentation": "

Specifies the Opportunity's channel that the marketing activity is associated with or\n was contacted through. This field provides information about the specific marketing\n channel that contributed to the generation of the lead or contact.\n

" + } + }, + "AwsFundingUsed": { + "target": "com.amazonaws.partnercentralselling#AwsFundingUsed", + "traits": { + "smithy.api#documentation": "

Indicates if the Opportunity is a marketing development fund (MDF) funded\n activity.\n

" + } + } + }, + "traits": { + "smithy.api#documentation": "

An object that contains marketing details for the Opportunity.\n

" + } + }, + "com.amazonaws.partnercentralselling#MarketingSource": { + "type": "enum", + "members": { + "MARKETING_ACTIVITY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Marketing Activity" + } + }, + "NONE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "None" + } + } + } + }, + "com.amazonaws.partnercentralselling#MonetaryValue": { + "type": "structure", + "members": { + "Amount": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Specifies the payment amount.

", + "smithy.api#pattern": "^(0|([1-9][0-9]{0,30}))(\\.[0-9]{0,2})?$", + "smithy.api#required": {} + } + }, + "CurrencyCode": { + "target": "com.amazonaws.partnercentralselling#CurrencyCode", + "traits": { + "smithy.api#documentation": "

Specifies the payment currency.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies payments details.

" + } + }, + "com.amazonaws.partnercentralselling#Name": { + "type": "string", + "traits": { + "smithy.api#length": { + "max": 80 + }, + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.partnercentralselling#NationalSecurity": { + "type": "enum", + "members": { + "YES": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Yes" + } + }, + "NO": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "No" + } + } + } + }, + "com.amazonaws.partnercentralselling#NextStepsHistories": { + "type": "list", + "member": { + "target": "com.amazonaws.partnercentralselling#NextStepsHistory" + } + }, + "com.amazonaws.partnercentralselling#NextStepsHistory": { + "type": "structure", + "members": { + "Value": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Indicates the step's execution details.

", + "smithy.api#required": {} + } + }, + "Time": { + "target": "com.amazonaws.partnercentralselling#DateTime", + "traits": { + "smithy.api#documentation": "

Indicates the step execution time.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Read-only; shows the last 50 values and change dates for the NextSteps field.

" + } + }, + "com.amazonaws.partnercentralselling#Opportunity": { + "type": "resource", + "identifiers": { + "Identifier": { + "target": "com.amazonaws.partnercentralselling#OpportunityIdentifier" + }, + "Catalog": { + "target": "com.amazonaws.partnercentralselling#CatalogIdentifier" + } + }, + "create": { + "target": "com.amazonaws.partnercentralselling#CreateOpportunity" + }, + "read": { + "target": "com.amazonaws.partnercentralselling#GetOpportunity" + }, + "update": { + "target": "com.amazonaws.partnercentralselling#UpdateOpportunity" + }, + "list": { + "target": "com.amazonaws.partnercentralselling#ListOpportunities" + }, + "operations": [ + { + "target": "com.amazonaws.partnercentralselling#AssignOpportunity" + }, + { + "target": "com.amazonaws.partnercentralselling#AssociateOpportunity" + }, + { + "target": "com.amazonaws.partnercentralselling#DisassociateOpportunity" + }, + { + "target": "com.amazonaws.partnercentralselling#GetAwsOpportunitySummary" + } + ], + "traits": { + "aws.api#arn": { + "template": "catalog/{Catalog}/opportunity/{Identifier}" + }, + "aws.iam#disableConditionKeyInference": {}, + "aws.iam#iamResource": { + "relativeDocumentation": "/working-with-your-opportunities.html" + }, + "smithy.api#documentation": "Represents an Opportunity that captures deal details in AWS Partner Central" + } + }, + "com.amazonaws.partnercentralselling#OpportunityEngagementInvitationSort": { + "type": "structure", + "members": { + "SortOrder": { + "target": "com.amazonaws.partnercentralselling#SortOrder", + "traits": { + "smithy.api#documentation": "

Defines the order in which the Engagement Invitations are sorted. The values can be ASC (ascending) or DESC (descending).

", + "smithy.api#required": {} + } + }, + "SortBy": { + "target": "com.amazonaws.partnercentralselling#OpportunityEngagementInvitationSortName", + "traits": { + "smithy.api#documentation": "

Specifies the field by which the Engagement Invitations are sorted. Common values include InvitationDate and Status.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Defines sorting options for retrieving Engagement Invitations. Sorting can be done based on various criteria like the invitation date or status.

" + } + }, + "com.amazonaws.partnercentralselling#OpportunityEngagementInvitationSortName": { + "type": "enum", + "members": { + "INVITATION_DATE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "InvitationDate" + } + } + } + }, + "com.amazonaws.partnercentralselling#OpportunityIdentifier": { + "type": "string", + "traits": { + "smithy.api#pattern": "^O[0-9]{1,19}$" + } + }, + "com.amazonaws.partnercentralselling#OpportunityInvitationPayload": { + "type": "structure", + "members": { + "SenderContacts": { + "target": "com.amazonaws.partnercentralselling#SenderContactList", + "traits": { + "smithy.api#documentation": "

Represents the contact details of the AWS representatives involved in sending the Engagement Invitation. These contacts are key stakeholders for the opportunity.

" + } + }, + "ReceiverResponsibilities": { + "target": "com.amazonaws.partnercentralselling#ReceiverResponsibilityList", + "traits": { + "smithy.api#documentation": "

Outlines the responsibilities or expectations of the receiver in the context of the invitation.

", + "smithy.api#required": {} + } + }, + "Customer": { + "target": "com.amazonaws.partnercentralselling#EngagementCustomer", + "traits": { + "smithy.api#documentation": "

Contains information about the customer related to the opportunity in the Engagement Invitation. This data helps partners understand the customer’s profile and requirements.

", + "smithy.api#required": {} + } + }, + "Project": { + "target": "com.amazonaws.partnercentralselling#ProjectDetails", + "traits": { + "smithy.api#documentation": "

Describes the project details associated with the opportunity, including the customer’s needs and the scope of work expected to be performed.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Represents the data payload of an Engagement Invitation for a specific opportunity. This contains detailed information that partners use to evaluate the engagement.

" + } + }, + "com.amazonaws.partnercentralselling#OpportunityOrigin": { + "type": "enum", + "members": { + "AWS_REFERRAL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS Referral" + } + }, + "PARTNER_REFERRAL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Partner Referral" + } + } + } + }, + "com.amazonaws.partnercentralselling#OpportunitySort": { + "type": "structure", + "members": { + "SortOrder": { + "target": "com.amazonaws.partnercentralselling#SortOrder", + "traits": { + "smithy.api#documentation": "

Sort order.

\n

Default:\n Descending\n

", + "smithy.api#required": {} + } + }, + "SortBy": { + "target": "com.amazonaws.partnercentralselling#OpportunitySortName", + "traits": { + "smithy.api#documentation": "

Field name to sort by.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Object that configures response sorting.

" + } + }, + "com.amazonaws.partnercentralselling#OpportunitySortName": { + "type": "enum", + "members": { + "LAST_MODIFIEDDATE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LastModifiedDate" + } + }, + "IDENTIFIER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Identifier" + } + }, + "CUSTOMER_COMPANY_NAME": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CustomerCompanyName" + } + } + } + }, + "com.amazonaws.partnercentralselling#OpportunitySummaries": { + "type": "list", + "member": { + "target": "com.amazonaws.partnercentralselling#OpportunitySummary" + } + }, + "com.amazonaws.partnercentralselling#OpportunitySummary": { + "type": "structure", + "members": { + "Catalog": { + "target": "com.amazonaws.partnercentralselling#CatalogIdentifier", + "traits": { + "smithy.api#documentation": "

Specifies the catalog associated with the opportunity, either AWS or Sandbox. This indicates the environment in which the opportunity is managed.

", + "smithy.api#required": {} + } + }, + "Id": { + "target": "com.amazonaws.partnercentralselling#OpportunityIdentifier", + "traits": { + "smithy.api#documentation": "

Read-only, system-generated Opportunity unique identifier.\n

" + } + }, + "PartnerOpportunityIdentifier": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Specifies the Opportunity's unique identifier in the partner's CRM system. This value is\n essential to track and reconcile because it's included in the outbound payload sent back to the partner. It allows partners to link\n an opportunity to\n their CRM.\n

" + } + }, + "OpportunityType": { + "target": "com.amazonaws.partnercentralselling#OpportunityType", + "traits": { + "smithy.api#documentation": "

\n Specifies opportunity type as a renewal, new, or expansion.\n

\n

\n Opportunity types:\n

\n " + } + }, + "LastModifiedDate": { + "target": "com.amazonaws.partnercentralselling#DateTime", + "traits": { + "smithy.api#documentation": "

\n DateTime\n when the Opportunity was last modified.\n

" + } + }, + "CreatedDate": { + "target": "com.amazonaws.partnercentralselling#DateTime", + "traits": { + "smithy.api#documentation": "

\n DateTime\n when the Opportunity was last created.\n

" + } + }, + "LifeCycle": { + "target": "com.amazonaws.partnercentralselling#LifeCycleSummary", + "traits": { + "smithy.api#documentation": "

An object that contains the Opportunity's lifecycle details.\n

" + } + }, + "Customer": { + "target": "com.amazonaws.partnercentralselling#CustomerSummary", + "traits": { + "smithy.api#documentation": "

An object that contains the Opportunity's customer details.\n

" + } + }, + "Project": { + "target": "com.amazonaws.partnercentralselling#ProjectSummary", + "traits": { + "smithy.api#documentation": "

An object that contains the Opportunity's project details summary.\n

" + } + } + }, + "traits": { + "smithy.api#documentation": "

An object that contains an Opportunity's subset of fields.\n

" + } + }, + "com.amazonaws.partnercentralselling#OpportunityType": { + "type": "enum", + "members": { + "NET_NEW_BUSINESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Net New Business" + } + }, + "FLAT_RENEWAL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Flat Renewal" + } + }, + "EXPANSION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Expansion" + } + } + } + }, + "com.amazonaws.partnercentralselling#PageSize": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 100 + } + } + }, + "com.amazonaws.partnercentralselling#ParticipantType": { + "type": "enum", + "members": { + "RECEIVER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "RECEIVER" + } + } + } + }, + "com.amazonaws.partnercentralselling#PartnerOpportunityTeamMembersList": { + "type": "list", + "member": { + "target": "com.amazonaws.partnercentralselling#Contact" + }, + "traits": { + "smithy.api#length": { + "max": 1 + } + } + }, + "com.amazonaws.partnercentralselling#Payload": { + "type": "union", + "members": { + "OpportunityInvitation": { + "target": "com.amazonaws.partnercentralselling#OpportunityInvitationPayload", + "traits": { + "smithy.api#documentation": "

Specifies the details of the opportunity invitation within the Engagement Invitation payload. This data helps partners understand the context, scope, and expected involvement for the opportunity from AWS.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the data payload associated with the Engagement Invitation. This payload includes essential details related to the AWS opportunity and is used by partners to evaluate whether to accept or reject the engagement.

" + } + }, + "com.amazonaws.partnercentralselling#PaymentFrequency": { + "type": "enum", + "members": { + "MONTHLY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Monthly" + } + } + } + }, + "com.amazonaws.partnercentralselling#PhoneNumber": { + "type": "string", + "traits": { + "smithy.api#length": { + "max": 40 + }, + "smithy.api#pattern": "^\\+[1-9]\\d{1,14}$", + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.partnercentralselling#PiiString": { + "type": "string", + "traits": { + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.partnercentralselling#PrimaryNeedFromAws": { + "type": "enum", + "members": { + "CO_SELL_ARCHITECTURAL_VALIDATION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Co-Sell - Architectural Validation" + } + }, + "CO_SELL_BUSINESS_PRESENTATION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Co-Sell - Business Presentation" + } + }, + "CO_SELL_COMPETITIVE_INFORMATION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Co-Sell - Competitive Information" + } + }, + "CO_SELL_PRICING_ASSISTANCE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Co-Sell - Pricing Assistance" + } + }, + "CO_SELL_TECHNICAL_CONSULTATION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Co-Sell - Technical Consultation" + } + }, + "CO_SELL_TOTAL_COST_OF_OWNERSHIP_EVALUATION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Co-Sell - Total Cost of Ownership Evaluation" + } + }, + "CO_SELL_DEAL_SUPPORT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Co-Sell - Deal Support" + } + }, + "CO_SELL_SUPPORT_FOR_PUBLIC_TENDER_RFX": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Co-Sell - Support for Public Tender / RFx" + } + } + } + }, + "com.amazonaws.partnercentralselling#PrimaryNeedsFromAws": { + "type": "list", + "member": { + "target": "com.amazonaws.partnercentralselling#PrimaryNeedFromAws" + } + }, + "com.amazonaws.partnercentralselling#ProfileNextStepsHistories": { + "type": "list", + "member": { + "target": "com.amazonaws.partnercentralselling#ProfileNextStepsHistory" + } + }, + "com.amazonaws.partnercentralselling#ProfileNextStepsHistory": { + "type": "structure", + "members": { + "Value": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Represents the details of the next step recorded, such as follow-up actions or decisions made. This field helps in tracking progress and ensuring alignment with project goals.

", + "smithy.api#required": {} + } + }, + "Time": { + "target": "com.amazonaws.partnercentralselling#DateTime", + "traits": { + "smithy.api#documentation": "

Indicates the date and time when a particular next step was recorded or planned. This helps in managing the timeline for the opportunity.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Tracks the history of next steps associated with the opportunity. This field captures the actions planned for the future and their timeline.

" + } + }, + "com.amazonaws.partnercentralselling#Project": { + "type": "structure", + "members": { + "DeliveryModels": { + "target": "com.amazonaws.partnercentralselling#DeliveryModels", + "traits": { + "smithy.api#documentation": "

\n Specifies the deployment or consumption model for your solution or service in the Opportunity's context. You can select multiple options.\n

\n

\n Options' descriptions from the Delivery Model field are:\n

\n " + } + }, + "ExpectedCustomerSpend": { + "target": "com.amazonaws.partnercentralselling#ExpectedCustomerSpendList", + "traits": { + "smithy.api#documentation": "

Represents the estimated amount that the customer is expected to spend on AWS services related to the opportunity. This helps in evaluating the potential financial value of the opportunity for AWS.

" + } + }, + "Title": { + "target": "com.amazonaws.partnercentralselling#PiiString", + "traits": { + "smithy.api#documentation": "

Specifies the Opportunity's title or name.\n

", + "smithy.api#length": { + "max": 255 + } + } + }, + "ApnPrograms": { + "target": "com.amazonaws.partnercentralselling#ApnPrograms", + "traits": { + "smithy.api#documentation": "

\n Specifies the Amazon Partner Network (APN) program that influenced the Opportunity. APN programs refer to specific partner programs or initiatives that can impact the Opportunity.\n

\n

\n Valid values: APN Immersion Days | APN Solution Space | ATO (Authority to Operate) | AWS Marketplace Campaign | IS Immersion Day SFID Program | ISV Workload Migration | Migration Acceleration Program | P3 | Partner Launch Initiative | Partner Opportunity Acceleration Funded | The Next Smart | VMware Cloud on AWS | Well-Architected | Windows | Workspaces/AppStream Accelerator Program | WWPS NDPP\n

" + } + }, + "CustomerBusinessProblem": { + "target": "com.amazonaws.partnercentralselling#PiiString", + "traits": { + "smithy.api#documentation": "

Describes the problem the end customer has, and how the partner is helping.\n Utilize this field to provide a clear and concise narrative that outlines the specific business challenge or\n issue the customer has.\n Elaborate on how the partner's solution or offerings align to resolve the customer's business problem.\n Include relevant information about the partner's value proposition, unique selling points, and expertise to tackle the issue.\n Offer insights on how the proposed solution meets the customer's needs and provides value. Use concise\n language and precise descriptions to convey the context and significance of the Opportunity.\n The content in this field helps Amazon Web Services understand the nature of the Opportunity and the strategic\n fit of the partner's solution.\n

", + "smithy.api#length": { + "min": 20, + "max": 2000 + } + } + }, + "CustomerUseCase": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

\n Specifies the proposed solution focus or type of workload for the Opportunity. This field captures the primary use case or objective of the proposed solution, and provides context and clarity to the addressed workload.\n

\n

\n Valid values: AI Machine Learning and Analytics | Archiving | Big Data: Data Warehouse / Data Integration / ETL / Data Lake / BI | Blockchain | Business Applications: Mainframe Modernization | Business Applications & Contact Center | Business Applications & SAP Production | Centralized Operations Management | Cloud Management Tools | Cloud Management Tools & DevOps with Continuous Integration & Continuous Delivery (CICD) | Configuration, Compliance & Auditing | Connected Services | Containers & Serverless | Content Delivery & Edge Services | Database | Edge Computing / End User Computing | Energy | Enterprise Governance & Controls | Enterprise Resource Planning | Financial Services | Healthcare and Life Sciences | High Performance Computing | Hybrid Application Platform | Industrial Software | IOT | Manufacturing, Supply Chain and Operations | Media & High performance computing (HPC) | Migration / Database Migration | Monitoring, logging and performance | Monitoring & Observability | Networking | Outpost | SAP | Security & Compliance | Storage & Backup | Training | VMC | VMWare | Web development & DevOps\n

" + } + }, + "RelatedOpportunityIdentifier": { + "target": "com.amazonaws.partnercentralselling#OpportunityIdentifier", + "traits": { + "smithy.api#documentation": "

Specifies the current opportunity's parent opportunity identifier.\n

" + } + }, + "SalesActivities": { + "target": "com.amazonaws.partnercentralselling#SalesActivities", + "traits": { + "smithy.api#documentation": "

\n Specifies the Opportunity's sales activities conducted with the end customer.\n These activities help drive Amazon Web Services assignment priority.\n

\n

\n Valid values:\n

\n " + } + }, + "CompetitorName": { + "target": "com.amazonaws.partnercentralselling#CompetitorName", + "traits": { + "smithy.api#documentation": "

Name of the Opportunity's competitor (if any). Use Other to submit a value not in\n the picklist.\n

" + } + }, + "OtherCompetitorNames": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Only allowed when CompetitorNames has Other selected.\n

", + "smithy.api#length": { + "max": 255 + } + } + }, + "OtherSolutionDescription": { + "target": "com.amazonaws.partnercentralselling#PiiString", + "traits": { + "smithy.api#documentation": "

Specifies the offered solution for the customer's business problem when the \n RelatedEntityIdentifiers.Solutions field value is Other.\n

", + "smithy.api#length": { + "max": 255 + } + } + }, + "AdditionalComments": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Captures additional comments or information for the Opportunity that weren't captured in other fields.\n

", + "smithy.api#length": { + "min": 1, + "max": 255 + } + } + } + }, + "traits": { + "smithy.api#documentation": "

An object that contains the\n Opportunity's project details.\n

" + } + }, + "com.amazonaws.partnercentralselling#ProjectDetails": { + "type": "structure", + "members": { + "BusinessProblem": { + "target": "com.amazonaws.partnercentralselling#EngagementCustomerBusinessProblem", + "traits": { + "smithy.api#documentation": "

Describes the business problem that the project aims to solve. This information is crucial for understanding the project’s goals and objectives.

", + "smithy.api#required": {} + } + }, + "Title": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Specifies the title of the project. This title helps partners quickly identify and understand the focus of the project.

", + "smithy.api#length": { + "min": 1, + "max": 255 + }, + "smithy.api#required": {} + } + }, + "TargetCompletionDate": { + "target": "com.amazonaws.partnercentralselling#Date", + "traits": { + "smithy.api#documentation": "

Specifies the estimated date of project completion. This field helps track the project timeline and manage expectations.

", + "smithy.api#required": {} + } + }, + "ExpectedCustomerSpend": { + "target": "com.amazonaws.partnercentralselling#ExpectedCustomerSpendList", + "traits": { + "smithy.api#documentation": "

Contains revenue estimates for the partner related to the project. This field provides an idea of the financial potential of the opportunity for the partner.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains details about the project associated with the Engagement Invitation, including the business problem and expected outcomes.

" + } + }, + "com.amazonaws.partnercentralselling#ProjectSummary": { + "type": "structure", + "members": { + "DeliveryModels": { + "target": "com.amazonaws.partnercentralselling#DeliveryModels", + "traits": { + "smithy.api#documentation": "

\n Specifies your solution or service's deployment or consumption model in the Opportunity's context. You can select multiple options.\n

\n

\n Options' descriptions from the Delivery Model field are:\n

\n " + } + }, + "ExpectedCustomerSpend": { + "target": "com.amazonaws.partnercentralselling#ExpectedCustomerSpendList", + "traits": { + "smithy.api#documentation": "

Provides a summary of the expected customer spend for the project, offering a high-level view of the potential financial impact.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

An object that contains a Project object's subset of fields.\n

" + } + }, + "com.amazonaws.partnercentralselling#ReasonCode": { + "type": "enum", + "members": { + "INVITATION_ACCESS_DENIED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "InvitationAccessDenied" + } + }, + "ENGAGEMENT_ACCESS_DENIED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EngagementAccessDenied" + } + }, + "OPPORTUNITY_ACCESS_DENIED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "OpportunityAccessDenied" + } + }, + "RESOURCE_SNAPSHOT_JOB_ACCESS_DENIED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ResourceSnapshotJobAccessDenied" + } + }, + "ENGAGEMENT_VALIDATION_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EngagementValidationFailed" + } + }, + "OPPORTUNITY_SUBMISSION_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "OpportunitySubmissionFailed" + } + }, + "ENGAGEMENT_INVITATION_CONFLICT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EngagementInvitationConflict" + } + }, + "INTERNAL_ERROR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "InternalError" + } + }, + "OPPORTUNITY_VALIDATION_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "OpportunityValidationFailed" + } + }, + "OPPORTUNITY_CONFLICT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "OpportunityConflict" + } + } + } + }, + "com.amazonaws.partnercentralselling#Receiver": { + "type": "union", + "members": { + "Account": { + "target": "com.amazonaws.partnercentralselling#AccountReceiver", + "traits": { + "smithy.api#documentation": "

Specifies the AWS account of the partner who received the Engagement Invitation. This field is used to track the invitation recipient within the AWS ecosystem.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Represents the entity that received the Engagement Invitation, including account and company details. This field is essential for tracking the partner who is being invited to collaborate.

" + } + }, + "com.amazonaws.partnercentralselling#ReceiverResponsibility": { + "type": "enum", + "members": { + "DISTRIBUTOR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Distributor" + } + }, + "RESELLER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Reseller" + } + }, + "HARDWARE_PARTNER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Hardware Partner" + } + }, + "MANAGED_SERVICE_PROVIDER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Managed Service Provider" + } + }, + "SOFTWARE_PARTNER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Software Partner" + } + }, + "SERVICES_PARTNER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Services Partner" + } + }, + "TRAINING_PARTNER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Training Partner" + } + }, + "CO_SELL_FACILITATOR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Co-Sell Facilitator" + } + }, + "FACILITATOR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Facilitator" + } + } + } + }, + "com.amazonaws.partnercentralselling#ReceiverResponsibilityList": { + "type": "list", + "member": { + "target": "com.amazonaws.partnercentralselling#ReceiverResponsibility" + } + }, + "com.amazonaws.partnercentralselling#RejectEngagementInvitation": { + "type": "operation", + "input": { + "target": "com.amazonaws.partnercentralselling#RejectEngagementInvitationRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "errors": [ + { + "target": "com.amazonaws.partnercentralselling#AccessDeniedException" + }, + { + "target": "com.amazonaws.partnercentralselling#InternalServerException" + }, + { + "target": "com.amazonaws.partnercentralselling#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.partnercentralselling#ThrottlingException" + }, + { + "target": "com.amazonaws.partnercentralselling#ValidationException" + } + ], + "traits": { + "aws.iam#conditionKeys": [ + "partnercentral:Catalog" + ], + "aws.iam#iamAction": { + "documentation": "Grants permission to reject Engagement Invitations on AWS Partner Central" + }, + "smithy.api#documentation": "

Use this action to reject an EngagementInvitation that has been shared by AWS. Rejecting the engagement invitation indicates that the partner does not wish to pursue the opportunity, and all related data will be inaccessible after the rejection.

", + "smithy.api#http": { + "method": "POST", + "uri": "/RejectEngagementInvitation", + "code": 200 + } + } + }, + "com.amazonaws.partnercentralselling#RejectEngagementInvitationRequest": { + "type": "structure", + "members": { + "Catalog": { + "target": "com.amazonaws.partnercentralselling#CatalogIdentifier", + "traits": { + "smithy.api#documentation": "

Specifies the catalog related to the engagement invitation. Accepted values are AWS and Sandbox, which determine the environment in which the opportunity is managed.

", + "smithy.api#required": {} + } + }, + "Identifier": { + "target": "com.amazonaws.partnercentralselling#EngagementInvitationArnOrIdentifier", + "traits": { + "smithy.api#documentation": "

Specifies the unique identifier of the EngagementInvitation to be rejected. Providing the correct identifier ensures that the intended invitation is rejected.

", + "smithy.api#required": {} + } + }, + "RejectionReason": { + "target": "com.amazonaws.partnercentralselling#RejectionReasonString", + "traits": { + "smithy.api#documentation": "

Specifies the reason for rejecting the engagement invitation. Providing a reason helps document the rationale behind the rejection and assists AWS in tracking patterns or issues. Possible values include:

\n " + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.partnercentralselling#RejectionReasonString": { + "type": "string", + "traits": { + "smithy.api#pattern": "^[\\u0020-\\u007E\\u00A0-\\uD7FF\\uE000-\\uFFFD]{1,80}$" + } + }, + "com.amazonaws.partnercentralselling#RelatedEntityIdentifiers": { + "type": "structure", + "members": { + "AwsMarketplaceOffers": { + "target": "com.amazonaws.partnercentralselling#AwsMarketplaceOfferIdentifiers", + "traits": { + "smithy.api#documentation": "

\n Takes one value per opportunity. Each value is an Amazon Resource Name (ARN), in this format: \"offers\": [\"arn:aws:aws-marketplace:us-east-1:999999999999:AWSMarketplace/Offer/offer-sampleOffer32\"].\n

\n

\n Use the ListEntities action in the Marketplace Catalog APIs for a list of offers in the associated Marketplace seller account.\n

" + } + }, + "Solutions": { + "target": "com.amazonaws.partnercentralselling#SolutionIdentifiers", + "traits": { + "smithy.api#documentation": "

\n Enables partner solutions or offerings' association with an opportunity. To associate a solution, provide the solution's unique identifier, which you can obtain with the ListSolutions operation.\n

\n

\n If the specific solution identifier is not available, you can use the value Other and provide details about the solution in the otherSolutionOffered field. However, once the opportunity reaches the Committed stage or beyond, the Other value cannot be used, and a valid solution identifier must be provided.\n

\n

\n By associating the relevant solutions with the opportunity, you can clearly communicate the offerings that are being considered or implemented to address the customer's business problem.\n

" + } + }, + "AwsProducts": { + "target": "com.amazonaws.partnercentralselling#AwsProductIdentifiers", + "traits": { + "smithy.api#documentation": "

\n Enables the association of specific Amazon Web Services products with the Opportunity. Partners can indicate\n the relevant Amazon Web Services products for the Opportunity's solution and align with the customer's\n needs. Returns multiple values separated by commas. For example, \"AWSProducts\" : [\"AmazonRedshift\", \"AWSAppFabric\", \"AWSCleanRooms\"].\n

\n

\n Use the file with the list of Amazon Web Services products hosted on GitHub:\n \n Amazon Web Services products.\n

" + } + } + }, + "traits": { + "smithy.api#documentation": "

\n This field provides the associations' information for other entities with the opportunity. These entities include identifiers for\n AWSProducts, Partner Solutions, and AWSMarketplaceOffers.\n

" + } + }, + "com.amazonaws.partnercentralselling#RelatedEntityType": { + "type": "enum", + "members": { + "SOLUTIONS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Solutions" + } + }, + "AWS_PRODUCTS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AwsProducts" + } + }, + "AWS_MARKETPLACE_OFFERS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AwsMarketplaceOffers" + } + } + } + }, + "com.amazonaws.partnercentralselling#ResourceNotFoundException": { + "type": "structure", + "members": { + "Message": { + "target": "smithy.api#String" + } + }, + "traits": { + "smithy.api#documentation": "

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.\n

\n

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.\n

", + "smithy.api#error": "client", + "smithy.api#httpError": 404 + } + }, + "com.amazonaws.partnercentralselling#RevenueModel": { + "type": "enum", + "members": { + "CONTRACT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Contract" + } + }, + "PAY_AS_YOU_GO": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Pay-as-you-go" + } + }, + "SUBSCRIPTION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Subscription" + } + } + } + }, + "com.amazonaws.partnercentralselling#ReviewStatus": { + "type": "enum", + "members": { + "PENDING_SUBMISSION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Pending Submission" + } + }, + "SUBMITTED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Submitted" + } + }, + "IN_REVIEW": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "In review" + } + }, + "APPROVED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Approved" + } + }, + "REJECTED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Rejected" + } + }, + "ACTION_REQUIRED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Action Required" + } + } + } + }, + "com.amazonaws.partnercentralselling#SalesActivities": { + "type": "list", + "member": { + "target": "com.amazonaws.partnercentralselling#SalesActivity" + } + }, + "com.amazonaws.partnercentralselling#SalesActivity": { + "type": "enum", + "members": { + "INITIALIZED_DISCUSSIONS_WITH_CUSTOMER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Initialized discussions with customer" + } + }, + "CUSTOMER_HAS_SHOWN_INTEREST": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Customer has shown interest in solution" + } + }, + "CONDUCTED_POC_DEMO": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Conducted POC / Demo" + } + }, + "IN_EVALUATION_PLANNING_STAGE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "In evaluation / planning stage" + } + }, + "AGREED_ON_SOLUTION_TO_BUSINESS_PROBLEM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Agreed on solution to Business Problem" + } + }, + "COMPLETED_ACTION_PLAN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Completed Action Plan" + } + }, + "FINALIZED_DEPLOYMENT_NEEDS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Finalized Deployment Need" + } + }, + "SOW_SIGNED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SOW Signed" + } + } + } + }, + "com.amazonaws.partnercentralselling#SalesInvolvementType": { + "type": "enum", + "members": { + "FOR_VISIBILITY_ONLY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "For Visibility Only" + } + }, + "CO_SELL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Co-Sell" + } + } + } + }, + "com.amazonaws.partnercentralselling#SenderContact": { + "type": "structure", + "members": { + "Email": { + "target": "com.amazonaws.partnercentralselling#SenderContactEmail", + "traits": { + "smithy.api#documentation": "

The sender-provided contact's email address associated with the EngagementInvitation.\n

", + "smithy.api#required": {} + } + }, + "FirstName": { + "target": "com.amazonaws.partnercentralselling#Name", + "traits": { + "smithy.api#documentation": "

The sender-provided contact's last name associated with the EngagementInvitation.\n

" + } + }, + "LastName": { + "target": "com.amazonaws.partnercentralselling#Name", + "traits": { + "smithy.api#documentation": "

The sender-provided contact's first name associated with the EngagementInvitation.\n

" + } + }, + "BusinessTitle": { + "target": "com.amazonaws.partnercentralselling#JobTitle", + "traits": { + "smithy.api#documentation": "

The sender-provided contact's title (job title or role) associated with the EngagementInvitation.\n

" + } + }, + "Phone": { + "target": "com.amazonaws.partnercentralselling#PhoneNumber", + "traits": { + "smithy.api#documentation": "

The sender-provided contact's phone number associated with the EngagementInvitation.\n

" + } + } + }, + "traits": { + "smithy.api#documentation": "

An object that contains the details of the sender-provided contact person for the EngagementInvitation.\n

" + } + }, + "com.amazonaws.partnercentralselling#SenderContactEmail": { + "type": "string", + "traits": { + "smithy.api#length": { + "max": 80 + }, + "smithy.api#pattern": "^[a-zA-Z0-9.!#$%&'*+/=?^_{|}~-]+@[a-zA-Z0-9-]+(?:.[a-zA-Z0-9-]+)*$", + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.partnercentralselling#SenderContactList": { + "type": "list", + "member": { + "target": "com.amazonaws.partnercentralselling#SenderContact" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 3 + } + } + }, + "com.amazonaws.partnercentralselling#ServiceQuotaExceededException": { + "type": "structure", + "members": { + "Message": { + "target": "smithy.api#String" + } + }, + "traits": { + "smithy.api#documentation": "

This error occurs when the request would cause a service quota to be exceeded.\n Service quotas represent the maximum allowed use of a specific resource, and this error indicates that the request would surpass that limit.\n

\n

Suggested action: Review the\n service quotas for the specific resource, and reduce the usage or request a quota increase through support if necessary.\n

", + "smithy.api#error": "client", + "smithy.api#httpError": 402 + } + }, + "com.amazonaws.partnercentralselling#SoftwareRevenue": { + "type": "structure", + "members": { + "DeliveryModel": { + "target": "com.amazonaws.partnercentralselling#RevenueModel", + "traits": { + "smithy.api#documentation": "

Specifies the customer's intended payment type agreement or procurement method to acquire the solution or service outlined in the Opportunity.\n

" + } + }, + "Value": { + "target": "com.amazonaws.partnercentralselling#MonetaryValue", + "traits": { + "smithy.api#documentation": "

Specifies the payment value (amount and currency).

" + } + }, + "EffectiveDate": { + "target": "com.amazonaws.partnercentralselling#Date", + "traits": { + "smithy.api#documentation": "

Specifies the Opportunity's customer engagement start date for the contract's effectiveness.\n

" + } + }, + "ExpirationDate": { + "target": "com.amazonaws.partnercentralselling#Date", + "traits": { + "smithy.api#documentation": "

Specifies the expiration date for the contract between the customer and\n Amazon Web Services partner. It signifies the termination date of the agreed-upon engagement period between\n both parties.\n

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies a customer's procurement terms details. Required only for partners in eligible programs.

" + } + }, + "com.amazonaws.partnercentralselling#Solution": { + "type": "resource", + "identifiers": { + "Identifier": { + "target": "com.amazonaws.partnercentralselling#SolutionIdentifier" + }, + "Catalog": { + "target": "com.amazonaws.partnercentralselling#CatalogIdentifier" + } + }, + "list": { + "target": "com.amazonaws.partnercentralselling#ListSolutions" + }, + "traits": { + "aws.api#arn": { + "template": "catalog/{Catalog}/solution/{Identifier}" + }, + "aws.iam#disableConditionKeyInference": {}, + "aws.iam#iamResource": { + "relativeDocumentation": "/working-with-solutions.html" + }, + "smithy.api#documentation": "Represents a Solution that is listed on AWS Partner Central" + } + }, + "com.amazonaws.partnercentralselling#SolutionBase": { + "type": "structure", + "members": { + "Catalog": { + "target": "com.amazonaws.partnercentralselling#CatalogIdentifier", + "traits": { + "smithy.api#documentation": "

Specifies the catalog in which the solution is hosted, either AWS or Sandbox. This helps partners differentiate between live solutions and those in testing environments.

", + "smithy.api#required": {} + } + }, + "Id": { + "target": "com.amazonaws.partnercentralselling#SolutionIdentifier", + "traits": { + "smithy.api#documentation": "

Enables the association of solutions (offerings) to opportunities.

", + "smithy.api#required": {} + } + }, + "Name": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Specifies the solution name.

", + "smithy.api#required": {} + } + }, + "Status": { + "target": "com.amazonaws.partnercentralselling#SolutionStatus", + "traits": { + "smithy.api#documentation": "

\n Specifies the solution's current status, which indicates its state in the system.\n Valid values: Active | Inactive | Draft.\n The status helps partners and Amazon Web Services track the solution's lifecycle and availability. Filter for Active solutions for association to an opportunity.\n

", + "smithy.api#required": {} + } + }, + "Category": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

\n Specifies the solution category, which helps to categorize and organize the solutions partners offer.\n Valid values: Software Product | Consulting Service |\n Hardware Product | Communications Product |\n Professional Service | Managed Service |\n Value-Added Resale Amazon Web Services Service | Distribution Service |\n Training Service | Merger and Acquisition Advising Service.\n

", + "smithy.api#required": {} + } + }, + "CreatedDate": { + "target": "com.amazonaws.partnercentralselling#DateTime", + "traits": { + "smithy.api#documentation": "

Indicates the solution creation date. This is useful to track and audit.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies minimal information for the solution offered to solve the customer's business problem.

" + } + }, + "com.amazonaws.partnercentralselling#SolutionIdentifier": { + "type": "string", + "traits": { + "smithy.api#pattern": "^S-[0-9]{1,19}$" + } + }, + "com.amazonaws.partnercentralselling#SolutionIdentifiers": { + "type": "list", + "member": { + "target": "com.amazonaws.partnercentralselling#SolutionIdentifier" + } + }, + "com.amazonaws.partnercentralselling#SolutionList": { + "type": "list", + "member": { + "target": "com.amazonaws.partnercentralselling#SolutionBase" + } + }, + "com.amazonaws.partnercentralselling#SolutionSort": { + "type": "structure", + "members": { + "SortOrder": { + "target": "com.amazonaws.partnercentralselling#SortOrder", + "traits": { + "smithy.api#documentation": "

\n Specifies the sorting order, either Ascending or Descending. The default is Descending.\n

", + "smithy.api#required": {} + } + }, + "SortBy": { + "target": "com.amazonaws.partnercentralselling#SolutionSortName", + "traits": { + "smithy.api#documentation": "

\n Specifies the attribute to sort by, such as Name, CreatedDate, or Status.\n

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

\n Configures the solutions' response sorting that enables partners to order solutions based on specified attributes.\n

" + } + }, + "com.amazonaws.partnercentralselling#SolutionSortName": { + "type": "enum", + "members": { + "IDENTIFIER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Identifier" + } + }, + "NAME": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Name" + } + }, + "STATUS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Status" + } + }, + "CATEGORY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Category" + } + }, + "CREATEDDATE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CreatedDate" + } + } + } + }, + "com.amazonaws.partnercentralselling#SolutionStatus": { + "type": "enum", + "members": { + "ACTIVE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Active" + } + }, + "INACTIVE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Inactive" + } + }, + "DRAFT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Draft" + } + } + } + }, + "com.amazonaws.partnercentralselling#SortOrder": { + "type": "enum", + "members": { + "ASCENDING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ASCENDING" + } + }, + "DESCENDING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DESCENDING" + } + } + } + }, + "com.amazonaws.partnercentralselling#Stage": { + "type": "enum", + "members": { + "PROSPECT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Prospect" + } + }, + "QUALIFIED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Qualified" + } + }, + "TECHNICAL_VALIDATION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Technical Validation" + } + }, + "BUSINESS_VALIDATION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Business Validation" + } + }, + "COMMITTED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Committed" + } + }, + "LAUNCHED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Launched" + } + }, + "CLOSED_LOST": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Closed Lost" + } + } + } + }, + "com.amazonaws.partnercentralselling#StartEngagementByAcceptingInvitationTask": { + "type": "operation", + "input": { + "target": "com.amazonaws.partnercentralselling#StartEngagementByAcceptingInvitationTaskRequest" + }, + "output": { + "target": "com.amazonaws.partnercentralselling#StartEngagementByAcceptingInvitationTaskResponse" + }, + "errors": [ + { + "target": "com.amazonaws.partnercentralselling#AccessDeniedException" + }, + { + "target": "com.amazonaws.partnercentralselling#ConflictException" + }, + { + "target": "com.amazonaws.partnercentralselling#InternalServerException" + }, + { + "target": "com.amazonaws.partnercentralselling#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.partnercentralselling#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.partnercentralselling#ThrottlingException" + }, + { + "target": "com.amazonaws.partnercentralselling#ValidationException" + } + ], + "traits": { + "aws.iam#conditionKeys": [ + "partnercentral:Catalog" + ], + "aws.iam#iamAction": { + "requiredActions": [ + "partnercentral:CreateOpportunity", + "partnercentral:SubmitOpportunity", + "partnercentral:GetEngagementInvitation", + "partnercentral:AcceptEngagementInvitation", + "partnercentral:CreateResourceSnapshotJob", + "partnercentral:StartResourceSnapshotJob" + ], + "documentation": "Grants permission to initiate tasks that start Engagements on AWS Partner Central by accepting an Engagement Invitation" + }, + "smithy.api#documentation": "

This action starts the engagement by accepting an EngagementInvitation. The task is asynchronous and involves several steps: accepting the invitation, creating an opportunity in the partner’s account from the AWS Opportunity, and copying over key details for tracking. Once completed, an Opportunity Created event is generated, indicating that the opportunity has been successfully created in the partner's account.

", + "smithy.api#http": { + "method": "POST", + "uri": "/StartEngagementByAcceptingInvitationTask", + "code": 200 + } + } + }, + "com.amazonaws.partnercentralselling#StartEngagementByAcceptingInvitationTaskRequest": { + "type": "structure", + "members": { + "Catalog": { + "target": "com.amazonaws.partnercentralselling#CatalogIdentifier", + "traits": { + "smithy.api#documentation": "

Specifies the catalog related to the task. Use AWS for production engagements and Sandbox for testing scenarios.

", + "smithy.api#required": {} + } + }, + "ClientToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive identifier provided by the client to ensure the idempotency of the request. Can be a random or meaningful string, but must be unique for each request.

", + "smithy.api#idempotencyToken": {}, + "smithy.api#length": { + "min": 1 + }, + "smithy.api#required": {} + } + }, + "Identifier": { + "target": "com.amazonaws.partnercentralselling#EngagementInvitationArnOrIdentifier", + "traits": { + "smithy.api#documentation": "

Specifies the unique identifier of the EngagementInvitation to be accepted. Providing the correct identifier ensures the right engagement invitation is processed.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.partnercentralselling#StartEngagementByAcceptingInvitationTaskResponse": { + "type": "structure", + "members": { + "TaskId": { + "target": "com.amazonaws.partnercentralselling#TaskIdentifier", + "traits": { + "smithy.api#documentation": "

The unique identifier of the task, used to track the task’s progress. This value follows a specific pattern: ^oit-[0-9a-z]{13}$.

" + } + }, + "TaskArn": { + "target": "com.amazonaws.partnercentralselling#TaskArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the task, used for tracking and managing the task within AWS.

" + } + }, + "StartTime": { + "target": "com.amazonaws.partnercentralselling#DateTime", + "traits": { + "smithy.api#documentation": "

The timestamp indicating when the task was initiated. The format follows RFC 3339 section 5.6.

" + } + }, + "TaskStatus": { + "target": "com.amazonaws.partnercentralselling#TaskStatus", + "traits": { + "smithy.api#documentation": "

Indicates the current status of the task. Valid values include IN_PROGRESS, COMPLETE, and FAILED.

" + } + }, + "Message": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

If the task fails, this field contains a detailed message describing the failure and possible recovery steps.

" + } + }, + "ReasonCode": { + "target": "com.amazonaws.partnercentralselling#ReasonCode", + "traits": { + "smithy.api#documentation": "

Indicates the reason for task failure using an enumerated code. Possible values are: ACCEPT_ENGAGEMENT_INVITATION_FAILED, GET_ENGAGEMENT_INVITATION_FAILED, CREATE_OPPORTUNITY_FAILED, CREATE_RESOURCE_VIEW_AUTOMATION_FAILED, SUBMIT_OPPORTUNITY_FAILED.

" + } + }, + "OpportunityId": { + "target": "com.amazonaws.partnercentralselling#OpportunityIdentifier", + "traits": { + "smithy.api#documentation": "

Returns the original opportunity identifier passed in the request. This is the unique identifier for the opportunity.

" + } + }, + "EngagementInvitationId": { + "target": "com.amazonaws.partnercentralselling#EngagementInvitationIdentifier", + "traits": { + "smithy.api#documentation": "

Returns the identifier of the engagement invitation that was accepted and used to create the opportunity.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.partnercentralselling#StartEngagementFromOpportunityTask": { + "type": "operation", + "input": { + "target": "com.amazonaws.partnercentralselling#StartEngagementFromOpportunityTaskRequest" + }, + "output": { + "target": "com.amazonaws.partnercentralselling#StartEngagementFromOpportunityTaskResponse" + }, + "errors": [ + { + "target": "com.amazonaws.partnercentralselling#AccessDeniedException" + }, + { + "target": "com.amazonaws.partnercentralselling#ConflictException" + }, + { + "target": "com.amazonaws.partnercentralselling#InternalServerException" + }, + { + "target": "com.amazonaws.partnercentralselling#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.partnercentralselling#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.partnercentralselling#ThrottlingException" + }, + { + "target": "com.amazonaws.partnercentralselling#ValidationException" + } + ], + "traits": { + "aws.iam#conditionKeys": [ + "partnercentral:Catalog" + ], + "aws.iam#iamAction": { + "requiredActions": [ + "partnercentral:CreateEngagement", + "partnercentral:SubmitOpportunity", + "partnercentral:GetOpportunity", + "partnercentral:CreateResourceSnapshotJob", + "partnercentral:CreateEngagementInvitation", + "partnercentral:StartResourceSnapshotJob" + ], + "documentation": "Grants permission to initiate tasks that start Engagements from Opportunities on AWS Partner Central" + }, + "smithy.api#documentation": "

This action initiates the engagement process from an existing opportunity by accepting the engagement invitation and creating a corresponding opportunity in the partner’s system. Similar to StartEngagementByAcceptingInvitationTask, this action is asynchronous and performs multiple steps before completion.

", + "smithy.api#http": { + "method": "POST", + "uri": "/StartEngagementFromOpportunityTask", + "code": 200 + } + } + }, + "com.amazonaws.partnercentralselling#StartEngagementFromOpportunityTaskRequest": { + "type": "structure", + "members": { + "Catalog": { + "target": "com.amazonaws.partnercentralselling#CatalogIdentifier", + "traits": { + "smithy.api#documentation": "

Specifies the catalog in which the engagement is tracked. Acceptable values include AWS for production and Sandbox for testing environments.

", + "smithy.api#required": {} + } + }, + "ClientToken": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

A unique token provided by the client to ensure the idempotency of the request. It helps prevent the same task from being performed multiple times.

", + "smithy.api#idempotencyToken": {}, + "smithy.api#length": { + "min": 1 + }, + "smithy.api#required": {} + } + }, + "Identifier": { + "target": "com.amazonaws.partnercentralselling#OpportunityIdentifier", + "traits": { + "smithy.api#documentation": "

The unique identifier of the opportunity from which the engagement task is to be initiated. This ensures the task is applied to the correct opportunity.

", + "smithy.api#required": {} + } + }, + "AwsSubmission": { + "target": "com.amazonaws.partnercentralselling#AwsSubmission", + "traits": { + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.partnercentralselling#StartEngagementFromOpportunityTaskResponse": { + "type": "structure", + "members": { + "TaskId": { + "target": "com.amazonaws.partnercentralselling#TaskIdentifier", + "traits": { + "smithy.api#documentation": "

The unique identifier of the task, used to track the task’s progress. This value follows a specific pattern: ^oit-[0-9a-z]{13}$.

" + } + }, + "TaskArn": { + "target": "com.amazonaws.partnercentralselling#TaskArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the task, used for tracking and managing the task within AWS.

" + } + }, + "StartTime": { + "target": "com.amazonaws.partnercentralselling#DateTime", + "traits": { + "smithy.api#documentation": "

The timestamp indicating when the task was initiated. The format follows RFC 3339 section 5.6.

" + } + }, + "TaskStatus": { + "target": "com.amazonaws.partnercentralselling#TaskStatus", + "traits": { + "smithy.api#documentation": "

Indicates the current status of the task. Valid values include IN_PROGRESS, COMPLETE, and FAILED.

" + } + }, + "Message": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

If the task fails, this field contains a detailed message describing the failure and possible recovery steps.

" + } + }, + "ReasonCode": { + "target": "com.amazonaws.partnercentralselling#ReasonCode", + "traits": { + "smithy.api#documentation": "

Indicates the reason for task failure using an enumerated code. Possible values are: ACCEPT_ENGAGEMENT_INVITATION_FAILED, GET_ENGAGEMENT_INVITATION_FAILED, CREATE_OPPORTUNITY_FAILED, CREATE_RESOURCE_VIEW_AUTOMATION_FAILED, SUBMIT_OPPORTUNITY_FAILED.

" + } + }, + "OpportunityId": { + "target": "com.amazonaws.partnercentralselling#OpportunityIdentifier", + "traits": { + "smithy.api#documentation": "

Returns the original opportunity identifier passed in the request, which is the unique identifier for the opportunity created in the partner’s system.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.partnercentralselling#StringList": { + "type": "list", + "member": { + "target": "smithy.api#String" + } + }, + "com.amazonaws.partnercentralselling#TaskArn": { + "type": "string", + "traits": { + "smithy.api#pattern": "^arn:.*" + } + }, + "com.amazonaws.partnercentralselling#TaskIdentifier": { + "type": "string", + "traits": { + "smithy.api#pattern": "task-[0-9a-z]{13}$" + } + }, + "com.amazonaws.partnercentralselling#TaskStatus": { + "type": "enum", + "members": { + "IN_PROGRESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IN_PROGRESS" + } + }, + "COMPLETE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "COMPLETE" + } + }, + "FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FAILED" + } + } + } + }, + "com.amazonaws.partnercentralselling#ThrottlingException": { + "type": "structure", + "members": { + "Message": { + "target": "smithy.api#String" + } + }, + "traits": { + "smithy.api#documentation": "

This error occurs when there are too many requests sent. Review the provided quotas and adapt your\n usage to avoid throttling.\n

\n

This error occurs when there are too many requests sent. Review the provided\n quotas and retry after the provided delay.\n

", + "smithy.api#error": "client", + "smithy.api#httpError": 429 + } + }, + "com.amazonaws.partnercentralselling#UpdateOpportunity": { + "type": "operation", + "input": { + "target": "com.amazonaws.partnercentralselling#UpdateOpportunityRequest" + }, + "output": { + "target": "com.amazonaws.partnercentralselling#UpdateOpportunityResponse" + }, + "errors": [ + { + "target": "com.amazonaws.partnercentralselling#AccessDeniedException" + }, + { + "target": "com.amazonaws.partnercentralselling#ConflictException" + }, + { + "target": "com.amazonaws.partnercentralselling#InternalServerException" + }, + { + "target": "com.amazonaws.partnercentralselling#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.partnercentralselling#ThrottlingException" + }, + { + "target": "com.amazonaws.partnercentralselling#ValidationException" + } + ], + "traits": { + "aws.iam#conditionKeys": [ + "partnercentral:Catalog" + ], + "aws.iam#iamAction": { + "documentation": "Grants permission to update Opportunities on AWS Partner Central" + }, + "smithy.api#documentation": "

\n Updates the Opportunity record identified by a given Identifier.\n This operation allows you to modify the details of an existing opportunity to reflect the latest information\n and progress. Use this action to keep the opportunity record up-to-date and accurate.\n

\n

\n When you perform updates, include the entire payload with each request. If any field is omitted, the API assumes that the field is set to null. The best practice is to always perform a GetOpportunity to retrieve the latest values, then send the complete payload with the updated values to be changed.\n

", + "smithy.api#http": { + "method": "POST", + "uri": "/UpdateOpportunity", + "code": 200 + } + } + }, + "com.amazonaws.partnercentralselling#UpdateOpportunityRequest": { + "type": "structure", + "members": { + "Catalog": { + "target": "com.amazonaws.partnercentralselling#CatalogIdentifier", + "traits": { + "smithy.api#documentation": "

\n Specifies the catalog associated with the request. This field takes a string value from a predefined list:\n AWS or Sandbox. The catalog determines which environment the opportunity is updated in.\n Use AWS to update real opportunities in the production\n environment, and Sandbox to test in a secure and isolated environment.\n When you use the Sandbox catalog, it allows you to simulate and validate your interactions\n with Amazon Web Services services without affecting live data or operations.\n

", + "smithy.api#required": {} + } + }, + "PrimaryNeedsFromAws": { + "target": "com.amazonaws.partnercentralselling#PrimaryNeedsFromAws", + "traits": { + "smithy.api#documentation": "

\n Identifies the type of support the partner needs from Amazon Web Services.\n

\n

\n Valid values:\n

\n " + } + }, + "NationalSecurity": { + "target": "com.amazonaws.partnercentralselling#NationalSecurity", + "traits": { + "smithy.api#documentation": "

Specifies if the opportunity is associated with national security concerns. This flag is only applicable when the industry is Government. For national security-related opportunities, specific validation and compliance rules may apply, impacting the opportunity's visibility and processing.

" + } + }, + "PartnerOpportunityIdentifier": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Specifies the opportunity's unique identifier in the partner's CRM system. This value is essential\n to track and reconcile because it's included in the outbound payload sent back to the partner.\n

", + "smithy.api#length": { + "max": 64 + } + } + }, + "Customer": { + "target": "com.amazonaws.partnercentralselling#Customer", + "traits": { + "smithy.api#documentation": "

Specifies details of the customer associated with the Opportunity .\n

" + } + }, + "Project": { + "target": "com.amazonaws.partnercentralselling#Project", + "traits": { + "smithy.api#documentation": "

An object that contains project details summary for the Opportunity.\n

" + } + }, + "OpportunityType": { + "target": "com.amazonaws.partnercentralselling#OpportunityType", + "traits": { + "smithy.api#documentation": "

\n Specifies the opportunity type as a renewal, new, or expansion.\n

\n

\n Opportunity types:\n

\n " + } + }, + "Marketing": { + "target": "com.amazonaws.partnercentralselling#Marketing", + "traits": { + "smithy.api#documentation": "

An object that contains marketing details for the Opportunity.\n

" + } + }, + "SoftwareRevenue": { + "target": "com.amazonaws.partnercentralselling#SoftwareRevenue", + "traits": { + "smithy.api#documentation": "

Specifies details of a customer's procurement terms. Required only for partners in eligible programs.

" + } + }, + "LastModifiedDate": { + "target": "com.amazonaws.partnercentralselling#DateTime", + "traits": { + "smithy.api#documentation": "

\n DateTime when the opportunity was last modified.\n

", + "smithy.api#required": {} + } + }, + "Identifier": { + "target": "com.amazonaws.partnercentralselling#OpportunityIdentifier", + "traits": { + "smithy.api#documentation": "

Read-only, system generated Opportunity unique identifier.\n

", + "smithy.api#required": {} + } + }, + "LifeCycle": { + "target": "com.amazonaws.partnercentralselling#LifeCycle", + "traits": { + "smithy.api#documentation": "

An object that contains lifecycle details for the Opportunity.\n

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.partnercentralselling#UpdateOpportunityResponse": { + "type": "structure", + "members": { + "Id": { + "target": "com.amazonaws.partnercentralselling#OpportunityIdentifier", + "traits": { + "smithy.api#documentation": "

Read-only, system generated Opportunity unique identifier.\n

", + "smithy.api#required": {} + } + }, + "LastModifiedDate": { + "target": "com.amazonaws.partnercentralselling#DateTime", + "traits": { + "smithy.api#documentation": "

\n DateTime\n when the opportunity was last modified.\n

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.partnercentralselling#UseCases": { + "type": "list", + "member": { + "target": "smithy.api#String" + } + }, + "com.amazonaws.partnercentralselling#ValidationException": { + "type": "structure", + "members": { + "Message": { + "target": "smithy.api#String", + "traits": { + "smithy.api#required": {} + } + }, + "Reason": { + "target": "com.amazonaws.partnercentralselling#ValidationExceptionReason", + "traits": { + "smithy.api#documentation": "

\n The primary reason for this validation exception to occur.\n

\n ", + "smithy.api#required": {} + } + }, + "ErrorList": { + "target": "com.amazonaws.partnercentralselling#ValidationExceptionErrorList", + "traits": { + "smithy.api#documentation": "

A list of issues that were discovered in the submitted request or the resource state.\n

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The input fails to satisfy the constraints specified by the service or business validation rules.\n

\n

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.\n

", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + }, + "com.amazonaws.partnercentralselling#ValidationExceptionError": { + "type": "structure", + "members": { + "FieldName": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Specifies the field name with the invalid value.

" + } + }, + "Message": { + "target": "smithy.api#String", + "traits": { + "smithy.api#documentation": "

Specifies the detailed error message for the invalid field value.

", + "smithy.api#required": {} + } + }, + "Code": { + "target": "com.amazonaws.partnercentralselling#ValidationExceptionErrorCode", + "traits": { + "smithy.api#documentation": "

Specifies the error code for the invalid field value.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

\n Indicates an invalid value for a field.\n

\n " + } + }, + "com.amazonaws.partnercentralselling#ValidationExceptionErrorCode": { + "type": "enum", + "members": { + "REQUIRED_FIELD_MISSING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "REQUIRED_FIELD_MISSING" + } + }, + "INVALID_ENUM_VALUE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "INVALID_ENUM_VALUE" + } + }, + "INVALID_STRING_FORMAT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "INVALID_STRING_FORMAT" + } + }, + "INVALID_VALUE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "INVALID_VALUE" + } + }, + "TOO_MANY_VALUES": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TOO_MANY_VALUES" + } + }, + "INVALID_RESOURCE_STATE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "INVALID_RESOURCE_STATE" + } + }, + "DUPLICATE_KEY_VALUE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DUPLICATE_KEY_VALUE" + } + }, + "VALUE_OUT_OF_RANGE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "VALUE_OUT_OF_RANGE" + } + }, + "ACTION_NOT_PERMITTED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ACTION_NOT_PERMITTED" + } + } + } + }, + "com.amazonaws.partnercentralselling#ValidationExceptionErrorList": { + "type": "list", + "member": { + "target": "com.amazonaws.partnercentralselling#ValidationExceptionError" + } + }, + "com.amazonaws.partnercentralselling#ValidationExceptionReason": { + "type": "enum", + "members": { + "REQUEST_VALIDATION_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "REQUEST_VALIDATION_FAILED" + } + }, + "BUSINESS_VALIDATION_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BUSINESS_VALIDATION_FAILED" + } + } + } + }, + "com.amazonaws.partnercentralselling#Visibility": { + "type": "enum", + "members": { + "FULL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Full" + } + }, + "LIMITED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Limited" + } + } + } + }, + "com.amazonaws.partnercentralselling#WebsiteUrl": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 4, + "max": 255 + }, + "smithy.api#sensitive": {} + } + } + } +} \ No newline at end of file diff --git a/codegen/sdk-codegen/aws-models/quicksight.json b/codegen/sdk-codegen/aws-models/quicksight.json index f219ff9fde1..399ae2f7c39 100644 --- a/codegen/sdk-codegen/aws-models/quicksight.json +++ b/codegen/sdk-codegen/aws-models/quicksight.json @@ -546,6 +546,16 @@ "smithy.api#documentation": "

An empty object that represents that the AllSheets option is the chosen value for the FilterScopeConfiguration parameter. This structure applies the filter to all visuals on all sheets of an Analysis, Dashboard, or Template.

\n

This is a union type structure. For this structure to be valid, only one of the attributes can be defined.

" } }, + "com.amazonaws.quicksight#AltText": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 512 + }, + "smithy.api#pattern": "^[ -ÿ]+$" + } + }, "com.amazonaws.quicksight#AmazonElasticsearchParameters": { "type": "structure", "members": { @@ -1267,6 +1277,26 @@ "target": "com.amazonaws.quicksight#AnswerId" } }, + "com.amazonaws.quicksight#ApplicationTheme": { + "type": "structure", + "members": { + "BrandColorPalette": { + "target": "com.amazonaws.quicksight#BrandColorPalette", + "traits": { + "smithy.api#documentation": "

The color palette.

" + } + }, + "BrandElementStyle": { + "target": "com.amazonaws.quicksight#BrandElementStyle", + "traits": { + "smithy.api#documentation": "

The element style.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The application theme.

" + } + }, "com.amazonaws.quicksight#ArcAxisConfiguration": { "type": "structure", "members": { @@ -5254,6 +5284,292 @@ "smithy.api#documentation": "

A box plot.

\n

For more information, see Using box plots in the Amazon QuickSight User Guide.

" } }, + "com.amazonaws.quicksight#BrandColorPalette": { + "type": "structure", + "members": { + "Primary": { + "target": "com.amazonaws.quicksight#Palette", + "traits": { + "smithy.api#documentation": "

The primary color.

" + } + }, + "Secondary": { + "target": "com.amazonaws.quicksight#Palette", + "traits": { + "smithy.api#documentation": "

The secondary color.

" + } + }, + "Accent": { + "target": "com.amazonaws.quicksight#Palette", + "traits": { + "smithy.api#documentation": "

The color that is used for accent elements.

" + } + }, + "Measure": { + "target": "com.amazonaws.quicksight#Palette", + "traits": { + "smithy.api#documentation": "

The color that is used for measure elements.

" + } + }, + "Dimension": { + "target": "com.amazonaws.quicksight#Palette", + "traits": { + "smithy.api#documentation": "

The color that is used for dimension elements.

" + } + }, + "Success": { + "target": "com.amazonaws.quicksight#Palette", + "traits": { + "smithy.api#documentation": "

The color that is used for success elements.

" + } + }, + "Info": { + "target": "com.amazonaws.quicksight#Palette", + "traits": { + "smithy.api#documentation": "

The color that is used for info elements.

" + } + }, + "Warning": { + "target": "com.amazonaws.quicksight#Palette", + "traits": { + "smithy.api#documentation": "

The color that is used for warning elements.

" + } + }, + "Danger": { + "target": "com.amazonaws.quicksight#Palette", + "traits": { + "smithy.api#documentation": "

The color that is used for danger elements.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The color palette.

" + } + }, + "com.amazonaws.quicksight#BrandDefinition": { + "type": "structure", + "members": { + "BrandName": { + "target": "com.amazonaws.quicksight#Name", + "traits": { + "smithy.api#documentation": "

The name of the brand.

", + "smithy.api#required": {} + } + }, + "Description": { + "target": "com.amazonaws.quicksight#Description", + "traits": { + "smithy.api#documentation": "

The description of the brand.

" + } + }, + "ApplicationTheme": { + "target": "com.amazonaws.quicksight#ApplicationTheme", + "traits": { + "smithy.api#documentation": "

The application theme of the brand.

" + } + }, + "LogoConfiguration": { + "target": "com.amazonaws.quicksight#LogoConfiguration", + "traits": { + "smithy.api#documentation": "

The logo configuration of the brand.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The definition of the brand.

" + } + }, + "com.amazonaws.quicksight#BrandDetail": { + "type": "structure", + "members": { + "BrandId": { + "target": "com.amazonaws.quicksight#ShortRestrictiveResourceId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon QuickSight brand.

", + "smithy.api#required": {} + } + }, + "Arn": { + "target": "com.amazonaws.quicksight#Arn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the brand.

" + } + }, + "BrandStatus": { + "target": "com.amazonaws.quicksight#BrandStatus", + "traits": { + "smithy.api#documentation": "

The status of the brand.

" + } + }, + "CreatedTime": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The time that the brand was created.

" + } + }, + "LastUpdatedTime": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The last time the brand was updated.

" + } + }, + "VersionId": { + "target": "com.amazonaws.quicksight#ShortRestrictiveResourceId", + "traits": { + "smithy.api#documentation": "

The ID of the version.

" + } + }, + "VersionStatus": { + "target": "com.amazonaws.quicksight#BrandVersionStatus", + "traits": { + "smithy.api#documentation": "

The status of the version.

" + } + }, + "Errors": { + "target": "com.amazonaws.quicksight#ErrorList", + "traits": { + "smithy.api#documentation": "

A list of errors that occurred during the most recent brand operation.

" + } + }, + "Logo": { + "target": "com.amazonaws.quicksight#Logo", + "traits": { + "smithy.api#documentation": "

The logo details.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The details of the brand.

" + } + }, + "com.amazonaws.quicksight#BrandElementStyle": { + "type": "structure", + "members": { + "NavbarStyle": { + "target": "com.amazonaws.quicksight#NavbarStyle", + "traits": { + "smithy.api#documentation": "

The navigation bar style.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The element style.

" + } + }, + "com.amazonaws.quicksight#BrandStatus": { + "type": "enum", + "members": { + "CREATE_IN_PROGRESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CREATE_IN_PROGRESS" + } + }, + "CREATE_SUCCEEDED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CREATE_SUCCEEDED" + } + }, + "CREATE_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CREATE_FAILED" + } + }, + "DELETE_IN_PROGRESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DELETE_IN_PROGRESS" + } + }, + "DELETE_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DELETE_FAILED" + } + } + } + }, + "com.amazonaws.quicksight#BrandSummary": { + "type": "structure", + "members": { + "Arn": { + "target": "com.amazonaws.quicksight#Arn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the brand.

" + } + }, + "BrandId": { + "target": "com.amazonaws.quicksight#ShortRestrictiveResourceId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon QuickSight brand.

" + } + }, + "BrandName": { + "target": "com.amazonaws.quicksight#Name", + "traits": { + "smithy.api#documentation": "

The name of the brand.

" + } + }, + "Description": { + "target": "com.amazonaws.quicksight#Description", + "traits": { + "smithy.api#documentation": "

The description of the brand.

" + } + }, + "BrandStatus": { + "target": "com.amazonaws.quicksight#BrandStatus", + "traits": { + "smithy.api#documentation": "

The status of the brand.

" + } + }, + "CreatedTime": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The time that the brand was created.

" + } + }, + "LastUpdatedTime": { + "target": "smithy.api#Timestamp", + "traits": { + "smithy.api#documentation": "

The time when the brand was last updated.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A summary of the brand.

" + } + }, + "com.amazonaws.quicksight#BrandSummaryList": { + "type": "list", + "member": { + "target": "com.amazonaws.quicksight#BrandSummary" + } + }, + "com.amazonaws.quicksight#BrandVersionStatus": { + "type": "enum", + "members": { + "CREATE_IN_PROGRESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CREATE_IN_PROGRESS" + } + }, + "CREATE_SUCCEEDED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CREATE_SUCCEEDED" + } + }, + "CREATE_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CREATE_FAILED" + } + } + } + }, "com.amazonaws.quicksight#CIDR": { "type": "string", "traits": { @@ -5489,6 +5805,127 @@ "smithy.api#output": {} } }, + "com.amazonaws.quicksight#Capabilities": { + "type": "structure", + "members": { + "ExportToCsv": { + "target": "com.amazonaws.quicksight#CapabilityState", + "traits": { + "smithy.api#documentation": "

The ability to export to CSV files.

" + } + }, + "ExportToExcel": { + "target": "com.amazonaws.quicksight#CapabilityState", + "traits": { + "smithy.api#documentation": "

The ability to export to Excel files.

" + } + }, + "CreateAndUpdateThemes": { + "target": "com.amazonaws.quicksight#CapabilityState", + "traits": { + "smithy.api#documentation": "

The ability to export to Create and Update themes.

" + } + }, + "AddOrRunAnomalyDetectionForAnalyses": { + "target": "com.amazonaws.quicksight#CapabilityState", + "traits": { + "smithy.api#documentation": "

The ability to add or run anomaly detection.

" + } + }, + "ShareAnalyses": { + "target": "com.amazonaws.quicksight#CapabilityState", + "traits": { + "smithy.api#documentation": "

The ability to share analyses.

" + } + }, + "CreateAndUpdateDatasets": { + "target": "com.amazonaws.quicksight#CapabilityState", + "traits": { + "smithy.api#documentation": "

The ability to create and update datasets.

" + } + }, + "ShareDatasets": { + "target": "com.amazonaws.quicksight#CapabilityState", + "traits": { + "smithy.api#documentation": "

The ability to share datasets.

" + } + }, + "SubscribeDashboardEmailReports": { + "target": "com.amazonaws.quicksight#CapabilityState", + "traits": { + "smithy.api#documentation": "

The ability to subscribe to email reports.

" + } + }, + "CreateAndUpdateDashboardEmailReports": { + "target": "com.amazonaws.quicksight#CapabilityState", + "traits": { + "smithy.api#documentation": "

The ability to create and update email reports.

" + } + }, + "ShareDashboards": { + "target": "com.amazonaws.quicksight#CapabilityState", + "traits": { + "smithy.api#documentation": "

The ability to share dashboards.

" + } + }, + "CreateAndUpdateThresholdAlerts": { + "target": "com.amazonaws.quicksight#CapabilityState", + "traits": { + "smithy.api#documentation": "

The ability to create and update threshold alerts.

" + } + }, + "RenameSharedFolders": { + "target": "com.amazonaws.quicksight#CapabilityState", + "traits": { + "smithy.api#documentation": "

The ability to rename shared folders.

" + } + }, + "CreateSharedFolders": { + "target": "com.amazonaws.quicksight#CapabilityState", + "traits": { + "smithy.api#documentation": "

The ability to create shared folders.

" + } + }, + "CreateAndUpdateDataSources": { + "target": "com.amazonaws.quicksight#CapabilityState", + "traits": { + "smithy.api#documentation": "

The ability to create and update data sources.

" + } + }, + "ShareDataSources": { + "target": "com.amazonaws.quicksight#CapabilityState", + "traits": { + "smithy.api#documentation": "

The ability to share data sources.

" + } + }, + "ViewAccountSPICECapacity": { + "target": "com.amazonaws.quicksight#CapabilityState", + "traits": { + "smithy.api#documentation": "

The ability to view account SPICE capacity.

" + } + }, + "CreateSPICEDataset": { + "target": "com.amazonaws.quicksight#CapabilityState", + "traits": { + "smithy.api#documentation": "

The ability to create a SPICE dataset.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A set of actions that correspond to Amazon QuickSight permissions.

" + } + }, + "com.amazonaws.quicksight#CapabilityState": { + "type": "enum", + "members": { + "DENY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DENY" + } + } + } + }, "com.amazonaws.quicksight#CascadingControlConfiguration": { "type": "structure", "members": { @@ -8116,6 +8553,105 @@ "smithy.api#output": {} } }, + "com.amazonaws.quicksight#CreateBrand": { + "type": "operation", + "input": { + "target": "com.amazonaws.quicksight#CreateBrandRequest" + }, + "output": { + "target": "com.amazonaws.quicksight#CreateBrandResponse" + }, + "errors": [ + { + "target": "com.amazonaws.quicksight#AccessDeniedException" + }, + { + "target": "com.amazonaws.quicksight#ConflictException" + }, + { + "target": "com.amazonaws.quicksight#InternalServerException" + }, + { + "target": "com.amazonaws.quicksight#InvalidRequestException" + }, + { + "target": "com.amazonaws.quicksight#LimitExceededException" + }, + { + "target": "com.amazonaws.quicksight#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Creates an Amazon QuickSight brand.

", + "smithy.api#http": { + "method": "POST", + "uri": "/accounts/{AwsAccountId}/brands/{BrandId}", + "code": 200 + } + } + }, + "com.amazonaws.quicksight#CreateBrandRequest": { + "type": "structure", + "members": { + "AwsAccountId": { + "target": "com.amazonaws.quicksight#AwsAccountId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the brand.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "BrandId": { + "target": "com.amazonaws.quicksight#ShortRestrictiveResourceId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon QuickSight brand.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "BrandDefinition": { + "target": "com.amazonaws.quicksight#BrandDefinition", + "traits": { + "smithy.api#documentation": "

The definition of the brand.

" + } + }, + "Tags": { + "target": "com.amazonaws.quicksight#TagList", + "traits": { + "smithy.api#documentation": "

A map of the key-value pairs that are assigned to the brand.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.quicksight#CreateBrandResponse": { + "type": "structure", + "members": { + "RequestId": { + "target": "com.amazonaws.quicksight#String", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services request ID for this operation.

" + } + }, + "BrandDetail": { + "target": "com.amazonaws.quicksight#BrandDetail", + "traits": { + "smithy.api#documentation": "

The details of the brand.

" + } + }, + "BrandDefinition": { + "target": "com.amazonaws.quicksight#BrandDefinition", + "traits": { + "smithy.api#documentation": "

The definition of the brand.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.quicksight#CreateColumnsOperation": { "type": "structure", "members": { @@ -8131,6 +8667,117 @@ "smithy.api#documentation": "

A transform operation that creates calculated columns. Columns created in one such\n operation form a lexical closure.

" } }, + "com.amazonaws.quicksight#CreateCustomPermissions": { + "type": "operation", + "input": { + "target": "com.amazonaws.quicksight#CreateCustomPermissionsRequest" + }, + "output": { + "target": "com.amazonaws.quicksight#CreateCustomPermissionsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.quicksight#AccessDeniedException" + }, + { + "target": "com.amazonaws.quicksight#ConflictException" + }, + { + "target": "com.amazonaws.quicksight#InternalFailureException" + }, + { + "target": "com.amazonaws.quicksight#InvalidParameterValueException" + }, + { + "target": "com.amazonaws.quicksight#LimitExceededException" + }, + { + "target": "com.amazonaws.quicksight#PreconditionNotMetException" + }, + { + "target": "com.amazonaws.quicksight#ResourceExistsException" + }, + { + "target": "com.amazonaws.quicksight#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.quicksight#ResourceUnavailableException" + }, + { + "target": "com.amazonaws.quicksight#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Creates a custom permissions profile.

", + "smithy.api#http": { + "method": "POST", + "uri": "/accounts/{AwsAccountId}/custom-permissions", + "code": 200 + } + } + }, + "com.amazonaws.quicksight#CreateCustomPermissionsRequest": { + "type": "structure", + "members": { + "AwsAccountId": { + "target": "com.amazonaws.quicksight#AwsAccountId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon Web Services account that you want to create the custom permissions profile in.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "CustomPermissionsName": { + "target": "com.amazonaws.quicksight#CustomPermissionsName", + "traits": { + "smithy.api#documentation": "

The name of the custom permissions profile that you want to create.

", + "smithy.api#required": {} + } + }, + "Capabilities": { + "target": "com.amazonaws.quicksight#Capabilities", + "traits": { + "smithy.api#documentation": "

A set of actions to include in the custom permissions profile.

" + } + }, + "Tags": { + "target": "com.amazonaws.quicksight#TagList", + "traits": { + "smithy.api#documentation": "

The tags to associate with the custom permissions profile.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.quicksight#CreateCustomPermissionsResponse": { + "type": "structure", + "members": { + "Status": { + "target": "com.amazonaws.quicksight#StatusCode", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The HTTP status of the request.

" + } + }, + "Arn": { + "target": "com.amazonaws.quicksight#Arn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the custom permissions profile.

" + } + }, + "RequestId": { + "target": "com.amazonaws.quicksight#String", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services request ID for this operation.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.quicksight#CreateDashboard": { "type": "operation", "input": { @@ -11234,6 +11881,48 @@ "smithy.api#documentation": "

The customized parameter values.

\n

This is a union type structure. For this structure to be valid, only one of the attributes can be defined.

" } }, + "com.amazonaws.quicksight#CustomPermissions": { + "type": "structure", + "members": { + "Arn": { + "target": "com.amazonaws.quicksight#Arn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the custom permissions profile.

" + } + }, + "CustomPermissionsName": { + "target": "com.amazonaws.quicksight#CustomPermissionsName", + "traits": { + "smithy.api#documentation": "

The name of the custom permissions profile.

" + } + }, + "Capabilities": { + "target": "com.amazonaws.quicksight#Capabilities", + "traits": { + "smithy.api#documentation": "

A set of actions in the custom permissions profile.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The custom permissions profile.

" + } + }, + "com.amazonaws.quicksight#CustomPermissionsList": { + "type": "list", + "member": { + "target": "com.amazonaws.quicksight#CustomPermissions" + } + }, + "com.amazonaws.quicksight#CustomPermissionsName": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 64 + }, + "smithy.api#pattern": "^[a-zA-Z0-9+=,.@_-]+$" + } + }, "com.amazonaws.quicksight#CustomSql": { "type": "structure", "members": { @@ -15361,6 +16050,247 @@ "smithy.api#output": {} } }, + "com.amazonaws.quicksight#DeleteBrand": { + "type": "operation", + "input": { + "target": "com.amazonaws.quicksight#DeleteBrandRequest" + }, + "output": { + "target": "com.amazonaws.quicksight#DeleteBrandResponse" + }, + "errors": [ + { + "target": "com.amazonaws.quicksight#AccessDeniedException" + }, + { + "target": "com.amazonaws.quicksight#ConflictException" + }, + { + "target": "com.amazonaws.quicksight#InternalServerException" + }, + { + "target": "com.amazonaws.quicksight#InvalidRequestException" + }, + { + "target": "com.amazonaws.quicksight#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.quicksight#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Deletes an Amazon QuickSight brand.

", + "smithy.api#http": { + "method": "DELETE", + "uri": "/accounts/{AwsAccountId}/brands/{BrandId}", + "code": 200 + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.quicksight#DeleteBrandAssignment": { + "type": "operation", + "input": { + "target": "com.amazonaws.quicksight#DeleteBrandAssignmentRequest" + }, + "output": { + "target": "com.amazonaws.quicksight#DeleteBrandAssignmentResponse" + }, + "errors": [ + { + "target": "com.amazonaws.quicksight#AccessDeniedException" + }, + { + "target": "com.amazonaws.quicksight#ConflictException" + }, + { + "target": "com.amazonaws.quicksight#InternalServerException" + }, + { + "target": "com.amazonaws.quicksight#InvalidRequestException" + }, + { + "target": "com.amazonaws.quicksight#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.quicksight#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Deletes a brand assignment.

", + "smithy.api#http": { + "method": "DELETE", + "uri": "/accounts/{AwsAccountId}/brandassignments", + "code": 200 + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.quicksight#DeleteBrandAssignmentRequest": { + "type": "structure", + "members": { + "AwsAccountId": { + "target": "com.amazonaws.quicksight#AwsAccountId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the brand assignment.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.quicksight#DeleteBrandAssignmentResponse": { + "type": "structure", + "members": { + "RequestId": { + "target": "com.amazonaws.quicksight#String", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services request ID for this operation.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.quicksight#DeleteBrandRequest": { + "type": "structure", + "members": { + "AwsAccountId": { + "target": "com.amazonaws.quicksight#AwsAccountId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the brand.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "BrandId": { + "target": "com.amazonaws.quicksight#ShortRestrictiveResourceId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon QuickSight brand.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.quicksight#DeleteBrandResponse": { + "type": "structure", + "members": { + "RequestId": { + "target": "com.amazonaws.quicksight#String", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services request ID for this operation.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.quicksight#DeleteCustomPermissions": { + "type": "operation", + "input": { + "target": "com.amazonaws.quicksight#DeleteCustomPermissionsRequest" + }, + "output": { + "target": "com.amazonaws.quicksight#DeleteCustomPermissionsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.quicksight#AccessDeniedException" + }, + { + "target": "com.amazonaws.quicksight#ConflictException" + }, + { + "target": "com.amazonaws.quicksight#InternalFailureException" + }, + { + "target": "com.amazonaws.quicksight#InvalidParameterValueException" + }, + { + "target": "com.amazonaws.quicksight#PreconditionNotMetException" + }, + { + "target": "com.amazonaws.quicksight#ResourceExistsException" + }, + { + "target": "com.amazonaws.quicksight#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.quicksight#ResourceUnavailableException" + }, + { + "target": "com.amazonaws.quicksight#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Deletes a custom permissions profile.

", + "smithy.api#http": { + "method": "DELETE", + "uri": "/accounts/{AwsAccountId}/custom-permissions/{CustomPermissionsName}", + "code": 200 + } + } + }, + "com.amazonaws.quicksight#DeleteCustomPermissionsRequest": { + "type": "structure", + "members": { + "AwsAccountId": { + "target": "com.amazonaws.quicksight#AwsAccountId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon Web Services account that contains the custom permissions profile that you want to delete.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "CustomPermissionsName": { + "target": "com.amazonaws.quicksight#CustomPermissionsName", + "traits": { + "smithy.api#documentation": "

The name of the custom permissions profile that you want to delete.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.quicksight#DeleteCustomPermissionsResponse": { + "type": "structure", + "members": { + "Status": { + "target": "com.amazonaws.quicksight#StatusCode", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The HTTP status of the request.

" + } + }, + "Arn": { + "target": "com.amazonaws.quicksight#Arn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the custom permissions profile.

" + } + }, + "RequestId": { + "target": "com.amazonaws.quicksight#String", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services request ID for this operation.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.quicksight#DeleteDashboard": { "type": "operation", "input": { @@ -17462,6 +18392,103 @@ "smithy.api#output": {} } }, + "com.amazonaws.quicksight#DeleteUserCustomPermission": { + "type": "operation", + "input": { + "target": "com.amazonaws.quicksight#DeleteUserCustomPermissionRequest" + }, + "output": { + "target": "com.amazonaws.quicksight#DeleteUserCustomPermissionResponse" + }, + "errors": [ + { + "target": "com.amazonaws.quicksight#AccessDeniedException" + }, + { + "target": "com.amazonaws.quicksight#ConflictException" + }, + { + "target": "com.amazonaws.quicksight#InternalFailureException" + }, + { + "target": "com.amazonaws.quicksight#InvalidParameterValueException" + }, + { + "target": "com.amazonaws.quicksight#PreconditionNotMetException" + }, + { + "target": "com.amazonaws.quicksight#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.quicksight#ResourceUnavailableException" + }, + { + "target": "com.amazonaws.quicksight#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Deletes a custom permissions profile from a user.

", + "smithy.api#http": { + "method": "DELETE", + "uri": "/accounts/{AwsAccountId}/namespaces/{Namespace}/users/{UserName}/custom-permission", + "code": 200 + } + } + }, + "com.amazonaws.quicksight#DeleteUserCustomPermissionRequest": { + "type": "structure", + "members": { + "UserName": { + "target": "com.amazonaws.quicksight#UserName", + "traits": { + "smithy.api#documentation": "

The username of the user that you want to remove custom permissions from.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "AwsAccountId": { + "target": "com.amazonaws.quicksight#AwsAccountId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon Web Services account that contains the custom permission configuration that you want to delete.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "Namespace": { + "target": "com.amazonaws.quicksight#Namespace", + "traits": { + "smithy.api#documentation": "

The namespace that the user belongs to.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.quicksight#DeleteUserCustomPermissionResponse": { + "type": "structure", + "members": { + "RequestId": { + "target": "com.amazonaws.quicksight#String", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services request ID for this operation.

" + } + }, + "Status": { + "target": "com.amazonaws.quicksight#StatusCode", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The HTTP status of the request.

", + "smithy.api#httpResponseCode": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.quicksight#DeleteUserRequest": { "type": "structure", "members": { @@ -18561,6 +19588,351 @@ "smithy.api#output": {} } }, + "com.amazonaws.quicksight#DescribeBrand": { + "type": "operation", + "input": { + "target": "com.amazonaws.quicksight#DescribeBrandRequest" + }, + "output": { + "target": "com.amazonaws.quicksight#DescribeBrandResponse" + }, + "errors": [ + { + "target": "com.amazonaws.quicksight#AccessDeniedException" + }, + { + "target": "com.amazonaws.quicksight#ConflictException" + }, + { + "target": "com.amazonaws.quicksight#InternalServerException" + }, + { + "target": "com.amazonaws.quicksight#InvalidRequestException" + }, + { + "target": "com.amazonaws.quicksight#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.quicksight#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Describes a brand.

", + "smithy.api#http": { + "method": "GET", + "uri": "/accounts/{AwsAccountId}/brands/{BrandId}", + "code": 200 + } + } + }, + "com.amazonaws.quicksight#DescribeBrandAssignment": { + "type": "operation", + "input": { + "target": "com.amazonaws.quicksight#DescribeBrandAssignmentRequest" + }, + "output": { + "target": "com.amazonaws.quicksight#DescribeBrandAssignmentResponse" + }, + "errors": [ + { + "target": "com.amazonaws.quicksight#AccessDeniedException" + }, + { + "target": "com.amazonaws.quicksight#ConflictException" + }, + { + "target": "com.amazonaws.quicksight#InternalServerException" + }, + { + "target": "com.amazonaws.quicksight#InvalidRequestException" + }, + { + "target": "com.amazonaws.quicksight#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.quicksight#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Describes a brand assignment.

", + "smithy.api#http": { + "method": "GET", + "uri": "/accounts/{AwsAccountId}/brandassignments", + "code": 200 + } + } + }, + "com.amazonaws.quicksight#DescribeBrandAssignmentRequest": { + "type": "structure", + "members": { + "AwsAccountId": { + "target": "com.amazonaws.quicksight#AwsAccountId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the brand assignment.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.quicksight#DescribeBrandAssignmentResponse": { + "type": "structure", + "members": { + "RequestId": { + "target": "com.amazonaws.quicksight#String", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services request ID for this operation.

" + } + }, + "BrandArn": { + "target": "com.amazonaws.quicksight#Arn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the brand.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.quicksight#DescribeBrandPublishedVersion": { + "type": "operation", + "input": { + "target": "com.amazonaws.quicksight#DescribeBrandPublishedVersionRequest" + }, + "output": { + "target": "com.amazonaws.quicksight#DescribeBrandPublishedVersionResponse" + }, + "errors": [ + { + "target": "com.amazonaws.quicksight#AccessDeniedException" + }, + { + "target": "com.amazonaws.quicksight#ConflictException" + }, + { + "target": "com.amazonaws.quicksight#InternalServerException" + }, + { + "target": "com.amazonaws.quicksight#InvalidRequestException" + }, + { + "target": "com.amazonaws.quicksight#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.quicksight#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Describes the published version of the brand.

", + "smithy.api#http": { + "method": "GET", + "uri": "/accounts/{AwsAccountId}/brands/{BrandId}/publishedversion", + "code": 200 + } + } + }, + "com.amazonaws.quicksight#DescribeBrandPublishedVersionRequest": { + "type": "structure", + "members": { + "AwsAccountId": { + "target": "com.amazonaws.quicksight#AwsAccountId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the brand.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "BrandId": { + "target": "com.amazonaws.quicksight#ShortRestrictiveResourceId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon QuickSight brand.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.quicksight#DescribeBrandPublishedVersionResponse": { + "type": "structure", + "members": { + "RequestId": { + "target": "com.amazonaws.quicksight#String", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services request ID for this operation.

" + } + }, + "BrandDetail": { + "target": "com.amazonaws.quicksight#BrandDetail", + "traits": { + "smithy.api#documentation": "

The details of the brand.

" + } + }, + "BrandDefinition": { + "target": "com.amazonaws.quicksight#BrandDefinition", + "traits": { + "smithy.api#documentation": "

The definition of the brand.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.quicksight#DescribeBrandRequest": { + "type": "structure", + "members": { + "AwsAccountId": { + "target": "com.amazonaws.quicksight#AwsAccountId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the brand.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "BrandId": { + "target": "com.amazonaws.quicksight#ShortRestrictiveResourceId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon QuickSight brand.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "VersionId": { + "target": "com.amazonaws.quicksight#ShortRestrictiveResourceId", + "traits": { + "smithy.api#documentation": "

The ID of the specific version. The default value is the latest version.

", + "smithy.api#httpQuery": "versionId" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.quicksight#DescribeBrandResponse": { + "type": "structure", + "members": { + "RequestId": { + "target": "com.amazonaws.quicksight#String", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services request ID for this operation.

" + } + }, + "BrandDetail": { + "target": "com.amazonaws.quicksight#BrandDetail", + "traits": { + "smithy.api#documentation": "

The details of the brand.

" + } + }, + "BrandDefinition": { + "target": "com.amazonaws.quicksight#BrandDefinition", + "traits": { + "smithy.api#documentation": "

The definition of the brand.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.quicksight#DescribeCustomPermissions": { + "type": "operation", + "input": { + "target": "com.amazonaws.quicksight#DescribeCustomPermissionsRequest" + }, + "output": { + "target": "com.amazonaws.quicksight#DescribeCustomPermissionsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.quicksight#AccessDeniedException" + }, + { + "target": "com.amazonaws.quicksight#InternalFailureException" + }, + { + "target": "com.amazonaws.quicksight#InvalidParameterValueException" + }, + { + "target": "com.amazonaws.quicksight#PreconditionNotMetException" + }, + { + "target": "com.amazonaws.quicksight#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.quicksight#ResourceUnavailableException" + }, + { + "target": "com.amazonaws.quicksight#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Describes a custom permissions profile.

", + "smithy.api#http": { + "method": "GET", + "uri": "/accounts/{AwsAccountId}/custom-permissions/{CustomPermissionsName}", + "code": 200 + } + } + }, + "com.amazonaws.quicksight#DescribeCustomPermissionsRequest": { + "type": "structure", + "members": { + "AwsAccountId": { + "target": "com.amazonaws.quicksight#AwsAccountId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon Web Services account that contains the custom permissions profile that you want described.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "CustomPermissionsName": { + "target": "com.amazonaws.quicksight#CustomPermissionsName", + "traits": { + "smithy.api#documentation": "

The name of the custom permissions profile to describe.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.quicksight#DescribeCustomPermissionsResponse": { + "type": "structure", + "members": { + "Status": { + "target": "com.amazonaws.quicksight#StatusCode", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The HTTP status of the request.

" + } + }, + "CustomPermissions": { + "target": "com.amazonaws.quicksight#CustomPermissions", + "traits": { + "smithy.api#documentation": "

The custom permissions profile.

" + } + }, + "RequestId": { + "target": "com.amazonaws.quicksight#String", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services request ID for this operation.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.quicksight#DescribeDashboard": { "type": "operation", "input": { @@ -22311,6 +23683,16 @@ "smithy.api#output": {} } }, + "com.amazonaws.quicksight#Description": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^[ -ÿ]+$" + } + }, "com.amazonaws.quicksight#DestinationParameterValueConfiguration": { "type": "structure", "members": { @@ -22823,6 +24205,15 @@ "smithy.api#documentation": "

Error information for the SPICE ingestion of a dataset.

" } }, + "com.amazonaws.quicksight#ErrorList": { + "type": "list", + "member": { + "target": "com.amazonaws.quicksight#ErrorMessage" + } + }, + "com.amazonaws.quicksight#ErrorMessage": { + "type": "string" + }, "com.amazonaws.quicksight#ExasolParameters": { "type": "structure", "members": { @@ -27971,6 +29362,102 @@ "smithy.api#httpError": 403 } }, + "com.amazonaws.quicksight#Image": { + "type": "structure", + "members": { + "Source": { + "target": "com.amazonaws.quicksight#ImageSource", + "traits": { + "smithy.api#documentation": "

The source of the logo image.

" + } + }, + "GeneratedImageUrl": { + "target": "com.amazonaws.quicksight#String", + "traits": { + "smithy.api#documentation": "

The URL that points to the generated logo image.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The logo image.

" + } + }, + "com.amazonaws.quicksight#ImageConfiguration": { + "type": "structure", + "members": { + "Source": { + "target": "com.amazonaws.quicksight#ImageSource", + "traits": { + "smithy.api#documentation": "

The source of the image.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The logo image configuration.

" + } + }, + "com.amazonaws.quicksight#ImageSet": { + "type": "structure", + "members": { + "Original": { + "target": "com.amazonaws.quicksight#Image", + "traits": { + "smithy.api#documentation": "

The original image.

", + "smithy.api#required": {} + } + }, + "Height64": { + "target": "com.amazonaws.quicksight#Image", + "traits": { + "smithy.api#documentation": "

The image with the height set to 64 pixels.

" + } + }, + "Height32": { + "target": "com.amazonaws.quicksight#Image", + "traits": { + "smithy.api#documentation": "

The image with the height set to 32 pixels.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The image set.

" + } + }, + "com.amazonaws.quicksight#ImageSetConfiguration": { + "type": "structure", + "members": { + "Original": { + "target": "com.amazonaws.quicksight#ImageConfiguration", + "traits": { + "smithy.api#documentation": "

The original image.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The image set configuration.

" + } + }, + "com.amazonaws.quicksight#ImageSource": { + "type": "union", + "members": { + "PublicUrl": { + "target": "com.amazonaws.quicksight#String", + "traits": { + "smithy.api#documentation": "

The public URL that points to the source image.

" + } + }, + "S3Uri": { + "target": "com.amazonaws.quicksight#String", + "traits": { + "smithy.api#documentation": "

The Amazon S3 URI that points to the source image.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The source of the image.

" + } + }, "com.amazonaws.quicksight#IncludeFolderMembers": { "type": "enum", "members": { @@ -28891,6 +30378,22 @@ "smithy.api#httpError": 500 } }, + "com.amazonaws.quicksight#InternalServerException": { + "type": "structure", + "members": { + "Message": { + "target": "smithy.api#String", + "traits": { + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

An internal service exception.

", + "smithy.api#error": "server", + "smithy.api#httpError": 500 + } + }, "com.amazonaws.quicksight#InvalidNextTokenException": { "type": "structure", "members": { @@ -30464,13 +31967,117 @@ "smithy.api#input": {} } }, - "com.amazonaws.quicksight#ListAssetBundleExportJobsResponse": { + "com.amazonaws.quicksight#ListAssetBundleExportJobsResponse": { + "type": "structure", + "members": { + "AssetBundleExportJobSummaryList": { + "target": "com.amazonaws.quicksight#AssetBundleExportJobSummaryList", + "traits": { + "smithy.api#documentation": "

A list of export job summaries.

" + } + }, + "NextToken": { + "target": "com.amazonaws.quicksight#String", + "traits": { + "smithy.api#documentation": "

The token for the next set of results, or null if there are no more results.

" + } + }, + "RequestId": { + "target": "com.amazonaws.quicksight#NonEmptyString", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services request ID for this operation.

" + } + }, + "Status": { + "target": "com.amazonaws.quicksight#StatusCode", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The HTTP status of the request.

", + "smithy.api#httpResponseCode": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.quicksight#ListAssetBundleImportJobs": { + "type": "operation", + "input": { + "target": "com.amazonaws.quicksight#ListAssetBundleImportJobsRequest" + }, + "output": { + "target": "com.amazonaws.quicksight#ListAssetBundleImportJobsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.quicksight#AccessDeniedException" + }, + { + "target": "com.amazonaws.quicksight#InvalidNextTokenException" + }, + { + "target": "com.amazonaws.quicksight#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.quicksight#ThrottlingException" + }, + { + "target": "com.amazonaws.quicksight#UnsupportedUserEditionException" + } + ], + "traits": { + "smithy.api#documentation": "

Lists all asset bundle import jobs that have taken place in the last 14 days. Jobs created more than 14 days ago are deleted forever and are not returned. If you are using the same job ID for multiple jobs, ListAssetBundleImportJobs only returns the most recent job that uses the repeated job ID.

", + "smithy.api#http": { + "method": "GET", + "uri": "/accounts/{AwsAccountId}/asset-bundle-import-jobs", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "AssetBundleImportJobSummaryList", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.quicksight#ListAssetBundleImportJobsRequest": { + "type": "structure", + "members": { + "AwsAccountId": { + "target": "com.amazonaws.quicksight#AwsAccountId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon Web Services account that the import jobs were executed in.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "NextToken": { + "target": "com.amazonaws.quicksight#String", + "traits": { + "smithy.api#documentation": "

The token for the next set of results, or null if there are no more results.

", + "smithy.api#httpQuery": "next-token" + } + }, + "MaxResults": { + "target": "com.amazonaws.quicksight#MaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to be returned per request.

", + "smithy.api#httpQuery": "max-results" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.quicksight#ListAssetBundleImportJobsResponse": { "type": "structure", "members": { - "AssetBundleExportJobSummaryList": { - "target": "com.amazonaws.quicksight#AssetBundleExportJobSummaryList", + "AssetBundleImportJobSummaryList": { + "target": "com.amazonaws.quicksight#AssetBundleImportJobSummaryList", "traits": { - "smithy.api#documentation": "

A list of export job summaries.

" + "smithy.api#documentation": "

A list of import job summaries.

" } }, "NextToken": { @@ -30489,7 +32096,7 @@ "target": "com.amazonaws.quicksight#StatusCode", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

The HTTP status of the request.

", + "smithy.api#documentation": "

The HTTP status of the response.

", "smithy.api#httpResponseCode": {} } } @@ -30498,103 +32105,86 @@ "smithy.api#output": {} } }, - "com.amazonaws.quicksight#ListAssetBundleImportJobs": { + "com.amazonaws.quicksight#ListBrands": { "type": "operation", "input": { - "target": "com.amazonaws.quicksight#ListAssetBundleImportJobsRequest" + "target": "com.amazonaws.quicksight#ListBrandsRequest" }, "output": { - "target": "com.amazonaws.quicksight#ListAssetBundleImportJobsResponse" + "target": "com.amazonaws.quicksight#ListBrandsResponse" }, "errors": [ { "target": "com.amazonaws.quicksight#AccessDeniedException" }, { - "target": "com.amazonaws.quicksight#InvalidNextTokenException" + "target": "com.amazonaws.quicksight#InternalServerException" }, { - "target": "com.amazonaws.quicksight#ResourceNotFoundException" + "target": "com.amazonaws.quicksight#InvalidRequestException" }, { "target": "com.amazonaws.quicksight#ThrottlingException" - }, - { - "target": "com.amazonaws.quicksight#UnsupportedUserEditionException" } ], "traits": { - "smithy.api#documentation": "

Lists all asset bundle import jobs that have taken place in the last 14 days. Jobs created more than 14 days ago are deleted forever and are not returned. If you are using the same job ID for multiple jobs, ListAssetBundleImportJobs only returns the most recent job that uses the repeated job ID.

", + "smithy.api#documentation": "

Lists all brands in an Amazon QuickSight account.

", "smithy.api#http": { "method": "GET", - "uri": "/accounts/{AwsAccountId}/asset-bundle-import-jobs", + "uri": "/accounts/{AwsAccountId}/brands", "code": 200 }, "smithy.api#paginated": { "inputToken": "NextToken", "outputToken": "NextToken", - "items": "AssetBundleImportJobSummaryList", + "items": "Brands", "pageSize": "MaxResults" } } }, - "com.amazonaws.quicksight#ListAssetBundleImportJobsRequest": { + "com.amazonaws.quicksight#ListBrandsRequest": { "type": "structure", "members": { "AwsAccountId": { "target": "com.amazonaws.quicksight#AwsAccountId", "traits": { - "smithy.api#documentation": "

The ID of the Amazon Web Services account that the import jobs were executed in.

", + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the brands that you want to list.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, + "MaxResults": { + "target": "com.amazonaws.quicksight#MaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to be returned in a single request.

", + "smithy.api#httpQuery": "max-results" + } + }, "NextToken": { "target": "com.amazonaws.quicksight#String", "traits": { "smithy.api#documentation": "

The token for the next set of results, or null if there are no more results.

", "smithy.api#httpQuery": "next-token" } - }, - "MaxResults": { - "target": "com.amazonaws.quicksight#MaxResults", - "traits": { - "smithy.api#documentation": "

The maximum number of results to be returned per request.

", - "smithy.api#httpQuery": "max-results" - } } }, "traits": { "smithy.api#input": {} } }, - "com.amazonaws.quicksight#ListAssetBundleImportJobsResponse": { + "com.amazonaws.quicksight#ListBrandsResponse": { "type": "structure", "members": { - "AssetBundleImportJobSummaryList": { - "target": "com.amazonaws.quicksight#AssetBundleImportJobSummaryList", - "traits": { - "smithy.api#documentation": "

A list of import job summaries.

" - } - }, "NextToken": { "target": "com.amazonaws.quicksight#String", "traits": { "smithy.api#documentation": "

The token for the next set of results, or null if there are no more results.

" } }, - "RequestId": { - "target": "com.amazonaws.quicksight#NonEmptyString", - "traits": { - "smithy.api#documentation": "

The Amazon Web Services request ID for this operation.

" - } - }, - "Status": { - "target": "com.amazonaws.quicksight#StatusCode", + "Brands": { + "target": "com.amazonaws.quicksight#BrandSummaryList", "traits": { - "smithy.api#default": 0, - "smithy.api#documentation": "

The HTTP status of the response.

", - "smithy.api#httpResponseCode": {} + "smithy.api#documentation": "

A list of all brands in your Amazon Web Services account. This structure provides basic\n\t information about each brand.

" } } }, @@ -30662,6 +32252,116 @@ "smithy.api#documentation": "

The configuration of the Select all options in a list control.

" } }, + "com.amazonaws.quicksight#ListCustomPermissions": { + "type": "operation", + "input": { + "target": "com.amazonaws.quicksight#ListCustomPermissionsRequest" + }, + "output": { + "target": "com.amazonaws.quicksight#ListCustomPermissionsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.quicksight#AccessDeniedException" + }, + { + "target": "com.amazonaws.quicksight#InternalFailureException" + }, + { + "target": "com.amazonaws.quicksight#InvalidParameterValueException" + }, + { + "target": "com.amazonaws.quicksight#PreconditionNotMetException" + }, + { + "target": "com.amazonaws.quicksight#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.quicksight#ResourceUnavailableException" + }, + { + "target": "com.amazonaws.quicksight#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Returns a list of all the custom permissions profiles.

", + "smithy.api#http": { + "method": "GET", + "uri": "/accounts/{AwsAccountId}/custom-permissions", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "CustomPermissionsList", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.quicksight#ListCustomPermissionsRequest": { + "type": "structure", + "members": { + "AwsAccountId": { + "target": "com.amazonaws.quicksight#AwsAccountId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon Web Services account that contains the custom permissions profiles that you want to list.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "MaxResults": { + "target": "com.amazonaws.quicksight#MaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return.

", + "smithy.api#httpQuery": "max-results" + } + }, + "NextToken": { + "target": "com.amazonaws.quicksight#String", + "traits": { + "smithy.api#documentation": "

The token for the next set of results, or null if there are no more results.

", + "smithy.api#httpQuery": "next-token" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.quicksight#ListCustomPermissionsResponse": { + "type": "structure", + "members": { + "Status": { + "target": "com.amazonaws.quicksight#StatusCode", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The HTTP status of the request.

", + "smithy.api#httpResponseCode": {} + } + }, + "CustomPermissionsList": { + "target": "com.amazonaws.quicksight#CustomPermissionsList", + "traits": { + "smithy.api#documentation": "

A list of custom permissions profiles.

" + } + }, + "NextToken": { + "target": "com.amazonaws.quicksight#String", + "traits": { + "smithy.api#documentation": "

The token for the next set of results, or null if there are no more results.

" + } + }, + "RequestId": { + "target": "com.amazonaws.quicksight#String", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services request ID for this operation.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.quicksight#ListDashboardVersions": { "type": "operation", "input": { @@ -34029,6 +35729,92 @@ "smithy.api#documentation": "

Information about the source of a logical table. This is a variant type structure. For\n this structure to be valid, only one of the attributes can be non-null.

" } }, + "com.amazonaws.quicksight#Logo": { + "type": "structure", + "members": { + "AltText": { + "target": "com.amazonaws.quicksight#AltText", + "traits": { + "smithy.api#documentation": "

The alt text for the logo.

", + "smithy.api#required": {} + } + }, + "LogoSet": { + "target": "com.amazonaws.quicksight#LogoSet", + "traits": { + "smithy.api#documentation": "

A set of configured logos.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The logo configuration.

" + } + }, + "com.amazonaws.quicksight#LogoConfiguration": { + "type": "structure", + "members": { + "AltText": { + "target": "com.amazonaws.quicksight#String", + "traits": { + "smithy.api#documentation": "

The alt text for the logo.

", + "smithy.api#required": {} + } + }, + "LogoSet": { + "target": "com.amazonaws.quicksight#LogoSetConfiguration", + "traits": { + "smithy.api#documentation": "

A set of configured logos.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The logo configuration.

" + } + }, + "com.amazonaws.quicksight#LogoSet": { + "type": "structure", + "members": { + "Primary": { + "target": "com.amazonaws.quicksight#ImageSet", + "traits": { + "smithy.api#documentation": "

The primary logo.

", + "smithy.api#required": {} + } + }, + "Favicon": { + "target": "com.amazonaws.quicksight#ImageSet", + "traits": { + "smithy.api#documentation": "

The favicon logo.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A set of logos.

" + } + }, + "com.amazonaws.quicksight#LogoSetConfiguration": { + "type": "structure", + "members": { + "Primary": { + "target": "com.amazonaws.quicksight#ImageSetConfiguration", + "traits": { + "smithy.api#documentation": "

The primary logo.

", + "smithy.api#required": {} + } + }, + "Favicon": { + "target": "com.amazonaws.quicksight#ImageSetConfiguration", + "traits": { + "smithy.api#documentation": "

The favicon logo.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The logo set configuration.

" + } + }, "com.amazonaws.quicksight#Long": { "type": "long", "traits": { @@ -34562,6 +36348,16 @@ "smithy.api#documentation": "

The parameters for MySQL.

" } }, + "com.amazonaws.quicksight#Name": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 512 + }, + "smithy.api#pattern": "^[ -ÿ]+$" + } + }, "com.amazonaws.quicksight#NamedEntityAggType": { "type": "enum", "members": { @@ -34976,6 +36772,26 @@ } } }, + "com.amazonaws.quicksight#NavbarStyle": { + "type": "structure", + "members": { + "GlobalNavbar": { + "target": "com.amazonaws.quicksight#Palette", + "traits": { + "smithy.api#documentation": "

The global navigation bar style.

" + } + }, + "ContextualNavbar": { + "target": "com.amazonaws.quicksight#Palette", + "traits": { + "smithy.api#documentation": "

The contextual navigation bar style.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The navigation bar style.

" + } + }, "com.amazonaws.quicksight#NegativeFormat": { "type": "structure", "members": { @@ -35991,6 +37807,26 @@ "smithy.api#documentation": "

The pagination configuration for a table visual or boxplot.

" } }, + "com.amazonaws.quicksight#Palette": { + "type": "structure", + "members": { + "Foreground": { + "target": "com.amazonaws.quicksight#HexColor", + "traits": { + "smithy.api#documentation": "

The foreground color.

" + } + }, + "Background": { + "target": "com.amazonaws.quicksight#HexColor", + "traits": { + "smithy.api#documentation": "

The background color.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The color palette.

" + } + }, "com.amazonaws.quicksight#PanelBorderStyle": { "type": "enum", "members": { @@ -38504,6 +40340,12 @@ { "target": "com.amazonaws.quicksight#CreateAnalysis" }, + { + "target": "com.amazonaws.quicksight#CreateBrand" + }, + { + "target": "com.amazonaws.quicksight#CreateCustomPermissions" + }, { "target": "com.amazonaws.quicksight#CreateDashboard" }, @@ -38570,6 +40412,15 @@ { "target": "com.amazonaws.quicksight#DeleteAnalysis" }, + { + "target": "com.amazonaws.quicksight#DeleteBrand" + }, + { + "target": "com.amazonaws.quicksight#DeleteBrandAssignment" + }, + { + "target": "com.amazonaws.quicksight#DeleteCustomPermissions" + }, { "target": "com.amazonaws.quicksight#DeleteDashboard" }, @@ -38636,6 +40487,9 @@ { "target": "com.amazonaws.quicksight#DeleteUserByPrincipalId" }, + { + "target": "com.amazonaws.quicksight#DeleteUserCustomPermission" + }, { "target": "com.amazonaws.quicksight#DeleteVPCConnection" }, @@ -38663,6 +40517,18 @@ { "target": "com.amazonaws.quicksight#DescribeAssetBundleImportJob" }, + { + "target": "com.amazonaws.quicksight#DescribeBrand" + }, + { + "target": "com.amazonaws.quicksight#DescribeBrandAssignment" + }, + { + "target": "com.amazonaws.quicksight#DescribeBrandPublishedVersion" + }, + { + "target": "com.amazonaws.quicksight#DescribeCustomPermissions" + }, { "target": "com.amazonaws.quicksight#DescribeDashboard" }, @@ -38792,6 +40658,12 @@ { "target": "com.amazonaws.quicksight#ListAssetBundleImportJobs" }, + { + "target": "com.amazonaws.quicksight#ListBrands" + }, + { + "target": "com.amazonaws.quicksight#ListCustomPermissions" + }, { "target": "com.amazonaws.quicksight#ListDashboards" }, @@ -38936,6 +40808,18 @@ { "target": "com.amazonaws.quicksight#UpdateAnalysisPermissions" }, + { + "target": "com.amazonaws.quicksight#UpdateBrand" + }, + { + "target": "com.amazonaws.quicksight#UpdateBrandAssignment" + }, + { + "target": "com.amazonaws.quicksight#UpdateBrandPublishedVersion" + }, + { + "target": "com.amazonaws.quicksight#UpdateCustomPermissions" + }, { "target": "com.amazonaws.quicksight#UpdateDashboard" }, @@ -39026,6 +40910,9 @@ { "target": "com.amazonaws.quicksight#UpdateUser" }, + { + "target": "com.amazonaws.quicksight#UpdateUserCustomPermission" + }, { "target": "com.amazonaws.quicksight#UpdateVPCConnection" } @@ -52182,6 +54069,370 @@ "smithy.api#output": {} } }, + "com.amazonaws.quicksight#UpdateBrand": { + "type": "operation", + "input": { + "target": "com.amazonaws.quicksight#UpdateBrandRequest" + }, + "output": { + "target": "com.amazonaws.quicksight#UpdateBrandResponse" + }, + "errors": [ + { + "target": "com.amazonaws.quicksight#AccessDeniedException" + }, + { + "target": "com.amazonaws.quicksight#ConflictException" + }, + { + "target": "com.amazonaws.quicksight#InternalServerException" + }, + { + "target": "com.amazonaws.quicksight#InvalidRequestException" + }, + { + "target": "com.amazonaws.quicksight#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.quicksight#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Updates a brand.

", + "smithy.api#http": { + "method": "PUT", + "uri": "/accounts/{AwsAccountId}/brands/{BrandId}", + "code": 200 + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.quicksight#UpdateBrandAssignment": { + "type": "operation", + "input": { + "target": "com.amazonaws.quicksight#UpdateBrandAssignmentRequest" + }, + "output": { + "target": "com.amazonaws.quicksight#UpdateBrandAssignmentResponse" + }, + "errors": [ + { + "target": "com.amazonaws.quicksight#AccessDeniedException" + }, + { + "target": "com.amazonaws.quicksight#ConflictException" + }, + { + "target": "com.amazonaws.quicksight#InternalServerException" + }, + { + "target": "com.amazonaws.quicksight#InvalidRequestException" + }, + { + "target": "com.amazonaws.quicksight#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.quicksight#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Updates a brand assignment.

", + "smithy.api#http": { + "method": "PUT", + "uri": "/accounts/{AwsAccountId}/brandassignments", + "code": 200 + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.quicksight#UpdateBrandAssignmentRequest": { + "type": "structure", + "members": { + "AwsAccountId": { + "target": "com.amazonaws.quicksight#AwsAccountId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the brand assignment.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "BrandArn": { + "target": "com.amazonaws.quicksight#Arn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the brand.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.quicksight#UpdateBrandAssignmentResponse": { + "type": "structure", + "members": { + "RequestId": { + "target": "com.amazonaws.quicksight#String", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services request ID for this operation.

" + } + }, + "BrandArn": { + "target": "com.amazonaws.quicksight#Arn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the brand.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.quicksight#UpdateBrandPublishedVersion": { + "type": "operation", + "input": { + "target": "com.amazonaws.quicksight#UpdateBrandPublishedVersionRequest" + }, + "output": { + "target": "com.amazonaws.quicksight#UpdateBrandPublishedVersionResponse" + }, + "errors": [ + { + "target": "com.amazonaws.quicksight#AccessDeniedException" + }, + { + "target": "com.amazonaws.quicksight#ConflictException" + }, + { + "target": "com.amazonaws.quicksight#InternalServerException" + }, + { + "target": "com.amazonaws.quicksight#InvalidRequestException" + }, + { + "target": "com.amazonaws.quicksight#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.quicksight#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Updates the published version of a brand.

", + "smithy.api#http": { + "method": "PUT", + "uri": "/accounts/{AwsAccountId}/brands/{BrandId}/publishedversion", + "code": 200 + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.quicksight#UpdateBrandPublishedVersionRequest": { + "type": "structure", + "members": { + "AwsAccountId": { + "target": "com.amazonaws.quicksight#AwsAccountId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the brand.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "BrandId": { + "target": "com.amazonaws.quicksight#ShortRestrictiveResourceId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon QuickSight brand.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "VersionId": { + "target": "com.amazonaws.quicksight#ShortRestrictiveResourceId", + "traits": { + "smithy.api#documentation": "

The ID of the published version.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.quicksight#UpdateBrandPublishedVersionResponse": { + "type": "structure", + "members": { + "RequestId": { + "target": "com.amazonaws.quicksight#String", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services request ID for this operation.

" + } + }, + "VersionId": { + "target": "com.amazonaws.quicksight#ShortRestrictiveResourceId", + "traits": { + "smithy.api#documentation": "

The ID of the published version.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.quicksight#UpdateBrandRequest": { + "type": "structure", + "members": { + "AwsAccountId": { + "target": "com.amazonaws.quicksight#AwsAccountId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon Web Services account that owns the brand.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "BrandId": { + "target": "com.amazonaws.quicksight#ShortRestrictiveResourceId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon QuickSight brand.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "BrandDefinition": { + "target": "com.amazonaws.quicksight#BrandDefinition", + "traits": { + "smithy.api#documentation": "

The definition of the brand.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.quicksight#UpdateBrandResponse": { + "type": "structure", + "members": { + "RequestId": { + "target": "com.amazonaws.quicksight#String", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services request ID for this operation.

" + } + }, + "BrandDetail": { + "target": "com.amazonaws.quicksight#BrandDetail", + "traits": { + "smithy.api#documentation": "

The details of the brand.

" + } + }, + "BrandDefinition": { + "target": "com.amazonaws.quicksight#BrandDefinition", + "traits": { + "smithy.api#documentation": "

The definition of the brand.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.quicksight#UpdateCustomPermissions": { + "type": "operation", + "input": { + "target": "com.amazonaws.quicksight#UpdateCustomPermissionsRequest" + }, + "output": { + "target": "com.amazonaws.quicksight#UpdateCustomPermissionsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.quicksight#AccessDeniedException" + }, + { + "target": "com.amazonaws.quicksight#ConflictException" + }, + { + "target": "com.amazonaws.quicksight#InternalFailureException" + }, + { + "target": "com.amazonaws.quicksight#InvalidParameterValueException" + }, + { + "target": "com.amazonaws.quicksight#PreconditionNotMetException" + }, + { + "target": "com.amazonaws.quicksight#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.quicksight#ResourceUnavailableException" + }, + { + "target": "com.amazonaws.quicksight#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Updates a custom permissions profile.

", + "smithy.api#http": { + "method": "PUT", + "uri": "/accounts/{AwsAccountId}/custom-permissions/{CustomPermissionsName}", + "code": 200 + } + } + }, + "com.amazonaws.quicksight#UpdateCustomPermissionsRequest": { + "type": "structure", + "members": { + "AwsAccountId": { + "target": "com.amazonaws.quicksight#AwsAccountId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon Web Services account that contains the custom permissions profile that you want to update.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "CustomPermissionsName": { + "target": "com.amazonaws.quicksight#CustomPermissionsName", + "traits": { + "smithy.api#documentation": "

The name of the custom permissions profile that you want to update.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "Capabilities": { + "target": "com.amazonaws.quicksight#Capabilities", + "traits": { + "smithy.api#documentation": "

A set of actions to include in the custom permissions profile.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.quicksight#UpdateCustomPermissionsResponse": { + "type": "structure", + "members": { + "Status": { + "target": "com.amazonaws.quicksight#StatusCode", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The HTTP status of the request.

" + } + }, + "Arn": { + "target": "com.amazonaws.quicksight#Arn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the custom permissions profile.

" + } + }, + "RequestId": { + "target": "com.amazonaws.quicksight#String", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services request ID for this operation.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.quicksight#UpdateDashboard": { "type": "operation", "input": { @@ -55549,6 +57800,110 @@ } } }, + "com.amazonaws.quicksight#UpdateUserCustomPermission": { + "type": "operation", + "input": { + "target": "com.amazonaws.quicksight#UpdateUserCustomPermissionRequest" + }, + "output": { + "target": "com.amazonaws.quicksight#UpdateUserCustomPermissionResponse" + }, + "errors": [ + { + "target": "com.amazonaws.quicksight#AccessDeniedException" + }, + { + "target": "com.amazonaws.quicksight#ConflictException" + }, + { + "target": "com.amazonaws.quicksight#InternalFailureException" + }, + { + "target": "com.amazonaws.quicksight#InvalidParameterValueException" + }, + { + "target": "com.amazonaws.quicksight#PreconditionNotMetException" + }, + { + "target": "com.amazonaws.quicksight#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.quicksight#ResourceUnavailableException" + }, + { + "target": "com.amazonaws.quicksight#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Updates a custom permissions profile for a user.

", + "smithy.api#http": { + "method": "PUT", + "uri": "/accounts/{AwsAccountId}/namespaces/{Namespace}/users/{UserName}/custom-permission", + "code": 200 + } + } + }, + "com.amazonaws.quicksight#UpdateUserCustomPermissionRequest": { + "type": "structure", + "members": { + "UserName": { + "target": "com.amazonaws.quicksight#UserName", + "traits": { + "smithy.api#documentation": "

The username of the user that you want to update custom permissions for.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "AwsAccountId": { + "target": "com.amazonaws.quicksight#AwsAccountId", + "traits": { + "smithy.api#documentation": "

The ID of the Amazon Web Services account that contains the custom permission configuration that you want to update.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "Namespace": { + "target": "com.amazonaws.quicksight#Namespace", + "traits": { + "smithy.api#documentation": "

The namespace that the user belongs to.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "CustomPermissionsName": { + "target": "com.amazonaws.quicksight#CustomPermissionsName", + "traits": { + "smithy.api#documentation": "

The name of the custom permissions that you want to update.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.quicksight#UpdateUserCustomPermissionResponse": { + "type": "structure", + "members": { + "RequestId": { + "target": "com.amazonaws.quicksight#String", + "traits": { + "smithy.api#documentation": "

The Amazon Web Services request ID for this operation.

" + } + }, + "Status": { + "target": "com.amazonaws.quicksight#StatusCode", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The HTTP status of the request.

", + "smithy.api#httpResponseCode": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.quicksight#UpdateUserRequest": { "type": "structure", "members": { diff --git a/codegen/sdk-codegen/aws-models/redshift.json b/codegen/sdk-codegen/aws-models/redshift.json index 3290049e528..85b79d2cfd3 100644 --- a/codegen/sdk-codegen/aws-models/redshift.json +++ b/codegen/sdk-codegen/aws-models/redshift.json @@ -13911,6 +13911,22 @@ "smithy.api#output": {} } }, + "com.amazonaws.redshift#ReadWriteAccess": { + "type": "structure", + "members": { + "Authorization": { + "target": "com.amazonaws.redshift#ServiceAuthorization", + "traits": { + "smithy.api#clientOptional": {}, + "smithy.api#documentation": "

Determines whether the read/write scope is enabled or disabled.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The S3 Access Grants scope.

" + } + }, "com.amazonaws.redshift#RebootCluster": { "type": "operation", "input": { @@ -17510,6 +17526,26 @@ "smithy.api#output": {} } }, + "com.amazonaws.redshift#S3AccessGrantsScopeUnion": { + "type": "union", + "members": { + "ReadWriteAccess": { + "target": "com.amazonaws.redshift#ReadWriteAccess", + "traits": { + "smithy.api#documentation": "

The S3 Access Grants scope.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A list of scopes set up for S3 Access Grants integration.

" + } + }, + "com.amazonaws.redshift#S3AccessGrantsServiceIntegrations": { + "type": "list", + "member": { + "target": "com.amazonaws.redshift#S3AccessGrantsScopeUnion" + } + }, "com.amazonaws.redshift#S3KeyPrefixValue": { "type": "string", "traits": { @@ -17970,6 +18006,12 @@ "traits": { "smithy.api#documentation": "

A list of scopes set up for Lake Formation integration.

" } + }, + "S3AccessGrants": { + "target": "com.amazonaws.redshift#S3AccessGrantsServiceIntegrations", + "traits": { + "smithy.api#documentation": "

A list of scopes set up for S3 Access Grants integration.

" + } } }, "traits": { diff --git a/codegen/sdk-codegen/aws-models/s3.json b/codegen/sdk-codegen/aws-models/s3.json index eb0e8e0f028..d1ebf84cfb9 100644 --- a/codegen/sdk-codegen/aws-models/s3.json +++ b/codegen/sdk-codegen/aws-models/s3.json @@ -60,7 +60,7 @@ } ], "traits": { - "smithy.api#documentation": "

This operation aborts a multipart upload. After a multipart upload is aborted, no\n additional parts can be uploaded using that upload ID. The storage consumed by any\n previously uploaded parts will be freed. However, if any part uploads are currently in\n progress, those part uploads might or might not succeed. As a result, it might be necessary\n to abort a given multipart upload multiple times in order to completely free all storage\n consumed by all parts.

\n

To verify that all parts have been removed and prevent getting charged for the part\n storage, you should call the ListParts API operation and ensure that\n the parts list is empty.

\n \n \n \n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - For information about permissions required to use the multipart upload, see Multipart Upload\n and Permissions in the Amazon S3\n User Guide.

    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket_name.s3express-az_id.region.amazonaws.com.

\n
\n
\n

The following operations are related to AbortMultipartUpload:

\n ", + "smithy.api#documentation": "

This operation aborts a multipart upload. After a multipart upload is aborted, no\n additional parts can be uploaded using that upload ID. The storage consumed by any\n previously uploaded parts will be freed. However, if any part uploads are currently in\n progress, those part uploads might or might not succeed. As a result, it might be necessary\n to abort a given multipart upload multiple times in order to completely free all storage\n consumed by all parts.

\n

To verify that all parts have been removed and prevent getting charged for the part\n storage, you should call the ListParts API operation and ensure that\n the parts list is empty.

\n \n \n \n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - For information about permissions required to use the multipart upload, see Multipart Upload\n and Permissions in the Amazon S3\n User Guide.

    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket_name.s3express-az_id.region.amazonaws.com.

\n
\n
\n

The following operations are related to AbortMultipartUpload:

\n ", "smithy.api#examples": [ { "title": "To abort a multipart upload", @@ -18336,6 +18336,35 @@ }, "traits": { "smithy.api#documentation": "

Completes a multipart upload by assembling previously uploaded parts.

\n

You first initiate the multipart upload and then upload all parts using the UploadPart\n operation or the UploadPartCopy\n operation. After successfully uploading all relevant parts of an upload, you call this\n CompleteMultipartUpload operation to complete the upload. Upon receiving this request, Amazon S3 concatenates all the parts\n in ascending order by part number to create a new object. In the CompleteMultipartUpload \n request, you must provide the parts list and ensure that the parts list is complete.\n The CompleteMultipartUpload API operation concatenates the parts that you provide in the list. For each part in the list,\n you must provide the PartNumber value and the ETag value that are returned after that part\n was uploaded.

\n

The processing of a CompleteMultipartUpload request could take several minutes to\n finalize. After Amazon S3 begins processing the request, it sends an HTTP response header that\n specifies a 200 OK response. While processing is in progress, Amazon S3 periodically sends white\n space characters to keep the connection from timing out. A request could fail after the\n initial 200 OK response has been sent. This means that a 200 OK response can\n contain either a success or an error. The error response might be embedded in the 200 OK response. \n If you call this API operation directly, make sure to design\n your application to parse the contents of the response and handle it appropriately. If you\n use Amazon Web Services SDKs, SDKs handle this condition. The SDKs detect the embedded error and apply\n error handling per your configuration settings (including automatically retrying the\n request as appropriate). If the condition persists, the SDKs throw an exception (or, for\n the SDKs that don't use exceptions, they return an error).

\n

Note that if CompleteMultipartUpload fails, applications should be prepared\n to retry any failed requests (including 500 error responses). For more information, see Amazon S3 Error Best\n Practices.

\n \n

You can't use Content-Type: application/x-www-form-urlencoded for the \n CompleteMultipartUpload requests. Also, if you don't provide a\n Content-Type header, CompleteMultipartUpload can still return a 200\n OK response.

\n
\n

For more information about multipart uploads, see Uploading Objects Using Multipart\n Upload in the Amazon S3\n User Guide.

\n \n

\n Directory buckets - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name\n . Path-style requests are not supported. For more information, see Regional and Zonal endpoints in the\n Amazon S3 User Guide.

\n
\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - For\n information about permissions required to use the multipart upload API, see\n Multipart Upload and\n Permissions in the Amazon S3 User Guide.

    \n

    If you provide an additional checksum\n value in your MultipartUpload requests and the\n object is encrypted with Key Management Service, you must have permission to use the\n kms:Decrypt action for the\n CompleteMultipartUpload request to succeed.

    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n

    If the object is encrypted with\n SSE-KMS, you must also have the\n kms:GenerateDataKey and kms:Decrypt permissions in IAM identity-based policies and KMS key policies for the KMS key.

    \n
  • \n
\n
\n
Special errors
\n
\n
    \n
  • \n

    Error Code: EntityTooSmall\n

    \n
      \n
    • \n

      Description: Your proposed upload is smaller than the minimum allowed object\n size. Each part must be at least 5 MB in size, except the last part.

      \n
    • \n
    • \n

      HTTP Status Code: 400 Bad Request

      \n
    • \n
    \n
  • \n
  • \n

    Error Code: InvalidPart\n

    \n
      \n
    • \n

      Description: One or more of the specified parts could not be found. The part\n might not have been uploaded, or the specified ETag might not have\n matched the uploaded part's ETag.

      \n
    • \n
    • \n

      HTTP Status Code: 400 Bad Request

      \n
    • \n
    \n
  • \n
  • \n

    Error Code: InvalidPartOrder\n

    \n
      \n
    • \n

      Description: The list of parts was not in ascending order. The parts list\n must be specified in order by part number.

      \n
    • \n
    • \n

      HTTP Status Code: 400 Bad Request

      \n
    • \n
    \n
  • \n
  • \n

    Error Code: NoSuchUpload\n

    \n
      \n
    • \n

      Description: The specified multipart upload does not exist. The upload ID\n might be invalid, or the multipart upload might have been aborted or\n completed.

      \n
    • \n
    • \n

      HTTP Status Code: 404 Not Found

      \n
    • \n
    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket_name.s3express-az_id.region.amazonaws.com.

\n
\n
\n

The following operations are related to CompleteMultipartUpload:

\n ", + "smithy.api#examples": [ + { + "title": "To complete multipart upload", + "documentation": "The following example completes a multipart upload.", + "input": { + "Bucket": "examplebucket", + "Key": "bigobject", + "MultipartUpload": { + "Parts": [ + { + "PartNumber": 1, + "ETag": "\"d8c2eafd90c266e19ab9dcacc479f8af\"" + }, + { + "PartNumber": 2, + "ETag": "\"d8c2eafd90c266e19ab9dcacc479f8af\"" + } + ] + }, + "UploadId": "7YPBOJuoFiQ9cz4P3Pe6FIZwO4f7wN93uHsNBEw97pl5eNwzExg0LAT2dUN91cOmrEQHDsP3WA60CEg--" + }, + "output": { + "ETag": "\"4d9031c7644d8081c2829f4ea23c55f7-2\"", + "Bucket": "acexamplebucket", + "Location": "https://examplebucket.s3..amazonaws.com/bigobject", + "Key": "bigobject" + } + } + ], "smithy.api#http": { "method": "POST", "uri": "/{Bucket}/{Key+}", @@ -21055,6 +21084,38 @@ } ] } + }, + { + "title": "To delete multiple objects from a versioned bucket", + "documentation": "The following example deletes objects from a bucket. The bucket is versioned, and the request does not specify the object version to delete. In this case, all versions remain in the bucket and S3 adds a delete marker.", + "input": { + "Bucket": "examplebucket", + "Delete": { + "Objects": [ + { + "Key": "objectkey1" + }, + { + "Key": "objectkey2" + } + ], + "Quiet": false + } + }, + "output": { + "Deleted": [ + { + "DeleteMarkerVersionId": "A._w1z6EFiCF5uhtQMDal9JDkID9tQ7F", + "Key": "objectkey1", + "DeleteMarker": true + }, + { + "DeleteMarkerVersionId": "iOd_ORxhkKe_e8G8_oSGxt2PjsCZKlkt", + "Key": "objectkey2", + "DeleteMarker": true + } + ] + } } ], "smithy.api#http": { @@ -23295,6 +23356,45 @@ ] }, "smithy.api#documentation": "

Retrieves an object from Amazon S3.

\n

In the GetObject request, specify the full key name for the object.

\n

\n General purpose buckets - Both the virtual-hosted-style requests and the path-style requests are supported. For a virtual hosted-style request example, if you have\n the object photos/2006/February/sample.jpg, specify the object key name as\n /photos/2006/February/sample.jpg. For a path-style request example, if you\n have the object photos/2006/February/sample.jpg in the bucket named\n examplebucket, specify the object key name as\n /examplebucket/photos/2006/February/sample.jpg. For more information about\n request types, see HTTP Host\n Header Bucket Specification in the Amazon S3 User Guide.

\n

\n Directory buckets - Only virtual-hosted-style requests are supported. For a virtual hosted-style request example, if you have the object photos/2006/February/sample.jpg in the bucket named examplebucket--use1-az5--x-s3, specify the object key name as /photos/2006/February/sample.jpg. Also, when you make requests to this API operation, your requests are sent to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name\n . Path-style requests are not supported. For more information, see Regional and Zonal endpoints in the\n Amazon S3 User Guide.

\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - You must have the required permissions in a policy. To use GetObject, you must have the READ\n access to the object (or version). If you grant READ access to the anonymous user, the GetObject operation \n returns the object without using an authorization header. For more information, see Specifying permissions in\n a policy in the Amazon S3 User Guide.

    \n

    If you include a versionId in your request header, you must have the\n s3:GetObjectVersion permission to access a specific\n version of an object. The s3:GetObject permission is not required in this scenario.

    \n

    If you request the\n current version of an object without a specific versionId in the request header, only\n the s3:GetObject permission is required. The s3:GetObjectVersion permission is not required in this scenario.\n

    \n

    If the object that you request doesn’t exist, the error that\n Amazon S3 returns depends on whether you also have the s3:ListBucket\n permission.

    \n
      \n
    • \n

      If you have the s3:ListBucket permission on the bucket, Amazon S3\n returns an HTTP status code 404 Not Found error.

      \n
    • \n
    • \n

      If you don’t have the s3:ListBucket permission, Amazon S3 returns an\n HTTP status code 403 Access Denied error.

      \n
    • \n
    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n

    If the object is encrypted using \n SSE-KMS, you must also have the\n kms:GenerateDataKey and kms:Decrypt permissions in IAM identity-based policies and KMS key policies for the KMS key.

    \n
  • \n
\n
\n
Storage classes
\n
\n

If the object you are retrieving is stored in the S3 Glacier Flexible Retrieval storage class, the \n S3 Glacier Deep Archive storage class, the S3 Intelligent-Tiering Archive Access tier, or the \n S3 Intelligent-Tiering Deep Archive Access tier, before you can retrieve the object you must first restore a\n copy using RestoreObject. Otherwise, this operation returns an\n InvalidObjectState error. For information about restoring archived objects,\n see Restoring\n Archived Objects in the Amazon S3 User Guide.

\n

\n Directory buckets - For directory buckets, only the S3 Express One Zone storage class is supported to store newly created objects. \nUnsupported storage class values won't write a destination object and will respond with the HTTP status code 400 Bad Request.

\n
\n
Encryption
\n
\n

Encryption request headers, like x-amz-server-side-encryption, should not\n be sent for the GetObject requests, if your object uses server-side encryption with Amazon S3 managed encryption keys (SSE-S3), server-side encryption with Key Management Service (KMS)\n keys (SSE-KMS), or dual-layer server-side encryption with Amazon Web Services KMS keys (DSSE-KMS). If you include the header in your GetObject requests for the object that uses \n these types of keys, you’ll get an HTTP 400 Bad Request error.

\n

\n Directory buckets - For directory buckets, there are only two supported options for server-side encryption: SSE-S3 and SSE-KMS. SSE-C isn't supported. For more\n information, see Protecting data with server-side encryption in the Amazon S3 User Guide.

\n
\n
Overriding response header values through the request
\n
\n

There are times when you want to override certain response header values of a\n GetObject response. For example, you might override the\n Content-Disposition response header value through your GetObject\n request.

\n

You can override values for a set of response headers. These modified response header values are included only in a successful response, that is, when the HTTP status code 200 OK is returned. \n The headers you can override using the following query parameters in the request are a subset of the headers that Amazon S3 accepts when you create an object. \n

\n

The response headers that you can override for the\n GetObject response are Cache-Control, Content-Disposition, \n Content-Encoding, Content-Language, Content-Type, and Expires.

\n

To override values for a set of response headers in the\n GetObject response, you can use the following query\n parameters in the request.

\n
    \n
  • \n

    \n response-cache-control\n

    \n
  • \n
  • \n

    \n response-content-disposition\n

    \n
  • \n
  • \n

    \n response-content-encoding\n

    \n
  • \n
  • \n

    \n response-content-language\n

    \n
  • \n
  • \n

    \n response-content-type\n

    \n
  • \n
  • \n

    \n response-expires\n

    \n
  • \n
\n \n

When you use these parameters, you must sign the request by using either an Authorization header or a\n presigned URL. These parameters cannot be used with an\n unsigned (anonymous) request.

\n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket_name.s3express-az_id.region.amazonaws.com.

\n
\n
\n

The following operations are related to GetObject:

\n ", + "smithy.api#examples": [ + { + "title": "To retrieve a byte range of an object ", + "documentation": "The following example retrieves an object for an S3 bucket. The request specifies the range header to retrieve a specific byte range.", + "input": { + "Bucket": "examplebucket", + "Key": "SampleFile.txt", + "Range": "bytes=0-9" + }, + "output": { + "AcceptRanges": "bytes", + "ContentType": "text/plain", + "LastModified": "2014-10-09T22:57:28.000Z", + "ContentLength": 10, + "VersionId": "null", + "ETag": "\"0d94420ffd0bc68cd3d152506b97a9cc\"", + "ContentRange": "bytes 0-9/43", + "Metadata": {} + } + }, + { + "title": "To retrieve an object", + "documentation": "The following example retrieves an object for an S3 bucket.", + "input": { + "Bucket": "examplebucket", + "Key": "HappyFace.jpg" + }, + "output": { + "AcceptRanges": "bytes", + "ContentType": "image/jpeg", + "LastModified": "2016-12-15T01:19:41.000Z", + "ContentLength": 3191, + "VersionId": "null", + "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", + "TagCount": 2, + "Metadata": {} + } + } + ], "smithy.api#http": { "method": "GET", "uri": "/{Bucket}/{Key+}?x-id=GetObject", @@ -24843,6 +24943,25 @@ ], "traits": { "smithy.api#documentation": "

The HEAD operation retrieves metadata from an object without returning the\n object itself. This operation is useful if you're interested only in an object's metadata.

\n \n

A HEAD request has the same options as a GET operation on an\n object. The response is identical to the GET response except that there is no\n response body. Because of this, if the HEAD request generates an error, it\n returns a generic code, such as 400 Bad Request, 403 Forbidden, 404 Not\n Found, 405 Method Not Allowed, 412 Precondition Failed, or 304 Not Modified. \n It's not possible to retrieve the exact exception of these error codes.

\n
\n

Request headers are limited to 8 KB in size. For more information, see Common\n Request Headers.

\n
\n
Permissions
\n
\n

\n
    \n
  • \n

    \n General purpose bucket permissions - To\n use HEAD, you must have the s3:GetObject permission. You need the relevant read object (or version) permission for this operation.\n For more information, see Actions, resources, and condition\n keys for Amazon S3 in the Amazon S3\n User Guide. For more information about the permissions to S3 API operations by S3 resource types, see Required permissions for Amazon S3 API operations in the Amazon S3 User Guide.

    \n

    If the object you request doesn't exist, the error that\n Amazon S3 returns depends on whether you also have the s3:ListBucket permission.

    \n
      \n
    • \n

      If you have the s3:ListBucket permission on the bucket, Amazon S3\n returns an HTTP status code 404 Not Found error.

      \n
    • \n
    • \n

      If you don’t have the s3:ListBucket permission, Amazon S3 returns\n an HTTP status code 403 Forbidden error.

      \n
    • \n
    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n

    If you enable x-amz-checksum-mode in the request and the object is encrypted with\n Amazon Web Services Key Management Service (Amazon Web Services KMS), you must also have the\n kms:GenerateDataKey and kms:Decrypt permissions in IAM identity-based policies and KMS key policies for the KMS key to retrieve the checksum of the object.

    \n
  • \n
\n
\n
Encryption
\n
\n \n

Encryption request headers, like x-amz-server-side-encryption,\n should not be sent for HEAD requests if your object uses server-side\n encryption with Key Management Service (KMS) keys (SSE-KMS), dual-layer server-side\n encryption with Amazon Web Services KMS keys (DSSE-KMS), or server-side encryption with Amazon S3\n managed encryption keys (SSE-S3). The x-amz-server-side-encryption header is used when you PUT an object to S3 and want to specify the encryption method. \n If you include this header in a HEAD request for an object that uses these types of keys, \n you’ll get an HTTP 400 Bad Request error. It's because the encryption method can't be changed when you retrieve the object.

\n
\n

If you encrypt an object by using server-side encryption with customer-provided\n encryption keys (SSE-C) when you store the object in Amazon S3, then when you retrieve the\n metadata from the object, you must use the following headers to provide the encryption key for the server to be able to retrieve the object's metadata. The headers are:

\n
    \n
  • \n

    \n x-amz-server-side-encryption-customer-algorithm\n

    \n
  • \n
  • \n

    \n x-amz-server-side-encryption-customer-key\n

    \n
  • \n
  • \n

    \n x-amz-server-side-encryption-customer-key-MD5\n

    \n
  • \n
\n

For more information about SSE-C, see Server-Side Encryption\n (Using Customer-Provided Encryption Keys) in the Amazon S3\n User Guide.

\n \n

\n Directory bucket - For directory buckets, there are only two supported options for server-side encryption: SSE-S3 and SSE-KMS. SSE-C isn't supported. For more\n information, see Protecting data with server-side encryption in the Amazon S3 User Guide.

\n
\n
\n
Versioning
\n
\n
    \n
  • \n

    If the current version of the object is a delete marker, Amazon S3 behaves as if the object was deleted and includes x-amz-delete-marker: true in the response.

    \n
  • \n
  • \n

    If the specified version is a delete marker, the response returns a 405 Method Not Allowed error and the Last-Modified: timestamp response header.

    \n
  • \n
\n \n
    \n
  • \n

    \n Directory buckets - Delete marker is not supported by directory buckets.

    \n
  • \n
  • \n

    \n Directory buckets - S3 Versioning isn't enabled and supported for directory buckets. For this API operation, only the null value of the version ID is supported by directory buckets. You can only specify null \n to the versionId query parameter in the request.

    \n
  • \n
\n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket_name.s3express-az_id.region.amazonaws.com.

\n \n

For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name\n . Path-style requests are not supported. For more information, see Regional and Zonal endpoints in the\n Amazon S3 User Guide.

\n
\n
\n
\n

The following actions are related to HeadObject:

\n ", + "smithy.api#examples": [ + { + "title": "To retrieve metadata of an object without returning the object itself", + "documentation": "The following example retrieves an object metadata.", + "input": { + "Bucket": "examplebucket", + "Key": "HappyFace.jpg" + }, + "output": { + "AcceptRanges": "bytes", + "ContentType": "image/jpeg", + "LastModified": "2016-12-15T01:19:41.000Z", + "ContentLength": 3191, + "VersionId": "null", + "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"", + "Metadata": {} + } + } + ], "smithy.api#http": { "method": "HEAD", "uri": "/{Bucket}/{Key+}", @@ -26491,7 +26610,7 @@ "target": "com.amazonaws.s3#ListBucketsOutput" }, "traits": { - "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Returns a list of all buckets owned by the authenticated sender of the request. To use\n this operation, you must have the s3:ListAllMyBuckets permission.

\n

For information about Amazon S3 buckets, see Creating, configuring, and\n working with Amazon S3 buckets.

", + "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Returns a list of all buckets owned by the authenticated sender of the request. To use\n this operation, you must have the s3:ListAllMyBuckets permission.

\n

For information about Amazon S3 buckets, see Creating, configuring, and\n working with Amazon S3 buckets.

\n \n

We strongly recommend using only paginated requests. Unpaginated requests are only supported for \n Amazon Web Services accounts set to the default general purpose bucket quota of 10,000. If you have an approved \n general purpose bucket quota above 10,000, you must send paginated requests to list your account’s buckets. \n All unpaginated ListBuckets requests will be rejected for Amazon Web Services accounts with a general purpose bucket quota \n greater than 10,000.

\n
", "smithy.api#examples": [ { "title": "To list all buckets", @@ -26577,7 +26696,7 @@ "ContinuationToken": { "target": "com.amazonaws.s3#Token", "traits": { - "smithy.api#documentation": "

\n ContinuationToken indicates to Amazon S3 that the list is being continued on\n this bucket with a token. ContinuationToken is obfuscated and is not a real\n key. You can use this ContinuationToken for pagination of the list results.

\n

Length Constraints: Minimum length of 0. Maximum length of 1024.

\n

Required: No.

", + "smithy.api#documentation": "

\n ContinuationToken indicates to Amazon S3 that the list is being continued on\n this bucket with a token. ContinuationToken is obfuscated and is not a real\n key. You can use this ContinuationToken for pagination of the list results.

\n

Length Constraints: Minimum length of 0. Maximum length of 1024.

\n

Required: No.

\n \n

If you specify the bucket-region, prefix, or continuation-token \n query parameters without using max-buckets to set the maximum number of buckets returned in the response, \n Amazon S3 applies a default page size of 10,000 and provides a continuation token if there are more buckets.

\n
", "smithy.api#httpQuery": "continuation-token" } }, @@ -26609,7 +26728,7 @@ "target": "com.amazonaws.s3#ListDirectoryBucketsOutput" }, "traits": { - "smithy.api#documentation": "

Returns a list of all Amazon S3 directory buckets owned by the authenticated sender of the request. For more information about directory buckets, see Directory buckets in the Amazon S3 User Guide.

\n \n

\n Directory buckets - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format https://s3express-control.region_code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. \nFor more information, see Regional and Zonal endpoints in the\n Amazon S3 User Guide.

\n
\n
\n
Permissions
\n
\n

You must have the s3express:ListAllMyDirectoryBuckets permission in an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource. For more information about directory bucket policies and permissions, see Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone in the Amazon S3 User Guide.

\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is s3express-control.region.amazonaws.com.

\n
\n
", + "smithy.api#documentation": "

Returns a list of all Amazon S3 directory buckets owned by the authenticated sender of the request. For more information about directory buckets, see Directory buckets in the Amazon S3 User Guide.

\n \n

\n Directory buckets - For directory buckets, you must make requests for this API operation to the Regional endpoint. These endpoints support path-style requests in the format https://s3express-control.region_code.amazonaws.com/bucket-name\n . Virtual-hosted-style requests aren't supported. \nFor more information, see Regional and Zonal endpoints in the\n Amazon S3 User Guide.

\n
\n
\n
Permissions
\n
\n

You must have the s3express:ListAllMyDirectoryBuckets permission in an IAM identity-based policy instead of a bucket policy. Cross-account access to this API operation isn't supported. This operation can only be performed by the Amazon Web Services account that owns the resource. For more information about directory bucket policies and permissions, see Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone in the Amazon S3 User Guide.

\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is s3express-control.region.amazonaws.com.

\n
\n
\n \n

The BucketRegion response element is not part of the ListDirectoryBuckets Response Syntax.

\n
", "smithy.api#http": { "method": "GET", "uri": "/?x-id=ListDirectoryBuckets", @@ -26680,8 +26799,57 @@ "target": "com.amazonaws.s3#ListMultipartUploadsOutput" }, "traits": { - "smithy.api#documentation": "

This operation lists in-progress multipart uploads in a bucket. An in-progress multipart upload is a\n multipart upload that has been initiated by the CreateMultipartUpload request, but\n has not yet been completed or aborted.

\n \n

\n Directory buckets - \n If multipart uploads in a directory bucket are in progress, you can't delete the bucket until all the in-progress multipart uploads are aborted or completed. \n To delete these in-progress multipart uploads, use the ListMultipartUploads operation to list the in-progress multipart\n uploads in the bucket and use the AbortMultupartUpload operation to abort all the in-progress multipart uploads.\n

\n
\n

The ListMultipartUploads operation returns a maximum of 1,000 multipart uploads in the response. The limit of 1,000 multipart\n uploads is also the default\n value. You can further limit the number of uploads in a response by specifying the\n max-uploads request parameter. If there are more than 1,000 multipart uploads that \n satisfy your ListMultipartUploads request, the response returns an IsTruncated element\n with the value of true, a NextKeyMarker element, and a NextUploadIdMarker element. \n To list the remaining multipart uploads, you need to make subsequent ListMultipartUploads requests. \n In these requests, include two query parameters: key-marker and upload-id-marker. \n Set the value of key-marker to the NextKeyMarker value from the previous response. \n Similarly, set the value of upload-id-marker to the NextUploadIdMarker value from the previous response.

\n \n

\n Directory buckets - The upload-id-marker element and \n the NextUploadIdMarker element aren't supported by directory buckets. \n To list the additional multipart uploads, you only need to set the value of key-marker to the NextKeyMarker value from the previous response.

\n
\n

For more information about multipart uploads, see Uploading Objects Using Multipart\n Upload in the Amazon S3\n User Guide.

\n \n

\n Directory buckets - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name\n . Path-style requests are not supported. For more information, see Regional and Zonal endpoints in the\n Amazon S3 User Guide.

\n
\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - For information about permissions required to use the multipart upload API, see Multipart Upload\n and Permissions in the Amazon S3\n User Guide.

    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n
  • \n
\n
\n
Sorting of multipart uploads in response
\n
\n
    \n
  • \n

    \n General purpose bucket - In the ListMultipartUploads response, the multipart uploads are sorted based on two criteria:

    \n
      \n
    • \n

      Key-based sorting - Multipart uploads are initially sorted in ascending order based on their object keys.

      \n
    • \n
    • \n

      Time-based sorting - For uploads that share the same object key, \n they are further sorted in ascending order based on the upload initiation time. Among uploads with the same key, the one that was initiated first will appear before the ones that were initiated later.

      \n
    • \n
    \n
  • \n
  • \n

    \n Directory bucket - In the ListMultipartUploads response, the multipart uploads aren't sorted lexicographically based on the object keys. \n \n

    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket_name.s3express-az_id.region.amazonaws.com.

\n
\n
\n

The following operations are related to ListMultipartUploads:

\n ", + "smithy.api#documentation": "

This operation lists in-progress multipart uploads in a bucket. An in-progress multipart upload is a\n multipart upload that has been initiated by the CreateMultipartUpload request, but\n has not yet been completed or aborted.

\n \n

\n Directory buckets - \n If multipart uploads in a directory bucket are in progress, you can't delete the bucket until all the in-progress multipart uploads are aborted or completed. \n To delete these in-progress multipart uploads, use the ListMultipartUploads operation to list the in-progress multipart\n uploads in the bucket and use the AbortMultipartUpload operation to abort all the in-progress multipart uploads.\n

\n
\n

The ListMultipartUploads operation returns a maximum of 1,000 multipart uploads in the response. The limit of 1,000 multipart\n uploads is also the default\n value. You can further limit the number of uploads in a response by specifying the\n max-uploads request parameter. If there are more than 1,000 multipart uploads that \n satisfy your ListMultipartUploads request, the response returns an IsTruncated element\n with the value of true, a NextKeyMarker element, and a NextUploadIdMarker element. \n To list the remaining multipart uploads, you need to make subsequent ListMultipartUploads requests. \n In these requests, include two query parameters: key-marker and upload-id-marker. \n Set the value of key-marker to the NextKeyMarker value from the previous response. \n Similarly, set the value of upload-id-marker to the NextUploadIdMarker value from the previous response.

\n \n

\n Directory buckets - The upload-id-marker element and \n the NextUploadIdMarker element aren't supported by directory buckets. \n To list the additional multipart uploads, you only need to set the value of key-marker to the NextKeyMarker value from the previous response.

\n
\n

For more information about multipart uploads, see Uploading Objects Using Multipart\n Upload in the Amazon S3\n User Guide.

\n \n

\n Directory buckets - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name\n . Path-style requests are not supported. For more information, see Regional and Zonal endpoints in the\n Amazon S3 User Guide.

\n
\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - For information about permissions required to use the multipart upload API, see Multipart Upload\n and Permissions in the Amazon S3\n User Guide.

    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n
  • \n
\n
\n
Sorting of multipart uploads in response
\n
\n
    \n
  • \n

    \n General purpose bucket - In the ListMultipartUploads response, the multipart uploads are sorted based on two criteria:

    \n
      \n
    • \n

      Key-based sorting - Multipart uploads are initially sorted in ascending order based on their object keys.

      \n
    • \n
    • \n

      Time-based sorting - For uploads that share the same object key, \n they are further sorted in ascending order based on the upload initiation time. Among uploads with the same key, the one that was initiated first will appear before the ones that were initiated later.

      \n
    • \n
    \n
  • \n
  • \n

    \n Directory bucket - In the ListMultipartUploads response, the multipart uploads aren't sorted lexicographically based on the object keys. \n \n

    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket_name.s3express-az_id.region.amazonaws.com.

\n
\n
\n

The following operations are related to ListMultipartUploads:

\n ", "smithy.api#examples": [ + { + "title": "List next set of multipart uploads when previous result is truncated", + "documentation": "The following example specifies the upload-id-marker and key-marker from previous truncated response to retrieve next setup of multipart uploads.", + "input": { + "Bucket": "examplebucket", + "KeyMarker": "nextkeyfrompreviousresponse", + "MaxUploads": 2, + "UploadIdMarker": "valuefrompreviousresponse" + }, + "output": { + "UploadIdMarker": "", + "NextKeyMarker": "someobjectkey", + "Bucket": "acl1", + "NextUploadIdMarker": "examplelo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--", + "Uploads": [ + { + "Initiator": { + "DisplayName": "ownder-display-name", + "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" + }, + "Initiated": "2014-05-01T05:40:58.000Z", + "UploadId": "gZ30jIqlUa.CInXklLQtSMJITdUnoZ1Y5GACB5UckOtspm5zbDMCkPF_qkfZzMiFZ6dksmcnqxJyIBvQMG9X9Q--", + "StorageClass": "STANDARD", + "Key": "JavaFile", + "Owner": { + "DisplayName": "mohanataws", + "ID": "852b113e7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" + } + }, + { + "Initiator": { + "DisplayName": "ownder-display-name", + "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" + }, + "Initiated": "2014-05-01T05:41:27.000Z", + "UploadId": "b7tZSqIlo91lv1iwvWpvCiJWugw2xXLPAD7Z8cJyX9.WiIRgNrdG6Ldsn.9FtS63TCl1Uf5faTB.1U5Ckcbmdw--", + "StorageClass": "STANDARD", + "Key": "JavaFile", + "Owner": { + "DisplayName": "ownder-display-name", + "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" + } + } + ], + "KeyMarker": "", + "MaxUploads": 2, + "IsTruncated": true + } + }, { "title": "To list in-progress multipart uploads on a bucket", "documentation": "The following example lists in-progress multipart uploads on a specific bucket.", @@ -27148,6 +27316,43 @@ ], "traits": { "smithy.api#documentation": "\n

This operation is not supported by directory buckets.

\n
\n

Returns some or all (up to 1,000) of the objects in a bucket. You can use the request\n parameters as selection criteria to return a subset of the objects in a bucket. A 200 OK\n response can contain valid or invalid XML. Be sure to design your application to parse the\n contents of the response and handle it appropriately.

\n \n

This action has been revised. We recommend that you use the newer version, ListObjectsV2, when developing applications. For backward compatibility,\n Amazon S3 continues to support ListObjects.

\n
\n

The following operations are related to ListObjects:

\n ", + "smithy.api#examples": [ + { + "title": "To list objects in a bucket", + "documentation": "The following example list two objects in a bucket.", + "input": { + "Bucket": "examplebucket", + "MaxKeys": 2 + }, + "output": { + "NextMarker": "eyJNYXJrZXIiOiBudWxsLCAiYm90b190cnVuY2F0ZV9hbW91bnQiOiAyfQ==", + "Contents": [ + { + "LastModified": "2014-11-21T19:40:05.000Z", + "ETag": "\"70ee1738b6b21e2c8a43f3a5ab0eee71\"", + "StorageClass": "STANDARD", + "Key": "example1.jpg", + "Owner": { + "DisplayName": "myname", + "ID": "12345example25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" + }, + "Size": 11 + }, + { + "LastModified": "2013-11-15T01:10:49.000Z", + "ETag": "\"9c8af9a76df052144598c115ef33e511\"", + "StorageClass": "STANDARD", + "Key": "example2.jpg", + "Owner": { + "DisplayName": "myname", + "ID": "12345example25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" + }, + "Size": 713193 + } + ] + } + } + ], "smithy.api#http": { "method": "GET", "uri": "/{Bucket}", @@ -27324,6 +27529,40 @@ ], "traits": { "smithy.api#documentation": "

Returns some or all (up to 1,000) of the objects in a bucket with each request. You can\n use the request parameters as selection criteria to return a subset of the objects in a\n bucket. A 200 OK response can contain valid or invalid XML. Make sure to\n design your application to parse the contents of the response and handle it appropriately.\n \n For more information about listing objects, see Listing object keys\n programmatically in the Amazon S3 User Guide. To get a list of your buckets, see ListBuckets.

\n \n
    \n
  • \n

    \n General purpose bucket - For general purpose buckets, ListObjectsV2 doesn't return prefixes that are related only to in-progress multipart uploads.

    \n
  • \n
  • \n

    \n Directory buckets - \n For directory buckets, ListObjectsV2 response includes the prefixes that are related only to in-progress multipart uploads.\n

    \n
  • \n
  • \n

    \n Directory buckets - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name\n . Path-style requests are not supported. For more information, see Regional and Zonal endpoints in the\n Amazon S3 User Guide.

    \n
  • \n
\n
\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - To use this operation, you must have READ access to the bucket. You must have permission to perform\n the s3:ListBucket action. The bucket owner has this permission by default and\n can grant this permission to others. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing\n Access Permissions to Your Amazon S3 Resources in the\n Amazon S3 User Guide.

    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n
  • \n
\n
\n
Sorting order of returned objects
\n
\n
    \n
  • \n

    \n General purpose bucket - For general purpose buckets, ListObjectsV2 returns objects in lexicographical order based on their key names.

    \n
  • \n
  • \n

    \n Directory bucket - For directory buckets, ListObjectsV2 does not return objects in lexicographical order.

    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket_name.s3express-az_id.region.amazonaws.com.

\n
\n
\n \n

This section describes the latest revision of this action. We recommend that you use\n this revised API operation for application development. For backward compatibility, Amazon S3\n continues to support the prior version of this API operation, ListObjects.

\n
\n

The following operations are related to ListObjectsV2:

\n ", + "smithy.api#examples": [ + { + "title": "To get object list", + "documentation": "The following example retrieves object list. The request specifies max keys to limit response to include only 2 object keys. ", + "input": { + "Bucket": "DOC-EXAMPLE-BUCKET", + "MaxKeys": 2 + }, + "output": { + "Name": "DOC-EXAMPLE-BUCKET", + "MaxKeys": 2, + "Prefix": "", + "KeyCount": 2, + "NextContinuationToken": "1w41l63U0xa8q7smH50vCxyTQqdxo69O3EmK28Bi5PcROI4wI/EyIJg==", + "IsTruncated": true, + "Contents": [ + { + "LastModified": "2014-11-21T19:40:05.000Z", + "ETag": "\"70ee1738b6b21e2c8a43f3a5ab0eee71\"", + "StorageClass": "STANDARD", + "Key": "happyface.jpg", + "Size": 11 + }, + { + "LastModified": "2014-05-02T04:51:50.000Z", + "ETag": "\"becf17f89c30367a9a44495d62ed521a-1\"", + "StorageClass": "STANDARD", + "Key": "test.jpg", + "Size": 4192256 + } + ] + } + } + ], "smithy.api#http": { "method": "GET", "uri": "/{Bucket}?list-type=2", @@ -27527,6 +27766,42 @@ }, "traits": { "smithy.api#documentation": "

Lists the parts that have been uploaded for a specific multipart upload.

\n

To use this operation, you must provide the upload ID in the request. You obtain this uploadID by sending the initiate multipart upload\n request through CreateMultipartUpload.

\n

The ListParts request returns a maximum of 1,000 uploaded parts. The limit of 1,000 parts is also the default value. You can restrict the number of parts in a response by specifying the\n max-parts request parameter. If your multipart upload consists of more than\n 1,000 parts, the response returns an IsTruncated field with the value of true,\n and a NextPartNumberMarker element. To list remaining uploaded parts, in subsequent ListParts\n requests, include the part-number-marker query string parameter and set its value to\n the NextPartNumberMarker field value from the previous response.

\n

For more information on multipart uploads, see Uploading Objects Using Multipart\n Upload in the Amazon S3\n User Guide.

\n \n

\n Directory buckets - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name\n . Path-style requests are not supported. For more information, see Regional and Zonal endpoints in the\n Amazon S3 User Guide.

\n
\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - For information about permissions required to use the multipart upload API, see Multipart Upload\n and Permissions in the Amazon S3\n User Guide.

    \n

    If the upload was created using server-side encryption with Key Management Service (KMS) keys\n (SSE-KMS) or dual-layer server-side encryption with Amazon Web Services KMS keys (DSSE-KMS), you must have permission\n to the kms:Decrypt action for the ListParts request to succeed.

    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket_name.s3express-az_id.region.amazonaws.com.

\n
\n
\n

The following operations are related to ListParts:

\n ", + "smithy.api#examples": [ + { + "title": "To list parts of a multipart upload.", + "documentation": "The following example lists parts uploaded for a specific multipart upload.", + "input": { + "Bucket": "examplebucket", + "Key": "bigobject", + "UploadId": "example7YPBOJuoFiQ9cz4P3Pe6FIZwO4f7wN93uHsNBEw97pl5eNwzExg0LAT2dUN91cOmrEQHDsP3WA60CEg--" + }, + "output": { + "Owner": { + "DisplayName": "owner-display-name", + "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" + }, + "Initiator": { + "DisplayName": "owner-display-name", + "ID": "examplee7a2f25102679df27bb0ae12b3f85be6f290b936c4393484be31bebcc" + }, + "Parts": [ + { + "LastModified": "2016-12-16T00:11:42.000Z", + "PartNumber": 1, + "ETag": "\"d8c2eafd90c266e19ab9dcacc479f8af\"", + "Size": 26246026 + }, + { + "LastModified": "2016-12-16T00:15:01.000Z", + "PartNumber": 2, + "ETag": "\"d8c2eafd90c266e19ab9dcacc479f8af\"", + "Size": 26246026 + } + ], + "StorageClass": "STANDARD" + } + } + ], "smithy.api#http": { "method": "GET", "uri": "/{Bucket}/{Key+}?x-id=ListParts", @@ -27851,7 +28126,7 @@ "traits": { "smithy.api#range": { "min": 1, - "max": 1000 + "max": 10000 } } }, @@ -33903,6 +34178,22 @@ "requestAlgorithmMember": "ChecksumAlgorithm" }, "smithy.api#documentation": "

Uploads a part in a multipart upload.

\n \n

In this operation, you provide new data as a part of an object in your request. However, you have an option\n to specify your existing Amazon S3 object as a data source for the part you are uploading. To\n upload a part from an existing object, you use the UploadPartCopy operation.\n

\n
\n

You must initiate a multipart upload (see CreateMultipartUpload)\n before you can upload any part. In response to your initiate request, Amazon S3 returns an\n upload ID, a unique identifier that you must include in your upload part request.

\n

Part numbers can be any number from 1 to 10,000, inclusive. A part number uniquely\n identifies a part and also defines its position within the object being created. If you\n upload a new part using the same part number that was used with a previous part, the\n previously uploaded part is overwritten.

\n

For information about maximum and minimum part sizes and other multipart upload\n specifications, see Multipart upload limits in the Amazon S3 User Guide.

\n \n

After you initiate multipart upload and upload\n one or more parts, you must either complete or abort multipart upload in order to stop\n getting charged for storage of the uploaded parts. Only after you either complete or abort\n multipart upload, Amazon S3 frees up the parts storage and stops charging you for the parts\n storage.

\n
\n

For more information on multipart uploads, go to Multipart Upload Overview in the\n Amazon S3 User Guide .

\n \n

\n Directory buckets - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name\n . Path-style requests are not supported. For more information, see Regional and Zonal endpoints in the\n Amazon S3 User Guide.

\n
\n
\n
Permissions
\n
\n
    \n
  • \n

    \n General purpose bucket permissions - To\n perform a multipart upload with encryption using an Key Management Service key, the\n requester must have permission to the kms:Decrypt and\n kms:GenerateDataKey actions on the key. The requester must\n also have permissions for the kms:GenerateDataKey action for\n the CreateMultipartUpload API. Then, the requester needs\n permissions for the kms:Decrypt action on the\n UploadPart and UploadPartCopy APIs.

    \n

    These permissions are required because Amazon S3 must decrypt and read data\n from the encrypted file parts before it completes the multipart upload. For\n more information about KMS permissions, see Protecting data\n using server-side encryption with KMS in the\n Amazon S3 User Guide. For information about the\n permissions required to use the multipart upload API, see Multipart upload and permissions and Multipart upload API and permissions in the\n Amazon S3 User Guide.

    \n
  • \n
  • \n

    \n Directory bucket permissions - To grant access to this API operation on a directory bucket, we recommend that you use the \n CreateSession\n API operation for session-based authorization. Specifically, you grant the s3express:CreateSession permission to the directory bucket in a bucket policy or an IAM identity-based policy. Then, you make the CreateSession API call on the bucket to obtain a session token. With the session token in your request header, you can make API requests to this operation. After the session token expires, you make another CreateSession API call to generate a new session token for use. \nAmazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see \n CreateSession\n .

    \n

    If the object is encrypted with\n SSE-KMS, you must also have the\n kms:GenerateDataKey and kms:Decrypt permissions in IAM identity-based policies and KMS key policies for the KMS key.

    \n
  • \n
\n
\n
Data integrity
\n
\n

\n General purpose bucket - To ensure that data is not corrupted traversing the network, specify the\n Content-MD5 header in the upload part request. Amazon S3 checks the part data against the provided MD5 value. If they do not match, Amazon S3 returns an error. If the upload request is signed with Signature Version 4, then Amazon Web Services S3 uses the\n x-amz-content-sha256 header as a checksum instead of\n Content-MD5. For more information see Authenticating\n Requests: Using the Authorization Header (Amazon Web Services Signature Version 4).

\n \n

\n Directory buckets - MD5 is not supported by directory buckets. You can use checksum algorithms to check object integrity.

\n
\n
\n
Encryption
\n
\n
    \n
  • \n

    \n General purpose bucket - Server-side encryption is for data encryption at rest. Amazon S3 encrypts your data as it\n writes it to disks in its data centers and decrypts it when you access it. You have \n mutually exclusive options to protect data using server-side encryption in Amazon S3, depending\n on how you choose to manage the encryption keys. Specifically, the encryption key options\n are Amazon S3 managed keys (SSE-S3), Amazon Web Services KMS keys (SSE-KMS), and Customer-Provided Keys\n (SSE-C). Amazon S3 encrypts data with server-side encryption using Amazon S3 managed keys (SSE-S3) by\n default. You can optionally tell Amazon S3 to encrypt data at rest using server-side encryption\n with other key options. The option you use depends on whether you want to use KMS keys\n (SSE-KMS) or provide your own encryption key (SSE-C).

    \n

    Server-side encryption is supported by the S3 Multipart Upload operations. Unless you are\n using a customer-provided encryption key (SSE-C), you don't need to specify the encryption\n parameters in each UploadPart request. Instead, you only need to specify the server-side\n encryption parameters in the initial Initiate Multipart request. For more information, see\n CreateMultipartUpload.

    \n

    If you request server-side encryption using a customer-provided encryption key (SSE-C)\n in your initiate multipart upload request, you must provide identical encryption\n information in each part upload using the following request headers.

    \n
      \n
    • \n

      x-amz-server-side-encryption-customer-algorithm

      \n
    • \n
    • \n

      x-amz-server-side-encryption-customer-key

      \n
    • \n
    • \n

      x-amz-server-side-encryption-customer-key-MD5

      \n
    • \n
    \n

    \n For more information, see Using Server-Side\n Encryption in the Amazon S3 User Guide.

    \n
  • \n
  • \n

    \n Directory buckets - For directory buckets, there are only two supported options for server-side encryption: server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) and server-side encryption with KMS keys (SSE-KMS) (aws:kms).

    \n
  • \n
\n
\n
Special errors
\n
\n
    \n
  • \n

    Error Code: NoSuchUpload\n

    \n
      \n
    • \n

      Description: The specified multipart upload does not exist. The upload ID might be invalid, or the multipart upload might have been aborted or completed.

      \n
    • \n
    • \n

      HTTP Status Code: 404 Not Found

      \n
    • \n
    • \n

      SOAP Fault Code Prefix: Client

      \n
    • \n
    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket_name.s3express-az_id.region.amazonaws.com.

\n
\n
\n

The following operations are related to UploadPart:

\n ", + "smithy.api#examples": [ + { + "title": "To upload a part", + "documentation": "The following example uploads part 1 of a multipart upload. The example specifies a file name for the part data. The Upload ID is same that is returned by the initiate multipart upload.", + "input": { + "Body": "fileToUpload", + "Bucket": "examplebucket", + "Key": "examplelargeobject", + "PartNumber": 1, + "UploadId": "xadcOB_7YPBOJuoFiQ9cz4P3Pe6FIZwO4f7wN93uHsNBEw97pl5eNwzExg0LAT2dUN91cOmrEQHDsP3WA60CEg--" + }, + "output": { + "ETag": "\"d8c2eafd90c266e19ab9dcacc479f8af\"" + } + } + ], "smithy.api#http": { "method": "PUT", "uri": "/{Bucket}/{Key+}?x-id=UploadPart", @@ -33920,6 +34211,43 @@ }, "traits": { "smithy.api#documentation": "

Uploads a part by copying data from an existing object as data source. To specify the\n data source, you add the request header x-amz-copy-source in your request. To specify \n a byte range, you add the request header x-amz-copy-source-range in your\n request.

\n

For information about maximum and minimum part sizes and other multipart upload\n specifications, see Multipart upload limits in the Amazon S3 User Guide.

\n \n

Instead of copying data from an existing object as part data, you might use the UploadPart\n action to upload new data as a part of an object in your request.

\n
\n

You must initiate a multipart upload before you can upload any part. In response to your\n initiate request, Amazon S3 returns the upload ID, a unique identifier that you must include in\n your upload part request.

\n

For conceptual information about multipart uploads, see Uploading\n Objects Using Multipart Upload in the\n Amazon S3 User Guide. For information about copying objects using a single atomic action vs. a multipart\n upload, see Operations on Objects in\n the Amazon S3 User Guide.

\n \n

\n Directory buckets - For directory buckets, you must make requests for this API operation to the Zonal endpoint. These endpoints support virtual-hosted-style requests in the format https://bucket_name.s3express-az_id.region.amazonaws.com/key-name\n . Path-style requests are not supported. For more information, see Regional and Zonal endpoints in the\n Amazon S3 User Guide.

\n
\n
\n
Authentication and authorization
\n
\n

All UploadPartCopy requests must be authenticated and signed by using IAM credentials (access key ID and secret access key for the IAM identities). All headers with the x-amz- prefix, including\n x-amz-copy-source, must be signed. For more information, see REST Authentication.

\n

\n Directory buckets - You must use IAM credentials to authenticate and authorize your access to the UploadPartCopy API operation, instead of using the \n temporary security credentials through the CreateSession API operation.

\n

Amazon Web Services CLI or SDKs handles authentication and authorization on your behalf.

\n
\n
Permissions
\n
\n

You must have READ access to the source object and WRITE\n access to the destination bucket.

\n
    \n
  • \n

    \n General purpose bucket permissions - You\n must have the permissions in a policy based on the bucket types of your\n source bucket and destination bucket in an UploadPartCopy\n operation.

    \n
      \n
    • \n

      If the source object is in a general purpose bucket, you must have the\n \n s3:GetObject\n \n permission to read the source object that is being copied.

      \n
    • \n
    • \n

      If the destination bucket is a general purpose bucket, you must have the\n \n s3:PutObject\n \n permission to write the object copy to the destination bucket.

      \n
    • \n
    • \n

      To perform a multipart upload with encryption using an Key Management Service\n key, the requester must have permission to the\n kms:Decrypt and kms:GenerateDataKey\n actions on the key. The requester must also have permissions for the\n kms:GenerateDataKey action for the\n CreateMultipartUpload API. Then, the requester needs\n permissions for the kms:Decrypt action on the\n UploadPart and UploadPartCopy APIs. These\n permissions are required because Amazon S3 must decrypt and read data from\n the encrypted file parts before it completes the multipart upload. For\n more information about KMS permissions, see Protecting\n data using server-side encryption with KMS in the\n Amazon S3 User Guide. For information about the\n permissions required to use the multipart upload API, see Multipart upload\n and permissions and Multipart upload API and permissions in the\n Amazon S3 User Guide.

      \n
    • \n
    \n
  • \n
  • \n

    \n Directory bucket permissions -\n You must have permissions in a bucket policy or an IAM identity-based policy based on the source and destination\n bucket types in an UploadPartCopy operation.

    \n
      \n
    • \n

      If the source object that you want to copy is in a\n directory bucket, you must have the \n s3express:CreateSession\n permission in\n the Action element of a policy to read the object. By\n default, the session is in the ReadWrite mode. If you\n want to restrict the access, you can explicitly set the\n s3express:SessionMode condition key to\n ReadOnly on the copy source bucket.

      \n
    • \n
    • \n

      If the copy destination is a directory bucket, you must have the \n \n s3express:CreateSession\n permission in the\n Action element of a policy to write the object\n to the destination. The s3express:SessionMode condition\n key cannot be set to ReadOnly on the copy destination.

      \n
    • \n
    \n

    If the object is encrypted with\n SSE-KMS, you must also have the\n kms:GenerateDataKey and kms:Decrypt permissions in IAM identity-based policies and KMS key policies for the KMS key.

    \n

    For example policies, see Example bucket policies for S3 Express One Zone and Amazon Web Services Identity and Access Management (IAM) identity-based policies for S3 Express One Zone in the\n Amazon S3 User Guide.

    \n
  • \n
\n
\n
Encryption
\n
\n
    \n
  • \n

    \n General purpose buckets - \n \n For information about using server-side encryption with customer-provided\n encryption keys with the UploadPartCopy operation, see CopyObject and UploadPart.\n

    \n
  • \n
  • \n

    \n Directory buckets - For directory buckets, there are only two supported options for server-side encryption: server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) and server-side encryption with KMS keys (SSE-KMS) (aws:kms). For more\n information, see Protecting data with server-side encryption in the Amazon S3 User Guide.

    \n \n

    For directory buckets, when you perform a CreateMultipartUpload operation and an UploadPartCopy operation, \n the request headers you provide in the CreateMultipartUpload request must match the default encryption configuration of the destination bucket.

    \n
    \n

    S3 Bucket Keys aren't supported, when you copy SSE-KMS encrypted objects from general purpose buckets \nto directory buckets, from directory buckets to general purpose buckets, or between directory buckets, through UploadPartCopy. In this case, Amazon S3 makes a call to KMS every time a copy request is made for a KMS-encrypted object.

    \n
  • \n
\n
\n
Special errors
\n
\n
    \n
  • \n

    Error Code: NoSuchUpload\n

    \n
      \n
    • \n

      Description: The specified multipart upload does not exist. The\n upload ID might be invalid, or the multipart upload might have been\n aborted or completed.

      \n
    • \n
    • \n

      HTTP Status Code: 404 Not Found

      \n
    • \n
    \n
  • \n
  • \n

    Error Code: InvalidRequest\n

    \n
      \n
    • \n

      Description: The specified copy source is not supported as a\n byte-range copy source.

      \n
    • \n
    • \n

      HTTP Status Code: 400 Bad Request

      \n
    • \n
    \n
  • \n
\n
\n
HTTP Host header syntax
\n
\n

\n Directory buckets - The HTTP Host header syntax is \n Bucket_name.s3express-az_id.region.amazonaws.com.

\n
\n
\n

The following operations are related to UploadPartCopy:

\n ", + "smithy.api#examples": [ + { + "title": "To upload a part by copying byte range from an existing object as data source", + "documentation": "The following example uploads a part of a multipart upload by copying a specified byte range from an existing object as data source.", + "input": { + "Bucket": "examplebucket", + "CopySource": "/bucketname/sourceobjectkey", + "CopySourceRange": "bytes=1-100000", + "Key": "examplelargeobject", + "PartNumber": 2, + "UploadId": "exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--" + }, + "output": { + "CopyPartResult": { + "LastModified": "2016-12-29T21:44:28.000Z", + "ETag": "\"65d16d19e65a7508a51f043180edcc36\"" + } + } + }, + { + "title": "To upload a part by copying data from an existing object as data source", + "documentation": "The following example uploads a part of a multipart upload by copying data from an existing object as data source.", + "input": { + "Bucket": "examplebucket", + "CopySource": "/bucketname/sourceobjectkey", + "Key": "examplelargeobject", + "PartNumber": 1, + "UploadId": "exampleuoh_10OhKhT7YukE9bjzTPRiuaCotmZM_pFngJFir9OZNrSr5cWa3cq3LZSUsfjI4FI7PkP91We7Nrw--" + }, + "output": { + "CopyPartResult": { + "LastModified": "2016-12-29T21:24:43.000Z", + "ETag": "\"b0c6f0e7e054ab8fa2536a2677f8734d\"" + } + } + } + ], "smithy.api#http": { "method": "PUT", "uri": "/{Bucket}/{Key+}?x-id=UploadPartCopy", diff --git a/codegen/sdk-codegen/aws-models/sagemaker.json b/codegen/sdk-codegen/aws-models/sagemaker.json index 4f9f58ca1ae..c6336b5e817 100644 --- a/codegen/sdk-codegen/aws-models/sagemaker.json +++ b/codegen/sdk-codegen/aws-models/sagemaker.json @@ -34997,6 +34997,48 @@ "smithy.api#enumValue": "ml.inf1.24xlarge" } }, + "ML_TRN1_2XLARGE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ml.trn1.2xlarge" + } + }, + "ML_TRN1_32XLARGE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ml.trn1.32xlarge" + } + }, + "ML_TRN1N_32XLARGE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ml.trn1n.32xlarge" + } + }, + "ML_INF2_XLARGE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ml.inf2.xlarge" + } + }, + "ML_INF2_8XLARGE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ml.inf2.8xlarge" + } + }, + "ML_INF2_24XLARGE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ml.inf2.24xlarge" + } + }, + "ML_INF2_48XLARGE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ml.inf2.48xlarge" + } + }, "ML_P4D_24XLARGE": { "target": "smithy.api#Unit", "traits": { @@ -66667,6 +66709,30 @@ "traits": { "smithy.api#enumValue": "ml.g5.48xlarge" } + }, + "ML_INF2_XLARGE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ml.inf2.xlarge" + } + }, + "ML_INF2_8XLARGE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ml.inf2.8xlarge" + } + }, + "ML_INF2_24XLARGE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ml.inf2.24xlarge" + } + }, + "ML_INF2_48XLARGE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ml.inf2.48xlarge" + } } } }, diff --git a/codegen/sdk-codegen/aws-models/sts.json b/codegen/sdk-codegen/aws-models/sts.json index eabc44ceb77..71f47210126 100644 --- a/codegen/sdk-codegen/aws-models/sts.json +++ b/codegen/sdk-codegen/aws-models/sts.json @@ -42,6 +42,9 @@ { "target": "com.amazonaws.sts#AssumeRoleWithWebIdentity" }, + { + "target": "com.amazonaws.sts#AssumeRoot" + }, { "target": "com.amazonaws.sts#DecodeAuthorizationMessage" }, @@ -2269,7 +2272,7 @@ } ], "traits": { - "smithy.api#documentation": "

Returns a set of temporary security credentials that you can use to access Amazon Web Services\n resources. These temporary credentials consist of an access key ID, a secret access key,\n and a security token. Typically, you use AssumeRole within your account or for\n cross-account access. For a comparison of AssumeRole with other API operations\n that produce temporary credentials, see Requesting Temporary Security\n Credentials and Comparing the\n Amazon Web Services STS API operations in the IAM User Guide.

\n

\n Permissions\n

\n

The temporary security credentials created by AssumeRole can be used to\n make API calls to any Amazon Web Services service with the following exception: You cannot call the\n Amazon Web Services STS GetFederationToken or GetSessionToken API\n operations.

\n

(Optional) You can pass inline or managed session policies to\n this operation. You can pass a single JSON policy document to use as an inline session\n policy. You can also specify up to 10 managed policy Amazon Resource Names (ARNs) to use as\n managed session policies. The plaintext that you use for both inline and managed session\n policies can't exceed 2,048 characters. Passing policies to this operation returns new \n temporary credentials. The resulting session's permissions are the intersection of the \n role's identity-based policy and the session policies. You can use the role's temporary \n credentials in subsequent Amazon Web Services API calls to access resources in the account that owns \n the role. You cannot use session policies to grant more permissions than those allowed \n by the identity-based policy of the role that is being assumed. For more information, see\n Session\n Policies in the IAM User Guide.

\n

When you create a role, you create two policies: a role trust policy that specifies\n who can assume the role, and a permissions policy that specifies\n what can be done with the role. You specify the trusted principal\n that is allowed to assume the role in the role trust policy.

\n

To assume a role from a different account, your Amazon Web Services account must be trusted by the\n role. The trust relationship is defined in the role's trust policy when the role is\n created. That trust policy states which accounts are allowed to delegate that access to\n users in the account.

\n

A user who wants to access a role in a different account must also have permissions that\n are delegated from the account administrator. The administrator must attach a policy that\n allows the user to call AssumeRole for the ARN of the role in the other\n account.

\n

To allow a user to assume a role in the same account, you can do either of the\n following:

\n \n

You can do either because the role’s trust policy acts as an IAM resource-based\n policy. When a resource-based policy grants access to a principal in the same account, no\n additional identity-based policy is required. For more information about trust policies and\n resource-based policies, see IAM Policies in the\n IAM User Guide.

\n

\n Tags\n

\n

(Optional) You can pass tag key-value pairs to your session. These tags are called\n session tags. For more information about session tags, see Passing Session Tags in STS in the\n IAM User Guide.

\n

An administrator must grant you the permissions necessary to pass session tags. The\n administrator can also create granular permissions to allow you to pass only specific\n session tags. For more information, see Tutorial: Using Tags\n for Attribute-Based Access Control in the\n IAM User Guide.

\n

You can set the session tags as transitive. Transitive tags persist during role\n chaining. For more information, see Chaining Roles\n with Session Tags in the IAM User Guide.

\n

\n Using MFA with AssumeRole\n

\n

(Optional) You can include multi-factor authentication (MFA) information when you call\n AssumeRole. This is useful for cross-account scenarios to ensure that the\n user that assumes the role has been authenticated with an Amazon Web Services MFA device. In that\n scenario, the trust policy of the role being assumed includes a condition that tests for\n MFA authentication. If the caller does not include valid MFA information, the request to\n assume the role is denied. The condition in a trust policy that tests for MFA\n authentication might look like the following example.

\n

\n \"Condition\": {\"Bool\": {\"aws:MultiFactorAuthPresent\": true}}\n

\n

For more information, see Configuring MFA-Protected API Access\n in the IAM User Guide guide.

\n

To use MFA with AssumeRole, you pass values for the\n SerialNumber and TokenCode parameters. The\n SerialNumber value identifies the user's hardware or virtual MFA device.\n The TokenCode is the time-based one-time password (TOTP) that the MFA device\n produces.

", + "smithy.api#documentation": "

Returns a set of temporary security credentials that you can use to access Amazon Web Services\n resources. These temporary credentials consist of an access key ID, a secret access key,\n and a security token. Typically, you use AssumeRole within your account or for\n cross-account access. For a comparison of AssumeRole with other API operations\n that produce temporary credentials, see Requesting Temporary Security\n Credentials and Compare STS\n credentials in the IAM User Guide.

\n

\n Permissions\n

\n

The temporary security credentials created by AssumeRole can be used to\n make API calls to any Amazon Web Services service with the following exception: You cannot call the\n Amazon Web Services STS GetFederationToken or GetSessionToken API\n operations.

\n

(Optional) You can pass inline or managed session policies to this operation. You can\n pass a single JSON policy document to use as an inline session policy. You can also specify\n up to 10 managed policy Amazon Resource Names (ARNs) to use as managed session policies.\n The plaintext that you use for both inline and managed session policies can't exceed 2,048\n characters. Passing policies to this operation returns new \n temporary credentials. The resulting session's permissions are the intersection of the \n role's identity-based policy and the session policies. You can use the role's temporary \n credentials in subsequent Amazon Web Services API calls to access resources in the account that owns \n the role. You cannot use session policies to grant more permissions than those allowed \n by the identity-based policy of the role that is being assumed. For more information, see\n Session\n Policies in the IAM User Guide.

\n

When you create a role, you create two policies: a role trust policy that specifies\n who can assume the role, and a permissions policy that specifies\n what can be done with the role. You specify the trusted principal\n that is allowed to assume the role in the role trust policy.

\n

To assume a role from a different account, your Amazon Web Services account must be trusted by the\n role. The trust relationship is defined in the role's trust policy when the role is\n created. That trust policy states which accounts are allowed to delegate that access to\n users in the account.

\n

A user who wants to access a role in a different account must also have permissions that\n are delegated from the account administrator. The administrator must attach a policy that\n allows the user to call AssumeRole for the ARN of the role in the other\n account.

\n

To allow a user to assume a role in the same account, you can do either of the\n following:

\n \n

You can do either because the role’s trust policy acts as an IAM resource-based\n policy. When a resource-based policy grants access to a principal in the same account, no\n additional identity-based policy is required. For more information about trust policies and\n resource-based policies, see IAM Policies in the\n IAM User Guide.

\n

\n Tags\n

\n

(Optional) You can pass tag key-value pairs to your session. These tags are called\n session tags. For more information about session tags, see Passing Session Tags in STS in the\n IAM User Guide.

\n

An administrator must grant you the permissions necessary to pass session tags. The\n administrator can also create granular permissions to allow you to pass only specific\n session tags. For more information, see Tutorial: Using Tags\n for Attribute-Based Access Control in the\n IAM User Guide.

\n

You can set the session tags as transitive. Transitive tags persist during role\n chaining. For more information, see Chaining Roles\n with Session Tags in the IAM User Guide.

\n

\n Using MFA with AssumeRole\n

\n

(Optional) You can include multi-factor authentication (MFA) information when you call\n AssumeRole. This is useful for cross-account scenarios to ensure that the\n user that assumes the role has been authenticated with an Amazon Web Services MFA device. In that\n scenario, the trust policy of the role being assumed includes a condition that tests for\n MFA authentication. If the caller does not include valid MFA information, the request to\n assume the role is denied. The condition in a trust policy that tests for MFA\n authentication might look like the following example.

\n

\n \"Condition\": {\"Bool\": {\"aws:MultiFactorAuthPresent\": true}}\n

\n

For more information, see Configuring MFA-Protected API Access\n in the IAM User Guide guide.

\n

To use MFA with AssumeRole, you pass values for the\n SerialNumber and TokenCode parameters. The\n SerialNumber value identifies the user's hardware or virtual MFA device.\n The TokenCode is the time-based one-time password (TOTP) that the MFA device\n produces.

", "smithy.api#examples": [ { "title": "To assume a role", @@ -2328,7 +2331,7 @@ "RoleSessionName": { "target": "com.amazonaws.sts#roleSessionNameType", "traits": { - "smithy.api#documentation": "

An identifier for the assumed role session.

\n

Use the role session name to uniquely identify a session when the same role is assumed\n by different principals or for different reasons. In cross-account scenarios, the role\n session name is visible to, and can be logged by the account that owns the role. The role\n session name is also used in the ARN of the assumed role principal. This means that\n subsequent cross-account API requests that use the temporary security credentials will\n expose the role session name to the external account in their CloudTrail logs.

\n

The regex used to validate this parameter is a string of characters \n consisting of upper- and lower-case alphanumeric characters with no spaces. You can \n also include underscores or any of the following characters: =,.@-

", + "smithy.api#documentation": "

An identifier for the assumed role session.

\n

Use the role session name to uniquely identify a session when the same role is assumed\n by different principals or for different reasons. In cross-account scenarios, the role\n session name is visible to, and can be logged by the account that owns the role. The role\n session name is also used in the ARN of the assumed role principal. This means that\n subsequent cross-account API requests that use the temporary security credentials will\n expose the role session name to the external account in their CloudTrail logs.

\n

For security purposes, administrators can view this field in CloudTrail logs to help identify who performed an action in Amazon Web Services. Your\n administrator might require that you specify your user name as the session name when you\n assume the role. For more information, see \n sts:RoleSessionName\n .

\n

The regex used to validate this parameter is a string of characters \n consisting of upper- and lower-case alphanumeric characters with no spaces. You can \n also include underscores or any of the following characters: =,.@-

", "smithy.api#required": {} } }, @@ -2341,13 +2344,13 @@ "Policy": { "target": "com.amazonaws.sts#unrestrictedSessionPolicyDocumentType", "traits": { - "smithy.api#documentation": "

An IAM policy in JSON format that you want to use as an inline session policy.

\n

This parameter is optional. Passing policies to this operation returns new \n temporary credentials. The resulting session's permissions are the intersection of the \n role's identity-based policy and the session policies. You can use the role's temporary \n credentials in subsequent Amazon Web Services API calls to access resources in the account that owns \n the role. You cannot use session policies to grant more permissions than those allowed \n by the identity-based policy of the role that is being assumed. For more information, see\n Session\n Policies in the IAM User Guide.

\n

The plaintext that you use for both inline and managed session policies can't exceed\n 2,048 characters. The JSON policy characters can be any ASCII character from the space\n character to the end of the valid character list (\\u0020 through \\u00FF). It can also\n include the tab (\\u0009), linefeed (\\u000A), and carriage return (\\u000D)\n characters.

\n \n

An Amazon Web Services conversion compresses the passed inline session policy, managed policy ARNs,\n and session tags into a packed binary format that has a separate limit. Your request can\n fail for this limit even if your plaintext meets the other requirements. The\n PackedPolicySize response element indicates by percentage how close the\n policies and tags for your request are to the upper size limit.

\n
" + "smithy.api#documentation": "

An IAM policy in JSON format that you want to use as an inline session policy.

\n

This parameter is optional. Passing policies to this operation returns new \n temporary credentials. The resulting session's permissions are the intersection of the \n role's identity-based policy and the session policies. You can use the role's temporary \n credentials in subsequent Amazon Web Services API calls to access resources in the account that owns \n the role. You cannot use session policies to grant more permissions than those allowed \n by the identity-based policy of the role that is being assumed. For more information, see\n Session\n Policies in the IAM User Guide.

\n

The plaintext that you use for both inline and managed session policies can't exceed\n 2,048 characters. The JSON policy characters can be any ASCII character from the space\n character to the end of the valid character list (\\u0020 through \\u00FF). It can also\n include the tab (\\u0009), linefeed (\\u000A), and carriage return (\\u000D)\n characters.

\n \n

An Amazon Web Services conversion compresses the passed inline session policy, managed policy ARNs,\n and session tags into a packed binary format that has a separate limit. Your request can\n fail for this limit even if your plaintext meets the other requirements. The\n PackedPolicySize response element indicates by percentage how close the\n policies and tags for your request are to the upper size limit.

\n
\n

For more information about role session permissions, see Session\n policies.

" } }, "DurationSeconds": { "target": "com.amazonaws.sts#roleDurationSecondsType", "traits": { - "smithy.api#documentation": "

The duration, in seconds, of the role session. The value specified can range from 900\n seconds (15 minutes) up to the maximum session duration set for the role. The maximum\n session duration setting can have a value from 1 hour to 12 hours. If you specify a value\n higher than this setting or the administrator setting (whichever is lower), the operation\n fails. For example, if you specify a session duration of 12 hours, but your administrator\n set the maximum session duration to 6 hours, your operation fails.

\n

Role chaining limits your Amazon Web Services CLI or Amazon Web Services API role session to a maximum of one hour.\n When you use the AssumeRole API operation to assume a role, you can specify\n the duration of your role session with the DurationSeconds parameter. You can\n specify a parameter value of up to 43200 seconds (12 hours), depending on the maximum\n session duration setting for your role. However, if you assume a role using role chaining\n and provide a DurationSeconds parameter value greater than one hour, the\n operation fails. To learn how to view the maximum value for your role, see View the\n Maximum Session Duration Setting for a Role in the\n IAM User Guide.

\n

By default, the value is set to 3600 seconds.

\n \n

The DurationSeconds parameter is separate from the duration of a console\n session that you might request using the returned credentials. The request to the\n federation endpoint for a console sign-in token takes a SessionDuration\n parameter that specifies the maximum length of the console session. For more\n information, see Creating a URL\n that Enables Federated Users to Access the Amazon Web Services Management Console in the\n IAM User Guide.

\n
" + "smithy.api#documentation": "

The duration, in seconds, of the role session. The value specified can range from 900\n seconds (15 minutes) up to the maximum session duration set for the role. The maximum\n session duration setting can have a value from 1 hour to 12 hours. If you specify a value\n higher than this setting or the administrator setting (whichever is lower), the operation\n fails. For example, if you specify a session duration of 12 hours, but your administrator\n set the maximum session duration to 6 hours, your operation fails.

\n

Role chaining limits your Amazon Web Services CLI or Amazon Web Services API role session to a maximum of one hour.\n When you use the AssumeRole API operation to assume a role, you can specify\n the duration of your role session with the DurationSeconds parameter. You can\n specify a parameter value of up to 43200 seconds (12 hours), depending on the maximum\n session duration setting for your role. However, if you assume a role using role chaining\n and provide a DurationSeconds parameter value greater than one hour, the\n operation fails. To learn how to view the maximum value for your role, see Update the maximum session duration for a role.

\n

By default, the value is set to 3600 seconds.

\n \n

The DurationSeconds parameter is separate from the duration of a console\n session that you might request using the returned credentials. The request to the\n federation endpoint for a console sign-in token takes a SessionDuration\n parameter that specifies the maximum length of the console session. For more\n information, see Creating a URL\n that Enables Federated Users to Access the Amazon Web Services Management Console in the\n IAM User Guide.

\n
" } }, "Tags": { @@ -2359,7 +2362,7 @@ "TransitiveTagKeys": { "target": "com.amazonaws.sts#tagKeyListType", "traits": { - "smithy.api#documentation": "

A list of keys for session tags that you want to set as transitive. If you set a tag key\n as transitive, the corresponding key and value passes to subsequent sessions in a role\n chain. For more information, see Chaining Roles\n with Session Tags in the IAM User Guide.

\n

This parameter is optional. When you set session tags as transitive, the session policy\n and session tags packed binary limit is not affected.

\n

If you choose not to specify a transitive tag key, then no tags are passed from this\n session to any subsequent sessions.

" + "smithy.api#documentation": "

A list of keys for session tags that you want to set as transitive. If you set a tag key\n as transitive, the corresponding key and value passes to subsequent sessions in a role\n chain. For more information, see Chaining Roles\n with Session Tags in the IAM User Guide.

\n

This parameter is optional. The transitive status of a session tag does not impact its\n packed binary size.

\n

If you choose not to specify a transitive tag key, then no tags are passed from this\n session to any subsequent sessions.

" } }, "ExternalId": { @@ -2383,7 +2386,7 @@ "SourceIdentity": { "target": "com.amazonaws.sts#sourceIdentityType", "traits": { - "smithy.api#documentation": "

The source identity specified by the principal that is calling the\n AssumeRole operation.

\n

You can require users to specify a source identity when they assume a role. You do this\n by using the sts:SourceIdentity condition key in a role trust policy. You can\n use source identity information in CloudTrail logs to determine who took actions with a role.\n You can use the aws:SourceIdentity condition key to further control access to\n Amazon Web Services resources based on the value of source identity. For more information about using\n source identity, see Monitor and control\n actions taken with assumed roles in the\n IAM User Guide.

\n

The regex used to validate this parameter is a string of characters consisting of upper-\n and lower-case alphanumeric characters with no spaces. You can also include underscores or\n any of the following characters: =,.@-. You cannot use a value that begins with the text\n aws:. This prefix is reserved for Amazon Web Services internal use.

" + "smithy.api#documentation": "

The source identity specified by the principal that is calling the\n AssumeRole operation. The source identity value persists across chained role sessions.

\n

You can require users to specify a source identity when they assume a role. You do this\n by using the \n sts:SourceIdentity\n condition key in a role trust policy. You\n can use source identity information in CloudTrail logs to determine who took actions with a\n role. You can use the aws:SourceIdentity condition key to further control\n access to Amazon Web Services resources based on the value of source identity. For more information about\n using source identity, see Monitor and control\n actions taken with assumed roles in the\n IAM User Guide.

\n

The regex used to validate this parameter is a string of characters consisting of upper-\n and lower-case alphanumeric characters with no spaces. You can also include underscores or\n any of the following characters: =,.@-. You cannot use a value that begins with the text\n aws:. This prefix is reserved for Amazon Web Services internal use.

" } }, "ProvidedContexts": { @@ -2459,7 +2462,7 @@ } ], "traits": { - "smithy.api#documentation": "

Returns a set of temporary security credentials for users who have been authenticated\n via a SAML authentication response. This operation provides a mechanism for tying an\n enterprise identity store or directory to role-based Amazon Web Services access without user-specific\n credentials or configuration. For a comparison of AssumeRoleWithSAML with the\n other API operations that produce temporary credentials, see Requesting Temporary Security\n Credentials and Comparing the\n Amazon Web Services STS API operations in the IAM User Guide.

\n

The temporary security credentials returned by this operation consist of an access key\n ID, a secret access key, and a security token. Applications can use these temporary\n security credentials to sign calls to Amazon Web Services services.

\n

\n Session Duration\n

\n

By default, the temporary security credentials created by\n AssumeRoleWithSAML last for one hour. However, you can use the optional\n DurationSeconds parameter to specify the duration of your session. Your\n role session lasts for the duration that you specify, or until the time specified in the\n SAML authentication response's SessionNotOnOrAfter value, whichever is\n shorter. You can provide a DurationSeconds value from 900 seconds (15 minutes)\n up to the maximum session duration setting for the role. This setting can have a value from\n 1 hour to 12 hours. To learn how to view the maximum value for your role, see View the\n Maximum Session Duration Setting for a Role in the\n IAM User Guide. The maximum session duration limit applies when\n you use the AssumeRole* API operations or the assume-role* CLI\n commands. However the limit does not apply when you use those operations to create a\n console URL. For more information, see Using IAM Roles in the\n IAM User Guide.

\n \n

\n Role chaining limits your CLI or Amazon Web Services API role\n session to a maximum of one hour. When you use the AssumeRole API operation\n to assume a role, you can specify the duration of your role session with the\n DurationSeconds parameter. You can specify a parameter value of up to\n 43200 seconds (12 hours), depending on the maximum session duration setting for your\n role. However, if you assume a role using role chaining and provide a\n DurationSeconds parameter value greater than one hour, the operation\n fails.

\n
\n

\n Permissions\n

\n

The temporary security credentials created by AssumeRoleWithSAML can be\n used to make API calls to any Amazon Web Services service with the following exception: you cannot call\n the STS GetFederationToken or GetSessionToken API\n operations.

\n

(Optional) You can pass inline or managed session policies to\n this operation. You can pass a single JSON policy document to use as an inline session\n policy. You can also specify up to 10 managed policy Amazon Resource Names (ARNs) to use as\n managed session policies. The plaintext that you use for both inline and managed session\n policies can't exceed 2,048 characters. Passing policies to this operation returns new \n temporary credentials. The resulting session's permissions are the intersection of the \n role's identity-based policy and the session policies. You can use the role's temporary \n credentials in subsequent Amazon Web Services API calls to access resources in the account that owns \n the role. You cannot use session policies to grant more permissions than those allowed \n by the identity-based policy of the role that is being assumed. For more information, see\n Session\n Policies in the IAM User Guide.

\n

Calling AssumeRoleWithSAML does not require the use of Amazon Web Services security\n credentials. The identity of the caller is validated by using keys in the metadata document\n that is uploaded for the SAML provider entity for your identity provider.

\n \n

Calling AssumeRoleWithSAML can result in an entry in your CloudTrail logs.\n The entry includes the value in the NameID element of the SAML assertion.\n We recommend that you use a NameIDType that is not associated with any\n personally identifiable information (PII). For example, you could instead use the\n persistent identifier\n (urn:oasis:names:tc:SAML:2.0:nameid-format:persistent).

\n
\n

\n Tags\n

\n

(Optional) You can configure your IdP to pass attributes into your SAML assertion as\n session tags. Each session tag consists of a key name and an associated value. For more\n information about session tags, see Passing Session Tags in STS in the\n IAM User Guide.

\n

You can pass up to 50 session tags. The plaintext session tag keys can’t exceed 128\n characters and the values can’t exceed 256 characters. For these and additional limits, see\n IAM\n and STS Character Limits in the IAM User Guide.

\n \n

An Amazon Web Services conversion compresses the passed inline session policy, managed policy ARNs,\n and session tags into a packed binary format that has a separate limit. Your request can\n fail for this limit even if your plaintext meets the other requirements. The\n PackedPolicySize response element indicates by percentage how close the\n policies and tags for your request are to the upper size limit.

\n
\n

You can pass a session tag with the same key as a tag that is attached to the role. When\n you do, session tags override the role's tags with the same key.

\n

An administrator must grant you the permissions necessary to pass session tags. The\n administrator can also create granular permissions to allow you to pass only specific\n session tags. For more information, see Tutorial: Using Tags\n for Attribute-Based Access Control in the\n IAM User Guide.

\n

You can set the session tags as transitive. Transitive tags persist during role\n chaining. For more information, see Chaining Roles\n with Session Tags in the IAM User Guide.

\n

\n SAML Configuration\n

\n

Before your application can call AssumeRoleWithSAML, you must configure\n your SAML identity provider (IdP) to issue the claims required by Amazon Web Services. Additionally, you\n must use Identity and Access Management (IAM) to create a SAML provider entity in your Amazon Web Services account that\n represents your identity provider. You must also create an IAM role that specifies this\n SAML provider in its trust policy.

\n

For more information, see the following resources:

\n ", + "smithy.api#documentation": "

Returns a set of temporary security credentials for users who have been authenticated\n via a SAML authentication response. This operation provides a mechanism for tying an\n enterprise identity store or directory to role-based Amazon Web Services access without user-specific\n credentials or configuration. For a comparison of AssumeRoleWithSAML with the\n other API operations that produce temporary credentials, see Requesting Temporary Security\n Credentials and Compare STS\n credentials in the IAM User Guide.

\n

The temporary security credentials returned by this operation consist of an access key\n ID, a secret access key, and a security token. Applications can use these temporary\n security credentials to sign calls to Amazon Web Services services.

\n

\n Session Duration\n

\n

By default, the temporary security credentials created by\n AssumeRoleWithSAML last for one hour. However, you can use the optional\n DurationSeconds parameter to specify the duration of your session. Your\n role session lasts for the duration that you specify, or until the time specified in the\n SAML authentication response's SessionNotOnOrAfter value, whichever is\n shorter. You can provide a DurationSeconds value from 900 seconds (15 minutes)\n up to the maximum session duration setting for the role. This setting can have a value from\n 1 hour to 12 hours. To learn how to view the maximum value for your role, see View the\n Maximum Session Duration Setting for a Role in the\n IAM User Guide. The maximum session duration limit applies when\n you use the AssumeRole* API operations or the assume-role* CLI\n commands. However the limit does not apply when you use those operations to create a\n console URL. For more information, see Using IAM Roles in the\n IAM User Guide.

\n \n

\n Role chaining limits your CLI or Amazon Web Services API role\n session to a maximum of one hour. When you use the AssumeRole API operation\n to assume a role, you can specify the duration of your role session with the\n DurationSeconds parameter. You can specify a parameter value of up to\n 43200 seconds (12 hours), depending on the maximum session duration setting for your\n role. However, if you assume a role using role chaining and provide a\n DurationSeconds parameter value greater than one hour, the operation\n fails.

\n
\n

\n Permissions\n

\n

The temporary security credentials created by AssumeRoleWithSAML can be\n used to make API calls to any Amazon Web Services service with the following exception: you cannot call\n the STS GetFederationToken or GetSessionToken API\n operations.

\n

(Optional) You can pass inline or managed session policies to\n this operation. You can pass a single JSON policy document to use as an inline session\n policy. You can also specify up to 10 managed policy Amazon Resource Names (ARNs) to use as\n managed session policies. The plaintext that you use for both inline and managed session\n policies can't exceed 2,048 characters. Passing policies to this operation returns new \n temporary credentials. The resulting session's permissions are the intersection of the \n role's identity-based policy and the session policies. You can use the role's temporary \n credentials in subsequent Amazon Web Services API calls to access resources in the account that owns \n the role. You cannot use session policies to grant more permissions than those allowed \n by the identity-based policy of the role that is being assumed. For more information, see\n Session\n Policies in the IAM User Guide.

\n

Calling AssumeRoleWithSAML does not require the use of Amazon Web Services security\n credentials. The identity of the caller is validated by using keys in the metadata document\n that is uploaded for the SAML provider entity for your identity provider.

\n \n

Calling AssumeRoleWithSAML can result in an entry in your CloudTrail logs.\n The entry includes the value in the NameID element of the SAML assertion.\n We recommend that you use a NameIDType that is not associated with any\n personally identifiable information (PII). For example, you could instead use the\n persistent identifier\n (urn:oasis:names:tc:SAML:2.0:nameid-format:persistent).

\n
\n

\n Tags\n

\n

(Optional) You can configure your IdP to pass attributes into your SAML assertion as\n session tags. Each session tag consists of a key name and an associated value. For more\n information about session tags, see Passing Session Tags in STS in the\n IAM User Guide.

\n

You can pass up to 50 session tags. The plaintext session tag keys can’t exceed 128\n characters and the values can’t exceed 256 characters. For these and additional limits, see\n IAM\n and STS Character Limits in the IAM User Guide.

\n \n

An Amazon Web Services conversion compresses the passed inline session policy, managed policy ARNs,\n and session tags into a packed binary format that has a separate limit. Your request can\n fail for this limit even if your plaintext meets the other requirements. The\n PackedPolicySize response element indicates by percentage how close the\n policies and tags for your request are to the upper size limit.

\n
\n

You can pass a session tag with the same key as a tag that is attached to the role. When\n you do, session tags override the role's tags with the same key.

\n

An administrator must grant you the permissions necessary to pass session tags. The\n administrator can also create granular permissions to allow you to pass only specific\n session tags. For more information, see Tutorial: Using Tags\n for Attribute-Based Access Control in the\n IAM User Guide.

\n

You can set the session tags as transitive. Transitive tags persist during role\n chaining. For more information, see Chaining Roles\n with Session Tags in the IAM User Guide.

\n

\n SAML Configuration\n

\n

Before your application can call AssumeRoleWithSAML, you must configure\n your SAML identity provider (IdP) to issue the claims required by Amazon Web Services. Additionally, you\n must use Identity and Access Management (IAM) to create a SAML provider entity in your Amazon Web Services account that\n represents your identity provider. You must also create an IAM role that specifies this\n SAML provider in its trust policy.

\n

For more information, see the following resources:

\n ", "smithy.api#examples": [ { "title": "To assume a role using a SAML assertion", @@ -2525,7 +2528,7 @@ "Policy": { "target": "com.amazonaws.sts#sessionPolicyDocumentType", "traits": { - "smithy.api#documentation": "

An IAM policy in JSON format that you want to use as an inline session policy.

\n

This parameter is optional. Passing policies to this operation returns new \n temporary credentials. The resulting session's permissions are the intersection of the \n role's identity-based policy and the session policies. You can use the role's temporary \n credentials in subsequent Amazon Web Services API calls to access resources in the account that owns \n the role. You cannot use session policies to grant more permissions than those allowed \n by the identity-based policy of the role that is being assumed. For more information, see\n Session\n Policies in the IAM User Guide.

\n

The plaintext that you use for both inline and managed session policies can't exceed\n 2,048 characters. The JSON policy characters can be any ASCII character from the space\n character to the end of the valid character list (\\u0020 through \\u00FF). It can also\n include the tab (\\u0009), linefeed (\\u000A), and carriage return (\\u000D)\n characters.

\n \n

An Amazon Web Services conversion compresses the passed inline session policy, managed policy ARNs,\n and session tags into a packed binary format that has a separate limit. Your request can\n fail for this limit even if your plaintext meets the other requirements. The\n PackedPolicySize response element indicates by percentage how close the\n policies and tags for your request are to the upper size limit.

\n
" + "smithy.api#documentation": "

An IAM policy in JSON format that you want to use as an inline session policy.

\n

This parameter is optional. Passing policies to this operation returns new \n temporary credentials. The resulting session's permissions are the intersection of the \n role's identity-based policy and the session policies. You can use the role's temporary \n credentials in subsequent Amazon Web Services API calls to access resources in the account that owns \n the role. You cannot use session policies to grant more permissions than those allowed \n by the identity-based policy of the role that is being assumed. For more information, see\n Session\n Policies in the IAM User Guide.

\n

The plaintext that you use for both inline and managed session policies can't exceed\n 2,048 characters. The JSON policy characters can be any ASCII character from the space\n character to the end of the valid character list (\\u0020 through \\u00FF). It can also\n include the tab (\\u0009), linefeed (\\u000A), and carriage return (\\u000D)\n characters.

\n

For more information about role session permissions, see Session\n policies.

\n \n

An Amazon Web Services conversion compresses the passed inline session policy, managed policy ARNs,\n and session tags into a packed binary format that has a separate limit. Your request can\n fail for this limit even if your plaintext meets the other requirements. The\n PackedPolicySize response element indicates by percentage how close the\n policies and tags for your request are to the upper size limit.

\n
" } }, "DurationSeconds": { @@ -2593,7 +2596,7 @@ "SourceIdentity": { "target": "com.amazonaws.sts#sourceIdentityType", "traits": { - "smithy.api#documentation": "

The value in the SourceIdentity attribute in the SAML assertion.

\n

You can require users to set a source identity value when they assume a role. You do\n this by using the sts:SourceIdentity condition key in a role trust policy.\n That way, actions that are taken with the role are associated with that user. After the\n source identity is set, the value cannot be changed. It is present in the request for all\n actions that are taken by the role and persists across chained\n role sessions. You can configure your SAML identity provider to use an attribute\n associated with your users, like user name or email, as the source identity when calling\n AssumeRoleWithSAML. You do this by adding an attribute to the SAML\n assertion. For more information about using source identity, see Monitor and control\n actions taken with assumed roles in the\n IAM User Guide.

\n

The regex used to validate this parameter is a string of characters \n consisting of upper- and lower-case alphanumeric characters with no spaces. You can \n also include underscores or any of the following characters: =,.@-

" + "smithy.api#documentation": "

The value in the SourceIdentity attribute in the SAML assertion. The source\n identity value persists across chained role\n sessions.

\n

You can require users to set a source identity value when they assume a role. You do\n this by using the sts:SourceIdentity condition key in a role trust policy.\n That way, actions that are taken with the role are associated with that user. After the\n source identity is set, the value cannot be changed. It is present in the request for all\n actions that are taken by the role and persists across chained role\n sessions. You can configure your SAML identity provider to use an attribute associated with\n your users, like user name or email, as the source identity when calling\n AssumeRoleWithSAML. You do this by adding an attribute to the SAML\n assertion. For more information about using source identity, see Monitor and control\n actions taken with assumed roles in the\n IAM User Guide.

\n

The regex used to validate this parameter is a string of characters \n consisting of upper- and lower-case alphanumeric characters with no spaces. You can \n also include underscores or any of the following characters: =,.@-

" } } }, @@ -2634,7 +2637,7 @@ } ], "traits": { - "smithy.api#documentation": "

Returns a set of temporary security credentials for users who have been authenticated in\n a mobile or web application with a web identity provider. Example providers include the\n OAuth 2.0 providers Login with Amazon and Facebook, or any OpenID Connect-compatible\n identity provider such as Google or Amazon Cognito federated identities.

\n \n

For mobile applications, we recommend that you use Amazon Cognito. You can use Amazon Cognito with the\n Amazon Web Services SDK for iOS Developer Guide and the Amazon Web Services SDK for Android Developer Guide to uniquely\n identify a user. You can also supply the user with a consistent identity throughout the\n lifetime of an application.

\n

To learn more about Amazon Cognito, see Amazon Cognito identity\n pools in Amazon Cognito Developer Guide.

\n
\n

Calling AssumeRoleWithWebIdentity does not require the use of Amazon Web Services\n security credentials. Therefore, you can distribute an application (for example, on mobile\n devices) that requests temporary security credentials without including long-term Amazon Web Services\n credentials in the application. You also don't need to deploy server-based proxy services\n that use long-term Amazon Web Services credentials. Instead, the identity of the caller is validated by\n using a token from the web identity provider. For a comparison of\n AssumeRoleWithWebIdentity with the other API operations that produce\n temporary credentials, see Requesting Temporary Security\n Credentials and Comparing the\n Amazon Web Services STS API operations in the IAM User Guide.

\n

The temporary security credentials returned by this API consist of an access key ID, a\n secret access key, and a security token. Applications can use these temporary security\n credentials to sign calls to Amazon Web Services service API operations.

\n

\n Session Duration\n

\n

By default, the temporary security credentials created by\n AssumeRoleWithWebIdentity last for one hour. However, you can use the\n optional DurationSeconds parameter to specify the duration of your session.\n You can provide a value from 900 seconds (15 minutes) up to the maximum session duration\n setting for the role. This setting can have a value from 1 hour to 12 hours. To learn how\n to view the maximum value for your role, see View the\n Maximum Session Duration Setting for a Role in the\n IAM User Guide. The maximum session duration limit applies when\n you use the AssumeRole* API operations or the assume-role* CLI\n commands. However the limit does not apply when you use those operations to create a\n console URL. For more information, see Using IAM Roles in the\n IAM User Guide.

\n

\n Permissions\n

\n

The temporary security credentials created by AssumeRoleWithWebIdentity can\n be used to make API calls to any Amazon Web Services service with the following exception: you cannot\n call the STS GetFederationToken or GetSessionToken API\n operations.

\n

(Optional) You can pass inline or managed session policies to\n this operation. You can pass a single JSON policy document to use as an inline session\n policy. You can also specify up to 10 managed policy Amazon Resource Names (ARNs) to use as\n managed session policies. The plaintext that you use for both inline and managed session\n policies can't exceed 2,048 characters. Passing policies to this operation returns new \n temporary credentials. The resulting session's permissions are the intersection of the \n role's identity-based policy and the session policies. You can use the role's temporary \n credentials in subsequent Amazon Web Services API calls to access resources in the account that owns \n the role. You cannot use session policies to grant more permissions than those allowed \n by the identity-based policy of the role that is being assumed. For more information, see\n Session\n Policies in the IAM User Guide.

\n

\n Tags\n

\n

(Optional) You can configure your IdP to pass attributes into your web identity token as\n session tags. Each session tag consists of a key name and an associated value. For more\n information about session tags, see Passing Session Tags in STS in the\n IAM User Guide.

\n

You can pass up to 50 session tags. The plaintext session tag keys can’t exceed 128\n characters and the values can’t exceed 256 characters. For these and additional limits, see\n IAM\n and STS Character Limits in the IAM User Guide.

\n \n

An Amazon Web Services conversion compresses the passed inline session policy, managed policy ARNs,\n and session tags into a packed binary format that has a separate limit. Your request can\n fail for this limit even if your plaintext meets the other requirements. The\n PackedPolicySize response element indicates by percentage how close the\n policies and tags for your request are to the upper size limit.

\n
\n

You can pass a session tag with the same key as a tag that is attached to the role. When\n you do, the session tag overrides the role tag with the same key.

\n

An administrator must grant you the permissions necessary to pass session tags. The\n administrator can also create granular permissions to allow you to pass only specific\n session tags. For more information, see Tutorial: Using Tags\n for Attribute-Based Access Control in the\n IAM User Guide.

\n

You can set the session tags as transitive. Transitive tags persist during role\n chaining. For more information, see Chaining Roles\n with Session Tags in the IAM User Guide.

\n

\n Identities\n

\n

Before your application can call AssumeRoleWithWebIdentity, you must have\n an identity token from a supported identity provider and create a role that the application\n can assume. The role that your application assumes must trust the identity provider that is\n associated with the identity token. In other words, the identity provider must be specified\n in the role's trust policy.

\n \n

Calling AssumeRoleWithWebIdentity can result in an entry in your\n CloudTrail logs. The entry includes the Subject of\n the provided web identity token. We recommend that you avoid using any personally\n identifiable information (PII) in this field. For example, you could instead use a GUID\n or a pairwise identifier, as suggested\n in the OIDC specification.

\n
\n

For more information about how to use web identity federation and the\n AssumeRoleWithWebIdentity API, see the following resources:

\n ", + "smithy.api#documentation": "

Returns a set of temporary security credentials for users who have been authenticated in\n a mobile or web application with a web identity provider. Example providers include the\n OAuth 2.0 providers Login with Amazon and Facebook, or any OpenID Connect-compatible\n identity provider such as Google or Amazon Cognito federated identities.

\n \n

For mobile applications, we recommend that you use Amazon Cognito. You can use Amazon Cognito with the\n Amazon Web Services SDK for iOS Developer Guide and the Amazon Web Services SDK for Android Developer Guide to uniquely\n identify a user. You can also supply the user with a consistent identity throughout the\n lifetime of an application.

\n

To learn more about Amazon Cognito, see Amazon Cognito identity\n pools in Amazon Cognito Developer Guide.

\n
\n

Calling AssumeRoleWithWebIdentity does not require the use of Amazon Web Services\n security credentials. Therefore, you can distribute an application (for example, on mobile\n devices) that requests temporary security credentials without including long-term Amazon Web Services\n credentials in the application. You also don't need to deploy server-based proxy services\n that use long-term Amazon Web Services credentials. Instead, the identity of the caller is validated by\n using a token from the web identity provider. For a comparison of\n AssumeRoleWithWebIdentity with the other API operations that produce\n temporary credentials, see Requesting Temporary Security\n Credentials and Compare STS\n credentials in the IAM User Guide.

\n

The temporary security credentials returned by this API consist of an access key ID, a\n secret access key, and a security token. Applications can use these temporary security\n credentials to sign calls to Amazon Web Services service API operations.

\n

\n Session Duration\n

\n

By default, the temporary security credentials created by\n AssumeRoleWithWebIdentity last for one hour. However, you can use the\n optional DurationSeconds parameter to specify the duration of your session.\n You can provide a value from 900 seconds (15 minutes) up to the maximum session duration\n setting for the role. This setting can have a value from 1 hour to 12 hours. To learn how\n to view the maximum value for your role, see Update the maximum session duration for a role in the\n IAM User Guide. The maximum session duration limit applies when\n you use the AssumeRole* API operations or the assume-role* CLI\n commands. However the limit does not apply when you use those operations to create a\n console URL. For more information, see Using IAM Roles in the\n IAM User Guide.

\n

\n Permissions\n

\n

The temporary security credentials created by AssumeRoleWithWebIdentity can\n be used to make API calls to any Amazon Web Services service with the following exception: you cannot\n call the STS GetFederationToken or GetSessionToken API\n operations.

\n

(Optional) You can pass inline or managed session policies to\n this operation. You can pass a single JSON policy document to use as an inline session\n policy. You can also specify up to 10 managed policy Amazon Resource Names (ARNs) to use as\n managed session policies. The plaintext that you use for both inline and managed session\n policies can't exceed 2,048 characters. Passing policies to this operation returns new \n temporary credentials. The resulting session's permissions are the intersection of the \n role's identity-based policy and the session policies. You can use the role's temporary \n credentials in subsequent Amazon Web Services API calls to access resources in the account that owns \n the role. You cannot use session policies to grant more permissions than those allowed \n by the identity-based policy of the role that is being assumed. For more information, see\n Session\n Policies in the IAM User Guide.

\n

\n Tags\n

\n

(Optional) You can configure your IdP to pass attributes into your web identity token as\n session tags. Each session tag consists of a key name and an associated value. For more\n information about session tags, see Passing Session Tags in STS in the\n IAM User Guide.

\n

You can pass up to 50 session tags. The plaintext session tag keys can’t exceed 128\n characters and the values can’t exceed 256 characters. For these and additional limits, see\n IAM\n and STS Character Limits in the IAM User Guide.

\n \n

An Amazon Web Services conversion compresses the passed inline session policy, managed policy ARNs,\n and session tags into a packed binary format that has a separate limit. Your request can\n fail for this limit even if your plaintext meets the other requirements. The\n PackedPolicySize response element indicates by percentage how close the\n policies and tags for your request are to the upper size limit.

\n
\n

You can pass a session tag with the same key as a tag that is attached to the role. When\n you do, the session tag overrides the role tag with the same key.

\n

An administrator must grant you the permissions necessary to pass session tags. The\n administrator can also create granular permissions to allow you to pass only specific\n session tags. For more information, see Tutorial: Using Tags\n for Attribute-Based Access Control in the\n IAM User Guide.

\n

You can set the session tags as transitive. Transitive tags persist during role\n chaining. For more information, see Chaining Roles\n with Session Tags in the IAM User Guide.

\n

\n Identities\n

\n

Before your application can call AssumeRoleWithWebIdentity, you must have\n an identity token from a supported identity provider and create a role that the application\n can assume. The role that your application assumes must trust the identity provider that is\n associated with the identity token. In other words, the identity provider must be specified\n in the role's trust policy.

\n \n

Calling AssumeRoleWithWebIdentity can result in an entry in your\n CloudTrail logs. The entry includes the Subject of\n the provided web identity token. We recommend that you avoid using any personally\n identifiable information (PII) in this field. For example, you could instead use a GUID\n or a pairwise identifier, as suggested\n in the OIDC specification.

\n
\n

For more information about how to use OIDC federation and the\n AssumeRoleWithWebIdentity API, see the following resources:

\n ", "smithy.api#examples": [ { "title": "To assume a role as an OpenID Connect-federated user", @@ -2673,21 +2676,21 @@ "RoleArn": { "target": "com.amazonaws.sts#arnType", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the role that the caller is assuming.

", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the role that the caller is assuming.

\n \n

Additional considerations apply to Amazon Cognito identity pools that assume cross-account IAM roles. The trust policies of these roles must accept the\n cognito-identity.amazonaws.com service principal and must contain the\n cognito-identity.amazonaws.com:aud condition key to restrict role\n assumption to users from your intended identity pools. A policy that trusts Amazon Cognito\n identity pools without this condition creates a risk that a user from an unintended\n identity pool can assume the role. For more information, see Trust policies for\n IAM roles in Basic (Classic) authentication in the Amazon Cognito\n Developer Guide.

\n
", "smithy.api#required": {} } }, "RoleSessionName": { "target": "com.amazonaws.sts#roleSessionNameType", "traits": { - "smithy.api#documentation": "

An identifier for the assumed role session. Typically, you pass the name or identifier\n that is associated with the user who is using your application. That way, the temporary\n security credentials that your application will use are associated with that user. This\n session name is included as part of the ARN and assumed role ID in the\n AssumedRoleUser response element.

\n

The regex used to validate this parameter is a string of characters \n consisting of upper- and lower-case alphanumeric characters with no spaces. You can \n also include underscores or any of the following characters: =,.@-

", + "smithy.api#documentation": "

An identifier for the assumed role session. Typically, you pass the name or identifier\n that is associated with the user who is using your application. That way, the temporary\n security credentials that your application will use are associated with that user. This\n session name is included as part of the ARN and assumed role ID in the\n AssumedRoleUser response element.

\n

For security purposes, administrators can view this field in CloudTrail logs to help identify who performed an action in Amazon Web Services. Your\n administrator might require that you specify your user name as the session name when you\n assume the role. For more information, see \n sts:RoleSessionName\n .

\n

The regex used to validate this parameter is a string of characters \n consisting of upper- and lower-case alphanumeric characters with no spaces. You can \n also include underscores or any of the following characters: =,.@-

", "smithy.api#required": {} } }, "WebIdentityToken": { "target": "com.amazonaws.sts#clientTokenType", "traits": { - "smithy.api#documentation": "

The OAuth 2.0 access token or OpenID Connect ID token that is provided by the identity\n provider. Your application must get this token by authenticating the user who is using your\n application with a web identity provider before the application makes an\n AssumeRoleWithWebIdentity call. Only tokens with RSA algorithms (RS256) are\n supported.

", + "smithy.api#documentation": "

The OAuth 2.0 access token or OpenID Connect ID token that is provided by the identity\n provider. Your application must get this token by authenticating the user who is using your\n application with a web identity provider before the application makes an\n AssumeRoleWithWebIdentity call. Timestamps in the token must be formatted\n as either an integer or a long integer. Only tokens with RSA algorithms (RS256) are\n supported.

", "smithy.api#required": {} } }, @@ -2706,7 +2709,7 @@ "Policy": { "target": "com.amazonaws.sts#sessionPolicyDocumentType", "traits": { - "smithy.api#documentation": "

An IAM policy in JSON format that you want to use as an inline session policy.

\n

This parameter is optional. Passing policies to this operation returns new \n temporary credentials. The resulting session's permissions are the intersection of the \n role's identity-based policy and the session policies. You can use the role's temporary \n credentials in subsequent Amazon Web Services API calls to access resources in the account that owns \n the role. You cannot use session policies to grant more permissions than those allowed \n by the identity-based policy of the role that is being assumed. For more information, see\n Session\n Policies in the IAM User Guide.

\n

The plaintext that you use for both inline and managed session policies can't exceed\n 2,048 characters. The JSON policy characters can be any ASCII character from the space\n character to the end of the valid character list (\\u0020 through \\u00FF). It can also\n include the tab (\\u0009), linefeed (\\u000A), and carriage return (\\u000D)\n characters.

\n \n

An Amazon Web Services conversion compresses the passed inline session policy, managed policy ARNs,\n and session tags into a packed binary format that has a separate limit. Your request can\n fail for this limit even if your plaintext meets the other requirements. The\n PackedPolicySize response element indicates by percentage how close the\n policies and tags for your request are to the upper size limit.

\n
" + "smithy.api#documentation": "

An IAM policy in JSON format that you want to use as an inline session policy.

\n

This parameter is optional. Passing policies to this operation returns new \n temporary credentials. The resulting session's permissions are the intersection of the \n role's identity-based policy and the session policies. You can use the role's temporary \n credentials in subsequent Amazon Web Services API calls to access resources in the account that owns \n the role. You cannot use session policies to grant more permissions than those allowed \n by the identity-based policy of the role that is being assumed. For more information, see\n Session\n Policies in the IAM User Guide.

\n

The plaintext that you use for both inline and managed session policies can't exceed\n 2,048 characters. The JSON policy characters can be any ASCII character from the space\n character to the end of the valid character list (\\u0020 through \\u00FF). It can also\n include the tab (\\u0009), linefeed (\\u000A), and carriage return (\\u000D)\n characters.

\n

For more information about role session permissions, see Session\n policies.

\n \n

An Amazon Web Services conversion compresses the passed inline session policy, managed policy ARNs,\n and session tags into a packed binary format that has a separate limit. Your request can\n fail for this limit even if your plaintext meets the other requirements. The\n PackedPolicySize response element indicates by percentage how close the\n policies and tags for your request are to the upper size limit.

\n
" } }, "DurationSeconds": { @@ -2762,7 +2765,7 @@ "SourceIdentity": { "target": "com.amazonaws.sts#sourceIdentityType", "traits": { - "smithy.api#documentation": "

The value of the source identity that is returned in the JSON web token (JWT) from the\n identity provider.

\n

You can require users to set a source identity value when they assume a role. You do\n this by using the sts:SourceIdentity condition key in a role trust policy.\n That way, actions that are taken with the role are associated with that user. After the\n source identity is set, the value cannot be changed. It is present in the request for all\n actions that are taken by the role and persists across chained\n role sessions. You can configure your identity provider to use an attribute\n associated with your users, like user name or email, as the source identity when calling\n AssumeRoleWithWebIdentity. You do this by adding a claim to the JSON web\n token. To learn more about OIDC tokens and claims, see Using Tokens with User Pools in the Amazon Cognito Developer Guide.\n For more information about using source identity, see Monitor and control\n actions taken with assumed roles in the\n IAM User Guide.

\n

The regex used to validate this parameter is a string of characters \n consisting of upper- and lower-case alphanumeric characters with no spaces. You can \n also include underscores or any of the following characters: =,.@-

" + "smithy.api#documentation": "

The value of the source identity that is returned in the JSON web token (JWT) from the\n identity provider.

\n

You can require users to set a source identity value when they assume a role. You do\n this by using the sts:SourceIdentity condition key in a role trust policy.\n That way, actions that are taken with the role are associated with that user. After the\n source identity is set, the value cannot be changed. It is present in the request for all\n actions that are taken by the role and persists across chained role\n sessions. You can configure your identity provider to use an attribute associated with your\n users, like user name or email, as the source identity when calling\n AssumeRoleWithWebIdentity. You do this by adding a claim to the JSON web\n token. To learn more about OIDC tokens and claims, see Using Tokens with User Pools in the Amazon Cognito Developer Guide.\n For more information about using source identity, see Monitor and control\n actions taken with assumed roles in the\n IAM User Guide.

\n

The regex used to validate this parameter is a string of characters \n consisting of upper- and lower-case alphanumeric characters with no spaces. You can \n also include underscores or any of the following characters: =,.@-

" } } }, @@ -2771,6 +2774,96 @@ "smithy.api#output": {} } }, + "com.amazonaws.sts#AssumeRoot": { + "type": "operation", + "input": { + "target": "com.amazonaws.sts#AssumeRootRequest" + }, + "output": { + "target": "com.amazonaws.sts#AssumeRootResponse" + }, + "errors": [ + { + "target": "com.amazonaws.sts#ExpiredTokenException" + }, + { + "target": "com.amazonaws.sts#RegionDisabledException" + } + ], + "traits": { + "smithy.api#documentation": "

Returns a set of short term credentials you can use to perform privileged tasks in a\n member account.

\n

Before you can launch a privileged session, you must have enabled centralized root\n access in your organization. For steps to enable this feature, see Centralize root access for member accounts in the IAM User\n Guide.

\n \n

The global endpoint is not supported for AssumeRoot. You must send this request to a\n Regional STS endpoint. For more information, see Endpoints.

\n
\n

You can track AssumeRoot in CloudTrail logs to determine what actions were performed in a\n session. For more information, see Track privileged tasks\n in CloudTrail in the IAM User Guide.

", + "smithy.api#examples": [ + { + "title": "To launch a privileged session", + "documentation": "The following command retrieves a set of short-term credentials you can use to unlock an S3 bucket for a member account by removing the bucket policy.", + "input": { + "TargetPrincipal": "111122223333", + "TaskPolicyArn": { + "arn": "arn:aws:iam::aws:policy/root-task/S3UnlockBucketPolicy" + }, + "DurationSeconds": 900 + }, + "output": { + "Credentials": { + "SecretAccessKey": "9drTJvcXLB89EXAMPLELB8923FB892xMFI", + "SessionToken": "AQoXdzELDDY//////////wEaoAK1wvxJY12r2IrDFT2IvAzTCn3zHoZ7YNtpiQLF0MqZye/qwjzP2iEXAMPLEbw/m3hsj8VBTkPORGvr9jM5sgP+w9IZWZnU+LWhmg+a5fDi2oTGUYcdg9uexQ4mtCHIHfi4citgqZTgco40Yqr4lIlo4V2b2Dyauk0eYFNebHtYlFVgAUj+7Indz3LU0aTWk1WKIjHmmMCIoTkyYp/k7kUG7moeEYKSitwQIi6Gjn+nyzM+PtoA3685ixzv0R7i5rjQi0YE0lf1oeie3bDiNHncmzosRM6SFiPzSvp6h/32xQuZsjcypmwsPSDtTPYcs0+YN/8BRi2/IcrxSpnWEXAMPLEXSDFTAQAM6Dl9zR0tXoybnlrZIwMLlMi1Kcgo5OytwU=", + "Expiration": "2024-11-15T00:05:07Z", + "AccessKeyId": "ASIAJEXAMPLEXEG2JICEA" + }, + "SourceIdentity": "Alice" + } + } + ] + } + }, + "com.amazonaws.sts#AssumeRootRequest": { + "type": "structure", + "members": { + "TargetPrincipal": { + "target": "com.amazonaws.sts#TargetPrincipalType", + "traits": { + "smithy.api#documentation": "

The member account principal ARN or account ID.

", + "smithy.api#required": {} + } + }, + "TaskPolicyArn": { + "target": "com.amazonaws.sts#PolicyDescriptorType", + "traits": { + "smithy.api#documentation": "

The identity based policy that scopes the session to the privileged tasks that can be\n performed. You can use one of following Amazon Web Services managed policies to scope\n root session actions. You can add additional customer managed policies to further limit the\n permissions for the root session.

\n ", + "smithy.api#required": {} + } + }, + "DurationSeconds": { + "target": "com.amazonaws.sts#RootDurationSecondsType", + "traits": { + "smithy.api#documentation": "

The duration, in seconds, of the privileged session. The value can range from 0 seconds\n up to the maximum session duration of 900 seconds (15 minutes). If you specify a value\n higher than this setting, the operation fails.

\n

By default, the value is set to 900 seconds.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.sts#AssumeRootResponse": { + "type": "structure", + "members": { + "Credentials": { + "target": "com.amazonaws.sts#Credentials", + "traits": { + "smithy.api#documentation": "

The temporary security credentials, which include an access key ID, a secret access key,\n and a security token.

\n \n

The size of the security token that STS API operations return is not fixed. We\n strongly recommend that you make no assumptions about the maximum size.

\n
" + } + }, + "SourceIdentity": { + "target": "com.amazonaws.sts#sourceIdentityType", + "traits": { + "smithy.api#documentation": "

The source identity specified by the principal that is calling the\n AssumeRoot operation.

\n

You can use the aws:SourceIdentity condition key to control access based on\n the value of source identity. For more information about using source identity, see Monitor and control\n actions taken with assumed roles in the\n IAM User Guide.

\n

The regex used to validate this parameter is a string of characters consisting of upper-\n and lower-case alphanumeric characters with no spaces. You can also include underscores or\n any of the following characters: =,.@-

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.sts#AssumedRoleUser": { "type": "structure", "members": { @@ -2990,6 +3083,24 @@ "Account": "123456789012", "Arn": "arn:aws:iam::123456789012:user/Alice" } + }, + { + "title": "To get details about a calling user federated with AssumeRole", + "documentation": "This example shows a request and response made with temporary credentials created by AssumeRole. The name of the assumed role is my-role-name, and the RoleSessionName is set to my-role-session-name.", + "output": { + "UserId": "AKIAI44QH8DHBEXAMPLE:my-role-session-name", + "Account": "123456789012", + "Arn": "arn:aws:sts::123456789012:assumed-role/my-role-name/my-role-session-name" + } + }, + { + "title": "To get details about a calling user federated with GetFederationToken", + "documentation": "This example shows a request and response made with temporary credentials created by using GetFederationToken. The Name parameter is set to my-federated-user-name.", + "output": { + "UserId": "123456789012:my-federated-user-name", + "Account": "123456789012", + "Arn": "arn:aws:sts::123456789012:federated-user/my-federated-user-name" + } } ] } @@ -3048,7 +3159,7 @@ } ], "traits": { - "smithy.api#documentation": "

Returns a set of temporary security credentials (consisting of an access key ID, a\n secret access key, and a security token) for a user. A typical use is in a proxy\n application that gets temporary security credentials on behalf of distributed applications\n inside a corporate network.

\n

You must call the GetFederationToken operation using the long-term security\n credentials of an IAM user. As a result, this call is appropriate in\n contexts where those credentials can be safeguarded, usually in a server-based application.\n For a comparison of GetFederationToken with the other API operations that\n produce temporary credentials, see Requesting Temporary Security\n Credentials and Comparing the\n Amazon Web Services STS API operations in the IAM User Guide.

\n

Although it is possible to call GetFederationToken using the security\n credentials of an Amazon Web Services account root user rather than an IAM user that you\n create for the purpose of a proxy application, we do not recommend it. For more\n information, see Safeguard your root user credentials and don't use them for everyday tasks in the\n IAM User Guide.

\n \n

You can create a mobile-based or browser-based app that can authenticate users using\n a web identity provider like Login with Amazon, Facebook, Google, or an OpenID\n Connect-compatible identity provider. In this case, we recommend that you use Amazon Cognito or\n AssumeRoleWithWebIdentity. For more information, see Federation Through a Web-based Identity Provider in the\n IAM User Guide.

\n
\n

\n Session duration\n

\n

The temporary credentials are valid for the specified duration, from 900 seconds (15\n minutes) up to a maximum of 129,600 seconds (36 hours). The default session duration is\n 43,200 seconds (12 hours). Temporary credentials obtained by using the root user\n credentials have a maximum duration of 3,600 seconds (1 hour).

\n

\n Permissions\n

\n

You can use the temporary credentials created by GetFederationToken in any\n Amazon Web Services service with the following exceptions:

\n \n

You can use temporary credentials for single sign-on (SSO) to the console.

\n

You must pass an inline or managed session policy to\n this operation. You can pass a single JSON policy document to use as an inline session\n policy. You can also specify up to 10 managed policy Amazon Resource Names (ARNs) to use as\n managed session policies. The plaintext that you use for both inline and managed session\n policies can't exceed 2,048 characters.

\n

Though the session policy parameters are optional, if you do not pass a policy, then the\n resulting federated user session has no permissions. When you pass session policies, the\n session permissions are the intersection of the IAM user policies and the\n session policies that you pass. This gives you a way to further restrict the permissions\n for a federated user. You cannot use session policies to grant more permissions than those\n that are defined in the permissions policy of the IAM user. For more\n information, see Session Policies in\n the IAM User Guide. For information about using\n GetFederationToken to create temporary security credentials, see GetFederationToken—Federation Through a Custom Identity Broker.

\n

You can use the credentials to access a resource that has a resource-based policy. If\n that policy specifically references the federated user session in the\n Principal element of the policy, the session has the permissions allowed by\n the policy. These permissions are granted in addition to the permissions granted by the\n session policies.

\n

\n Tags\n

\n

(Optional) You can pass tag key-value pairs to your session. These are called session\n tags. For more information about session tags, see Passing Session Tags in STS in the\n IAM User Guide.

\n \n

You can create a mobile-based or browser-based app that can authenticate users using\n a web identity provider like Login with Amazon, Facebook, Google, or an OpenID\n Connect-compatible identity provider. In this case, we recommend that you use Amazon Cognito or\n AssumeRoleWithWebIdentity. For more information, see Federation Through a Web-based Identity Provider in the\n IAM User Guide.

\n
\n

An administrator must grant you the permissions necessary to pass session tags. The\n administrator can also create granular permissions to allow you to pass only specific\n session tags. For more information, see Tutorial: Using Tags\n for Attribute-Based Access Control in the\n IAM User Guide.

\n

Tag key–value pairs are not case sensitive, but case is preserved. This means that you\n cannot have separate Department and department tag keys. Assume\n that the user that you are federating has the\n Department=Marketing tag and you pass the\n department=engineering session tag. Department\n and department are not saved as separate tags, and the session tag passed in\n the request takes precedence over the user tag.

", + "smithy.api#documentation": "

Returns a set of temporary security credentials (consisting of an access key ID, a\n secret access key, and a security token) for a user. A typical use is in a proxy\n application that gets temporary security credentials on behalf of distributed applications\n inside a corporate network.

\n

You must call the GetFederationToken operation using the long-term security\n credentials of an IAM user. As a result, this call is appropriate in\n contexts where those credentials can be safeguarded, usually in a server-based application.\n For a comparison of GetFederationToken with the other API operations that\n produce temporary credentials, see Requesting Temporary Security\n Credentials and Compare STS\n credentials in the IAM User Guide.

\n

Although it is possible to call GetFederationToken using the security\n credentials of an Amazon Web Services account root user rather than an IAM user that you\n create for the purpose of a proxy application, we do not recommend it. For more\n information, see Safeguard your root user credentials and don't use them for everyday tasks in the\n IAM User Guide.

\n \n

You can create a mobile-based or browser-based app that can authenticate users using\n a web identity provider like Login with Amazon, Facebook, Google, or an OpenID\n Connect-compatible identity provider. In this case, we recommend that you use Amazon Cognito or\n AssumeRoleWithWebIdentity. For more information, see Federation Through a Web-based Identity Provider in the\n IAM User Guide.

\n
\n

\n Session duration\n

\n

The temporary credentials are valid for the specified duration, from 900 seconds (15\n minutes) up to a maximum of 129,600 seconds (36 hours). The default session duration is\n 43,200 seconds (12 hours). Temporary credentials obtained by using the root user\n credentials have a maximum duration of 3,600 seconds (1 hour).

\n

\n Permissions\n

\n

You can use the temporary credentials created by GetFederationToken in any\n Amazon Web Services service with the following exceptions:

\n \n

You can use temporary credentials for single sign-on (SSO) to the console.

\n

You must pass an inline or managed session policy to\n this operation. You can pass a single JSON policy document to use as an inline session\n policy. You can also specify up to 10 managed policy Amazon Resource Names (ARNs) to use as\n managed session policies. The plaintext that you use for both inline and managed session\n policies can't exceed 2,048 characters.

\n

Though the session policy parameters are optional, if you do not pass a policy, then the\n resulting federated user session has no permissions. When you pass session policies, the\n session permissions are the intersection of the IAM user policies and the\n session policies that you pass. This gives you a way to further restrict the permissions\n for a federated user. You cannot use session policies to grant more permissions than those\n that are defined in the permissions policy of the IAM user. For more\n information, see Session Policies in\n the IAM User Guide. For information about using\n GetFederationToken to create temporary security credentials, see GetFederationToken—Federation Through a Custom Identity Broker.

\n

You can use the credentials to access a resource that has a resource-based policy. If\n that policy specifically references the federated user session in the\n Principal element of the policy, the session has the permissions allowed by\n the policy. These permissions are granted in addition to the permissions granted by the\n session policies.

\n

\n Tags\n

\n

(Optional) You can pass tag key-value pairs to your session. These are called session\n tags. For more information about session tags, see Passing Session Tags in STS in the\n IAM User Guide.

\n \n

You can create a mobile-based or browser-based app that can authenticate users using\n a web identity provider like Login with Amazon, Facebook, Google, or an OpenID\n Connect-compatible identity provider. In this case, we recommend that you use Amazon Cognito or\n AssumeRoleWithWebIdentity. For more information, see Federation Through a Web-based Identity Provider in the\n IAM User Guide.

\n
\n

An administrator must grant you the permissions necessary to pass session tags. The\n administrator can also create granular permissions to allow you to pass only specific\n session tags. For more information, see Tutorial: Using Tags\n for Attribute-Based Access Control in the\n IAM User Guide.

\n

Tag key–value pairs are not case sensitive, but case is preserved. This means that you\n cannot have separate Department and department tag keys. Assume\n that the user that you are federating has the\n Department=Marketing tag and you pass the\n department=engineering session tag. Department\n and department are not saved as separate tags, and the session tag passed in\n the request takes precedence over the user tag.

", "smithy.api#examples": [ { "title": "To get temporary credentials for a role by using GetFederationToken", @@ -3165,7 +3276,7 @@ } ], "traits": { - "smithy.api#documentation": "

Returns a set of temporary credentials for an Amazon Web Services account or IAM user.\n The credentials consist of an access key ID, a secret access key, and a security token.\n Typically, you use GetSessionToken if you want to use MFA to protect\n programmatic calls to specific Amazon Web Services API operations like Amazon EC2\n StopInstances.

\n

MFA-enabled IAM users must call GetSessionToken and submit\n an MFA code that is associated with their MFA device. Using the temporary security\n credentials that the call returns, IAM users can then make programmatic\n calls to API operations that require MFA authentication. An incorrect MFA code causes the\n API to return an access denied error. For a comparison of GetSessionToken with\n the other API operations that produce temporary credentials, see Requesting\n Temporary Security Credentials and Comparing the\n Amazon Web Services STS API operations in the IAM User Guide.

\n \n

No permissions are required for users to perform this operation. The purpose of the\n sts:GetSessionToken operation is to authenticate the user using MFA. You\n cannot use policies to control authentication operations. For more information, see\n Permissions for GetSessionToken in the\n IAM User Guide.

\n
\n

\n Session Duration\n

\n

The GetSessionToken operation must be called by using the long-term Amazon Web Services\n security credentials of an IAM user. Credentials that are created by IAM users are valid for the duration that you specify. This duration can range\n from 900 seconds (15 minutes) up to a maximum of 129,600 seconds (36 hours), with a default\n of 43,200 seconds (12 hours). Credentials based on account credentials can range from 900\n seconds (15 minutes) up to 3,600 seconds (1 hour), with a default of 1 hour.

\n

\n Permissions\n

\n

The temporary security credentials created by GetSessionToken can be used\n to make API calls to any Amazon Web Services service with the following exceptions:

\n \n

The credentials that GetSessionToken returns are based on permissions\n associated with the IAM user whose credentials were used to call the\n operation. The temporary credentials have the same permissions as the IAM user.

\n \n

Although it is possible to call GetSessionToken using the security\n credentials of an Amazon Web Services account root user rather than an IAM user, we do\n not recommend it. If GetSessionToken is called using root user\n credentials, the temporary credentials have root user permissions. For more\n information, see Safeguard your root user credentials and don't use them for everyday tasks in the\n IAM User Guide\n

\n
\n

For more information about using GetSessionToken to create temporary\n credentials, see Temporary\n Credentials for Users in Untrusted Environments in the\n IAM User Guide.

", + "smithy.api#documentation": "

Returns a set of temporary credentials for an Amazon Web Services account or IAM user.\n The credentials consist of an access key ID, a secret access key, and a security token.\n Typically, you use GetSessionToken if you want to use MFA to protect\n programmatic calls to specific Amazon Web Services API operations like Amazon EC2\n StopInstances.

\n

MFA-enabled IAM users must call GetSessionToken and submit\n an MFA code that is associated with their MFA device. Using the temporary security\n credentials that the call returns, IAM users can then make programmatic\n calls to API operations that require MFA authentication. An incorrect MFA code causes the\n API to return an access denied error. For a comparison of GetSessionToken with\n the other API operations that produce temporary credentials, see Requesting\n Temporary Security Credentials and Compare STS\n credentials in the IAM User Guide.

\n \n

No permissions are required for users to perform this operation. The purpose of the\n sts:GetSessionToken operation is to authenticate the user using MFA. You\n cannot use policies to control authentication operations. For more information, see\n Permissions for GetSessionToken in the\n IAM User Guide.

\n
\n

\n Session Duration\n

\n

The GetSessionToken operation must be called by using the long-term Amazon Web Services\n security credentials of an IAM user. Credentials that are created by IAM users are valid for the duration that you specify. This duration can range\n from 900 seconds (15 minutes) up to a maximum of 129,600 seconds (36 hours), with a default\n of 43,200 seconds (12 hours). Credentials based on account credentials can range from 900\n seconds (15 minutes) up to 3,600 seconds (1 hour), with a default of 1 hour.

\n

\n Permissions\n

\n

The temporary security credentials created by GetSessionToken can be used\n to make API calls to any Amazon Web Services service with the following exceptions:

\n \n

The credentials that GetSessionToken returns are based on permissions\n associated with the IAM user whose credentials were used to call the\n operation. The temporary credentials have the same permissions as the IAM user.

\n \n

Although it is possible to call GetSessionToken using the security\n credentials of an Amazon Web Services account root user rather than an IAM user, we do\n not recommend it. If GetSessionToken is called using root user\n credentials, the temporary credentials have root user permissions. For more\n information, see Safeguard your root user credentials and don't use them for everyday tasks in the\n IAM User Guide\n

\n
\n

For more information about using GetSessionToken to create temporary\n credentials, see Temporary\n Credentials for Users in Untrusted Environments in the\n IAM User Guide.

", "smithy.api#examples": [ { "title": "To get temporary credentials for an IAM user or an AWS account", @@ -3240,7 +3351,7 @@ "code": "IDPCommunicationError", "httpResponseCode": 400 }, - "smithy.api#documentation": "

The request could not be fulfilled because the identity provider (IDP) that\n was asked to verify the incoming identity token could not be reached. This is often a\n transient error caused by network conditions. Retry the request a limited number of\n times so that you don't exceed the request rate. If the error persists, the\n identity provider might be down or not responding.

", + "smithy.api#documentation": "

The request could not be fulfilled because the identity provider (IDP) that was asked\n to verify the incoming identity token could not be reached. This is often a transient\n error caused by network conditions. Retry the request a limited number of times so that\n you don't exceed the request rate. If the error persists, the identity provider might be\n down or not responding.

", "smithy.api#error": "client", "smithy.api#httpError": 400 } @@ -3274,7 +3385,7 @@ "code": "InvalidAuthorizationMessageException", "httpResponseCode": 400 }, - "smithy.api#documentation": "

The error returned if the message passed to DecodeAuthorizationMessage\n was invalid. This can happen if the token contains invalid characters, such as\n linebreaks.

", + "smithy.api#documentation": "

The error returned if the message passed to DecodeAuthorizationMessage\n was invalid. This can happen if the token contains invalid characters, such as line\n breaks, or if the message has expired.

", "smithy.api#error": "client", "smithy.api#httpError": 400 } @@ -3331,7 +3442,7 @@ "code": "PackedPolicyTooLarge", "httpResponseCode": 400 }, - "smithy.api#documentation": "

The request was rejected because the total packed size of the session policies and\n session tags combined was too large. An Amazon Web Services conversion compresses the session policy\n document, session policy ARNs, and session tags into a packed binary format that has a\n separate limit. The error message indicates by percentage how close the policies and\n tags are to the upper size limit. For more information, see Passing Session Tags in STS in\n the IAM User Guide.

\n

You could receive this error even though you meet other defined session policy and\n session tag limits. For more information, see IAM and STS Entity\n Character Limits in the IAM User Guide.

", + "smithy.api#documentation": "

The request was rejected because the total packed size of the session policies and\n session tags combined was too large. An Amazon Web Services conversion compresses the session policy\n document, session policy ARNs, and session tags into a packed binary format that has a\n separate limit. The error message indicates by percentage how close the policies and\n tags are to the upper size limit. For more information, see Passing Session Tags in STS in\n the IAM User Guide.

\n

You could receive this error even though you meet other defined session policy and\n session tag limits. For more information, see IAM and STS Entity Character Limits in the IAM User\n Guide.

", "smithy.api#error": "client", "smithy.api#httpError": 400 } @@ -3394,11 +3505,20 @@ "code": "RegionDisabledException", "httpResponseCode": 403 }, - "smithy.api#documentation": "

STS is not activated in the requested region for the account that is being asked to\n generate credentials. The account administrator must use the IAM console to activate STS\n in that region. For more information, see Activating and\n Deactivating Amazon Web Services STS in an Amazon Web Services Region in the IAM User\n Guide.

", + "smithy.api#documentation": "

STS is not activated in the requested region for the account that is being asked to\n generate credentials. The account administrator must use the IAM console to activate\n STS in that region. For more information, see Activating and\n Deactivating STS in an Amazon Web Services Region in the IAM User\n Guide.

", "smithy.api#error": "client", "smithy.api#httpError": 403 } }, + "com.amazonaws.sts#RootDurationSecondsType": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 0, + "max": 900 + } + } + }, "com.amazonaws.sts#SAMLAssertionType": { "type": "string", "traits": { @@ -3437,6 +3557,15 @@ "smithy.api#documentation": "

You can pass custom key-value pair attributes when you assume a role or federate a user.\n These are called session tags. You can then use the session tags to control access to\n resources. For more information, see Tagging Amazon Web Services STS Sessions in the\n IAM User Guide.

" } }, + "com.amazonaws.sts#TargetPrincipalType": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 12, + "max": 2048 + } + } + }, "com.amazonaws.sts#accessKeyIdType": { "type": "string", "traits": {