<?php
// This file was auto-generated from sdk-root/src/data/signin/2023-01-01/api-2.json
return [ 'version' => '2.0', 'metadata' => [ 'apiVersion' => '2023-01-01', 'auth' => [ 'aws.auth#sigv4', ], 'endpointPrefix' => 'signin', 'protocol' => 'rest-json', 'protocols' => [ 'rest-json', ], 'serviceFullName' => 'AWS Sign-In Service', 'serviceId' => 'Signin', 'signatureVersion' => 'v4', 'signingName' => 'signin', 'uid' => 'signin-2023-01-01', ], 'operations' => [ 'CreateOAuth2Token' => [ 'name' => 'CreateOAuth2Token', 'http' => [ 'method' => 'POST', 'requestUri' => '/v1/token', 'responseCode' => 200, ], 'input' => [ 'shape' => 'CreateOAuth2TokenRequest', ], 'output' => [ 'shape' => 'CreateOAuth2TokenResponse', ], 'errors' => [ [ 'shape' => 'TooManyRequestsError', ], [ 'shape' => 'InternalServerException', ], [ 'shape' => 'ValidationException', ], [ 'shape' => 'AccessDeniedException', ], ], 'auth' => [ 'smithy.api#noAuth', ], 'authtype' => 'none', ], ], 'shapes' => [ 'AccessDeniedException' => [ 'type' => 'structure', 'required' => [ 'error', 'message', ], 'members' => [ 'error' => [ 'shape' => 'OAuth2ErrorCode', ], 'message' => [ 'shape' => 'String', ], ], 'exception' => true, ], 'AccessToken' => [ 'type' => 'structure', 'required' => [ 'accessKeyId', 'secretAccessKey', 'sessionToken', ], 'members' => [ 'accessKeyId' => [ 'shape' => 'String', 'locationName' => 'accessKeyId', ], 'secretAccessKey' => [ 'shape' => 'String', 'locationName' => 'secretAccessKey', ], 'sessionToken' => [ 'shape' => 'String', 'locationName' => 'sessionToken', ], ], 'sensitive' => true, ], 'AuthorizationCode' => [ 'type' => 'string', 'max' => 512, 'min' => 1, ], 'ClientId' => [ 'type' => 'string', 'pattern' => 'arn:aws:signin:::devtools/(cross-device|same-device)', ], 'CodeVerifier' => [ 'type' => 'string', 'max' => 128, 'min' => 43, 'pattern' => '[A-Za-z0-9\\-._~]+', ], 'CreateOAuth2TokenRequest' => [ 'type' => 'structure', 'required' => [ 'tokenInput', ], 'members' => [ 'tokenInput' => [ 'shape' => 'CreateOAuth2TokenRequestBody', ], ], 'payload' => 'tokenInput', ], 'CreateOAuth2TokenRequestBody' => [ 'type' => 'structure', 'required' => [ 'clientId', 'grantType', ], 'members' => [ 'clientId' => [ 'shape' => 'ClientId', 'locationName' => 'clientId', ], 'grantType' => [ 'shape' => 'GrantType', 'locationName' => 'grantType', ], 'code' => [ 'shape' => 'AuthorizationCode', ], 'redirectUri' => [ 'shape' => 'RedirectUri', 'locationName' => 'redirectUri', ], 'codeVerifier' => [ 'shape' => 'CodeVerifier', 'locationName' => 'codeVerifier', ], 'refreshToken' => [ 'shape' => 'RefreshToken', 'locationName' => 'refreshToken', ], ], ], 'CreateOAuth2TokenResponse' => [ 'type' => 'structure', 'required' => [ 'tokenOutput', ], 'members' => [ 'tokenOutput' => [ 'shape' => 'CreateOAuth2TokenResponseBody', ], ], 'payload' => 'tokenOutput', ], 'CreateOAuth2TokenResponseBody' => [ 'type' => 'structure', 'required' => [ 'accessToken', 'tokenType', 'expiresIn', 'refreshToken', ], 'members' => [ 'accessToken' => [ 'shape' => 'AccessToken', 'locationName' => 'accessToken', ], 'tokenType' => [ 'shape' => 'TokenType', 'locationName' => 'tokenType', ], 'expiresIn' => [ 'shape' => 'ExpiresIn', 'locationName' => 'expiresIn', ], 'refreshToken' => [ 'shape' => 'RefreshToken', 'locationName' => 'refreshToken', ], 'idToken' => [ 'shape' => 'IdToken', 'locationName' => 'idToken', ], ], ], 'ExpiresIn' => [ 'type' => 'integer', 'box' => true, 'max' => 900, 'min' => 1, ], 'GrantType' => [ 'type' => 'string', 'pattern' => '(authorization_code|refresh_token)', ], 'IdToken' => [ 'type' => 'string', 'max' => 4096, 'min' => 1, ], 'InternalServerException' => [ 'type' => 'structure', 'required' => [ 'error', 'message', ], 'members' => [ 'error' => [ 'shape' => 'OAuth2ErrorCode', ], 'message' => [ 'shape' => 'String', ], ], 'error' => [ 'httpStatusCode' => 500, ], 'exception' => true, 'fault' => true, ], 'OAuth2ErrorCode' => [ 'type' => 'string', 'enum' => [ 'TOKEN_EXPIRED', 'USER_CREDENTIALS_CHANGED', 'INSUFFICIENT_PERMISSIONS', 'AUTHCODE_EXPIRED', 'server_error', 'INVALID_REQUEST', ], ], 'RedirectUri' => [ 'type' => 'string', 'max' => 2048, 'min' => 1, ], 'RefreshToken' => [ 'type' => 'string', 'max' => 2048, 'min' => 1, 'sensitive' => true, ], 'String' => [ 'type' => 'string', ], 'TokenType' => [ 'type' => 'string', 'pattern' => 'aws_sigv4', ], 'TooManyRequestsError' => [ 'type' => 'structure', 'required' => [ 'error', 'message', ], 'members' => [ 'error' => [ 'shape' => 'OAuth2ErrorCode', ], 'message' => [ 'shape' => 'String', ], ], 'error' => [ 'httpStatusCode' => 429, 'senderFault' => true, ], 'exception' => true, ], 'ValidationException' => [ 'type' => 'structure', 'required' => [ 'error', 'message', ], 'members' => [ 'error' => [ 'shape' => 'OAuth2ErrorCode', ], 'message' => [ 'shape' => 'String', ], ], 'error' => [ 'httpStatusCode' => 400, 'senderFault' => true, ], 'exception' => true, ], ],];
