'2.0', 'metadata' => ['apiVersion' => '2017-04-19', 'endpointPrefix' => 'codestar', 'jsonVersion' => '1.1', 'protocol' => 'json', 'serviceAbbreviation' => 'CodeStar', 'serviceFullName' => 'AWS CodeStar', 'serviceId' => 'CodeStar', 'signatureVersion' => 'v4', 'targetPrefix' => 'CodeStar_20170419', 'uid' => 'codestar-2017-04-19'], 'operations' => ['AssociateTeamMember' => ['name' => 'AssociateTeamMember', 'http' => ['method' => 'POST', 'requestUri' => '/'], 'input' => ['shape' => 'AssociateTeamMemberRequest'], 'output' => ['shape' => 'AssociateTeamMemberResult'], 'errors' => [['shape' => 'LimitExceededException'], ['shape' => 'ProjectNotFoundException'], ['shape' => 'TeamMemberAlreadyAssociatedException'], ['shape' => 'ValidationException'], ['shape' => 'InvalidServiceRoleException'], ['shape' => 'ProjectConfigurationException'], ['shape' => 'ConcurrentModificationException']]], 'CreateProject' => ['name' => 'CreateProject', 'http' => ['method' => 'POST', 'requestUri' => '/'], 'input' => ['shape' => 'CreateProjectRequest'], 'output' => ['shape' => 'CreateProjectResult'], 'errors' => [['shape' => 'ProjectAlreadyExistsException'], ['shape' => 'LimitExceededException'], ['shape' => 'ValidationException'], ['shape' => 'ProjectCreationFailedException'], ['shape' => 'InvalidServiceRoleException'], ['shape' => 'ProjectConfigurationException'], ['shape' => 'ConcurrentModificationException']]], 'CreateUserProfile' => ['name' => 'CreateUserProfile', 'http' => ['method' => 'POST', 'requestUri' => '/'], 'input' => ['shape' => 'CreateUserProfileRequest'], 'output' => ['shape' => 'CreateUserProfileResult'], 'errors' => [['shape' => 'UserProfileAlreadyExistsException'], ['shape' => 'ValidationException']]], 'DeleteProject' => ['name' => 'DeleteProject', 'http' => ['method' => 'POST', 'requestUri' => '/'], 'input' => ['shape' => 'DeleteProjectRequest'], 'output' => ['shape' => 'DeleteProjectResult'], 'errors' => [['shape' => 'ConcurrentModificationException'], ['shape' => 'ValidationException'], ['shape' => 'InvalidServiceRoleException']]], 'DeleteUserProfile' => ['name' => 'DeleteUserProfile', 'http' => ['method' => 'POST', 'requestUri' => '/'], 'input' => ['shape' => 'DeleteUserProfileRequest'], 'output' => ['shape' => 'DeleteUserProfileResult'], 'errors' => [['shape' => 'ValidationException']]], 'DescribeProject' => ['name' => 'DescribeProject', 'http' => ['method' => 'POST', 'requestUri' => '/'], 'input' => ['shape' => 'DescribeProjectRequest'], 'output' => ['shape' => 'DescribeProjectResult'], 'errors' => [['shape' => 'ProjectNotFoundException'], ['shape' => 'ValidationException'], ['shape' => 'InvalidServiceRoleException'], ['shape' => 'ProjectConfigurationException'], ['shape' => 'ConcurrentModificationException']]], 'DescribeUserProfile' => ['name' => 'DescribeUserProfile', 'http' => ['method' => 'POST', 'requestUri' => '/'], 'input' => ['shape' => 'DescribeUserProfileRequest'], 'output' => ['shape' => 'DescribeUserProfileResult'], 'errors' => [['shape' => 'UserProfileNotFoundException'], ['shape' => 'ValidationException']]], 'DisassociateTeamMember' => ['name' => 'DisassociateTeamMember', 'http' => ['method' => 'POST', 'requestUri' => '/'], 'input' => ['shape' => 'DisassociateTeamMemberRequest'], 'output' => ['shape' => 'DisassociateTeamMemberResult'], 'errors' => [['shape' => 'ProjectNotFoundException'], ['shape' => 'ValidationException'], ['shape' => 'InvalidServiceRoleException'], ['shape' => 'ConcurrentModificationException']]], 'ListProjects' => ['name' => 'ListProjects', 'http' => ['method' => 'POST', 'requestUri' => '/'], 'input' => ['shape' => 'ListProjectsRequest'], 'output' => ['shape' => 'ListProjectsResult'], 'errors' => [['shape' => 'InvalidNextTokenException'], ['shape' => 'ValidationException']]], 'ListResources' => ['name' => 'ListResources', 'http' => ['method' => 'POST', 'requestUri' => '/'], 'input' => ['shape' => 'ListResourcesRequest'], 'output' => ['shape' => 'ListResourcesResult'], 'errors' => [['shape' => 'ProjectNotFoundException'], ['shape' => 'InvalidNextTokenException'], ['shape' => 'ValidationException']]], 'ListTagsForProject' => ['name' => 'ListTagsForProject', 'http' => ['method' => 'POST', 'requestUri' => '/'], 'input' => ['shape' => 'ListTagsForProjectRequest'], 'output' => ['shape' => 'ListTagsForProjectResult'], 'errors' => [['shape' => 'ProjectNotFoundException'], ['shape' => 'ValidationException'], ['shape' => 'InvalidNextTokenException']]], 'ListTeamMembers' => ['name' => 'ListTeamMembers', 'http' => ['method' => 'POST', 'requestUri' => '/'], 'input' => ['shape' => 'ListTeamMembersRequest'], 'output' => ['shape' => 'ListTeamMembersResult'], 'errors' => [['shape' => 'ProjectNotFoundException'], ['shape' => 'InvalidNextTokenException'], ['shape' => 'ValidationException']]], 'ListUserProfiles' => ['name' => 'ListUserProfiles', 'http' => ['method' => 'POST', 'requestUri' => '/'], 'input' => ['shape' => 'ListUserProfilesRequest'], 'output' => ['shape' => 'ListUserProfilesResult'], 'errors' => [['shape' => 'InvalidNextTokenException'], ['shape' => 'ValidationException']]], 'TagProject' => ['name' => 'TagProject', 'http' => ['method' => 'POST', 'requestUri' => '/'], 'input' => ['shape' => 'TagProjectRequest'], 'output' => ['shape' => 'TagProjectResult'], 'errors' => [['shape' => 'ProjectNotFoundException'], ['shape' => 'ValidationException'], ['shape' => 'LimitExceededException'], ['shape' => 'ConcurrentModificationException']]], 'UntagProject' => ['name' => 'UntagProject', 'http' => ['method' => 'POST', 'requestUri' => '/'], 'input' => ['shape' => 'UntagProjectRequest'], 'output' => ['shape' => 'UntagProjectResult'], 'errors' => [['shape' => 'ProjectNotFoundException'], ['shape' => 'ValidationException'], ['shape' => 'LimitExceededException'], ['shape' => 'ConcurrentModificationException']]], 'UpdateProject' => ['name' => 'UpdateProject', 'http' => ['method' => 'POST', 'requestUri' => '/'], 'input' => ['shape' => 'UpdateProjectRequest'], 'output' => ['shape' => 'UpdateProjectResult'], 'errors' => [['shape' => 'ProjectNotFoundException'], ['shape' => 'ValidationException']]], 'UpdateTeamMember' => ['name' => 'UpdateTeamMember', 'http' => ['method' => 'POST', 'requestUri' => '/'], 'input' => ['shape' => 'UpdateTeamMemberRequest'], 'output' => ['shape' => 'UpdateTeamMemberResult'], 'errors' => [['shape' => 'LimitExceededException'], ['shape' => 'ProjectNotFoundException'], ['shape' => 'ValidationException'], ['shape' => 'InvalidServiceRoleException'], ['shape' => 'ProjectConfigurationException'], ['shape' => 'ConcurrentModificationException'], ['shape' => 'TeamMemberNotFoundException']]], 'UpdateUserProfile' => ['name' => 'UpdateUserProfile', 'http' => ['method' => 'POST', 'requestUri' => '/'], 'input' => ['shape' => 'UpdateUserProfileRequest'], 'output' => ['shape' => 'UpdateUserProfileResult'], 'errors' => [['shape' => 'UserProfileNotFoundException'], ['shape' => 'ValidationException']]]], 'shapes' => ['AssociateTeamMemberRequest' => ['type' => 'structure', 'required' => ['projectId', 'userArn', 'projectRole'], 'members' => ['projectId' => ['shape' => 'ProjectId'], 'clientRequestToken' => ['shape' => 'ClientRequestToken'], 'userArn' => ['shape' => 'UserArn'], 'projectRole' => ['shape' => 'Role'], 'remoteAccessAllowed' => ['shape' => 'RemoteAccessAllowed', 'box' => \true]]], 'AssociateTeamMemberResult' => ['type' => 'structure', 'members' => ['clientRequestToken' => ['shape' => 'ClientRequestToken']]], 'BucketKey' => ['type' => 'string'], 'BucketName' => ['type' => 'string', 'max' => 63, 'min' => 3], 'ClientRequestToken' => ['type' => 'string', 'max' => 256, 'min' => 1, 'pattern' => '^[\\w:/-]+$'], 'Code' => ['type' => 'structure', 'required' => ['source', 'destination'], 'members' => ['source' => ['shape' => 'CodeSource'], 'destination' => ['shape' => 'CodeDestination']]], 'CodeCommitCodeDestination' => ['type' => 'structure', 'required' => ['name'], 'members' => ['name' => ['shape' => 'RepositoryName']]], 'CodeDestination' => ['type' => 'structure', 'members' => ['codeCommit' => ['shape' => 'CodeCommitCodeDestination'], 'gitHub' => ['shape' => 'GitHubCodeDestination']]], 'CodeSource' => ['type' => 'structure', 'required' => ['s3'], 'members' => ['s3' => ['shape' => 'S3Location']]], 'ConcurrentModificationException' => ['type' => 'structure', 'members' => [], 'exception' => \true], 'CreateProjectRequest' => ['type' => 'structure', 'required' => ['name', 'id'], 'members' => ['name' => ['shape' => 'ProjectName'], 'id' => ['shape' => 'ProjectId'], 'description' => ['shape' => 'ProjectDescription'], 'clientRequestToken' => ['shape' => 'ClientRequestToken'], 'sourceCode' => ['shape' => 'SourceCode'], 'toolchain' => ['shape' => 'Toolchain'], 'tags' => ['shape' => 'Tags']]], 'CreateProjectResult' => ['type' => 'structure', 'required' => ['id', 'arn'], 'members' => ['id' => ['shape' => 'ProjectId'], 'arn' => ['shape' => 'ProjectArn'], 'clientRequestToken' => ['shape' => 'ClientRequestToken'], 'projectTemplateId' => ['shape' => 'ProjectTemplateId']]], 'CreateUserProfileRequest' => ['type' => 'structure', 'required' => ['userArn', 'displayName', 'emailAddress'], 'members' => ['userArn' => ['shape' => 'UserArn'], 'displayName' => ['shape' => 'UserProfileDisplayName'], 'emailAddress' => ['shape' => 'Email'], 'sshPublicKey' => ['shape' => 'SshPublicKey']]], 'CreateUserProfileResult' => ['type' => 'structure', 'required' => ['userArn'], 'members' => ['userArn' => ['shape' => 'UserArn'], 'displayName' => ['shape' => 'UserProfileDisplayName'], 'emailAddress' => ['shape' => 'Email'], 'sshPublicKey' => ['shape' => 'SshPublicKey'], 'createdTimestamp' => ['shape' => 'CreatedTimestamp'], 'lastModifiedTimestamp' => ['shape' => 'LastModifiedTimestamp']]], 'CreatedTimestamp' => ['type' => 'timestamp'], 'DeleteProjectRequest' => ['type' => 'structure', 'required' => ['id'], 'members' => ['id' => ['shape' => 'ProjectId'], 'clientRequestToken' => ['shape' => 'ClientRequestToken'], 'deleteStack' => ['shape' => 'DeleteStack']]], 'DeleteProjectResult' => ['type' => 'structure', 'members' => ['stackId' => ['shape' => 'StackId'], 'projectArn' => ['shape' => 'ProjectArn']]], 'DeleteStack' => ['type' => 'boolean'], 'DeleteUserProfileRequest' => ['type' => 'structure', 'required' => ['userArn'], 'members' => ['userArn' => ['shape' => 'UserArn']]], 'DeleteUserProfileResult' => ['type' => 'structure', 'required' => ['userArn'], 'members' => ['userArn' => ['shape' => 'UserArn']]], 'DescribeProjectRequest' => ['type' => 'structure', 'required' => ['id'], 'members' => ['id' => ['shape' => 'ProjectId']]], 'DescribeProjectResult' => ['type' => 'structure', 'members' => ['name' => ['shape' => 'ProjectName'], 'id' => ['shape' => 'ProjectId'], 'arn' => ['shape' => 'ProjectArn'], 'description' => ['shape' => 'ProjectDescription'], 'clientRequestToken' => ['shape' => 'ClientRequestToken'], 'createdTimeStamp' => ['shape' => 'CreatedTimestamp'], 'stackId' => ['shape' => 'StackId'], 'projectTemplateId' => ['shape' => 'ProjectTemplateId'], 'status' => ['shape' => 'ProjectStatus']]], 'DescribeUserProfileRequest' => ['type' => 'structure', 'required' => ['userArn'], 'members' => ['userArn' => ['shape' => 'UserArn']]], 'DescribeUserProfileResult' => ['type' => 'structure', 'required' => ['userArn', 'createdTimestamp', 'lastModifiedTimestamp'], 'members' => ['userArn' => ['shape' => 'UserArn'], 'displayName' => ['shape' => 'UserProfileDisplayName'], 'emailAddress' => ['shape' => 'Email'], 'sshPublicKey' => ['shape' => 'SshPublicKey'], 'createdTimestamp' => ['shape' => 'CreatedTimestamp'], 'lastModifiedTimestamp' => ['shape' => 'LastModifiedTimestamp']]], 'DisassociateTeamMemberRequest' => ['type' => 'structure', 'required' => ['projectId', 'userArn'], 'members' => ['projectId' => ['shape' => 'ProjectId'], 'userArn' => ['shape' => 'UserArn']]], 'DisassociateTeamMemberResult' => ['type' => 'structure', 'members' => []], 'Email' => ['type' => 'string', 'max' => 128, 'min' => 3, 'pattern' => '^[\\w-.+]+@[\\w-.+]+$', 'sensitive' => \true], 'GitHubCodeDestination' => ['type' => 'structure', 'required' => ['name', 'type', 'owner', 'privateRepository', 'issuesEnabled', 'token'], 'members' => ['name' => ['shape' => 'RepositoryName'], 'description' => ['shape' => 'RepositoryDescription'], 'type' => ['shape' => 'RepositoryType'], 'owner' => ['shape' => 'RepositoryOwner'], 'privateRepository' => ['shape' => 'RepositoryIsPrivate'], 'issuesEnabled' => ['shape' => 'RepositoryEnableIssues'], 'token' => ['shape' => 'GitHubPersonalToken']]], 'GitHubPersonalToken' => ['type' => 'string', 'min' => 1, 'sensitive' => \true], 'InvalidNextTokenException' => ['type' => 'structure', 'members' => [], 'exception' => \true], 'InvalidServiceRoleException' => ['type' => 'structure', 'members' => [], 'exception' => \true], 'LastModifiedTimestamp' => ['type' => 'timestamp'], 'LimitExceededException' => ['type' => 'structure', 'members' => [], 'exception' => \true], 'ListProjectsRequest' => ['type' => 'structure', 'members' => ['nextToken' => ['shape' => 'PaginationToken'], 'maxResults' => ['shape' => 'MaxResults', 'box' => \true]]], 'ListProjectsResult' => ['type' => 'structure', 'required' => ['projects'], 'members' => ['projects' => ['shape' => 'ProjectsList'], 'nextToken' => ['shape' => 'PaginationToken']]], 'ListResourcesRequest' => ['type' => 'structure', 'required' => ['projectId'], 'members' => ['projectId' => ['shape' => 'ProjectId'], 'nextToken' => ['shape' => 'PaginationToken'], 'maxResults' => ['shape' => 'MaxResults', 'box' => \true]]], 'ListResourcesResult' => ['type' => 'structure', 'members' => ['resources' => ['shape' => 'ResourcesResult'], 'nextToken' => ['shape' => 'PaginationToken']]], 'ListTagsForProjectRequest' => ['type' => 'structure', 'required' => ['id'], 'members' => ['id' => ['shape' => 'ProjectId'], 'nextToken' => ['shape' => 'PaginationToken'], 'maxResults' => ['shape' => 'MaxResults', 'box' => \true]]], 'ListTagsForProjectResult' => ['type' => 'structure', 'members' => ['tags' => ['shape' => 'Tags'], 'nextToken' => ['shape' => 'PaginationToken']]], 'ListTeamMembersRequest' => ['type' => 'structure', 'required' => ['projectId'], 'members' => ['projectId' => ['shape' => 'ProjectId'], 'nextToken' => ['shape' => 'PaginationToken'], 'maxResults' => ['shape' => 'MaxResults', 'box' => \true]]], 'ListTeamMembersResult' => ['type' => 'structure', 'required' => ['teamMembers'], 'members' => ['teamMembers' => ['shape' => 'TeamMemberResult'], 'nextToken' => ['shape' => 'PaginationToken']]], 'ListUserProfilesRequest' => ['type' => 'structure', 'members' => ['nextToken' => ['shape' => 'PaginationToken'], 'maxResults' => ['shape' => 'MaxResults', 'box' => \true]]], 'ListUserProfilesResult' => ['type' => 'structure', 'required' => ['userProfiles'], 'members' => ['userProfiles' => ['shape' => 'UserProfilesList'], 'nextToken' => ['shape' => 'PaginationToken']]], 'MaxResults' => ['type' => 'integer', 'max' => 100, 'min' => 1], 'PaginationToken' => ['type' => 'string', 'max' => 512, 'min' => 1, 'pattern' => '^[\\w/+=]+$'], 'ProjectAlreadyExistsException' => ['type' => 'structure', 'members' => [], 'exception' => \true], 'ProjectArn' => ['type' => 'string', 'pattern' => '^arn:aws[^:\\s]*:codestar:[^:\\s]+:[0-9]{12}:project\\/[a-z]([a-z0-9|-])+$'], 'ProjectConfigurationException' => ['type' => 'structure', 'members' => [], 'exception' => \true], 'ProjectCreationFailedException' => ['type' => 'structure', 'members' => [], 'exception' => \true], 'ProjectDescription' => ['type' => 'string', 'max' => 1024, 'pattern' => '^$|^\\S(.*\\S)?$', 'sensitive' => \true], 'ProjectId' => ['type' => 'string', 'max' => 15, 'min' => 2, 'pattern' => '^[a-z][a-z0-9-]+$'], 'ProjectName' => ['type' => 'string', 'max' => 100, 'min' => 1, 'pattern' => '^\\S(.*\\S)?$', 'sensitive' => \true], 'ProjectNotFoundException' => ['type' => 'structure', 'members' => [], 'exception' => \true], 'ProjectStatus' => ['type' => 'structure', 'required' => ['state'], 'members' => ['state' => ['shape' => 'State'], 'reason' => ['shape' => 'Reason']]], 'ProjectSummary' => ['type' => 'structure', 'members' => ['projectId' => ['shape' => 'ProjectId'], 'projectArn' => ['shape' => 'ProjectArn']]], 'ProjectTemplateId' => ['type' => 'string', 'min' => 1, 'pattern' => '^arn:aws[^:\\s]{0,5}:codestar:[^:\\s]+::project-template(\\/(github|codecommit))?\\/[a-z0-9-]+$'], 'ProjectsList' => ['type' => 'list', 'member' => ['shape' => 'ProjectSummary']], 'Reason' => ['type' => 'string', 'max' => 1024, 'pattern' => '^$|^\\S(.*\\S)?$'], 'RemoteAccessAllowed' => ['type' => 'boolean'], 'RepositoryDescription' => ['type' => 'string', 'max' => 1000, 'min' => 1, 'pattern' => '^\\S(.*\\S)?$'], 'RepositoryEnableIssues' => ['type' => 'boolean'], 'RepositoryIsPrivate' => ['type' => 'boolean'], 'RepositoryName' => ['type' => 'string', 'max' => 100, 'min' => 1, 'pattern' => '^\\S[\\w.-]*$'], 'RepositoryOwner' => ['type' => 'string', 'max' => 100, 'min' => 1, 'pattern' => '^\\S(.*\\S)?$'], 'RepositoryType' => ['type' => 'string', 'pattern' => '^(user|organization|User|Organization)$'], 'Resource' => ['type' => 'structure', 'required' => ['id'], 'members' => ['id' => ['shape' => 'ResourceId']]], 'ResourceId' => ['type' => 'string', 'min' => 11, 'pattern' => '^arn\\:aws\\:\\S.*\\:.*'], 'ResourcesResult' => ['type' => 'list', 'member' => ['shape' => 'Resource']], 'Role' => ['type' => 'string', 'pattern' => '^(Owner|Viewer|Contributor)$'], 'RoleArn' => ['type' => 'string', 'max' => 1224, 'min' => 1], 'S3Location' => ['type' => 'structure', 'members' => ['bucketName' => ['shape' => 'BucketName'], 'bucketKey' => ['shape' => 'BucketKey']]], 'SourceCode' => ['type' => 'list', 'member' => ['shape' => 'Code']], 'SshPublicKey' => ['type' => 'string', 'max' => 16384, 'pattern' => '^[\\t\\r\\n\\u0020-\\u00FF]*$'], 'StackId' => ['type' => 'string', 'pattern' => '^arn:aws[^:\\s]*:cloudformation:[^:\\s]+:[0-9]{12}:stack\\/[^:\\s]+\\/[^:\\s]+$'], 'State' => ['type' => 'string', 'pattern' => '^(CreateInProgress|CreateComplete|CreateFailed|DeleteComplete|DeleteFailed|DeleteInProgress|UpdateComplete|UpdateInProgress|UpdateFailed|Unknown)$'], 'TagKey' => ['type' => 'string', 'max' => 128, 'min' => 1, 'pattern' => '^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$'], 'TagKeys' => ['type' => 'list', 'member' => ['shape' => 'TagKey']], 'TagProjectRequest' => ['type' => 'structure', 'required' => ['id', 'tags'], 'members' => ['id' => ['shape' => 'ProjectId'], 'tags' => ['shape' => 'Tags']]], 'TagProjectResult' => ['type' => 'structure', 'members' => ['tags' => ['shape' => 'Tags']]], 'TagValue' => ['type' => 'string', 'max' => 256, 'pattern' => '^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$'], 'Tags' => ['type' => 'map', 'key' => ['shape' => 'TagKey'], 'value' => ['shape' => 'TagValue']], 'TeamMember' => ['type' => 'structure', 'required' => ['userArn', 'projectRole'], 'members' => ['userArn' => ['shape' => 'UserArn'], 'projectRole' => ['shape' => 'Role'], 'remoteAccessAllowed' => ['shape' => 'RemoteAccessAllowed', 'box' => \true]]], 'TeamMemberAlreadyAssociatedException' => ['type' => 'structure', 'members' => [], 'exception' => \true], 'TeamMemberNotFoundException' => ['type' => 'structure', 'members' => [], 'exception' => \true], 'TeamMemberResult' => ['type' => 'list', 'member' => ['shape' => 'TeamMember']], 'TemplateParameterKey' => ['type' => 'string', 'max' => 30, 'min' => 1, 'pattern' => '^\\S(.*\\S)?$'], 'TemplateParameterMap' => ['type' => 'map', 'key' => ['shape' => 'TemplateParameterKey'], 'value' => ['shape' => 'TemplateParameterValue'], 'max' => 25], 'TemplateParameterValue' => ['type' => 'string', 'max' => 100, 'min' => 1, 'pattern' => '^\\S(.*\\S)?$', 'sensitive' => \true], 'Toolchain' => ['type' => 'structure', 'required' => ['source'], 'members' => ['source' => ['shape' => 'ToolchainSource'], 'roleArn' => ['shape' => 'RoleArn'], 'stackParameters' => ['shape' => 'TemplateParameterMap']]], 'ToolchainSource' => ['type' => 'structure', 'required' => ['s3'], 'members' => ['s3' => ['shape' => 'S3Location']]], 'UntagProjectRequest' => ['type' => 'structure', 'required' => ['id', 'tags'], 'members' => ['id' => ['shape' => 'ProjectId'], 'tags' => ['shape' => 'TagKeys']]], 'UntagProjectResult' => ['type' => 'structure', 'members' => []], 'UpdateProjectRequest' => ['type' => 'structure', 'required' => ['id'], 'members' => ['id' => ['shape' => 'ProjectId'], 'name' => ['shape' => 'ProjectName'], 'description' => ['shape' => 'ProjectDescription']]], 'UpdateProjectResult' => ['type' => 'structure', 'members' => []], 'UpdateTeamMemberRequest' => ['type' => 'structure', 'required' => ['projectId', 'userArn'], 'members' => ['projectId' => ['shape' => 'ProjectId'], 'userArn' => ['shape' => 'UserArn'], 'projectRole' => ['shape' => 'Role'], 'remoteAccessAllowed' => ['shape' => 'RemoteAccessAllowed', 'box' => \true]]], 'UpdateTeamMemberResult' => ['type' => 'structure', 'members' => ['userArn' => ['shape' => 'UserArn'], 'projectRole' => ['shape' => 'Role'], 'remoteAccessAllowed' => ['shape' => 'RemoteAccessAllowed', 'box' => \true]]], 'UpdateUserProfileRequest' => ['type' => 'structure', 'required' => ['userArn'], 'members' => ['userArn' => ['shape' => 'UserArn'], 'displayName' => ['shape' => 'UserProfileDisplayName'], 'emailAddress' => ['shape' => 'Email'], 'sshPublicKey' => ['shape' => 'SshPublicKey']]], 'UpdateUserProfileResult' => ['type' => 'structure', 'required' => ['userArn'], 'members' => ['userArn' => ['shape' => 'UserArn'], 'displayName' => ['shape' => 'UserProfileDisplayName'], 'emailAddress' => ['shape' => 'Email'], 'sshPublicKey' => ['shape' => 'SshPublicKey'], 'createdTimestamp' => ['shape' => 'CreatedTimestamp'], 'lastModifiedTimestamp' => ['shape' => 'LastModifiedTimestamp']]], 'UserArn' => ['type' => 'string', 'max' => 95, 'min' => 32, 'pattern' => '^arn:aws:iam::\\d{12}:user(?:(\\u002F)|(\\u002F[\\u0021-\\u007E]+\\u002F))[\\w+=,.@-]+$'], 'UserProfileAlreadyExistsException' => ['type' => 'structure', 'members' => [], 'exception' => \true], 'UserProfileDisplayName' => ['type' => 'string', 'max' => 64, 'min' => 1, 'pattern' => '^\\S(.*\\S)?$', 'sensitive' => \true], 'UserProfileNotFoundException' => ['type' => 'structure', 'members' => [], 'exception' => \true], 'UserProfileSummary' => ['type' => 'structure', 'members' => ['userArn' => ['shape' => 'UserArn'], 'displayName' => ['shape' => 'UserProfileDisplayName'], 'emailAddress' => ['shape' => 'Email'], 'sshPublicKey' => ['shape' => 'SshPublicKey']]], 'UserProfilesList' => ['type' => 'list', 'member' => ['shape' => 'UserProfileSummary']], 'ValidationException' => ['type' => 'structure', 'members' => [], 'exception' => \true]]];