User Pools for Amazon Cognito - CredentialsError: Missing credentials in config

I used AWS amplify to configure AWS sdk and AWS ses. I had the same error but was able to overcome using below solution. I used AWS amplify and React js.

Hope this helpful for who had issues with amplify and sdk.

Auth.currentCredentials().then(res => {

            AWS.config.update({
                region: 'ap-southeast-1',
                credentials: res
            });

            AWS.config.getCredentials(function (err) {
                if (err) console.log(err.stack); // credentials not loaded
                else console.log("Access Key:", AWS.config.credentials.accessKeyId);
            })


            var ses = new AWS.SES({
                region: 'ap-south-1',
                apiVersion: '2010-12-01'
            });

            this.setState({
                open: false,
                ses: ses
            });

            AWS.config.getCredentials(function (err) {
                if (err) console.log(err.stack); // credentials not loaded
                else console.log("Access Key:", AWS.config.credentials.accessKeyId);
            })

        })

I got it resolved by using below code apparently, there's no need to provide IdentityPoolId in this example at all, these are just the placeholders which can be left as below -

AWS.config.region = 'us-east-1'; // Region
AWS.config.credentials = new AWS.CognitoIdentityCredentials({
    IdentityPoolId: '...'
});

AWSCognito.config.region = 'us-east-1';
AWSCognito.config.credentials = new AWS.CognitoIdentityCredentials({
    IdentityPoolId: '...' 
});

And both of the credential AWS.config.credentials and AWSCognito.config.credentials need to be set. Once the above steps complete the AWSCognito.config needs to be updated as below -

// Need to provide placeholder keys unless unauthorised user access is enabled for user pool
AWSCognito.config.update({accessKeyId: 'anything', secretAccessKey: 'anything'})

var poolData = { 
    UserPoolId : 'user pool id collected from user pool',
    ClientId : 'application client id of app subscribed to user pool'
};

dataPhoneNumber and userData are optional, dataPhoneNumber should be provided in case sms verification for signup is required.

The problem was resolved once the above were in place, Identity-Code is a working model if anyone want to have a look at it.