'2.0', 'metadata' => ['apiVersion' => '2017-08-25', 'endpointPrefix' => 'signer', 'jsonVersion' => '1.1', 'protocol' => 'rest-json', 'serviceAbbreviation' => 'signer', 'serviceFullName' => 'AWS Signer', 'serviceId' => 'signer', 'signatureVersion' => 'v4', 'signingName' => 'signer', 'uid' => 'signer-2017-08-25'], 'operations' => ['CancelSigningProfile' => ['name' => 'CancelSigningProfile', 'http' => ['method' => 'DELETE', 'requestUri' => '/signing-profiles/{profileName}'], 'input' => ['shape' => 'CancelSigningProfileRequest'], 'errors' => [['shape' => 'ResourceNotFoundException'], ['shape' => 'AccessDeniedException'], ['shape' => 'ThrottlingException'], ['shape' => 'InternalServiceErrorException']]], 'DescribeSigningJob' => ['name' => 'DescribeSigningJob', 'http' => ['method' => 'GET', 'requestUri' => '/signing-jobs/{jobId}'], 'input' => ['shape' => 'DescribeSigningJobRequest'], 'output' => ['shape' => 'DescribeSigningJobResponse'], 'errors' => [['shape' => 'ResourceNotFoundException'], ['shape' => 'AccessDeniedException'], ['shape' => 'InternalServiceErrorException']]], 'GetSigningPlatform' => ['name' => 'GetSigningPlatform', 'http' => ['method' => 'GET', 'requestUri' => '/signing-platforms/{platformId}'], 'input' => ['shape' => 'GetSigningPlatformRequest'], 'output' => ['shape' => 'GetSigningPlatformResponse'], 'errors' => [['shape' => 'ResourceNotFoundException'], ['shape' => 'AccessDeniedException'], ['shape' => 'InternalServiceErrorException']]], 'GetSigningProfile' => ['name' => 'GetSigningProfile', 'http' => ['method' => 'GET', 'requestUri' => '/signing-profiles/{profileName}'], 'input' => ['shape' => 'GetSigningProfileRequest'], 'output' => ['shape' => 'GetSigningProfileResponse'], 'errors' => [['shape' => 'ResourceNotFoundException'], ['shape' => 'AccessDeniedException'], ['shape' => 'ThrottlingException'], ['shape' => 'InternalServiceErrorException']]], 'ListSigningJobs' => ['name' => 'ListSigningJobs', 'http' => ['method' => 'GET', 'requestUri' => '/signing-jobs'], 'input' => ['shape' => 'ListSigningJobsRequest'], 'output' => ['shape' => 'ListSigningJobsResponse'], 'errors' => [['shape' => 'ValidationException'], ['shape' => 'AccessDeniedException'], ['shape' => 'ThrottlingException'], ['shape' => 'InternalServiceErrorException']]], 'ListSigningPlatforms' => ['name' => 'ListSigningPlatforms', 'http' => ['method' => 'GET', 'requestUri' => '/signing-platforms'], 'input' => ['shape' => 'ListSigningPlatformsRequest'], 'output' => ['shape' => 'ListSigningPlatformsResponse'], 'errors' => [['shape' => 'ValidationException'], ['shape' => 'AccessDeniedException'], ['shape' => 'ThrottlingException'], ['shape' => 'InternalServiceErrorException']]], 'ListSigningProfiles' => ['name' => 'ListSigningProfiles', 'http' => ['method' => 'GET', 'requestUri' => '/signing-profiles'], 'input' => ['shape' => 'ListSigningProfilesRequest'], 'output' => ['shape' => 'ListSigningProfilesResponse'], 'errors' => [['shape' => 'AccessDeniedException'], ['shape' => 'ThrottlingException'], ['shape' => 'InternalServiceErrorException']]], 'PutSigningProfile' => ['name' => 'PutSigningProfile', 'http' => ['method' => 'PUT', 'requestUri' => '/signing-profiles/{profileName}'], 'input' => ['shape' => 'PutSigningProfileRequest'], 'output' => ['shape' => 'PutSigningProfileResponse'], 'errors' => [['shape' => 'ResourceNotFoundException'], ['shape' => 'AccessDeniedException'], ['shape' => 'ValidationException'], ['shape' => 'ThrottlingException'], ['shape' => 'InternalServiceErrorException']]], 'StartSigningJob' => ['name' => 'StartSigningJob', 'http' => ['method' => 'POST', 'requestUri' => '/signing-jobs'], 'input' => ['shape' => 'StartSigningJobRequest'], 'output' => ['shape' => 'StartSigningJobResponse'], 'errors' => [['shape' => 'ValidationException'], ['shape' => 'ResourceNotFoundException'], ['shape' => 'AccessDeniedException'], ['shape' => 'ThrottlingException'], ['shape' => 'InternalServiceErrorException']]]], 'shapes' => ['key' => ['type' => 'string'], 'AccessDeniedException' => ['type' => 'structure', 'members' => ['message' => ['shape' => 'ErrorMessage']], 'error' => ['httpStatusCode' => 403], 'exception' => \true], 'BucketName' => ['type' => 'string'], 'CancelSigningProfileRequest' => ['type' => 'structure', 'required' => ['profileName'], 'members' => ['profileName' => ['shape' => 'ProfileName', 'location' => 'uri', 'locationName' => 'profileName']]], 'Category' => ['type' => 'string', 'enum' => ['AWSIoT']], 'CertificateArn' => ['type' => 'string'], 'ClientRequestToken' => ['type' => 'string'], 'CompletedAt' => ['type' => 'timestamp'], 'CreatedAt' => ['type' => 'timestamp'], 'DescribeSigningJobRequest' => ['type' => 'structure', 'required' => ['jobId'], 'members' => ['jobId' => ['shape' => 'JobId', 'location' => 'uri', 'locationName' => 'jobId']]], 'DescribeSigningJobResponse' => ['type' => 'structure', 'members' => ['jobId' => ['shape' => 'JobId'], 'source' => ['shape' => 'Source'], 'signingMaterial' => ['shape' => 'SigningMaterial'], 'platformId' => ['shape' => 'PlatformId'], 'profileName' => ['shape' => 'ProfileName'], 'overrides' => ['shape' => 'SigningPlatformOverrides'], 'signingParameters' => ['shape' => 'SigningParameters'], 'createdAt' => ['shape' => 'CreatedAt'], 'completedAt' => ['shape' => 'CompletedAt'], 'requestedBy' => ['shape' => 'RequestedBy'], 'status' => ['shape' => 'SigningStatus'], 'statusReason' => ['shape' => 'StatusReason'], 'signedObject' => ['shape' => 'SignedObject']]], 'Destination' => ['type' => 'structure', 'members' => ['s3' => ['shape' => 'S3Destination']]], 'DisplayName' => ['type' => 'string'], 'EncryptionAlgorithm' => ['type' => 'string', 'enum' => ['RSA', 'ECDSA']], 'EncryptionAlgorithmOptions' => ['type' => 'structure', 'required' => ['allowedValues', 'defaultValue'], 'members' => ['allowedValues' => ['shape' => 'EncryptionAlgorithms'], 'defaultValue' => ['shape' => 'EncryptionAlgorithm']]], 'EncryptionAlgorithms' => ['type' => 'list', 'member' => ['shape' => 'EncryptionAlgorithm']], 'ErrorMessage' => ['type' => 'string'], 'GetSigningPlatformRequest' => ['type' => 'structure', 'required' => ['platformId'], 'members' => ['platformId' => ['shape' => 'PlatformId', 'location' => 'uri', 'locationName' => 'platformId']]], 'GetSigningPlatformResponse' => ['type' => 'structure', 'members' => ['platformId' => ['shape' => 'PlatformId'], 'displayName' => ['shape' => 'DisplayName'], 'partner' => ['shape' => 'String'], 'target' => ['shape' => 'String'], 'category' => ['shape' => 'Category'], 'signingConfiguration' => ['shape' => 'SigningConfiguration'], 'signingImageFormat' => ['shape' => 'SigningImageFormat'], 'maxSizeInMB' => ['shape' => 'MaxSizeInMB']]], 'GetSigningProfileRequest' => ['type' => 'structure', 'required' => ['profileName'], 'members' => ['profileName' => ['shape' => 'ProfileName', 'location' => 'uri', 'locationName' => 'profileName']]], 'GetSigningProfileResponse' => ['type' => 'structure', 'members' => ['profileName' => ['shape' => 'ProfileName'], 'signingMaterial' => ['shape' => 'SigningMaterial'], 'platformId' => ['shape' => 'PlatformId'], 'overrides' => ['shape' => 'SigningPlatformOverrides'], 'signingParameters' => ['shape' => 'SigningParameters'], 'status' => ['shape' => 'SigningProfileStatus']]], 'HashAlgorithm' => ['type' => 'string', 'enum' => ['SHA1', 'SHA256']], 'HashAlgorithmOptions' => ['type' => 'structure', 'required' => ['allowedValues', 'defaultValue'], 'members' => ['allowedValues' => ['shape' => 'HashAlgorithms'], 'defaultValue' => ['shape' => 'HashAlgorithm']]], 'HashAlgorithms' => ['type' => 'list', 'member' => ['shape' => 'HashAlgorithm']], 'ImageFormat' => ['type' => 'string', 'enum' => ['JSON']], 'ImageFormats' => ['type' => 'list', 'member' => ['shape' => 'ImageFormat']], 'InternalServiceErrorException' => ['type' => 'structure', 'members' => ['message' => ['shape' => 'ErrorMessage']], 'error' => ['httpStatusCode' => 500], 'exception' => \true], 'JobId' => ['type' => 'string'], 'Key' => ['type' => 'string'], 'ListSigningJobsRequest' => ['type' => 'structure', 'members' => ['status' => ['shape' => 'SigningStatus', 'location' => 'querystring', 'locationName' => 'status'], 'platformId' => ['shape' => 'PlatformId', 'location' => 'querystring', 'locationName' => 'platformId'], 'requestedBy' => ['shape' => 'RequestedBy', 'location' => 'querystring', 'locationName' => 'requestedBy'], 'maxResults' => ['shape' => 'MaxResults', 'location' => 'querystring', 'locationName' => 'maxResults'], 'nextToken' => ['shape' => 'NextToken', 'location' => 'querystring', 'locationName' => 'nextToken']]], 'ListSigningJobsResponse' => ['type' => 'structure', 'members' => ['jobs' => ['shape' => 'SigningJobs'], 'nextToken' => ['shape' => 'NextToken']]], 'ListSigningPlatformsRequest' => ['type' => 'structure', 'members' => ['category' => ['shape' => 'String', 'location' => 'querystring', 'locationName' => 'category'], 'partner' => ['shape' => 'String', 'location' => 'querystring', 'locationName' => 'partner'], 'target' => ['shape' => 'String', 'location' => 'querystring', 'locationName' => 'target'], 'maxResults' => ['shape' => 'MaxResults', 'location' => 'querystring', 'locationName' => 'maxResults'], 'nextToken' => ['shape' => 'String', 'location' => 'querystring', 'locationName' => 'nextToken']]], 'ListSigningPlatformsResponse' => ['type' => 'structure', 'members' => ['platforms' => ['shape' => 'SigningPlatforms'], 'nextToken' => ['shape' => 'String']]], 'ListSigningProfilesRequest' => ['type' => 'structure', 'members' => ['includeCanceled' => ['shape' => 'bool', 'location' => 'querystring', 'locationName' => 'includeCanceled'], 'maxResults' => ['shape' => 'MaxResults', 'location' => 'querystring', 'locationName' => 'maxResults'], 'nextToken' => ['shape' => 'NextToken', 'location' => 'querystring', 'locationName' => 'nextToken']]], 'ListSigningProfilesResponse' => ['type' => 'structure', 'members' => ['profiles' => ['shape' => 'SigningProfiles'], 'nextToken' => ['shape' => 'NextToken']]], 'MaxResults' => ['type' => 'integer', 'box' => \true, 'max' => 25, 'min' => 1], 'MaxSizeInMB' => ['type' => 'integer'], 'NextToken' => ['type' => 'string'], 'PlatformId' => ['type' => 'string'], 'Prefix' => ['type' => 'string'], 'ProfileName' => ['type' => 'string', 'max' => 20, 'min' => 2, 'pattern' => '^[a-zA-Z0-9_]{2,}'], 'PutSigningProfileRequest' => ['type' => 'structure', 'required' => ['profileName', 'signingMaterial', 'platformId'], 'members' => ['profileName' => ['shape' => 'ProfileName', 'location' => 'uri', 'locationName' => 'profileName'], 'signingMaterial' => ['shape' => 'SigningMaterial'], 'platformId' => ['shape' => 'PlatformId'], 'overrides' => ['shape' => 'SigningPlatformOverrides'], 'signingParameters' => ['shape' => 'SigningParameters']]], 'PutSigningProfileResponse' => ['type' => 'structure', 'members' => ['arn' => ['shape' => 'string']]], 'RequestedBy' => ['type' => 'string'], 'ResourceNotFoundException' => ['type' => 'structure', 'members' => ['message' => ['shape' => 'ErrorMessage']], 'error' => ['httpStatusCode' => 404], 'exception' => \true], 'S3Destination' => ['type' => 'structure', 'members' => ['bucketName' => ['shape' => 'BucketName'], 'prefix' => ['shape' => 'Prefix']]], 'S3SignedObject' => ['type' => 'structure', 'members' => ['bucketName' => ['shape' => 'BucketName'], 'key' => ['shape' => 'key']]], 'S3Source' => ['type' => 'structure', 'required' => ['bucketName', 'key', 'version'], 'members' => ['bucketName' => ['shape' => 'BucketName'], 'key' => ['shape' => 'Key'], 'version' => ['shape' => 'Version']]], 'SignedObject' => ['type' => 'structure', 'members' => ['s3' => ['shape' => 'S3SignedObject']]], 'SigningConfiguration' => ['type' => 'structure', 'required' => ['encryptionAlgorithmOptions', 'hashAlgorithmOptions'], 'members' => ['encryptionAlgorithmOptions' => ['shape' => 'EncryptionAlgorithmOptions'], 'hashAlgorithmOptions' => ['shape' => 'HashAlgorithmOptions']]], 'SigningConfigurationOverrides' => ['type' => 'structure', 'members' => ['encryptionAlgorithm' => ['shape' => 'EncryptionAlgorithm'], 'hashAlgorithm' => ['shape' => 'HashAlgorithm']]], 'SigningImageFormat' => ['type' => 'structure', 'required' => ['supportedFormats', 'defaultFormat'], 'members' => ['supportedFormats' => ['shape' => 'ImageFormats'], 'defaultFormat' => ['shape' => 'ImageFormat']]], 'SigningJob' => ['type' => 'structure', 'members' => ['jobId' => ['shape' => 'JobId'], 'source' => ['shape' => 'Source'], 'signedObject' => ['shape' => 'SignedObject'], 'signingMaterial' => ['shape' => 'SigningMaterial'], 'createdAt' => ['shape' => 'CreatedAt'], 'status' => ['shape' => 'SigningStatus']]], 'SigningJobs' => ['type' => 'list', 'member' => ['shape' => 'SigningJob']], 'SigningMaterial' => ['type' => 'structure', 'required' => ['certificateArn'], 'members' => ['certificateArn' => ['shape' => 'CertificateArn']]], 'SigningParameterKey' => ['type' => 'string'], 'SigningParameterValue' => ['type' => 'string'], 'SigningParameters' => ['type' => 'map', 'key' => ['shape' => 'SigningParameterKey'], 'value' => ['shape' => 'SigningParameterValue']], 'SigningPlatform' => ['type' => 'structure', 'members' => ['platformId' => ['shape' => 'String'], 'displayName' => ['shape' => 'String'], 'partner' => ['shape' => 'String'], 'target' => ['shape' => 'String'], 'category' => ['shape' => 'Category'], 'signingConfiguration' => ['shape' => 'SigningConfiguration'], 'signingImageFormat' => ['shape' => 'SigningImageFormat'], 'maxSizeInMB' => ['shape' => 'MaxSizeInMB']]], 'SigningPlatformOverrides' => ['type' => 'structure', 'members' => ['signingConfiguration' => ['shape' => 'SigningConfigurationOverrides']]], 'SigningPlatforms' => ['type' => 'list', 'member' => ['shape' => 'SigningPlatform']], 'SigningProfile' => ['type' => 'structure', 'members' => ['profileName' => ['shape' => 'ProfileName'], 'signingMaterial' => ['shape' => 'SigningMaterial'], 'platformId' => ['shape' => 'PlatformId'], 'signingParameters' => ['shape' => 'SigningParameters'], 'status' => ['shape' => 'SigningProfileStatus']]], 'SigningProfileStatus' => ['type' => 'string', 'enum' => ['Active', 'Canceled']], 'SigningProfiles' => ['type' => 'list', 'member' => ['shape' => 'SigningProfile']], 'SigningStatus' => ['type' => 'string', 'enum' => ['InProgress', 'Failed', 'Succeeded']], 'Source' => ['type' => 'structure', 'members' => ['s3' => ['shape' => 'S3Source']]], 'StartSigningJobRequest' => ['type' => 'structure', 'required' => ['source', 'destination', 'clientRequestToken'], 'members' => ['source' => ['shape' => 'Source'], 'destination' => ['shape' => 'Destination'], 'profileName' => ['shape' => 'ProfileName'], 'clientRequestToken' => ['shape' => 'ClientRequestToken', 'idempotencyToken' => \true]]], 'StartSigningJobResponse' => ['type' => 'structure', 'members' => ['jobId' => ['shape' => 'JobId']]], 'StatusReason' => ['type' => 'string'], 'String' => ['type' => 'string'], 'ThrottlingException' => ['type' => 'structure', 'members' => ['message' => ['shape' => 'ErrorMessage']], 'error' => ['httpStatusCode' => 429], 'exception' => \true], 'ValidationException' => ['type' => 'structure', 'members' => ['message' => ['shape' => 'ErrorMessage']], 'error' => ['httpStatusCode' => 400], 'exception' => \true], 'Version' => ['type' => 'string'], 'bool' => ['type' => 'boolean'], 'string' => ['type' => 'string']]];